[WRT] Upgrade node_modules for grunt 66/157266/2
authorYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 24 Oct 2017 01:44:04 +0000 (10:44 +0900)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 24 Oct 2017 04:19:28 +0000 (13:19 +0900)
Change-Id: I22f997da78a1255fa8b1280791e358af4d99e1a0
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
5101 files changed:
wrt/build/node_modules/.bin/esformatter [new symlink]
wrt/build/node_modules/.bin/npm-path [new symlink]
wrt/build/node_modules/.bin/npm-run [new symlink]
wrt/build/node_modules/.bin/semver [new symlink]
wrt/build/node_modules/.bin/supports-color [new symlink]
wrt/build/node_modules/.bin/which [new symlink]
wrt/build/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov.info with 100% similarity]
wrt/build/node_modules/asap/CHANGES.md [new file with mode: 0644]
wrt/build/node_modules/asap/LICENSE.md [new file with mode: 0644]
wrt/build/node_modules/asap/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/README.md with 100% similarity]
wrt/build/node_modules/asap/asap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/asap.js with 100% similarity]
wrt/build/node_modules/asap/browser-asap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/browser-asap.js with 100% similarity]
wrt/build/node_modules/asap/browser-raw.js [new file with mode: 0644]
wrt/build/node_modules/asap/package.json [new file with mode: 0644]
wrt/build/node_modules/asap/raw.js [new file with mode: 0644]
wrt/build/node_modules/chalk/node_modules/ansi-styles/index.js [new file with mode: 0644]
wrt/build/node_modules/chalk/node_modules/ansi-styles/license [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/license with 100% similarity]
wrt/build/node_modules/chalk/node_modules/ansi-styles/package.json [new file with mode: 0644]
wrt/build/node_modules/chalk/node_modules/ansi-styles/readme.md [new file with mode: 0644]
wrt/build/node_modules/color-convert/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/color-convert/LICENSE [new file with mode: 0644]
wrt/build/node_modules/color-convert/README.md [new file with mode: 0644]
wrt/build/node_modules/color-convert/conversions.js [new file with mode: 0644]
wrt/build/node_modules/color-convert/index.js [new file with mode: 0644]
wrt/build/node_modules/color-convert/package.json [new file with mode: 0644]
wrt/build/node_modules/color-convert/route.js [new file with mode: 0644]
wrt/build/node_modules/color-name/.eslintrc.json [new file with mode: 0644]
wrt/build/node_modules/color-name/.npmignore [new file with mode: 0644]
wrt/build/node_modules/color-name/LICENSE [new file with mode: 0644]
wrt/build/node_modules/color-name/README.md [new file with mode: 0644]
wrt/build/node_modules/color-name/index.js [new file with mode: 0644]
wrt/build/node_modules/color-name/package.json [new file with mode: 0644]
wrt/build/node_modules/color-name/test.js [new file with mode: 0644]
wrt/build/node_modules/debug/.coveralls.yml [new file with mode: 0644]
wrt/build/node_modules/debug/.eslintrc [new file with mode: 0644]
wrt/build/node_modules/debug/.npmignore [new file with mode: 0644]
wrt/build/node_modules/debug/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/debug/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/debug/LICENSE [new file with mode: 0644]
wrt/build/node_modules/debug/Makefile [new file with mode: 0644]
wrt/build/node_modules/debug/README.md [new file with mode: 0644]
wrt/build/node_modules/debug/component.json [new file with mode: 0644]
wrt/build/node_modules/debug/karma.conf.js [new file with mode: 0644]
wrt/build/node_modules/debug/node.js [new file with mode: 0644]
wrt/build/node_modules/debug/package.json [new file with mode: 0644]
wrt/build/node_modules/debug/src/browser.js [new file with mode: 0644]
wrt/build/node_modules/debug/src/debug.js [new file with mode: 0644]
wrt/build/node_modules/debug/src/index.js [new file with mode: 0644]
wrt/build/node_modules/debug/src/node.js [new file with mode: 0644]
wrt/build/node_modules/dezalgo/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/dezalgo/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/LICENSE with 100% similarity]
wrt/build/node_modules/dezalgo/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/README.md with 100% similarity]
wrt/build/node_modules/dezalgo/dezalgo.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/dezalgo.js with 100% similarity]
wrt/build/node_modules/dezalgo/package.json [new file with mode: 0644]
wrt/build/node_modules/dezalgo/test/basic.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/test/basic.js with 100% similarity]
wrt/build/node_modules/esformatter-eol-last/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter-eol-last/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/.travis.yml with 100% similarity]
wrt/build/node_modules/esformatter-eol-last/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/README.md with 100% similarity]
wrt/build/node_modules/esformatter-eol-last/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/index.js with 100% similarity]
wrt/build/node_modules/esformatter-eol-last/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter-eol-last/test/test.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/test/test.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/.travis.yml with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/LICENSE with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/README.md with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/index.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/.jshintrc with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/.travis.yml with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/README.md with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/rocambole.jpg [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/rocambole.jpg with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/rocambole.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/rocambole.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/files/crossroads.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/files/crossroads.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/files/jquery.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/files/jquery.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/moonwalk.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/moonwalk.spec.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/parse.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/parse.spec.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/perf.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/perf.spec.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/test/runner.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/runner.js with 100% similarity]
wrt/build/node_modules/esformatter-literal-notation/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter-quotes/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/README.md with 100% similarity]
wrt/build/node_modules/esformatter-quotes/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/test/compare.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare.spec.js with 100% similarity]
wrt/build/node_modules/esformatter-quotes/test/compare/input.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/test/compare/output-double-avoid.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/test/compare/output-double.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/test/compare/output-single-avoid.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-quotes/test/compare/output-single.js [new file with mode: 0644]
wrt/build/node_modules/esformatter-spaced-lined-comment/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-spaced-lined-comment/README.md with 100% similarity]
wrt/build/node_modules/esformatter-spaced-lined-comment/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-spaced-lined-comment/index.js with 100% similarity]
wrt/build/node_modules/esformatter-spaced-lined-comment/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/.editorconfig [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/.editorconfig with 100% similarity]
wrt/build/node_modules/esformatter/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/.jshintrc with 100% similarity]
wrt/build/node_modules/esformatter/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/.travis.yml with 100% similarity]
wrt/build/node_modules/esformatter/CHANGELOG.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/CHANGELOG.md with 100% similarity]
wrt/build/node_modules/esformatter/CONTRIBUTING.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/CONTRIBUTING.md with 100% similarity]
wrt/build/node_modules/esformatter/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/README.md with 100% similarity]
wrt/build/node_modules/esformatter/bin/esformatter [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/bin/esformatter with 100% similarity]
wrt/build/node_modules/esformatter/lib/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/cli.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/esformatter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/esformatter.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ArrayExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ArrayExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ArrowFunctionExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ArrowFunctionExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/AssignmentExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/AssignmentExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/BinaryExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/BinaryExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/CallExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/CallExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/CatchClause.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/CatchClause.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ClassDeclaration.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ClassDeclaration.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ConditionalExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ConditionalExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/DoWhileStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/DoWhileStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ForInStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ForInStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ForStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ForStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/FunctionDeclaration.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/FunctionDeclaration.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/FunctionExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/FunctionExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/IfStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/IfStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/LogicalExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/LogicalExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/MemberExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/MemberExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/MethodDefinition.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/MethodDefinition.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ObjectExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ObjectExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/Params.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/Params.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ReturnStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ReturnStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/SequenceExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/SequenceExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/SwitchCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/SwitchCase.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/SwitchStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/SwitchStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/ThrowStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/ThrowStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/TryStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/TryStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/UnaryExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/UnaryExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/UpdateExpression.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/UpdateExpression.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/VariableDeclaration.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/VariableDeclaration.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/WhileStatement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/WhileStatement.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/hooks/expressionParentheses.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/hooks/expressionParentheses.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/indent.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/indent.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/limit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/limit.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/lineBreakAroundNode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/lineBreakAroundNode.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/options.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/options.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/pipe.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/pipe.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/plugins.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/plugins.js with 100% similarity]
wrt/build/node_modules/esformatter/lib/preset/default.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/preset/default.json with 100% similarity]
wrt/build/node_modules/esformatter/lib/preset/jquery.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/lib/preset/jquery.json with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/.bin/strip-json-comments [new symlink]
wrt/build/node_modules/esformatter/node_modules/debug/Readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/Readme.md with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/debug/debug.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/debug.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/debug/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/debug/lib/debug.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/lib/debug.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/debug/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/optimist/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/.travis.yml with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/LICENSE with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/bool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/bool.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/boolean_double.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/boolean_double.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/boolean_single.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/boolean_single.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/default_hash.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/default_hash.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/default_singles.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/default_singles.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/divide.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/divide.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/line_count.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/line_count.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/line_count_options.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/line_count_options.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/line_count_wrap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/line_count_wrap.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/nonopt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/nonopt.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/reflect.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/reflect.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/short.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/short.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/string.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/string.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/usage-options.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/usage-options.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/example/xup.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/example/xup.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/optimist/readme.markdown [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/readme.markdown with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/_.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/_/argv.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/_/argv.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/_/bin.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/_/bin.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/dash.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/dash.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/parse.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/parse_modified.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/parse_modified.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/short.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/short.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/usage.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/usage.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/optimist/test/whitespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/test/whitespace.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/.editorconfig [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/.eslintignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/.npmignore with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/.eslintrc [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/.npmignore [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/LICENSE with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/appveyor.yml [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/example/async.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/example/sync.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/example/sync.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/async.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/caller.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/lib/sync.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/readme.markdown [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/core.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot/abc/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot/abc/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/filter.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/filter_sync.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/mock.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/mock_sync.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/package.json with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node-modules-paths.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/nonstring.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/nonstring.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/pathfilter.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/main.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/main.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/bbb/main.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/bbb/main.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/baz/doom.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/baz/doom.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/baz/quux.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/baz/quux.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/cup.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/cup.coffee with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/cup.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/cup.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_main/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/quux/foo/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_main/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_slash_main/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/bar/node_modules/foo/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_slash_main/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/foo.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/foo.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/index.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/mug.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/mug.coffee with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/mug.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/mug.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/other_path/lib/other-lib.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/other_path/lib/other-lib.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/other_path/root.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/other_path/root.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/quux/foo/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo/index.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/.npmignore [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/_/.npmignore [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/empty_file-out.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/empty_file-in.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/subdirs.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/resolve/test/symlinks.js [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/strip-json-comments/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/cli.js with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/strip-json-comments/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/node_modules/strip-json-comments/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/readme.md with 100% similarity]
wrt/build/node_modules/esformatter/node_modules/strip-json-comments/strip-json-comments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/strip-json-comments.js with 100% similarity]
wrt/build/node_modules/esformatter/package.json [new file with mode: 0644]
wrt/build/node_modules/esformatter/test/api.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/api.spec.js with 100% similarity]
wrt/build/node_modules/esformatter/test/bin/config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/bin/config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/bin/node_modules/esformatter/lib/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/bin/node_modules/esformatter/lib/cli.js with 100% similarity]
wrt/build/node_modules/esformatter/test/bin/node_modules/esformatter/lib/fake.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/bin/node_modules/esformatter/lib/fake.js with 100% similarity]
wrt/build/node_modules/esformatter/test/bin/node_modules/esformatter/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/bin/node_modules/esformatter/package.json with 100% similarity]
wrt/build/node_modules/esformatter/test/cli.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/cli.spec.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/README.md with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/align_comments-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/align_comments-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/align_comments-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/align_comments-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/align_comments-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/align_comments-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/argumentlist-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/argumentlist-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/argumentlist-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/argumentlist-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/argumentlist-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/argumentlist-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_bug-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_bug-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_bug-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_bug-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_bug-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_bug-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-2-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-2-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-2-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-2-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-2-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-2-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/array_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/array_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/assignment_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/assignment_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/assignment_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/assignment_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/assignment_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/assignment_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent_2-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent_2-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent_2-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent_2-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/basic_function_indent_2-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/basic_function_indent_2-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/binary_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/binary_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/binary_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/binary_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/binary_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/binary_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/call_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/call_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/call_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/call_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/call_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/call_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/commented_config-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/commented_config-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/commented_config-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/commented_config-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/commented_config-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/commented_config-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/conditional_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/conditional_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/conditional_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/conditional_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/conditional_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/conditional_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/expression_parentheses-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/expression_parentheses-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/expression_parentheses-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/expression_parentheses-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/expression_parentheses-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/expression_parentheses-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_in_statement-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_in_statement-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_in_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_in_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_in_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_in_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_statement-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_statement-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/for_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/for_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/function-expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/function-expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/function-expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/function-expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/function-expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/function-expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement_spacy-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement_spacy-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement_spacy-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement_spacy-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/if_statement_spacy-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/if_statement_spacy-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/iife-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/iife-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/iife-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/iife-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/iife-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/iife-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-2-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/linebreak-before-eof-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/linebreak-before-eof-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/member_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/member_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/member_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/member_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/member_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/member_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/multi-indent-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/multi-indent-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/multi-indent-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/multi-indent-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/multi-indent-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/multi-indent-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/negative_indent-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/negative_indent-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/negative_indent-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/negative_indent-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/negative_indent-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/negative_indent-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-2-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-2-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-2-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-2-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-2-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-2-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-3-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-3-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-3-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-3-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-3-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-3-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/object_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/object_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/one-line-var-declaration-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/one-line-var-declaration-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/one-line-var-declaration-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/one-line-var-declaration-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/one-line-var-declaration-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/one-line-var-declaration-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/switch_statement-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/switch_statement-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/switch_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/switch_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/switch_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/switch_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/top-level-indent-exception-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/top-level-indent-exception-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/top-level-indent-exception-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/top-level-indent-exception-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/top-level-indent-exception-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/top-level-indent-exception-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/try_statement-config.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/try_statement-config.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/try_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/try_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/custom/try_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/custom/try_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/README.md with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/array_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/array_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/array_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/array_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/arrow_function_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/arrow_function_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/arrow_function_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/arrow_function_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/assignment_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/assignment_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/assignment_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/assignment_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/binary_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/binary_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/binary_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/binary_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/call_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/call_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/call_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/call_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/class_declaration-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/class_declaration-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/class_declaration-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/class_declaration-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/comma_operator-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/comma_operator-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/comma_operator-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/comma_operator-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/comments-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/comments-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/comments-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/comments-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/conditional_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/conditional_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/conditional_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/conditional_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/do_while_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/do_while_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/do_while_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/do_while_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/empty_file-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/punycode/node_modules/punycode/index.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/empty_file-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/ref.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/for_in_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/for_in_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/for_in_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/for_in_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/for_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/for_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/for_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/for_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/function_declaration-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/function_declaration-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/function_declaration-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/function_declaration-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/function_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/function_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/function_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/function_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/if_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/if_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/if_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/if_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/iife-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/iife-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/iife-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/iife-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/inplace-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/inplace-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/inplace-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/inplace-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/logical_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/logical_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/logical_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/logical_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/new_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/new_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/new_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/new_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/obj_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/obj_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/obj_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/obj_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/switch_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/switch_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/switch_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/switch_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/throw_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/throw_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/throw_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/throw_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/try_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/try_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/try_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/try_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/unary_expression-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/unary_expression-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/unary_expression-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/unary_expression-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/var-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/var-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/var-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/var-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/while_statement-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/while_statement-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/default/while_statement-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/default/while_statement-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/jquery/spacing-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/jquery/spacing-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/jquery/spacing-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/jquery/spacing-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/.esformatter [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/.esformatter with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/nested/.esformatter [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/nested/.esformatter with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/nested/nested-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/nested/nested-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/nested/nested-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/nested/nested-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/nested/.esformatter [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/nested/.esformatter with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/nested/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/nested/package.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/nested/pkg_nested-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/nested/pkg_nested-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/nested/pkg_nested-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/nested/pkg_nested-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/package-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/package-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/package-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/package-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/package.json with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/rc/.esformatter [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/rc/.esformatter with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/rc/nested-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/rc/nested-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/package/rc/nested-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/package/rc/nested-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/top-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/top-in.js with 100% similarity]
wrt/build/node_modules/esformatter/test/compare/rc/top-out.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/compare/rc/top-out.js with 100% similarity]
wrt/build/node_modules/esformatter/test/format.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/format.spec.js with 100% similarity]
wrt/build/node_modules/esformatter/test/helpers.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/helpers.js with 100% similarity]
wrt/build/node_modules/esformatter/test/pipe.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/pipe.spec.js with 100% similarity]
wrt/build/node_modules/esformatter/test/pipe/bin/esformatter-pipe-test-1 [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/pipe/bin/esformatter-pipe-test-1 with 100% similarity]
wrt/build/node_modules/esformatter/test/pipe/bin/esformatter-pipe-test-2 [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/pipe/bin/esformatter-pipe-test-2 with 100% similarity]
wrt/build/node_modules/esformatter/test/pipe/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/pipe/package.json with 100% similarity]
wrt/build/node_modules/esformatter/test/plugin/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/plugin/index.js with 100% similarity]
wrt/build/node_modules/esformatter/test/plugin/package.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/plugin/package.json with 100% similarity]
wrt/build/node_modules/esformatter/test/plugins.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/plugins.spec.js with 100% similarity]
wrt/build/node_modules/esformatter/test/runner.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/runner.js with 100% similarity]
wrt/build/node_modules/esformatter/test/transform.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/test/transform.spec.js with 100% similarity]
wrt/build/node_modules/eslint-plugin-react/History.md [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/LICENSE with 100% similarity]
wrt/build/node_modules/eslint-plugin-react/README.md [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/index.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/display-name.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-curly-spacing.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-prop-types.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/no-danger.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/prop-types.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/require-extension.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/sort-comp.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/util/component.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/lib/util/variable.js [new file with mode: 0644]
wrt/build/node_modules/eslint-plugin-react/package.json [new file with mode: 0644]
wrt/build/node_modules/find-root/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore with 100% similarity]
wrt/build/node_modules/find-root/LICENSE.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/LICENSE.md with 100% similarity]
wrt/build/node_modules/find-root/README.md [new file with mode: 0644]
wrt/build/node_modules/find-root/index.js [new file with mode: 0644]
wrt/build/node_modules/find-root/package.json [new file with mode: 0644]
wrt/build/node_modules/find-root/test/test.js [new file with mode: 0644]
wrt/build/node_modules/get-stdin/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/get-stdin/index.js with 100% similarity]
wrt/build/node_modules/get-stdin/package.json [new file with mode: 0644]
wrt/build/node_modules/get-stdin/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/get-stdin/readme.md with 100% similarity]
wrt/build/node_modules/grunt-cli/package.json
wrt/build/node_modules/grunt-legacy-log-utils/node_modules/underscore.string/libpeerconnection.log [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/deeper/ref.js with 100% similarity]
wrt/build/node_modules/grunt-legacy-log/node_modules/underscore.string/libpeerconnection.log [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/alt.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/.bin/eslint [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/esparse [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/esvalidate [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/has-ansi [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/js-yaml [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/strip-ansi [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/.bin/user-home [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/license [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/license with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/readme.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/README.md [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/index.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append/constant.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/count.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/count.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/help.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/constant.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/false.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/true.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/subparsers.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/version.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action_container.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argparse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argparse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument/error.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument/error.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument/exclusive.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument/exclusive.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument/group.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument/group.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument_parser.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/const.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/added_formatters.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/formatter.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/namespace.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/utils.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/argparse/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/license [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/license [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/license [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/chalk/package.json
wrt/build/node_modules/grunt-standard/node_modules/d/.lint [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/.lint with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/.npmignore with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/.travis.yml with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/CHANGES [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/CHANGES with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/LICENCE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/LICENCE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/auto-bind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/auto-bind.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/lazy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/lazy.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/d/test/auto-bind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/test/auto-bind.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/test/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/test/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/d/test/lazy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/test/lazy.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/.jshintrc with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/.npmignore with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/.scripted [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/.scripted with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/.travis.yml with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/CONTRIBUTING.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/CONTRIBUTING.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/LICENSE.BSD [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/LICENSE.BSD with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/LICENSE.closure-compiler [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/LICENSE.closure-compiler with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/LICENSE.esprima [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/LICENSE.esprima with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/coverage-final.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/coverage-final.json with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/base.css [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/base.css with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/index.html [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/index.html with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/prettify.css [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/prettify.css with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/prettify.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/prettify.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/sort-arrow-sprite.png [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/sort-arrow-sprite.png with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov-report/sorter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/coverage/lcov-report/sorter.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov.info [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/eslint.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/eslint.json with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/gulpfile.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/gulpfile.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/lib/doctrine.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/lib/doctrine.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/lib/typed.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/lib/typed.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/lib/utility.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/lib/utility.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/midstream.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/midstream.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/parse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/strict.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/strict.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/stringify.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/stringify.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/test.html [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/test.html with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/doctrine/test/unwrap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/test/unwrap.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/#/chain.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/#/chain.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/.lint [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/.lint with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/.npmignore with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/.travis.yml with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/CHANGES [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/CHANGES with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/array.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/array.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/for-of.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/for-of.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/get.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/get.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/is-iterable.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/is-iterable.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/string.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/string.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/#/chain.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/#/chain.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/array.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/array.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/for-of.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/for-of.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/get.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/get.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/is-iterable.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/is-iterable.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/string.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/string.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/test/valid-iterable.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/test/valid-iterable.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/valid-iterable.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/valid-iterable.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/.lint [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/.lint with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/.npmignore with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/.travis.yml with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/CHANGES [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/CHANGES with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/implement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/implement.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/is-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/is-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/is-native-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/is-native-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/is-symbol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/is-symbol.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/polyfill.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/polyfill.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/implement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/implement.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/is-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/is-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/is-native-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/is-native-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/is-symbol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/is-symbol.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/polyfill.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/polyfill.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/test/validate-symbol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/validate-symbol.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/validate-symbol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/validate-symbol.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/.lint [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/.lint with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/.npmignore with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/.travis.yml with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/CHANGES [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/CHANGES with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/LICENCE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/LICENCE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/implement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/implement.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/is-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/is-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/is-native-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/is-native-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/is-weak-map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/is-weak-map.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/polyfill.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/polyfill.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/implement.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/implement.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/is-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/is-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/is-native-implemented.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/test/is-native-implemented.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/is-weak-map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/is-weak-map.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/polyfill.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/polyfill.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/test/valid-weak-map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/test/valid-weak-map.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/valid-weak-map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/valid-weak-map.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/.jshintrc with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/LICENSE.BSD [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/LICENSE.BSD with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/bower.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/bower.json with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/escope.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/escope.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/gulpfile.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/gulpfile.coffee with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/gulpfile.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/gulpfile.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/escope/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/eslint/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/bin/eslint.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/bin/eslint.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/conf/environments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/conf/environments.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/conf/eslint.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/conf/eslint.json with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/api.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/api.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/cli-engine.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/cli-engine.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/cli.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/config.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/config.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/eslint.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/eslint.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/file-finder.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/file-finder.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/checkstyle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/checkstyle.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/compact.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/compact.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/jslint-xml.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/jslint-xml.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/junit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/junit.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/stylish.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/stylish.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/formatters/tap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/formatters/tap.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/ignored-paths.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/ignored-paths.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/load-rules.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/load-rules.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/options.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/options.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rule-context.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rule-context.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/block-scoped-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/block-scoped-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/brace-style.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/brace-style.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/camelcase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/camelcase.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/comma-dangle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/comma-dangle.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/comma-spacing.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/comma-spacing.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/comma-style.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/comma-style.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/complexity.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/complexity.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/consistent-return.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/consistent-return.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/consistent-this.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/consistent-this.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/curly.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/curly.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/default-case.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/default-case.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/dot-notation.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/dot-notation.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/eol-last.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/eol-last.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/eqeqeq.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/eqeqeq.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/func-names.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/func-names.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/func-style.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/func-style.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/generator-star-spacing.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/generator-star-spacing.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/generator-star.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/generator-star.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/global-strict.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/global-strict.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/guard-for-in.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/guard-for-in.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/handle-callback-err.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/handle-callback-err.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/indent.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/indent.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/key-spacing.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/key-spacing.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/max-depth.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/max-depth.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/max-len.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/max-len.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/max-nested-callbacks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/max-nested-callbacks.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/max-params.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/max-params.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/max-statements.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/max-statements.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/new-cap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/new-cap.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/new-parens.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/new-parens.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/newline-after-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/newline-after-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-alert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-alert.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-array-constructor.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-array-constructor.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-bitwise.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-bitwise.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-caller.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-caller.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-catch-shadow.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-catch-shadow.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-comma-dangle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-comma-dangle.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-cond-assign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-cond-assign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-console.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-console.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-constant-condition.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-constant-condition.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-control-regex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-control-regex.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-debugger.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-debugger.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-delete-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-delete-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-div-regex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-div-regex.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-dupe-args.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-dupe-args.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-dupe-keys.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-dupe-keys.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-duplicate-case.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-duplicate-case.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-else-return.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-else-return.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-empty-class.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-empty-class.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-empty-label.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-empty-label.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-empty.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-empty.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-eq-null.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-eq-null.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-eval.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-eval.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-ex-assign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-ex-assign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extend-native.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extend-native.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extra-bind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extra-bind.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extra-boolean-cast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extra-boolean-cast.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extra-parens.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extra-parens.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extra-semi.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extra-semi.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-extra-strict.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-extra-strict.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-fallthrough.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-fallthrough.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-floating-decimal.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-floating-decimal.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-func-assign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-func-assign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-implied-eval.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-implied-eval.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-inline-comments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-inline-comments.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-inner-declarations.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-inner-declarations.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-invalid-regexp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-invalid-regexp.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-irregular-whitespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-irregular-whitespace.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-iterator.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-iterator.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-label-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-label-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-labels.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-labels.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-lone-blocks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-lone-blocks.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-lonely-if.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-lonely-if.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-loop-func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-loop-func.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-mixed-requires.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-mixed-requires.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-multi-spaces.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-multi-spaces.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-multi-str.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-multi-str.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-multiple-empty-lines.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-multiple-empty-lines.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-native-reassign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-native-reassign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-negated-in-lhs.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-negated-in-lhs.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-nested-ternary.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-nested-ternary.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-new-func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-new-func.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-new-object.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-new-object.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-new-require.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-new-require.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-new-wrappers.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-new-wrappers.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-new.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-new.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-obj-calls.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-obj-calls.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-octal-escape.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-octal-escape.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-octal.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-octal.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-param-reassign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-param-reassign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-path-concat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-path-concat.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-plusplus.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-plusplus.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-process-env.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-process-env.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-process-exit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-process-exit.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-proto.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-proto.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-redeclare.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-redeclare.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-regex-spaces.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-regex-spaces.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-reserved-keys.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-reserved-keys.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-restricted-modules.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-restricted-modules.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-return-assign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-return-assign.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-script-url.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-script-url.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-self-compare.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-self-compare.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-sequences.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-sequences.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-shadow-restricted-names.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-shadow-restricted-names.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-shadow.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-shadow.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-space-before-semi.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-space-before-semi.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-spaced-func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-spaced-func.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-sparse-arrays.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-sparse-arrays.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-sync.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-sync.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-ternary.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-ternary.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-throw-literal.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-throw-literal.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-trailing-spaces.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-trailing-spaces.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-undef-init.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-undef-init.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-undef.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-undef.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-undefined.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-undefined.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-underscore-dangle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-underscore-dangle.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-unreachable.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-unreachable.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-unused-expressions.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-unused-expressions.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-unused-vars.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-unused-vars.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-use-before-define.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-use-before-define.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-void.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-void.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-warning-comments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-warning-comments.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-with.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-with.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/no-wrap-func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/no-wrap-func.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/one-var.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/one-var.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/operator-assignment.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/operator-assignment.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/padded-blocks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/padded-blocks.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/quote-props.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/quote-props.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/quotes.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/quotes.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/radix.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/radix.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/semi-spacing.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/semi-spacing.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/semi.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/semi.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/sort-vars.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/sort-vars.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-after-function-name.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-after-function-name.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-after-keywords.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-after-keywords.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-before-blocks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-before-blocks.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-before-function-paren.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-before-function-paren.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-before-function-parentheses.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-before-function-parentheses.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-in-brackets.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-in-brackets.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-in-parens.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-in-parens.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-infix-ops.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-infix-ops.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-return-throw-case.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-return-throw-case.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/space-unary-ops.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/space-unary-ops.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/spaced-line-comment.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/spaced-line-comment.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/strict.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/strict.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/use-isnan.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/use-isnan.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/valid-jsdoc.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/valid-jsdoc.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/valid-typeof.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/valid-typeof.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/vars-on-top.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/vars-on-top.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/wrap-iife.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/wrap-iife.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/wrap-regex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/wrap-regex.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/rules/yoda.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/rules/yoda.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/timing.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/timing.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/token-store.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/token-store.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/util.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/util.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/lib/util/traverse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/lib/util/traverse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/eslint/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/espree/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/bin/esparse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/bin/esparse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/bin/esvalidate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/bin/esvalidate.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/espree.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/espree.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/ast-node-factory.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/ast-node-factory.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/ast-node-types.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/ast-node-types.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/comment-attachment.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/comment-attachment.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/features.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/features.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/messages.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/messages.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/string-map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/string-map.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/syntax.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/syntax.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/token-info.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/token-info.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/lib/xhtml-entities.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/lib/xhtml-entities.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/espree/test/compat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/test/compat.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/test/reflect.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/test/reflect.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/test/run.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/test/run.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/test/runner.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/test/runner.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/espree/test/test.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/test/test.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esrecurse/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esrecurse/esrecurse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esrecurse/gulpfile.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/gulpfile.coffee with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esrecurse/gulpfile.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/gulpfile.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esrecurse/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/.jshintrc with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/LICENSE.BSD [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/LICENSE.BSD with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/estraverse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/estraverse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/gulpfile.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/gulpfile.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/estraverse/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/esutils/LICENSE.BSD [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/LICENSE.BSD with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/lib/ast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/lib/ast.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/lib/code.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/lib/code.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/lib/keyword.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/lib/keyword.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/lib/utils.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/lib/utils.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/esutils/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/globals/globals.json [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/globals.json with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/globals/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/globals/license [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/license with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/globals/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/globals/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/readme.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/grunt-legacy-log/node_modules/underscore.string/libpeerconnection.log [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/has-ansi/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/cli.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/has-ansi/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/has-ansi/license [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/license with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/has-ansi/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/has-ansi/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/readme.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/README.md [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/bin/js-yaml.js [new file with mode: 0755]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.min.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/common.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/dumper.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/exception.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/loader.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/mark.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema/core.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema/core.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema/default_full.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema/default_full.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema/json.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema/json.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/binary.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/bool.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/float.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/int.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/function.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/map.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/merge.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/null.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/omap.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/pairs.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/seq.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/set.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/str.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/timestamp.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esparse [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esvalidate [new symlink]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/ChangeLog [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/LICENSE.BSD [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/README.md [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esparse.js [new file with mode: 0755]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js [new file with mode: 0755]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/dist/esprima.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/js-yaml/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/example/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/example/parse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/index.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/readme.markdown [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/readme.markdown with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/all_bool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/all_bool.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/bool.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/dash.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/dash.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/default_bool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/default_bool.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/dotted.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/dotted.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/kv_short.js [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/long.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/long.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/num.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/num.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/parse.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/parse_modified.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/parse_modified.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/short.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/short.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/stop_early.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/stop_early.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/unknown.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/unknown.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/minimist/test/whitespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/whitespace.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/LICENSE with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/README.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/lib/coerce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/lib/coerce.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/lib/help.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/lib/help.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/lib/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/lib/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/lib/parse-type.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/lib/parse-type.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/lib/util.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/lib/util.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/optionator/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/browser-raw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/raw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/promise/package.json
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/find.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/insert.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/is.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/makeCheck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/test/find-spec.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esparse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/esprima.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/compat.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/reflect.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/run.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/runner.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/input.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double-avoid.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single-avoid.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-spaced-lined-comment/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.editorconfig [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/array.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/function.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/number.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/object.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/decode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/getQuery.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/decode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/getQuery.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/bin/which [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/which.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/Readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/protochain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/prototype-chain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/serializerr.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/example/parse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/readme.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dash.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/default_bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dotted.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/long.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/num.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse_modified.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/short.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/whitespace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/center.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/meat.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/break.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/idleness.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/wrap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/example/async.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/async.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/caller.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/readme.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/core.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/lib/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/grux/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/tiv/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/node_modules/mymodule.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/b/c/x.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/CHANGELOG.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.jshintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/debug.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/rocambole-indent.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-input.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-output.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/runner.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.jshintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/debug.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/rocambole-linebreak.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-node/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.jshintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/debug.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/CHANGELOG.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/ChangeLog [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/LICENSE.BSD [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esparse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/esprima.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/run.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/runner.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/rocambole.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/cli.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/LICENSE.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/test/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/.eslintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/inflight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits_browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/once.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/test/once.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/package.json
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/minimatch.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/nested.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/order.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/example/parse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/long.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/short.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/whitespace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard-format/package.json
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/LICENSE.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/asap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/test/basic.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/wrappy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/display-name.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/prop-types.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/component.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/variable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits_browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/duplex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/float.patch [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/float.patch [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/util.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/passthrough.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/readable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/transform.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/writable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/example/tarray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/readme.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/tarray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/buffer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/infer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/nothing.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/objects.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/server/ls.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/typedarray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.jshintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/History.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/debug.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/build/build.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/component.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/LICENCE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator-kinds.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/primitive-iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/LICENCE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/auto-bind.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/lazy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/auto-bind.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/lazy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lintignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/_compare-by-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/binary-search.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/contains.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/diff.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-last-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/exclusion.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/for-each-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/group.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/indexes-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/intersection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/separate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/some-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_is-extensible.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/generate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/is-plain-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/valid-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/is-boolean.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/days-in-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-day.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-year.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/format.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/is-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/valid-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/throw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/custom.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/is-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/valid-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/compose.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/curry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/lock.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/not.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/partial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/spread.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/to-string-tokens.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/_define-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/identity.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/invoke.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-arguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/noop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/pluck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/valid-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/global.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_pack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_unpack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/validate-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/validate-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-number.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-pos-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-uint32.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/_iterate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/count.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/create.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/eq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/first-key.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/for-each.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/get-property-names.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-array-like.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-empty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-plain-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/key-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map-keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin-prototypes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/normalize-options.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/primitive-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/safe-traverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/serialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/unserialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-sticky.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-unicode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/escape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/is-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/at.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/camel-to-hyphen.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/capitalize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/case-insensitive-compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/hyphen-to-camel.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/indent.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/_data.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace-all.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/format-method.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/is-string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/random-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/__tad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/_compare-by-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/binary-search.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/contains.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/diff.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-last-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/exclusion.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/for-each-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/group.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/indexes-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/intersection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/separate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/some-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/__scopes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_is-extensible.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/generate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/is-plain-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/valid-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/boolean/is-boolean.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/days-in-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-day.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-year.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/format.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/is-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/valid-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/#/throw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/custom.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/is-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/valid-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/compose.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/curry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/lock.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/not.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/partial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/spread.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/to-string-tokens.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/_define-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/identity.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/invoke.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-arguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/noop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/pluck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/valid-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/global.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_pack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_unpack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-number.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-pos-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-uint32.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/_iterate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/count.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/create.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/eq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/first-key.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/for-each.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/get-property-names.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-array-like.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-empty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-plain-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/key-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map-keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin-prototypes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/normalize-options.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/primitive-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/safe-traverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/serialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/unserialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/escape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/at.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/capitalize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/indent.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/_data.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace-all.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/format-method.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/is-string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/random-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/#/chain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/for-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/get.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/is-iterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/validate-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/validate-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/#/chain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/for-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/get.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/is-iterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/valid-iterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/valid-iterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/LICENCE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/primitive-iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/primitive/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/primitive-iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/primitive/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/valid-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/valid-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/LICENCE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-iterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/valid-symbol.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.testignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/all-off.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/many-on.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/single-on.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/has-listeners.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/pipe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/all-off.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/has-listeners.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/pipe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/unify.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/unify.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/primitive/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-native-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator-kinds.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/primitive-iterator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/polyfill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/primitive/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/valid-map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/valid-map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lint [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lintignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/CHANGES [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/_compare-by-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/binary-search.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/contains.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/diff.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-last-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/exclusion.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/for-each-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/group.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/indexes-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/intersection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/separate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/some-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_is-extensible.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/generate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/is-plain-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/valid-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/is-boolean.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/days-in-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-day.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-year.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/format.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/is-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/valid-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/throw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/custom.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/is-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/valid-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/compose.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/curry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/lock.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/not.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/partial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/spread.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/to-string-tokens.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/_define-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/identity.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/invoke.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-arguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/noop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/pluck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/valid-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/global.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_pack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_unpack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-number.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-pos-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-uint32.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/_iterate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/count.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/create.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/eq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/first-key.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/for-each.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/get-property-names.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-array-like.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-empty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-plain-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/key-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map-keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin-prototypes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/normalize-options.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/primitive-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/safe-traverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/serialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/unserialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-sticky.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-unicode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/escape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/is-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/at.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/camel-to-hyphen.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/capitalize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/case-insensitive-compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/hyphen-to-camel.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/indent.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/_data.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace-all.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/format-method.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/is-string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/random-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/__tad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/_compare-by-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/binary-search.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/contains.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/diff.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-last-index-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/exclusion.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/for-each-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/group.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/indexes-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/intersection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last-index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/separate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/some-right.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/__scopes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_is-extensible.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/generate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/is-plain-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/valid-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/boolean/is-boolean.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/days-in-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-day.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-month.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-year.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/format.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/is-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/valid-date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/#/throw.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/custom.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/is-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/valid-error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/compose.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/curry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/lock.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/not.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/partial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/spread.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/to-string-tokens.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/_define-length.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/identity.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/invoke.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-arguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/noop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/pluck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/valid-function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/global.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_pack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_unpack-ieee754.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-number.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-pos-integer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-uint32.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/_iterate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/clear.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/count.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/create.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/eq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/first-key.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/for-each.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/get-property-names.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-array-like.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy-deep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-empty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-plain-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/key-of.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map-keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin-prototypes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/primitive-set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/safe-traverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/serialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/to-array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/unserialize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-callable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/escape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/at.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/capitalize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/indent.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/_data.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace-all.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/format-method.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/is-string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/random-uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/implement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/is-implemented.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/shim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/estraverse-fb.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/CHANGELOG.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bin/js-yaml.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/common.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/dumper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/exception.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/loader.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/mark.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/binary.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/float.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/int.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/merge.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/null.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/omap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/pairs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/seq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/str.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/timestamp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/CHANGELOG.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/arguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/choice.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/constants.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/help.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/nargs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/parents.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/prefix_chars.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sub_commands.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/testformatters.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/help.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/false.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/true.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/subparsers.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/version.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action_container.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument_parser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/const.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/added_formatters.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/formatter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/namespace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/LICENSE.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/chunk.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/compact.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/difference.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/drop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRightWhile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropWhile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/fill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findLastIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/first.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flattenDeep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/head.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/indexOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/initial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/intersection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/last.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/lastIndexOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pull.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pullAt.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/remove.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/rest.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/slice.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedLastIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/tail.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/take.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRightWhile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeWhile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/union.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/uniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unique.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unzip.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/without.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/xor.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zip.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zipObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/chain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/commit.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/lodash.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/plant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/reverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/run.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/tap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/thru.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toJSON.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toString.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/value.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/valueOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperChain.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperCommit.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperPlant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperReverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperToString.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperValue.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/all.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/any.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/at.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/collect.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/contains.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/countBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/detect.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/each.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/eachRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/every.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/filter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/find.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findLast.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findWhere.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldl.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldr.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEach.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEachRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/groupBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/include.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/includes.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/indexBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/inject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/invoke.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/max.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/partition.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/pluck.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduceRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sample.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/select.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/shuffle.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/size.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/some.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByAll.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByOrder.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/where.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date/now.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/after.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/ary.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/backflow.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/before.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bind.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindAll.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindKey.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/compose.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curryRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/debounce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/defer.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/delay.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flow.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flowRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/memoize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/negate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/once.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partialRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/rearg.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/restParam.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/spread.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/throttle.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/wrap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LazyWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LodashWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/MapCache.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/SetCache.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayCopy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEach.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEachRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEvery.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayFilter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMax.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduceRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySome.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignDefaults.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignOwnDefaults.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignWith.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAssign.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAt.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCallback.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseClone.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCompareAscending.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCopy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCreate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDelay.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDifference.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEach.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEachRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEvery.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFill.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFilter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFind.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFindIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFlatten.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFor.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForIn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwnRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFunctions.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseGet.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIndexOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqual.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqualDeep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsFunction.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsMatch.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseLodash.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatches.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatchesProperty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMerge.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMergeDeep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseProperty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePropertyDeep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePullAt.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseRandom.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseReduce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSetData.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSlice.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSome.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortByOrder.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseToString.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseUniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseValues.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWhile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWrapperValue.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndexBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bindCallback.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bufferClone.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cacheIndexOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cachePush.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charAtCallback.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsLeftIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsRightIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareAscending.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareMultiple.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgsRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAggregator.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAssigner.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseEach.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseFor.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBindWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCache.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCompounder.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCtorWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCurry.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createExtremum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFind.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindKey.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFlow.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForEach.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForIn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForOwn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createHybridWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadDir.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadding.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartial.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartialWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createReduce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createSortedIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createWrapper.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/deburrLetter.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalArrays.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalByTag.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalObjects.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeHtmlChar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeStringChar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/extremumBy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getData.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getFuncName.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getLength.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getSymbols.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getView.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/indexOfNaN.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneArray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneByTag.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/invokePath.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIterateeCall.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isKey.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLaziable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLength.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isObjectLike.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isSpace.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isStrictComparable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyClone.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyReverse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyValue.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapDelete.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapGet.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapHas.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapSet.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mergeData.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/metaMap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByArray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByCallback.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEscape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEvaluate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reInterpolate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/realNames.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reorder.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/replaceHolders.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/setData.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimIsPlainObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimKeys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/sortedUniq.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toIterable.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toPath.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedLeftIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedRightIndex.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/unescapeHtmlChar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/wrapperClone.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/clone.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/cloneDeep.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArguments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isBoolean.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isDate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isElement.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEqual.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isError.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFinite.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFunction.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isMatch.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNaN.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNative.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNull.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNumber.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isPlainObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isRegExp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isString.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isTypedArray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isUndefined.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toArray.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toPlainObject.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/add.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/max.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/sum.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/inRange.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/random.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/assign.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/create.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/defaults.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/extend.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findKey.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findLastKey.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forIn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forInRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwnRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/functions.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/get.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/has.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/invert.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keys.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keysIn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/mapValues.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/merge.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/methods.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/omit.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pairs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pick.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/result.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/set.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/transform.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/values.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/valuesIn.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/camelCase.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/capitalize.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/deburr.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/endsWith.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escapeRegExp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/kebabCase.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padLeft.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/parseInt.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/repeat.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/snakeCase.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startCase.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startsWith.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/template.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/templateSettings.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trim.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimLeft.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimRight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trunc.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/unescape.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/words.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/support.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/attempt.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/callback.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/constant.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/identity.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/iteratee.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matches.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matchesProperty.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/method.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/methodOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/mixin.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/noop.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/property.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/propertyOf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/range.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/times.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/uniqueId.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/demo/angular.html [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.map [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.map [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/gruntfile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/angular-sprintf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/sprintf.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/test/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esparse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/esprima.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/compat.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/reflect.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/run.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/runner.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/minimatch.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/nested.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/order.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/cmd.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/usage.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/examples/pow.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/readme.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dash.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/default_bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dotted.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/readme.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/chmod.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/clobber.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/mkdirp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/race.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/rel.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/root.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask_sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/object-assign/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/example/cmp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/NaN.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/cmp.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/neg-vs-pos-0.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/CONTRIBUTING.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/Gruntfile.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/LICENSE.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/benchmark/speed.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/bower.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.min.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/mocha.opts [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/tests.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text1.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text2.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/cast.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/coerce.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse-string.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/List.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Num.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Obj.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Str.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/check.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/parse-type.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/center.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/meat.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/break.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/idleness.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/wrap.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/strip-json-comments.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/test/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/get-stdin/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/common.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/glob.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/.eslintrc [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/inflight.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits_browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/test.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/LICENSE [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/browser.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/minimatch.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/once.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/test/once.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/readme.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/sync.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/bool.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/.travis.yml [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/README.md [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/img.png [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/index.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/error.js [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/package.json [deleted file]
wrt/build/node_modules/grunt-standard/node_modules/standard/package.json
wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/cli.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/readme.md with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/text-table/package.json
wrt/build/node_modules/grunt-standard/node_modules/user-home/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/cli.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/user-home/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/index.js with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/user-home/license [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/license with 100% similarity]
wrt/build/node_modules/grunt-standard/node_modules/user-home/package.json [new file with mode: 0644]
wrt/build/node_modules/grunt-standard/node_modules/user-home/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/readme.md with 100% similarity]
wrt/build/node_modules/isexe/.npmignore [new file with mode: 0644]
wrt/build/node_modules/isexe/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/LICENSE with 100% similarity]
wrt/build/node_modules/isexe/README.md [new file with mode: 0644]
wrt/build/node_modules/isexe/index.js [new file with mode: 0644]
wrt/build/node_modules/isexe/mode.js [new file with mode: 0644]
wrt/build/node_modules/isexe/package.json [new file with mode: 0644]
wrt/build/node_modules/isexe/test/basic.js [new file with mode: 0644]
wrt/build/node_modules/isexe/windows.js [new file with mode: 0644]
wrt/build/node_modules/mout/.editorconfig [new file with mode: 0644]
wrt/build/node_modules/mout/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.jshintrc with 100% similarity]
wrt/build/node_modules/mout/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.npmignore with 100% similarity]
wrt/build/node_modules/mout/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/mout/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/mout/CONTRIBUTING.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/CONTRIBUTING.md with 100% similarity]
wrt/build/node_modules/mout/LICENSE.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/LICENSE.md with 100% similarity]
wrt/build/node_modules/mout/README.md [new file with mode: 0644]
wrt/build/node_modules/mout/array.js [new file with mode: 0644]
wrt/build/node_modules/mout/array/append.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/append.js with 100% similarity]
wrt/build/node_modules/mout/array/collect.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/collect.js with 100% similarity]
wrt/build/node_modules/mout/array/combine.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/combine.js with 100% similarity]
wrt/build/node_modules/mout/array/compact.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/compact.js with 100% similarity]
wrt/build/node_modules/mout/array/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/contains.js with 100% similarity]
wrt/build/node_modules/mout/array/difference.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/difference.js with 100% similarity]
wrt/build/node_modules/mout/array/equals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/equals.js with 100% similarity]
wrt/build/node_modules/mout/array/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/every.js with 100% similarity]
wrt/build/node_modules/mout/array/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/filter.js with 100% similarity]
wrt/build/node_modules/mout/array/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/find.js with 100% similarity]
wrt/build/node_modules/mout/array/findIndex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/findIndex.js with 100% similarity]
wrt/build/node_modules/mout/array/findLast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/findLast.js with 100% similarity]
wrt/build/node_modules/mout/array/findLastIndex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/findLastIndex.js with 100% similarity]
wrt/build/node_modules/mout/array/flatten.js [new file with mode: 0644]
wrt/build/node_modules/mout/array/forEach.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/forEach.js with 100% similarity]
wrt/build/node_modules/mout/array/groupBy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/groupBy.js with 100% similarity]
wrt/build/node_modules/mout/array/indexOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/indexOf.js with 100% similarity]
wrt/build/node_modules/mout/array/indicesOf.js [new file with mode: 0644]
wrt/build/node_modules/mout/array/insert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/insert.js with 100% similarity]
wrt/build/node_modules/mout/array/intersection.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/intersection.js with 100% similarity]
wrt/build/node_modules/mout/array/invoke.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/invoke.js with 100% similarity]
wrt/build/node_modules/mout/array/join.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/join.js with 100% similarity]
wrt/build/node_modules/mout/array/last.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/last.js with 100% similarity]
wrt/build/node_modules/mout/array/lastIndexOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/lastIndexOf.js with 100% similarity]
wrt/build/node_modules/mout/array/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/map.js with 100% similarity]
wrt/build/node_modules/mout/array/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/max.js with 100% similarity]
wrt/build/node_modules/mout/array/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/min.js with 100% similarity]
wrt/build/node_modules/mout/array/pick.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/pick.js with 100% similarity]
wrt/build/node_modules/mout/array/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/pluck.js with 100% similarity]
wrt/build/node_modules/mout/array/range.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/range.js with 100% similarity]
wrt/build/node_modules/mout/array/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/reduce.js with 100% similarity]
wrt/build/node_modules/mout/array/reduceRight.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/reduceRight.js with 100% similarity]
wrt/build/node_modules/mout/array/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/reject.js with 100% similarity]
wrt/build/node_modules/mout/array/remove.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/remove.js with 100% similarity]
wrt/build/node_modules/mout/array/removeAll.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/removeAll.js with 100% similarity]
wrt/build/node_modules/mout/array/reverse.js [new file with mode: 0644]
wrt/build/node_modules/mout/array/shuffle.js [new file with mode: 0644]
wrt/build/node_modules/mout/array/slice.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/slice.js with 100% similarity]
wrt/build/node_modules/mout/array/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/some.js with 100% similarity]
wrt/build/node_modules/mout/array/sort.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/sort.js with 100% similarity]
wrt/build/node_modules/mout/array/sortBy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/sortBy.js with 100% similarity]
wrt/build/node_modules/mout/array/split.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/split.js with 100% similarity]
wrt/build/node_modules/mout/array/take.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/take.js with 100% similarity]
wrt/build/node_modules/mout/array/toLookup.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/toLookup.js with 100% similarity]
wrt/build/node_modules/mout/array/union.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/union.js with 100% similarity]
wrt/build/node_modules/mout/array/unique.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/unique.js with 100% similarity]
wrt/build/node_modules/mout/array/xor.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/xor.js with 100% similarity]
wrt/build/node_modules/mout/array/zip.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/zip.js with 100% similarity]
wrt/build/node_modules/mout/collection.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection.js with 100% similarity]
wrt/build/node_modules/mout/collection/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/contains.js with 100% similarity]
wrt/build/node_modules/mout/collection/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/every.js with 100% similarity]
wrt/build/node_modules/mout/collection/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/filter.js with 100% similarity]
wrt/build/node_modules/mout/collection/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/find.js with 100% similarity]
wrt/build/node_modules/mout/collection/forEach.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/forEach.js with 100% similarity]
wrt/build/node_modules/mout/collection/make_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/make_.js with 100% similarity]
wrt/build/node_modules/mout/collection/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/map.js with 100% similarity]
wrt/build/node_modules/mout/collection/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/max.js with 100% similarity]
wrt/build/node_modules/mout/collection/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/min.js with 100% similarity]
wrt/build/node_modules/mout/collection/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/pluck.js with 100% similarity]
wrt/build/node_modules/mout/collection/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/reduce.js with 100% similarity]
wrt/build/node_modules/mout/collection/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/reject.js with 100% similarity]
wrt/build/node_modules/mout/collection/size.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/size.js with 100% similarity]
wrt/build/node_modules/mout/collection/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/collection/some.js with 100% similarity]
wrt/build/node_modules/mout/date.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date.js with 100% similarity]
wrt/build/node_modules/mout/date/dayOfTheYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/dayOfTheYear.js with 100% similarity]
wrt/build/node_modules/mout/date/diff.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/diff.js with 100% similarity]
wrt/build/node_modules/mout/date/i18n/de-DE.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/i18n/de-DE.js with 100% similarity]
wrt/build/node_modules/mout/date/i18n/en-US.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/i18n/en-US.js with 100% similarity]
wrt/build/node_modules/mout/date/i18n/pt-BR.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/i18n/pt-BR.js with 100% similarity]
wrt/build/node_modules/mout/date/i18n_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/i18n_.js with 100% similarity]
wrt/build/node_modules/mout/date/isLeapYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/isLeapYear.js with 100% similarity]
wrt/build/node_modules/mout/date/isSame.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/isSame.js with 100% similarity]
wrt/build/node_modules/mout/date/parseIso.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/parseIso.js with 100% similarity]
wrt/build/node_modules/mout/date/quarter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/quarter.js with 100% similarity]
wrt/build/node_modules/mout/date/startOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/startOf.js with 100% similarity]
wrt/build/node_modules/mout/date/strftime.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/strftime.js with 100% similarity]
wrt/build/node_modules/mout/date/timezoneAbbr.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/timezoneAbbr.js with 100% similarity]
wrt/build/node_modules/mout/date/timezoneOffset.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/timezoneOffset.js with 100% similarity]
wrt/build/node_modules/mout/date/totalDaysInMonth.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/totalDaysInMonth.js with 100% similarity]
wrt/build/node_modules/mout/date/totalDaysInYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/totalDaysInYear.js with 100% similarity]
wrt/build/node_modules/mout/date/weekOfTheYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/date/weekOfTheYear.js with 100% similarity]
wrt/build/node_modules/mout/doc/array.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/collection.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/collection.md with 100% similarity]
wrt/build/node_modules/mout/doc/date.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/date.md with 100% similarity]
wrt/build/node_modules/mout/doc/function.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/lang.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/lang.md with 100% similarity]
wrt/build/node_modules/mout/doc/math.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/number.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/object.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/queryString.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/queryString.md with 100% similarity]
wrt/build/node_modules/mout/doc/random.md [new file with mode: 0644]
wrt/build/node_modules/mout/doc/string.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/string.md with 100% similarity]
wrt/build/node_modules/mout/doc/time.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/time.md with 100% similarity]
wrt/build/node_modules/mout/function.js [new file with mode: 0644]
wrt/build/node_modules/mout/function/after.js [new file with mode: 0644]
wrt/build/node_modules/mout/function/awaitDelay.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/awaitDelay.js with 100% similarity]
wrt/build/node_modules/mout/function/bind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/bind.js with 100% similarity]
wrt/build/node_modules/mout/function/compose.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/compose.js with 100% similarity]
wrt/build/node_modules/mout/function/constant.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/constant.js with 100% similarity]
wrt/build/node_modules/mout/function/debounce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/debounce.js with 100% similarity]
wrt/build/node_modules/mout/function/func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/func.js with 100% similarity]
wrt/build/node_modules/mout/function/identity.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/identity.js with 100% similarity]
wrt/build/node_modules/mout/function/makeIterator_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/makeIterator_.js with 100% similarity]
wrt/build/node_modules/mout/function/memoize.js [new file with mode: 0644]
wrt/build/node_modules/mout/function/partial.js [new file with mode: 0644]
wrt/build/node_modules/mout/function/prop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/prop.js with 100% similarity]
wrt/build/node_modules/mout/function/series.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/series.js with 100% similarity]
wrt/build/node_modules/mout/function/throttle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/throttle.js with 100% similarity]
wrt/build/node_modules/mout/function/timeout.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/timeout.js with 100% similarity]
wrt/build/node_modules/mout/function/times.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/times.js with 100% similarity]
wrt/build/node_modules/mout/function/wrap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/wrap.js with 100% similarity]
wrt/build/node_modules/mout/index.js [new file with mode: 0644]
wrt/build/node_modules/mout/lang.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang.js with 100% similarity]
wrt/build/node_modules/mout/lang/GLOBAL.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/GLOBAL.js with 100% similarity]
wrt/build/node_modules/mout/lang/clone.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/clone.js with 100% similarity]
wrt/build/node_modules/mout/lang/createObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/createObject.js with 100% similarity]
wrt/build/node_modules/mout/lang/ctorApply.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/ctorApply.js with 100% similarity]
wrt/build/node_modules/mout/lang/deepClone.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/deepClone.js with 100% similarity]
wrt/build/node_modules/mout/lang/deepEquals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/deepEquals.js with 100% similarity]
wrt/build/node_modules/mout/lang/defaults.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/defaults.js with 100% similarity]
wrt/build/node_modules/mout/lang/inheritPrototype.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/inheritPrototype.js with 100% similarity]
wrt/build/node_modules/mout/lang/is.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/is.js with 100% similarity]
wrt/build/node_modules/mout/lang/isArguments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isArguments.js with 100% similarity]
wrt/build/node_modules/mout/lang/isArray.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isArray.js with 100% similarity]
wrt/build/node_modules/mout/lang/isBoolean.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isBoolean.js with 100% similarity]
wrt/build/node_modules/mout/lang/isDate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isDate.js with 100% similarity]
wrt/build/node_modules/mout/lang/isEmpty.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isEmpty.js with 100% similarity]
wrt/build/node_modules/mout/lang/isFinite.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isFinite.js with 100% similarity]
wrt/build/node_modules/mout/lang/isFunction.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isFunction.js with 100% similarity]
wrt/build/node_modules/mout/lang/isInteger.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isInteger.js with 100% similarity]
wrt/build/node_modules/mout/lang/isKind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isKind.js with 100% similarity]
wrt/build/node_modules/mout/lang/isNaN.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isNaN.js with 100% similarity]
wrt/build/node_modules/mout/lang/isNull.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isNull.js with 100% similarity]
wrt/build/node_modules/mout/lang/isNumber.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isNumber.js with 100% similarity]
wrt/build/node_modules/mout/lang/isObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isObject.js with 100% similarity]
wrt/build/node_modules/mout/lang/isPlainObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isPlainObject.js with 100% similarity]
wrt/build/node_modules/mout/lang/isPrimitive.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isPrimitive.js with 100% similarity]
wrt/build/node_modules/mout/lang/isRegExp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isRegExp.js with 100% similarity]
wrt/build/node_modules/mout/lang/isString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isString.js with 100% similarity]
wrt/build/node_modules/mout/lang/isUndefined.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isUndefined.js with 100% similarity]
wrt/build/node_modules/mout/lang/isnt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/isnt.js with 100% similarity]
wrt/build/node_modules/mout/lang/kindOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/kindOf.js with 100% similarity]
wrt/build/node_modules/mout/lang/toArray.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/toArray.js with 100% similarity]
wrt/build/node_modules/mout/lang/toNumber.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/toNumber.js with 100% similarity]
wrt/build/node_modules/mout/lang/toString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/lang/toString.js with 100% similarity]
wrt/build/node_modules/mout/math.js [new file with mode: 0644]
wrt/build/node_modules/mout/math/ceil.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/ceil.js with 100% similarity]
wrt/build/node_modules/mout/math/clamp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/clamp.js with 100% similarity]
wrt/build/node_modules/mout/math/countSteps.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/countSteps.js with 100% similarity]
wrt/build/node_modules/mout/math/floor.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/floor.js with 100% similarity]
wrt/build/node_modules/mout/math/inRange.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/inRange.js with 100% similarity]
wrt/build/node_modules/mout/math/isNear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/isNear.js with 100% similarity]
wrt/build/node_modules/mout/math/lerp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/lerp.js with 100% similarity]
wrt/build/node_modules/mout/math/loop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/loop.js with 100% similarity]
wrt/build/node_modules/mout/math/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/map.js with 100% similarity]
wrt/build/node_modules/mout/math/norm.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/norm.js with 100% similarity]
wrt/build/node_modules/mout/math/overflow.js [new file with mode: 0644]
wrt/build/node_modules/mout/math/round.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math/round.js with 100% similarity]
wrt/build/node_modules/mout/number.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number.js with 100% similarity]
wrt/build/node_modules/mout/number/MAX_INT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/MAX_INT.js with 100% similarity]
wrt/build/node_modules/mout/number/MAX_SAFE_INTEGER.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/MAX_SAFE_INTEGER.js with 100% similarity]
wrt/build/node_modules/mout/number/MAX_UINT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/MAX_UINT.js with 100% similarity]
wrt/build/node_modules/mout/number/MIN_INT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/MIN_INT.js with 100% similarity]
wrt/build/node_modules/mout/number/abbreviate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/abbreviate.js with 100% similarity]
wrt/build/node_modules/mout/number/currencyFormat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/currencyFormat.js with 100% similarity]
wrt/build/node_modules/mout/number/enforcePrecision.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/enforcePrecision.js with 100% similarity]
wrt/build/node_modules/mout/number/isNaN.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/isNaN.js with 100% similarity]
wrt/build/node_modules/mout/number/nth.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/nth.js with 100% similarity]
wrt/build/node_modules/mout/number/ordinal.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/ordinal.js with 100% similarity]
wrt/build/node_modules/mout/number/pad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/pad.js with 100% similarity]
wrt/build/node_modules/mout/number/rol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/rol.js with 100% similarity]
wrt/build/node_modules/mout/number/ror.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/ror.js with 100% similarity]
wrt/build/node_modules/mout/number/sign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/sign.js with 100% similarity]
wrt/build/node_modules/mout/number/toInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/toInt.js with 100% similarity]
wrt/build/node_modules/mout/number/toUInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/toUInt.js with 100% similarity]
wrt/build/node_modules/mout/number/toUInt31.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/number/toUInt31.js with 100% similarity]
wrt/build/node_modules/mout/object.js [new file with mode: 0644]
wrt/build/node_modules/mout/object/bindAll.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/bindAll.js with 100% similarity]
wrt/build/node_modules/mout/object/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/contains.js with 100% similarity]
wrt/build/node_modules/mout/object/deepFillIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/deepFillIn.js with 100% similarity]
wrt/build/node_modules/mout/object/deepMatches.js [new file with mode: 0644]
wrt/build/node_modules/mout/object/deepMixIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/deepMixIn.js with 100% similarity]
wrt/build/node_modules/mout/object/equals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/equals.js with 100% similarity]
wrt/build/node_modules/mout/object/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/every.js with 100% similarity]
wrt/build/node_modules/mout/object/fillIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/fillIn.js with 100% similarity]
wrt/build/node_modules/mout/object/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/filter.js with 100% similarity]
wrt/build/node_modules/mout/object/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/find.js with 100% similarity]
wrt/build/node_modules/mout/object/flatten.js [new file with mode: 0644]
wrt/build/node_modules/mout/object/forIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/forIn.js with 100% similarity]
wrt/build/node_modules/mout/object/forOwn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/forOwn.js with 100% similarity]
wrt/build/node_modules/mout/object/functions.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/functions.js with 100% similarity]
wrt/build/node_modules/mout/object/get.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/get.js with 100% similarity]
wrt/build/node_modules/mout/object/has.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/has.js with 100% similarity]
wrt/build/node_modules/mout/object/hasOwn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/hasOwn.js with 100% similarity]
wrt/build/node_modules/mout/object/keys.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/keys.js with 100% similarity]
wrt/build/node_modules/mout/object/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/map.js with 100% similarity]
wrt/build/node_modules/mout/object/matches.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/matches.js with 100% similarity]
wrt/build/node_modules/mout/object/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/max.js with 100% similarity]
wrt/build/node_modules/mout/object/merge.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/merge.js with 100% similarity]
wrt/build/node_modules/mout/object/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/min.js with 100% similarity]
wrt/build/node_modules/mout/object/mixIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/mixIn.js with 100% similarity]
wrt/build/node_modules/mout/object/namespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/namespace.js with 100% similarity]
wrt/build/node_modules/mout/object/omit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/omit.js with 100% similarity]
wrt/build/node_modules/mout/object/pick.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/pick.js with 100% similarity]
wrt/build/node_modules/mout/object/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/pluck.js with 100% similarity]
wrt/build/node_modules/mout/object/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/reduce.js with 100% similarity]
wrt/build/node_modules/mout/object/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/reject.js with 100% similarity]
wrt/build/node_modules/mout/object/result.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/result.js with 100% similarity]
wrt/build/node_modules/mout/object/set.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/set.js with 100% similarity]
wrt/build/node_modules/mout/object/size.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/size.js with 100% similarity]
wrt/build/node_modules/mout/object/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/some.js with 100% similarity]
wrt/build/node_modules/mout/object/unset.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/unset.js with 100% similarity]
wrt/build/node_modules/mout/object/values.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/values.js with 100% similarity]
wrt/build/node_modules/mout/package.json [new file with mode: 0644]
wrt/build/node_modules/mout/queryString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString.js with 100% similarity]
wrt/build/node_modules/mout/queryString/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/contains.js with 100% similarity]
wrt/build/node_modules/mout/queryString/decode.js [new file with mode: 0644]
wrt/build/node_modules/mout/queryString/encode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/encode.js with 100% similarity]
wrt/build/node_modules/mout/queryString/getParam.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/getParam.js with 100% similarity]
wrt/build/node_modules/mout/queryString/getQuery.js [new file with mode: 0644]
wrt/build/node_modules/mout/queryString/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/parse.js with 100% similarity]
wrt/build/node_modules/mout/queryString/setParam.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/setParam.js with 100% similarity]
wrt/build/node_modules/mout/random.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random.js with 100% similarity]
wrt/build/node_modules/mout/random/choice.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/choice.js with 100% similarity]
wrt/build/node_modules/mout/random/guid.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/guid.js with 100% similarity]
wrt/build/node_modules/mout/random/rand.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/rand.js with 100% similarity]
wrt/build/node_modules/mout/random/randBit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randBit.js with 100% similarity]
wrt/build/node_modules/mout/random/randBool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randBool.js with 100% similarity]
wrt/build/node_modules/mout/random/randHex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randHex.js with 100% similarity]
wrt/build/node_modules/mout/random/randInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randInt.js with 100% similarity]
wrt/build/node_modules/mout/random/randSign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randSign.js with 100% similarity]
wrt/build/node_modules/mout/random/randString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/randString.js with 100% similarity]
wrt/build/node_modules/mout/random/random.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/random/random.js with 100% similarity]
wrt/build/node_modules/mout/src/array.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/array/append.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/append.js with 100% similarity]
wrt/build/node_modules/mout/src/array/collect.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/collect.js with 100% similarity]
wrt/build/node_modules/mout/src/array/combine.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/combine.js with 100% similarity]
wrt/build/node_modules/mout/src/array/compact.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/compact.js with 100% similarity]
wrt/build/node_modules/mout/src/array/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/contains.js with 100% similarity]
wrt/build/node_modules/mout/src/array/difference.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/difference.js with 100% similarity]
wrt/build/node_modules/mout/src/array/equals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/equals.js with 100% similarity]
wrt/build/node_modules/mout/src/array/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/every.js with 100% similarity]
wrt/build/node_modules/mout/src/array/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/filter.js with 100% similarity]
wrt/build/node_modules/mout/src/array/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/find.js with 100% similarity]
wrt/build/node_modules/mout/src/array/findIndex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/findIndex.js with 100% similarity]
wrt/build/node_modules/mout/src/array/findLast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/findLast.js with 100% similarity]
wrt/build/node_modules/mout/src/array/findLastIndex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/findLastIndex.js with 100% similarity]
wrt/build/node_modules/mout/src/array/flatten.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/array/forEach.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/forEach.js with 100% similarity]
wrt/build/node_modules/mout/src/array/groupBy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/groupBy.js with 100% similarity]
wrt/build/node_modules/mout/src/array/indexOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/indexOf.js with 100% similarity]
wrt/build/node_modules/mout/src/array/indicesOf.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/array/insert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/insert.js with 100% similarity]
wrt/build/node_modules/mout/src/array/intersection.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/intersection.js with 100% similarity]
wrt/build/node_modules/mout/src/array/invoke.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/invoke.js with 100% similarity]
wrt/build/node_modules/mout/src/array/join.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/join.js with 100% similarity]
wrt/build/node_modules/mout/src/array/last.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/last.js with 100% similarity]
wrt/build/node_modules/mout/src/array/lastIndexOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/lastIndexOf.js with 100% similarity]
wrt/build/node_modules/mout/src/array/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/map.js with 100% similarity]
wrt/build/node_modules/mout/src/array/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/max.js with 100% similarity]
wrt/build/node_modules/mout/src/array/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/min.js with 100% similarity]
wrt/build/node_modules/mout/src/array/pick.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/pick.js with 100% similarity]
wrt/build/node_modules/mout/src/array/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/pluck.js with 100% similarity]
wrt/build/node_modules/mout/src/array/range.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/range.js with 100% similarity]
wrt/build/node_modules/mout/src/array/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/reduce.js with 100% similarity]
wrt/build/node_modules/mout/src/array/reduceRight.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/reduceRight.js with 100% similarity]
wrt/build/node_modules/mout/src/array/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/reject.js with 100% similarity]
wrt/build/node_modules/mout/src/array/remove.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/remove.js with 100% similarity]
wrt/build/node_modules/mout/src/array/removeAll.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/removeAll.js with 100% similarity]
wrt/build/node_modules/mout/src/array/reverse.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/array/shuffle.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/array/slice.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/slice.js with 100% similarity]
wrt/build/node_modules/mout/src/array/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/some.js with 100% similarity]
wrt/build/node_modules/mout/src/array/sort.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/sort.js with 100% similarity]
wrt/build/node_modules/mout/src/array/sortBy.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/sortBy.js with 100% similarity]
wrt/build/node_modules/mout/src/array/split.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/split.js with 100% similarity]
wrt/build/node_modules/mout/src/array/take.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/take.js with 100% similarity]
wrt/build/node_modules/mout/src/array/toLookup.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/toLookup.js with 100% similarity]
wrt/build/node_modules/mout/src/array/union.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/union.js with 100% similarity]
wrt/build/node_modules/mout/src/array/unique.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/unique.js with 100% similarity]
wrt/build/node_modules/mout/src/array/xor.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/xor.js with 100% similarity]
wrt/build/node_modules/mout/src/array/zip.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/zip.js with 100% similarity]
wrt/build/node_modules/mout/src/collection.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/contains.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/every.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/filter.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/find.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/forEach.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/forEach.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/make_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/make_.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/map.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/max.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/min.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/pluck.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/reduce.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/reject.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/size.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/size.js with 100% similarity]
wrt/build/node_modules/mout/src/collection/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/collection/some.js with 100% similarity]
wrt/build/node_modules/mout/src/date.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date.js with 100% similarity]
wrt/build/node_modules/mout/src/date/dayOfTheYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/dayOfTheYear.js with 100% similarity]
wrt/build/node_modules/mout/src/date/diff.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/diff.js with 100% similarity]
wrt/build/node_modules/mout/src/date/i18n/de-DE.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/i18n/de-DE.js with 100% similarity]
wrt/build/node_modules/mout/src/date/i18n/en-US.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/i18n/en-US.js with 100% similarity]
wrt/build/node_modules/mout/src/date/i18n/pt-BR.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/i18n/pt-BR.js with 100% similarity]
wrt/build/node_modules/mout/src/date/i18n_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/i18n_.js with 100% similarity]
wrt/build/node_modules/mout/src/date/isLeapYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/isLeapYear.js with 100% similarity]
wrt/build/node_modules/mout/src/date/isSame.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/isSame.js with 100% similarity]
wrt/build/node_modules/mout/src/date/parseIso.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/parseIso.js with 100% similarity]
wrt/build/node_modules/mout/src/date/quarter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/quarter.js with 100% similarity]
wrt/build/node_modules/mout/src/date/startOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/startOf.js with 100% similarity]
wrt/build/node_modules/mout/src/date/strftime.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/strftime.js with 100% similarity]
wrt/build/node_modules/mout/src/date/timezoneAbbr.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/timezoneAbbr.js with 100% similarity]
wrt/build/node_modules/mout/src/date/timezoneOffset.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/timezoneOffset.js with 100% similarity]
wrt/build/node_modules/mout/src/date/totalDaysInMonth.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/totalDaysInMonth.js with 100% similarity]
wrt/build/node_modules/mout/src/date/totalDaysInYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/totalDaysInYear.js with 100% similarity]
wrt/build/node_modules/mout/src/date/weekOfTheYear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/date/weekOfTheYear.js with 100% similarity]
wrt/build/node_modules/mout/src/function.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/function/after.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/function/awaitDelay.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/awaitDelay.js with 100% similarity]
wrt/build/node_modules/mout/src/function/bind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/bind.js with 100% similarity]
wrt/build/node_modules/mout/src/function/compose.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/compose.js with 100% similarity]
wrt/build/node_modules/mout/src/function/constant.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/constant.js with 100% similarity]
wrt/build/node_modules/mout/src/function/debounce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/debounce.js with 100% similarity]
wrt/build/node_modules/mout/src/function/func.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/func.js with 100% similarity]
wrt/build/node_modules/mout/src/function/identity.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/identity.js with 100% similarity]
wrt/build/node_modules/mout/src/function/makeIterator_.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/makeIterator_.js with 100% similarity]
wrt/build/node_modules/mout/src/function/memoize.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/function/partial.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/function/prop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/prop.js with 100% similarity]
wrt/build/node_modules/mout/src/function/series.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/series.js with 100% similarity]
wrt/build/node_modules/mout/src/function/throttle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/throttle.js with 100% similarity]
wrt/build/node_modules/mout/src/function/timeout.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/timeout.js with 100% similarity]
wrt/build/node_modules/mout/src/function/times.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/times.js with 100% similarity]
wrt/build/node_modules/mout/src/function/wrap.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/wrap.js with 100% similarity]
wrt/build/node_modules/mout/src/index.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/lang.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/GLOBAL.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/GLOBAL.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/clone.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/clone.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/createObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/createObject.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/ctorApply.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/ctorApply.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/deepClone.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/deepClone.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/deepEquals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/deepEquals.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/defaults.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/defaults.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/inheritPrototype.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/inheritPrototype.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/is.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/is.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isArguments.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isArguments.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isArray.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isArray.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isBoolean.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isBoolean.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isDate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isDate.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isEmpty.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isEmpty.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isFinite.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isFinite.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isFunction.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isFunction.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isInteger.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isInteger.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isKind.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isKind.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isNaN.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isNaN.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isNull.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isNull.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isNumber.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isNumber.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isObject.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isPlainObject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isPlainObject.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isPrimitive.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isPrimitive.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isRegExp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isRegExp.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isString.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isUndefined.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isUndefined.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/isnt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/isnt.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/kindOf.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/kindOf.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/toArray.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/toArray.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/toNumber.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/toNumber.js with 100% similarity]
wrt/build/node_modules/mout/src/lang/toString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/lang/toString.js with 100% similarity]
wrt/build/node_modules/mout/src/math.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/math/ceil.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/ceil.js with 100% similarity]
wrt/build/node_modules/mout/src/math/clamp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/clamp.js with 100% similarity]
wrt/build/node_modules/mout/src/math/countSteps.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/countSteps.js with 100% similarity]
wrt/build/node_modules/mout/src/math/floor.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/floor.js with 100% similarity]
wrt/build/node_modules/mout/src/math/inRange.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/inRange.js with 100% similarity]
wrt/build/node_modules/mout/src/math/isNear.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/isNear.js with 100% similarity]
wrt/build/node_modules/mout/src/math/lerp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/lerp.js with 100% similarity]
wrt/build/node_modules/mout/src/math/loop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/loop.js with 100% similarity]
wrt/build/node_modules/mout/src/math/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/map.js with 100% similarity]
wrt/build/node_modules/mout/src/math/norm.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/norm.js with 100% similarity]
wrt/build/node_modules/mout/src/math/overflow.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/math/round.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math/round.js with 100% similarity]
wrt/build/node_modules/mout/src/number.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number.js with 100% similarity]
wrt/build/node_modules/mout/src/number/MAX_INT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/MAX_INT.js with 100% similarity]
wrt/build/node_modules/mout/src/number/MAX_SAFE_INTEGER.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/MAX_SAFE_INTEGER.js with 100% similarity]
wrt/build/node_modules/mout/src/number/MAX_UINT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/MAX_UINT.js with 100% similarity]
wrt/build/node_modules/mout/src/number/MIN_INT.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/MIN_INT.js with 100% similarity]
wrt/build/node_modules/mout/src/number/abbreviate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/abbreviate.js with 100% similarity]
wrt/build/node_modules/mout/src/number/currencyFormat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/currencyFormat.js with 100% similarity]
wrt/build/node_modules/mout/src/number/enforcePrecision.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/enforcePrecision.js with 100% similarity]
wrt/build/node_modules/mout/src/number/isNaN.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/isNaN.js with 100% similarity]
wrt/build/node_modules/mout/src/number/nth.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/nth.js with 100% similarity]
wrt/build/node_modules/mout/src/number/ordinal.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/ordinal.js with 100% similarity]
wrt/build/node_modules/mout/src/number/pad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/pad.js with 100% similarity]
wrt/build/node_modules/mout/src/number/rol.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/rol.js with 100% similarity]
wrt/build/node_modules/mout/src/number/ror.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/ror.js with 100% similarity]
wrt/build/node_modules/mout/src/number/sign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/sign.js with 100% similarity]
wrt/build/node_modules/mout/src/number/toInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/toInt.js with 100% similarity]
wrt/build/node_modules/mout/src/number/toUInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/toUInt.js with 100% similarity]
wrt/build/node_modules/mout/src/number/toUInt31.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/number/toUInt31.js with 100% similarity]
wrt/build/node_modules/mout/src/object.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/object/bindAll.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/bindAll.js with 100% similarity]
wrt/build/node_modules/mout/src/object/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/contains.js with 100% similarity]
wrt/build/node_modules/mout/src/object/deepFillIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/deepFillIn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/deepMatches.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/object/deepMixIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/deepMixIn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/equals.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/equals.js with 100% similarity]
wrt/build/node_modules/mout/src/object/every.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/every.js with 100% similarity]
wrt/build/node_modules/mout/src/object/fillIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/fillIn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/filter.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/filter.js with 100% similarity]
wrt/build/node_modules/mout/src/object/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/find.js with 100% similarity]
wrt/build/node_modules/mout/src/object/flatten.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/object/forIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/forIn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/forOwn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/forOwn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/functions.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/functions.js with 100% similarity]
wrt/build/node_modules/mout/src/object/get.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/get.js with 100% similarity]
wrt/build/node_modules/mout/src/object/has.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/has.js with 100% similarity]
wrt/build/node_modules/mout/src/object/hasOwn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/hasOwn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/keys.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/keys.js with 100% similarity]
wrt/build/node_modules/mout/src/object/map.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/map.js with 100% similarity]
wrt/build/node_modules/mout/src/object/matches.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/matches.js with 100% similarity]
wrt/build/node_modules/mout/src/object/max.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/max.js with 100% similarity]
wrt/build/node_modules/mout/src/object/merge.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/merge.js with 100% similarity]
wrt/build/node_modules/mout/src/object/min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/min.js with 100% similarity]
wrt/build/node_modules/mout/src/object/mixIn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/mixIn.js with 100% similarity]
wrt/build/node_modules/mout/src/object/namespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/namespace.js with 100% similarity]
wrt/build/node_modules/mout/src/object/omit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/omit.js with 100% similarity]
wrt/build/node_modules/mout/src/object/pick.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/pick.js with 100% similarity]
wrt/build/node_modules/mout/src/object/pluck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/pluck.js with 100% similarity]
wrt/build/node_modules/mout/src/object/reduce.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/reduce.js with 100% similarity]
wrt/build/node_modules/mout/src/object/reject.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/reject.js with 100% similarity]
wrt/build/node_modules/mout/src/object/result.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/result.js with 100% similarity]
wrt/build/node_modules/mout/src/object/set.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/set.js with 100% similarity]
wrt/build/node_modules/mout/src/object/size.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/size.js with 100% similarity]
wrt/build/node_modules/mout/src/object/some.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/some.js with 100% similarity]
wrt/build/node_modules/mout/src/object/unset.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/unset.js with 100% similarity]
wrt/build/node_modules/mout/src/object/values.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/values.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/contains.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString/decode.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/queryString/encode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/encode.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString/getParam.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/getParam.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString/getQuery.js [new file with mode: 0644]
wrt/build/node_modules/mout/src/queryString/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/parse.js with 100% similarity]
wrt/build/node_modules/mout/src/queryString/setParam.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/setParam.js with 100% similarity]
wrt/build/node_modules/mout/src/random.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random.js with 100% similarity]
wrt/build/node_modules/mout/src/random/choice.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/choice.js with 100% similarity]
wrt/build/node_modules/mout/src/random/guid.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/guid.js with 100% similarity]
wrt/build/node_modules/mout/src/random/rand.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/rand.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randBit.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randBit.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randBool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randBool.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randHex.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randHex.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randInt.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randInt.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randSign.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randSign.js with 100% similarity]
wrt/build/node_modules/mout/src/random/randString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/randString.js with 100% similarity]
wrt/build/node_modules/mout/src/random/random.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/random/random.js with 100% similarity]
wrt/build/node_modules/mout/src/string.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string.js with 100% similarity]
wrt/build/node_modules/mout/src/string/WHITE_SPACES.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/WHITE_SPACES.js with 100% similarity]
wrt/build/node_modules/mout/src/string/camelCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/camelCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/contains.js with 100% similarity]
wrt/build/node_modules/mout/src/string/crop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/crop.js with 100% similarity]
wrt/build/node_modules/mout/src/string/endsWith.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/endsWith.js with 100% similarity]
wrt/build/node_modules/mout/src/string/escapeHtml.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/escapeHtml.js with 100% similarity]
wrt/build/node_modules/mout/src/string/escapeRegExp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/escapeRegExp.js with 100% similarity]
wrt/build/node_modules/mout/src/string/escapeUnicode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/escapeUnicode.js with 100% similarity]
wrt/build/node_modules/mout/src/string/hyphenate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/hyphenate.js with 100% similarity]
wrt/build/node_modules/mout/src/string/insert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/insert.js with 100% similarity]
wrt/build/node_modules/mout/src/string/interpolate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/interpolate.js with 100% similarity]
wrt/build/node_modules/mout/src/string/lowerCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/lowerCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/lpad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/lpad.js with 100% similarity]
wrt/build/node_modules/mout/src/string/ltrim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/ltrim.js with 100% similarity]
wrt/build/node_modules/mout/src/string/makePath.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/makePath.js with 100% similarity]
wrt/build/node_modules/mout/src/string/normalizeLineBreaks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/normalizeLineBreaks.js with 100% similarity]
wrt/build/node_modules/mout/src/string/pascalCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/pascalCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/properCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/properCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/removeNonASCII.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/removeNonASCII.js with 100% similarity]
wrt/build/node_modules/mout/src/string/removeNonWord.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/removeNonWord.js with 100% similarity]
wrt/build/node_modules/mout/src/string/repeat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/repeat.js with 100% similarity]
wrt/build/node_modules/mout/src/string/replace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/replace.js with 100% similarity]
wrt/build/node_modules/mout/src/string/replaceAccents.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/replaceAccents.js with 100% similarity]
wrt/build/node_modules/mout/src/string/rpad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/rpad.js with 100% similarity]
wrt/build/node_modules/mout/src/string/rtrim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/rtrim.js with 100% similarity]
wrt/build/node_modules/mout/src/string/sentenceCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/sentenceCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/slugify.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/slugify.js with 100% similarity]
wrt/build/node_modules/mout/src/string/startsWith.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/startsWith.js with 100% similarity]
wrt/build/node_modules/mout/src/string/stripHtmlTags.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/stripHtmlTags.js with 100% similarity]
wrt/build/node_modules/mout/src/string/trim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/trim.js with 100% similarity]
wrt/build/node_modules/mout/src/string/truncate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/truncate.js with 100% similarity]
wrt/build/node_modules/mout/src/string/typecast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/typecast.js with 100% similarity]
wrt/build/node_modules/mout/src/string/unCamelCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/unCamelCase.js with 100% similarity]
wrt/build/node_modules/mout/src/string/underscore.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/underscore.js with 100% similarity]
wrt/build/node_modules/mout/src/string/unescapeHtml.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/unescapeHtml.js with 100% similarity]
wrt/build/node_modules/mout/src/string/unescapeUnicode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/unescapeUnicode.js with 100% similarity]
wrt/build/node_modules/mout/src/string/unhyphenate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/unhyphenate.js with 100% similarity]
wrt/build/node_modules/mout/src/string/upperCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/string/upperCase.js with 100% similarity]
wrt/build/node_modules/mout/src/time.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/time.js with 100% similarity]
wrt/build/node_modules/mout/src/time/convert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/time/convert.js with 100% similarity]
wrt/build/node_modules/mout/src/time/now.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/time/now.js with 100% similarity]
wrt/build/node_modules/mout/src/time/parseMs.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/time/parseMs.js with 100% similarity]
wrt/build/node_modules/mout/src/time/toTimeString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/time/toTimeString.js with 100% similarity]
wrt/build/node_modules/mout/string.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string.js with 100% similarity]
wrt/build/node_modules/mout/string/WHITE_SPACES.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/WHITE_SPACES.js with 100% similarity]
wrt/build/node_modules/mout/string/camelCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/camelCase.js with 100% similarity]
wrt/build/node_modules/mout/string/contains.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/contains.js with 100% similarity]
wrt/build/node_modules/mout/string/crop.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/crop.js with 100% similarity]
wrt/build/node_modules/mout/string/endsWith.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/endsWith.js with 100% similarity]
wrt/build/node_modules/mout/string/escapeHtml.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/escapeHtml.js with 100% similarity]
wrt/build/node_modules/mout/string/escapeRegExp.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/escapeRegExp.js with 100% similarity]
wrt/build/node_modules/mout/string/escapeUnicode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/escapeUnicode.js with 100% similarity]
wrt/build/node_modules/mout/string/hyphenate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/hyphenate.js with 100% similarity]
wrt/build/node_modules/mout/string/insert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/insert.js with 100% similarity]
wrt/build/node_modules/mout/string/interpolate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/interpolate.js with 100% similarity]
wrt/build/node_modules/mout/string/lowerCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/lowerCase.js with 100% similarity]
wrt/build/node_modules/mout/string/lpad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/lpad.js with 100% similarity]
wrt/build/node_modules/mout/string/ltrim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/ltrim.js with 100% similarity]
wrt/build/node_modules/mout/string/makePath.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/makePath.js with 100% similarity]
wrt/build/node_modules/mout/string/normalizeLineBreaks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/normalizeLineBreaks.js with 100% similarity]
wrt/build/node_modules/mout/string/pascalCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/pascalCase.js with 100% similarity]
wrt/build/node_modules/mout/string/properCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/properCase.js with 100% similarity]
wrt/build/node_modules/mout/string/removeNonASCII.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/removeNonASCII.js with 100% similarity]
wrt/build/node_modules/mout/string/removeNonWord.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/removeNonWord.js with 100% similarity]
wrt/build/node_modules/mout/string/repeat.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/repeat.js with 100% similarity]
wrt/build/node_modules/mout/string/replace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/replace.js with 100% similarity]
wrt/build/node_modules/mout/string/replaceAccents.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/replaceAccents.js with 100% similarity]
wrt/build/node_modules/mout/string/rpad.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/rpad.js with 100% similarity]
wrt/build/node_modules/mout/string/rtrim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/rtrim.js with 100% similarity]
wrt/build/node_modules/mout/string/sentenceCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/sentenceCase.js with 100% similarity]
wrt/build/node_modules/mout/string/slugify.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/slugify.js with 100% similarity]
wrt/build/node_modules/mout/string/startsWith.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/startsWith.js with 100% similarity]
wrt/build/node_modules/mout/string/stripHtmlTags.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/stripHtmlTags.js with 100% similarity]
wrt/build/node_modules/mout/string/trim.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/trim.js with 100% similarity]
wrt/build/node_modules/mout/string/truncate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/truncate.js with 100% similarity]
wrt/build/node_modules/mout/string/typecast.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/typecast.js with 100% similarity]
wrt/build/node_modules/mout/string/unCamelCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/unCamelCase.js with 100% similarity]
wrt/build/node_modules/mout/string/underscore.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/underscore.js with 100% similarity]
wrt/build/node_modules/mout/string/unescapeHtml.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/unescapeHtml.js with 100% similarity]
wrt/build/node_modules/mout/string/unescapeUnicode.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/unescapeUnicode.js with 100% similarity]
wrt/build/node_modules/mout/string/unhyphenate.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/unhyphenate.js with 100% similarity]
wrt/build/node_modules/mout/string/upperCase.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/string/upperCase.js with 100% similarity]
wrt/build/node_modules/mout/time.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/time.js with 100% similarity]
wrt/build/node_modules/mout/time/convert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/time/convert.js with 100% similarity]
wrt/build/node_modules/mout/time/now.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/time/now.js with 100% similarity]
wrt/build/node_modules/mout/time/parseMs.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/time/parseMs.js with 100% similarity]
wrt/build/node_modules/mout/time/toTimeString.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/time/toTimeString.js with 100% similarity]
wrt/build/node_modules/ms/index.js [new file with mode: 0644]
wrt/build/node_modules/ms/license.md [new file with mode: 0644]
wrt/build/node_modules/ms/package.json [new file with mode: 0644]
wrt/build/node_modules/ms/readme.md [new file with mode: 0644]
wrt/build/node_modules/npm-path/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/.npmignore with 100% similarity]
wrt/build/node_modules/npm-path/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/npm-path/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/LICENSE with 100% similarity]
wrt/build/node_modules/npm-path/Readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/Readme.md with 100% similarity]
wrt/build/node_modules/npm-path/bin/npm-path [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/bin/npm-path with 100% similarity]
wrt/build/node_modules/npm-path/find-prefix.js [new file with mode: 0644]
wrt/build/node_modules/npm-path/index.js [new file with mode: 0644]
wrt/build/node_modules/npm-path/package.json [new file with mode: 0644]
wrt/build/node_modules/npm-path/test/fixture/level0/test/.npmignore [new file with mode: 0644]
wrt/build/node_modules/npm-path/test/fixture/level0_node_modules/test/.npmignore [new file with mode: 0644]
wrt/build/node_modules/npm-path/test/index.js [new file with mode: 0644]
wrt/build/node_modules/npm-run/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/.npmignore with 100% similarity]
wrt/build/node_modules/npm-run/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/.travis.yml with 100% similarity]
wrt/build/node_modules/npm-run/History.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/History.md with 100% similarity]
wrt/build/node_modules/npm-run/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/LICENSE with 100% similarity]
wrt/build/node_modules/npm-run/Readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/Readme.md with 100% similarity]
wrt/build/node_modules/npm-run/bin/npm-run.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/bin/npm-run.js with 100% similarity]
wrt/build/node_modules/npm-run/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/index.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/npm-run/node_modules/minimist/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/LICENSE with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/example/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/example/parse.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/index.js [new file with mode: 0644]
wrt/build/node_modules/npm-run/node_modules/minimist/package.json [new file with mode: 0644]
wrt/build/node_modules/npm-run/node_modules/minimist/readme.markdown [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/readme.markdown with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/all_bool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/all_bool.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/bool.js [new file with mode: 0644]
wrt/build/node_modules/npm-run/node_modules/minimist/test/dash.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/dash.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/default_bool.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/default_bool.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/dotted.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/dotted.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/kv_short.js [new file with mode: 0644]
wrt/build/node_modules/npm-run/node_modules/minimist/test/long.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/long.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/num.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/num.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/parse.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/parse.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/parse_modified.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/parse_modified.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/short.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/short.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/stop_early.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/stop_early.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/unknown.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/unknown.js with 100% similarity]
wrt/build/node_modules/npm-run/node_modules/minimist/test/whitespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/whitespace.js with 100% similarity]
wrt/build/node_modules/npm-run/package.json [new file with mode: 0644]
wrt/build/node_modules/npm-run/spawn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/spawn.js with 100% similarity]
wrt/build/node_modules/npm-run/test/bin.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/test/bin.js with 100% similarity]
wrt/build/node_modules/npm-run/test/exec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/test/exec.js with 100% similarity]
wrt/build/node_modules/npm-run/test/spawn.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/test/spawn.js with 100% similarity]
wrt/build/node_modules/object-assign/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/object-assign/index.js with 100% similarity]
wrt/build/node_modules/object-assign/license [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/license with 100% similarity]
wrt/build/node_modules/object-assign/package.json [new file with mode: 0644]
wrt/build/node_modules/object-assign/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/object-assign/readme.md with 100% similarity]
wrt/build/node_modules/path-parse/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/path-parse/README.md [new file with mode: 0644]
wrt/build/node_modules/path-parse/index.js [new file with mode: 0644]
wrt/build/node_modules/path-parse/index.min.js [new file with mode: 0644]
wrt/build/node_modules/path-parse/package.json [new file with mode: 0644]
wrt/build/node_modules/path-parse/test.js [new file with mode: 0644]
wrt/build/node_modules/path-parse/test.min.js [new file with mode: 0644]
wrt/build/node_modules/protochain/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/.npmignore with 100% similarity]
wrt/build/node_modules/protochain/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/.travis.yml with 100% similarity]
wrt/build/node_modules/protochain/History.md [new file with mode: 0644]
wrt/build/node_modules/protochain/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/LICENSE with 100% similarity]
wrt/build/node_modules/protochain/Readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/Readme.md with 100% similarity]
wrt/build/node_modules/protochain/index.js [new file with mode: 0644]
wrt/build/node_modules/protochain/package.json [new file with mode: 0644]
wrt/build/node_modules/protochain/protochain.js [new file with mode: 0644]
wrt/build/node_modules/protochain/test.js [new file with mode: 0644]
wrt/build/node_modules/resolve/package.json
wrt/build/node_modules/rocambole-indent/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/.npmignore with 100% similarity]
wrt/build/node_modules/rocambole-indent/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/LICENSE.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/LICENSE.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/README.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/.editorconfig [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/.jshintrc [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/.npmignore [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/CHANGELOG.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/CHANGELOG.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/CONTRIBUTING.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/LICENSE.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/README.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/append.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/collect.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/combine.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/compact.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/difference.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/equals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findIndex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLast.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLastIndex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/flatten.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/forEach.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/groupBy.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/indexOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/insert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/intersection.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/invoke.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/join.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/last.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/lastIndexOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pick.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/range.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduceRight.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/remove.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/removeAll.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reverse.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/shuffle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/shuffle.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/slice.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sort.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sortBy.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/split.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/take.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/toLookup.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/union.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/unique.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/xor.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/array/zip.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/forEach.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/make_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/size.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/dayOfTheYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/diff.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/de-DE.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/en-US.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/pt-BR.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isLeapYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isSame.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/parseIso.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/quarter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/startOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/strftime.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneAbbr.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneOffset.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInMonth.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/date/weekOfTheYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/array.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/collection.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/date.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/function.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/lang.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/math.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/math.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/number.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/object.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/queryString.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/random.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/random.md with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/string.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/time.md [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/awaitDelay.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/bind.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/compose.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/constant.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/debounce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/func.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/identity.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/makeIterator_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/partial.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/function/partial.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/prop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/series.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/throttle.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/timeout.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/times.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/function/wrap.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/index.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/GLOBAL.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/clone.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/createObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/ctorApply.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepClone.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepEquals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/defaults.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/inheritPrototype.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/is.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArguments.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArray.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isBoolean.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isDate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isEmpty.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFinite.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFunction.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isInteger.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isKind.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNaN.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNull.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNumber.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPlainObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPrimitive.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isRegExp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isUndefined.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isnt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/kindOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toArray.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toNumber.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/math.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/ceil.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/clamp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/countSteps.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/floor.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/inRange.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/isNear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/lerp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/loop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/norm.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/math/round.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_INT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_SAFE_INTEGER.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_UINT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MIN_INT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/abbreviate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/currencyFormat.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/enforcePrecision.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/isNaN.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/nth.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ordinal.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/pad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/rol.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ror.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/sign.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt31.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/bindAll.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepFillIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepMatches.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object/deepMatches.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepMixIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/equals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/fillIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/flatten.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forOwn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/functions.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/get.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/has.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/hasOwn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/keys.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/matches.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/merge.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/mixIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/namespace.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/omit.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pick.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/result.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/set.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/size.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/unset.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/object/values.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/decode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/encode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getParam.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getQuery.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/parse.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/setParam.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/choice.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/guid.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/rand.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBit.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBool.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randHex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randSign.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/random/random.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/append.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/collect.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/combine.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/compact.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/difference.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/equals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findIndex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLast.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLastIndex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/flatten.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/forEach.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/groupBy.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/indexOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/insert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/intersection.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/invoke.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/join.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/last.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/lastIndexOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pick.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/range.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduceRight.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/remove.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/removeAll.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reverse.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/shuffle.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/shuffle.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/slice.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sort.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sortBy.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/split.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/take.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/toLookup.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/union.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/unique.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/xor.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/zip.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/forEach.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/make_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/size.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/dayOfTheYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/diff.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/de-DE.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/en-US.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/pt-BR.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isLeapYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isSame.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/parseIso.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/quarter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/startOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/strftime.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneAbbr.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneOffset.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInMonth.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/weekOfTheYear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/awaitDelay.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/bind.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/compose.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/constant.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/debounce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/func.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/identity.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/makeIterator_.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/partial.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/function/partial.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/prop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/series.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/throttle.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/timeout.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/times.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/wrap.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/index.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/GLOBAL.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/clone.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/createObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/ctorApply.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepClone.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepEquals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/defaults.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/inheritPrototype.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/is.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArguments.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArray.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isBoolean.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isDate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isEmpty.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFinite.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFunction.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isInteger.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isKind.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNaN.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNull.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNumber.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPlainObject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPrimitive.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isRegExp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isUndefined.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isnt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/kindOf.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toArray.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toNumber.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/math.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/ceil.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/clamp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/countSteps.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/floor.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/inRange.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/isNear.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/lerp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/loop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/norm.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/round.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_INT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_SAFE_INTEGER.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_UINT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MIN_INT.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/abbreviate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/currencyFormat.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/enforcePrecision.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/isNaN.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/nth.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ordinal.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/pad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/rol.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ror.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/sign.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt31.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/bindAll.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepFillIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepMatches.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object/deepMatches.js with 100% similarity]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepMixIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/equals.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/every.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/fillIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/filter.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/find.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/flatten.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forOwn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/functions.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/get.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/has.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/hasOwn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/keys.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/map.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/matches.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/max.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/merge.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/mixIn.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/namespace.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/omit.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pick.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pluck.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reduce.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reject.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/result.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/set.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/size.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/some.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/unset.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/values.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/decode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/encode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getParam.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getQuery.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/parse.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/setParam.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/choice.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/guid.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/rand.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBit.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBool.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randHex.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randInt.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randSign.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/random.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/WHITE_SPACES.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/camelCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/crop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/endsWith.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeHtml.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeRegExp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeUnicode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/hyphenate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/insert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/interpolate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lowerCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lpad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/ltrim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/makePath.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/normalizeLineBreaks.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/pascalCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/properCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonASCII.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonWord.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/repeat.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replace.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replaceAccents.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rpad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rtrim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/sentenceCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/slugify.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/startsWith.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/stripHtmlTags.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/trim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/truncate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/typecast.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unCamelCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/underscore.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeHtml.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeUnicode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unhyphenate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/upperCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/convert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/now.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/parseMs.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/toTimeString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/WHITE_SPACES.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/camelCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/contains.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/crop.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/endsWith.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeHtml.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeRegExp.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeUnicode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/hyphenate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/insert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/interpolate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lowerCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lpad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/ltrim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/makePath.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/normalizeLineBreaks.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/pascalCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/properCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonASCII.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonWord.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/repeat.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replace.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replaceAccents.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rpad.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rtrim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/sentenceCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/slugify.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/startsWith.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/stripHtmlTags.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/trim.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/truncate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/typecast.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unCamelCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/underscore.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeHtml.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeUnicode.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unhyphenate.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/string/upperCase.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/time.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/time/convert.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/time/now.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/time/parseMs.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/node_modules/mout/time/toTimeString.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/rocambole-indent.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/test/align_comment-input.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/test/align_comment-output.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-indent/test/runner.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/.npmignore with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/LICENSE.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/LICENSE.md with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/README.md with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/.bin/semver [new symlink]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.npmignore [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/LICENSE with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/Makefile [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/Makefile with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/README.md with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/bin/semver [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/bin/semver with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/foot.js.txt [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/foot.js.txt with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/head.js.txt [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/head.js.txt with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/amd.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/test/amd.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/big-numbers.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/big-numbers.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/clean.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/clean.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/gtr.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/gtr.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/index.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/major-minor-patch.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/major-minor-patch.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/no-module.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/no-module.js with 100% similarity]
wrt/build/node_modules/rocambole-linebreak/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-linebreak/rocambole-linebreak.js [new file with mode: 0644]
wrt/build/node_modules/rocambole-node/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-node/README.md with 100% similarity]
wrt/build/node_modules/rocambole-node/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-node/index.js with 100% similarity]
wrt/build/node_modules/rocambole-node/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-token/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/.npmignore with 100% similarity]
wrt/build/node_modules/rocambole-token/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/README.md with 100% similarity]
wrt/build/node_modules/rocambole-token/find.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/find.js with 100% similarity]
wrt/build/node_modules/rocambole-token/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/index.js with 100% similarity]
wrt/build/node_modules/rocambole-token/insert.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/insert.js with 100% similarity]
wrt/build/node_modules/rocambole-token/is.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/is.js with 100% similarity]
wrt/build/node_modules/rocambole-token/makeCheck.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/makeCheck.js with 100% similarity]
wrt/build/node_modules/rocambole-token/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-token/remove.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/remove.js with 100% similarity]
wrt/build/node_modules/rocambole-token/test/find-spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/test/find-spec.js with 100% similarity]
wrt/build/node_modules/rocambole-whitespace/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/.npmignore with 100% similarity]
wrt/build/node_modules/rocambole-whitespace/LICENSE.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/LICENSE.md with 100% similarity]
wrt/build/node_modules/rocambole-whitespace/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/README.md with 100% similarity]
wrt/build/node_modules/rocambole-whitespace/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole-whitespace/rocambole-whitespace.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/rocambole-whitespace.js with 100% similarity]
wrt/build/node_modules/rocambole/.jshintrc [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/.jshintrc with 100% similarity]
wrt/build/node_modules/rocambole/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/.npmignore with 100% similarity]
wrt/build/node_modules/rocambole/.travis.yml [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/.travis.yml with 100% similarity]
wrt/build/node_modules/rocambole/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/rocambole/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/README.md with 100% similarity]
wrt/build/node_modules/rocambole/node_modules/.bin/esparse [new symlink]
wrt/build/node_modules/rocambole/node_modules/.bin/esvalidate [new symlink]
wrt/build/node_modules/rocambole/node_modules/esprima/ChangeLog [new file with mode: 0644]
wrt/build/node_modules/rocambole/node_modules/esprima/LICENSE.BSD [new file with mode: 0644]
wrt/build/node_modules/rocambole/node_modules/esprima/README.md [new file with mode: 0644]
wrt/build/node_modules/rocambole/node_modules/esprima/bin/esparse.js [new file with mode: 0755]
wrt/build/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js [new file with mode: 0755]
wrt/build/node_modules/rocambole/node_modules/esprima/esprima.js [new file with mode: 0644]
wrt/build/node_modules/rocambole/node_modules/esprima/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole/package.json [new file with mode: 0644]
wrt/build/node_modules/rocambole/rocambole.jpg [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/rocambole.jpg with 100% similarity]
wrt/build/node_modules/rocambole/rocambole.js [new file with mode: 0644]
wrt/build/node_modules/rocambole/test/files/crossroads.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/files/crossroads.js with 100% similarity]
wrt/build/node_modules/rocambole/test/files/jquery.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/files/jquery.js with 100% similarity]
wrt/build/node_modules/rocambole/test/moonwalk.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/moonwalk.spec.js with 100% similarity]
wrt/build/node_modules/rocambole/test/parse.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/test/parse.spec.js with 100% similarity]
wrt/build/node_modules/rocambole/test/perf.spec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/perf.spec.js with 100% similarity]
wrt/build/node_modules/rocambole/test/runner.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/test/runner.js with 100% similarity]
wrt/build/node_modules/run-parallel/.npmignore [new file with mode: 0644]
wrt/build/node_modules/run-parallel/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/run-parallel/.zuul.yml [new file with mode: 0644]
wrt/build/node_modules/run-parallel/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/LICENSE with 100% similarity]
wrt/build/node_modules/run-parallel/README.md [new file with mode: 0644]
wrt/build/node_modules/run-parallel/index.js [new file with mode: 0644]
wrt/build/node_modules/run-parallel/package.json [new file with mode: 0644]
wrt/build/node_modules/run-parallel/test/array.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/array.js with 100% similarity]
wrt/build/node_modules/run-parallel/test/empty-tasks.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/empty-tasks.js with 100% similarity]
wrt/build/node_modules/run-parallel/test/error.js [new file with mode: 0644]
wrt/build/node_modules/run-parallel/test/no-callback.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/no-callback.js with 100% similarity]
wrt/build/node_modules/run-parallel/test/object.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/object.js with 100% similarity]
wrt/build/node_modules/semver/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/.npmignore with 100% similarity]
wrt/build/node_modules/semver/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/LICENSE with 100% similarity]
wrt/build/node_modules/semver/Makefile [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/Makefile with 100% similarity]
wrt/build/node_modules/semver/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/README.md with 100% similarity]
wrt/build/node_modules/semver/bin/semver [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/bin/semver with 100% similarity]
wrt/build/node_modules/semver/foot.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/foot.js with 100% similarity]
wrt/build/node_modules/semver/head.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/head.js with 100% similarity]
wrt/build/node_modules/semver/package.json [new file with mode: 0644]
wrt/build/node_modules/semver/semver.browser.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/semver.browser.js with 100% similarity]
wrt/build/node_modules/semver/semver.browser.js.gz [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/semver.browser.js.gz with 100% similarity]
wrt/build/node_modules/semver/semver.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/semver.js with 100% similarity]
wrt/build/node_modules/semver/semver.min.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/semver.min.js with 100% similarity]
wrt/build/node_modules/semver/semver.min.js.gz [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/semver.min.js.gz with 100% similarity]
wrt/build/node_modules/semver/test/amd.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/amd.js with 100% similarity]
wrt/build/node_modules/semver/test/gtr.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/test/gtr.js with 100% similarity]
wrt/build/node_modules/semver/test/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/test/index.js with 100% similarity]
wrt/build/node_modules/semver/test/ltr.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/test/ltr.js with 100% similarity]
wrt/build/node_modules/semver/test/no-module.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/test/no-module.js with 100% similarity]
wrt/build/node_modules/serializerr/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/.npmignore with 100% similarity]
wrt/build/node_modules/serializerr/.travis.yml [new file with mode: 0644]
wrt/build/node_modules/serializerr/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/LICENSE with 100% similarity]
wrt/build/node_modules/serializerr/Readme.md [new file with mode: 0644]
wrt/build/node_modules/serializerr/index.js [new file with mode: 0644]
wrt/build/node_modules/serializerr/package.json [new file with mode: 0644]
wrt/build/node_modules/serializerr/serializerr.js [new file with mode: 0644]
wrt/build/node_modules/serializerr/test.js [new file with mode: 0644]
wrt/build/node_modules/stdin/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/.npmignore with 100% similarity]
wrt/build/node_modules/stdin/History.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/History.md with 100% similarity]
wrt/build/node_modules/stdin/Makefile [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/Makefile with 100% similarity]
wrt/build/node_modules/stdin/Readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/Readme.md with 100% similarity]
wrt/build/node_modules/stdin/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/index.js with 100% similarity]
wrt/build/node_modules/stdin/package.json [new file with mode: 0644]
wrt/build/node_modules/string.prototype.endswith/LICENSE-MIT.txt [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/LICENSE-MIT.txt with 100% similarity]
wrt/build/node_modules/string.prototype.endswith/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/README.md with 100% similarity]
wrt/build/node_modules/string.prototype.endswith/endswith.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/endswith.js with 100% similarity]
wrt/build/node_modules/string.prototype.endswith/package.json [new file with mode: 0644]
wrt/build/node_modules/supports-color/cli.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/cli.js with 100% similarity]
wrt/build/node_modules/supports-color/index.js [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/index.js with 100% similarity]
wrt/build/node_modules/supports-color/license [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/license with 100% similarity]
wrt/build/node_modules/supports-color/package.json [new file with mode: 0644]
wrt/build/node_modules/supports-color/readme.md [moved from wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/readme.md with 100% similarity]
wrt/build/node_modules/sync-exec/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/.npmignore with 100% similarity]
wrt/build/node_modules/sync-exec/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/LICENSE with 100% similarity]
wrt/build/node_modules/sync-exec/Makefile [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/Makefile with 100% similarity]
wrt/build/node_modules/sync-exec/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/README.md with 100% similarity]
wrt/build/node_modules/sync-exec/coffee/sync-exec.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/coffee/sync-exec.coffee with 100% similarity]
wrt/build/node_modules/sync-exec/coffee/sync-exec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/coffee/sync-exec.js with 100% similarity]
wrt/build/node_modules/sync-exec/js/sync-exec.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/js/sync-exec.js with 100% similarity]
wrt/build/node_modules/sync-exec/package.json [new file with mode: 0644]
wrt/build/node_modules/sync-exec/test/example.coffee [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/test/example.coffee with 100% similarity]
wrt/build/node_modules/sync-exec/test/example.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/test/example.js with 100% similarity]
wrt/build/node_modules/sync-exec/test/sh/err.sh [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/test/sh/err.sh with 100% similarity]
wrt/build/node_modules/sync-exec/test/sh/out.sh [moved from wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/test/sh/out.sh with 100% similarity]
wrt/build/node_modules/uniq/.npmignore [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/.npmignore with 100% similarity]
wrt/build/node_modules/uniq/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/LICENSE with 100% similarity]
wrt/build/node_modules/uniq/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/README.md with 100% similarity]
wrt/build/node_modules/uniq/package.json [new file with mode: 0644]
wrt/build/node_modules/uniq/test/test.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/test/test.js with 100% similarity]
wrt/build/node_modules/uniq/uniq.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/uniq.js with 100% similarity]
wrt/build/node_modules/util-extend/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/LICENSE with 100% similarity]
wrt/build/node_modules/util-extend/README.md [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/README.md with 100% similarity]
wrt/build/node_modules/util-extend/extend.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/extend.js with 100% similarity]
wrt/build/node_modules/util-extend/package.json [new file with mode: 0644]
wrt/build/node_modules/util-extend/test.js [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/test.js with 100% similarity]
wrt/build/node_modules/which/CHANGELOG.md [new file with mode: 0644]
wrt/build/node_modules/which/LICENSE [moved from wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/LICENSE with 100% similarity]
wrt/build/node_modules/which/README.md [new file with mode: 0644]
wrt/build/node_modules/which/bin/which [new file with mode: 0755]
wrt/build/node_modules/which/package.json [new file with mode: 0644]
wrt/build/node_modules/which/which.js [new file with mode: 0644]

diff --git a/wrt/build/node_modules/.bin/esformatter b/wrt/build/node_modules/.bin/esformatter
new file mode 120000 (symlink)
index 0000000..71bcf01
--- /dev/null
@@ -0,0 +1 @@
+../esformatter/bin/esformatter
\ No newline at end of file
diff --git a/wrt/build/node_modules/.bin/npm-path b/wrt/build/node_modules/.bin/npm-path
new file mode 120000 (symlink)
index 0000000..309c353
--- /dev/null
@@ -0,0 +1 @@
+../npm-path/bin/npm-path
\ No newline at end of file
diff --git a/wrt/build/node_modules/.bin/npm-run b/wrt/build/node_modules/.bin/npm-run
new file mode 120000 (symlink)
index 0000000..171ad09
--- /dev/null
@@ -0,0 +1 @@
+../npm-run/bin/npm-run.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/.bin/semver b/wrt/build/node_modules/.bin/semver
new file mode 120000 (symlink)
index 0000000..317eb29
--- /dev/null
@@ -0,0 +1 @@
+../semver/bin/semver
\ No newline at end of file
diff --git a/wrt/build/node_modules/.bin/supports-color b/wrt/build/node_modules/.bin/supports-color
new file mode 120000 (symlink)
index 0000000..af0f05e
--- /dev/null
@@ -0,0 +1 @@
+../supports-color/cli.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/.bin/which b/wrt/build/node_modules/.bin/which
new file mode 120000 (symlink)
index 0000000..f62471c
--- /dev/null
@@ -0,0 +1 @@
+../which/bin/which
\ No newline at end of file
diff --git a/wrt/build/node_modules/asap/CHANGES.md b/wrt/build/node_modules/asap/CHANGES.md
new file mode 100644 (file)
index 0000000..f105b91
--- /dev/null
@@ -0,0 +1,70 @@
+
+## 2.0.6
+
+Version 2.0.4 adds support for React Native by clarifying in package.json that
+the browser environment does not support Node.js domains.
+Why this is necessary, we leave as an exercise for the user.
+
+## 2.0.3
+
+Version 2.0.3 fixes a bug when adjusting the capacity of the task queue.
+
+## 2.0.1-2.02
+
+Version 2.0.1 fixes a bug in the way redirects were expressed that affected the
+function of Browserify, but which Mr would tolerate.
+
+## 2.0.0
+
+Version 2 of ASAP is a full rewrite with a few salient changes.
+First, the ASAP source is CommonJS only and designed with [Browserify][] and
+[Browserify-compatible][Mr] module loaders in mind.
+
+[Browserify]: https://github.com/substack/node-browserify
+[Mr]: https://github.com/montagejs/mr
+
+The new version has been refactored in two dimensions.
+Support for Node.js and browsers have been separated, using Browserify
+redirects and ASAP has been divided into two modules.
+The "raw" layer depends on the tasks to catch thrown exceptions and unravel
+Node.js domains.
+
+The full implementation of ASAP is loadable as `require("asap")` in both Node.js
+and browsers.
+
+The raw layer that lacks exception handling overhead is loadable as
+`require("asap/raw")`.
+The interface is the same for both layers.
+
+Tasks are no longer required to be functions, but can rather be any object that
+implements `task.call()`.
+With this feature you can recycle task objects to avoid garbage collector churn
+and avoid closures in general.
+
+The implementation has been rigorously documented so that our successors can
+understand the scope of the problem that this module solves and all of its
+nuances, ensuring that the next generation of implementations know what details
+are essential.
+
+-   [asap.js](https://github.com/kriskowal/asap/blob/master/asap.js)
+-   [raw.js](https://github.com/kriskowal/asap/blob/master/raw.js)
+-   [browser-asap.js](https://github.com/kriskowal/asap/blob/master/browser-asap.js)
+-   [browser-raw.js](https://github.com/kriskowal/asap/blob/master/browser-raw.js)
+
+The new version has also been rigorously tested across a broad spectrum of
+browsers, in both the window and worker context.
+The following charts capture the browser test results for the most recent
+release.
+The first chart shows test results for ASAP running in the main window context.
+The second chart shows test results for ASAP running in a web worker context.
+Test results are inconclusive (grey) on browsers that do not support web
+workers.
+These data are captured automatically by [Continuous
+Integration][].
+
+![Browser Compatibility](http://kriskowal-asap.s3-website-us-west-2.amazonaws.com/train/integration-2/saucelabs-results-matrix.svg)
+
+![Compatibility in Web Workers](http://kriskowal-asap.s3-website-us-west-2.amazonaws.com/train/integration-2/saucelabs-worker-results-matrix.svg)
+
+[Continuous Integration]: https://github.com/kriskowal/asap/blob/master/CONTRIBUTING.md
+
diff --git a/wrt/build/node_modules/asap/LICENSE.md b/wrt/build/node_modules/asap/LICENSE.md
new file mode 100644 (file)
index 0000000..ba18c61
--- /dev/null
@@ -0,0 +1,21 @@
+
+Copyright 2009–2014 Contributors. All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to
+deal in the Software without restriction, including without limitation the
+rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+sell copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+IN THE SOFTWARE.
+
diff --git a/wrt/build/node_modules/asap/browser-raw.js b/wrt/build/node_modules/asap/browser-raw.js
new file mode 100644 (file)
index 0000000..9cee7e3
--- /dev/null
@@ -0,0 +1,223 @@
+"use strict";
+
+// Use the fastest means possible to execute a task in its own turn, with
+// priority over other events including IO, animation, reflow, and redraw
+// events in browsers.
+//
+// An exception thrown by a task will permanently interrupt the processing of
+// subsequent tasks. The higher level `asap` function ensures that if an
+// exception is thrown by a task, that the task queue will continue flushing as
+// soon as possible, but if you use `rawAsap` directly, you are responsible to
+// either ensure that no exceptions are thrown from your task, or to manually
+// call `rawAsap.requestFlush` if an exception is thrown.
+module.exports = rawAsap;
+function rawAsap(task) {
+    if (!queue.length) {
+        requestFlush();
+        flushing = true;
+    }
+    // Equivalent to push, but avoids a function call.
+    queue[queue.length] = task;
+}
+
+var queue = [];
+// Once a flush has been requested, no further calls to `requestFlush` are
+// necessary until the next `flush` completes.
+var flushing = false;
+// `requestFlush` is an implementation-specific method that attempts to kick
+// off a `flush` event as quickly as possible. `flush` will attempt to exhaust
+// the event queue before yielding to the browser's own event loop.
+var requestFlush;
+// The position of the next task to execute in the task queue. This is
+// preserved between calls to `flush` so that it can be resumed if
+// a task throws an exception.
+var index = 0;
+// If a task schedules additional tasks recursively, the task queue can grow
+// unbounded. To prevent memory exhaustion, the task queue will periodically
+// truncate already-completed tasks.
+var capacity = 1024;
+
+// The flush function processes all tasks that have been scheduled with
+// `rawAsap` unless and until one of those tasks throws an exception.
+// If a task throws an exception, `flush` ensures that its state will remain
+// consistent and will resume where it left off when called again.
+// However, `flush` does not make any arrangements to be called again if an
+// exception is thrown.
+function flush() {
+    while (index < queue.length) {
+        var currentIndex = index;
+        // Advance the index before calling the task. This ensures that we will
+        // begin flushing on the next task the task throws an error.
+        index = index + 1;
+        queue[currentIndex].call();
+        // Prevent leaking memory for long chains of recursive calls to `asap`.
+        // If we call `asap` within tasks scheduled by `asap`, the queue will
+        // grow, but to avoid an O(n) walk for every task we execute, we don't
+        // shift tasks off the queue after they have been executed.
+        // Instead, we periodically shift 1024 tasks off the queue.
+        if (index > capacity) {
+            // Manually shift all values starting at the index back to the
+            // beginning of the queue.
+            for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
+                queue[scan] = queue[scan + index];
+            }
+            queue.length -= index;
+            index = 0;
+        }
+    }
+    queue.length = 0;
+    index = 0;
+    flushing = false;
+}
+
+// `requestFlush` is implemented using a strategy based on data collected from
+// every available SauceLabs Selenium web driver worker at time of writing.
+// https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593
+
+// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that
+// have WebKitMutationObserver but not un-prefixed MutationObserver.
+// Must use `global` or `self` instead of `window` to work in both frames and web
+// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.
+
+/* globals self */
+var scope = typeof global !== "undefined" ? global : self;
+var BrowserMutationObserver = scope.MutationObserver || scope.WebKitMutationObserver;
+
+// MutationObservers are desirable because they have high priority and work
+// reliably everywhere they are implemented.
+// They are implemented in all modern browsers.
+//
+// - Android 4-4.3
+// - Chrome 26-34
+// - Firefox 14-29
+// - Internet Explorer 11
+// - iPad Safari 6-7.1
+// - iPhone Safari 7-7.1
+// - Safari 6-7
+if (typeof BrowserMutationObserver === "function") {
+    requestFlush = makeRequestCallFromMutationObserver(flush);
+
+// MessageChannels are desirable because they give direct access to the HTML
+// task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera
+// 11-12, and in web workers in many engines.
+// Although message channels yield to any queued rendering and IO tasks, they
+// would be better than imposing the 4ms delay of timers.
+// However, they do not work reliably in Internet Explorer or Safari.
+
+// Internet Explorer 10 is the only browser that has setImmediate but does
+// not have MutationObservers.
+// Although setImmediate yields to the browser's renderer, it would be
+// preferrable to falling back to setTimeout since it does not have
+// the minimum 4ms penalty.
+// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and
+// Desktop to a lesser extent) that renders both setImmediate and
+// MessageChannel useless for the purposes of ASAP.
+// https://github.com/kriskowal/q/issues/396
+
+// Timers are implemented universally.
+// We fall back to timers in workers in most engines, and in foreground
+// contexts in the following browsers.
+// However, note that even this simple case requires nuances to operate in a
+// broad spectrum of browsers.
+//
+// - Firefox 3-13
+// - Internet Explorer 6-9
+// - iPad Safari 4.3
+// - Lynx 2.8.7
+} else {
+    requestFlush = makeRequestCallFromTimer(flush);
+}
+
+// `requestFlush` requests that the high priority event queue be flushed as
+// soon as possible.
+// This is useful to prevent an error thrown in a task from stalling the event
+// queue if the exception handled by Node.js’s
+// `process.on("uncaughtException")` or by a domain.
+rawAsap.requestFlush = requestFlush;
+
+// To request a high priority event, we induce a mutation observer by toggling
+// the text of a text node between "1" and "-1".
+function makeRequestCallFromMutationObserver(callback) {
+    var toggle = 1;
+    var observer = new BrowserMutationObserver(callback);
+    var node = document.createTextNode("");
+    observer.observe(node, {characterData: true});
+    return function requestCall() {
+        toggle = -toggle;
+        node.data = toggle;
+    };
+}
+
+// The message channel technique was discovered by Malte Ubl and was the
+// original foundation for this library.
+// http://www.nonblocking.io/2011/06/windownexttick.html
+
+// Safari 6.0.5 (at least) intermittently fails to create message ports on a
+// page's first load. Thankfully, this version of Safari supports
+// MutationObservers, so we don't need to fall back in that case.
+
+// function makeRequestCallFromMessageChannel(callback) {
+//     var channel = new MessageChannel();
+//     channel.port1.onmessage = callback;
+//     return function requestCall() {
+//         channel.port2.postMessage(0);
+//     };
+// }
+
+// For reasons explained above, we are also unable to use `setImmediate`
+// under any circumstances.
+// Even if we were, there is another bug in Internet Explorer 10.
+// It is not sufficient to assign `setImmediate` to `requestFlush` because
+// `setImmediate` must be called *by name* and therefore must be wrapped in a
+// closure.
+// Never forget.
+
+// function makeRequestCallFromSetImmediate(callback) {
+//     return function requestCall() {
+//         setImmediate(callback);
+//     };
+// }
+
+// Safari 6.0 has a problem where timers will get lost while the user is
+// scrolling. This problem does not impact ASAP because Safari 6.0 supports
+// mutation observers, so that implementation is used instead.
+// However, if we ever elect to use timers in Safari, the prevalent work-around
+// is to add a scroll event listener that calls for a flush.
+
+// `setTimeout` does not call the passed callback if the delay is less than
+// approximately 7 in web workers in Firefox 8 through 18, and sometimes not
+// even then.
+
+function makeRequestCallFromTimer(callback) {
+    return function requestCall() {
+        // We dispatch a timeout with a specified delay of 0 for engines that
+        // can reliably accommodate that request. This will usually be snapped
+        // to a 4 milisecond delay, but once we're flushing, there's no delay
+        // between events.
+        var timeoutHandle = setTimeout(handleTimer, 0);
+        // However, since this timer gets frequently dropped in Firefox
+        // workers, we enlist an interval handle that will try to fire
+        // an event 20 times per second until it succeeds.
+        var intervalHandle = setInterval(handleTimer, 50);
+
+        function handleTimer() {
+            // Whichever timer succeeds will cancel both timers and
+            // execute the callback.
+            clearTimeout(timeoutHandle);
+            clearInterval(intervalHandle);
+            callback();
+        }
+    };
+}
+
+// This is for `asap.js` only.
+// Its name will be periodically randomized to break any code that depends on
+// its existence.
+rawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer;
+
+// ASAP was originally a nextTick shim included in Q. This was factored out
+// into this ASAP package. It was later adapted to RSVP which made further
+// amendments. These decisions, particularly to marginalize MessageChannel and
+// to capture the MutationObserver implementation in a closure, were integrated
+// back into ASAP proper.
+// https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
diff --git a/wrt/build/node_modules/asap/package.json b/wrt/build/node_modules/asap/package.json
new file mode 100644 (file)
index 0000000..b54eddd
--- /dev/null
@@ -0,0 +1,128 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "asap@~2.0.1",
+        "scope": null,
+        "escapedName": "asap",
+        "name": "asap",
+        "rawSpec": "~2.0.1",
+        "spec": ">=2.0.1 <2.1.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/promise"
+    ]
+  ],
+  "_from": "asap@>=2.0.1 <2.1.0",
+  "_id": "asap@2.0.6",
+  "_inCache": true,
+  "_location": "/asap",
+  "_nodeVersion": "6.9.5",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/asap-2.0.6.tgz_1499700096673_0.1125483822543174"
+  },
+  "_npmUser": {
+    "name": "kriskowal",
+    "email": "kris.kowal@cixar.com"
+  },
+  "_npmVersion": "3.10.10",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "asap@~2.0.1",
+    "scope": null,
+    "escapedName": "asap",
+    "name": "asap",
+    "rawSpec": "~2.0.1",
+    "spec": ">=2.0.1 <2.1.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/dezalgo",
+    "/grunt-standard/promise"
+  ],
+  "_resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+  "_shasum": "e50347611d7e690943208bbdafebcbc2fb866d46",
+  "_shrinkwrap": null,
+  "_spec": "asap@~2.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/promise",
+  "browser": {
+    "./asap": "./browser-asap.js",
+    "./asap.js": "./browser-asap.js",
+    "./raw": "./browser-raw.js",
+    "./raw.js": "./browser-raw.js",
+    "./test/domain.js": "./test/browser-domain.js"
+  },
+  "bugs": {
+    "url": "https://github.com/kriskowal/asap/issues"
+  },
+  "dependencies": {},
+  "description": "High-priority task queue for Node.js and browsers",
+  "devDependencies": {
+    "benchmark": "^1.0.0",
+    "events": "^1.0.1",
+    "jshint": "^2.5.1",
+    "knox": "^0.8.10",
+    "mr": "^2.0.5",
+    "opener": "^1.3.0",
+    "q": "^2.0.3",
+    "q-io": "^2.0.3",
+    "saucelabs": "^0.1.1",
+    "wd": "^0.2.21",
+    "weak-map": "^1.0.5"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "e50347611d7e690943208bbdafebcbc2fb866d46",
+    "tarball": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz"
+  },
+  "files": [
+    "raw.js",
+    "asap.js",
+    "browser-raw.js",
+    "browser-asap.js"
+  ],
+  "gitHead": "3e3d99381444379bb0483cb9216caa39ac67bebb",
+  "homepage": "https://github.com/kriskowal/asap#readme",
+  "keywords": [
+    "event",
+    "task",
+    "queue"
+  ],
+  "license": "MIT",
+  "main": "./asap.js",
+  "maintainers": [
+    {
+      "name": "kriskowal",
+      "email": "kris.kowal@cixar.com"
+    },
+    {
+      "name": "forbeslindesay",
+      "email": "forbes@lindesay.co.uk"
+    }
+  ],
+  "name": "asap",
+  "optionalDependencies": {},
+  "react-native": {
+    "domain": false
+  },
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/kriskowal/asap.git"
+  },
+  "scripts": {
+    "benchmarks": "node benchmarks",
+    "lint": "jshint raw.js asap.js browser-raw.js browser-asap.js $(find scripts -name '*.js' | grep -v gauntlet)",
+    "test": "npm run lint && npm run test-node",
+    "test-browser": "node scripts/publish-bundle.js test/asap-test.js | xargs opener",
+    "test-node": "node test/asap-test.js",
+    "test-publish": "node scripts/publish-bundle.js test/asap-test.js | pbcopy",
+    "test-saucelabs": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-spot-configurations.json",
+    "test-saucelabs-all": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-all-configurations.json",
+    "test-saucelabs-worker": "node scripts/saucelabs-worker-test.js scripts/saucelabs-spot-configurations.json",
+    "test-saucelabs-worker-all": "node scripts/saucelabs-worker-test.js scripts/saucelabs-all-configurations.json",
+    "test-travis": "npm run lint && npm run test-node && npm run test-saucelabs && npm run test-saucelabs-worker"
+  },
+  "version": "2.0.6"
+}
diff --git a/wrt/build/node_modules/asap/raw.js b/wrt/build/node_modules/asap/raw.js
new file mode 100644 (file)
index 0000000..ae3b892
--- /dev/null
@@ -0,0 +1,101 @@
+"use strict";
+
+var domain; // The domain module is executed on demand
+var hasSetImmediate = typeof setImmediate === "function";
+
+// Use the fastest means possible to execute a task in its own turn, with
+// priority over other events including network IO events in Node.js.
+//
+// An exception thrown by a task will permanently interrupt the processing of
+// subsequent tasks. The higher level `asap` function ensures that if an
+// exception is thrown by a task, that the task queue will continue flushing as
+// soon as possible, but if you use `rawAsap` directly, you are responsible to
+// either ensure that no exceptions are thrown from your task, or to manually
+// call `rawAsap.requestFlush` if an exception is thrown.
+module.exports = rawAsap;
+function rawAsap(task) {
+    if (!queue.length) {
+        requestFlush();
+        flushing = true;
+    }
+    // Avoids a function call
+    queue[queue.length] = task;
+}
+
+var queue = [];
+// Once a flush has been requested, no further calls to `requestFlush` are
+// necessary until the next `flush` completes.
+var flushing = false;
+// The position of the next task to execute in the task queue. This is
+// preserved between calls to `flush` so that it can be resumed if
+// a task throws an exception.
+var index = 0;
+// If a task schedules additional tasks recursively, the task queue can grow
+// unbounded. To prevent memory excaustion, the task queue will periodically
+// truncate already-completed tasks.
+var capacity = 1024;
+
+// The flush function processes all tasks that have been scheduled with
+// `rawAsap` unless and until one of those tasks throws an exception.
+// If a task throws an exception, `flush` ensures that its state will remain
+// consistent and will resume where it left off when called again.
+// However, `flush` does not make any arrangements to be called again if an
+// exception is thrown.
+function flush() {
+    while (index < queue.length) {
+        var currentIndex = index;
+        // Advance the index before calling the task. This ensures that we will
+        // begin flushing on the next task the task throws an error.
+        index = index + 1;
+        queue[currentIndex].call();
+        // Prevent leaking memory for long chains of recursive calls to `asap`.
+        // If we call `asap` within tasks scheduled by `asap`, the queue will
+        // grow, but to avoid an O(n) walk for every task we execute, we don't
+        // shift tasks off the queue after they have been executed.
+        // Instead, we periodically shift 1024 tasks off the queue.
+        if (index > capacity) {
+            // Manually shift all values starting at the index back to the
+            // beginning of the queue.
+            for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
+                queue[scan] = queue[scan + index];
+            }
+            queue.length -= index;
+            index = 0;
+        }
+    }
+    queue.length = 0;
+    index = 0;
+    flushing = false;
+}
+
+rawAsap.requestFlush = requestFlush;
+function requestFlush() {
+    // Ensure flushing is not bound to any domain.
+    // It is not sufficient to exit the domain, because domains exist on a stack.
+    // To execute code outside of any domain, the following dance is necessary.
+    var parentDomain = process.domain;
+    if (parentDomain) {
+        if (!domain) {
+            // Lazy execute the domain module.
+            // Only employed if the user elects to use domains.
+            domain = require("domain");
+        }
+        domain.active = process.domain = null;
+    }
+
+    // `setImmediate` is slower that `process.nextTick`, but `process.nextTick`
+    // cannot handle recursion.
+    // `requestFlush` will only be called recursively from `asap.js`, to resume
+    // flushing after an error is thrown into a domain.
+    // Conveniently, `setImmediate` was introduced in the same version
+    // `process.nextTick` started throwing recursion errors.
+    if (flushing && hasSetImmediate) {
+        setImmediate(flush);
+    } else {
+        process.nextTick(flush);
+    }
+
+    if (parentDomain) {
+        domain.active = process.domain = parentDomain;
+    }
+}
diff --git a/wrt/build/node_modules/chalk/node_modules/ansi-styles/index.js b/wrt/build/node_modules/chalk/node_modules/ansi-styles/index.js
new file mode 100644 (file)
index 0000000..7894527
--- /dev/null
@@ -0,0 +1,65 @@
+'use strict';
+
+function assembleStyles () {
+       var styles = {
+               modifiers: {
+                       reset: [0, 0],
+                       bold: [1, 22], // 21 isn't widely supported and 22 does the same thing
+                       dim: [2, 22],
+                       italic: [3, 23],
+                       underline: [4, 24],
+                       inverse: [7, 27],
+                       hidden: [8, 28],
+                       strikethrough: [9, 29]
+               },
+               colors: {
+                       black: [30, 39],
+                       red: [31, 39],
+                       green: [32, 39],
+                       yellow: [33, 39],
+                       blue: [34, 39],
+                       magenta: [35, 39],
+                       cyan: [36, 39],
+                       white: [37, 39],
+                       gray: [90, 39]
+               },
+               bgColors: {
+                       bgBlack: [40, 49],
+                       bgRed: [41, 49],
+                       bgGreen: [42, 49],
+                       bgYellow: [43, 49],
+                       bgBlue: [44, 49],
+                       bgMagenta: [45, 49],
+                       bgCyan: [46, 49],
+                       bgWhite: [47, 49]
+               }
+       };
+
+       // fix humans
+       styles.colors.grey = styles.colors.gray;
+
+       Object.keys(styles).forEach(function (groupName) {
+               var group = styles[groupName];
+
+               Object.keys(group).forEach(function (styleName) {
+                       var style = group[styleName];
+
+                       styles[styleName] = group[styleName] = {
+                               open: '\u001b[' + style[0] + 'm',
+                               close: '\u001b[' + style[1] + 'm'
+                       };
+               });
+
+               Object.defineProperty(styles, groupName, {
+                       value: group,
+                       enumerable: false
+               });
+       });
+
+       return styles;
+}
+
+Object.defineProperty(module, 'exports', {
+       enumerable: true,
+       get: assembleStyles
+});
diff --git a/wrt/build/node_modules/chalk/node_modules/ansi-styles/package.json b/wrt/build/node_modules/chalk/node_modules/ansi-styles/package.json
new file mode 100644 (file)
index 0000000..cab6012
--- /dev/null
@@ -0,0 +1,114 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "ansi-styles@^2.2.1",
+        "scope": null,
+        "escapedName": "ansi-styles",
+        "name": "ansi-styles",
+        "rawSpec": "^2.2.1",
+        "spec": ">=2.2.1 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/chalk"
+    ]
+  ],
+  "_from": "ansi-styles@>=2.2.1 <3.0.0",
+  "_id": "ansi-styles@2.2.1",
+  "_inCache": true,
+  "_location": "/chalk/ansi-styles",
+  "_nodeVersion": "4.3.0",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/ansi-styles-2.2.1.tgz_1459197317833_0.9694824463222176"
+  },
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "3.8.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "ansi-styles@^2.2.1",
+    "scope": null,
+    "escapedName": "ansi-styles",
+    "name": "ansi-styles",
+    "rawSpec": "^2.2.1",
+    "spec": ">=2.2.1 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/chalk"
+  ],
+  "_resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+  "_shasum": "b432dd3358b634cf75e1e4664368240533c1ddbe",
+  "_shrinkwrap": null,
+  "_spec": "ansi-styles@^2.2.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/chalk/ansi-styles/issues"
+  },
+  "dependencies": {},
+  "description": "ANSI escape codes for styling strings in the terminal",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "b432dd3358b634cf75e1e4664368240533c1ddbe",
+    "tarball": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "95c59b23be760108b6530ca1c89477c21b258032",
+  "homepage": "https://github.com/chalk/ansi-styles#readme",
+  "keywords": [
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "tty",
+    "escape",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "log",
+    "logging",
+    "command-line",
+    "text"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    }
+  ],
+  "name": "ansi-styles",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/chalk/ansi-styles.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "2.2.1"
+}
diff --git a/wrt/build/node_modules/chalk/node_modules/ansi-styles/readme.md b/wrt/build/node_modules/chalk/node_modules/ansi-styles/readme.md
new file mode 100644 (file)
index 0000000..3f933f6
--- /dev/null
@@ -0,0 +1,86 @@
+# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles)
+
+> [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal
+
+You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings.
+
+![](screenshot.png)
+
+
+## Install
+
+```
+$ npm install --save ansi-styles
+```
+
+
+## Usage
+
+```js
+var ansi = require('ansi-styles');
+
+console.log(ansi.green.open + 'Hello world!' + ansi.green.close);
+```
+
+
+## API
+
+Each style has an `open` and `close` property.
+
+
+## Styles
+
+### Modifiers
+
+- `reset`
+- `bold`
+- `dim`
+- `italic` *(not widely supported)*
+- `underline`
+- `inverse`
+- `hidden`
+- `strikethrough` *(not widely supported)*
+
+### Colors
+
+- `black`
+- `red`
+- `green`
+- `yellow`
+- `blue`
+- `magenta`
+- `cyan`
+- `white`
+- `gray`
+
+### Background colors
+
+- `bgBlack`
+- `bgRed`
+- `bgGreen`
+- `bgYellow`
+- `bgBlue`
+- `bgMagenta`
+- `bgCyan`
+- `bgWhite`
+
+
+## Advanced usage
+
+By default you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module.
+
+- `ansi.modifiers`
+- `ansi.colors`
+- `ansi.bgColors`
+
+
+###### Example
+
+```js
+console.log(ansi.colors.green.open);
+```
+
+
+## License
+
+MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/color-convert/CHANGELOG.md b/wrt/build/node_modules/color-convert/CHANGELOG.md
new file mode 100644 (file)
index 0000000..0a7bce4
--- /dev/null
@@ -0,0 +1,54 @@
+# 1.0.0 - 2016-01-07
+
+- Removed: unused speed test
+- Added: Automatic routing between previously unsupported conversions
+([#27](https://github.com/Qix-/color-convert/pull/27))
+- Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions
+([#27](https://github.com/Qix-/color-convert/pull/27))
+- Removed: `convert()` class
+([#27](https://github.com/Qix-/color-convert/pull/27))
+- Changed: all functions to lookup dictionary
+([#27](https://github.com/Qix-/color-convert/pull/27))
+- Changed: `ansi` to `ansi256`
+([#27](https://github.com/Qix-/color-convert/pull/27))
+- Fixed: argument grouping for functions requiring only one argument
+([#27](https://github.com/Qix-/color-convert/pull/27))
+
+# 0.6.0 - 2015-07-23
+
+- Added: methods to handle
+[ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors:
+  - rgb2ansi16
+  - rgb2ansi
+  - hsl2ansi16
+  - hsl2ansi
+  - hsv2ansi16
+  - hsv2ansi
+  - hwb2ansi16
+  - hwb2ansi
+  - cmyk2ansi16
+  - cmyk2ansi
+  - keyword2ansi16
+  - keyword2ansi
+  - ansi162rgb
+  - ansi162hsl
+  - ansi162hsv
+  - ansi162hwb
+  - ansi162cmyk
+  - ansi162keyword
+  - ansi2rgb
+  - ansi2hsl
+  - ansi2hsv
+  - ansi2hwb
+  - ansi2cmyk
+  - ansi2keyword
+([#18](https://github.com/harthur/color-convert/pull/18))
+
+# 0.5.3 - 2015-06-02
+
+- Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]`
+([#15](https://github.com/harthur/color-convert/issues/15))
+
+---
+
+Check out commit logs for older releases
diff --git a/wrt/build/node_modules/color-convert/LICENSE b/wrt/build/node_modules/color-convert/LICENSE
new file mode 100644 (file)
index 0000000..5b4c386
--- /dev/null
@@ -0,0 +1,21 @@
+Copyright (c) 2011-2016 Heather Arthur <fayearthur@gmail.com>
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
diff --git a/wrt/build/node_modules/color-convert/README.md b/wrt/build/node_modules/color-convert/README.md
new file mode 100644 (file)
index 0000000..d4b08fc
--- /dev/null
@@ -0,0 +1,68 @@
+# color-convert
+
+[![Build Status](https://travis-ci.org/Qix-/color-convert.svg?branch=master)](https://travis-ci.org/Qix-/color-convert)
+
+Color-convert is a color conversion library for JavaScript and node.
+It converts all ways between `rgb`, `hsl`, `hsv`, `hwb`, `cmyk`, `ansi`, `ansi16`, `hex` strings, and CSS `keyword`s (will round to closest):
+
+```js
+var convert = require('color-convert');
+
+convert.rgb.hsl(140, 200, 100);             // [96, 48, 59]
+convert.keyword.rgb('blue');                // [0, 0, 255]
+
+var rgbChannels = convert.rgb.channels;     // 3
+var cmykChannels = convert.cmyk.channels;   // 4
+var ansiChannels = convert.ansi16.channels; // 1
+```
+
+# Install
+
+```console
+$ npm install color-convert
+```
+
+# API
+
+Simply get the property of the _from_ and _to_ conversion that you're looking for.
+
+All functions have a rounded and unrounded variant. By default, return values are rounded. To get the unrounded (raw) results, simply tack on `.raw` to the function.
+
+All 'from' functions have a hidden property called `.channels` that indicates the number of channels the function expects (not including alpha).
+
+```js
+var convert = require('color-convert');
+
+// Hex to LAB
+convert.hex.lab('DEADBF');         // [ 76, 21, -2 ]
+convert.hex.lab.raw('DEADBF');     // [ 75.56213190997677, 20.653827952644754, -2.290532499330533 ]
+
+// RGB to CMYK
+convert.rgb.cmyk(167, 255, 4);     // [ 35, 0, 98, 0 ]
+convert.rgb.cmyk.raw(167, 255, 4); // [ 34.509803921568626, 0, 98.43137254901961, 0 ]
+```
+
+### Arrays
+All functions that accept multiple arguments also support passing an array.
+
+Note that this does **not** apply to functions that convert from a color that only requires one value (e.g. `keyword`, `ansi256`, `hex`, etc.)
+
+```js
+var convert = require('color-convert');
+
+convert.rgb.hex(123, 45, 67);      // '7B2D43'
+convert.rgb.hex([123, 45, 67]);    // '7B2D43'
+```
+
+## Routing
+
+Conversions that don't have an _explicitly_ defined conversion (in [conversions.js](conversions.js)), but can be converted by means of sub-conversions (e.g. XYZ -> **RGB** -> CMYK), are automatically routed together. This allows just about any color model supported by `color-convert` to be converted to any other model, so long as a sub-conversion path exists. This is also true for conversions requiring more than one step in between (e.g. LCH -> **LAB** -> **XYZ** -> **RGB** -> Hex).
+
+Keep in mind that extensive conversions _may_ result in a loss of precision, and exist only to be complete. For a list of "direct" (single-step) conversions, see [conversions.js](conversions.js).
+
+# Contribute
+
+If there is a new model you would like to support, or want to add a direct conversion between two existing models, please send us a pull request.
+
+# License
+Copyright &copy; 2011-2016, Heather Arthur and Josh Junon. Licensed under the [MIT License](LICENSE).
diff --git a/wrt/build/node_modules/color-convert/conversions.js b/wrt/build/node_modules/color-convert/conversions.js
new file mode 100644 (file)
index 0000000..19ca4a9
--- /dev/null
@@ -0,0 +1,861 @@
+/* MIT license */
+var cssKeywords = require('color-name');
+
+// NOTE: conversions should only return primitive values (i.e. arrays, or
+//       values that give correct `typeof` results).
+//       do not use box values types (i.e. Number(), String(), etc.)
+
+var reverseKeywords = {};
+for (var key in cssKeywords) {
+       if (cssKeywords.hasOwnProperty(key)) {
+               reverseKeywords[cssKeywords[key]] = key;
+       }
+}
+
+var convert = module.exports = {
+       rgb: {channels: 3, labels: 'rgb'},
+       hsl: {channels: 3, labels: 'hsl'},
+       hsv: {channels: 3, labels: 'hsv'},
+       hwb: {channels: 3, labels: 'hwb'},
+       cmyk: {channels: 4, labels: 'cmyk'},
+       xyz: {channels: 3, labels: 'xyz'},
+       lab: {channels: 3, labels: 'lab'},
+       lch: {channels: 3, labels: 'lch'},
+       hex: {channels: 1, labels: ['hex']},
+       keyword: {channels: 1, labels: ['keyword']},
+       ansi16: {channels: 1, labels: ['ansi16']},
+       ansi256: {channels: 1, labels: ['ansi256']},
+       hcg: {channels: 3, labels: ['h', 'c', 'g']},
+       apple: {channels: 3, labels: ['r16', 'g16', 'b16']},
+       gray: {channels: 1, labels: ['gray']}
+};
+
+// hide .channels and .labels properties
+for (var model in convert) {
+       if (convert.hasOwnProperty(model)) {
+               if (!('channels' in convert[model])) {
+                       throw new Error('missing channels property: ' + model);
+               }
+
+               if (!('labels' in convert[model])) {
+                       throw new Error('missing channel labels property: ' + model);
+               }
+
+               if (convert[model].labels.length !== convert[model].channels) {
+                       throw new Error('channel and label counts mismatch: ' + model);
+               }
+
+               var channels = convert[model].channels;
+               var labels = convert[model].labels;
+               delete convert[model].channels;
+               delete convert[model].labels;
+               Object.defineProperty(convert[model], 'channels', {value: channels});
+               Object.defineProperty(convert[model], 'labels', {value: labels});
+       }
+}
+
+convert.rgb.hsl = function (rgb) {
+       var r = rgb[0] / 255;
+       var g = rgb[1] / 255;
+       var b = rgb[2] / 255;
+       var min = Math.min(r, g, b);
+       var max = Math.max(r, g, b);
+       var delta = max - min;
+       var h;
+       var s;
+       var l;
+
+       if (max === min) {
+               h = 0;
+       } else if (r === max) {
+               h = (g - b) / delta;
+       } else if (g === max) {
+               h = 2 + (b - r) / delta;
+       } else if (b === max) {
+               h = 4 + (r - g) / delta;
+       }
+
+       h = Math.min(h * 60, 360);
+
+       if (h < 0) {
+               h += 360;
+       }
+
+       l = (min + max) / 2;
+
+       if (max === min) {
+               s = 0;
+       } else if (l <= 0.5) {
+               s = delta / (max + min);
+       } else {
+               s = delta / (2 - max - min);
+       }
+
+       return [h, s * 100, l * 100];
+};
+
+convert.rgb.hsv = function (rgb) {
+       var r = rgb[0];
+       var g = rgb[1];
+       var b = rgb[2];
+       var min = Math.min(r, g, b);
+       var max = Math.max(r, g, b);
+       var delta = max - min;
+       var h;
+       var s;
+       var v;
+
+       if (max === 0) {
+               s = 0;
+       } else {
+               s = (delta / max * 1000) / 10;
+       }
+
+       if (max === min) {
+               h = 0;
+       } else if (r === max) {
+               h = (g - b) / delta;
+       } else if (g === max) {
+               h = 2 + (b - r) / delta;
+       } else if (b === max) {
+               h = 4 + (r - g) / delta;
+       }
+
+       h = Math.min(h * 60, 360);
+
+       if (h < 0) {
+               h += 360;
+       }
+
+       v = ((max / 255) * 1000) / 10;
+
+       return [h, s, v];
+};
+
+convert.rgb.hwb = function (rgb) {
+       var r = rgb[0];
+       var g = rgb[1];
+       var b = rgb[2];
+       var h = convert.rgb.hsl(rgb)[0];
+       var w = 1 / 255 * Math.min(r, Math.min(g, b));
+
+       b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
+
+       return [h, w * 100, b * 100];
+};
+
+convert.rgb.cmyk = function (rgb) {
+       var r = rgb[0] / 255;
+       var g = rgb[1] / 255;
+       var b = rgb[2] / 255;
+       var c;
+       var m;
+       var y;
+       var k;
+
+       k = Math.min(1 - r, 1 - g, 1 - b);
+       c = (1 - r - k) / (1 - k) || 0;
+       m = (1 - g - k) / (1 - k) || 0;
+       y = (1 - b - k) / (1 - k) || 0;
+
+       return [c * 100, m * 100, y * 100, k * 100];
+};
+
+/**
+ * See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance
+ * */
+function comparativeDistance(x, y) {
+       return (
+               Math.pow(x[0] - y[0], 2) +
+               Math.pow(x[1] - y[1], 2) +
+               Math.pow(x[2] - y[2], 2)
+       );
+}
+
+convert.rgb.keyword = function (rgb) {
+       var reversed = reverseKeywords[rgb];
+       if (reversed) {
+               return reversed;
+       }
+
+       var currentClosestDistance = Infinity;
+       var currentClosestKeyword;
+
+       for (var keyword in cssKeywords) {
+               if (cssKeywords.hasOwnProperty(keyword)) {
+                       var value = cssKeywords[keyword];
+
+                       // Compute comparative distance
+                       var distance = comparativeDistance(rgb, value);
+
+                       // Check if its less, if so set as closest
+                       if (distance < currentClosestDistance) {
+                               currentClosestDistance = distance;
+                               currentClosestKeyword = keyword;
+                       }
+               }
+       }
+
+       return currentClosestKeyword;
+};
+
+convert.keyword.rgb = function (keyword) {
+       return cssKeywords[keyword];
+};
+
+convert.rgb.xyz = function (rgb) {
+       var r = rgb[0] / 255;
+       var g = rgb[1] / 255;
+       var b = rgb[2] / 255;
+
+       // assume sRGB
+       r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4) : (r / 12.92);
+       g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4) : (g / 12.92);
+       b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4) : (b / 12.92);
+
+       var x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);
+       var y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);
+       var z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);
+
+       return [x * 100, y * 100, z * 100];
+};
+
+convert.rgb.lab = function (rgb) {
+       var xyz = convert.rgb.xyz(rgb);
+       var x = xyz[0];
+       var y = xyz[1];
+       var z = xyz[2];
+       var l;
+       var a;
+       var b;
+
+       x /= 95.047;
+       y /= 100;
+       z /= 108.883;
+
+       x = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);
+       y = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);
+       z = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);
+
+       l = (116 * y) - 16;
+       a = 500 * (x - y);
+       b = 200 * (y - z);
+
+       return [l, a, b];
+};
+
+convert.hsl.rgb = function (hsl) {
+       var h = hsl[0] / 360;
+       var s = hsl[1] / 100;
+       var l = hsl[2] / 100;
+       var t1;
+       var t2;
+       var t3;
+       var rgb;
+       var val;
+
+       if (s === 0) {
+               val = l * 255;
+               return [val, val, val];
+       }
+
+       if (l < 0.5) {
+               t2 = l * (1 + s);
+       } else {
+               t2 = l + s - l * s;
+       }
+
+       t1 = 2 * l - t2;
+
+       rgb = [0, 0, 0];
+       for (var i = 0; i < 3; i++) {
+               t3 = h + 1 / 3 * -(i - 1);
+               if (t3 < 0) {
+                       t3++;
+               }
+               if (t3 > 1) {
+                       t3--;
+               }
+
+               if (6 * t3 < 1) {
+                       val = t1 + (t2 - t1) * 6 * t3;
+               } else if (2 * t3 < 1) {
+                       val = t2;
+               } else if (3 * t3 < 2) {
+                       val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
+               } else {
+                       val = t1;
+               }
+
+               rgb[i] = val * 255;
+       }
+
+       return rgb;
+};
+
+convert.hsl.hsv = function (hsl) {
+       var h = hsl[0];
+       var s = hsl[1] / 100;
+       var l = hsl[2] / 100;
+       var smin = s;
+       var lmin = Math.max(l, 0.01);
+       var sv;
+       var v;
+
+       l *= 2;
+       s *= (l <= 1) ? l : 2 - l;
+       smin *= lmin <= 1 ? lmin : 2 - lmin;
+       v = (l + s) / 2;
+       sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);
+
+       return [h, sv * 100, v * 100];
+};
+
+convert.hsv.rgb = function (hsv) {
+       var h = hsv[0] / 60;
+       var s = hsv[1] / 100;
+       var v = hsv[2] / 100;
+       var hi = Math.floor(h) % 6;
+
+       var f = h - Math.floor(h);
+       var p = 255 * v * (1 - s);
+       var q = 255 * v * (1 - (s * f));
+       var t = 255 * v * (1 - (s * (1 - f)));
+       v *= 255;
+
+       switch (hi) {
+               case 0:
+                       return [v, t, p];
+               case 1:
+                       return [q, v, p];
+               case 2:
+                       return [p, v, t];
+               case 3:
+                       return [p, q, v];
+               case 4:
+                       return [t, p, v];
+               case 5:
+                       return [v, p, q];
+       }
+};
+
+convert.hsv.hsl = function (hsv) {
+       var h = hsv[0];
+       var s = hsv[1] / 100;
+       var v = hsv[2] / 100;
+       var vmin = Math.max(v, 0.01);
+       var lmin;
+       var sl;
+       var l;
+
+       l = (2 - s) * v;
+       lmin = (2 - s) * vmin;
+       sl = s * vmin;
+       sl /= (lmin <= 1) ? lmin : 2 - lmin;
+       sl = sl || 0;
+       l /= 2;
+
+       return [h, sl * 100, l * 100];
+};
+
+// http://dev.w3.org/csswg/css-color/#hwb-to-rgb
+convert.hwb.rgb = function (hwb) {
+       var h = hwb[0] / 360;
+       var wh = hwb[1] / 100;
+       var bl = hwb[2] / 100;
+       var ratio = wh + bl;
+       var i;
+       var v;
+       var f;
+       var n;
+
+       // wh + bl cant be > 1
+       if (ratio > 1) {
+               wh /= ratio;
+               bl /= ratio;
+       }
+
+       i = Math.floor(6 * h);
+       v = 1 - bl;
+       f = 6 * h - i;
+
+       if ((i & 0x01) !== 0) {
+               f = 1 - f;
+       }
+
+       n = wh + f * (v - wh); // linear interpolation
+
+       var r;
+       var g;
+       var b;
+       switch (i) {
+               default:
+               case 6:
+               case 0: r = v; g = n; b = wh; break;
+               case 1: r = n; g = v; b = wh; break;
+               case 2: r = wh; g = v; b = n; break;
+               case 3: r = wh; g = n; b = v; break;
+               case 4: r = n; g = wh; b = v; break;
+               case 5: r = v; g = wh; b = n; break;
+       }
+
+       return [r * 255, g * 255, b * 255];
+};
+
+convert.cmyk.rgb = function (cmyk) {
+       var c = cmyk[0] / 100;
+       var m = cmyk[1] / 100;
+       var y = cmyk[2] / 100;
+       var k = cmyk[3] / 100;
+       var r;
+       var g;
+       var b;
+
+       r = 1 - Math.min(1, c * (1 - k) + k);
+       g = 1 - Math.min(1, m * (1 - k) + k);
+       b = 1 - Math.min(1, y * (1 - k) + k);
+
+       return [r * 255, g * 255, b * 255];
+};
+
+convert.xyz.rgb = function (xyz) {
+       var x = xyz[0] / 100;
+       var y = xyz[1] / 100;
+       var z = xyz[2] / 100;
+       var r;
+       var g;
+       var b;
+
+       r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);
+       g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);
+       b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);
+
+       // assume sRGB
+       r = r > 0.0031308
+               ? ((1.055 * Math.pow(r, 1.0 / 2.4)) - 0.055)
+               : r * 12.92;
+
+       g = g > 0.0031308
+               ? ((1.055 * Math.pow(g, 1.0 / 2.4)) - 0.055)
+               : g * 12.92;
+
+       b = b > 0.0031308
+               ? ((1.055 * Math.pow(b, 1.0 / 2.4)) - 0.055)
+               : b * 12.92;
+
+       r = Math.min(Math.max(0, r), 1);
+       g = Math.min(Math.max(0, g), 1);
+       b = Math.min(Math.max(0, b), 1);
+
+       return [r * 255, g * 255, b * 255];
+};
+
+convert.xyz.lab = function (xyz) {
+       var x = xyz[0];
+       var y = xyz[1];
+       var z = xyz[2];
+       var l;
+       var a;
+       var b;
+
+       x /= 95.047;
+       y /= 100;
+       z /= 108.883;
+
+       x = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);
+       y = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);
+       z = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);
+
+       l = (116 * y) - 16;
+       a = 500 * (x - y);
+       b = 200 * (y - z);
+
+       return [l, a, b];
+};
+
+convert.lab.xyz = function (lab) {
+       var l = lab[0];
+       var a = lab[1];
+       var b = lab[2];
+       var x;
+       var y;
+       var z;
+
+       y = (l + 16) / 116;
+       x = a / 500 + y;
+       z = y - b / 200;
+
+       var y2 = Math.pow(y, 3);
+       var x2 = Math.pow(x, 3);
+       var z2 = Math.pow(z, 3);
+       y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;
+       x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;
+       z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;
+
+       x *= 95.047;
+       y *= 100;
+       z *= 108.883;
+
+       return [x, y, z];
+};
+
+convert.lab.lch = function (lab) {
+       var l = lab[0];
+       var a = lab[1];
+       var b = lab[2];
+       var hr;
+       var h;
+       var c;
+
+       hr = Math.atan2(b, a);
+       h = hr * 360 / 2 / Math.PI;
+
+       if (h < 0) {
+               h += 360;
+       }
+
+       c = Math.sqrt(a * a + b * b);
+
+       return [l, c, h];
+};
+
+convert.lch.lab = function (lch) {
+       var l = lch[0];
+       var c = lch[1];
+       var h = lch[2];
+       var a;
+       var b;
+       var hr;
+
+       hr = h / 360 * 2 * Math.PI;
+       a = c * Math.cos(hr);
+       b = c * Math.sin(hr);
+
+       return [l, a, b];
+};
+
+convert.rgb.ansi16 = function (args) {
+       var r = args[0];
+       var g = args[1];
+       var b = args[2];
+       var value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; // hsv -> ansi16 optimization
+
+       value = Math.round(value / 50);
+
+       if (value === 0) {
+               return 30;
+       }
+
+       var ansi = 30
+               + ((Math.round(b / 255) << 2)
+               | (Math.round(g / 255) << 1)
+               | Math.round(r / 255));
+
+       if (value === 2) {
+               ansi += 60;
+       }
+
+       return ansi;
+};
+
+convert.hsv.ansi16 = function (args) {
+       // optimization here; we already know the value and don't need to get
+       // it converted for us.
+       return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);
+};
+
+convert.rgb.ansi256 = function (args) {
+       var r = args[0];
+       var g = args[1];
+       var b = args[2];
+
+       // we use the extended greyscale palette here, with the exception of
+       // black and white. normal palette only has 4 greyscale shades.
+       if (r === g && g === b) {
+               if (r < 8) {
+                       return 16;
+               }
+
+               if (r > 248) {
+                       return 231;
+               }
+
+               return Math.round(((r - 8) / 247) * 24) + 232;
+       }
+
+       var ansi = 16
+               + (36 * Math.round(r / 255 * 5))
+               + (6 * Math.round(g / 255 * 5))
+               + Math.round(b / 255 * 5);
+
+       return ansi;
+};
+
+convert.ansi16.rgb = function (args) {
+       var color = args % 10;
+
+       // handle greyscale
+       if (color === 0 || color === 7) {
+               if (args > 50) {
+                       color += 3.5;
+               }
+
+               color = color / 10.5 * 255;
+
+               return [color, color, color];
+       }
+
+       var mult = (~~(args > 50) + 1) * 0.5;
+       var r = ((color & 1) * mult) * 255;
+       var g = (((color >> 1) & 1) * mult) * 255;
+       var b = (((color >> 2) & 1) * mult) * 255;
+
+       return [r, g, b];
+};
+
+convert.ansi256.rgb = function (args) {
+       // handle greyscale
+       if (args >= 232) {
+               var c = (args - 232) * 10 + 8;
+               return [c, c, c];
+       }
+
+       args -= 16;
+
+       var rem;
+       var r = Math.floor(args / 36) / 5 * 255;
+       var g = Math.floor((rem = args % 36) / 6) / 5 * 255;
+       var b = (rem % 6) / 5 * 255;
+
+       return [r, g, b];
+};
+
+convert.rgb.hex = function (args) {
+       var integer = ((Math.round(args[0]) & 0xFF) << 16)
+               + ((Math.round(args[1]) & 0xFF) << 8)
+               + (Math.round(args[2]) & 0xFF);
+
+       var string = integer.toString(16).toUpperCase();
+       return '000000'.substring(string.length) + string;
+};
+
+convert.hex.rgb = function (args) {
+       var match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
+       if (!match) {
+               return [0, 0, 0];
+       }
+
+       var colorString = match[0];
+
+       if (match[0].length === 3) {
+               colorString = colorString.split('').map(function (char) {
+                       return char + char;
+               }).join('');
+       }
+
+       var integer = parseInt(colorString, 16);
+       var r = (integer >> 16) & 0xFF;
+       var g = (integer >> 8) & 0xFF;
+       var b = integer & 0xFF;
+
+       return [r, g, b];
+};
+
+convert.rgb.hcg = function (rgb) {
+       var r = rgb[0] / 255;
+       var g = rgb[1] / 255;
+       var b = rgb[2] / 255;
+       var max = Math.max(Math.max(r, g), b);
+       var min = Math.min(Math.min(r, g), b);
+       var chroma = (max - min);
+       var grayscale;
+       var hue;
+
+       if (chroma < 1) {
+               grayscale = min / (1 - chroma);
+       } else {
+               grayscale = 0;
+       }
+
+       if (chroma <= 0) {
+               hue = 0;
+       } else
+       if (max === r) {
+               hue = ((g - b) / chroma) % 6;
+       } else
+       if (max === g) {
+               hue = 2 + (b - r) / chroma;
+       } else {
+               hue = 4 + (r - g) / chroma + 4;
+       }
+
+       hue /= 6;
+       hue %= 1;
+
+       return [hue * 360, chroma * 100, grayscale * 100];
+};
+
+convert.hsl.hcg = function (hsl) {
+       var s = hsl[1] / 100;
+       var l = hsl[2] / 100;
+       var c = 1;
+       var f = 0;
+
+       if (l < 0.5) {
+               c = 2.0 * s * l;
+       } else {
+               c = 2.0 * s * (1.0 - l);
+       }
+
+       if (c < 1.0) {
+               f = (l - 0.5 * c) / (1.0 - c);
+       }
+
+       return [hsl[0], c * 100, f * 100];
+};
+
+convert.hsv.hcg = function (hsv) {
+       var s = hsv[1] / 100;
+       var v = hsv[2] / 100;
+
+       var c = s * v;
+       var f = 0;
+
+       if (c < 1.0) {
+               f = (v - c) / (1 - c);
+       }
+
+       return [hsv[0], c * 100, f * 100];
+};
+
+convert.hcg.rgb = function (hcg) {
+       var h = hcg[0] / 360;
+       var c = hcg[1] / 100;
+       var g = hcg[2] / 100;
+
+       if (c === 0.0) {
+               return [g * 255, g * 255, g * 255];
+       }
+
+       var pure = [0, 0, 0];
+       var hi = (h % 1) * 6;
+       var v = hi % 1;
+       var w = 1 - v;
+       var mg = 0;
+
+       switch (Math.floor(hi)) {
+               case 0:
+                       pure[0] = 1; pure[1] = v; pure[2] = 0; break;
+               case 1:
+                       pure[0] = w; pure[1] = 1; pure[2] = 0; break;
+               case 2:
+                       pure[0] = 0; pure[1] = 1; pure[2] = v; break;
+               case 3:
+                       pure[0] = 0; pure[1] = w; pure[2] = 1; break;
+               case 4:
+                       pure[0] = v; pure[1] = 0; pure[2] = 1; break;
+               default:
+                       pure[0] = 1; pure[1] = 0; pure[2] = w;
+       }
+
+       mg = (1.0 - c) * g;
+
+       return [
+               (c * pure[0] + mg) * 255,
+               (c * pure[1] + mg) * 255,
+               (c * pure[2] + mg) * 255
+       ];
+};
+
+convert.hcg.hsv = function (hcg) {
+       var c = hcg[1] / 100;
+       var g = hcg[2] / 100;
+
+       var v = c + g * (1.0 - c);
+       var f = 0;
+
+       if (v > 0.0) {
+               f = c / v;
+       }
+
+       return [hcg[0], f * 100, v * 100];
+};
+
+convert.hcg.hsl = function (hcg) {
+       var c = hcg[1] / 100;
+       var g = hcg[2] / 100;
+
+       var l = g * (1.0 - c) + 0.5 * c;
+       var s = 0;
+
+       if (l > 0.0 && l < 0.5) {
+               s = c / (2 * l);
+       } else
+       if (l >= 0.5 && l < 1.0) {
+               s = c / (2 * (1 - l));
+       }
+
+       return [hcg[0], s * 100, l * 100];
+};
+
+convert.hcg.hwb = function (hcg) {
+       var c = hcg[1] / 100;
+       var g = hcg[2] / 100;
+       var v = c + g * (1.0 - c);
+       return [hcg[0], (v - c) * 100, (1 - v) * 100];
+};
+
+convert.hwb.hcg = function (hwb) {
+       var w = hwb[1] / 100;
+       var b = hwb[2] / 100;
+       var v = 1 - b;
+       var c = v - w;
+       var g = 0;
+
+       if (c < 1) {
+               g = (v - c) / (1 - c);
+       }
+
+       return [hwb[0], c * 100, g * 100];
+};
+
+convert.apple.rgb = function (apple) {
+       return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];
+};
+
+convert.rgb.apple = function (rgb) {
+       return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];
+};
+
+convert.gray.rgb = function (args) {
+       return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
+};
+
+convert.gray.hsl = convert.gray.hsv = function (args) {
+       return [0, 0, args[0]];
+};
+
+convert.gray.hwb = function (gray) {
+       return [0, 100, gray[0]];
+};
+
+convert.gray.cmyk = function (gray) {
+       return [0, 0, 0, gray[0]];
+};
+
+convert.gray.lab = function (gray) {
+       return [gray[0], 0, 0];
+};
+
+convert.gray.hex = function (gray) {
+       var val = Math.round(gray[0] / 100 * 255) & 0xFF;
+       var integer = (val << 16) + (val << 8) + val;
+
+       var string = integer.toString(16).toUpperCase();
+       return '000000'.substring(string.length) + string;
+};
+
+convert.rgb.gray = function (rgb) {
+       var val = (rgb[0] + rgb[1] + rgb[2]) / 3;
+       return [val / 255 * 100];
+};
diff --git a/wrt/build/node_modules/color-convert/index.js b/wrt/build/node_modules/color-convert/index.js
new file mode 100644 (file)
index 0000000..e65b5d7
--- /dev/null
@@ -0,0 +1,78 @@
+var conversions = require('./conversions');
+var route = require('./route');
+
+var convert = {};
+
+var models = Object.keys(conversions);
+
+function wrapRaw(fn) {
+       var wrappedFn = function (args) {
+               if (args === undefined || args === null) {
+                       return args;
+               }
+
+               if (arguments.length > 1) {
+                       args = Array.prototype.slice.call(arguments);
+               }
+
+               return fn(args);
+       };
+
+       // preserve .conversion property if there is one
+       if ('conversion' in fn) {
+               wrappedFn.conversion = fn.conversion;
+       }
+
+       return wrappedFn;
+}
+
+function wrapRounded(fn) {
+       var wrappedFn = function (args) {
+               if (args === undefined || args === null) {
+                       return args;
+               }
+
+               if (arguments.length > 1) {
+                       args = Array.prototype.slice.call(arguments);
+               }
+
+               var result = fn(args);
+
+               // we're assuming the result is an array here.
+               // see notice in conversions.js; don't use box types
+               // in conversion functions.
+               if (typeof result === 'object') {
+                       for (var len = result.length, i = 0; i < len; i++) {
+                               result[i] = Math.round(result[i]);
+                       }
+               }
+
+               return result;
+       };
+
+       // preserve .conversion property if there is one
+       if ('conversion' in fn) {
+               wrappedFn.conversion = fn.conversion;
+       }
+
+       return wrappedFn;
+}
+
+models.forEach(function (fromModel) {
+       convert[fromModel] = {};
+
+       Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});
+       Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});
+
+       var routes = route(fromModel);
+       var routeModels = Object.keys(routes);
+
+       routeModels.forEach(function (toModel) {
+               var fn = routes[toModel];
+
+               convert[fromModel][toModel] = wrapRounded(fn);
+               convert[fromModel][toModel].raw = wrapRaw(fn);
+       });
+});
+
+module.exports = convert;
diff --git a/wrt/build/node_modules/color-convert/package.json b/wrt/build/node_modules/color-convert/package.json
new file mode 100644 (file)
index 0000000..bc6c7fe
--- /dev/null
@@ -0,0 +1,124 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "color-convert@^1.9.0",
+        "scope": null,
+        "escapedName": "color-convert",
+        "name": "color-convert",
+        "rawSpec": "^1.9.0",
+        "spec": ">=1.9.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/ansi-styles"
+    ]
+  ],
+  "_from": "color-convert@>=1.9.0 <2.0.0",
+  "_id": "color-convert@1.9.0",
+  "_inCache": true,
+  "_location": "/color-convert",
+  "_nodeVersion": "0.10.32",
+  "_npmOperationalInternal": {
+    "host": "packages-18-east.internal.npmjs.com",
+    "tmp": "tmp/color-convert-1.9.0.tgz_1484684133840_0.4650497359689325"
+  },
+  "_npmUser": {
+    "name": "qix",
+    "email": "i.am.qix@gmail.com"
+  },
+  "_npmVersion": "2.14.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "color-convert@^1.9.0",
+    "scope": null,
+    "escapedName": "color-convert",
+    "name": "color-convert",
+    "rawSpec": "^1.9.0",
+    "spec": ">=1.9.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/ansi-styles"
+  ],
+  "_resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz",
+  "_shasum": "1accf97dd739b983bf994d56fec8f95853641b7a",
+  "_shrinkwrap": null,
+  "_spec": "color-convert@^1.9.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/ansi-styles",
+  "author": {
+    "name": "Heather Arthur",
+    "email": "fayearthur@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/qix-/color-convert/issues"
+  },
+  "dependencies": {
+    "color-name": "^1.1.1"
+  },
+  "description": "Plain color conversion functions",
+  "devDependencies": {
+    "chalk": "^1.1.1",
+    "xo": "^0.11.2"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "1accf97dd739b983bf994d56fec8f95853641b7a",
+    "tarball": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz"
+  },
+  "files": [
+    "index.js",
+    "conversions.js",
+    "css-keywords.js",
+    "route.js"
+  ],
+  "gitHead": "f8b2cf64544c551f22b74947d511f0e97c4e6ef1",
+  "homepage": "https://github.com/qix-/color-convert#readme",
+  "keywords": [
+    "color",
+    "colour",
+    "convert",
+    "converter",
+    "conversion",
+    "rgb",
+    "hsl",
+    "hsv",
+    "hwb",
+    "cmyk",
+    "ansi",
+    "ansi16"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "harth",
+      "email": "fayearthur@gmail.com"
+    },
+    {
+      "name": "moox",
+      "email": "m@moox.io"
+    },
+    {
+      "name": "qix",
+      "email": "i.am.qix@gmail.com"
+    }
+  ],
+  "name": "color-convert",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/qix-/color-convert.git"
+  },
+  "scripts": {
+    "pretest": "xo",
+    "test": "node test/basic.js"
+  },
+  "version": "1.9.0",
+  "xo": {
+    "rules": {
+      "default-case": 0,
+      "no-inline-comments": 0,
+      "operator-linebreak": 0
+    }
+  }
+}
diff --git a/wrt/build/node_modules/color-convert/route.js b/wrt/build/node_modules/color-convert/route.js
new file mode 100644 (file)
index 0000000..c365e1e
--- /dev/null
@@ -0,0 +1,98 @@
+var conversions = require('./conversions');
+
+/*
+       this function routes a model to all other models.
+
+       all functions that are routed have a property `.conversion` attached
+       to the returned synthetic function. This property is an array
+       of strings, each with the steps in between the 'from' and 'to'
+       color models (inclusive).
+
+       conversions that are not possible simply are not included.
+*/
+
+// https://jsperf.com/object-keys-vs-for-in-with-closure/3
+var models = Object.keys(conversions);
+
+function buildGraph() {
+       var graph = {};
+
+       for (var len = models.length, i = 0; i < len; i++) {
+               graph[models[i]] = {
+                       // http://jsperf.com/1-vs-infinity
+                       // micro-opt, but this is simple.
+                       distance: -1,
+                       parent: null
+               };
+       }
+
+       return graph;
+}
+
+// https://en.wikipedia.org/wiki/Breadth-first_search
+function deriveBFS(fromModel) {
+       var graph = buildGraph();
+       var queue = [fromModel]; // unshift -> queue -> pop
+
+       graph[fromModel].distance = 0;
+
+       while (queue.length) {
+               var current = queue.pop();
+               var adjacents = Object.keys(conversions[current]);
+
+               for (var len = adjacents.length, i = 0; i < len; i++) {
+                       var adjacent = adjacents[i];
+                       var node = graph[adjacent];
+
+                       if (node.distance === -1) {
+                               node.distance = graph[current].distance + 1;
+                               node.parent = current;
+                               queue.unshift(adjacent);
+                       }
+               }
+       }
+
+       return graph;
+}
+
+function link(from, to) {
+       return function (args) {
+               return to(from(args));
+       };
+}
+
+function wrapConversion(toModel, graph) {
+       var path = [graph[toModel].parent, toModel];
+       var fn = conversions[graph[toModel].parent][toModel];
+
+       var cur = graph[toModel].parent;
+       while (graph[cur].parent) {
+               path.unshift(graph[cur].parent);
+               fn = link(conversions[graph[cur].parent][cur], fn);
+               cur = graph[cur].parent;
+       }
+
+       fn.conversion = path;
+       return fn;
+}
+
+module.exports = function (fromModel) {
+       var graph = deriveBFS(fromModel);
+       var conversion = {};
+
+       var models = Object.keys(graph);
+       for (var len = models.length, i = 0; i < len; i++) {
+               var toModel = models[i];
+               var node = graph[toModel];
+
+               if (node.parent === null) {
+                       // no possible conversion, or this node is the source model.
+                       continue;
+               }
+
+               conversion[toModel] = wrapConversion(toModel, graph);
+       }
+
+       return conversion;
+};
+
diff --git a/wrt/build/node_modules/color-name/.eslintrc.json b/wrt/build/node_modules/color-name/.eslintrc.json
new file mode 100644 (file)
index 0000000..c50c250
--- /dev/null
@@ -0,0 +1,43 @@
+{
+    "env": {
+        "browser": true,
+        "node": true,
+        "commonjs": true,
+        "es6": true
+    },
+    "extends": "eslint:recommended",
+    "rules": {
+        "strict": 2,
+        "indent": 0,
+        "linebreak-style": 0,
+        "quotes": 0,
+        "semi": 0,
+        "no-cond-assign": 1,
+        "no-constant-condition": 1,
+        "no-duplicate-case": 1,
+        "no-empty": 1,
+        "no-ex-assign": 1,
+        "no-extra-boolean-cast": 1,
+        "no-extra-semi": 1,
+        "no-fallthrough": 1,
+        "no-func-assign": 1,
+        "no-global-assign": 1,
+        "no-implicit-globals": 2,
+        "no-inner-declarations": ["error", "functions"],
+        "no-irregular-whitespace": 2,
+        "no-loop-func": 1,
+        "no-multi-str": 1,
+        "no-mixed-spaces-and-tabs": 1,
+        "no-proto": 1,
+        "no-sequences": 1,
+        "no-throw-literal": 1,
+        "no-unmodified-loop-condition": 1,
+        "no-useless-call": 1,
+        "no-void": 1,
+        "no-with": 2,
+        "wrap-iife": 1,
+        "no-redeclare": 1,
+        "no-unused-vars": ["error", { "vars": "all", "args": "none" }],
+        "no-sparse-arrays": 1
+    }
+}
diff --git a/wrt/build/node_modules/color-name/.npmignore b/wrt/build/node_modules/color-name/.npmignore
new file mode 100644 (file)
index 0000000..f9f2816
--- /dev/null
@@ -0,0 +1,107 @@
+//this will affect all the git repos\r
+git config --global core.excludesfile ~/.gitignore\r
+\r
+\r
+//update files since .ignore won't if already tracked\r
+git rm --cached <file>\r
+\r
+# Compiled source #\r
+###################\r
+*.com\r
+*.class\r
+*.dll\r
+*.exe\r
+*.o\r
+*.so\r
+\r
+# Packages #\r
+############\r
+# it's better to unpack these files and commit the raw source\r
+# git has its own built in compression methods\r
+*.7z\r
+*.dmg\r
+*.gz\r
+*.iso\r
+*.jar\r
+*.rar\r
+*.tar\r
+*.zip\r
+\r
+# Logs and databases #\r
+######################\r
+*.log\r
+*.sql\r
+*.sqlite\r
+\r
+# OS generated files #\r
+######################\r
+.DS_Store\r
+.DS_Store?\r
+._*\r
+.Spotlight-V100\r
+.Trashes\r
+# Icon?\r
+ehthumbs.db\r
+Thumbs.db\r
+.cache\r
+.project\r
+.settings\r
+.tmproj\r
+*.esproj\r
+nbproject\r
+\r
+# Numerous always-ignore extensions #\r
+#####################################\r
+*.diff\r
+*.err\r
+*.orig\r
+*.rej\r
+*.swn\r
+*.swo\r
+*.swp\r
+*.vi\r
+*~\r
+*.sass-cache\r
+*.grunt\r
+*.tmp\r
+\r
+# Dreamweaver added files #\r
+###########################\r
+_notes\r
+dwsync.xml\r
+\r
+# Komodo #\r
+###########################\r
+*.komodoproject\r
+.komodotools\r
+\r
+# Node #\r
+#####################\r
+node_modules\r
+\r
+# Bower #\r
+#####################\r
+bower_components\r
+\r
+# Folders to ignore #\r
+#####################\r
+.hg\r
+.svn\r
+.CVS\r
+intermediate\r
+publish\r
+.idea\r
+.graphics\r
+_test\r
+_archive\r
+uploads\r
+tmp\r
+\r
+# Vim files to ignore #\r
+#######################\r
+.VimballRecord\r
+.netrwhist\r
+\r
+bundle.*\r
+\r
+_demo
\ No newline at end of file
diff --git a/wrt/build/node_modules/color-name/LICENSE b/wrt/build/node_modules/color-name/LICENSE
new file mode 100644 (file)
index 0000000..c6b1001
--- /dev/null
@@ -0,0 +1,8 @@
+The MIT License (MIT)\r
+Copyright (c) 2015 Dmitry Ivanov\r
+\r
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\r
+\r
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\r
+\r
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/wrt/build/node_modules/color-name/README.md b/wrt/build/node_modules/color-name/README.md
new file mode 100644 (file)
index 0000000..932b979
--- /dev/null
@@ -0,0 +1,11 @@
+A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors.\r
+\r
+[![NPM](https://nodei.co/npm/color-name.png?mini=true)](https://nodei.co/npm/color-name/)\r
+\r
+\r
+```js\r
+var colors = require('color-name');\r
+colors.red //[255,0,0]\r
+```\r
+\r
+<a href="LICENSE"><img src="https://upload.wikimedia.org/wikipedia/commons/0/0c/MIT_logo.svg" width="120"/></a>\r
diff --git a/wrt/build/node_modules/color-name/index.js b/wrt/build/node_modules/color-name/index.js
new file mode 100644 (file)
index 0000000..b7c198a
--- /dev/null
@@ -0,0 +1,152 @@
+'use strict'\r
+\r
+module.exports = {\r
+       "aliceblue": [240, 248, 255],\r
+       "antiquewhite": [250, 235, 215],\r
+       "aqua": [0, 255, 255],\r
+       "aquamarine": [127, 255, 212],\r
+       "azure": [240, 255, 255],\r
+       "beige": [245, 245, 220],\r
+       "bisque": [255, 228, 196],\r
+       "black": [0, 0, 0],\r
+       "blanchedalmond": [255, 235, 205],\r
+       "blue": [0, 0, 255],\r
+       "blueviolet": [138, 43, 226],\r
+       "brown": [165, 42, 42],\r
+       "burlywood": [222, 184, 135],\r
+       "cadetblue": [95, 158, 160],\r
+       "chartreuse": [127, 255, 0],\r
+       "chocolate": [210, 105, 30],\r
+       "coral": [255, 127, 80],\r
+       "cornflowerblue": [100, 149, 237],\r
+       "cornsilk": [255, 248, 220],\r
+       "crimson": [220, 20, 60],\r
+       "cyan": [0, 255, 255],\r
+       "darkblue": [0, 0, 139],\r
+       "darkcyan": [0, 139, 139],\r
+       "darkgoldenrod": [184, 134, 11],\r
+       "darkgray": [169, 169, 169],\r
+       "darkgreen": [0, 100, 0],\r
+       "darkgrey": [169, 169, 169],\r
+       "darkkhaki": [189, 183, 107],\r
+       "darkmagenta": [139, 0, 139],\r
+       "darkolivegreen": [85, 107, 47],\r
+       "darkorange": [255, 140, 0],\r
+       "darkorchid": [153, 50, 204],\r
+       "darkred": [139, 0, 0],\r
+       "darksalmon": [233, 150, 122],\r
+       "darkseagreen": [143, 188, 143],\r
+       "darkslateblue": [72, 61, 139],\r
+       "darkslategray": [47, 79, 79],\r
+       "darkslategrey": [47, 79, 79],\r
+       "darkturquoise": [0, 206, 209],\r
+       "darkviolet": [148, 0, 211],\r
+       "deeppink": [255, 20, 147],\r
+       "deepskyblue": [0, 191, 255],\r
+       "dimgray": [105, 105, 105],\r
+       "dimgrey": [105, 105, 105],\r
+       "dodgerblue": [30, 144, 255],\r
+       "firebrick": [178, 34, 34],\r
+       "floralwhite": [255, 250, 240],\r
+       "forestgreen": [34, 139, 34],\r
+       "fuchsia": [255, 0, 255],\r
+       "gainsboro": [220, 220, 220],\r
+       "ghostwhite": [248, 248, 255],\r
+       "gold": [255, 215, 0],\r
+       "goldenrod": [218, 165, 32],\r
+       "gray": [128, 128, 128],\r
+       "green": [0, 128, 0],\r
+       "greenyellow": [173, 255, 47],\r
+       "grey": [128, 128, 128],\r
+       "honeydew": [240, 255, 240],\r
+       "hotpink": [255, 105, 180],\r
+       "indianred": [205, 92, 92],\r
+       "indigo": [75, 0, 130],\r
+       "ivory": [255, 255, 240],\r
+       "khaki": [240, 230, 140],\r
+       "lavender": [230, 230, 250],\r
+       "lavenderblush": [255, 240, 245],\r
+       "lawngreen": [124, 252, 0],\r
+       "lemonchiffon": [255, 250, 205],\r
+       "lightblue": [173, 216, 230],\r
+       "lightcoral": [240, 128, 128],\r
+       "lightcyan": [224, 255, 255],\r
+       "lightgoldenrodyellow": [250, 250, 210],\r
+       "lightgray": [211, 211, 211],\r
+       "lightgreen": [144, 238, 144],\r
+       "lightgrey": [211, 211, 211],\r
+       "lightpink": [255, 182, 193],\r
+       "lightsalmon": [255, 160, 122],\r
+       "lightseagreen": [32, 178, 170],\r
+       "lightskyblue": [135, 206, 250],\r
+       "lightslategray": [119, 136, 153],\r
+       "lightslategrey": [119, 136, 153],\r
+       "lightsteelblue": [176, 196, 222],\r
+       "lightyellow": [255, 255, 224],\r
+       "lime": [0, 255, 0],\r
+       "limegreen": [50, 205, 50],\r
+       "linen": [250, 240, 230],\r
+       "magenta": [255, 0, 255],\r
+       "maroon": [128, 0, 0],\r
+       "mediumaquamarine": [102, 205, 170],\r
+       "mediumblue": [0, 0, 205],\r
+       "mediumorchid": [186, 85, 211],\r
+       "mediumpurple": [147, 112, 219],\r
+       "mediumseagreen": [60, 179, 113],\r
+       "mediumslateblue": [123, 104, 238],\r
+       "mediumspringgreen": [0, 250, 154],\r
+       "mediumturquoise": [72, 209, 204],\r
+       "mediumvioletred": [199, 21, 133],\r
+       "midnightblue": [25, 25, 112],\r
+       "mintcream": [245, 255, 250],\r
+       "mistyrose": [255, 228, 225],\r
+       "moccasin": [255, 228, 181],\r
+       "navajowhite": [255, 222, 173],\r
+       "navy": [0, 0, 128],\r
+       "oldlace": [253, 245, 230],\r
+       "olive": [128, 128, 0],\r
+       "olivedrab": [107, 142, 35],\r
+       "orange": [255, 165, 0],\r
+       "orangered": [255, 69, 0],\r
+       "orchid": [218, 112, 214],\r
+       "palegoldenrod": [238, 232, 170],\r
+       "palegreen": [152, 251, 152],\r
+       "paleturquoise": [175, 238, 238],\r
+       "palevioletred": [219, 112, 147],\r
+       "papayawhip": [255, 239, 213],\r
+       "peachpuff": [255, 218, 185],\r
+       "peru": [205, 133, 63],\r
+       "pink": [255, 192, 203],\r
+       "plum": [221, 160, 221],\r
+       "powderblue": [176, 224, 230],\r
+       "purple": [128, 0, 128],\r
+       "rebeccapurple": [102, 51, 153],\r
+       "red": [255, 0, 0],\r
+       "rosybrown": [188, 143, 143],\r
+       "royalblue": [65, 105, 225],\r
+       "saddlebrown": [139, 69, 19],\r
+       "salmon": [250, 128, 114],\r
+       "sandybrown": [244, 164, 96],\r
+       "seagreen": [46, 139, 87],\r
+       "seashell": [255, 245, 238],\r
+       "sienna": [160, 82, 45],\r
+       "silver": [192, 192, 192],\r
+       "skyblue": [135, 206, 235],\r
+       "slateblue": [106, 90, 205],\r
+       "slategray": [112, 128, 144],\r
+       "slategrey": [112, 128, 144],\r
+       "snow": [255, 250, 250],\r
+       "springgreen": [0, 255, 127],\r
+       "steelblue": [70, 130, 180],\r
+       "tan": [210, 180, 140],\r
+       "teal": [0, 128, 128],\r
+       "thistle": [216, 191, 216],\r
+       "tomato": [255, 99, 71],\r
+       "turquoise": [64, 224, 208],\r
+       "violet": [238, 130, 238],\r
+       "wheat": [245, 222, 179],\r
+       "white": [255, 255, 255],\r
+       "whitesmoke": [245, 245, 245],\r
+       "yellow": [255, 255, 0],\r
+       "yellowgreen": [154, 205, 50]\r
+};\r
diff --git a/wrt/build/node_modules/color-name/package.json b/wrt/build/node_modules/color-name/package.json
new file mode 100644 (file)
index 0000000..96543cd
--- /dev/null
@@ -0,0 +1,90 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "color-name@^1.1.1",
+        "scope": null,
+        "escapedName": "color-name",
+        "name": "color-name",
+        "rawSpec": "^1.1.1",
+        "spec": ">=1.1.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/color-convert"
+    ]
+  ],
+  "_from": "color-name@>=1.1.1 <2.0.0",
+  "_id": "color-name@1.1.3",
+  "_inCache": true,
+  "_location": "/color-name",
+  "_nodeVersion": "8.1.2",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/color-name-1.1.3.tgz_1500157027207_0.5641644957941025"
+  },
+  "_npmUser": {
+    "name": "dfcreative",
+    "email": "df.creative@gmail.com"
+  },
+  "_npmVersion": "4.6.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "color-name@^1.1.1",
+    "scope": null,
+    "escapedName": "color-name",
+    "name": "color-name",
+    "rawSpec": "^1.1.1",
+    "spec": ">=1.1.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/color-convert"
+  ],
+  "_resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+  "_shasum": "a7d0558bd89c42f795dd42328f740831ca53bc25",
+  "_shrinkwrap": null,
+  "_spec": "color-name@^1.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/color-convert",
+  "author": {
+    "name": "DY",
+    "email": "dfcreative@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/dfcreative/color-name/issues"
+  },
+  "dependencies": {},
+  "description": "A list of color names and its values",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "a7d0558bd89c42f795dd42328f740831ca53bc25",
+    "tarball": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
+  },
+  "gitHead": "cb7d4629b00fe38564f741a0779f6ad84d8007a2",
+  "homepage": "https://github.com/dfcreative/color-name",
+  "keywords": [
+    "color-name",
+    "color",
+    "color-keyword",
+    "keyword"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "dfcreative",
+      "email": "df.creative@gmail.com"
+    }
+  ],
+  "name": "color-name",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/dfcreative/color-name.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.1.3"
+}
diff --git a/wrt/build/node_modules/color-name/test.js b/wrt/build/node_modules/color-name/test.js
new file mode 100644 (file)
index 0000000..6e6bf30
--- /dev/null
@@ -0,0 +1,7 @@
+'use strict'\r
+\r
+var names = require('./');\r
+var assert = require('assert');\r
+\r
+assert.deepEqual(names.red, [255,0,0]);\r
+assert.deepEqual(names.aliceblue, [240,248,255]);\r
diff --git a/wrt/build/node_modules/debug/.coveralls.yml b/wrt/build/node_modules/debug/.coveralls.yml
new file mode 100644 (file)
index 0000000..20a7068
--- /dev/null
@@ -0,0 +1 @@
+repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
diff --git a/wrt/build/node_modules/debug/.eslintrc b/wrt/build/node_modules/debug/.eslintrc
new file mode 100644 (file)
index 0000000..8a37ae2
--- /dev/null
@@ -0,0 +1,11 @@
+{
+  "env": {
+    "browser": true,
+    "node": true
+  },
+  "rules": {
+    "no-console": 0,
+    "no-empty": [1, { "allowEmptyCatch": true }]
+  },
+  "extends": "eslint:recommended"
+}
diff --git a/wrt/build/node_modules/debug/.npmignore b/wrt/build/node_modules/debug/.npmignore
new file mode 100644 (file)
index 0000000..5f60eec
--- /dev/null
@@ -0,0 +1,9 @@
+support
+test
+examples
+example
+*.sock
+dist
+yarn.lock
+coverage
+bower.json
diff --git a/wrt/build/node_modules/debug/.travis.yml b/wrt/build/node_modules/debug/.travis.yml
new file mode 100644 (file)
index 0000000..6c6090c
--- /dev/null
@@ -0,0 +1,14 @@
+
+language: node_js
+node_js:
+  - "6"
+  - "5"
+  - "4"
+
+install:
+  - make node_modules
+
+script:
+  - make lint
+  - make test
+  - make coveralls
diff --git a/wrt/build/node_modules/debug/CHANGELOG.md b/wrt/build/node_modules/debug/CHANGELOG.md
new file mode 100644 (file)
index 0000000..a1a270c
--- /dev/null
@@ -0,0 +1,357 @@
+
+2.6.8 / 2017-05-18
+==================
+
+  * Fix: Check for undefined on browser globals (#462, @marbemac)
+
+2.6.7 / 2017-05-16
+==================
+
+  * Fix: Update ms to 2.0.0 to fix regular expression denial of service vulnerability (#458, @hubdotcom)
+  * Fix: Inline extend function in node implementation (#452, @dougwilson)
+  * Docs: Fix typo (#455, @msasad)
+
+2.6.5 / 2017-04-27
+==================
+  
+  * Fix: null reference check on window.documentElement.style.WebkitAppearance (#447, @thebigredgeek)
+  * Misc: clean up browser reference checks (#447, @thebigredgeek)
+  * Misc: add npm-debug.log to .gitignore (@thebigredgeek)
+
+
+2.6.4 / 2017-04-20
+==================
+
+  * Fix: bug that would occure if process.env.DEBUG is a non-string value. (#444, @LucianBuzzo)
+  * Chore: ignore bower.json in npm installations. (#437, @joaovieira)
+  * Misc: update "ms" to v0.7.3 (@tootallnate)
+
+2.6.3 / 2017-03-13
+==================
+
+  * Fix: Electron reference to `process.env.DEBUG` (#431, @paulcbetts)
+  * Docs: Changelog fix (@thebigredgeek)
+
+2.6.2 / 2017-03-10
+==================
+
+  * Fix: DEBUG_MAX_ARRAY_LENGTH (#420, @slavaGanzin)
+  * Docs: Add backers and sponsors from Open Collective (#422, @piamancini)
+  * Docs: Add Slackin invite badge (@tootallnate)
+
+2.6.1 / 2017-02-10
+==================
+
+  * Fix: Module's `export default` syntax fix for IE8 `Expected identifier` error
+  * Fix: Whitelist DEBUG_FD for values 1 and 2 only (#415, @pi0)
+  * Fix: IE8 "Expected identifier" error (#414, @vgoma)
+  * Fix: Namespaces would not disable once enabled (#409, @musikov)
+
+2.6.0 / 2016-12-28
+==================
+
+  * Fix: added better null pointer checks for browser useColors (@thebigredgeek)
+  * Improvement: removed explicit `window.debug` export (#404, @tootallnate)
+  * Improvement: deprecated `DEBUG_FD` environment variable (#405, @tootallnate)
+
+2.5.2 / 2016-12-25
+==================
+
+  * Fix: reference error on window within webworkers (#393, @KlausTrainer)
+  * Docs: fixed README typo (#391, @lurch)
+  * Docs: added notice about v3 api discussion (@thebigredgeek)
+
+2.5.1 / 2016-12-20
+==================
+
+  * Fix: babel-core compatibility
+
+2.5.0 / 2016-12-20
+==================
+
+  * Fix: wrong reference in bower file (@thebigredgeek)
+  * Fix: webworker compatibility (@thebigredgeek)
+  * Fix: output formatting issue (#388, @kribblo)
+  * Fix: babel-loader compatibility (#383, @escwald)
+  * Misc: removed built asset from repo and publications (@thebigredgeek)
+  * Misc: moved source files to /src (#378, @yamikuronue)
+  * Test: added karma integration and replaced babel with browserify for browser tests (#378, @yamikuronue)
+  * Test: coveralls integration (#378, @yamikuronue)
+  * Docs: simplified language in the opening paragraph (#373, @yamikuronue)
+
+2.4.5 / 2016-12-17
+==================
+
+  * Fix: `navigator` undefined in Rhino (#376, @jochenberger)
+  * Fix: custom log function (#379, @hsiliev)
+  * Improvement: bit of cleanup + linting fixes (@thebigredgeek)
+  * Improvement: rm non-maintainted `dist/` dir (#375, @freewil)
+  * Docs: simplified language in the opening paragraph. (#373, @yamikuronue)
+
+2.4.4 / 2016-12-14
+==================
+
+  * Fix: work around debug being loaded in preload scripts for electron (#368, @paulcbetts)
+
+2.4.3 / 2016-12-14
+==================
+
+  * Fix: navigation.userAgent error for react native (#364, @escwald)
+
+2.4.2 / 2016-12-14
+==================
+
+  * Fix: browser colors (#367, @tootallnate)
+  * Misc: travis ci integration (@thebigredgeek)
+  * Misc: added linting and testing boilerplate with sanity check (@thebigredgeek)
+
+2.4.1 / 2016-12-13
+==================
+
+  * Fix: typo that broke the package (#356)
+
+2.4.0 / 2016-12-13
+==================
+
+  * Fix: bower.json references unbuilt src entry point (#342, @justmatt)
+  * Fix: revert "handle regex special characters" (@tootallnate)
+  * Feature: configurable util.inspect()`options for NodeJS (#327, @tootallnate)
+  * Feature: %O`(big O) pretty-prints objects (#322, @tootallnate)
+  * Improvement: allow colors in workers (#335, @botverse)
+  * Improvement: use same color for same namespace. (#338, @lchenay)
+
+2.3.3 / 2016-11-09
+==================
+
+  * Fix: Catch `JSON.stringify()` errors (#195, Jovan Alleyne)
+  * Fix: Returning `localStorage` saved values (#331, Levi Thomason)
+  * Improvement: Don't create an empty object when no `process` (Nathan Rajlich)
+
+2.3.2 / 2016-11-09
+==================
+
+  * Fix: be super-safe in index.js as well (@TooTallNate)
+  * Fix: should check whether process exists (Tom Newby)
+
+2.3.1 / 2016-11-09
+==================
+
+  * Fix: Added electron compatibility (#324, @paulcbetts)
+  * Improvement: Added performance optimizations (@tootallnate)
+  * Readme: Corrected PowerShell environment variable example (#252, @gimre)
+  * Misc: Removed yarn lock file from source control (#321, @fengmk2)
+
+2.3.0 / 2016-11-07
+==================
+
+  * Fix: Consistent placement of ms diff at end of output (#215, @gorangajic)
+  * Fix: Escaping of regex special characters in namespace strings (#250, @zacronos)
+  * Fix: Fixed bug causing crash on react-native (#282, @vkarpov15)
+  * Feature: Enabled ES6+ compatible import via default export (#212 @bucaran)
+  * Feature: Added %O formatter to reflect Chrome's console.log capability (#279, @oncletom)
+  * Package: Update "ms" to 0.7.2 (#315, @DevSide)
+  * Package: removed superfluous version property from bower.json (#207 @kkirsche)
+  * Readme: fix USE_COLORS to DEBUG_COLORS
+  * Readme: Doc fixes for format string sugar (#269, @mlucool)
+  * Readme: Updated docs for DEBUG_FD and DEBUG_COLORS environment variables (#232, @mattlyons0)
+  * Readme: doc fixes for PowerShell (#271 #243, @exoticknight @unreadable)
+  * Readme: better docs for browser support (#224, @matthewmueller)
+  * Tooling: Added yarn integration for development (#317, @thebigredgeek)
+  * Misc: Renamed History.md to CHANGELOG.md (@thebigredgeek)
+  * Misc: Added license file (#226 #274, @CantemoInternal @sdaitzman)
+  * Misc: Updated contributors (@thebigredgeek)
+
+2.2.0 / 2015-05-09
+==================
+
+  * package: update "ms" to v0.7.1 (#202, @dougwilson)
+  * README: add logging to file example (#193, @DanielOchoa)
+  * README: fixed a typo (#191, @amir-s)
+  * browser: expose `storage` (#190, @stephenmathieson)
+  * Makefile: add a `distclean` target (#189, @stephenmathieson)
+
+2.1.3 / 2015-03-13
+==================
+
+  * Updated stdout/stderr example (#186)
+  * Updated example/stdout.js to match debug current behaviour
+  * Renamed example/stderr.js to stdout.js
+  * Update Readme.md (#184)
+  * replace high intensity foreground color for bold (#182, #183)
+
+2.1.2 / 2015-03-01
+==================
+
+  * dist: recompile
+  * update "ms" to v0.7.0
+  * package: update "browserify" to v9.0.3
+  * component: fix "ms.js" repo location
+  * changed bower package name
+  * updated documentation about using debug in a browser
+  * fix: security error on safari (#167, #168, @yields)
+
+2.1.1 / 2014-12-29
+==================
+
+  * browser: use `typeof` to check for `console` existence
+  * browser: check for `console.log` truthiness (fix IE 8/9)
+  * browser: add support for Chrome apps
+  * Readme: added Windows usage remarks
+  * Add `bower.json` to properly support bower install
+
+2.1.0 / 2014-10-15
+==================
+
+  * node: implement `DEBUG_FD` env variable support
+  * package: update "browserify" to v6.1.0
+  * package: add "license" field to package.json (#135, @panuhorsmalahti)
+
+2.0.0 / 2014-09-01
+==================
+
+  * package: update "browserify" to v5.11.0
+  * node: use stderr rather than stdout for logging (#29, @stephenmathieson)
+
+1.0.4 / 2014-07-15
+==================
+
+  * dist: recompile
+  * example: remove `console.info()` log usage
+  * example: add "Content-Type" UTF-8 header to browser example
+  * browser: place %c marker after the space character
+  * browser: reset the "content" color via `color: inherit`
+  * browser: add colors support for Firefox >= v31
+  * debug: prefer an instance `log()` function over the global one (#119)
+  * Readme: update documentation about styled console logs for FF v31 (#116, @wryk)
+
+1.0.3 / 2014-07-09
+==================
+
+  * Add support for multiple wildcards in namespaces (#122, @seegno)
+  * browser: fix lint
+
+1.0.2 / 2014-06-10
+==================
+
+  * browser: update color palette (#113, @gscottolson)
+  * common: make console logging function configurable (#108, @timoxley)
+  * node: fix %o colors on old node <= 0.8.x
+  * Makefile: find node path using shell/which (#109, @timoxley)
+
+1.0.1 / 2014-06-06
+==================
+
+  * browser: use `removeItem()` to clear localStorage
+  * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777)
+  * package: add "contributors" section
+  * node: fix comment typo
+  * README: list authors
+
+1.0.0 / 2014-06-04
+==================
+
+  * make ms diff be global, not be scope
+  * debug: ignore empty strings in enable()
+  * node: make DEBUG_COLORS able to disable coloring
+  * *: export the `colors` array
+  * npmignore: don't publish the `dist` dir
+  * Makefile: refactor to use browserify
+  * package: add "browserify" as a dev dependency
+  * Readme: add Web Inspector Colors section
+  * node: reset terminal color for the debug content
+  * node: map "%o" to `util.inspect()`
+  * browser: map "%j" to `JSON.stringify()`
+  * debug: add custom "formatters"
+  * debug: use "ms" module for humanizing the diff
+  * Readme: add "bash" syntax highlighting
+  * browser: add Firebug color support
+  * browser: add colors for WebKit browsers
+  * node: apply log to `console`
+  * rewrite: abstract common logic for Node & browsers
+  * add .jshintrc file
+
+0.8.1 / 2014-04-14
+==================
+
+  * package: re-add the "component" section
+
+0.8.0 / 2014-03-30
+==================
+
+  * add `enable()` method for nodejs. Closes #27
+  * change from stderr to stdout
+  * remove unnecessary index.js file
+
+0.7.4 / 2013-11-13
+==================
+
+  * remove "browserify" key from package.json (fixes something in browserify)
+
+0.7.3 / 2013-10-30
+==================
+
+  * fix: catch localStorage security error when cookies are blocked (Chrome)
+  * add debug(err) support. Closes #46
+  * add .browser prop to package.json. Closes #42
+
+0.7.2 / 2013-02-06
+==================
+
+  * fix package.json
+  * fix: Mobile Safari (private mode) is broken with debug
+  * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript
+
+0.7.1 / 2013-02-05
+==================
+
+  * add repository URL to package.json
+  * add DEBUG_COLORED to force colored output
+  * add browserify support
+  * fix component. Closes #24
+
+0.7.0 / 2012-05-04
+==================
+
+  * Added .component to package.json
+  * Added debug.component.js build
+
+0.6.0 / 2012-03-16
+==================
+
+  * Added support for "-" prefix in DEBUG [Vinay Pulim]
+  * Added `.enabled` flag to the node version [TooTallNate]
+
+0.5.0 / 2012-02-02
+==================
+
+  * Added: humanize diffs. Closes #8
+  * Added `debug.disable()` to the CS variant
+  * Removed padding. Closes #10
+  * Fixed: persist client-side variant again. Closes #9
+
+0.4.0 / 2012-02-01
+==================
+
+  * Added browser variant support for older browsers [TooTallNate]
+  * Added `debug.enable('project:*')` to browser variant [TooTallNate]
+  * Added padding to diff (moved it to the right)
+
+0.3.0 / 2012-01-26
+==================
+
+  * Added millisecond diff when isatty, otherwise UTC string
+
+0.2.0 / 2012-01-22
+==================
+
+  * Added wildcard support
+
+0.1.0 / 2011-12-02
+==================
+
+  * Added: remove colors unless stderr isatty [TooTallNate]
+
+0.0.1 / 2010-01-03
+==================
+
+  * Initial release
diff --git a/wrt/build/node_modules/debug/LICENSE b/wrt/build/node_modules/debug/LICENSE
new file mode 100644 (file)
index 0000000..658c933
--- /dev/null
@@ -0,0 +1,19 @@
+(The MIT License)
+
+Copyright (c) 2014 TJ Holowaychuk <tj@vision-media.ca>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
+and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial 
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
diff --git a/wrt/build/node_modules/debug/Makefile b/wrt/build/node_modules/debug/Makefile
new file mode 100644 (file)
index 0000000..584da8b
--- /dev/null
@@ -0,0 +1,50 @@
+# get Makefile directory name: http://stackoverflow.com/a/5982798/376773
+THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
+THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
+
+# BIN directory
+BIN := $(THIS_DIR)/node_modules/.bin
+
+# Path
+PATH := node_modules/.bin:$(PATH)
+SHELL := /bin/bash
+
+# applications
+NODE ?= $(shell which node)
+YARN ?= $(shell which yarn)
+PKG ?= $(if $(YARN),$(YARN),$(NODE) $(shell which npm))
+BROWSERIFY ?= $(NODE) $(BIN)/browserify
+
+.FORCE:
+
+install: node_modules
+
+node_modules: package.json
+       @NODE_ENV= $(PKG) install
+       @touch node_modules
+
+lint: .FORCE
+       eslint browser.js debug.js index.js node.js
+
+test-node: .FORCE
+       istanbul cover node_modules/mocha/bin/_mocha -- test/**.js
+
+test-browser: .FORCE
+       mkdir -p dist
+
+       @$(BROWSERIFY) \
+               --standalone debug \
+               . > dist/debug.js
+
+       karma start --single-run
+       rimraf dist
+
+test: .FORCE
+       concurrently \
+               "make test-node" \
+               "make test-browser"
+
+coveralls:
+       cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js
+
+.PHONY: all install clean distclean
diff --git a/wrt/build/node_modules/debug/README.md b/wrt/build/node_modules/debug/README.md
new file mode 100644 (file)
index 0000000..f67be6b
--- /dev/null
@@ -0,0 +1,312 @@
+# debug
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers) 
+[![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
+
+
+
+A tiny node.js debugging utility modelled after node core's debugging technique.
+
+**Discussion around the V3 API is under way [here](https://github.com/visionmedia/debug/issues/370)**
+
+## Installation
+
+```bash
+$ npm install debug
+```
+
+## Usage
+
+`debug` exposes a function; simply pass this function the name of your module, and it will return a decorated version of `console.error` for you to pass debug statements to. This will allow you to toggle the debug output for different parts of your module as well as the module as a whole.
+
+Example _app.js_:
+
+```js
+var debug = require('debug')('http')
+  , http = require('http')
+  , name = 'My App';
+
+// fake app
+
+debug('booting %s', name);
+
+http.createServer(function(req, res){
+  debug(req.method + ' ' + req.url);
+  res.end('hello\n');
+}).listen(3000, function(){
+  debug('listening');
+});
+
+// fake worker of some kind
+
+require('./worker');
+```
+
+Example _worker.js_:
+
+```js
+var debug = require('debug')('worker');
+
+setInterval(function(){
+  debug('doing some work');
+}, 1000);
+```
+
+ The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:
+
+  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)
+
+  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)
+
+#### Windows note
+
+ On Windows the environment variable is set using the `set` command.
+
+ ```cmd
+ set DEBUG=*,-not_this
+ ```
+
+ Note that PowerShell uses different syntax to set environment variables.
+
+ ```cmd
+ $env:DEBUG = "*,-not_this"
+  ```
+
+Then, run the program to be debugged as usual.
+
+## Millisecond diff
+
+  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
+
+  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
+
+  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
+
+  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
+
+## Conventions
+
+  If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".
+
+## Wildcards
+
+  The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect:compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
+
+  You can also exclude specific debuggers by prefixing them with a "-" character.  For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:".
+
+## Environment Variables
+
+  When running through Node.js, you can set a few environment variables that will
+  change the behavior of the debug logging:
+
+| Name      | Purpose                                         |
+|-----------|-------------------------------------------------|
+| `DEBUG`   | Enables/disables specific debugging namespaces. |
+| `DEBUG_COLORS`| Whether or not to use colors in the debug output. |
+| `DEBUG_DEPTH` | Object inspection depth. |
+| `DEBUG_SHOW_HIDDEN` | Shows hidden properties on inspected objects. |
+
+
+  __Note:__ The environment variables beginning with `DEBUG_` end up being
+  converted into an Options object that gets used with `%o`/`%O` formatters.
+  See the Node.js documentation for
+  [`util.inspect()`](https://nodejs.org/api/util.html#util_util_inspect_object_options)
+  for the complete list.
+
+## Formatters
+
+
+  Debug uses [printf-style](https://wikipedia.org/wiki/Printf_format_string) formatting. Below are the officially supported formatters:
+
+| Formatter | Representation |
+|-----------|----------------|
+| `%O`      | Pretty-print an Object on multiple lines. |
+| `%o`      | Pretty-print an Object all on a single line. |
+| `%s`      | String. |
+| `%d`      | Number (both integer and float). |
+| `%j`      | JSON. Replaced with the string '[Circular]' if the argument contains circular references. |
+| `%%`      | Single percent sign ('%'). This does not consume an argument. |
+
+### Custom formatters
+
+  You can add custom formatters by extending the `debug.formatters` object. For example, if you wanted to add support for rendering a Buffer as hex with `%h`, you could do something like:
+
+```js
+const createDebug = require('debug')
+createDebug.formatters.h = (v) => {
+  return v.toString('hex')
+}
+
+// …elsewhere
+const debug = createDebug('foo')
+debug('this is hex: %h', new Buffer('hello world'))
+//   foo this is hex: 68656c6c6f20776f726c6421 +0ms
+```
+
+## Browser support
+  You can build a browser-ready script using [browserify](https://github.com/substack/node-browserify),
+  or just use the [browserify-as-a-service](https://wzrd.in/) [build](https://wzrd.in/standalone/debug@latest),
+  if you don't want to build it yourself.
+
+  Debug's enable state is currently persisted by `localStorage`.
+  Consider the situation shown below where you have `worker:a` and `worker:b`,
+  and wish to debug both. You can enable this using `localStorage.debug`:
+
+```js
+localStorage.debug = 'worker:*'
+```
+
+And then refresh the page.
+
+```js
+a = debug('worker:a');
+b = debug('worker:b');
+
+setInterval(function(){
+  a('doing some work');
+}, 1000);
+
+setInterval(function(){
+  b('doing some work');
+}, 1200);
+```
+
+#### Web Inspector Colors
+
+  Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
+  option. These are WebKit web inspectors, Firefox ([since version
+  31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
+  and the Firebug plugin for Firefox (any version).
+
+  Colored output looks something like:
+
+  ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png)
+
+
+## Output streams
+
+  By default `debug` will log to stderr, however this can be configured per-namespace by overriding the `log` method:
+
+Example _stdout.js_:
+
+```js
+var debug = require('debug');
+var error = debug('app:error');
+
+// by default stderr is used
+error('goes to stderr!');
+
+var log = debug('app:log');
+// set this namespace to log via console.log
+log.log = console.log.bind(console); // don't forget to bind to console!
+log('goes to stdout');
+error('still goes to stderr!');
+
+// set all output to go via console.info
+// overrides all per-namespace log settings
+debug.log = console.info.bind(console);
+error('now goes to stdout via console.info');
+log('still goes to stdout, but via console.info now');
+```
+
+
+## Authors
+
+ - TJ Holowaychuk
+ - Nathan Rajlich
+ - Andrew Rhyne
+## Backers
+
+Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/debug#backer)]
+
+<a href="https://opencollective.com/debug/backer/0/website" target="_blank"><img src="https://opencollective.com/debug/backer/0/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/1/website" target="_blank"><img src="https://opencollective.com/debug/backer/1/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/2/website" target="_blank"><img src="https://opencollective.com/debug/backer/2/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/3/website" target="_blank"><img src="https://opencollective.com/debug/backer/3/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/4/website" target="_blank"><img src="https://opencollective.com/debug/backer/4/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/5/website" target="_blank"><img src="https://opencollective.com/debug/backer/5/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/6/website" target="_blank"><img src="https://opencollective.com/debug/backer/6/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/7/website" target="_blank"><img src="https://opencollective.com/debug/backer/7/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/8/website" target="_blank"><img src="https://opencollective.com/debug/backer/8/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/9/website" target="_blank"><img src="https://opencollective.com/debug/backer/9/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/10/website" target="_blank"><img src="https://opencollective.com/debug/backer/10/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/11/website" target="_blank"><img src="https://opencollective.com/debug/backer/11/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/12/website" target="_blank"><img src="https://opencollective.com/debug/backer/12/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/13/website" target="_blank"><img src="https://opencollective.com/debug/backer/13/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/14/website" target="_blank"><img src="https://opencollective.com/debug/backer/14/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/15/website" target="_blank"><img src="https://opencollective.com/debug/backer/15/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/16/website" target="_blank"><img src="https://opencollective.com/debug/backer/16/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/17/website" target="_blank"><img src="https://opencollective.com/debug/backer/17/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/18/website" target="_blank"><img src="https://opencollective.com/debug/backer/18/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/19/website" target="_blank"><img src="https://opencollective.com/debug/backer/19/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/20/website" target="_blank"><img src="https://opencollective.com/debug/backer/20/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/21/website" target="_blank"><img src="https://opencollective.com/debug/backer/21/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/22/website" target="_blank"><img src="https://opencollective.com/debug/backer/22/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/23/website" target="_blank"><img src="https://opencollective.com/debug/backer/23/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/24/website" target="_blank"><img src="https://opencollective.com/debug/backer/24/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/25/website" target="_blank"><img src="https://opencollective.com/debug/backer/25/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/26/website" target="_blank"><img src="https://opencollective.com/debug/backer/26/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/27/website" target="_blank"><img src="https://opencollective.com/debug/backer/27/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/28/website" target="_blank"><img src="https://opencollective.com/debug/backer/28/avatar.svg"></a>
+<a href="https://opencollective.com/debug/backer/29/website" target="_blank"><img src="https://opencollective.com/debug/backer/29/avatar.svg"></a>
+
+
+## Sponsors
+
+Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/debug#sponsor)]
+
+<a href="https://opencollective.com/debug/sponsor/0/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/0/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/1/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/1/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/2/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/2/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/3/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/3/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/4/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/4/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/5/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/5/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/6/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/6/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/7/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/7/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/8/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/8/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/9/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/9/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/10/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/10/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/11/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/11/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/12/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/12/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/13/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/13/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/14/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/14/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/15/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/15/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/16/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/16/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/17/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/17/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/18/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/18/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/19/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/19/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/20/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/20/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/21/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/21/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/22/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/22/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/23/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/23/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/24/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/24/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/25/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/25/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/26/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/26/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/27/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/27/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/28/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/28/avatar.svg"></a>
+<a href="https://opencollective.com/debug/sponsor/29/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/29/avatar.svg"></a>
+
+## License
+
+(The MIT License)
+
+Copyright (c) 2014-2016 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+'Software'), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/debug/component.json b/wrt/build/node_modules/debug/component.json
new file mode 100644 (file)
index 0000000..94cd36d
--- /dev/null
@@ -0,0 +1,19 @@
+{
+  "name": "debug",
+  "repo": "visionmedia/debug",
+  "description": "small debugging utility",
+  "version": "2.6.8",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "main": "src/browser.js",
+  "scripts": [
+    "src/browser.js",
+    "src/debug.js"
+  ],
+  "dependencies": {
+    "rauchg/ms.js": "0.7.1"
+  }
+}
diff --git a/wrt/build/node_modules/debug/karma.conf.js b/wrt/build/node_modules/debug/karma.conf.js
new file mode 100644 (file)
index 0000000..103a82d
--- /dev/null
@@ -0,0 +1,70 @@
+// Karma configuration
+// Generated on Fri Dec 16 2016 13:09:51 GMT+0000 (UTC)
+
+module.exports = function(config) {
+  config.set({
+
+    // base path that will be used to resolve all patterns (eg. files, exclude)
+    basePath: '',
+
+
+    // frameworks to use
+    // available frameworks: https://npmjs.org/browse/keyword/karma-adapter
+    frameworks: ['mocha', 'chai', 'sinon'],
+
+
+    // list of files / patterns to load in the browser
+    files: [
+      'dist/debug.js',
+      'test/*spec.js'
+    ],
+
+
+    // list of files to exclude
+    exclude: [
+      'src/node.js'
+    ],
+
+
+    // preprocess matching files before serving them to the browser
+    // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
+    preprocessors: {
+    },
+
+    // test results reporter to use
+    // possible values: 'dots', 'progress'
+    // available reporters: https://npmjs.org/browse/keyword/karma-reporter
+    reporters: ['progress'],
+
+
+    // web server port
+    port: 9876,
+
+
+    // enable / disable colors in the output (reporters and logs)
+    colors: true,
+
+
+    // level of logging
+    // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
+    logLevel: config.LOG_INFO,
+
+
+    // enable / disable watching file and executing tests whenever any file changes
+    autoWatch: true,
+
+
+    // start these browsers
+    // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
+    browsers: ['PhantomJS'],
+
+
+    // Continuous Integration mode
+    // if true, Karma captures browsers, runs the tests and exits
+    singleRun: false,
+
+    // Concurrency level
+    // how many browser should be started simultaneous
+    concurrency: Infinity
+  })
+}
diff --git a/wrt/build/node_modules/debug/node.js b/wrt/build/node_modules/debug/node.js
new file mode 100644 (file)
index 0000000..7fc36fe
--- /dev/null
@@ -0,0 +1 @@
+module.exports = require('./src/node');
diff --git a/wrt/build/node_modules/debug/package.json b/wrt/build/node_modules/debug/package.json
new file mode 100644 (file)
index 0000000..9c32298
--- /dev/null
@@ -0,0 +1,127 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "debug@^2.1.1",
+        "scope": null,
+        "escapedName": "debug",
+        "name": "debug",
+        "rawSpec": "^2.1.1",
+        "spec": ">=2.1.1 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "debug@>=2.1.1 <3.0.0",
+  "_id": "debug@2.6.8",
+  "_inCache": true,
+  "_location": "/debug",
+  "_nodeVersion": "7.10.0",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/debug-2.6.8.tgz_1495138020906_0.5965513256378472"
+  },
+  "_npmUser": {
+    "name": "tootallnate",
+    "email": "nathan@tootallnate.net"
+  },
+  "_npmVersion": "4.2.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "debug@^2.1.1",
+    "scope": null,
+    "escapedName": "debug",
+    "name": "debug",
+    "rawSpec": "^2.1.1",
+    "spec": ">=2.1.1 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint",
+    "/rocambole-indent",
+    "/rocambole-linebreak",
+    "/rocambole-whitespace"
+  ],
+  "_resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
+  "_shasum": "e731531ca2ede27d188222427da17821d68ff4fc",
+  "_shrinkwrap": null,
+  "_spec": "debug@^2.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "browser": "./src/browser.js",
+  "bugs": {
+    "url": "https://github.com/visionmedia/debug/issues"
+  },
+  "component": {
+    "scripts": {
+      "debug/index.js": "browser.js",
+      "debug/debug.js": "debug.js"
+    }
+  },
+  "contributors": [
+    {
+      "name": "Nathan Rajlich",
+      "email": "nathan@tootallnate.net",
+      "url": "http://n8.io"
+    },
+    {
+      "name": "Andrew Rhyne",
+      "email": "rhyneandrew@gmail.com"
+    }
+  ],
+  "dependencies": {
+    "ms": "2.0.0"
+  },
+  "description": "small debugging utility",
+  "devDependencies": {
+    "browserify": "9.0.3",
+    "chai": "^3.5.0",
+    "concurrently": "^3.1.0",
+    "coveralls": "^2.11.15",
+    "eslint": "^3.12.1",
+    "istanbul": "^0.4.5",
+    "karma": "^1.3.0",
+    "karma-chai": "^0.1.0",
+    "karma-mocha": "^1.3.0",
+    "karma-phantomjs-launcher": "^1.0.2",
+    "karma-sinon": "^1.0.5",
+    "mocha": "^3.2.0",
+    "mocha-lcov-reporter": "^1.2.0",
+    "rimraf": "^2.5.4",
+    "sinon": "^1.17.6",
+    "sinon-chai": "^2.8.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "e731531ca2ede27d188222427da17821d68ff4fc",
+    "tarball": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz"
+  },
+  "gitHead": "52e1f21284322f167839e5d3a60f635c8b2dc842",
+  "homepage": "https://github.com/visionmedia/debug#readme",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "license": "MIT",
+  "main": "./src/index.js",
+  "maintainers": [
+    {
+      "name": "thebigredgeek",
+      "email": "rhyneandrew@gmail.com"
+    }
+  ],
+  "name": "debug",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/visionmedia/debug.git"
+  },
+  "scripts": {},
+  "version": "2.6.8"
+}
diff --git a/wrt/build/node_modules/debug/src/browser.js b/wrt/build/node_modules/debug/src/browser.js
new file mode 100644 (file)
index 0000000..7106924
--- /dev/null
@@ -0,0 +1,185 @@
+/**
+ * This is the web browser implementation of `debug()`.
+ *
+ * Expose `debug()` as the module.
+ */
+
+exports = module.exports = require('./debug');
+exports.log = log;
+exports.formatArgs = formatArgs;
+exports.save = save;
+exports.load = load;
+exports.useColors = useColors;
+exports.storage = 'undefined' != typeof chrome
+               && 'undefined' != typeof chrome.storage
+                  ? chrome.storage.local
+                  : localstorage();
+
+/**
+ * Colors.
+ */
+
+exports.colors = [
+  'lightseagreen',
+  'forestgreen',
+  'goldenrod',
+  'dodgerblue',
+  'darkorchid',
+  'crimson'
+];
+
+/**
+ * Currently only WebKit-based Web Inspectors, Firefox >= v31,
+ * and the Firebug extension (any Firefox version) are known
+ * to support "%c" CSS customizations.
+ *
+ * TODO: add a `localStorage` variable to explicitly enable/disable colors
+ */
+
+function useColors() {
+  // NB: In an Electron preload script, document will be defined but not fully
+  // initialized. Since we know we're in Chrome, we'll just detect this case
+  // explicitly
+  if (typeof window !== 'undefined' && window.process && window.process.type === 'renderer') {
+    return true;
+  }
+
+  // is webkit? http://stackoverflow.com/a/16459606/376773
+  // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
+  return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
+    // is firebug? http://stackoverflow.com/a/398120/376773
+    (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
+    // is firefox >= v31?
+    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
+    (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
+    // double check webkit in userAgent just in case we are in a worker
+    (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
+}
+
+/**
+ * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
+ */
+
+exports.formatters.j = function(v) {
+  try {
+    return JSON.stringify(v);
+  } catch (err) {
+    return '[UnexpectedJSONParseError]: ' + err.message;
+  }
+};
+
+
+/**
+ * Colorize log arguments if enabled.
+ *
+ * @api public
+ */
+
+function formatArgs(args) {
+  var useColors = this.useColors;
+
+  args[0] = (useColors ? '%c' : '')
+    + this.namespace
+    + (useColors ? ' %c' : ' ')
+    + args[0]
+    + (useColors ? '%c ' : ' ')
+    + '+' + exports.humanize(this.diff);
+
+  if (!useColors) return;
+
+  var c = 'color: ' + this.color;
+  args.splice(1, 0, c, 'color: inherit')
+
+  // the final "%c" is somewhat tricky, because there could be other
+  // arguments passed either before or after the %c, so we need to
+  // figure out the correct index to insert the CSS into
+  var index = 0;
+  var lastC = 0;
+  args[0].replace(/%[a-zA-Z%]/g, function(match) {
+    if ('%%' === match) return;
+    index++;
+    if ('%c' === match) {
+      // we only are interested in the *last* %c
+      // (the user may have provided their own)
+      lastC = index;
+    }
+  });
+
+  args.splice(lastC, 0, c);
+}
+
+/**
+ * Invokes `console.log()` when available.
+ * No-op when `console.log` is not a "function".
+ *
+ * @api public
+ */
+
+function log() {
+  // this hackery is required for IE8/9, where
+  // the `console.log` function doesn't have 'apply'
+  return 'object' === typeof console
+    && console.log
+    && Function.prototype.apply.call(console.log, console, arguments);
+}
+
+/**
+ * Save `namespaces`.
+ *
+ * @param {String} namespaces
+ * @api private
+ */
+
+function save(namespaces) {
+  try {
+    if (null == namespaces) {
+      exports.storage.removeItem('debug');
+    } else {
+      exports.storage.debug = namespaces;
+    }
+  } catch(e) {}
+}
+
+/**
+ * Load `namespaces`.
+ *
+ * @return {String} returns the previously persisted debug modes
+ * @api private
+ */
+
+function load() {
+  var r;
+  try {
+    r = exports.storage.debug;
+  } catch(e) {}
+
+  // If debug isn't set in LS, and we're in Electron, try to load $DEBUG
+  if (!r && typeof process !== 'undefined' && 'env' in process) {
+    r = process.env.DEBUG;
+  }
+
+  return r;
+}
+
+/**
+ * Enable namespaces listed in `localStorage.debug` initially.
+ */
+
+exports.enable(load());
+
+/**
+ * Localstorage attempts to return the localstorage.
+ *
+ * This is necessary because safari throws
+ * when a user disables cookies/localstorage
+ * and you attempt to access it.
+ *
+ * @return {LocalStorage}
+ * @api private
+ */
+
+function localstorage() {
+  try {
+    return window.localStorage;
+  } catch (e) {}
+}
diff --git a/wrt/build/node_modules/debug/src/debug.js b/wrt/build/node_modules/debug/src/debug.js
new file mode 100644 (file)
index 0000000..6a5e3fc
--- /dev/null
@@ -0,0 +1,202 @@
+
+/**
+ * This is the common logic for both the Node.js and web browser
+ * implementations of `debug()`.
+ *
+ * Expose `debug()` as the module.
+ */
+
+exports = module.exports = createDebug.debug = createDebug['default'] = createDebug;
+exports.coerce = coerce;
+exports.disable = disable;
+exports.enable = enable;
+exports.enabled = enabled;
+exports.humanize = require('ms');
+
+/**
+ * The currently active debug mode names, and names to skip.
+ */
+
+exports.names = [];
+exports.skips = [];
+
+/**
+ * Map of special "%n" handling functions, for the debug "format" argument.
+ *
+ * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
+ */
+
+exports.formatters = {};
+
+/**
+ * Previous log timestamp.
+ */
+
+var prevTime;
+
+/**
+ * Select a color.
+ * @param {String} namespace
+ * @return {Number}
+ * @api private
+ */
+
+function selectColor(namespace) {
+  var hash = 0, i;
+
+  for (i in namespace) {
+    hash  = ((hash << 5) - hash) + namespace.charCodeAt(i);
+    hash |= 0; // Convert to 32bit integer
+  }
+
+  return exports.colors[Math.abs(hash) % exports.colors.length];
+}
+
+/**
+ * Create a debugger with the given `namespace`.
+ *
+ * @param {String} namespace
+ * @return {Function}
+ * @api public
+ */
+
+function createDebug(namespace) {
+
+  function debug() {
+    // disabled?
+    if (!debug.enabled) return;
+
+    var self = debug;
+
+    // set `diff` timestamp
+    var curr = +new Date();
+    var ms = curr - (prevTime || curr);
+    self.diff = ms;
+    self.prev = prevTime;
+    self.curr = curr;
+    prevTime = curr;
+
+    // turn the `arguments` into a proper Array
+    var args = new Array(arguments.length);
+    for (var i = 0; i < args.length; i++) {
+      args[i] = arguments[i];
+    }
+
+    args[0] = exports.coerce(args[0]);
+
+    if ('string' !== typeof args[0]) {
+      // anything else let's inspect with %O
+      args.unshift('%O');
+    }
+
+    // apply any `formatters` transformations
+    var index = 0;
+    args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format) {
+      // if we encounter an escaped % then don't increase the array index
+      if (match === '%%') return match;
+      index++;
+      var formatter = exports.formatters[format];
+      if ('function' === typeof formatter) {
+        var val = args[index];
+        match = formatter.call(self, val);
+
+        // now we need to remove `args[index]` since it's inlined in the `format`
+        args.splice(index, 1);
+        index--;
+      }
+      return match;
+    });
+
+    // apply env-specific formatting (colors, etc.)
+    exports.formatArgs.call(self, args);
+
+    var logFn = debug.log || exports.log || console.log.bind(console);
+    logFn.apply(self, args);
+  }
+
+  debug.namespace = namespace;
+  debug.enabled = exports.enabled(namespace);
+  debug.useColors = exports.useColors();
+  debug.color = selectColor(namespace);
+
+  // env-specific initialization logic for debug instances
+  if ('function' === typeof exports.init) {
+    exports.init(debug);
+  }
+
+  return debug;
+}
+
+/**
+ * Enables a debug mode by namespaces. This can include modes
+ * separated by a colon and wildcards.
+ *
+ * @param {String} namespaces
+ * @api public
+ */
+
+function enable(namespaces) {
+  exports.save(namespaces);
+
+  exports.names = [];
+  exports.skips = [];
+
+  var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
+  var len = split.length;
+
+  for (var i = 0; i < len; i++) {
+    if (!split[i]) continue; // ignore empty strings
+    namespaces = split[i].replace(/\*/g, '.*?');
+    if (namespaces[0] === '-') {
+      exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
+    } else {
+      exports.names.push(new RegExp('^' + namespaces + '$'));
+    }
+  }
+}
+
+/**
+ * Disable debug output.
+ *
+ * @api public
+ */
+
+function disable() {
+  exports.enable('');
+}
+
+/**
+ * Returns true if the given mode name is enabled, false otherwise.
+ *
+ * @param {String} name
+ * @return {Boolean}
+ * @api public
+ */
+
+function enabled(name) {
+  var i, len;
+  for (i = 0, len = exports.skips.length; i < len; i++) {
+    if (exports.skips[i].test(name)) {
+      return false;
+    }
+  }
+  for (i = 0, len = exports.names.length; i < len; i++) {
+    if (exports.names[i].test(name)) {
+      return true;
+    }
+  }
+  return false;
+}
+
+/**
+ * Coerce `val`.
+ *
+ * @param {Mixed} val
+ * @return {Mixed}
+ * @api private
+ */
+
+function coerce(val) {
+  if (val instanceof Error) return val.stack || val.message;
+  return val;
+}
diff --git a/wrt/build/node_modules/debug/src/index.js b/wrt/build/node_modules/debug/src/index.js
new file mode 100644 (file)
index 0000000..e12cf4d
--- /dev/null
@@ -0,0 +1,10 @@
+/**
+ * Detect Electron renderer process, which is node, but we should
+ * treat as a browser.
+ */
+
+if (typeof process !== 'undefined' && process.type === 'renderer') {
+  module.exports = require('./browser.js');
+} else {
+  module.exports = require('./node.js');
+}
diff --git a/wrt/build/node_modules/debug/src/node.js b/wrt/build/node_modules/debug/src/node.js
new file mode 100644 (file)
index 0000000..af61297
--- /dev/null
@@ -0,0 +1,246 @@
+/**
+ * Module dependencies.
+ */
+
+var tty = require('tty');
+var util = require('util');
+
+/**
+ * This is the Node.js implementation of `debug()`.
+ *
+ * Expose `debug()` as the module.
+ */
+
+exports = module.exports = require('./debug');
+exports.init = init;
+exports.log = log;
+exports.formatArgs = formatArgs;
+exports.save = save;
+exports.load = load;
+exports.useColors = useColors;
+
+/**
+ * Colors.
+ */
+
+exports.colors = [6, 2, 3, 4, 5, 1];
+
+/**
+ * Build up the default `inspectOpts` object from the environment variables.
+ *
+ *   $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
+ */
+
+exports.inspectOpts = Object.keys(process.env).filter(function (key) {
+  return /^debug_/i.test(key);
+}).reduce(function (obj, key) {
+  // camel-case
+  var prop = key
+    .substring(6)
+    .toLowerCase()
+    .replace(/_([a-z])/g, function (_, k) { return k.toUpperCase() });
+
+  // coerce string value into JS value
+  var val = process.env[key];
+  if (/^(yes|on|true|enabled)$/i.test(val)) val = true;
+  else if (/^(no|off|false|disabled)$/i.test(val)) val = false;
+  else if (val === 'null') val = null;
+  else val = Number(val);
+
+  obj[prop] = val;
+  return obj;
+}, {});
+
+/**
+ * The file descriptor to write the `debug()` calls to.
+ * Set the `DEBUG_FD` env variable to override with another value. i.e.:
+ *
+ *   $ DEBUG_FD=3 node script.js 3>debug.log
+ */
+
+var fd = parseInt(process.env.DEBUG_FD, 10) || 2;
+
+if (1 !== fd && 2 !== fd) {
+  util.deprecate(function(){}, 'except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)')()
+}
+
+var stream = 1 === fd ? process.stdout :
+             2 === fd ? process.stderr :
+             createWritableStdioStream(fd);
+
+/**
+ * Is stdout a TTY? Colored output is enabled when `true`.
+ */
+
+function useColors() {
+  return 'colors' in exports.inspectOpts
+    ? Boolean(exports.inspectOpts.colors)
+    : tty.isatty(fd);
+}
+
+/**
+ * Map %o to `util.inspect()`, all on a single line.
+ */
+
+exports.formatters.o = function(v) {
+  this.inspectOpts.colors = this.useColors;
+  return util.inspect(v, this.inspectOpts)
+    .replace(/\s*\n\s*/g, ' ');
+};
+
+/**
+ * Map %o to `util.inspect()`, allowing multiple lines if needed.
+ */
+
+exports.formatters.O = function(v) {
+  this.inspectOpts.colors = this.useColors;
+  return util.inspect(v, this.inspectOpts);
+};
+
+/**
+ * Adds ANSI color escape codes if enabled.
+ *
+ * @api public
+ */
+
+function formatArgs(args) {
+  var name = this.namespace;
+  var useColors = this.useColors;
+
+  if (useColors) {
+    var c = this.color;
+    var prefix = '  \u001b[3' + c + ';1m' + name + ' ' + '\u001b[0m';
+
+    args[0] = prefix + args[0].split('\n').join('\n' + prefix);
+    args.push('\u001b[3' + c + 'm+' + exports.humanize(this.diff) + '\u001b[0m');
+  } else {
+    args[0] = new Date().toUTCString()
+      + ' ' + name + ' ' + args[0];
+  }
+}
+
+/**
+ * Invokes `util.format()` with the specified arguments and writes to `stream`.
+ */
+
+function log() {
+  return stream.write(util.format.apply(util, arguments) + '\n');
+}
+
+/**
+ * Save `namespaces`.
+ *
+ * @param {String} namespaces
+ * @api private
+ */
+
+function save(namespaces) {
+  if (null == namespaces) {
+    // If you set a process.env field to null or undefined, it gets cast to the
+    // string 'null' or 'undefined'. Just delete instead.
+    delete process.env.DEBUG;
+  } else {
+    process.env.DEBUG = namespaces;
+  }
+}
+
+/**
+ * Load `namespaces`.
+ *
+ * @return {String} returns the previously persisted debug modes
+ * @api private
+ */
+
+function load() {
+  return process.env.DEBUG;
+}
+
+/**
+ * Copied from `node/src/node.js`.
+ *
+ * XXX: It's lame that node doesn't expose this API out-of-the-box. It also
+ * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame.
+ */
+
+function createWritableStdioStream (fd) {
+  var stream;
+  var tty_wrap = process.binding('tty_wrap');
+
+  // Note stream._type is used for test-module-load-list.js
+
+  switch (tty_wrap.guessHandleType(fd)) {
+    case 'TTY':
+      stream = new tty.WriteStream(fd);
+      stream._type = 'tty';
+
+      // Hack to have stream not keep the event loop alive.
+      // See https://github.com/joyent/node/issues/1726
+      if (stream._handle && stream._handle.unref) {
+        stream._handle.unref();
+      }
+      break;
+
+    case 'FILE':
+      var fs = require('fs');
+      stream = new fs.SyncWriteStream(fd, { autoClose: false });
+      stream._type = 'fs';
+      break;
+
+    case 'PIPE':
+    case 'TCP':
+      var net = require('net');
+      stream = new net.Socket({
+        fd: fd,
+        readable: false,
+        writable: true
+      });
+
+      // FIXME Should probably have an option in net.Socket to create a
+      // stream from an existing fd which is writable only. But for now
+      // we'll just add this hack and set the `readable` member to false.
+      // Test: ./node test/fixtures/echo.js < /etc/passwd
+      stream.readable = false;
+      stream.read = null;
+      stream._type = 'pipe';
+
+      // FIXME Hack to have stream not keep the event loop alive.
+      // See https://github.com/joyent/node/issues/1726
+      if (stream._handle && stream._handle.unref) {
+        stream._handle.unref();
+      }
+      break;
+
+    default:
+      // Probably an error on in uv_guess_handle()
+      throw new Error('Implement me. Unknown stream file type!');
+  }
+
+  // For supporting legacy API we put the FD here.
+  stream.fd = fd;
+
+  stream._isStdio = true;
+
+  return stream;
+}
+
+/**
+ * Init logic for `debug` instances.
+ *
+ * Create a new `inspectOpts` object in case `useColors` is set
+ * differently for a particular `debug` instance.
+ */
+
+function init (debug) {
+  debug.inspectOpts = {};
+
+  var keys = Object.keys(exports.inspectOpts);
+  for (var i = 0; i < keys.length; i++) {
+    debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
+  }
+}
+
+/**
+ * Enable namespaces listed in `process.env.DEBUG` initially.
+ */
+
+exports.enable(load());
diff --git a/wrt/build/node_modules/dezalgo/.travis.yml b/wrt/build/node_modules/dezalgo/.travis.yml
new file mode 100644 (file)
index 0000000..e1bcee1
--- /dev/null
@@ -0,0 +1,7 @@
+language: node_js
+before_script: npm install -g npm@latest
+node_js:
+  - '0.8'
+  - '0.10'
+  - '0.12'
+  - 'iojs'
diff --git a/wrt/build/node_modules/dezalgo/package.json b/wrt/build/node_modules/dezalgo/package.json
new file mode 100644 (file)
index 0000000..d6a37d7
--- /dev/null
@@ -0,0 +1,105 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "dezalgo@^1.0.1",
+        "scope": null,
+        "escapedName": "dezalgo",
+        "name": "dezalgo",
+        "rawSpec": "^1.0.1",
+        "spec": ">=1.0.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "dezalgo@>=1.0.1 <2.0.0",
+  "_id": "dezalgo@1.0.3",
+  "_inCache": true,
+  "_location": "/dezalgo",
+  "_nodeVersion": "2.0.2",
+  "_npmUser": {
+    "name": "othiym23",
+    "email": "ogd@aoaioxxysz.net"
+  },
+  "_npmVersion": "2.11.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "dezalgo@^1.0.1",
+    "scope": null,
+    "escapedName": "dezalgo",
+    "name": "dezalgo",
+    "rawSpec": "^1.0.1",
+    "spec": ">=1.0.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz",
+  "_shasum": "7f742de066fc748bc8db820569dddce49bf0d456",
+  "_shrinkwrap": null,
+  "_spec": "dezalgo@^1.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me/"
+  },
+  "bugs": {
+    "url": "https://github.com/npm/dezalgo/issues"
+  },
+  "dependencies": {
+    "asap": "^2.0.0",
+    "wrappy": "1"
+  },
+  "description": "Contain async insanity so that the dark pony lord doesn't eat souls",
+  "devDependencies": {
+    "tap": "^1.2.0"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "7f742de066fc748bc8db820569dddce49bf0d456",
+    "tarball": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz"
+  },
+  "gitHead": "d4d3f3f6f47b1a326194d5281349c83dde258458",
+  "homepage": "https://github.com/npm/dezalgo",
+  "keywords": [
+    "async",
+    "zalgo",
+    "the dark pony",
+    "he comes",
+    "asynchrony of all holy and good",
+    "T̯̪ͅo̯͖̹ ̻̮̖̲͢i̥̖n̢͈͇̝͍v͏͉ok̭̬̝ͅe̞͍̩̫͍̩͝ ̩̮̖̟͇͉́t͔͔͎̗h͏̗̟e̘͉̰̦̠̞͓ ͕h͉̟͎̪̠̱͠ḭ̮̩v̺͉͇̩e̵͖-̺̪m͍i̜n̪̲̲̲̮d̷ ̢r̠̼̯̹̦̦͘ͅe͓̳͓̙p̺̗̫͙͘ͅr͔̰͜e̴͓̞s͉̩̩͟ͅe͏̣n͚͇̗̭̺͍tì͙̣n͏̖̥̗͎̰̪g̞͓̭̱̯̫̕ ̣̱͜ͅc̦̰̰̠̮͎͙̀hao̺̜̻͍͙ͅs͉͓̘.͎̼̺̼͕̹͘",
+    "̠̞̱̰I͖͇̝̻n̦̰͍̰̟v̤̺̫̳̭̼̗͘ò̹̟̩̩͚k̢̥̠͍͉̦̬i̖͓͔̮̱̻͘n̶̳͙̫͎g̖̯̣̲̪͉ ̞͎̗͕͚ͅt̲͕̘̺̯̗̦h̘̦̲̜̻e̳͎͉̬͙ ̴̞̪̲̥f̜̯͓͓̭̭͢e̱̘͔̮e̜̤l̺̱͖̯͓͙͈͢i̵̦̬͉͔̫͚͕n͉g̨͖̙̙̹̹̟̤ ͉̪o̞̠͍̪̰͙ͅf̬̲̺ ͔͕̲͕͕̲̕c̙͉h̝͔̩̙̕ͅa̲͖̻̗̹o̥̼̫s̝̖̜̝͚̫̟.̺͚  ̸̱̲W̶̥̣͖̦i͏̤̬̱̳̣ͅt͉h̗̪̪ ̷̱͚̹̪ǫ͕̗̣̳̦͎u̼̦͔̥̮̕ţ͖͎̻͔͉ ̴͎̩òr̹̰̖͉͈͝d̷̲̦̖͓e̲͓̠r",
+    "̧͚̜͓̰̭̭Ṯ̫̹̜̮̟̮͝h͚̘̩̘̖̰́e ̥̘͓͉͔͙̼N̟̜̣̘͔̪e̞̞̤͢z̰̖̘͇p̠͟e̺̱̣͍͙̝ṛ̘̬͔̙͇̠d͝ḭ̯̱̥̗̩a̛ͅn͏̦ ̷̥hi̥v̖̳̹͉̮̱͝e̹̪̘̖̰̟-̴͙͓͚̜̻mi̗̺̻͙̺ͅn̪̯͈d ͏̘͓̫̳ͅơ̹͔̳̖̣͓f͈̹̘ ͕ͅc̗̤̠̜̮̥̥h̡͍̩̭̫͚̱a̤͉̤͔͜os͕̤̼͍̲̀ͅ.̡̱ ̦Za̯̱̗̭͍̣͚l̗͉̰̤g͏̣̭̬̗̲͖ͅo̶̭̩̳̟͈.̪̦̰̳",
+    "H̴̱̦̗̬̣͓̺e̮ ͉̠̰̞͎̖͟ẁh̛̺̯ͅo̖̫͡ ̢Ẁa̡̗i̸t͖̣͉̀ş͔̯̩ ̤̦̮͇̞̦̲B͎̭͇̦̼e̢hin͏͙̟̪d̴̰͓̻̣̮͕ͅ T͖̮̕h͖e̘̺̰̙͘ ̥Ẁ̦͔̻͚a̞͖̪͉l̪̠̻̰̣̠l̲͎͞",
+    "Z̘͍̼͎̣͔͝Ą̲̜̱̱̹̤͇L̶̝̰̭͔G͍̖͍O̫͜ͅ!̼̤ͅ",
+    "H̝̪̜͓̀̌̂̒E̢̙̠̣ ̴̳͇̥̟̠͍̐C̹̓̑̐̆͝Ó̶̭͓̚M̬̼Ĕ̖̤͔͔̟̹̽̿̊ͥ̍ͫS̻̰̦̻̖̘̱̒ͪ͌̅͟"
+  ],
+  "license": "ISC",
+  "main": "dezalgo.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "isaacs@npmjs.com"
+    },
+    {
+      "name": "othiym23",
+      "email": "ogd@aoaioxxysz.net"
+    }
+  ],
+  "name": "dezalgo",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/npm/dezalgo.git"
+  },
+  "scripts": {
+    "test": "tap test/*.js"
+  },
+  "version": "1.0.3"
+}
diff --git a/wrt/build/node_modules/esformatter-eol-last/package.json b/wrt/build/node_modules/esformatter-eol-last/package.json
new file mode 100644 (file)
index 0000000..36cedba
--- /dev/null
@@ -0,0 +1,81 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esformatter-eol-last@^1.0.0",
+        "scope": null,
+        "escapedName": "esformatter-eol-last",
+        "name": "esformatter-eol-last",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "esformatter-eol-last@>=1.0.0 <2.0.0",
+  "_id": "esformatter-eol-last@1.0.0",
+  "_inCache": true,
+  "_location": "/esformatter-eol-last",
+  "_nodeVersion": "0.10.31",
+  "_npmUser": {
+    "name": "briandipalma",
+    "email": "offler@gmail.com"
+  },
+  "_npmVersion": "2.1.4",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esformatter-eol-last@^1.0.0",
+    "scope": null,
+    "escapedName": "esformatter-eol-last",
+    "name": "esformatter-eol-last",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
+  "_shasum": "45a78ff4622b1d49e44f56b49905766a63290c07",
+  "_shrinkwrap": null,
+  "_spec": "esformatter-eol-last@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": "",
+  "bugs": {
+    "url": "https://github.com/briandipalma/esformatter-eol-last/issues"
+  },
+  "dependencies": {
+    "string.prototype.endswith": "^0.2.0"
+  },
+  "description": "Adds a newline to the end of esformatter output. Will not add newline is the output ends in a newline already.",
+  "devDependencies": {
+    "mocha": "^2.0.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "45a78ff4622b1d49e44f56b49905766a63290c07",
+    "tarball": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz"
+  },
+  "gitHead": "e7ad010b07606ab510b38c3f7f13bfcad5edabfb",
+  "homepage": "https://github.com/briandipalma/esformatter-eol-last",
+  "license": "ISC",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "briandipalma",
+      "email": "offler@gmail.com"
+    }
+  ],
+  "name": "esformatter-eol-last",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/briandipalma/esformatter-eol-last.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "1.0.0"
+}
diff --git a/wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json b/wrt/build/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json
new file mode 100644 (file)
index 0000000..9867f5e
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole@^0.3.6",
+        "scope": null,
+        "escapedName": "rocambole",
+        "name": "rocambole",
+        "rawSpec": "^0.3.6",
+        "spec": ">=0.3.6 <0.4.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter-literal-notation"
+    ]
+  ],
+  "_from": "rocambole@>=0.3.6 <0.4.0",
+  "_id": "rocambole@0.3.6",
+  "_inCache": true,
+  "_location": "/esformatter-literal-notation/rocambole",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "1.4.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole@^0.3.6",
+    "scope": null,
+    "escapedName": "rocambole",
+    "name": "rocambole",
+    "rawSpec": "^0.3.6",
+    "spec": ">=0.3.6 <0.4.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter-literal-notation"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
+  "_shasum": "4debbf5943144bc7b6006d95be8facc0b74352a7",
+  "_shrinkwrap": null,
+  "_spec": "rocambole@^0.3.6",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter-literal-notation",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "http://blog.millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole/issues"
+  },
+  "dependencies": {
+    "esprima": "~1.0"
+  },
+  "description": "Recursively walk and transform EcmaScript AST",
+  "devDependencies": {
+    "expect.js": "0.2",
+    "istanbul": "~0.1.23",
+    "mocha": "~1.7"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "4debbf5943144bc7b6006d95be8facc0b74352a7",
+    "tarball": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz"
+  },
+  "homepage": "https://github.com/millermedeiros/rocambole",
+  "keywords": [
+    "ast",
+    "walk",
+    "syntax",
+    "source",
+    "tree",
+    "traversal",
+    "falafel",
+    "burrito",
+    "esprima"
+  ],
+  "license": "MIT",
+  "main": "rocambole.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole.git"
+  },
+  "scripts": {
+    "test": "istanbul test test/runner.js"
+  },
+  "version": "0.3.6"
+}
diff --git a/wrt/build/node_modules/esformatter-literal-notation/package.json b/wrt/build/node_modules/esformatter-literal-notation/package.json
new file mode 100644 (file)
index 0000000..cfd0a07
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esformatter-literal-notation@^1.0.0",
+        "scope": null,
+        "escapedName": "esformatter-literal-notation",
+        "name": "esformatter-literal-notation",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "esformatter-literal-notation@>=1.0.0 <2.0.0",
+  "_id": "esformatter-literal-notation@1.0.1",
+  "_inCache": true,
+  "_location": "/esformatter-literal-notation",
+  "_nodeVersion": "0.12.1",
+  "_npmUser": {
+    "name": "kewah",
+    "email": "code@kewah.com"
+  },
+  "_npmVersion": "2.11.1",
+  "_phantomChildren": {
+    "esprima": "1.0.4"
+  },
+  "_requested": {
+    "raw": "esformatter-literal-notation@^1.0.0",
+    "scope": null,
+    "escapedName": "esformatter-literal-notation",
+    "name": "esformatter-literal-notation",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.1.tgz",
+  "_shasum": "710e7b420175fe3f7e5afad5bbad329103842e2f",
+  "_shrinkwrap": null,
+  "_spec": "esformatter-literal-notation@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": {
+    "name": "Antoine Lehurt",
+    "email": "hello@kewah.com",
+    "url": "http://kewah.com"
+  },
+  "bugs": {
+    "url": "https://github.com/kewah/esformatter-literal-notation/issues"
+  },
+  "dependencies": {
+    "rocambole": "^0.3.6",
+    "rocambole-token": "^1.2.1"
+  },
+  "description": "esformatter plugin that converts array and object constructors to literal notations",
+  "devDependencies": {
+    "esformatter": "^0.4.2",
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "710e7b420175fe3f7e5afad5bbad329103842e2f",
+    "tarball": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.1.tgz"
+  },
+  "gitHead": "4be7834e8cfad104f4140d5787063ad6a2df72f0",
+  "homepage": "https://github.com/kewah/esformatter-literal-notation#readme",
+  "keywords": [
+    "esformatter",
+    "esformatter-plugin",
+    "plugin",
+    "literal",
+    "notation"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "kewah",
+      "email": "keuwah@gmail.com"
+    }
+  ],
+  "name": "esformatter-literal-notation",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/kewah/esformatter-literal-notation.git"
+  },
+  "scripts": {
+    "test": "./node_modules/mocha/bin/mocha --reporter spec",
+    "watch": "./node_modules/mocha/bin/mocha --watch --reporter spec"
+  },
+  "version": "1.0.1"
+}
diff --git a/wrt/build/node_modules/esformatter-quotes/index.js b/wrt/build/node_modules/esformatter-quotes/index.js
new file mode 100644 (file)
index 0000000..4f5fdd6
--- /dev/null
@@ -0,0 +1,76 @@
+//jshint node:true, eqnull:true
+'use strict';
+
+var DOUBLE_QUOTE = '"';
+var SINGLE_QUOTE = '\'';
+
+var avoidEscape;
+var disabled;
+var quoteValue;
+var alternateQuote;
+
+// Helper to generate a string that repeats itself n times
+//   e.g. ("ab", 2) -> "abab"
+function repeat(str, n) {
+  return new Array(n + 1).join(str);
+}
+
+exports.setOptions = function(opts) {
+  opts = opts && opts.quotes;
+  if (!opts || (opts.type == null && opts.avoidEscape == null)) {
+    disabled = true;
+    return;
+  }
+  disabled = false;
+  if (opts.type != null) {
+    quoteValue = opts.type === 'single' ? SINGLE_QUOTE : DOUBLE_QUOTE;
+    alternateQuote = opts.type !== 'single' ? SINGLE_QUOTE : DOUBLE_QUOTE;
+  }
+  avoidEscape = opts.avoidEscape;
+};
+
+
+exports.tokenAfter = function(token) {
+  if (disabled) return;
+
+  if (token.type === 'String') {
+    var content = token.value.substr(1, token.value.length - 2);
+    var quote = quoteValue;
+    var alternate = alternateQuote;
+
+    var shouldAvoidEscape = avoidEscape &&
+      content.indexOf(quote) >= 0 &&
+      content.indexOf(alternate) < 0;
+
+    if (shouldAvoidEscape) {
+      alternate = quoteValue;
+      quote = alternateQuote;
+    }
+
+    // we always normalize the behavior to remove unnecessary escapes
+    // If the escaped quote should be unescaped, then escape it (e.g. '\"' -> '"')
+    //   However, don't remove escapes from slashes (e.g. '\\"' -> '\\"')
+    // DEV: RegExp explained:
+    //   - We want to start on a non-slash character to only match at boundaries
+    //      (i.e. `^|\`, the 4 slashes are 1 slash in RegExp)
+    //   - We want to prevent replacing escaped slashes (i.e. `\\` should not be replaced, this is 8 slashes in RegExp)
+    //   - We want to replace `\"` with `"` as the slash is unnecessary
+    ///  - We match as many pairs as possible for `\"` due to requiring a leading word boundary on our next match (which won't exist)
+    var alternateEscape = new RegExp('(^|[^\\\\])((?:\\\\{2})*)((?:\\\\' + alternate + ')+)', 'g');
+    content = content.replace(alternateEscape, function replaceQuotes (input, boundaryChar, leadingEscapedSlashes, escapedQuoteChars, match) {
+      // DEV: We divide the escapedQuoteChars by 2 since there are 2 characters in each escaped part ('\\"'.length === 2)
+      return boundaryChar + leadingEscapedSlashes + repeat(alternate, escapedQuoteChars.length / 2);
+    });
+
+    // If the first character is a quote, escape it (e.g. "'hello" -> '\'hello')
+    //   or if a character is an unescaped quote, escape it (e.g. "hello'" -> 'hello\'')
+    // If we are an unescaped set of quotes, escape them (e.g. "hello'" -> 'hello\'', "hello''" -> 'hello\'\'')
+    // DEV: JavaScript starts the next match at the end of the current one, causing us to need a function or loop.
+    var quoteEscape = new RegExp('(^|[^\\\\])((?:\\\\{2})*)(' + quote + '+)', 'g');
+    content = content.replace(quoteEscape, function replaceQuotes (input, boundaryChar, leadingEscapedSlashes, quoteChars, match) {
+      return boundaryChar + leadingEscapedSlashes + repeat('\\' + quote, quoteChars.length);
+    });
+    token.value = quote + content + quote;
+  }
+};
+
diff --git a/wrt/build/node_modules/esformatter-quotes/package.json b/wrt/build/node_modules/esformatter-quotes/package.json
new file mode 100644 (file)
index 0000000..cb9c766
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esformatter-quotes@^1.0.0",
+        "scope": null,
+        "escapedName": "esformatter-quotes",
+        "name": "esformatter-quotes",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "esformatter-quotes@>=1.0.0 <2.0.0",
+  "_id": "esformatter-quotes@1.1.0",
+  "_inCache": true,
+  "_location": "/esformatter-quotes",
+  "_nodeVersion": "4.2.1",
+  "_npmOperationalInternal": {
+    "host": "packages-16-east.internal.npmjs.com",
+    "tmp": "tmp/esformatter-quotes-1.1.0.tgz_1465112539789_0.49227641010656953"
+  },
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.14.7",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esformatter-quotes@^1.0.0",
+    "scope": null,
+    "escapedName": "esformatter-quotes",
+    "name": "esformatter-quotes",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.1.0.tgz",
+  "_shasum": "e22c6c445c7f306041d81c9b9e51fca6cbfaca82",
+  "_shrinkwrap": null,
+  "_spec": "esformatter-quotes@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": {
+    "name": "Miller Medeiros",
+    "url": "http://blog.millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/esformatter-quotes/issues"
+  },
+  "dependencies": {},
+  "description": "esformatter plugin: enforces coding style that string literals are delimited with single or double quotes.",
+  "devDependencies": {
+    "chai": "^1.4",
+    "esformatter": "^0.3.0",
+    "mocha": "https://github.com/millermedeiros/mocha/tarball/latest"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "e22c6c445c7f306041d81c9b9e51fca6cbfaca82",
+    "tarball": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.1.0.tgz"
+  },
+  "gitHead": "93f1adc297cc74cb6dff5b7db0cecc322413afd6",
+  "homepage": "https://github.com/millermedeiros/esformatter-quotes",
+  "keywords": [
+    "esformatter",
+    "esformatter-plugin",
+    "string",
+    "quotes",
+    "AST"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    },
+    {
+      "name": "twolfson",
+      "email": "todd@twolfson.com"
+    }
+  ],
+  "name": "esformatter-quotes",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/esformatter-quotes.git"
+  },
+  "scripts": {
+    "test": "mocha --ui bdd --reporter spec test"
+  },
+  "version": "1.1.0"
+}
diff --git a/wrt/build/node_modules/esformatter-quotes/test/compare/input.js b/wrt/build/node_modules/esformatter-quotes/test/compare/input.js
new file mode 100644 (file)
index 0000000..53331d2
--- /dev/null
@@ -0,0 +1,50 @@
+"use strict";
+
+// basic ====
+
+var singleQuote = 'single';
+var doubleQuote = "double";
+
+
+// avoid escaping ====
+
+var avoidSingle = 'single "quote"';
+var avoidDouble = "double 'quote'";
+
+
+// escaping ====
+
+var lorem = "ipsum \"dolor\" sit 'amet'";
+var maecennas = 'ipsum \'dolor\' sit "amet"';
+
+var unnecessaryEscape = 'bar \'baz\' \"dolor\"';
+
+var escapedSlashesSingle = 'bar \\"baz\\"';
+var escapedSlashesDouble = "bar \\'baz\\'";
+
+var leadingSingle = "'";
+var leadingDouble = '"';
+var unnecessaryEscapeSingle = '\'';
+
+var successiveQuotes = ' \'\' ""';
+
+
+// multiline strings ====
+
+var multi1 = 'multiline \
+madness \
+"quotes" \
+\'everywhere\''.substr(0, 15)
+
+var multi2 = "even more \
+multiline \
+'strings' \
+\"which is one of the \
+saddest things about JS\"".substr(15, 15)
+
+var multiAvoidSingle = 'lorem \
+ipsum "dolor"';
+
+var multiAvoidDouble = "dolor sit \
+ipsum 'dolor'";
+
diff --git a/wrt/build/node_modules/esformatter-quotes/test/compare/output-double-avoid.js b/wrt/build/node_modules/esformatter-quotes/test/compare/output-double-avoid.js
new file mode 100644 (file)
index 0000000..cfb3907
--- /dev/null
@@ -0,0 +1,50 @@
+"use strict";
+
+// basic ====
+
+var singleQuote = "single";
+var doubleQuote = "double";
+
+
+// avoid escaping ====
+
+var avoidSingle = 'single "quote"';
+var avoidDouble = "double 'quote'";
+
+
+// escaping ====
+
+var lorem = "ipsum \"dolor\" sit 'amet'";
+var maecennas = "ipsum 'dolor' sit \"amet\"";
+
+var unnecessaryEscape = "bar 'baz' \"dolor\"";
+
+var escapedSlashesSingle = 'bar \\"baz\\"';
+var escapedSlashesDouble = "bar \\'baz\\'";
+
+var leadingSingle = "'";
+var leadingDouble = '"';
+var unnecessaryEscapeSingle = "'";
+
+var successiveQuotes = " '' \"\"";
+
+
+// multiline strings ====
+
+var multi1 = "multiline \
+madness \
+\"quotes\" \
+'everywhere'".substr(0, 15)
+
+var multi2 = "even more \
+multiline \
+'strings' \
+\"which is one of the \
+saddest things about JS\"".substr(15, 15)
+
+var multiAvoidSingle = 'lorem \
+ipsum "dolor"';
+
+var multiAvoidDouble = "dolor sit \
+ipsum 'dolor'";
+
diff --git a/wrt/build/node_modules/esformatter-quotes/test/compare/output-double.js b/wrt/build/node_modules/esformatter-quotes/test/compare/output-double.js
new file mode 100644 (file)
index 0000000..38399b7
--- /dev/null
@@ -0,0 +1,50 @@
+"use strict";
+
+// basic ====
+
+var singleQuote = "single";
+var doubleQuote = "double";
+
+
+// avoid escaping ====
+
+var avoidSingle = "single \"quote\"";
+var avoidDouble = "double 'quote'";
+
+
+// escaping ====
+
+var lorem = "ipsum \"dolor\" sit 'amet'";
+var maecennas = "ipsum 'dolor' sit \"amet\"";
+
+var unnecessaryEscape = "bar 'baz' \"dolor\"";
+
+var escapedSlashesSingle = "bar \\\"baz\\\"";
+var escapedSlashesDouble = "bar \\'baz\\'";
+
+var leadingSingle = "'";
+var leadingDouble = "\"";
+var unnecessaryEscapeSingle = "'";
+
+var successiveQuotes = " '' \"\"";
+
+
+// multiline strings ====
+
+var multi1 = "multiline \
+madness \
+\"quotes\" \
+'everywhere'".substr(0, 15)
+
+var multi2 = "even more \
+multiline \
+'strings' \
+\"which is one of the \
+saddest things about JS\"".substr(15, 15)
+
+var multiAvoidSingle = "lorem \
+ipsum \"dolor\"";
+
+var multiAvoidDouble = "dolor sit \
+ipsum 'dolor'";
+
diff --git a/wrt/build/node_modules/esformatter-quotes/test/compare/output-single-avoid.js b/wrt/build/node_modules/esformatter-quotes/test/compare/output-single-avoid.js
new file mode 100644 (file)
index 0000000..09b8720
--- /dev/null
@@ -0,0 +1,50 @@
+'use strict';
+
+// basic ====
+
+var singleQuote = 'single';
+var doubleQuote = 'double';
+
+
+// avoid escaping ====
+
+var avoidSingle = 'single "quote"';
+var avoidDouble = "double 'quote'";
+
+
+// escaping ====
+
+var lorem = 'ipsum "dolor" sit \'amet\'';
+var maecennas = 'ipsum \'dolor\' sit "amet"';
+
+var unnecessaryEscape = 'bar \'baz\' "dolor"';
+
+var escapedSlashesSingle = 'bar \\"baz\\"';
+var escapedSlashesDouble = "bar \\'baz\\'";
+
+var leadingSingle = "'";
+var leadingDouble = '"';
+var unnecessaryEscapeSingle = "'";
+
+var successiveQuotes = ' \'\' ""';
+
+
+// multiline strings ====
+
+var multi1 = 'multiline \
+madness \
+"quotes" \
+\'everywhere\''.substr(0, 15)
+
+var multi2 = 'even more \
+multiline \
+\'strings\' \
+"which is one of the \
+saddest things about JS"'.substr(15, 15)
+
+var multiAvoidSingle = 'lorem \
+ipsum "dolor"';
+
+var multiAvoidDouble = "dolor sit \
+ipsum 'dolor'";
+
diff --git a/wrt/build/node_modules/esformatter-quotes/test/compare/output-single.js b/wrt/build/node_modules/esformatter-quotes/test/compare/output-single.js
new file mode 100644 (file)
index 0000000..5b35fe8
--- /dev/null
@@ -0,0 +1,50 @@
+'use strict';
+
+// basic ====
+
+var singleQuote = 'single';
+var doubleQuote = 'double';
+
+
+// avoid escaping ====
+
+var avoidSingle = 'single "quote"';
+var avoidDouble = 'double \'quote\'';
+
+
+// escaping ====
+
+var lorem = 'ipsum "dolor" sit \'amet\'';
+var maecennas = 'ipsum \'dolor\' sit "amet"';
+
+var unnecessaryEscape = 'bar \'baz\' "dolor"';
+
+var escapedSlashesSingle = 'bar \\"baz\\"';
+var escapedSlashesDouble = 'bar \\\'baz\\\'';
+
+var leadingSingle = '\'';
+var leadingDouble = '"';
+var unnecessaryEscapeSingle = '\'';
+
+var successiveQuotes = ' \'\' ""';
+
+
+// multiline strings ====
+
+var multi1 = 'multiline \
+madness \
+"quotes" \
+\'everywhere\''.substr(0, 15)
+
+var multi2 = 'even more \
+multiline \
+\'strings\' \
+"which is one of the \
+saddest things about JS"'.substr(15, 15)
+
+var multiAvoidSingle = 'lorem \
+ipsum "dolor"';
+
+var multiAvoidDouble = 'dolor sit \
+ipsum \'dolor\'';
+
diff --git a/wrt/build/node_modules/esformatter-spaced-lined-comment/package.json b/wrt/build/node_modules/esformatter-spaced-lined-comment/package.json
new file mode 100644 (file)
index 0000000..9219729
--- /dev/null
@@ -0,0 +1,95 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esformatter-spaced-lined-comment@^2.0.0",
+        "scope": null,
+        "escapedName": "esformatter-spaced-lined-comment",
+        "name": "esformatter-spaced-lined-comment",
+        "rawSpec": "^2.0.0",
+        "spec": ">=2.0.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "esformatter-spaced-lined-comment@>=2.0.0 <3.0.0",
+  "_id": "esformatter-spaced-lined-comment@2.0.1",
+  "_inCache": true,
+  "_location": "/esformatter-spaced-lined-comment",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "briandipalma",
+    "email": "offler@gmail.com"
+  },
+  "_npmVersion": "2.6.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esformatter-spaced-lined-comment@^2.0.0",
+    "scope": null,
+    "escapedName": "esformatter-spaced-lined-comment",
+    "name": "esformatter-spaced-lined-comment",
+    "rawSpec": "^2.0.0",
+    "spec": ">=2.0.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
+  "_shasum": "dc5f3407f93c295e1e56446bd344560da5e6dcac",
+  "_shrinkwrap": null,
+  "_spec": "esformatter-spaced-lined-comment@^2.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": {
+    "name": "Brian Di Palma"
+  },
+  "bugs": {
+    "url": "https://github.com/briandipalma/esformatter-spaced-lined-comment/issues"
+  },
+  "dependencies": {},
+  "description": "esformatter plugin for adding a space as the first character in a line comment",
+  "devDependencies": {
+    "esformatter": "^0.4.3",
+    "eslint": "^0.15.0",
+    "mocha": "^2.1.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "dc5f3407f93c295e1e56446bd344560da5e6dcac",
+    "tarball": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "cda9c05491f7c460f4d02c11bacfa4733066c329",
+  "homepage": "https://github.com/briandipalma/esformatter-spaced-lined-comment",
+  "keywords": [
+    "esformatter",
+    "plugin"
+  ],
+  "license": "ISC",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "briandipalma",
+      "email": "offler@gmail.com"
+    }
+  ],
+  "name": "esformatter-spaced-lined-comment",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/briandipalma/esformatter-spaced-lined-comment.git"
+  },
+  "scripts": {
+    "build": "npm run lint && npm run test",
+    "lint": "eslint *.js",
+    "test": "mocha"
+  },
+  "version": "2.0.1"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/.bin/strip-json-comments b/wrt/build/node_modules/esformatter/node_modules/.bin/strip-json-comments
new file mode 120000 (symlink)
index 0000000..63d549f
--- /dev/null
@@ -0,0 +1 @@
+../strip-json-comments/cli.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/esformatter/node_modules/debug/package.json b/wrt/build/node_modules/esformatter/node_modules/debug/package.json
new file mode 100644 (file)
index 0000000..e5bc068
--- /dev/null
@@ -0,0 +1,96 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "debug@^0.7.4",
+        "scope": null,
+        "escapedName": "debug",
+        "name": "debug",
+        "rawSpec": "^0.7.4",
+        "spec": ">=0.7.4 <0.8.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "debug@>=0.7.4 <0.8.0",
+  "_id": "debug@0.7.4",
+  "_inCache": true,
+  "_location": "/esformatter/debug",
+  "_npmUser": {
+    "name": "tjholowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "_npmVersion": "1.3.13",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "debug@^0.7.4",
+    "scope": null,
+    "escapedName": "debug",
+    "name": "debug",
+    "rawSpec": "^0.7.4",
+    "spec": ">=0.7.4 <0.8.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
+  "_shasum": "06e1ea8082c2cb14e39806e22e2f6f757f92af39",
+  "_shrinkwrap": null,
+  "_spec": "debug@^0.7.4",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "browser": "./debug.js",
+  "bugs": {
+    "url": "https://github.com/visionmedia/debug/issues"
+  },
+  "component": {
+    "scripts": {
+      "debug/index.js": "index.js",
+      "debug/debug.js": "debug.js"
+    }
+  },
+  "dependencies": {},
+  "description": "small debugging utility",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "06e1ea8082c2cb14e39806e22e2f6f757f92af39",
+    "tarball": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz"
+  },
+  "engines": {
+    "node": "*"
+  },
+  "files": [
+    "lib/debug.js",
+    "debug.js",
+    "index.js"
+  ],
+  "homepage": "https://github.com/visionmedia/debug",
+  "keywords": [
+    "debug",
+    "log",
+    "debugger"
+  ],
+  "main": "lib/debug.js",
+  "maintainers": [
+    {
+      "name": "tjholowaychuk",
+      "email": "tj@vision-media.ca"
+    }
+  ],
+  "name": "debug",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/visionmedia/debug.git"
+  },
+  "version": "0.7.4"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/optimist/package.json b/wrt/build/node_modules/esformatter/node_modules/optimist/package.json
new file mode 100644 (file)
index 0000000..82759e9
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "optimist@~0.6.0",
+        "scope": null,
+        "escapedName": "optimist",
+        "name": "optimist",
+        "rawSpec": "~0.6.0",
+        "spec": ">=0.6.0 <0.7.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "optimist@>=0.6.0 <0.7.0",
+  "_id": "optimist@0.6.1",
+  "_inCache": true,
+  "_location": "/esformatter/optimist",
+  "_npmUser": {
+    "name": "substack",
+    "email": "mail@substack.net"
+  },
+  "_npmVersion": "1.3.21",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "optimist@~0.6.0",
+    "scope": null,
+    "escapedName": "optimist",
+    "name": "optimist",
+    "rawSpec": "~0.6.0",
+    "spec": ">=0.6.0 <0.7.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
+  "_shasum": "da3ea74686fa21a19a111c326e90eb15a0196686",
+  "_shrinkwrap": null,
+  "_spec": "optimist@~0.6.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "James Halliday",
+    "email": "mail@substack.net",
+    "url": "http://substack.net"
+  },
+  "bugs": {
+    "url": "https://github.com/substack/node-optimist/issues"
+  },
+  "dependencies": {
+    "minimist": "~0.0.1",
+    "wordwrap": "~0.0.2"
+  },
+  "description": "Light-weight option parsing with an argv hash. No optstrings attached.",
+  "devDependencies": {
+    "hashish": "~0.0.4",
+    "tap": "~0.4.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "da3ea74686fa21a19a111c326e90eb15a0196686",
+    "tarball": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz"
+  },
+  "engine": {
+    "node": ">=0.4"
+  },
+  "homepage": "https://github.com/substack/node-optimist",
+  "keywords": [
+    "argument",
+    "args",
+    "option",
+    "parser",
+    "parsing",
+    "cli",
+    "command"
+  ],
+  "license": "MIT/X11",
+  "main": "./index.js",
+  "maintainers": [
+    {
+      "name": "substack",
+      "email": "mail@substack.net"
+    }
+  ],
+  "name": "optimist",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/substack/node-optimist.git"
+  },
+  "scripts": {
+    "test": "tap ./test/*.js"
+  },
+  "version": "0.6.1"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/.editorconfig b/wrt/build/node_modules/esformatter/node_modules/resolve/.editorconfig
new file mode 100644 (file)
index 0000000..ac29ade
--- /dev/null
@@ -0,0 +1,20 @@
+root = true
+
+[*]
+indent_style = tab
+indent_size = 4
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+max_line_length = 120
+
+[CHANGELOG.md]
+indent_style = space
+indent_size = 2
+
+[*.json]
+max_line_length = off
+
+[Makefile]
+max_line_length = off
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/.eslintrc b/wrt/build/node_modules/esformatter/node_modules/resolve/.eslintrc
new file mode 100644 (file)
index 0000000..9db19a4
--- /dev/null
@@ -0,0 +1,30 @@
+{
+    "extends": "@ljharb",
+    "root": true,
+    "rules": {
+        "array-bracket-newline": 0,
+        "array-element-newline": 0,
+        "indent": [2, 4],
+        "strict": 0,
+        "complexity": 0,
+        "consistent-return": 0,
+        "curly": 0,
+        "dot-notation": [2, { "allowKeywords": true }],
+        "func-name-matching": 0,
+        "func-style": 0,
+        "global-require": 0,
+        "id-length": [2, { "min": 1, "max": 30 }],
+        "max-nested-callbacks": 0,
+        "max-params": 0,
+        "max-statements-per-line": [2, { "max": 2 }],
+        "max-statements": 0,
+        "no-magic-numbers": 0,
+        "no-console": 0,
+        "no-shadow": 0,
+        "no-unused-vars": [2, { "vars": "all", "args": "none" }],
+        "no-use-before-define": 0,
+        "object-curly-newline": 0,
+        "operator-linebreak": [2, "before"],
+        "sort-keys": 0,
+    }
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/.npmignore b/wrt/build/node_modules/esformatter/node_modules/resolve/.npmignore
new file mode 100644 (file)
index 0000000..f833451
--- /dev/null
@@ -0,0 +1,7 @@
+# gitignore
+node_modules
+
+# Only apps should have lockfiles
+npm-shrinkwrap.json
+package-lock.json
+yarn.lock
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/.travis.yml b/wrt/build/node_modules/esformatter/node_modules/resolve/.travis.yml
new file mode 100644 (file)
index 0000000..25709b3
--- /dev/null
@@ -0,0 +1,185 @@
+language: node_js
+os:
+ - linux
+node_js:
+  - "8.2"
+  - "7.10"
+  - "6.11"
+  - "5.12"
+  - "4.8"
+  - "iojs-v3.3"
+  - "iojs-v2.5"
+  - "iojs-v1.8"
+  - "0.12"
+  - "0.10"
+  - "0.8"
+  - "0.6"
+before_install:
+  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then npm install -g npm@1.3 ; elif [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then case "$(npm --version)" in 1.*) npm install -g npm@1.4.28 ;; 2.*) npm install -g npm@2 ;; esac ; fi'
+  - 'if [ "${TRAVIS_NODE_VERSION}" != "0.6" ] && [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then if [ "${TRAVIS_NODE_VERSION%${TRAVIS_NODE_VERSION#[0-9]}}" = "0" ] || [ "${TRAVIS_NODE_VERSION:0:4}" = "iojs" ]; then npm install -g npm@4.5 ; else npm install -g npm; fi; fi'
+install:
+  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then (nvm install 0.8 && npm install -g npm@1.3 && npm install -g npm@1.4.28 && npm install -g npm@2 && npm install); else npm install; fi;'
+script:
+  - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi'
+  - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi'
+  - 'if [ -n "${COVERAGE-}" ]; then npm run coverage ; fi'
+  - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi'
+sudo: false
+env:
+  - TEST=true
+matrix:
+  fast_finish: true
+  include:
+    - node_js: "node"
+      env: PRETEST=true
+    - node_js: "8.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.11"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v3.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v3.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v3.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v2.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v2.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v2.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v2.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v2.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "iojs-v1.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "0.11"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "0.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "0.4"
+      env: TEST=true ALLOW_FAILURE=true
+    ##- node_js: "7"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "6"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "5"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "4"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "iojs"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "0.12"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "0.10"
+      #env: TEST=true
+      #os: osx
+    #- node_js: "0.8"
+      #env: TEST=true
+      #os: osx
+  allow_failures:
+    - os: osx
+    - env: TEST=true ALLOW_FAILURE=true
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/appveyor.yml b/wrt/build/node_modules/esformatter/node_modules/resolve/appveyor.yml
new file mode 100644 (file)
index 0000000..f54a1b6
--- /dev/null
@@ -0,0 +1,44 @@
+version: 1.0.{build}
+skip_branch_with_pr: true
+build: off
+
+environment:
+  matrix:
+    - nodejs_version: "7"
+    - nodejs_version: "6"
+    - nodejs_version: "5"
+    - nodejs_version: "4"
+    - nodejs_version: "3"
+    - nodejs_version: "2"
+    - nodejs_version: "1"
+    - nodejs_version: "0.12"
+    - nodejs_version: "0.10"
+    - nodejs_version: "0.8"
+    - nodejs_version: "0.6"
+matrix:
+  # fast_finish: true
+  allow_failures:
+    - nodejs_version: "0.6"
+
+platform:
+  - x86
+  - x64
+
+# Install scripts. (runs after repo cloning)
+install:
+ # Get the latest stable version of Node.js or io.js
+ - ps: Install-Product node $env:nodejs_version $env:platform
+ - IF %nodejs_version% EQU 0.6 npm -g install npm@1.3
+ - IF %nodejs_version% EQU 0.8 npm -g install npm@2
+ - set PATH=%APPDATA%\npm;%PATH%
+ #- IF %nodejs_version% NEQ 0.6 AND %nodejs_version% NEQ 0.8 npm -g install npm
+ # install modules
+ - npm install
+
+# Post-install test scripts.
+test_script:
+ # Output useful info for debugging.
+ - node --version
+ - npm --version
+ # run tests
+ - npm run tests-only
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/example/async.js b/wrt/build/node_modules/esformatter/node_modules/resolve/example/async.js
new file mode 100644 (file)
index 0000000..20e65dc
--- /dev/null
@@ -0,0 +1,5 @@
+var resolve = require('../');
+resolve('tap', { basedir: __dirname }, function (err, res) {
+    if (err) console.error(err);
+    else console.log(res);
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/index.js
new file mode 100644 (file)
index 0000000..eb6ba89
--- /dev/null
@@ -0,0 +1,8 @@
+var core = require('./lib/core');
+var async = require('./lib/async');
+async.core = core;
+async.isCore = function isCore(x) { return core[x]; };
+async.sync = require('./lib/sync');
+
+exports = async;
+module.exports = async;
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/async.js b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/async.js
new file mode 100644 (file)
index 0000000..ef1bde7
--- /dev/null
@@ -0,0 +1,203 @@
+var core = require('./core');
+var fs = require('fs');
+var path = require('path');
+var caller = require('./caller.js');
+var nodeModulesPaths = require('./node-modules-paths.js');
+
+module.exports = function resolve(x, options, callback) {
+    var cb = callback;
+    var opts = options || {};
+    if (typeof opts === 'function') {
+        cb = opts;
+        opts = {};
+    }
+    if (typeof x !== 'string') {
+        var err = new TypeError('Path must be a string.');
+        return process.nextTick(function () {
+            cb(err);
+        });
+    }
+
+    var isFile = opts.isFile || function (file, cb) {
+        fs.stat(file, function (err, stat) {
+            if (!err) {
+                return cb(null, stat.isFile() || stat.isFIFO());
+            }
+            if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
+            return cb(err);
+        });
+    };
+    var readFile = opts.readFile || fs.readFile;
+
+    var extensions = opts.extensions || ['.js'];
+    var y = opts.basedir || path.dirname(caller());
+
+    opts.paths = opts.paths || [];
+
+    if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) {
+        var res = path.resolve(y, x);
+        if (x === '..' || x.slice(-1) === '/') res += '/';
+        if (/\/$/.test(x) && res === y) {
+            loadAsDirectory(res, opts.package, onfile);
+        } else loadAsFile(res, opts.package, onfile);
+    } else loadNodeModules(x, y, function (err, n, pkg) {
+        if (err) cb(err);
+        else if (n) cb(null, n, pkg);
+        else if (core[x]) return cb(null, x);
+        else {
+            var moduleError = new Error("Cannot find module '" + x + "' from '" + y + "'");
+            moduleError.code = 'MODULE_NOT_FOUND';
+            cb(moduleError);
+        }
+    });
+
+    function onfile(err, m, pkg) {
+        if (err) cb(err);
+        else if (m) cb(null, m, pkg);
+        else loadAsDirectory(res, function (err, d, pkg) {
+            if (err) cb(err);
+            else if (d) cb(null, d, pkg);
+            else {
+                var moduleError = new Error("Cannot find module '" + x + "' from '" + y + "'");
+                moduleError.code = 'MODULE_NOT_FOUND';
+                cb(moduleError);
+            }
+        });
+    }
+
+    function loadAsFile(x, thePackage, callback) {
+        var loadAsFilePackage = thePackage;
+        var cb = callback;
+        if (typeof loadAsFilePackage === 'function') {
+            cb = loadAsFilePackage;
+            loadAsFilePackage = undefined;
+        }
+
+        var exts = [''].concat(extensions);
+        load(exts, x, loadAsFilePackage);
+
+        function load(exts, x, loadPackage) {
+            if (exts.length === 0) return cb(null, undefined, loadPackage);
+            var file = x + exts[0];
+
+            var pkg = loadPackage;
+            if (pkg) onpkg(null, pkg);
+            else loadpkg(path.dirname(file), onpkg);
+
+            function onpkg(err, pkg_, dir) {
+                pkg = pkg_;
+                if (err) return cb(err);
+                if (dir && pkg && opts.pathFilter) {
+                    var rfile = path.relative(dir, file);
+                    var rel = rfile.slice(0, rfile.length - exts[0].length);
+                    var r = opts.pathFilter(pkg, x, rel);
+                    if (r) return load(
+                        [''].concat(extensions.slice()),
+                        path.resolve(dir, r),
+                        pkg
+                    );
+                }
+                isFile(file, onex);
+            }
+            function onex(err, ex) {
+                if (err) return cb(err);
+                if (ex) return cb(null, file, pkg);
+                load(exts.slice(1), x, pkg);
+            }
+        }
+    }
+
+    function loadpkg(dir, cb) {
+        if (dir === '' || dir === '/') return cb(null);
+        if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) {
+            return cb(null);
+        }
+        if (/[/\\]node_modules[/\\]*$/.test(dir)) return cb(null);
+
+        var pkgfile = path.join(dir, 'package.json');
+        isFile(pkgfile, function (err, ex) {
+            // on err, ex is false
+            if (!ex) return loadpkg(path.dirname(dir), cb);
+
+            readFile(pkgfile, function (err, body) {
+                if (err) cb(err);
+                try { var pkg = JSON.parse(body); } catch (jsonErr) {}
+
+                if (pkg && opts.packageFilter) {
+                    pkg = opts.packageFilter(pkg, pkgfile);
+                }
+                cb(null, pkg, dir);
+            });
+        });
+    }
+
+    function loadAsDirectory(x, loadAsDirectoryPackage, callback) {
+        var cb = callback;
+        var fpkg = loadAsDirectoryPackage;
+        if (typeof fpkg === 'function') {
+            cb = fpkg;
+            fpkg = opts.package;
+        }
+
+        var pkgfile = path.join(x, 'package.json');
+        isFile(pkgfile, function (err, ex) {
+            if (err) return cb(err);
+            if (!ex) return loadAsFile(path.join(x, 'index'), fpkg, cb);
+
+            readFile(pkgfile, function (err, body) {
+                if (err) return cb(err);
+                try {
+                    var pkg = JSON.parse(body);
+                } catch (jsonErr) {}
+
+                if (opts.packageFilter) {
+                    pkg = opts.packageFilter(pkg, pkgfile);
+                }
+
+                if (pkg.main) {
+                    if (pkg.main === '.' || pkg.main === './') {
+                        pkg.main = 'index';
+                    }
+                    loadAsFile(path.resolve(x, pkg.main), pkg, function (err, m, pkg) {
+                        if (err) return cb(err);
+                        if (m) return cb(null, m, pkg);
+                        if (!pkg) return loadAsFile(path.join(x, 'index'), pkg, cb);
+
+                        var dir = path.resolve(x, pkg.main);
+                        loadAsDirectory(dir, pkg, function (err, n, pkg) {
+                            if (err) return cb(err);
+                            if (n) return cb(null, n, pkg);
+                            loadAsFile(path.join(x, 'index'), pkg, cb);
+                        });
+                    });
+                    return;
+                }
+
+                loadAsFile(path.join(x, '/index'), pkg, cb);
+            });
+        });
+    }
+
+    function processDirs(cb, dirs) {
+        if (dirs.length === 0) return cb(null, undefined);
+        var dir = dirs[0];
+
+        var file = path.join(dir, x);
+        loadAsFile(file, undefined, onfile);
+
+        function onfile(err, m, pkg) {
+            if (err) return cb(err);
+            if (m) return cb(null, m, pkg);
+            loadAsDirectory(path.join(dir, x), undefined, ondir);
+        }
+
+        function ondir(err, n, pkg) {
+            if (err) return cb(err);
+            if (n) return cb(null, n, pkg);
+            processDirs(cb, dirs.slice(1));
+        }
+    }
+    function loadNodeModules(x, start, cb) {
+        processDirs(cb, nodeModulesPaths(start, opts));
+    }
+};
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/caller.js b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/caller.js
new file mode 100644 (file)
index 0000000..b14a280
--- /dev/null
@@ -0,0 +1,8 @@
+module.exports = function () {
+    // see https://code.google.com/p/v8/wiki/JavaScriptStackTraceApi
+    var origPrepareStackTrace = Error.prepareStackTrace;
+    Error.prepareStackTrace = function (_, stack) { return stack; };
+    var stack = (new Error()).stack;
+    Error.prepareStackTrace = origPrepareStackTrace;
+    return stack[2].getFileName();
+};
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.js b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.js
new file mode 100644 (file)
index 0000000..ad9efd1
--- /dev/null
@@ -0,0 +1,22 @@
+var current = (process.versions && process.versions.node && process.versions.node.split('.')) || [];
+
+function versionIncluded(version) {
+    if (version === '*') return true;
+    var versionParts = version.split('.');
+    for (var i = 0; i < 3; ++i) {
+        if ((current[i] || 0) >= (versionParts[i] || 0)) return true;
+    }
+    return false;
+}
+
+var data = require('./core.json');
+
+var core = {};
+for (var version in data) { // eslint-disable-line no-restricted-syntax
+    if (Object.prototype.hasOwnProperty.call(data, version) && versionIncluded(version)) {
+        for (var i = 0; i < data[version].length; ++i) {
+            core[data[version][i]] = true;
+        }
+    }
+}
+module.exports = core;
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.json b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/core.json
new file mode 100644 (file)
index 0000000..843844e
--- /dev/null
@@ -0,0 +1,47 @@
+{
+    "*": [
+        "assert",
+        "buffer_ieee754",
+        "buffer",
+        "child_process",
+        "cluster",
+        "console",
+        "constants",
+        "crypto",
+        "_debugger",
+        "dgram",
+        "dns",
+        "domain",
+        "events",
+        "freelist",
+        "fs",
+        "http",
+        "https",
+        "_linklist",
+        "module",
+        "net",
+        "os",
+        "path",
+        "punycode",
+        "querystring",
+        "readline",
+        "repl",
+        "stream",
+        "string_decoder",
+        "sys",
+        "timers",
+        "tls",
+        "tty",
+        "url",
+        "util",
+        "vm",
+        "zlib"
+    ],
+    "0.11": [
+        "_http_server"
+    ],
+    "1.0": [
+        "process",
+        "v8"
+    ]
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js
new file mode 100644 (file)
index 0000000..a4bde6a
--- /dev/null
@@ -0,0 +1,45 @@
+var path = require('path');
+var fs = require('fs');
+var parse = path.parse || require('path-parse');
+
+module.exports = function nodeModulesPaths(start, opts) {
+    var modules = opts && opts.moduleDirectory
+        ? [].concat(opts.moduleDirectory)
+        : ['node_modules'];
+
+    // ensure that `start` is an absolute path at this point,
+    // resolving against the process' current working directory
+    var absoluteStart = path.resolve(start);
+
+    if (opts && opts.preserveSymlinks === false) {
+        try {
+            absoluteStart = fs.realpathSync(absoluteStart);
+        } catch (err) {
+            if (err.code !== 'ENOENT') {
+                throw err;
+            }
+        }
+    }
+
+    var prefix = '/';
+    if (/^([A-Za-z]:)/.test(absoluteStart)) {
+        prefix = '';
+    } else if (/^\\\\/.test(absoluteStart)) {
+        prefix = '\\\\';
+    }
+
+    var paths = [absoluteStart];
+    var parsed = parse(absoluteStart);
+    while (parsed.dir !== paths[paths.length - 1]) {
+        paths.push(parsed.dir);
+        parsed = parse(parsed.dir);
+    }
+
+    var dirs = paths.reduce(function (dirs, aPath) {
+        return dirs.concat(modules.map(function (moduleDir) {
+            return path.join(prefix, aPath, moduleDir);
+        }));
+    }, []);
+
+    return opts && opts.paths ? dirs.concat(opts.paths) : dirs;
+};
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/lib/sync.js b/wrt/build/node_modules/esformatter/node_modules/resolve/lib/sync.js
new file mode 100644 (file)
index 0000000..bc9e287
--- /dev/null
@@ -0,0 +1,93 @@
+var core = require('./core');
+var fs = require('fs');
+var path = require('path');
+var caller = require('./caller.js');
+var nodeModulesPaths = require('./node-modules-paths.js');
+
+module.exports = function (x, options) {
+    if (typeof x !== 'string') {
+        throw new TypeError('Path must be a string.');
+    }
+    var opts = options || {};
+    var isFile = opts.isFile || function (file) {
+        try {
+            var stat = fs.statSync(file);
+        } catch (e) {
+            if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false;
+            throw e;
+        }
+        return stat.isFile() || stat.isFIFO();
+    };
+    var readFileSync = opts.readFileSync || fs.readFileSync;
+
+    var extensions = opts.extensions || ['.js'];
+    var y = opts.basedir || path.dirname(caller());
+
+    opts.paths = opts.paths || [];
+
+    if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) {
+        var res = path.resolve(y, x);
+        if (x === '..' || x.slice(-1) === '/') res += '/';
+        var m = loadAsFileSync(res) || loadAsDirectorySync(res);
+        if (m) return m;
+    } else {
+        var n = loadNodeModulesSync(x, y);
+        if (n) return n;
+    }
+
+    if (core[x]) return x;
+
+    var err = new Error("Cannot find module '" + x + "' from '" + y + "'");
+    err.code = 'MODULE_NOT_FOUND';
+    throw err;
+
+    function loadAsFileSync(x) {
+        if (isFile(x)) {
+            return x;
+        }
+
+        for (var i = 0; i < extensions.length; i++) {
+            var file = x + extensions[i];
+            if (isFile(file)) {
+                return file;
+            }
+        }
+    }
+
+    function loadAsDirectorySync(x) {
+        var pkgfile = path.join(x, '/package.json');
+        if (isFile(pkgfile)) {
+            try {
+                var body = readFileSync(pkgfile, 'UTF8');
+                var pkg = JSON.parse(body);
+
+                if (opts.packageFilter) {
+                    pkg = opts.packageFilter(pkg, x);
+                }
+
+                if (pkg.main) {
+                    if (pkg.main === '.' || pkg.main === './') {
+                        pkg.main = 'index';
+                    }
+                    var m = loadAsFileSync(path.resolve(x, pkg.main));
+                    if (m) return m;
+                    var n = loadAsDirectorySync(path.resolve(x, pkg.main));
+                    if (n) return n;
+                }
+            } catch (e) {}
+        }
+
+        return loadAsFileSync(path.join(x, '/index'));
+    }
+
+    function loadNodeModulesSync(x, start) {
+        var dirs = nodeModulesPaths(start, opts);
+        for (var i = 0; i < dirs.length; i++) {
+            var dir = dirs[i];
+            var m = loadAsFileSync(path.join(dir, '/', x));
+            if (m) return m;
+            var n = loadAsDirectorySync(path.join(dir, '/', x));
+            if (n) return n;
+        }
+    }
+};
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/package.json b/wrt/build/node_modules/esformatter/node_modules/resolve/package.json
new file mode 100644 (file)
index 0000000..ecf520b
--- /dev/null
@@ -0,0 +1,109 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "resolve@^1.1.5",
+        "scope": null,
+        "escapedName": "resolve",
+        "name": "resolve",
+        "rawSpec": "^1.1.5",
+        "spec": ">=1.1.5 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "resolve@>=1.1.5 <2.0.0",
+  "_id": "resolve@1.4.0",
+  "_inCache": true,
+  "_location": "/esformatter/resolve",
+  "_nodeVersion": "8.2.1",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/resolve-1.4.0.tgz_1501111654686_0.44756864523515105"
+  },
+  "_npmUser": {
+    "name": "ljharb",
+    "email": "ljharb@gmail.com"
+  },
+  "_npmVersion": "5.3.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "resolve@^1.1.5",
+    "scope": null,
+    "escapedName": "resolve",
+    "name": "resolve",
+    "rawSpec": "^1.1.5",
+    "spec": ">=1.1.5 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz",
+  "_shasum": "a75be01c53da25d934a98ebd0e4c4a7312f92a86",
+  "_shrinkwrap": null,
+  "_spec": "resolve@^1.1.5",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "James Halliday",
+    "email": "mail@substack.net",
+    "url": "http://substack.net"
+  },
+  "bugs": {
+    "url": "https://github.com/substack/node-resolve/issues"
+  },
+  "dependencies": {
+    "path-parse": "^1.0.5"
+  },
+  "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously",
+  "devDependencies": {
+    "@ljharb/eslint-config": "^12.2.0",
+    "eslint": "^4.3.0",
+    "object-keys": "^1.0.11",
+    "safe-publish-latest": "^1.1.1",
+    "tap": "0.4.13",
+    "tape": "^4.7.0"
+  },
+  "directories": {},
+  "dist": {
+    "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==",
+    "shasum": "a75be01c53da25d934a98ebd0e4c4a7312f92a86",
+    "tarball": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz"
+  },
+  "gitHead": "744f8162464a104aca60777e5f615418dab3b774",
+  "homepage": "https://github.com/substack/node-resolve#readme",
+  "keywords": [
+    "resolve",
+    "require",
+    "node",
+    "module"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "ljharb",
+      "email": "ljharb@gmail.com"
+    },
+    {
+      "name": "substack",
+      "email": "substack@gmail.com"
+    }
+  ],
+  "name": "resolve",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/substack/node-resolve.git"
+  },
+  "scripts": {
+    "lint": "eslint .",
+    "prepublish": "safe-publish-latest",
+    "pretest": "npm run lint",
+    "test": "npm run --silent tests-only",
+    "tests-only": "tape test/*.js"
+  },
+  "version": "1.4.0"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/readme.markdown b/wrt/build/node_modules/esformatter/node_modules/resolve/readme.markdown
new file mode 100644 (file)
index 0000000..1bb67d4
--- /dev/null
@@ -0,0 +1,160 @@
+# resolve
+
+implements the [node `require.resolve()`
+algorithm](https://nodejs.org/api/modules.html#modules_all_together)
+such that you can `require.resolve()` on behalf of a file asynchronously and
+synchronously
+
+[![build status](https://secure.travis-ci.org/substack/node-resolve.png)](http://travis-ci.org/substack/node-resolve)
+
+# example
+
+asynchronously resolve:
+
+``` js
+var resolve = require('resolve');
+resolve('tap', { basedir: __dirname }, function (err, res) {
+    if (err) console.error(err)
+    else console.log(res)
+});
+```
+
+```
+$ node example/async.js
+/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
+```
+
+synchronously resolve:
+
+``` js
+var resolve = require('resolve');
+var res = resolve.sync('tap', { basedir: __dirname });
+console.log(res);
+```
+
+```
+$ node example/sync.js
+/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
+```
+
+# methods
+
+``` js
+var resolve = require('resolve')
+```
+
+## resolve(id, opts={}, cb)
+
+Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`.
+
+options are:
+
+* opts.basedir - directory to begin resolving from
+
+* opts.package - `package.json` data applicable to the module being loaded
+
+* opts.extensions - array of file extensions to search in order
+
+* opts.readFile - how to read files asynchronously
+
+* opts.isFile - function to asynchronously test whether a file exists
+
+* opts.packageFilter - transform the parsed package.json contents before looking
+at the "main" field
+
+* opts.pathFilter(pkg, path, relativePath) - transform a path within a package
+  * pkg - package data
+  * path - the path being resolved
+  * relativePath - the path relative from the package.json location
+  * returns - a relative path that will be joined from the package.json location
+
+* opts.paths - require.paths array to use if nothing is found on the normal
+node_modules recursive walk (probably don't use this)
+
+* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
+
+* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving.
+This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag.
+**Note:** this property is currently `true` by default but it will be changed to
+`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*.
+
+default `opts` values:
+
+``` javascript
+{
+    paths: [],
+    basedir: __dirname,
+    extensions: [ '.js' ],
+    readFile: fs.readFile,
+    isFile: function (file, cb) {
+        fs.stat(file, function (err, stat) {
+            if (err && err.code === 'ENOENT') cb(null, false)
+            else if (err) cb(err)
+            else cb(null, stat.isFile())
+        });
+    },
+    moduleDirectory: 'node_modules',
+    preserveSymlinks: true
+}
+```
+
+## resolve.sync(id, opts)
+
+Synchronously resolve the module path string `id`, returning the result and
+throwing an error when `id` can't be resolved.
+
+options are:
+
+* opts.basedir - directory to begin resolving from
+
+* opts.extensions - array of file extensions to search in order
+
+* opts.readFile - how to read files synchronously
+
+* opts.isFile - function to synchronously test whether a file exists
+
+* `opts.packageFilter(pkg, pkgfile)` - transform the parsed package.json
+* contents before looking at the "main" field
+
+* opts.paths - require.paths array to use if nothing is found on the normal
+node_modules recursive walk (probably don't use this)
+
+* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
+
+* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving.
+This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag.
+**Note:** this property is currently `true` by default but it will be changed to
+`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*.
+
+default `opts` values:
+
+``` javascript
+{
+    paths: [],
+    basedir: __dirname,
+    extensions: [ '.js' ],
+    readFileSync: fs.readFileSync,
+    isFile: function (file) {
+        try { return fs.statSync(file).isFile() }
+        catch (e) { return false }
+    },
+    moduleDirectory: 'node_modules',
+    preserveSymlinks: true
+}
+````
+
+## resolve.isCore(pkg)
+
+Return whether a package is in core.
+
+# install
+
+With [npm](https://npmjs.org) do:
+
+```
+npm install resolve
+```
+
+# license
+
+MIT
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/core.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/core.js
new file mode 100644 (file)
index 0000000..1182e0c
--- /dev/null
@@ -0,0 +1,29 @@
+var test = require('tape');
+var resolve = require('../');
+
+test('core modules', function (t) {
+    t.test('isCore()', function (st) {
+        st.ok(resolve.isCore('fs'));
+        st.ok(resolve.isCore('net'));
+        st.ok(resolve.isCore('http'));
+
+        st.ok(!resolve.isCore('seq'));
+        st.ok(!resolve.isCore('../'));
+        st.end();
+    });
+
+    t.test('core list', function (st) {
+        st.plan(resolve.core.length);
+
+        for (var i = 0; i < resolve.core.length; ++i) {
+            st.doesNotThrow(
+                function () { require(resolve.core[i]); }, // eslint-disable-line no-loop-func
+                'requiring ' + resolve.core[i] + ' does not throw'
+            );
+        }
+
+        st.end();
+    });
+
+    t.end();
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot.js
new file mode 100644 (file)
index 0000000..3080665
--- /dev/null
@@ -0,0 +1,29 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('dotdot', function (t) {
+    t.plan(4);
+    var dir = path.join(__dirname, '/dotdot/abc');
+
+    resolve('..', { basedir: dir }, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(__dirname, 'dotdot/index.js'));
+    });
+
+    resolve('.', { basedir: dir }, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, 'index.js'));
+    });
+});
+
+test('dotdot sync', function (t) {
+    t.plan(2);
+    var dir = path.join(__dirname, '/dotdot/abc');
+
+    var a = resolve.sync('..', { basedir: dir });
+    t.equal(a, path.join(__dirname, 'dotdot/index.js'));
+
+    var b = resolve.sync('.', { basedir: dir });
+    t.equal(b, path.join(dir, 'index.js'));
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js
new file mode 100644 (file)
index 0000000..643f9fc
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'whatever';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js
new file mode 100644 (file)
index 0000000..e20d937
--- /dev/null
@@ -0,0 +1,13 @@
+var test = require('tape');
+var resolve = require('../');
+
+test('faulty basedir must produce error in windows', { skip: process.platform !== 'win32' }, function (t) {
+    t.plan(1);
+
+    var resolverDir = 'C:\\a\\b\\c\\d';
+
+    resolve('tape/lib/test.js', { basedir: resolverDir }, function (err, res, pkg) {
+        t.equal(true, !!err);
+    });
+
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/filter.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/filter.js
new file mode 100644 (file)
index 0000000..51a753f
--- /dev/null
@@ -0,0 +1,19 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('filter', function (t) {
+    t.plan(2);
+    var dir = path.join(__dirname, 'resolver');
+    resolve('./baz', {
+        basedir: dir,
+        packageFilter: function (pkg) {
+            pkg.main = 'doom';
+            return pkg;
+        }
+    }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'baz/doom.js'));
+        t.equal(pkg.main, 'doom');
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/filter_sync.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/filter_sync.js
new file mode 100644 (file)
index 0000000..fd4e97c
--- /dev/null
@@ -0,0 +1,16 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('filter', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+    var res = resolve.sync('./baz', {
+        basedir: dir,
+        packageFilter: function (pkg) {
+            pkg.main = 'doom';
+            return pkg;
+        }
+    });
+    t.equal(res, path.join(dir, 'baz/doom.js'));
+    t.end();
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/mock.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/mock.js
new file mode 100644 (file)
index 0000000..a88059d
--- /dev/null
@@ -0,0 +1,143 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('mock', function (t) {
+    t.plan(8);
+
+    var files = {};
+    files[path.resolve('/foo/bar/baz.js')] = 'beep';
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file, cb) {
+                cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
+            },
+            readFile: function (file, cb) {
+                cb(null, files[path.resolve(file)]);
+            }
+        };
+    }
+
+    resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/bar/baz.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/bar/baz.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('baz', opts('/foo/bar'), function (err, res) {
+        t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+
+    resolve('../baz', opts('/foo/bar'), function (err, res) {
+        t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+});
+
+test('mock from package', function (t) {
+    t.plan(8);
+
+    var files = {};
+    files[path.resolve('/foo/bar/baz.js')] = 'beep';
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file, cb) {
+                cb(null, Object.prototype.hasOwnProperty.call(files, file));
+            },
+            'package': { main: 'bar' },
+            readFile: function (file, cb) {
+                cb(null, files[file]);
+            }
+        };
+    }
+
+    resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/bar/baz.js'));
+        t.equal(pkg && pkg.main, 'bar');
+    });
+
+    resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/bar/baz.js'));
+        t.equal(pkg && pkg.main, 'bar');
+    });
+
+    resolve('baz', opts('/foo/bar'), function (err, res) {
+        t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+
+    resolve('../baz', opts('/foo/bar'), function (err, res) {
+        t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+});
+
+test('mock package', function (t) {
+    t.plan(2);
+
+    var files = {};
+    files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
+    files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
+        main: './baz.js'
+    });
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file, cb) {
+                cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
+            },
+            readFile: function (file, cb) {
+                cb(null, files[path.resolve(file)]);
+            }
+        };
+    }
+
+    resolve('bar', opts('/foo'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/node_modules/bar/baz.js'));
+        t.equal(pkg && pkg.main, './baz.js');
+    });
+});
+
+test('mock package from package', function (t) {
+    t.plan(2);
+
+    var files = {};
+    files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
+    files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
+        main: './baz.js'
+    });
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file, cb) {
+                cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
+            },
+            'package': { main: 'bar' },
+            readFile: function (file, cb) {
+                cb(null, files[path.resolve(file)]);
+            }
+        };
+    }
+
+    resolve('bar', opts('/foo'), function (err, res, pkg) {
+        if (err) return t.fail(err);
+        t.equal(res, path.resolve('/foo/node_modules/bar/baz.js'));
+        t.equal(pkg && pkg.main, './baz.js');
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/mock_sync.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/mock_sync.js
new file mode 100644 (file)
index 0000000..43af102
--- /dev/null
@@ -0,0 +1,67 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('mock', function (t) {
+    t.plan(4);
+
+    var files = {};
+    files[path.resolve('/foo/bar/baz.js')] = 'beep';
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file) {
+                return Object.prototype.hasOwnProperty.call(files, file);
+            },
+            readFileSync: function (file) {
+                return files[file];
+            }
+        };
+    }
+
+    t.equal(
+        resolve.sync('./baz', opts('/foo/bar')),
+        path.resolve('/foo/bar/baz.js')
+    );
+
+    t.equal(
+        resolve.sync('./baz.js', opts('/foo/bar')),
+        path.resolve('/foo/bar/baz.js')
+    );
+
+    t.throws(function () {
+        resolve.sync('baz', opts('/foo/bar'));
+    });
+
+    t.throws(function () {
+        resolve.sync('../baz', opts('/foo/bar'));
+    });
+});
+
+test('mock package', function (t) {
+    t.plan(1);
+
+    var files = {};
+    files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
+    files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
+        main: './baz.js'
+    });
+
+    function opts(basedir) {
+        return {
+            basedir: path.resolve(basedir),
+            isFile: function (file) {
+                return Object.prototype.hasOwnProperty.call(files, file);
+            },
+            readFileSync: function (file) {
+                return files[file];
+            }
+        };
+    }
+
+    t.equal(
+        resolve.sync('bar', opts('/foo')),
+        path.resolve('/foo/node_modules/bar/baz.js')
+    );
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir.js
new file mode 100644 (file)
index 0000000..b50e5bb
--- /dev/null
@@ -0,0 +1,56 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('moduleDirectory strings', function (t) {
+    t.plan(4);
+    var dir = path.join(__dirname, 'module_dir');
+    var xopts = {
+        basedir: dir,
+        moduleDirectory: 'xmodules'
+    };
+    resolve('aaa', xopts, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, '/xmodules/aaa/index.js'));
+    });
+
+    var yopts = {
+        basedir: dir,
+        moduleDirectory: 'ymodules'
+    };
+    resolve('aaa', yopts, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, '/ymodules/aaa/index.js'));
+    });
+});
+
+test('moduleDirectory array', function (t) {
+    t.plan(6);
+    var dir = path.join(__dirname, 'module_dir');
+    var aopts = {
+        basedir: dir,
+        moduleDirectory: ['xmodules', 'ymodules', 'zmodules']
+    };
+    resolve('aaa', aopts, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, '/xmodules/aaa/index.js'));
+    });
+
+    var bopts = {
+        basedir: dir,
+        moduleDirectory: ['zmodules', 'ymodules', 'xmodules']
+    };
+    resolve('aaa', bopts, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, '/ymodules/aaa/index.js'));
+    });
+
+    var copts = {
+        basedir: dir,
+        moduleDirectory: ['xmodules', 'ymodules', 'zmodules']
+    };
+    resolve('bbb', copts, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, '/zmodules/bbb/main.js'));
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js
new file mode 100644 (file)
index 0000000..dd7cf7b
--- /dev/null
@@ -0,0 +1 @@
+module.exports = function (x) { return x * 100; };
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js
new file mode 100644 (file)
index 0000000..ef2d4d4
--- /dev/null
@@ -0,0 +1 @@
+module.exports = function (x) { return x + 100; };
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js
new file mode 100644 (file)
index 0000000..e8ba629
--- /dev/null
@@ -0,0 +1 @@
+module.exports = function (n) { return n * 111; };
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node-modules-paths.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node-modules-paths.js
new file mode 100644 (file)
index 0000000..a917f06
--- /dev/null
@@ -0,0 +1,93 @@
+var test = require('tape');
+var path = require('path');
+var parse = path.parse || require('path-parse');
+var keys = require('object-keys');
+
+var nodeModulesPaths = require('../lib/node-modules-paths');
+
+var verifyDirs = function verifyDirs(t, start, dirs, moduleDirectories, paths) {
+    var moduleDirs = [].concat(moduleDirectories || 'node_modules');
+
+    var foundModuleDirs = {};
+    var uniqueDirs = {};
+    var parsedDirs = {};
+    for (var i = 0; i < dirs.length; ++i) {
+        var parsed = parse(dirs[i]);
+        if (!foundModuleDirs[parsed.base]) { foundModuleDirs[parsed.base] = 0; }
+        foundModuleDirs[parsed.base] += 1;
+        parsedDirs[parsed.dir] = true;
+        uniqueDirs[dirs[i]] = true;
+    }
+    t.equal(keys(parsedDirs).length >= start.split(path.sep).length, true, 'there are >= dirs than "start" has');
+    var foundModuleDirNames = keys(foundModuleDirs);
+    t.deepEqual(foundModuleDirNames, moduleDirs.concat(paths || []), 'all desired module dirs were found');
+    t.equal(keys(uniqueDirs).length, dirs.length, 'all dirs provided were unique');
+
+    var counts = {};
+    for (var j = 0; j < foundModuleDirNames.length; ++j) {
+        counts[foundModuleDirs[j]] = true;
+    }
+    t.equal(keys(counts).length, 1, 'all found module directories had the same count');
+};
+
+test('node-modules-paths', function (t) {
+    t.test('no options', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var dirs = nodeModulesPaths(start);
+
+        verifyDirs(t, start, dirs);
+
+        t.end();
+    });
+
+    t.test('empty options', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var dirs = nodeModulesPaths(start, {});
+
+        verifyDirs(t, start, dirs);
+
+        t.end();
+    });
+
+    t.test('with paths option', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var paths = ['a', 'b'];
+        var dirs = nodeModulesPaths(start, { paths: paths });
+
+        verifyDirs(t, start, dirs, null, paths);
+
+        t.end();
+    });
+
+    t.test('with moduleDirectory option', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var moduleDirectory = 'not node modules';
+        var dirs = nodeModulesPaths(start, { moduleDirectory: moduleDirectory });
+
+        verifyDirs(t, start, dirs, moduleDirectory);
+
+        t.end();
+    });
+
+    t.test('with 1 moduleDirectory and paths options', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var paths = ['a', 'b'];
+        var moduleDirectory = 'not node modules';
+        var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectory });
+
+        verifyDirs(t, start, dirs, moduleDirectory, paths);
+
+        t.end();
+    });
+
+    t.test('with 1+ moduleDirectory and paths options', function (t) {
+        var start = path.join(__dirname, 'resolver');
+        var paths = ['a', 'b'];
+        var moduleDirectories = ['not node modules', 'other modules'];
+        var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories });
+
+        verifyDirs(t, start, dirs, moduleDirectories, paths);
+
+        t.end();
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path.js
new file mode 100644 (file)
index 0000000..38a7d7e
--- /dev/null
@@ -0,0 +1,49 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('$NODE_PATH', function (t) {
+    t.plan(4);
+
+    resolve('aaa', {
+        paths: [
+            path.join(__dirname, '/node_path/x'),
+            path.join(__dirname, '/node_path/y')
+        ],
+        basedir: __dirname
+    }, function (err, res) {
+        t.equal(res, path.join(__dirname, '/node_path/x/aaa/index.js'));
+    });
+
+    resolve('bbb', {
+        paths: [
+            path.join(__dirname, '/node_path/x'),
+            path.join(__dirname, '/node_path/y')
+        ],
+        basedir: __dirname
+    }, function (err, res) {
+        t.equal(res, path.join(__dirname, '/node_path/y/bbb/index.js'));
+    });
+
+    resolve('ccc', {
+        paths: [
+            path.join(__dirname, '/node_path/x'),
+            path.join(__dirname, '/node_path/y')
+        ],
+        basedir: __dirname
+    }, function (err, res) {
+        t.equal(res, path.join(__dirname, '/node_path/x/ccc/index.js'));
+    });
+
+    // ensure that relative paths still resolve against the
+    // regular `node_modules` correctly
+    resolve('tap', {
+        paths: [
+            'node_path'
+        ],
+        basedir: 'node_path/x'
+    }, function (err, res) {
+        var root = require('tap/package.json').main;
+        t.equal(res, path.resolve(__dirname, '..', 'node_modules/tap', root));
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js
new file mode 100644 (file)
index 0000000..ad70d0b
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'A';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js
new file mode 100644 (file)
index 0000000..a64132e
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'C';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js
new file mode 100644 (file)
index 0000000..4d0f32e
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'B';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js
new file mode 100644 (file)
index 0000000..793315e
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'CY';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/pathfilter.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/pathfilter.js
new file mode 100644 (file)
index 0000000..733045a
--- /dev/null
@@ -0,0 +1,42 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('#62: deep module references and the pathFilter', function (t) {
+    t.plan(9);
+
+    var resolverDir = path.join(__dirname, '/pathfilter/deep_ref');
+    var pathFilter = function (pkg, x, remainder) {
+        t.equal(pkg.version, '1.2.3');
+        t.equal(x, path.join(resolverDir, 'node_modules/deep/ref'));
+        t.equal(remainder, 'ref');
+        return 'alt';
+    };
+
+    resolve('deep/ref', { basedir: resolverDir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+
+        t.equal(pkg.version, '1.2.3');
+        t.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js'));
+    });
+
+    resolve(
+        'deep/deeper/ref',
+        { basedir: resolverDir },
+        function (err, res, pkg) {
+            if (err) t.fail(err);
+            t.notEqual(pkg, undefined);
+            t.equal(pkg.version, '1.2.3');
+            t.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js'));
+        }
+    );
+
+    resolve(
+        'deep/ref',
+        { basedir: resolverDir, pathFilter: pathFilter },
+        function (err, res, pkg) {
+            if (err) t.fail(err);
+            t.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js'));
+        }
+    );
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence.js
new file mode 100644 (file)
index 0000000..2febb59
--- /dev/null
@@ -0,0 +1,23 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('precedence', function (t) {
+    t.plan(3);
+    var dir = path.join(__dirname, 'precedence/aaa');
+
+    resolve('./', { basedir: dir }, function (err, res, pkg) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, 'index.js'));
+        t.equal(pkg.name, 'resolve');
+    });
+});
+
+test('./ should not load ${dir}.js', function (t) { // eslint-disable-line no-template-curly-in-string
+    t.plan(1);
+    var dir = path.join(__dirname, 'precedence/bbb');
+
+    resolve('./', { basedir: dir }, function (err, res, pkg) {
+        t.ok(err);
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js
new file mode 100644 (file)
index 0000000..b83a3e7
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'wtf';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js
new file mode 100644 (file)
index 0000000..e0f8f6a
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 'okok';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js
new file mode 100644 (file)
index 0000000..93542a9
--- /dev/null
@@ -0,0 +1 @@
+console.log(require('./'));
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js
new file mode 100644 (file)
index 0000000..2298f47
--- /dev/null
@@ -0,0 +1 @@
+module.exports = '>_<';
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver.js
new file mode 100644 (file)
index 0000000..56641df
--- /dev/null
@@ -0,0 +1,349 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('async foo', function (t) {
+    t.plan(10);
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('./foo', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'foo.js'));
+        t.equal(pkg && pkg.name, 'resolve');
+    });
+
+    resolve('./foo.js', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'foo.js'));
+        t.equal(pkg && pkg.name, 'resolve');
+    });
+
+    resolve('./foo', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'foo.js'));
+        t.equal(pkg && pkg.main, 'resolver');
+    });
+
+    resolve('./foo.js', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'foo.js'));
+        t.equal(pkg.main, 'resolver');
+    });
+
+    resolve('foo', { basedir: dir }, function (err) {
+        t.equal(err.message, "Cannot find module 'foo' from '" + path.resolve(dir) + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+});
+
+test('bar', function (t) {
+    t.plan(6);
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('foo', { basedir: dir + '/bar', 'package': { main: 'bar' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
+        t.equal(pkg, undefined);
+    });
+});
+
+test('baz', function (t) {
+    t.plan(4);
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('./baz', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'baz/quux.js'));
+        t.equal(pkg.main, 'quux.js');
+    });
+
+    resolve('./baz', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'baz/quux.js'));
+        t.equal(pkg.main, 'quux.js');
+    });
+});
+
+test('biz', function (t) {
+    t.plan(24);
+    var dir = path.join(__dirname, 'resolver/biz/node_modules');
+
+    resolve('./grux', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'grux/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('./grux', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'grux/index.js'));
+        t.equal(pkg.main, 'biz');
+    });
+
+    resolve('./garply', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'garply/lib/index.js'));
+        t.equal(pkg.main, './lib');
+    });
+
+    resolve('./garply', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'garply/lib/index.js'));
+        t.equal(pkg.main, './lib');
+    });
+
+    resolve('tiv', { basedir: dir + '/grux' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'tiv/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('tiv', { basedir: dir + '/grux', 'package': { main: 'grux' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'tiv/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('tiv', { basedir: dir + '/garply' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'tiv/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('tiv', { basedir: dir + '/garply', 'package': { main: './lib' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'tiv/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('grux', { basedir: dir + '/tiv' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'grux/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('grux', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'grux/index.js'));
+        t.equal(pkg, undefined);
+    });
+
+    resolve('garply', { basedir: dir + '/tiv' }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'garply/lib/index.js'));
+        t.equal(pkg.main, './lib');
+    });
+
+    resolve('garply', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'garply/lib/index.js'));
+        t.equal(pkg.main, './lib');
+    });
+});
+
+test('quux', function (t) {
+    t.plan(2);
+    var dir = path.join(__dirname, 'resolver/quux');
+
+    resolve('./foo', { basedir: dir, 'package': { main: 'quux' } }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'foo/index.js'));
+        t.equal(pkg.main, 'quux');
+    });
+});
+
+test('normalize', function (t) {
+    t.plan(2);
+    var dir = path.join(__dirname, 'resolver/biz/node_modules/grux');
+
+    resolve('../grux', { basedir: dir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'index.js'));
+        t.equal(pkg, undefined);
+    });
+});
+
+test('cup', function (t) {
+    t.plan(4);
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('./cup', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'cup.coffee'));
+    });
+
+    resolve('./cup.coffee', { basedir: dir }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'cup.coffee'));
+    });
+
+    resolve('./cup', { basedir: dir, extensions: ['.js'] }, function (err, res) {
+        t.equal(err.message, "Cannot find module './cup' from '" + path.resolve(dir) + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+});
+
+test('mug', function (t) {
+    t.plan(3);
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('./mug', { basedir: dir }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'mug.js'));
+    });
+
+    resolve('./mug', { basedir: dir, extensions: ['.coffee', '.js'] }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, '/mug.coffee'));
+    });
+
+    resolve('./mug', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) {
+        t.equal(res, path.join(dir, '/mug.js'));
+    });
+});
+
+test('other path', function (t) {
+    t.plan(6);
+    var resolverDir = path.join(__dirname, 'resolver');
+    var dir = path.join(resolverDir, 'bar');
+    var otherDir = path.join(resolverDir, 'other_path');
+
+    resolve('root', { basedir: dir, paths: [otherDir] }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(resolverDir, 'other_path/root.js'));
+    });
+
+    resolve('lib/other-lib', { basedir: dir, paths: [otherDir] }, function (err, res) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(resolverDir, 'other_path/lib/other-lib.js'));
+    });
+
+    resolve('root', { basedir: dir }, function (err, res) {
+        t.equal(err.message, "Cannot find module 'root' from '" + path.resolve(dir) + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+
+    resolve('zzz', { basedir: dir, paths: [otherDir] }, function (err, res) {
+        t.equal(err.message, "Cannot find module 'zzz' from '" + path.resolve(dir) + "'");
+        t.equal(err.code, 'MODULE_NOT_FOUND');
+    });
+});
+
+test('incorrect main', function (t) {
+    t.plan(1);
+
+    var resolverDir = path.join(__dirname, 'resolver');
+    var dir = path.join(resolverDir, 'incorrect_main');
+
+    resolve('./incorrect_main', { basedir: resolverDir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'index.js'));
+    });
+});
+
+test('without basedir', function (t) {
+    t.plan(1);
+
+    var dir = path.join(__dirname, 'resolver/without_basedir');
+    var tester = require(path.join(dir, 'main.js'));
+
+    tester(t, function (err, res, pkg) {
+        if (err) {
+            t.fail(err);
+        } else {
+            t.equal(res, path.join(dir, 'node_modules/mymodule.js'));
+        }
+    });
+});
+
+test('#25: node modules with the same name as node stdlib modules', function (t) {
+    t.plan(1);
+
+    var resolverDir = path.join(__dirname, 'resolver/punycode');
+
+    resolve('punycode', { basedir: resolverDir }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(resolverDir, 'node_modules/punycode/index.js'));
+    });
+});
+
+test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) {
+    t.plan(2);
+
+    var dir = path.join(__dirname, 'resolver');
+
+    resolve('./foo', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'same_names/foo.js'));
+    });
+
+    resolve('./foo/', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(dir, 'same_names/foo/index.js'));
+    });
+});
+
+test('async: #121 - treating an existing file as a dir when no basedir', function (t) {
+    var testFile = path.basename(__filename);
+
+    t.test('sanity check', function (st) {
+        st.plan(1);
+        resolve('./' + testFile, function (err, res, pkg) {
+            if (err) t.fail(err);
+            st.equal(res, __filename, 'sanity check');
+        });
+    });
+
+    t.test('with a fake directory', function (st) {
+        st.plan(4);
+
+        resolve('./' + testFile + '/blah', function (err, res, pkg) {
+            st.ok(err, 'there is an error');
+            st.notOk(res, 'no result');
+
+            st.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
+            st.equal(
+                err && err.message,
+                'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'',
+                'can not find nonexistent module'
+            );
+            st.end();
+        });
+    });
+
+    t.end();
+});
+
+test('async dot main', function (t) {
+    var start = new Date();
+    t.plan(3);
+    resolve('./resolver/dot_main', function (err, ret) {
+        t.notOk(err);
+        t.equal(ret, path.join(__dirname, 'resolver/dot_main/index.js'));
+        t.ok(new Date() - start < 50, 'resolve.sync timedout');
+        t.end();
+    });
+});
+
+test('async dot slash main', function (t) {
+    var start = new Date();
+    t.plan(3);
+    resolve('./resolver/dot_slash_main', function (err, ret) {
+        t.notOk(err);
+        t.equal(ret, path.join(__dirname, 'resolver/dot_slash_main/index.js'));
+        t.ok(new Date() - start < 50, 'resolve.sync timedout');
+        t.end();
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json
new file mode 100644 (file)
index 0000000..c41e4db
--- /dev/null
@@ -0,0 +1,3 @@
+{
+    "main": "quux.js"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_main/package.json b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_main/package.json
new file mode 100644 (file)
index 0000000..d7f4fc8
--- /dev/null
@@ -0,0 +1,3 @@
+{
+    "main": "."
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_slash_main/package.json b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/dot_slash_main/package.json
new file mode 100644 (file)
index 0000000..f51287b
--- /dev/null
@@ -0,0 +1,3 @@
+{
+    "main": "./"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json
new file mode 100644 (file)
index 0000000..b718804
--- /dev/null
@@ -0,0 +1,3 @@
+{
+    "main": "wrong.js"
+}
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/quux/foo/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/quux/foo/index.js
new file mode 100644 (file)
index 0000000..bd816ea
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 1;
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo.js
new file mode 100644 (file)
index 0000000..888cae3
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 42;
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo/index.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/same_names/foo/index.js
new file mode 100644 (file)
index 0000000..bd816ea
--- /dev/null
@@ -0,0 +1 @@
+module.exports = 1;
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/.npmignore b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/.npmignore
new file mode 100644 (file)
index 0000000..f23f892
--- /dev/null
@@ -0,0 +1 @@
+symlink\r
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/_/.npmignore b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/symlinked/_/.npmignore
new file mode 100644 (file)
index 0000000..cf4bab9
--- /dev/null
@@ -0,0 +1 @@
+!node_modules
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js
new file mode 100644 (file)
index 0000000..5b31975
--- /dev/null
@@ -0,0 +1,5 @@
+var resolve = require('../../../');
+
+module.exports = function (t, cb) {
+    resolve('mymodule', null, cb);
+};
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js
new file mode 100644 (file)
index 0000000..8e33dca
--- /dev/null
@@ -0,0 +1,267 @@
+var path = require('path');
+var test = require('tape');
+var resolve = require('../');
+
+test('foo', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+
+    t.equal(
+        resolve.sync('./foo', { basedir: dir }),
+        path.join(dir, 'foo.js')
+    );
+
+    t.equal(
+        resolve.sync('./foo.js', { basedir: dir }),
+        path.join(dir, 'foo.js')
+    );
+
+    t.throws(function () {
+        resolve.sync('foo', { basedir: dir });
+    });
+
+    t.end();
+});
+
+test('bar', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+
+    t.equal(
+        resolve.sync('foo', { basedir: path.join(dir, 'bar') }),
+        path.join(dir, 'bar/node_modules/foo/index.js')
+    );
+    t.end();
+});
+
+test('baz', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+
+    t.equal(
+        resolve.sync('./baz', { basedir: dir }),
+        path.join(dir, 'baz/quux.js')
+    );
+    t.end();
+});
+
+test('biz', function (t) {
+    var dir = path.join(__dirname, 'resolver/biz/node_modules');
+    t.equal(
+        resolve.sync('./grux', { basedir: dir }),
+        path.join(dir, 'grux/index.js')
+    );
+
+    t.equal(
+        resolve.sync('tiv', { basedir: path.join(dir, 'grux') }),
+        path.join(dir, 'tiv/index.js')
+    );
+
+    t.equal(
+        resolve.sync('grux', { basedir: path.join(dir, 'tiv') }),
+        path.join(dir, 'grux/index.js')
+    );
+    t.end();
+});
+
+test('normalize', function (t) {
+    var dir = path.join(__dirname, 'resolver/biz/node_modules/grux');
+    t.equal(
+        resolve.sync('../grux', { basedir: dir }),
+        path.join(dir, 'index.js')
+    );
+    t.end();
+});
+
+test('cup', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+    t.equal(
+        resolve.sync('./cup', {
+            basedir: dir,
+            extensions: ['.js', '.coffee']
+        }),
+        path.join(dir, 'cup.coffee')
+    );
+
+    t.equal(
+        resolve.sync('./cup.coffee', { basedir: dir }),
+        path.join(dir, 'cup.coffee')
+    );
+
+    t.throws(function () {
+        resolve.sync('./cup', {
+            basedir: dir,
+            extensions: ['.js']
+        });
+    });
+
+    t.end();
+});
+
+test('mug', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+    t.equal(
+        resolve.sync('./mug', { basedir: dir }),
+        path.join(dir, 'mug.js')
+    );
+
+    t.equal(
+        resolve.sync('./mug', {
+            basedir: dir,
+            extensions: ['.coffee', '.js']
+        }),
+        path.join(dir, 'mug.coffee')
+    );
+
+    t.equal(
+        resolve.sync('./mug', {
+            basedir: dir,
+            extensions: ['.js', '.coffee']
+        }),
+        path.join(dir, 'mug.js')
+    );
+
+    t.end();
+});
+
+test('other path', function (t) {
+    var resolverDir = path.join(__dirname, 'resolver');
+    var dir = path.join(resolverDir, 'bar');
+    var otherDir = path.join(resolverDir, 'other_path');
+
+    t.equal(
+        resolve.sync('root', {
+            basedir: dir,
+            paths: [otherDir]
+        }),
+        path.join(resolverDir, 'other_path/root.js')
+    );
+
+    t.equal(
+        resolve.sync('lib/other-lib', {
+            basedir: dir,
+            paths: [otherDir]
+        }),
+        path.join(resolverDir, 'other_path/lib/other-lib.js')
+    );
+
+    t.throws(function () {
+        resolve.sync('root', { basedir: dir });
+    });
+
+    t.throws(function () {
+        resolve.sync('zzz', {
+            basedir: dir,
+            paths: [otherDir]
+        });
+    });
+
+    t.end();
+});
+
+test('incorrect main', function (t) {
+    var resolverDir = path.join(__dirname, 'resolver');
+    var dir = path.join(resolverDir, 'incorrect_main');
+
+    t.equal(
+        resolve.sync('./incorrect_main', { basedir: resolverDir }),
+        path.join(dir, 'index.js')
+    );
+
+    t.end();
+});
+
+test('#25: node modules with the same name as node stdlib modules', function (t) {
+    var resolverDir = path.join(__dirname, 'resolver/punycode');
+
+    t.equal(
+        resolve.sync('punycode', { basedir: resolverDir }),
+        path.join(resolverDir, 'node_modules/punycode/index.js')
+    );
+
+    t.end();
+});
+
+var stubStatSync = function stubStatSync(fn) {
+    var fs = require('fs');
+    var statSync = fs.statSync;
+    try {
+        fs.statSync = function () {
+            throw new EvalError('Unknown Error');
+        };
+        return fn();
+    } finally {
+        fs.statSync = statSync;
+    }
+};
+
+test('#79 - re-throw non ENOENT errors from stat', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+
+    stubStatSync(function () {
+        t.throws(function () {
+            resolve.sync('foo', { basedir: dir });
+        }, /Unknown Error/);
+    });
+
+    t.end();
+});
+
+test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) {
+    var dir = path.join(__dirname, 'resolver');
+
+    t.equal(
+        resolve.sync('./foo', { basedir: path.join(dir, 'same_names') }),
+        path.join(dir, 'same_names/foo.js')
+    );
+    t.equal(
+        resolve.sync('./foo/', { basedir: path.join(dir, 'same_names') }),
+        path.join(dir, 'same_names/foo/index.js')
+    );
+    t.end();
+});
+
+test('sync: #121 - treating an existing file as a dir when no basedir', function (t) {
+    var testFile = path.basename(__filename);
+
+    t.test('sanity check', function (st) {
+        st.equal(
+            resolve.sync('./' + testFile),
+            __filename,
+            'sanity check'
+        );
+        st.end();
+    });
+
+    t.test('with a fake directory', function (st) {
+        function run() { return resolve.sync('./' + testFile + '/blah'); }
+
+        st.throws(run, 'throws an error');
+
+        try {
+            run();
+        } catch (e) {
+            st.equal(e.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
+            st.equal(
+                e.message,
+                'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'',
+                'can not find nonexistent module'
+            );
+        }
+
+        st.end();
+    });
+
+    t.end();
+});
+
+test('sync dot main', function (t) {
+    var start = new Date();
+    t.equal(resolve.sync('./resolver/dot_main'), path.join(__dirname, 'resolver/dot_main/index.js'));
+    t.ok(new Date() - start < 50, 'resolve.sync timedout');
+    t.end();
+});
+
+test('sync dot slash main', function (t) {
+    var start = new Date();
+    t.equal(resolve.sync('./resolver/dot_slash_main'), path.join(__dirname, 'resolver/dot_slash_main/index.js'));
+    t.ok(new Date() - start < 50, 'resolve.sync timedout');
+    t.end();
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/subdirs.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/subdirs.js
new file mode 100644 (file)
index 0000000..b7b8450
--- /dev/null
@@ -0,0 +1,13 @@
+var test = require('tape');
+var resolve = require('../');
+var path = require('path');
+
+test('subdirs', function (t) {
+    t.plan(2);
+
+    var dir = path.join(__dirname, '/subdirs');
+    resolve('a/b/c/x.json', { basedir: dir }, function (err, res) {
+        t.ifError(err);
+        t.equal(res, path.join(dir, 'node_modules/a/b/c/x.json'));
+    });
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/resolve/test/symlinks.js b/wrt/build/node_modules/esformatter/node_modules/resolve/test/symlinks.js
new file mode 100644 (file)
index 0000000..544a023
--- /dev/null
@@ -0,0 +1,54 @@
+var path = require('path');
+var fs = require('fs');
+var test = require('tape');
+var resolve = require('../');
+
+var symlinkDir = path.join(__dirname, 'resolver', 'symlinked', 'symlink');
+try {
+    fs.unlinkSync(symlinkDir);
+} catch (err) {}
+try {
+    fs.symlinkSync('./_/symlink_target', symlinkDir, 'dir');
+} catch (err) {
+    // if fails then it is probably on Windows and lets try to create a junction
+    fs.symlinkSync(path.join(__dirname, 'resolver', 'symlinked', '_', 'symlink_target') + '\\', symlinkDir, 'junction');
+}
+
+test('symlink', function (t) {
+    t.plan(1);
+
+    resolve('foo', { basedir: symlinkDir, preserveSymlinks: false }, function (err, res, pkg) {
+        if (err) t.fail(err);
+        t.equal(res, path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js'));
+    });
+});
+
+test('sync symlink when preserveSymlinks = true', function (t) {
+    t.plan(4);
+
+    resolve('foo', { basedir: symlinkDir }, function (err, res, pkg) {
+        t.ok(err, 'there is an error');
+        t.notOk(res, 'no result');
+
+        t.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
+        t.equal(
+            err && err.message,
+            'Cannot find module \'foo\' from \'' + symlinkDir + '\'',
+            'can not find nonexistent module'
+        );
+    });
+});
+
+test('sync symlink', function (t) {
+    var start = new Date();
+    t.equal(resolve.sync('foo', { basedir: symlinkDir, preserveSymlinks: false }), path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js'));
+    t.ok(new Date() - start < 50, 'resolve.sync timedout');
+    t.end();
+});
+
+test('sync symlink when preserveSymlinks = true', function (t) {
+    t.throws(function () {
+        resolve.sync('foo', { basedir: symlinkDir });
+    }, /Cannot find module 'foo'/);
+    t.end();
+});
diff --git a/wrt/build/node_modules/esformatter/node_modules/strip-json-comments/package.json b/wrt/build/node_modules/esformatter/node_modules/strip-json-comments/package.json
new file mode 100644 (file)
index 0000000..3709c2f
--- /dev/null
@@ -0,0 +1,111 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "strip-json-comments@~0.1.1",
+        "scope": null,
+        "escapedName": "strip-json-comments",
+        "name": "strip-json-comments",
+        "rawSpec": "~0.1.1",
+        "spec": ">=0.1.1 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "strip-json-comments@>=0.1.1 <0.2.0",
+  "_id": "strip-json-comments@0.1.3",
+  "_inCache": true,
+  "_location": "/esformatter/strip-json-comments",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "1.4.13",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "strip-json-comments@~0.1.1",
+    "scope": null,
+    "escapedName": "strip-json-comments",
+    "name": "strip-json-comments",
+    "rawSpec": "~0.1.1",
+    "spec": ">=0.1.1 <0.2.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
+  "_shasum": "164c64e370a8a3cc00c9e01b539e569823f0ee54",
+  "_shrinkwrap": null,
+  "_spec": "strip-json-comments@~0.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bin": {
+    "strip-json-comments": "cli.js"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/strip-json-comments/issues"
+  },
+  "dependencies": {},
+  "description": "Strip comments from JSON. Lets you use comments in your JSON files!",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "164c64e370a8a3cc00c9e01b539e569823f0ee54",
+    "tarball": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz"
+  },
+  "engines": {
+    "node": ">=0.8.0"
+  },
+  "files": [
+    "cli.js",
+    "strip-json-comments.js"
+  ],
+  "gitHead": "cbd5aede7ccbe5d5a9065b1d47070fd99ad579af",
+  "homepage": "https://github.com/sindresorhus/strip-json-comments",
+  "keywords": [
+    "json",
+    "strip",
+    "remove",
+    "delete",
+    "trim",
+    "comments",
+    "multiline",
+    "parse",
+    "config",
+    "configuration",
+    "conf",
+    "settings",
+    "util",
+    "env",
+    "environment",
+    "cli",
+    "bin"
+  ],
+  "license": "MIT",
+  "main": "strip-json-comments",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    }
+  ],
+  "name": "strip-json-comments",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/sindresorhus/strip-json-comments.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "0.1.3"
+}
diff --git a/wrt/build/node_modules/esformatter/package.json b/wrt/build/node_modules/esformatter/package.json
new file mode 100644 (file)
index 0000000..b722687
--- /dev/null
@@ -0,0 +1,126 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esformatter@^0.6.0",
+        "scope": null,
+        "escapedName": "esformatter",
+        "name": "esformatter",
+        "rawSpec": "^0.6.0",
+        "spec": ">=0.6.0 <0.7.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "esformatter@>=0.6.0 <0.7.0",
+  "_id": "esformatter@0.6.1",
+  "_inCache": true,
+  "_location": "/esformatter",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.5.1",
+  "_phantomChildren": {
+    "minimist": "0.0.8",
+    "path-parse": "1.0.5",
+    "wordwrap": "0.0.3"
+  },
+  "_requested": {
+    "raw": "esformatter@^0.6.0",
+    "scope": null,
+    "escapedName": "esformatter",
+    "name": "esformatter",
+    "rawSpec": "^0.6.0",
+    "spec": ">=0.6.0 <0.7.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
+  "_shasum": "b0bac9b1bde3793bc0cff2c590f940cc86ad4bc4",
+  "_shrinkwrap": null,
+  "_spec": "esformatter@^0.6.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": {
+    "name": "Miller Medeiros",
+    "url": "http://blog.millermedeiros.com/"
+  },
+  "bin": {
+    "esformatter": "./bin/esformatter"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/esformatter/issues"
+  },
+  "dependencies": {
+    "debug": "^0.7.4",
+    "mout": ">=0.9 <2.0",
+    "npm-run": "^1.1.1",
+    "optimist": "~0.6.0",
+    "resolve": "^1.1.5",
+    "rocambole": ">=0.5 <2.0",
+    "rocambole-indent": "^2.0.3",
+    "rocambole-linebreak": "^1.0.0",
+    "rocambole-node": "~1.0",
+    "rocambole-token": "^1.1.2",
+    "rocambole-whitespace": "^1.0.0",
+    "semver": "~2.2.1",
+    "stdin": "*",
+    "strip-json-comments": "~0.1.1"
+  },
+  "description": "ECMAScript code beautifier/formatter",
+  "devDependencies": {
+    "chai": "1.4",
+    "esformatter-pipe-test": "file:test/pipe",
+    "esformatter-test-plugin": "file:test/plugin",
+    "esprima": "^2.0.0",
+    "glob": "3.1",
+    "jshint": "~2.3.0",
+    "mocha": "https://github.com/millermedeiros/mocha/tarball/latest",
+    "mockery": "^1.4.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "b0bac9b1bde3793bc0cff2c590f940cc86ad4bc4",
+    "tarball": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz"
+  },
+  "gitHead": "2fa0c4122db1fceee1b5794e7c72a5dfa8539874",
+  "homepage": "https://github.com/millermedeiros/esformatter",
+  "keywords": [
+    "beautifier",
+    "beautify",
+    "formatter",
+    "ecmascript",
+    "javascript",
+    "syntax",
+    "source",
+    "esprima"
+  ],
+  "license": "MIT",
+  "main": "lib/esformatter.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    },
+    {
+      "name": "jzaefferer",
+      "email": "joern.zaefferer@gmail.com"
+    }
+  ],
+  "name": "esformatter",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/esformatter.git"
+  },
+  "scripts": {
+    "lint": "jshint lib/*.js lib/**/*.js test/*.js",
+    "test": "node test/runner.js"
+  },
+  "version": "0.6.1"
+}
diff --git a/wrt/build/node_modules/eslint-plugin-react/History.md b/wrt/build/node_modules/eslint-plugin-react/History.md
new file mode 100644 (file)
index 0000000..4f6dce9
--- /dev/null
@@ -0,0 +1,303 @@
+2.7.1 / 2015-07-16
+==================
+
+* update peerDependencies requirements ([#154][])
+* update codebase for ESLint v1.0.0
+* change oneOfType to actually keep the child types ([#148][] @CalebMorris)
+* documentation improvements ([#147][] @lencioni)
+
+[#154]: https://github.com/yannickcr/eslint-plugin-react/issues/154
+[#148]: https://github.com/yannickcr/eslint-plugin-react/issues/148
+[#147]: https://github.com/yannickcr/eslint-plugin-react/pull/147
+
+2.7.0 / 2015-07-11
+==================
+
+* add no-danger rule ([#138][] @scothis)
+* add jsx-curly-spacing rule ([#142][])
+* fix properties limitations on prop types ([#139][])
+* fix component detection ([#144][])
+
+[#138]: https://github.com/yannickcr/eslint-plugin-react/pull/138
+[#142]: https://github.com/yannickcr/eslint-plugin-react/issues/142
+[#139]: https://github.com/yannickcr/eslint-plugin-react/issues/139
+[#144]: https://github.com/yannickcr/eslint-plugin-react/issues/144
+
+2.6.4 / 2015-07-02
+==================
+
+* fix simple destructuring handling ([#137][])
+
+[#137]: https://github.com/yannickcr/eslint-plugin-react/issues/137
+
+2.6.3 / 2015-06-30
+==================
+
+* fix ignore option for prop-types rule ([#135][])
+* fix nested props destructuring ([#136][])
+
+[#135]: https://github.com/yannickcr/eslint-plugin-react/issues/135
+[#136]: https://github.com/yannickcr/eslint-plugin-react/issues/136
+
+2.6.2 / 2015-06-28
+==================
+
+* fix props validation when using a prop as an object key ([#132][])
+
+[#132]: https://github.com/yannickcr/eslint-plugin-react/issues/132
+
+2.6.1 / 2015-06-28
+==================
+
+* fix crash in prop-types when encountering an empty variable declaration ([#130][])
+
+[#130]: https://github.com/yannickcr/eslint-plugin-react/issues/130
+
+2.6.0 / 2015-06-28
+==================
+
+* update dependencies
+* add support for nested prop types ([#62][] [#105][] @Cellule)
+* add require-extension rule ([#117][] @scothis)
+* add support for computed string format in prop-types ([#127][] @Cellule)
+* add ES6 methods to sort-comp default configuration ([#97][] [#122][])
+* add support for props destructuring directly on the this keyword
+* add acceptTranspilerName option to display-name rule ([#75][])
+* add schema to validate rules options
+* fix test command for Windows ([#114][] @Cellule)
+* fix detection of missing displayName and propTypes when ecmaFeatures.jsx is false ([#119][] @rpl)
+* fix prop-types destructuring with properties as string ([#118][] @Cellule)
+* fix jsx-sort-prop-types support for keys as string ([#123][] @Cellule)
+* fix crash if a ClassProperty has only one token ([#125][])
+* fix invalid class property handling in jsx-sort-prop-types ([#129][])
+
+[#62]: https://github.com/yannickcr/eslint-plugin-react/issues/62
+[#105]: https://github.com/yannickcr/eslint-plugin-react/issues/105
+[#114]: https://github.com/yannickcr/eslint-plugin-react/pull/114
+[#117]: https://github.com/yannickcr/eslint-plugin-react/pull/117
+[#119]: https://github.com/yannickcr/eslint-plugin-react/pull/119
+[#118]: https://github.com/yannickcr/eslint-plugin-react/issues/118
+[#123]: https://github.com/yannickcr/eslint-plugin-react/pull/123
+[#125]: https://github.com/yannickcr/eslint-plugin-react/issues/125
+[#127]: https://github.com/yannickcr/eslint-plugin-react/pull/127
+[#97]: https://github.com/yannickcr/eslint-plugin-react/issues/97
+[#122]: https://github.com/yannickcr/eslint-plugin-react/issues/122
+[#129]: https://github.com/yannickcr/eslint-plugin-react/issues/129
+[#75]: https://github.com/yannickcr/eslint-plugin-react/issues/75
+
+2.5.2 / 2015-06-14
+==================
+
+* fix regression in jsx-uses-vars with babel-eslint ([#110][])
+
+[#110]: https://github.com/yannickcr/eslint-plugin-react/issues/110
+
+2.5.1 / 2015-06-14
+==================
+
+* update dependencies
+* fix prop-types crash when propTypes definition is invalid ([#95][])
+* fix jsx-uses-vars for ES6 classes ([#96][])
+* fix hasOwnProperty that is taken for a prop ([#102][])
+* documentation improvements ([#99][] @morenoh149)
+
+[#95]: https://github.com/yannickcr/eslint-plugin-react/issues/95
+[#96]: https://github.com/yannickcr/eslint-plugin-react/issues/96
+[#102]: https://github.com/yannickcr/eslint-plugin-react/issues/102
+[#99]: https://github.com/yannickcr/eslint-plugin-react/pull/99
+
+2.5.0 / 2015-06-04
+==================
+
+* update dependencies
+* add option to make wrap-multilines more granular ([#94][] @PiPeep)
+* documentation improvements ([#92][] [#93][] @lencioni)
+
+[#94]: https://github.com/yannickcr/eslint-plugin-react/pull/94
+[#92]: https://github.com/yannickcr/eslint-plugin-react/pull/92
+[#93]: https://github.com/yannickcr/eslint-plugin-react/pull/93
+
+2.4.0 / 2015-05-30
+==================
+
+* update dependencies
+* add pragma option to jsx-uses-react ([#82][] @dominicbarnes)
+* add context props to sort-comp ([#89][] @zertosh)
+* fix itemID in no-unknown-property rule ([#85][] @cody)
+* fix license field in package.json ([#90][] @zertosh)
+* fix usage of contructor in sort-comp options ([#88][])
+* documentation improvement ([#91][] @matthewwithanm)
+
+[#82]: https://github.com/yannickcr/eslint-plugin-react/pull/82
+[#89]: https://github.com/yannickcr/eslint-plugin-react/pull/89
+[#85]: https://github.com/yannickcr/eslint-plugin-react/pull/85
+[#90]: https://github.com/yannickcr/eslint-plugin-react/pull/90
+[#88]: https://github.com/yannickcr/eslint-plugin-react/issues/88
+[#91]: https://github.com/yannickcr/eslint-plugin-react/pull/91
+
+2.3.0 / 2015-05-14
+==================
+
+* update dependencies
+* add sort-comp rule ([#39][])
+* fix quoted propTypes in ES6 ([#77][])
+* add allow-in-func option to no-did-mount-set-state ([#56][])
+* improve errors locations for prop-types
+
+[#39]: https://github.com/yannickcr/eslint-plugin-react/issues/39
+[#77]: https://github.com/yannickcr/eslint-plugin-react/issues/77
+[#56]: https://github.com/yannickcr/eslint-plugin-react/issues/56
+
+2.2.0 / 2015-04-22
+==================
+* add jsx-sort-prop-types rule ([#38][] @AlexKVal)
+* fix variables marked as used when a prop has the same name ([#69][] @burnnat)
+* documentation improvements ([#71][] @AlexKVal)
+
+[#38]: https://github.com/yannickcr/eslint-plugin-react/issues/38
+[#69]: https://github.com/yannickcr/eslint-plugin-react/pull/69
+[#71]: https://github.com/yannickcr/eslint-plugin-react/pull/71
+
+2.1.1 / 2015-04-17
+==================
+* add support for classes static properties ([#43][])
+* add tests for the babel-eslint parser
+* add ESLint as peerDependency ([#63][] @AlexKVal)
+* documentation improvements ([#55][] @AlexKVal, [#60][] @chriscalo)
+
+[#43]: https://github.com/yannickcr/eslint-plugin-react/issues/43
+[#63]: https://github.com/yannickcr/eslint-plugin-react/pull/63
+[#55]: https://github.com/yannickcr/eslint-plugin-react/pull/55
+[#60]: https://github.com/yannickcr/eslint-plugin-react/pull/60
+
+2.1.0 / 2015-04-06
+==================
+* update jsx-sort-props to reset the alphabetical verification on spread ([#47][] @zertosh)
+* update jsx-uses-vars to be enabled by default ([#49][] @banderson)
+* add jsx-boolean-value rule ([#11][])
+* add support for static methods in display-name and prop-types ([#48][])
+* fix describing comment for hasSpreadOperator() method ([#53][] @AlexKVal)
+
+[#47]: https://github.com/yannickcr/eslint-plugin-react/pull/47
+[#49]: https://github.com/yannickcr/eslint-plugin-react/pull/49
+[#11]: https://github.com/yannickcr/eslint-plugin-react/issues/11
+[#48]: https://github.com/yannickcr/eslint-plugin-react/issues/48
+[#53]: https://github.com/yannickcr/eslint-plugin-react/pull/53
+
+2.0.2 / 2015-03-31
+==================
+* fix ignore rest spread when destructuring props ([#46][])
+* fix component detection in prop-types and display-name ([#45][])
+* fix spread handling in jsx-sort-props ([#42][] @zertosh)
+
+[#46]: https://github.com/yannickcr/eslint-plugin-react/issues/46
+[#45]: https://github.com/yannickcr/eslint-plugin-react/issues/45
+[#42]: https://github.com/yannickcr/eslint-plugin-react/pull/42
+
+2.0.1 / 2015-03-30
+==================
+* fix props detection when used in an object ([#41][])
+
+[#41]: https://github.com/yannickcr/eslint-plugin-react/issues/41
+
+2.0.0 / 2015-03-29
+==================
+* update dependencies
+* add jsx-sort-props rule ([#16][])
+* add no-unknown-property rule ([#28][])
+* add ignore option to prop-types rule
+* breaking in prop-types the children prop is no longer ignored
+* fix components are now detected when using ES6 classes ([#24][])
+* fix prop-types now return the right line/column ([#33][])
+* fix props are now detected when destructuring ([#27][])
+* fix only check for computed property names in prop-types ([#36][] @burnnat)
+
+[#16]: https://github.com/yannickcr/eslint-plugin-react/issues/16
+[#28]: https://github.com/yannickcr/eslint-plugin-react/issues/28
+[#24]: https://github.com/yannickcr/eslint-plugin-react/issues/24
+[#33]: https://github.com/yannickcr/eslint-plugin-react/issues/33
+[#27]: https://github.com/yannickcr/eslint-plugin-react/issues/27
+[#36]: https://github.com/yannickcr/eslint-plugin-react/pull/36
+
+
+1.6.1 / 2015-03-25
+==================
+* update jsx-quotes documentation
+* fix jsx-no-undef with babel-eslint ([#30][])
+* fix jsx-quotes on Literal childs ([#29][])
+
+[#30]: https://github.com/yannickcr/eslint-plugin-react/issues/30
+[#29]: https://github.com/yannickcr/eslint-plugin-react/issues/29
+
+1.6.0 / 2015-03-22
+==================
+* update dependencies
+* add jsx-no-undef rule
+* add jsx-quotes rule ([#12][]) 
+* add @jsx pragma support ([#23][])
+* fix react-in-jsx-scope in Node.js env
+* fix usage of propTypes with an external object ([#9][])
+* allow this.getState references (not calls) in lifecycle methods ([#22][] @benmosher)
+
+[#12]: https://github.com/yannickcr/eslint-plugin-react/issues/12
+[#23]: https://github.com/yannickcr/eslint-plugin-react/issues/23
+[#9]: https://github.com/yannickcr/eslint-plugin-react/issues/9
+[#22]: https://github.com/yannickcr/eslint-plugin-react/pull/22
+
+1.5.0 / 2015-03-14
+==================
+* add jsx-uses-vars rule
+* fix jsx-uses-react for ESLint 0.17.0
+
+1.4.1 / 2015-03-03
+==================
+* fix this.props.children marked as missing in props validation ([#7][])
+* fix usage of this.props without property ([#8][])
+
+[#7]: https://github.com/yannickcr/eslint-plugin-react/issues/7
+[#8]: https://github.com/yannickcr/eslint-plugin-react/issues/8
+
+1.4.0 / 2015-02-24
+==================
+* update prop-types to check props usage insead of propTypes presence ([#4][])
+* add react-in-jsx-scope rule ([#5][] @glenjamin)
+* add jsx-uses-react rule ([#6][] @glenjamin)
+
+[#4]: https://github.com/yannickcr/eslint-plugin-react/issues/4
+[#5]: https://github.com/yannickcr/eslint-plugin-react/pull/5
+[#6]: https://github.com/yannickcr/eslint-plugin-react/pull/6
+
+1.3.0 / 2015-02-24
+==================
+* update dependencies
+* add no-did-mount-set-state rule
+* add no-did-update-set-state rule
+
+1.2.2 / 2015-02-09
+==================
+* update dependencies
+* fix childs detection in self-closing-comp ([#3][])
+
+[#3]: https://github.com/yannickcr/eslint-plugin-react/issues/3
+
+1.2.1 / 2015-01-29
+==================
+* update Readme
+* update dependencies
+* update wrap-multilines and self-closing-comp rules for ESLint 0.13.0
+
+1.2.0 / 2014-12-29
+==================
+* add self-closing-comp rule
+* fix display-name and prop-types rules
+
+1.1.0 / 2014-12-28
+==================
+ * add display-name rule
+ * add wrap-multilines rule
+ * add rules documentation
+ * add rules tests
+
+1.0.0 / 2014-12-16
+==================
+ * first revision
diff --git a/wrt/build/node_modules/eslint-plugin-react/README.md b/wrt/build/node_modules/eslint-plugin-react/README.md
new file mode 100644 (file)
index 0000000..44040b2
--- /dev/null
@@ -0,0 +1,122 @@
+ESLint-plugin-React
+===================
+
+[![Maintenance Status][status-image]][status-url] [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][deps-image]][deps-url] [![Coverage Status][coverage-image]][coverage-url] [![Code Climate][climate-image]][climate-url]
+
+React specific linting rules for ESLint
+
+# Installation
+
+Install [ESLint](https://www.github.com/eslint/eslint) either locally or globally.
+
+    npm install eslint
+
+If you installed `ESLint` globally, you have to install React plugin globally too. Otherwise, install it locally.
+
+    $ npm install eslint-plugin-react
+
+# Configuration
+
+Add `plugins` section and specify ESLint-plugin-React as a plugin.
+
+```json
+{
+  "plugins": [
+    "react"
+  ]
+}
+```
+
+If it is not already the case you must also configure `ESLint` to support JSX.
+
+```json
+{
+  "ecmaFeatures": {
+    "jsx": true
+  }
+}
+```
+
+Finally, enable all of the rules that you would like to use.
+
+```json
+{
+  "rules": {
+    "react/display-name": 1,
+    "react/jsx-boolean-value": 1,
+    "react/jsx-no-undef": 1,
+    "react/jsx-quotes": 1,
+    "react/jsx-sort-prop-types": 1,
+    "react/jsx-sort-props": 1,
+    "react/jsx-uses-react": 1,
+    "react/jsx-uses-vars": 1,
+    "react/no-danger": 1,
+    "react/no-did-mount-set-state": 1,
+    "react/no-did-update-set-state": 1,
+    "react/no-multi-comp": 1,
+    "react/no-unknown-property": 1,
+    "react/prop-types": 1,
+    "react/react-in-jsx-scope": 1,
+    "react/require-extension": 1,
+    "react/self-closing-comp": 1,
+    "react/sort-comp": 1,
+    "react/wrap-multilines": 1
+  }
+}
+```
+
+# List of supported rules
+
+* [display-name](docs/rules/display-name.md): Prevent missing displayName in a React component definition
+* [jsx-boolean-value](docs/rules/jsx-boolean-value.md): Enforce boolean attributes notation in JSX
+* [jsx-curly-spacing](docs/rules/jsx-curly-spacing.md): Enforce or disallow spaces inside of curly braces in JSX attributes
+* [jsx-no-undef](docs/rules/jsx-no-undef.md): Disallow undeclared variables in JSX
+* [jsx-quotes](docs/rules/jsx-quotes.md): Enforce quote style for JSX attributes
+* [jsx-sort-prop-types](docs/rules/jsx-sort-prop-types.md): Enforce propTypes declarations alphabetical sorting
+* [jsx-sort-props](docs/rules/jsx-sort-props.md): Enforce props alphabetical sorting
+* [jsx-uses-react](docs/rules/jsx-uses-react.md): Prevent React to be incorrectly marked as unused
+* [jsx-uses-vars](docs/rules/jsx-uses-vars.md): Prevent variables used in JSX to be incorrectly marked as unused
+* [no-danger](docs/rules/no-danger.md): Prevent usage of dangerous JSX properties
+* [no-did-mount-set-state](docs/rules/no-did-mount-set-state.md): Prevent usage of setState in componentDidMount
+* [no-did-update-set-state](docs/rules/no-did-update-set-state.md): Prevent usage of setState in componentDidUpdate
+* [no-multi-comp](docs/rules/no-multi-comp.md): Prevent multiple component definition per file
+* [no-unknown-property](docs/rules/no-unknown-property.md): Prevent usage of unknown DOM property
+* [prop-types](docs/rules/prop-types.md): Prevent missing props validation in a React component definition
+* [react-in-jsx-scope](docs/rules/react-in-jsx-scope.md): Prevent missing React when using JSX
+* [require-extension](docs/rules/require-extension.md): Restrict file extensions that may be required
+* [self-closing-comp](docs/rules/self-closing-comp.md): Prevent extra closing tags for components without children
+* [sort-comp](docs/rules/sort-comp.md): Enforce component methods order
+* [wrap-multilines](docs/rules/wrap-multilines.md): Prevent missing parentheses around multilines JSX
+
+## To Do
+
+* no-deprecated: Prevent usage of deprecated methods ([React 0.12 Updated API](http://facebook.github.io/react/blog/2014/10/28/react-v0.12.html#new-terminology-amp-updated-apis))
+* no-classic: Prevent usage of "classic" methods ([#2700](https://github.com/facebook/react/pull/2700))
+* [Implement relevant rules from David Chang's React Style Guide](https://reactjsnews.com/react-style-guide-patterns-i-like)
+* [Implement relevant rules from John Cobb's best practices and conventions](http://web-design-weekly.com/2015/01/29/opinionated-guide-react-js-best-practices-conventions/)
+* [Implement relevant rules from Alexander Early's tips and best practices](http://aeflash.com/2015-02/react-tips-and-best-practices.html)
+
+[Any rule idea is welcome !](https://github.com/yannickcr/eslint-plugin-react/issues)
+
+# License
+
+ESLint-plugin-React is licensed under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
+
+
+[npm-url]: https://npmjs.org/package/eslint-plugin-react
+[npm-image]: http://img.shields.io/npm/v/eslint-plugin-react.svg?style=flat-square
+
+[travis-url]: https://travis-ci.org/yannickcr/eslint-plugin-react
+[travis-image]: http://img.shields.io/travis/yannickcr/eslint-plugin-react/master.svg?style=flat-square
+
+[deps-url]: https://david-dm.org/yannickcr/eslint-plugin-react
+[deps-image]: https://img.shields.io/david/dev/yannickcr/eslint-plugin-react.svg?style=flat-square
+
+[coverage-url]: https://coveralls.io/r/yannickcr/eslint-plugin-react?branch=master
+[coverage-image]: http://img.shields.io/coveralls/yannickcr/eslint-plugin-react/master.svg?style=flat-square
+
+[climate-url]: https://codeclimate.com/github/yannickcr/eslint-plugin-react
+[climate-image]: http://img.shields.io/codeclimate/github/yannickcr/eslint-plugin-react.svg?style=flat-square
+
+[status-url]: https://github.com/yannickcr/eslint-plugin-react/pulse
+[status-image]: http://img.shields.io/badge/status-maintained-brightgreen.svg?style=flat-square
diff --git a/wrt/build/node_modules/eslint-plugin-react/index.js b/wrt/build/node_modules/eslint-plugin-react/index.js
new file mode 100644 (file)
index 0000000..57446f6
--- /dev/null
@@ -0,0 +1,48 @@
+'use strict';
+
+module.exports = {
+  rules: {
+    'jsx-uses-react': require('./lib/rules/jsx-uses-react'),
+    'no-multi-comp': require('./lib/rules/no-multi-comp'),
+    'prop-types': require('./lib/rules/prop-types'),
+    'display-name': require('./lib/rules/display-name'),
+    'wrap-multilines': require('./lib/rules/wrap-multilines'),
+    'self-closing-comp': require('./lib/rules/self-closing-comp'),
+    'no-danger': require('./lib/rules/no-danger'),
+    'no-did-mount-set-state': require('./lib/rules/no-did-mount-set-state'),
+    'no-did-update-set-state': require('./lib/rules/no-did-update-set-state'),
+    'react-in-jsx-scope': require('./lib/rules/react-in-jsx-scope'),
+    'jsx-uses-vars': require('./lib/rules/jsx-uses-vars'),
+    'jsx-no-undef': require('./lib/rules/jsx-no-undef'),
+    'jsx-quotes': require('./lib/rules/jsx-quotes'),
+    'no-unknown-property': require('./lib/rules/no-unknown-property'),
+    'jsx-curly-spacing': require('./lib/rules/jsx-curly-spacing'),
+    'jsx-sort-props': require('./lib/rules/jsx-sort-props'),
+    'jsx-sort-prop-types': require('./lib/rules/jsx-sort-prop-types'),
+    'jsx-boolean-value': require('./lib/rules/jsx-boolean-value'),
+    'sort-comp': require('./lib/rules/sort-comp'),
+    'require-extension': require('./lib/rules/require-extension')
+  },
+  rulesConfig: {
+    'jsx-uses-react': 0,
+    'no-multi-comp': 0,
+    'prop-types': 0,
+    'display-name': 0,
+    'wrap-multilines': 0,
+    'self-closing-comp': 0,
+    'no-danger': 0,
+    'no-did-mount-set-state': 0,
+    'no-did-update-set-state': 0,
+    'react-in-jsx-scope': 0,
+    'jsx-uses-vars': 1,
+    'jsx-no-undef': 0,
+    'jsx-quotes': 0,
+    'no-unknown-property': 0,
+    'jsx-curly-spacing': 0,
+    'jsx-sort-props': 0,
+    'jsx-sort-prop-types': 0,
+    'jsx-boolean-value': 0,
+    'sort-comp': 0,
+    'require-extension': 0
+  }
+};
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/display-name.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/display-name.js
new file mode 100644 (file)
index 0000000..96a0074
--- /dev/null
@@ -0,0 +1,209 @@
+/**
+ * @fileoverview Prevent missing displayName in a React component definition
+ * @author Yannick Croissant
+ */
+'use strict';
+
+var componentUtil = require('../util/component');
+var ComponentList = componentUtil.List;
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var config = context.options[0] || {};
+  var acceptTranspilerName = config.acceptTranspilerName || false;
+
+  var componentList = new ComponentList();
+
+  var MISSING_MESSAGE = 'Component definition is missing display name';
+  var MISSING_MESSAGE_NAMED_COMP = '{{component}} component definition is missing display name';
+
+  /**
+   * Checks if the component must be validated
+   * @param {Object} component The component to process
+   * @returns {Boolean} True if the component must be validated, false if not.
+   */
+  function mustBeValidated(component) {
+    return (
+      component &&
+      component.isReactComponent &&
+      !component.hasDisplayName
+    );
+  }
+
+  /**
+   * Checks if we are declaring a display name
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Boolean} True if we are declaring a display name, false if not.
+   */
+  function isDisplayNameDeclaration(node) {
+
+    // Special case for class properties
+    // (babel-eslint does not expose property name so we have to rely on tokens)
+    if (node.type === 'ClassProperty') {
+      var tokens = context.getFirstTokens(node, 2);
+      if (
+        tokens[0].value === 'displayName' ||
+        (tokens[1] && tokens[1].value === 'displayName')
+      ) {
+        return true;
+      }
+      return false;
+    }
+
+    return Boolean(
+      node &&
+      node.name === 'displayName'
+    );
+  }
+
+  /**
+   * Mark a prop type as declared
+   * @param {ASTNode} node The AST node being checked.
+   */
+  function markDisplayNameAsDeclared(node) {
+    componentList.set(context, node, {
+      hasDisplayName: true
+    });
+  }
+
+  /**
+   * Reports missing display name for a given component
+   * @param {Object} component The component to process
+   */
+  function reportMissingDisplayName(component) {
+    context.report(
+      component.node,
+      component.name === componentUtil.DEFAULT_COMPONENT_NAME ? MISSING_MESSAGE : MISSING_MESSAGE_NAMED_COMP, {
+        component: component.name
+      }
+    );
+  }
+
+  /**
+   * Checks if the component have a name set by the transpiler
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Boolean} True ifcomponent have a name, false if not.
+   */
+  function hasTranspilerName(node) {
+    var namedAssignment = (
+      node.type === 'ObjectExpression' &&
+      node.parent &&
+      node.parent.parent &&
+      node.parent.parent.type === 'AssignmentExpression' && (
+        !node.parent.parent.left.object ||
+        node.parent.parent.left.object.name !== 'module' ||
+        node.parent.parent.left.property.name !== 'exports'
+      )
+    );
+    var namedDeclaration = (
+        node.type === 'ObjectExpression' &&
+        node.parent &&
+        node.parent.parent &&
+        node.parent.parent.type === 'VariableDeclarator'
+    );
+    var namedClass = (
+      node.type === 'ClassDeclaration' &&
+      node.id && node.id.name
+    );
+
+    if (namedAssignment || namedDeclaration || namedClass) {
+      return true;
+    }
+    return false;
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    ClassProperty: function(node) {
+      if (!isDisplayNameDeclaration(node)) {
+        return;
+      }
+
+      markDisplayNameAsDeclared(node);
+    },
+
+    MemberExpression: function(node) {
+      if (!isDisplayNameDeclaration(node.property)) {
+        return;
+      }
+      var component = componentList.getByName(node.object.name);
+      if (!component) {
+        return;
+      }
+      markDisplayNameAsDeclared(component.node);
+    },
+
+    MethodDefinition: function(node) {
+      if (!isDisplayNameDeclaration(node.key)) {
+        return;
+      }
+      markDisplayNameAsDeclared(node);
+    },
+
+    ClassDeclaration: function(node) {
+      if (!acceptTranspilerName || !hasTranspilerName(node)) {
+        return;
+      }
+      markDisplayNameAsDeclared(node);
+    },
+
+    ObjectExpression: function(node) {
+      // Search for the displayName declaration
+      node.properties.forEach(function(property) {
+        if (!isDisplayNameDeclaration(property.key)) {
+          return;
+        }
+        markDisplayNameAsDeclared(node);
+      });
+      // Has transpiler name
+      if (acceptTranspilerName && hasTranspilerName(node)) {
+        markDisplayNameAsDeclared(node);
+      }
+
+      if (componentUtil.isComponentDefinition(node)) {
+        componentList.set(context, node, {
+          isReactComponent: true
+        });
+      }
+    },
+
+    'Program:exit': function() {
+      var list = componentList.getList();
+      // Report missing display name for all classes
+      for (var component in list) {
+        if (!list.hasOwnProperty(component) || !mustBeValidated(list[component])) {
+          continue;
+        }
+        reportMissingDisplayName(list[component]);
+      }
+    },
+
+    ReturnStatement: function(node) {
+      if (!componentUtil.isReactComponent(context, node)) {
+        return;
+      }
+      componentList.set(context, node, {
+        isReactComponent: true
+      });
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    acceptTranspilerName: {
+      type: 'boolean'
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js
new file mode 100644 (file)
index 0000000..5278892
--- /dev/null
@@ -0,0 +1,40 @@
+/**
+ * @fileoverview Enforce boolean attributes notation in JSX
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var configuration = context.options[0] || {};
+
+  var NEVER_MESSAGE = 'Value must be omitted for boolean attributes';
+  var ALWAYS_MESSAGE = 'Value must be set for boolean attributes';
+
+  return {
+    JSXAttribute: function(node) {
+      switch (configuration) {
+        case 'always':
+          if (node.value === null) {
+            context.report(node, ALWAYS_MESSAGE);
+          }
+          break;
+        case 'never':
+          if (node.value && node.value.type === 'JSXExpressionContainer' && node.value.expression.value === true) {
+            context.report(node, NEVER_MESSAGE);
+          }
+          break;
+        default:
+          break;
+      }
+    }
+  };
+};
+
+module.exports.schema = [{
+  enum: ['always', 'never']
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-curly-spacing.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-curly-spacing.js
new file mode 100644 (file)
index 0000000..acad145
--- /dev/null
@@ -0,0 +1,114 @@
+/**
+ * @fileoverview Enforce or disallow spaces inside of curly braces in JSX attributes.
+ * @author Jamund Ferguson, Brandyn Bennett, Michael Ficarra, Vignesh Anand, Jamund Ferguson, Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+  var spaced = context.options[0] === 'always';
+
+  // --------------------------------------------------------------------------
+  // Helpers
+  // --------------------------------------------------------------------------
+
+  /**
+   * Determines whether two adjacent tokens are have whitespace between them.
+   * @param {Object} left - The left token object.
+   * @param {Object} right - The right token object.
+   * @returns {boolean} Whether or not there is space between the tokens.
+   */
+  function isSpaced(left, right) {
+    return left.range[1] < right.range[0];
+  }
+
+  /**
+  * Reports that there shouldn't be a space after the first token
+  * @param {ASTNode} node - The node to report in the event of an error.
+  * @param {Token} token - The token to use for the report.
+  * @returns {void}
+  */
+  function reportNoBeginningSpace(node, token) {
+    context.report(node, token.loc.start,
+      'There should be no space after \'' + token.value + '\'');
+  }
+
+  /**
+  * Reports that there shouldn't be a space before the last token
+  * @param {ASTNode} node - The node to report in the event of an error.
+  * @param {Token} token - The token to use for the report.
+  * @returns {void}
+  */
+  function reportNoEndingSpace(node, token) {
+    context.report(node, token.loc.start,
+      'There should be no space before \'' + token.value + '\'');
+  }
+
+  /**
+  * Reports that there should be a space after the first token
+  * @param {ASTNode} node - The node to report in the event of an error.
+  * @param {Token} token - The token to use for the report.
+  * @returns {void}
+  */
+  function reportRequiredBeginningSpace(node, token) {
+    context.report(node, token.loc.start,
+      'A space is required after \'' + token.value + '\'');
+  }
+
+  /**
+  * Reports that there should be a space before the last token
+  * @param {ASTNode} node - The node to report in the event of an error.
+  * @param {Token} token - The token to use for the report.
+  * @returns {void}
+  */
+  function reportRequiredEndingSpace(node, token) {
+    context.report(node, token.loc.start,
+          'A space is required before \'' + token.value + '\'');
+  }
+
+  /**
+   * Determines if spacing in curly braces is valid.
+   * @param {ASTNode} node The AST node to check.
+   * @param {Token} first The first token to check (should be the opening brace)
+   * @param {Token} second The second token to check (should be first after the opening brace)
+   * @param {Token} penultimate The penultimate token to check (should be last before closing brace)
+   * @param {Token} last The last token to check (should be closing brace)
+   * @returns {void}
+   */
+  function validateBraceSpacing(node, first, second, penultimate, last) {
+    if (spaced && !isSpaced(first, second)) {
+      reportRequiredBeginningSpace(node, first);
+    }
+    if (!spaced && isSpaced(first, second)) {
+      reportNoBeginningSpace(node, first);
+    }
+    if (spaced && !isSpaced(penultimate, last)) {
+      reportRequiredEndingSpace(node, last);
+    }
+    if (!spaced && isSpaced(penultimate, last)) {
+      reportNoEndingSpace(node, last);
+    }
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+    JSXExpressionContainer: function(node) {
+      var first = context.getFirstToken(node);
+      var second = context.getFirstToken(node, 1);
+      var penultimate = context.getLastToken(node, 1);
+      var last = context.getLastToken(node);
+
+      validateBraceSpacing(node, first, second, penultimate, last);
+    }
+  };
+};
+
+module.exports.schema = [{
+  enum: ['always', 'never']
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js
new file mode 100644 (file)
index 0000000..caea00d
--- /dev/null
@@ -0,0 +1,67 @@
+/**
+ * @fileoverview Disallow undeclared variables in JSX
+ * @author Yannick Croissant
+ */
+
+'use strict';
+
+/**
+ * Checks if a node name match the JSX tag convention.
+ * @param {String} name - Name of the node to check.
+ * @returns {boolean} Whether or not the node name match the JSX tag convention.
+ */
+var tagConvention = /^[a-z]|\-/;
+function isTagName(name) {
+  return tagConvention.test(name);
+}
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  /**
+   * Compare an identifier with the variables declared in the scope
+   * @param {ASTNode} node - Identifier or JSXIdentifier node
+   * @returns {void}
+   */
+  function checkIdentifierInJSX(node) {
+    var scope = context.getScope();
+    var variables = scope.variables;
+    var i;
+    var len;
+
+    while (scope.type !== 'global') {
+      scope = scope.upper;
+      variables = scope.variables.concat(variables);
+    }
+    if (scope.childScopes.length) {
+      variables = scope.childScopes[0].variables.concat(variables);
+      // Temporary fix for babel-eslint
+      if (scope.childScopes[0].childScopes.length) {
+        variables = scope.childScopes[0].childScopes[0].variables.concat(variables);
+      }
+    }
+
+    for (i = 0, len = variables.length; i < len; i++) {
+      if (variables[i].name === node.name) {
+        return;
+      }
+    }
+
+    context.report(node, '\'' + node.name + '\' is not defined.');
+  }
+
+  return {
+    JSXOpeningElement: function(node) {
+      if (isTagName(node.name.name)) {
+        return;
+      }
+      checkIdentifierInJSX(node.name);
+    }
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js
new file mode 100644 (file)
index 0000000..d8276e3
--- /dev/null
@@ -0,0 +1,76 @@
+/**
+ * @fileoverview Enforce props quotes style
+ * @author Matt DuVall <http://www.mattduvall.com/>, Brandon Payton, Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Constants
+// ------------------------------------------------------------------------------
+
+var QUOTE_SETTINGS = {
+  double: {
+    quote: '"',
+    alternateQuote: '\'',
+    description: 'doublequote'
+  },
+  single: {
+    quote: '\'',
+    alternateQuote: '"',
+    description: 'singlequote'
+  }
+};
+
+var AVOID_ESCAPE = 'avoid-escape';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  /**
+   * Validate that a string passed in is surrounded by the specified character
+   * @param  {string} val The text to check.
+   * @param  {string} character The character to see if it's surrounded by.
+   * @returns {boolean} True if the text is surrounded by the character, false if not.
+   * @private
+   */
+  function isSurroundedBy(val, character) {
+    return val[0] === character && val[val.length - 1] === character;
+  }
+
+  return {
+
+    Literal: function(node) {
+      if (node.parent.type !== 'JSXAttribute') {
+        return;
+      }
+      var val = node.value;
+      var rawVal = node.raw;
+      var quoteOption = context.options[0];
+      var settings = QUOTE_SETTINGS[quoteOption];
+      var avoidEscape = context.options[1] === AVOID_ESCAPE;
+      var isValid;
+
+      if (settings && typeof val === 'string') {
+        isValid = isSurroundedBy(rawVal, settings.quote);
+
+        if (!isValid && avoidEscape) {
+          isValid = isSurroundedBy(rawVal, settings.alternateQuote) && rawVal.indexOf(settings.quote) >= 0;
+        }
+
+        if (!isValid) {
+          context.report(node, 'JSX attributes must use ' + settings.description + '.');
+        }
+      }
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  enum: ['single', 'double']
+}, {
+  enum: ['avoid-escape']
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-prop-types.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-prop-types.js
new file mode 100644 (file)
index 0000000..6db316d
--- /dev/null
@@ -0,0 +1,104 @@
+/**
+ * @fileoverview Enforce propTypes declarations alphabetical sorting
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var configuration = context.options[0] || {};
+  var ignoreCase = configuration.ignoreCase || false;
+
+  /**
+   * Checks if node is `propTypes` declaration
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Boolean} True if node is `propTypes` declaration, false if not.
+   */
+  function isPropTypesDeclaration(node) {
+
+    // Special case for class properties
+    // (babel-eslint does not expose property name so we have to rely on tokens)
+    if (node.type === 'ClassProperty') {
+      var tokens = context.getFirstTokens(node, 2);
+      if (tokens[0].value === 'propTypes' || tokens[1].value === 'propTypes') {
+        return true;
+      }
+      return false;
+    }
+
+    return Boolean(
+      node &&
+      node.name === 'propTypes'
+    );
+  }
+
+  function getKey(node) {
+    return node.key.type === 'Identifier' ? node.key.name : node.key.value;
+  }
+
+  /**
+   * Checks if propTypes declarations are sorted
+   * @param {Array} declarations The array of AST nodes being checked.
+   * @returns {void}
+   */
+  function checkSorted(declarations) {
+    declarations.reduce(function(prev, curr) {
+      var prevPropName = getKey(prev);
+      var currenPropName = getKey(curr);
+
+      if (ignoreCase) {
+        prevPropName = prevPropName.toLowerCase();
+        currenPropName = currenPropName.toLowerCase();
+      }
+
+      if (currenPropName < prevPropName) {
+        context.report(curr, 'Prop types declarations should be sorted alphabetically');
+        return prev;
+      }
+
+      return curr;
+    }, declarations[0]);
+  }
+
+  return {
+    ClassProperty: function(node) {
+      if (isPropTypesDeclaration(node) && node.value && node.value.type === 'ObjectExpression') {
+        checkSorted(node.value.properties);
+      }
+    },
+
+    MemberExpression: function(node) {
+      if (isPropTypesDeclaration(node.property)) {
+        var right = node.parent.right;
+        if (right && right.type === 'ObjectExpression') {
+          checkSorted(right.properties);
+        }
+      }
+    },
+
+    ObjectExpression: function(node) {
+      node.properties.forEach(function(property) {
+        if (!isPropTypesDeclaration(property.key)) {
+          return;
+        }
+        if (property.value.type === 'ObjectExpression') {
+          checkSorted(property.value.properties);
+        }
+      });
+    }
+
+  };
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    ignoreCase: {
+      type: 'boolean'
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js
new file mode 100644 (file)
index 0000000..1c72ea9
--- /dev/null
@@ -0,0 +1,50 @@
+/**
+ * @fileoverview Enforce props alphabetical sorting
+ * @author Ilya Volodin, Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var configuration = context.options[0] || {};
+  var ignoreCase = configuration.ignoreCase || false;
+
+  return {
+    JSXOpeningElement: function(node) {
+      node.attributes.reduce(function(memo, decl, idx, attrs) {
+        if (decl.type === 'JSXSpreadAttribute') {
+          return attrs[idx + 1];
+        }
+
+        var lastPropName = memo.name.name;
+        var currenPropName = decl.name.name;
+
+        if (ignoreCase) {
+          lastPropName = lastPropName.toLowerCase();
+          currenPropName = currenPropName.toLowerCase();
+        }
+
+        if (currenPropName < lastPropName) {
+          context.report(decl, 'Props should be sorted alphabetically');
+          return memo;
+        }
+
+        return decl;
+      }, node.attributes[0]);
+    }
+  };
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    ignoreCase: {
+      type: 'boolean'
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js
new file mode 100644 (file)
index 0000000..2e48398
--- /dev/null
@@ -0,0 +1,50 @@
+/**
+ * @fileoverview Prevent React to be marked as unused
+ * @author Glen Mailer
+ */
+'use strict';
+
+var variableUtil = require('../util/variable');
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/;
+
+module.exports = function(context) {
+
+  var config = context.options[0] || {};
+  var id = config.pragma || 'React';
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    JSXOpeningElement: function() {
+      variableUtil.markVariableAsUsed(context, id);
+    },
+
+    BlockComment: function(node) {
+      var matches = JSX_ANNOTATION_REGEX.exec(node.value);
+      if (!matches) {
+        return;
+      }
+      id = matches[1].split('.')[0];
+    }
+
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    pragma: {
+      type: 'string'
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js
new file mode 100644 (file)
index 0000000..9eaf8a0
--- /dev/null
@@ -0,0 +1,34 @@
+/**
+ * @fileoverview Prevent variables used in JSX to be marked as unused
+ * @author Yannick Croissant
+ */
+'use strict';
+
+var variableUtil = require('../util/variable');
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  return {
+    JSXExpressionContainer: function(node) {
+      if (node.expression.type !== 'Identifier') {
+        return;
+      }
+      variableUtil.markVariableAsUsed(context, node.expression.name);
+    },
+
+    JSXIdentifier: function(node) {
+      if (node.parent.type === 'JSXAttribute') {
+        return;
+      }
+      variableUtil.markVariableAsUsed(context, node.name);
+    }
+
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-danger.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-danger.js
new file mode 100644 (file)
index 0000000..2f60dd8
--- /dev/null
@@ -0,0 +1,65 @@
+/**
+ * @fileoverview Prevent usage of dangerous JSX props
+ * @author Scott Andrews
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Constants
+// ------------------------------------------------------------------------------
+
+var DANGEROUS_MESSAGE = 'Dangerous property \'{{name}}\' found';
+
+var DANGEROUS_PROPERTY_NAMES = [
+  'dangerouslySetInnerHTML'
+];
+
+var DANGEROUS_PROPERTIES = DANGEROUS_PROPERTY_NAMES.reduce(function (props, prop) {
+  props[prop] = prop;
+  return props;
+}, Object.create(null));
+
+// ------------------------------------------------------------------------------
+// Helpers
+// ------------------------------------------------------------------------------
+
+/**
+ * Checks if a node name match the JSX tag convention.
+ * @param {String} name - Name of the node to check.
+ * @returns {boolean} Whether or not the node name match the JSX tag convention.
+ */
+var tagConvention = /^[a-z]|\-/;
+function isTagName(name) {
+  return tagConvention.test(name);
+}
+
+/**
+ * Checks if a JSX attribute is dangerous.
+ * @param {String} name - Name of the attribute to check.
+ * @returns {boolean} Whether or not the attribute is dnagerous.
+ */
+function isDangerous(name) {
+  return name in DANGEROUS_PROPERTIES;
+}
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  return {
+
+    JSXAttribute: function(node) {
+      if (isTagName(node.parent.name.name) && isDangerous(node.name.name)) {
+        context.report(node, DANGEROUS_MESSAGE, {
+          name: node.name.name
+        });
+      }
+    }
+
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js
new file mode 100644 (file)
index 0000000..2d2e50a
--- /dev/null
@@ -0,0 +1,53 @@
+/**
+ * @fileoverview Prevent usage of setState in componentDidMount
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var mode = context.options[0] || 'never';
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    CallExpression: function(node) {
+      var callee = node.callee;
+      if (
+        callee.type !== 'MemberExpression' ||
+        callee.object.type !== 'ThisExpression' ||
+        callee.property.name !== 'setState'
+      ) {
+        return;
+      }
+      var ancestors = context.getAncestors(callee).reverse();
+      var depth = 0;
+      for (var i = 0, j = ancestors.length; i < j; i++) {
+        if (/Function(Expression|Declaration)$/.test(ancestors[i].type)) {
+          depth++;
+        }
+        if (
+          ancestors[i].type !== 'Property' ||
+          ancestors[i].key.name !== 'componentDidMount' ||
+          (mode === 'allow-in-func' && depth > 1)
+        ) {
+          continue;
+        }
+        context.report(callee, 'Do not use setState in componentDidMount');
+        break;
+      }
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  enum: ['allow-in-func']
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js
new file mode 100644 (file)
index 0000000..6d06ac7
--- /dev/null
@@ -0,0 +1,39 @@
+/**
+ * @fileoverview Prevent usage of setState in componentDidUpdate
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    CallExpression: function(node) {
+      var callee = node.callee;
+      if (callee.type !== 'MemberExpression') {
+        return;
+      }
+      if (callee.object.type !== 'ThisExpression' || callee.property.name !== 'setState') {
+        return;
+      }
+      var ancestors = context.getAncestors(callee);
+      for (var i = 0, j = ancestors.length; i < j; i++) {
+        if (ancestors[i].type !== 'Property' || ancestors[i].key.name !== 'componentDidUpdate') {
+          continue;
+        }
+        context.report(callee, 'Do not use setState in componentDidUpdate');
+      }
+    }
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js
new file mode 100644 (file)
index 0000000..83d30cf
--- /dev/null
@@ -0,0 +1,50 @@
+/**
+ * @fileoverview Prevent multiple component definition per file
+ * @author Yannick Croissant
+ */
+'use strict';
+
+var componentUtil = require('../util/component');
+var ComponentList = componentUtil.List;
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var componentList = new ComponentList();
+
+  var MULTI_COMP_MESSAGE = 'Declare only one React component per file';
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+    'Program:exit': function() {
+      if (componentList.count() <= 1) {
+        return;
+      }
+
+      var list = componentList.getList();
+      var i = 0;
+
+      for (var component in list) {
+        if (!list.hasOwnProperty(component) || ++i === 1) {
+          continue;
+        }
+        context.report(list[component].node, MULTI_COMP_MESSAGE);
+      }
+    },
+
+    ReturnStatement: function(node) {
+      if (!componentUtil.isReactComponent(context, node)) {
+        return;
+      }
+      componentList.set(context, node);
+    }
+  };
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js
new file mode 100644 (file)
index 0000000..676e81d
--- /dev/null
@@ -0,0 +1,82 @@
+/**
+ * @fileoverview Prevent usage of unknown DOM property
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Constants
+// ------------------------------------------------------------------------------
+
+var UNKNOWN_MESSAGE = 'Unknown property \'{{name}}\' found, use \'{{standardName}}\' instead';
+
+var DOM_ATTRIBUTE_NAMES = {
+  'accept-charset': 'acceptCharset',
+  class: 'className',
+  for: 'htmlFor',
+  'http-equiv': 'httpEquiv'
+};
+
+var DOM_PROPERTY_NAMES = [
+  'acceptCharset', 'accessKey', 'allowFullScreen', 'allowTransparency', 'autoComplete', 'autoFocus', 'autoPlay',
+  'cellPadding', 'cellSpacing', 'charSet', 'classID', 'className', 'colSpan', 'contentEditable', 'contextMenu',
+  'crossOrigin', 'dateTime', 'encType', 'formAction', 'formEncType', 'formMethod', 'formNoValidate', 'formTarget',
+  'frameBorder', 'hrefLang', 'htmlFor', 'httpEquiv', 'marginHeight', 'marginWidth', 'maxLength', 'mediaGroup',
+  'noValidate', 'radioGroup', 'readOnly', 'rowSpan', 'spellCheck', 'srcDoc', 'srcSet', 'tabIndex', 'useMap',
+  'itemProp', 'itemScope', 'itemType', 'itemRef', 'itemID'
+];
+
+// ------------------------------------------------------------------------------
+// Helpers
+// ------------------------------------------------------------------------------
+
+/**
+ * Checks if a node name match the JSX tag convention.
+ * @param {String} name - Name of the node to check.
+ * @returns {boolean} Whether or not the node name match the JSX tag convention.
+ */
+var tagConvention = /^[a-z]|\-/;
+function isTagName(name) {
+  return tagConvention.test(name);
+}
+
+/**
+ * Get the standard name of the attribute.
+ * @param {String} name - Name of the attribute.
+ * @returns {String} The standard name of the attribute.
+ */
+function getStandardName(name) {
+  if (DOM_ATTRIBUTE_NAMES[name]) {
+    return DOM_ATTRIBUTE_NAMES[name];
+  }
+  var i;
+  var found = DOM_PROPERTY_NAMES.some(function(element, index) {
+    i = index;
+    return element.toLowerCase() === name;
+  });
+  return found ? DOM_PROPERTY_NAMES[i] : null;
+}
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  return {
+
+    JSXAttribute: function(node) {
+      var standardName = getStandardName(node.name.name);
+      if (!isTagName(node.parent.name.name) || !standardName) {
+        return;
+      }
+      context.report(node, UNKNOWN_MESSAGE, {
+        name: node.name.name,
+        standardName: standardName
+      });
+    }
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/prop-types.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/prop-types.js
new file mode 100644 (file)
index 0000000..365c491
--- /dev/null
@@ -0,0 +1,616 @@
+/**
+ * @fileoverview Prevent missing props validation in a React component definition
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// As for exceptions for props.children or props.className (and alike) look at
+// https://github.com/yannickcr/eslint-plugin-react/issues/7
+
+var componentUtil = require('../util/component');
+var ComponentList = componentUtil.List;
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var configuration = context.options[0] || {};
+  var ignored = configuration.ignore || [];
+
+  var componentList = new ComponentList();
+
+  var MISSING_MESSAGE = '\'{{name}}\' is missing in props validation';
+  var MISSING_MESSAGE_NAMED_COMP = '\'{{name}}\' is missing in props validation for {{component}}';
+
+  /**
+   * Checks if we are using a prop
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Boolean} True if we are using a prop, false if not.
+   */
+  function isPropTypesUsage(node) {
+    return Boolean(
+      node.object.type === 'ThisExpression' &&
+      node.property.name === 'props'
+    );
+  }
+
+  /**
+   * Checks if we are declaring a prop
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Boolean} True if we are declaring a prop, false if not.
+   */
+  function isPropTypesDeclaration(node) {
+
+    // Special case for class properties
+    // (babel-eslint does not expose property name so we have to rely on tokens)
+    if (node.type === 'ClassProperty') {
+      var tokens = context.getFirstTokens(node, 2);
+      if (
+        tokens[0].value === 'propTypes' ||
+        (tokens[1] && tokens[1].value === 'propTypes')
+      ) {
+        return true;
+      }
+      return false;
+    }
+
+    return Boolean(
+      node &&
+      node.name === 'propTypes'
+    );
+
+  }
+
+  /**
+   * Checks if the prop is ignored
+   * @param {String} name Name of the prop to check.
+   * @returns {Boolean} True if the prop is ignored, false if not.
+   */
+  function isIgnored(name) {
+    return ignored.indexOf(name) !== -1;
+  }
+
+  /**
+   * Checks if the component must be validated
+   * @param {Object} component The component to process
+   * @returns {Boolean} True if the component must be validated, false if not.
+   */
+  function mustBeValidated(component) {
+    return Boolean(
+      component &&
+      component.isReactComponent &&
+      component.usedPropTypes &&
+      !component.ignorePropsValidation
+    );
+  }
+
+  /**
+   * Internal: Checks if the prop is declared
+   * @param {Object} declaredPropTypes Description of propTypes declared in the current component
+   * @param {String[]} keyList Dot separated name of the prop to check.
+   * @returns {Boolean} True if the prop is declared, false if not.
+   */
+  function _isDeclaredInComponent(declaredPropTypes, keyList) {
+    for (var i = 0, j = keyList.length; i < j; i++) {
+      var key = keyList[i];
+      var propType = (
+        // Check if this key is declared
+        declaredPropTypes[key] ||
+        // If not, check if this type accepts any key
+        declaredPropTypes.__ANY_KEY__
+      );
+
+      if (!propType) {
+        // If it's a computed property, we can't make any further analysis, but is valid
+        return key === '__COMPUTED_PROP__';
+      }
+      if (propType === true) {
+        return true;
+      }
+      // Consider every children as declared
+      if (propType.children === true) {
+        return true;
+      }
+      if (propType.acceptedProperties) {
+        return key in propType.acceptedProperties;
+      }
+      if (propType.type === 'union') {
+        // If we fall in this case, we know there is at least one complex type in the union
+        if (i + 1 >= j) {
+          // this is the last key, accept everything
+          return true;
+        }
+        // non trivial, check all of them
+        var unionTypes = propType.children;
+        var unionPropType = {};
+        for (var k = 0, z = unionTypes.length; k < z; k++) {
+          unionPropType[key] = unionTypes[k];
+          var isValid = _isDeclaredInComponent(
+            unionPropType,
+            keyList.slice(i)
+          );
+          if (isValid) {
+            return true;
+          }
+        }
+
+        // every possible union were invalid
+        return false;
+      }
+      declaredPropTypes = propType.children;
+    }
+    return true;
+  }
+
+  /**
+   * Checks if the prop is declared
+   * @param {Object} component The component to process
+   * @param {String[]} names List of names of the prop to check.
+   * @returns {Boolean} True if the prop is declared, false if not.
+   */
+  function isDeclaredInComponent(component, names) {
+    return _isDeclaredInComponent(
+      component.declaredPropTypes || {},
+      names
+    );
+  }
+
+  /**
+   * Checks if the prop has spread operator.
+   * @param {ASTNode} node The AST node being marked.
+   * @returns {Boolean} True if the prop has spread operator, false if not.
+   */
+  function hasSpreadOperator(node) {
+    var tokens = context.getTokens(node);
+    return tokens.length && tokens[0].value === '...';
+  }
+
+  /**
+   * Retrieve the name of a key node
+   * @param {ASTNode} node The AST node with the key.
+   * @return {string} the name of the key
+   */
+  function getKeyValue(node) {
+    var key = node.key;
+    return key.type === 'Identifier' ? key.name : key.value;
+  }
+
+  /**
+   * Iterates through a properties node, like a customized forEach.
+   * @param {Object[]} properties Array of properties to iterate.
+   * @param {Function} fn Function to call on each property, receives property key
+      and property value. (key, value) => void
+   */
+  function iterateProperties(properties, fn) {
+    if (properties.length && typeof fn === 'function') {
+      for (var i = 0, j = properties.length; i < j; i++) {
+        var node = properties[i];
+        var key = getKeyValue(node);
+
+        var value = node.value;
+        fn(key, value);
+      }
+    }
+  }
+
+  /**
+   * Creates the representation of the React propTypes for the component.
+   * The representation is used to verify nested used properties.
+   * @param {ASTNode} value Node of the React.PropTypes for the desired propery
+   * @return {Object|Boolean} The representation of the declaration, true means
+   *    the property is declared without the need for further analysis.
+   */
+  function buildReactDeclarationTypes(value) {
+    if (
+      value.type === 'MemberExpression' &&
+      value.property &&
+      value.property.name &&
+      value.property.name === 'isRequired'
+    ) {
+      value = value.object;
+    }
+
+    // Verify React.PropTypes that are functions
+    if (
+      value.type === 'CallExpression' &&
+      value.callee &&
+      value.callee.property &&
+      value.callee.property.name &&
+      value.arguments &&
+      value.arguments.length > 0
+    ) {
+      var callName = value.callee.property.name;
+      var argument = value.arguments[0];
+      switch (callName) {
+        case 'shape':
+          if (argument.type !== 'ObjectExpression') {
+            // Invalid proptype or cannot analyse statically
+            return true;
+          }
+          var shapeTypeDefinition = {
+            type: 'shape',
+            children: {}
+          };
+          iterateProperties(argument.properties, function(childKey, childValue) {
+            shapeTypeDefinition.children[childKey] = buildReactDeclarationTypes(childValue);
+          });
+          return shapeTypeDefinition;
+        case 'arrayOf':
+          return {
+            type: 'array',
+            children: {
+              // Accept only array prototype and computed properties
+              __ANY_KEY__: {
+                acceptedProperties: Array.prototype
+              },
+              __COMPUTED_PROP__: buildReactDeclarationTypes(argument)
+            }
+          };
+        case 'objectOf':
+          return {
+            type: 'object',
+            children: {
+              __ANY_KEY__: buildReactDeclarationTypes(argument)
+            }
+          };
+        case 'oneOfType':
+          if (
+            !argument.elements ||
+            !argument.elements.length
+          ) {
+            // Invalid proptype or cannot analyse statically
+            return true;
+          }
+          var unionTypeDefinition = {
+            type: 'union',
+            children: []
+          };
+          for (var i = 0, j = argument.elements.length; i < j; i++) {
+            var type = buildReactDeclarationTypes(argument.elements[i]);
+            // keep only complex type
+            if (type !== true) {
+              if (type.children === true) {
+                // every child is accepted for one type, abort type analysis
+                unionTypeDefinition.children = true;
+                return unionTypeDefinition;
+              }
+            }
+
+            unionTypeDefinition.children.push(type);
+          }
+          if (unionTypeDefinition.length === 0) {
+            // no complex type found, simply accept everything
+            return true;
+          }
+          return unionTypeDefinition;
+        case 'instanceOf':
+          return {
+            type: 'instance',
+            // Accept all children because we can't know what type they are
+            children: true
+          };
+        case 'oneOf':
+        default:
+          return true;
+      }
+    }
+    // Unknown property or accepts everything (any, object, ...)
+    return true;
+  }
+
+  /**
+   * Retrieve the name of a property node
+   * @param {ASTNode} node The AST node with the property.
+   * @return {string} the name of the property or undefined if not found
+   */
+  function getPropertyName(node) {
+    var property = node.property;
+    if (property) {
+      switch (property.type) {
+        case 'Identifier':
+          if (node.computed) {
+            return '__COMPUTED_PROP__';
+          }
+          return property.name;
+        case 'MemberExpression':
+          return void 0;
+        case 'Literal':
+          // Accept computed properties that are literal strings
+          if (typeof property.value === 'string') {
+            return property.value;
+          }
+          // falls through
+        default:
+          if (node.computed) {
+            return '__COMPUTED_PROP__';
+          }
+          break;
+      }
+    }
+  }
+
+  /**
+   * Mark a prop type as used
+   * @param {ASTNode} node The AST node being marked.
+   */
+  function markPropTypesAsUsed(node, parentNames) {
+    parentNames = parentNames || [];
+    var type;
+    var name;
+    var allNames;
+    var properties;
+    switch (node.type) {
+      case 'MemberExpression':
+        name = getPropertyName(node.parent);
+        if (name) {
+          allNames = parentNames.concat(name);
+          if (node.parent.type === 'MemberExpression') {
+            markPropTypesAsUsed(node.parent, allNames);
+          }
+          // Do not mark computed props as used.
+          type = name !== '__COMPUTED_PROP__' ? 'direct' : null;
+        } else if (
+          node.parent.parent.declarations &&
+          node.parent.parent.declarations[0].id.properties &&
+          getKeyValue(node.parent.parent.declarations[0].id.properties[0])
+        ) {
+          type = 'destructuring';
+          properties = node.parent.parent.declarations[0].id.properties;
+        }
+        break;
+      case 'VariableDeclarator':
+        for (var i = 0, j = node.id.properties.length; i < j; i++) {
+          if (
+            (node.id.properties[i].key.name !== 'props' && node.id.properties[i].key.value !== 'props') ||
+            node.id.properties[i].value.type !== 'ObjectPattern'
+          ) {
+            continue;
+          }
+          type = 'destructuring';
+          properties = node.id.properties[i].value.properties;
+          break;
+        }
+        break;
+      default:
+        throw new Error(node.type + ' ASTNodes are not handled by markPropTypesAsUsed');
+    }
+
+    var component = componentList.getByNode(context, node);
+    var usedPropTypes = component && component.usedPropTypes || [];
+
+    switch (type) {
+      case 'direct':
+        // Ignore Object methods
+        if (Object.prototype[name]) {
+          break;
+        }
+        usedPropTypes.push({
+          name: name,
+          allNames: allNames,
+          node: node.parent.property
+        });
+        break;
+      case 'destructuring':
+        for (var k = 0, l = properties.length; k < l; k++) {
+          if (hasSpreadOperator(properties[k])) {
+            continue;
+          }
+          var propName = getKeyValue(properties[k]);
+
+          var currentNode = node;
+          allNames = [];
+          while (currentNode.property && currentNode.property.name !== 'props') {
+            allNames.unshift(currentNode.property.name);
+            currentNode = currentNode.object;
+          }
+          allNames.push(propName);
+
+          if (propName) {
+            usedPropTypes.push({
+              name: propName,
+              allNames: allNames,
+              node: properties[k]
+            });
+          }
+        }
+        break;
+      default:
+        break;
+    }
+
+    componentList.set(context, node, {
+      usedPropTypes: usedPropTypes
+    });
+  }
+
+  /**
+   * Mark a prop type as declared
+   * @param {ASTNode} node The AST node being checked.
+   * @param {propTypes} node The AST node containing the proptypes
+   */
+  function markPropTypesAsDeclared(node, propTypes) {
+    var component = componentList.getByNode(context, node);
+    var declaredPropTypes = component && component.declaredPropTypes || {};
+    var ignorePropsValidation = false;
+
+    switch (propTypes && propTypes.type) {
+      case 'ObjectExpression':
+        iterateProperties(propTypes.properties, function(key, value) {
+          declaredPropTypes[key] = buildReactDeclarationTypes(value);
+        });
+        break;
+      case 'MemberExpression':
+        var curDeclaredPropTypes = declaredPropTypes;
+        // Walk the list of properties, until we reach the assignment
+        // ie: ClassX.propTypes.a.b.c = ...
+        while (
+          propTypes &&
+          propTypes.parent.type !== 'AssignmentExpression' &&
+          propTypes.property &&
+          curDeclaredPropTypes
+        ) {
+          var propName = propTypes.property.name;
+          if (propName in curDeclaredPropTypes) {
+            curDeclaredPropTypes = curDeclaredPropTypes[propName].children;
+            propTypes = propTypes.parent;
+          } else {
+            // This will crash at runtime because we haven't seen this key before
+            // stop this and do not declare it
+            propTypes = null;
+          }
+        }
+        if (propTypes) {
+          curDeclaredPropTypes[propTypes.property.name] =
+            buildReactDeclarationTypes(propTypes.parent.right);
+        }
+        break;
+      case null:
+        break;
+      default:
+        ignorePropsValidation = true;
+        break;
+    }
+
+    componentList.set(context, node, {
+      declaredPropTypes: declaredPropTypes,
+      ignorePropsValidation: ignorePropsValidation
+    });
+  }
+
+  /**
+   * Reports undeclared proptypes for a given component
+   * @param {Object} component The component to process
+   */
+  function reportUndeclaredPropTypes(component) {
+    var allNames;
+    for (var i = 0, j = component.usedPropTypes.length; i < j; i++) {
+      allNames = component.usedPropTypes[i].allNames;
+      if (
+        isIgnored(allNames[0]) ||
+        isDeclaredInComponent(component, allNames)
+      ) {
+        continue;
+      }
+      context.report(
+        component.usedPropTypes[i].node,
+        component.name === componentUtil.DEFAULT_COMPONENT_NAME ? MISSING_MESSAGE : MISSING_MESSAGE_NAMED_COMP, {
+          name: allNames.join('.').replace(/\.__COMPUTED_PROP__/g, '[]'),
+          component: component.name
+        }
+      );
+    }
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    ClassProperty: function(node) {
+      if (!isPropTypesDeclaration(node)) {
+        return;
+      }
+
+      markPropTypesAsDeclared(node, node.value);
+    },
+
+    VariableDeclarator: function(node) {
+      if (!node.init || node.init.type !== 'ThisExpression' || node.id.type !== 'ObjectPattern') {
+        return;
+      }
+      markPropTypesAsUsed(node);
+    },
+
+    MemberExpression: function(node) {
+      var type;
+      if (isPropTypesUsage(node)) {
+        type = 'usage';
+      } else if (isPropTypesDeclaration(node.property)) {
+        type = 'declaration';
+      }
+
+      switch (type) {
+        case 'usage':
+          markPropTypesAsUsed(node);
+          break;
+        case 'declaration':
+          var component = componentList.getByName(node.object.name);
+          if (!component) {
+            return;
+          }
+          markPropTypesAsDeclared(component.node, node.parent.right || node.parent);
+          break;
+        default:
+          break;
+      }
+    },
+
+    MethodDefinition: function(node) {
+      if (!isPropTypesDeclaration(node.key)) {
+        return;
+      }
+
+      var i = node.value.body.body.length - 1;
+      for (; i >= 0; i--) {
+        if (node.value.body.body[i].type === 'ReturnStatement') {
+          break;
+        }
+      }
+
+      markPropTypesAsDeclared(node, node.value.body.body[i].argument);
+    },
+
+    ObjectExpression: function(node) {
+      // Search for the proptypes declaration
+      node.properties.forEach(function(property) {
+        if (!isPropTypesDeclaration(property.key)) {
+          return;
+        }
+        markPropTypesAsDeclared(node, property.value);
+      });
+
+      if (componentUtil.isComponentDefinition(node)) {
+        componentList.set(context, node, {
+          isReactComponent: true
+        });
+      }
+    },
+
+    'Program:exit': function() {
+      var list = componentList.getList();
+      // Report undeclared proptypes for all classes
+      for (var component in list) {
+        if (!list.hasOwnProperty(component) || !mustBeValidated(list[component])) {
+          continue;
+        }
+        reportUndeclaredPropTypes(list[component]);
+      }
+    },
+
+    ReturnStatement: function(node) {
+      if (!componentUtil.isReactComponent(context, node)) {
+        return;
+      }
+      componentList.set(context, node, {
+        isReactComponent: true
+      });
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    ignore: {
+      type: 'array',
+      items: {
+        type: 'string'
+      }
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js
new file mode 100644 (file)
index 0000000..de92fce
--- /dev/null
@@ -0,0 +1,44 @@
+/**
+ * @fileoverview Prevent missing React when using JSX
+ * @author Glen Mailer
+ */
+'use strict';
+
+var variableUtil = require('../util/variable');
+
+// -----------------------------------------------------------------------------
+// Rule Definition
+// -----------------------------------------------------------------------------
+
+var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/;
+
+module.exports = function(context) {
+
+  var id = 'React';
+  var NOT_DEFINED_MESSAGE = '\'{{name}}\' must be in scope when using JSX';
+
+  return {
+
+    JSXOpeningElement: function(node) {
+      var variables = variableUtil.variablesInScope(context);
+      if (variableUtil.findVariable(variables, id)) {
+        return;
+      }
+      context.report(node, NOT_DEFINED_MESSAGE, {
+        name: id
+      });
+    },
+
+    BlockComment: function(node) {
+      var matches = JSX_ANNOTATION_REGEX.exec(node.value);
+      if (!matches) {
+        return;
+      }
+      id = matches[1].split('.')[0];
+    }
+
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/require-extension.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/require-extension.js
new file mode 100644 (file)
index 0000000..ead5d1e
--- /dev/null
@@ -0,0 +1,78 @@
+/**
+ * @fileoverview Restrict file extensions that may be required
+ * @author Scott Andrews
+ */
+'use strict';
+
+var path = require('path');
+
+// ------------------------------------------------------------------------------
+// Constants
+// ------------------------------------------------------------------------------
+
+var DEFAULTS = {
+  extentions: ['.jsx']
+};
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  function isRequire(expression) {
+    return expression.callee.name === 'require';
+  }
+
+  function getId(expression) {
+    return expression.arguments[0] && expression.arguments[0].value;
+  }
+
+  function getExtension(id) {
+    return path.extname(id || '');
+  }
+
+  function getExtentionsConfig() {
+    return context.options[0] && context.options[0].extensions || DEFAULTS.extentions;
+  }
+
+  var forbiddenExtensions = getExtentionsConfig().reduce(function (extensions, extension) {
+    extensions[extension] = true;
+    return extensions;
+  }, Object.create(null));
+
+  function isForbiddenExtension(ext) {
+    return ext in forbiddenExtensions;
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    CallExpression: function(node) {
+      if (isRequire(node)) {
+        var ext = getExtension(getId(node));
+        if (isForbiddenExtension(ext)) {
+          context.report(node, 'Unable to require module with extension \'' + ext + '\'');
+        }
+      }
+    }
+
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    extensions: {
+      type: 'array',
+      items: {
+        type: 'string'
+      }
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js
new file mode 100644 (file)
index 0000000..37adfc1
--- /dev/null
@@ -0,0 +1,49 @@
+/**
+ * @fileoverview Prevent extra closing tags for components without children
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var tagConvention = /^[a-z]|\-/;
+  function isTagName(name) {
+    return tagConvention.test(name);
+  }
+
+  function isComponent(node) {
+    return node.name && node.name.type === 'JSXIdentifier' && !isTagName(node.name.name);
+  }
+
+  function hasChildren(node) {
+    var childrens = node.parent.children;
+    if (
+      !childrens.length ||
+      (childrens.length === 1 && childrens[0].type === 'Literal' && !childrens[0].value.trim())
+    ) {
+      return false;
+    }
+    return true;
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    JSXOpeningElement: function(node) {
+      if (!isComponent(node) || node.selfClosing || hasChildren(node)) {
+        return;
+      }
+      context.report(node, 'Empty components are self-closing');
+    }
+  };
+
+};
+
+module.exports.schema = [];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/sort-comp.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/sort-comp.js
new file mode 100644 (file)
index 0000000..9d8d261
--- /dev/null
@@ -0,0 +1,396 @@
+/**
+ * @fileoverview Enforce component methods order
+ * @author Yannick Croissant
+ */
+'use strict';
+
+var util = require('util');
+
+var componentUtil = require('../util/component');
+var ComponentList = componentUtil.List;
+
+/**
+ * Get the methods order from the default config and the user config
+ * @param {Object} defaultConfig The default configuration.
+ * @param {Object} userConfig The user configuration.
+ * @returns {Array} Methods order
+ */
+function getMethodsOrder(defaultConfig, userConfig) {
+  userConfig = userConfig || {};
+
+  var groups = util._extend(defaultConfig.groups, userConfig.groups);
+  var order = userConfig.order || defaultConfig.order;
+
+  var config = [];
+  var entry;
+  for (var i = 0, j = order.length; i < j; i++) {
+    entry = order[i];
+    if (groups.hasOwnProperty(entry)) {
+      config = config.concat(groups[entry]);
+    } else {
+      config.push(entry);
+    }
+  }
+
+  return config;
+}
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  var componentList = new ComponentList();
+  var errors = {};
+
+  var MISPOSITION_MESSAGE = '{{propA}} must be placed {{position}} {{propB}}';
+
+  var methodsOrder = getMethodsOrder({
+    order: [
+      'lifecycle',
+      'everything-else',
+      'render'
+    ],
+    groups: {
+      lifecycle: [
+        'displayName',
+        'propTypes',
+        'contextTypes',
+        'childContextTypes',
+        'mixins',
+        'statics',
+        'defaultProps',
+        'constructor',
+        'getDefaultProps',
+        'getInitialState',
+        'getChildContext',
+        'componentWillMount',
+        'componentDidMount',
+        'componentWillReceiveProps',
+        'shouldComponentUpdate',
+        'componentWillUpdate',
+        'componentDidUpdate',
+        'componentWillUnmount'
+      ]
+    }
+  }, context.options[0]);
+
+  /**
+   * Checks if the component must be validated
+   * @param {Object} component The component to process
+   * @returns {Boolean} True if the component must be validated, false if not.
+   */
+  function mustBeValidated(component) {
+    return (
+      component &&
+      component.isReactComponent &&
+      !component.hasDisplayName
+    );
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  var regExpRegExp = /\/(.*)\/([g|y|i|m]*)/;
+
+  /**
+   * Get indexes of the matching patterns in methods order configuration
+   * @param {String} method - Method name.
+   * @returns {Array} The matching patterns indexes. Return [Infinity] if there is no match.
+   */
+  function getRefPropIndexes(method) {
+    var isRegExp;
+    var matching;
+    var i;
+    var j;
+    var indexes = [];
+    for (i = 0, j = methodsOrder.length; i < j; i++) {
+      isRegExp = methodsOrder[i].match(regExpRegExp);
+      if (isRegExp) {
+        matching = new RegExp(isRegExp[1], isRegExp[2]).test(method);
+      } else {
+        matching = methodsOrder[i] === method;
+      }
+      if (matching) {
+        indexes.push(i);
+      }
+    }
+
+    // No matching pattern, return 'everything-else' index
+    if (indexes.length === 0) {
+      for (i = 0, j = methodsOrder.length; i < j; i++) {
+        if (methodsOrder[i] === 'everything-else') {
+          indexes.push(i);
+        }
+      }
+    }
+
+    // No matching pattern and no 'everything-else' group
+    if (indexes.length === 0) {
+      indexes.push(Infinity);
+    }
+
+    return indexes;
+  }
+
+  /**
+   * Get properties name
+   * @param {Object} node - Property.
+   * @returns {String} Property name.
+   */
+  function getPropertyName(node) {
+
+    // Special case for class properties
+    // (babel-eslint does not expose property name so we have to rely on tokens)
+    if (node.type === 'ClassProperty') {
+      var tokens = context.getFirstTokens(node, 2);
+      return tokens[1].type === 'Identifier' ? tokens[1].value : tokens[0].value;
+    }
+
+    return node.key.name;
+  }
+
+  /**
+   * Store a new error in the error list
+   * @param {Object} propA - Mispositioned property.
+   * @param {Object} propB - Reference property.
+   */
+  function storeError(propA, propB) {
+    // Initialize the error object if needed
+    if (!errors[propA.index]) {
+      errors[propA.index] = {
+        node: propA.node,
+        score: 0,
+        closest: {
+          distance: Infinity,
+          ref: {
+            node: null,
+            index: 0
+          }
+        }
+      };
+    }
+    // Increment the prop score
+    errors[propA.index].score++;
+    // Stop here if we already have a closer reference
+    if (Math.abs(propA.index - propB.index) > errors[propA.index].closest.distance) {
+      return;
+    }
+    // Update the closest reference
+    errors[propA.index].closest.distance = Math.abs(propA.index - propB.index);
+    errors[propA.index].closest.ref.node = propB.node;
+    errors[propA.index].closest.ref.index = propB.index;
+  }
+
+  /**
+   * Dedupe errors, only keep the ones with the highest score and delete the others
+   */
+  function dedupeErrors() {
+    for (var i in errors) {
+      if (!errors.hasOwnProperty(i)) {
+        continue;
+      }
+      var index = errors[i].closest.ref.index;
+      if (!errors[index]) {
+        continue;
+      }
+      if (errors[i].score > errors[index].score) {
+        delete errors[index];
+      } else {
+        delete errors[i];
+      }
+    }
+  }
+
+  /**
+   * Report errors
+   */
+  function reportErrors() {
+    dedupeErrors();
+
+    var nodeA;
+    var nodeB;
+    var indexA;
+    var indexB;
+    for (var i in errors) {
+      if (!errors.hasOwnProperty(i)) {
+        continue;
+      }
+
+      nodeA = errors[i].node;
+      nodeB = errors[i].closest.ref.node;
+      indexA = i;
+      indexB = errors[i].closest.ref.index;
+
+      context.report(nodeA, MISPOSITION_MESSAGE, {
+        propA: getPropertyName(nodeA),
+        propB: getPropertyName(nodeB),
+        position: indexA < indexB ? 'before' : 'after'
+      });
+    }
+  }
+
+  /**
+   * Get properties for a given AST node
+   * @param {ASTNode} node The AST node being checked.
+   * @returns {Array} Properties array.
+   */
+  function getComponentProperties(node) {
+    if (node.type === 'ClassDeclaration') {
+      return node.body.body;
+    }
+    return node.properties;
+  }
+
+  /**
+   * Compare two properties and find out if they are in the right order
+   * @param {Array} propertiesNames Array containing all the properties names.
+   * @param {String} propA First property name.
+   * @param {String} propB Second property name.
+   * @returns {Object} Object containing a correct true/false flag and the correct indexes for the two properties.
+   */
+  function comparePropsOrder(propertiesNames, propA, propB) {
+    var i;
+    var j;
+    var k;
+    var l;
+    var refIndexA;
+    var refIndexB;
+
+    // Get references indexes (the correct position) for given properties
+    var refIndexesA = getRefPropIndexes(propA);
+    var refIndexesB = getRefPropIndexes(propB);
+
+    // Get current indexes for given properties
+    var classIndexA = propertiesNames.indexOf(propA);
+    var classIndexB = propertiesNames.indexOf(propB);
+
+    // Loop around the references indexes for the 1st property
+    for (i = 0, j = refIndexesA.length; i < j; i++) {
+      refIndexA = refIndexesA[i];
+
+      // Loop around the properties for the 2nd property (for comparison)
+      for (k = 0, l = refIndexesB.length; k < l; k++) {
+        refIndexB = refIndexesB[k];
+
+        if (
+          // Comparing the same properties
+          refIndexA === refIndexB ||
+          // 1st property is placed before the 2nd one in reference and in current component
+          refIndexA < refIndexB && classIndexA < classIndexB ||
+          // 1st property is placed after the 2nd one in reference and in current component
+          refIndexA > refIndexB && classIndexA > classIndexB
+        ) {
+          return {
+            correct: true,
+            indexA: classIndexA,
+            indexB: classIndexB
+          };
+        }
+
+      }
+    }
+
+    // We did not find any correct match between reference and current component
+    return {
+      correct: false,
+      indexA: refIndexA,
+      indexB: refIndexB
+    };
+  }
+
+  /**
+   * Check properties order from a properties list and store the eventual errors
+   * @param {Array} properties Array containing all the properties.
+   */
+  function checkPropsOrder(properties) {
+    var propertiesNames = properties.map(getPropertyName);
+    var i;
+    var j;
+    var k;
+    var l;
+    var propA;
+    var propB;
+    var order;
+
+    // Loop around the properties
+    for (i = 0, j = propertiesNames.length; i < j; i++) {
+      propA = propertiesNames[i];
+
+      // Loop around the properties a second time (for comparison)
+      for (k = 0, l = propertiesNames.length; k < l; k++) {
+        propB = propertiesNames[k];
+
+        // Compare the properties order
+        order = comparePropsOrder(propertiesNames, propA, propB);
+
+        // Continue to next comparison is order is correct
+        if (order.correct === true) {
+          continue;
+        }
+
+        // Store an error if the order is incorrect
+        storeError({
+          node: properties[i],
+          index: order.indexA
+        }, {
+          node: properties[k],
+          index: order.indexB
+        });
+      }
+    }
+
+  }
+
+  return {
+    'Program:exit': function() {
+      var list = componentList.getList();
+
+      for (var component in list) {
+        if (!list.hasOwnProperty(component) || !mustBeValidated(list[component])) {
+          continue;
+        }
+        var properties = getComponentProperties(list[component].node);
+        checkPropsOrder(properties);
+      }
+
+      reportErrors();
+    },
+
+    ReturnStatement: function(node) {
+      if (!componentUtil.isReactComponent(context, node)) {
+        return;
+      }
+      componentList.set(context, node, {
+        isReactComponent: true
+      });
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    order: {
+      type: 'array',
+      items: {
+        type: 'string'
+      }
+    },
+    groups: {
+      type: 'object',
+      patternProperties: {
+        '^.*$': {
+          type: 'array',
+          items: {
+            type: 'string'
+          }
+        }
+      }
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js b/wrt/build/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js
new file mode 100644 (file)
index 0000000..66b942b
--- /dev/null
@@ -0,0 +1,95 @@
+/**
+ * @fileoverview Prevent missing parentheses around multilines JSX
+ * @author Yannick Croissant
+ */
+'use strict';
+
+// ------------------------------------------------------------------------------
+// Constants
+// ------------------------------------------------------------------------------
+
+var DEFAULTS = {
+  declaration: true,
+  assignment: true,
+  return: true
+};
+
+// ------------------------------------------------------------------------------
+// Rule Definition
+// ------------------------------------------------------------------------------
+
+module.exports = function(context) {
+
+  function isParenthesised(node) {
+    var previousToken = context.getTokenBefore(node);
+    var nextToken = context.getTokenAfter(node);
+
+    return previousToken && nextToken &&
+      previousToken.value === '(' && previousToken.range[1] <= node.range[0] &&
+      nextToken.value === ')' && nextToken.range[0] >= node.range[1];
+  }
+
+  function isMultilines(node) {
+    return node.loc.start.line !== node.loc.end.line;
+  }
+
+  function check(node) {
+    if (!node || node.type !== 'JSXElement') {
+      return;
+    }
+
+    if (!isParenthesised(node) && isMultilines(node)) {
+      context.report(node, 'Missing parentheses around multilines JSX');
+    }
+  }
+
+  function isEnabled(type) {
+    var userOptions = context.options[0] || {};
+    if (({}).hasOwnProperty.call(userOptions, type)) {
+      return userOptions[type];
+    }
+    return DEFAULTS[type];
+  }
+
+  // --------------------------------------------------------------------------
+  // Public
+  // --------------------------------------------------------------------------
+
+  return {
+
+    VariableDeclarator: function(node) {
+      if (isEnabled('declaration')) {
+        check(node.init);
+      }
+    },
+
+    AssignmentExpression: function(node) {
+      if (isEnabled('assignment')) {
+        check(node.right);
+      }
+    },
+
+    ReturnStatement: function(node) {
+      if (isEnabled('return')) {
+        check(node.argument);
+      }
+    }
+  };
+
+};
+
+module.exports.schema = [{
+  type: 'object',
+  properties: {
+    declaration: {
+      type: 'boolean'
+    },
+    assignment: {
+      type: 'boolean'
+    },
+    return: {
+      type: 'boolean'
+    }
+  },
+  additionalProperties: false
+}];
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/util/component.js b/wrt/build/node_modules/eslint-plugin-react/lib/util/component.js
new file mode 100644 (file)
index 0000000..38c6407
--- /dev/null
@@ -0,0 +1,211 @@
+/**
+ * @fileoverview Utility functions for React components detection
+ * @author Yannick Croissant
+ */
+'use strict';
+
+var util = require('util');
+
+var DEFAULT_COMPONENT_NAME = 'eslintReactComponent';
+
+/**
+ * Detect if we are in a React Component
+ * A React component is defined has an object/class with a property "render"
+ * that return a JSXElement or null/false
+ * @param {Object} context The current rule context.
+ * @param {ASTNode} node The AST node being checked.
+ * @returns {Boolean} True if we are in a React Component, false if not.
+ */
+function isReactComponent(context, node) {
+  if (node.type !== 'ReturnStatement') {
+    throw new Error('React Component detection must be done from a ReturnStatement ASTNode');
+  }
+
+  var scope = context.getScope();
+  while (scope.upper && scope.type !== 'function') {
+    scope = scope.upper;
+  }
+
+  var isComponentRender =
+    node.argument &&
+    node.argument.type === 'JSXElement' &&
+    scope.block.parent.key && scope.block.parent.key.name === 'render'
+  ;
+  var isEmptyComponentRender =
+    node.argument &&
+    node.argument.type === 'Literal' && (node.argument.value === null || node.argument.value === false) &&
+    scope.block.parent.key && scope.block.parent.key.name === 'render'
+  ;
+
+  return Boolean(isEmptyComponentRender || isComponentRender);
+}
+
+/**
+ * Detect if the node is a component definition
+ * @param {ASTNode} node The AST node being checked.
+ * @returns {Boolean} True the node is a component definition, false if not.
+ */
+function isComponentDefinition(node) {
+  var isES6Component = node.type === 'ClassDeclaration';
+  var isES5Component = Boolean(
+    node.type === 'ObjectExpression' &&
+    node.parent &&
+    node.parent.callee &&
+    node.parent.callee.object &&
+    node.parent.callee.property &&
+    node.parent.callee.object.name === 'React' &&
+    node.parent.callee.property.name === 'createClass'
+  );
+  return isES5Component || isES6Component;
+}
+
+/**
+ * Get the React component ASTNode from any child ASTNode
+ * @param {Object} context The current rule context.
+ * @param {ASTNode} node The AST node being checked.
+ * @returns {ASTNode} The ASTNode of the React component.
+ */
+function getNode(context, node) {
+  var componentNode = null;
+  var ancestors = context.getAncestors().reverse();
+
+  ancestors.unshift(node);
+
+  for (var i = 0, j = ancestors.length; i < j; i++) {
+    if (isComponentDefinition(ancestors[i])) {
+      componentNode = ancestors[i];
+      break;
+    }
+  }
+
+  return componentNode;
+}
+
+/**
+ * Get the identifiers of a React component ASTNode
+ * @param {ASTNode} node The React component ASTNode being checked.
+ * @returns {Object} The component identifiers.
+ */
+function getIdentifiers(node) {
+  var name = node.id && node.id.name || DEFAULT_COMPONENT_NAME;
+  var id = name + ':' + node.loc.start.line + ':' + node.loc.start.column;
+
+  return {
+    id: id,
+    name: name
+  };
+}
+
+/**
+ * Store a React component list
+ * @constructor
+ */
+function List() {
+  this._list = {};
+  this._length = 0;
+}
+
+/**
+ * Find a component in the list by his node or one of his child node
+ * @param {Object} context The current rule context.
+ * @param {ASTNode} node The node to find.
+ * @returns {Object|null} The component if it is found, null if not.
+ */
+List.prototype.getByNode = function(context, node) {
+  var componentNode = getNode(context, node);
+  if (!componentNode) {
+    return null;
+  }
+  var identifiers = getIdentifiers(componentNode);
+
+  return this._list[identifiers.id] || null;
+};
+
+/**
+ * Find a component in the list by his name
+ * @param {String} name Name of the component to find.
+ * @returns {Object|null} The component if it is found, null if not.
+ */
+List.prototype.getByName = function(name) {
+  for (var component in this._list) {
+    if (this._list.hasOwnProperty(component) && this._list[component].name === name) {
+      return this._list[component];
+    }
+  }
+  return null;
+};
+
+/**
+ * Return the component list
+ * @returns {Object} The component list.
+ */
+List.prototype.getList = function() {
+  return this._list;
+};
+
+/**
+ * Add/update a component in the list
+ * @param {Object} context The current rule context.
+ * @param {ASTNode} node The node to add.
+ * @param {Object} customProperties Additional properties to add to the component.
+ * @returns {Object} The added component.
+ */
+List.prototype.set = function(context, node, customProperties) {
+  var componentNode = getNode(context, node);
+  if (!componentNode) {
+    return null;
+  }
+  var identifiers = getIdentifiers(componentNode);
+
+  var component = util._extend({
+    name: identifiers.name,
+    node: componentNode
+  }, customProperties || {});
+
+  if (!this._list[identifiers.id]) {
+    this._length++;
+  }
+
+  this._list[identifiers.id] = util._extend(this._list[identifiers.id] || {}, component);
+
+  return component;
+};
+
+/**
+ * Remove a component from the list
+ * @param {Object} context The current rule context.
+ * @param {ASTNode} node The node to remove.
+ */
+List.prototype.remove = function(context, node) {
+  var componentNode = getNode(context, node);
+  if (!componentNode) {
+    return null;
+  }
+  var identifiers = getIdentifiers(componentNode);
+
+  if (!this._list[identifiers.id]) {
+    return null;
+  }
+
+  delete this._list[identifiers.id];
+  this._length--;
+
+  return null;
+};
+
+/**
+ * Return the component list length
+ * @returns {Number} The component list length.
+ */
+List.prototype.count = function() {
+  return this._length;
+};
+
+module.exports = {
+  DEFAULT_COMPONENT_NAME: DEFAULT_COMPONENT_NAME,
+  isReactComponent: isReactComponent,
+  getNode: getNode,
+  isComponentDefinition: isComponentDefinition,
+  getIdentifiers: getIdentifiers,
+  List: List
+};
diff --git a/wrt/build/node_modules/eslint-plugin-react/lib/util/variable.js b/wrt/build/node_modules/eslint-plugin-react/lib/util/variable.js
new file mode 100644 (file)
index 0000000..88251a5
--- /dev/null
@@ -0,0 +1,91 @@
+/**
+ * @fileoverview Utility functions for React components detection
+ * @author Yannick Croissant
+ */
+'use strict';
+
+/**
+ * Record that a particular variable has been used in code
+ *
+ * @param {String} name The name of the variable to mark as used.
+ * @returns {Boolean} True if the variable was found and marked as used, false if not.
+ */
+function markVariableAsUsed(context, name) {
+  var scope = context.getScope();
+  var variables;
+  var i;
+  var len;
+  var found = false;
+
+  // Special Node.js scope means we need to start one level deeper
+  if (scope.type === 'global') {
+    while (scope.childScopes.length) {
+      scope = scope.childScopes[0];
+    }
+  }
+
+  do {
+    variables = scope.variables;
+    for (i = 0, len = variables.length; i < len; i++) {
+      if (variables[i].name === name) {
+        variables[i].eslintUsed = true;
+        found = true;
+      }
+    }
+    scope = scope.upper;
+  } while (scope);
+
+  return found;
+}
+
+/**
+ * Search a particular variable in a list
+ * @param {Array} variables The variables list.
+ * @param {Array} name The name of the variable to search.
+ * @returns {Boolean} True if the variable was found, false if not.
+ */
+function findVariable(variables, name) {
+  var i;
+  var len;
+
+  for (i = 0, len = variables.length; i < len; i++) {
+    if (variables[i].name === name) {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+/**
+ * List all variable in a given scope
+ *
+ * Contain a patch for babel-eslint to avoid https://github.com/babel/babel-eslint/issues/21
+ *
+ * @param {Object} context The current rule context.
+ * @param {Array} name The name of the variable to search.
+ * @returns {Boolean} True if the variable was found, false if not.
+ */
+function variablesInScope(context) {
+  var scope = context.getScope();
+  var variables = scope.variables;
+
+  while (scope.type !== 'global') {
+    scope = scope.upper;
+    variables = scope.variables.concat(variables);
+  }
+  if (scope.childScopes.length) {
+    variables = scope.childScopes[0].variables.concat(variables);
+    if (scope.childScopes[0].childScopes.length) {
+      variables = scope.childScopes[0].childScopes[0].variables.concat(variables);
+    }
+  }
+
+  return variables;
+}
+
+module.exports = {
+  findVariable: findVariable,
+  variablesInScope: variablesInScope,
+  markVariableAsUsed: markVariableAsUsed
+};
diff --git a/wrt/build/node_modules/eslint-plugin-react/package.json b/wrt/build/node_modules/eslint-plugin-react/package.json
new file mode 100644 (file)
index 0000000..57e7b57
--- /dev/null
@@ -0,0 +1,105 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "eslint-plugin-react@^2.1.0",
+        "scope": null,
+        "escapedName": "eslint-plugin-react",
+        "name": "eslint-plugin-react",
+        "rawSpec": "^2.1.0",
+        "spec": ">=2.1.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "eslint-plugin-react@>=2.1.0 <3.0.0",
+  "_id": "eslint-plugin-react@2.7.1",
+  "_inCache": true,
+  "_location": "/eslint-plugin-react",
+  "_nodeVersion": "0.12.2",
+  "_npmUser": {
+    "name": "yannickcr",
+    "email": "yannick.croissant+npm@gmail.com"
+  },
+  "_npmVersion": "3.1.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "eslint-plugin-react@^2.1.0",
+    "scope": null,
+    "escapedName": "eslint-plugin-react",
+    "name": "eslint-plugin-react",
+    "rawSpec": "^2.1.0",
+    "spec": ">=2.1.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.7.1.tgz",
+  "_shasum": "5d6f1bca507d1387b6593c230998af04f0b9aed6",
+  "_shrinkwrap": null,
+  "_spec": "eslint-plugin-react@^2.1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "Yannick Croissant",
+    "email": "yannick.croissant+npm@gmail.com"
+  },
+  "bugs": {
+    "url": "https://github.com/yannickcr/eslint-plugin-react/issues"
+  },
+  "dependencies": {},
+  "description": "React specific linting rules for ESLint",
+  "devDependencies": {
+    "babel-eslint": "3.1.23",
+    "coveralls": "2.11.2",
+    "eslint": "1.0.0-rc-1",
+    "eslint-tester": "0.8.2",
+    "istanbul": "0.3.17",
+    "mocha": "2.2.5"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "5d6f1bca507d1387b6593c230998af04f0b9aed6",
+    "tarball": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.7.1.tgz"
+  },
+  "files": [
+    "LICENSE",
+    "README.md",
+    "index.js",
+    "lib"
+  ],
+  "gitHead": "9773cfc72dca92d0f8ece00a096c3795161d571f",
+  "homepage": "https://github.com/yannickcr/eslint-plugin-react",
+  "keywords": [
+    "eslint",
+    "eslint-plugin",
+    "eslintplugin",
+    "react"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "yannickcr",
+      "email": "yannick.croissant+npm@gmail.com"
+    }
+  ],
+  "name": "eslint-plugin-react",
+  "optionalDependencies": {},
+  "peerDependencies": {
+    "eslint": ">=0.8.0 || ~1.0.0-rc-0"
+  },
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/yannickcr/eslint-plugin-react.git"
+  },
+  "scripts": {
+    "coveralls": "cat ./reports/coverage/lcov.info | coveralls",
+    "lint": "eslint ./",
+    "test": "npm run lint && npm run unit-test",
+    "unit-test": "istanbul cover --dir reports/coverage node_modules/mocha/bin/_mocha tests/**/*.js -- --reporter dot"
+  },
+  "version": "2.7.1"
+}
diff --git a/wrt/build/node_modules/find-root/README.md b/wrt/build/node_modules/find-root/README.md
new file mode 100644 (file)
index 0000000..273f65b
--- /dev/null
@@ -0,0 +1,55 @@
+# find-root
+recursively find the closest package.json
+
+[![Circle CI](https://circleci.com/gh/jden/find-root.svg?style=svg)](https://circleci.com/gh/jden/find-root)
+
+## usage
+Say you want to check if the directory name of a project matches its
+module name in package.json:
+
+```js
+var path = require('path')
+var findRoot = require('find-root')
+
+// from a starting directory, recursively search for the nearest
+// directory containing package.json
+var root = findRoot('/Users/jden/dev/find-root/tests')
+// => '/Users/jden/dev/find-root'
+
+var dirname = path.basename(root)
+console.log('is it the same?')
+console.log(dirname === require(path.join(root, 'package.json')).name)
+```
+
+
+## api
+
+### `findRoot: (startingPath : String) => String`
+
+Returns the path for the nearest directory to `startingPath` containing
+a `package.json` file, eg `/foo/module`.
+
+Throws an error if no `package.json` is found at any level in the
+`startingPath`.
+
+
+## installation
+
+    $ npm install find-root
+
+
+## running the tests
+
+From package root:
+
+    $ npm install
+    $ npm test
+
+
+## contributors
+
+- jden <jason@denizac.org>
+
+
+## license
+MIT. (c) MMXIII AgileMD http://agilemd.com
diff --git a/wrt/build/node_modules/find-root/index.js b/wrt/build/node_modules/find-root/index.js
new file mode 100644 (file)
index 0000000..e6515df
--- /dev/null
@@ -0,0 +1,24 @@
+var path = require('path')
+var fs = require('fs')
+
+function findRoot(start) {
+  start = start || module.parent.filename
+  if (typeof start === 'string') {
+    if (start[start.length-1] !== path.sep) {
+      start+=path.sep
+    }
+    start = start.split(path.sep)
+  }
+  if(!start.length) {
+    throw new Error('package.json not found in path')
+  }
+  start.pop()
+  var dir = start.join(path.sep)
+  try {
+    fs.statSync(path.join(dir, 'package.json'));
+    return dir;
+  } catch (e) {}
+  return findRoot(start)
+}
+
+module.exports = findRoot
diff --git a/wrt/build/node_modules/find-root/package.json b/wrt/build/node_modules/find-root/package.json
new file mode 100644 (file)
index 0000000..3c06790
--- /dev/null
@@ -0,0 +1,101 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "find-root@^0.1.1",
+        "scope": null,
+        "escapedName": "find-root",
+        "name": "find-root",
+        "rawSpec": "^0.1.1",
+        "spec": ">=0.1.1 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "find-root@>=0.1.1 <0.2.0",
+  "_id": "find-root@0.1.2",
+  "_inCache": true,
+  "_location": "/find-root",
+  "_nodeVersion": "5.6.0",
+  "_npmOperationalInternal": {
+    "host": "packages-5-east.internal.npmjs.com",
+    "tmp": "tmp/find-root-0.1.2.tgz_1456090841354_0.014418847160413861"
+  },
+  "_npmUser": {
+    "name": "jden",
+    "email": "jason@denizac.org"
+  },
+  "_npmVersion": "3.5.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "find-root@^0.1.1",
+    "scope": null,
+    "escapedName": "find-root",
+    "name": "find-root",
+    "rawSpec": "^0.1.1",
+    "spec": ">=0.1.1 <0.2.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard",
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/find-root/-/find-root-0.1.2.tgz",
+  "_shasum": "98d2267cff1916ccaf2743b3a0eea81d79d7dcd1",
+  "_shrinkwrap": null,
+  "_spec": "find-root@^0.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "AgileMD",
+    "email": "hello@agilemd.com"
+  },
+  "bugs": {
+    "url": "https://github.com/agilemd/find-root/issues"
+  },
+  "contributors": [
+    {
+      "name": "jden",
+      "email": "jason@denizac.org"
+    }
+  ],
+  "dependencies": {},
+  "description": "find the closest package.json",
+  "devDependencies": {
+    "chai": "~1.6.0",
+    "mocha": "~1.9.0",
+    "moquire": "~1.5.4"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "98d2267cff1916ccaf2743b3a0eea81d79d7dcd1",
+    "tarball": "https://registry.npmjs.org/find-root/-/find-root-0.1.2.tgz"
+  },
+  "gitHead": "2e125a772883d8da1201b35b3d2f44b338f47841",
+  "homepage": "https://github.com/agilemd/find-root#readme",
+  "keywords": [
+    "package",
+    "module",
+    "base",
+    "root"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "jden",
+      "email": "jason@denizac.org"
+    }
+  ],
+  "name": "find-root",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/agilemd/find-root.git"
+  },
+  "scripts": {
+    "test": "node node_modules/mocha/bin/mocha"
+  },
+  "version": "0.1.2"
+}
diff --git a/wrt/build/node_modules/find-root/test/test.js b/wrt/build/node_modules/find-root/test/test.js
new file mode 100644 (file)
index 0000000..fe42002
--- /dev/null
@@ -0,0 +1,53 @@
+var chai = require('chai')
+chai.should()
+var expect = chai.expect
+var moquire = require('moquire')
+var path = require('path')
+
+var MODULE = '../'
+
+describe('find-root', function () {
+
+  it('recursively looks for package.json', function () {
+
+    var checked = []
+    var fs = {
+      statSync: function (path) {
+        checked.push(path)
+        if (path === '/foo/package.json') {
+          return {};
+        } else {
+          throw new Error();
+        }
+      }
+    }
+
+    var findRoot = moquire(MODULE, {fs: fs})
+
+    findRoot('/foo/bar/baz')
+      .should.equal('/foo')
+
+    checked.should.deep.equal([
+        '/foo/bar/baz/package.json',
+        '/foo/bar/package.json',
+        '/foo/package.json'
+      ])
+
+  })
+
+  it('throws if not found', function () {
+
+    var fs = {
+      statSync: function (path) {
+        throw new Error();
+      }
+    }
+
+    var findRoot = moquire(MODULE, {fs: fs})
+
+    expect(function () {
+      findRoot('/foo/bar/baz/')
+    }).to.throw('not found')
+
+  })
+})
diff --git a/wrt/build/node_modules/get-stdin/package.json b/wrt/build/node_modules/get-stdin/package.json
new file mode 100644 (file)
index 0000000..55b2c50
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "get-stdin@^4.0.1",
+        "scope": null,
+        "escapedName": "get-stdin",
+        "name": "get-stdin",
+        "rawSpec": "^4.0.1",
+        "spec": ">=4.0.1 <5.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/has-ansi"
+    ]
+  ],
+  "_from": "get-stdin@>=4.0.1 <5.0.0",
+  "_id": "get-stdin@4.0.1",
+  "_inCache": true,
+  "_location": "/get-stdin",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "get-stdin@^4.0.1",
+    "scope": null,
+    "escapedName": "get-stdin",
+    "name": "get-stdin",
+    "rawSpec": "^4.0.1",
+    "spec": ">=4.0.1 <5.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/has-ansi",
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+  "_shasum": "b968c6b0a04384324902e8bf1a5df32579a450fe",
+  "_shrinkwrap": null,
+  "_spec": "get-stdin@^4.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/has-ansi",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/get-stdin/issues"
+  },
+  "dependencies": {},
+  "description": "Easier stdin",
+  "devDependencies": {
+    "ava": "0.0.4",
+    "buffer-equal": "0.0.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "b968c6b0a04384324902e8bf1a5df32579a450fe",
+    "tarball": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "65c744975229b25d6cc5c7546f49b6ad9099553f",
+  "homepage": "https://github.com/sindresorhus/get-stdin",
+  "keywords": [
+    "std",
+    "stdin",
+    "stdio",
+    "concat",
+    "buffer",
+    "stream",
+    "process",
+    "stream"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    }
+  ],
+  "name": "get-stdin",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/get-stdin.git"
+  },
+  "scripts": {
+    "test": "node test.js && node test-buffer.js && echo unicorns | node test-real.js"
+  },
+  "version": "4.0.1"
+}
index c2112b4..9cac8e8 100644 (file)
@@ -1,26 +1,44 @@
 {
-  "_from": "grunt-cli@^0.1.13",
+  "_args": [
+    [
+      {
+        "raw": "grunt-cli@^0.1.13",
+        "scope": null,
+        "escapedName": "grunt-cli",
+        "name": "grunt-cli",
+        "rawSpec": "^0.1.13",
+        "spec": ">=0.1.13 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+    ]
+  ],
+  "_from": "grunt-cli@>=0.1.13 <0.2.0",
   "_id": "grunt-cli@0.1.13",
-  "_inBundle": false,
-  "_integrity": "sha1-6evEBHYx9QEtkidww5N4EzytEPQ=",
+  "_inCache": true,
   "_location": "/grunt-cli",
+  "_npmUser": {
+    "name": "tkellen",
+    "email": "tyler@sleekcode.net"
+  },
+  "_npmVersion": "1.3.24",
   "_phantomChildren": {},
   "_requested": {
-    "type": "range",
-    "registry": true,
     "raw": "grunt-cli@^0.1.13",
-    "name": "grunt-cli",
+    "scope": null,
     "escapedName": "grunt-cli",
+    "name": "grunt-cli",
     "rawSpec": "^0.1.13",
-    "saveSpec": null,
-    "fetchSpec": "^0.1.13"
+    "spec": ">=0.1.13 <0.2.0",
+    "type": "range"
   },
   "_requiredBy": [
     "#DEV:/",
     "#USER"
   ],
-  "_resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-0.1.13.tgz",
+  "_resolved": "http://registry.npmjs.org/grunt-cli/-/grunt-cli-0.1.13.tgz",
   "_shasum": "e9ebc4047631f5012d922770c39378133cad10f4",
+  "_shrinkwrap": null,
   "_spec": "grunt-cli@^0.1.13",
   "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
   "author": {
@@ -32,7 +50,6 @@
   "bugs": {
     "url": "http://github.com/gruntjs/grunt-cli/issues"
   },
-  "bundleDependencies": false,
   "contributors": [
     {
       "name": "Tyler Kellen",
     "nopt": "~1.0.10",
     "resolve": "~0.3.1"
   },
-  "deprecated": false,
   "description": "The grunt command line interface.",
   "devDependencies": {
     "grunt": "~0.4.0",
     "grunt-contrib-jshint": "~0.2.0"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "e9ebc4047631f5012d922770c39378133cad10f4",
+    "tarball": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-0.1.13.tgz"
+  },
   "engines": {
     "node": ">= 0.8.0"
   },
       "url": "http://github.com/gruntjs/grunt-cli/blob/master/LICENSE-MIT"
     }
   ],
+  "maintainers": [
+    {
+      "name": "tkellen",
+      "email": "tyler@sleekcode.net"
+    }
+  ],
   "name": "grunt-cli",
+  "optionalDependencies": {},
   "preferGlobal": true,
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git://github.com/gruntjs/grunt-cli.git"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/eslint b/wrt/build/node_modules/grunt-standard/node_modules/.bin/eslint
new file mode 120000 (symlink)
index 0000000..810e4bc
--- /dev/null
@@ -0,0 +1 @@
+../eslint/bin/eslint.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/esparse b/wrt/build/node_modules/grunt-standard/node_modules/.bin/esparse
new file mode 120000 (symlink)
index 0000000..409161d
--- /dev/null
@@ -0,0 +1 @@
+../espree/bin/esparse.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/esvalidate b/wrt/build/node_modules/grunt-standard/node_modules/.bin/esvalidate
new file mode 120000 (symlink)
index 0000000..939b663
--- /dev/null
@@ -0,0 +1 @@
+../espree/bin/esvalidate.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/has-ansi b/wrt/build/node_modules/grunt-standard/node_modules/.bin/has-ansi
new file mode 120000 (symlink)
index 0000000..c1e7413
--- /dev/null
@@ -0,0 +1 @@
+../has-ansi/cli.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/js-yaml b/wrt/build/node_modules/grunt-standard/node_modules/.bin/js-yaml
new file mode 120000 (symlink)
index 0000000..9dbd010
--- /dev/null
@@ -0,0 +1 @@
+../js-yaml/bin/js-yaml.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/strip-ansi b/wrt/build/node_modules/grunt-standard/node_modules/.bin/strip-ansi
new file mode 120000 (symlink)
index 0000000..b65c9f8
--- /dev/null
@@ -0,0 +1 @@
+../strip-ansi/cli.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/.bin/user-home b/wrt/build/node_modules/grunt-standard/node_modules/.bin/user-home
new file mode 120000 (symlink)
index 0000000..d72d76b
--- /dev/null
@@ -0,0 +1 @@
+../user-home/cli.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/package.json b/wrt/build/node_modules/grunt-standard/node_modules/ansi-regex/package.json
new file mode 100644 (file)
index 0000000..1aa8283
--- /dev/null
@@ -0,0 +1,121 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "ansi-regex@^1.1.0",
+        "scope": null,
+        "escapedName": "ansi-regex",
+        "name": "ansi-regex",
+        "rawSpec": "^1.1.0",
+        "spec": ">=1.1.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/has-ansi"
+    ]
+  ],
+  "_from": "ansi-regex@>=1.1.0 <2.0.0",
+  "_id": "ansi-regex@1.1.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/ansi-regex",
+  "_nodeVersion": "0.10.35",
+  "_npmUser": {
+    "name": "jbnicolai",
+    "email": "jappelman@xebia.com"
+  },
+  "_npmVersion": "2.1.16",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "ansi-regex@^1.1.0",
+    "scope": null,
+    "escapedName": "ansi-regex",
+    "name": "ansi-regex",
+    "rawSpec": "^1.1.0",
+    "spec": ">=1.1.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/has-ansi",
+    "/grunt-standard/strip-ansi"
+  ],
+  "_resolved": "http://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
+  "_shasum": "41c847194646375e6a1a5d10c3ca054ef9fc980d",
+  "_shrinkwrap": null,
+  "_spec": "ansi-regex@^1.1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/has-ansi",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/ansi-regex/issues"
+  },
+  "dependencies": {},
+  "description": "Regular expression for matching ANSI escape codes",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "41c847194646375e6a1a5d10c3ca054ef9fc980d",
+    "tarball": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "47fb974630af70998157b30fad6eb5e5bd7c7cd6",
+  "homepage": "https://github.com/sindresorhus/ansi-regex",
+  "keywords": [
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "tty",
+    "escape",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "command-line",
+    "text",
+    "regex",
+    "regexp",
+    "re",
+    "match",
+    "test",
+    "find",
+    "pattern"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    },
+    {
+      "name": "jbnicolai",
+      "email": "jappelman@xebia.com"
+    }
+  ],
+  "name": "ansi-regex",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/ansi-regex.git"
+  },
+  "scripts": {
+    "test": "mocha test/test.js",
+    "view-supported": "node test/viewCodes.js"
+  },
+  "version": "1.1.1"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/argparse/CHANGELOG.md
new file mode 100644 (file)
index 0000000..e422115
--- /dev/null
@@ -0,0 +1,179 @@
+1.0.9 / 2016-09-29
+------------------
+
+- Rerelease after 1.0.8 - deps cleanup.
+
+
+1.0.8 / 2016-09-29
+------------------
+
+- Maintenance (deps bump, fix node 6.5+ tests, coverage report).
+
+
+1.0.7 / 2016-03-17
+------------------
+
+- Teach `addArgument` to accept string arg names. #97, @tomxtobin.
+
+
+1.0.6 / 2016-02-06
+------------------
+
+- Maintenance: moved to eslint & updated CS.
+
+
+1.0.5 / 2016-02-05
+------------------
+
+- Removed lodash dependency to significantly reduce install size.
+  Thanks to @mourner.
+
+
+1.0.4 / 2016-01-17
+------------------
+
+- Maintenance: lodash update to 4.0.0.
+
+
+1.0.3 / 2015-10-27
+------------------
+
+- Fix parse `=` in args: `--examplepath="C:\myfolder\env=x64"`. #84, @CatWithApple.
+
+
+1.0.2 / 2015-03-22
+------------------
+
+- Relaxed lodash version dependency.
+
+
+1.0.1 / 2015-02-20
+------------------
+
+- Changed dependencies to be compatible with ancient nodejs.
+
+
+1.0.0 / 2015-02-19
+------------------
+
+- Maintenance release.
+- Replaced `underscore` with `lodash`.
+- Bumped version to 1.0.0 to better reflect semver meaning.
+- HISTORY.md -> CHANGELOG.md
+
+
+0.1.16 / 2013-12-01
+-------------------
+
+- Maintenance release. Updated dependencies and docs.
+
+
+0.1.15 / 2013-05-13
+-------------------
+
+- Fixed #55, @trebor89
+
+
+0.1.14 / 2013-05-12
+-------------------
+
+- Fixed #62, @maxtaco
+
+
+0.1.13 / 2013-04-08
+-------------------
+
+- Added `.npmignore` to reduce package size
+
+
+0.1.12 / 2013-02-10
+-------------------
+
+- Fixed conflictHandler (#46), @hpaulj
+
+
+0.1.11 / 2013-02-07
+-------------------
+
+- Multiple bugfixes, @hpaulj
+- Added 70+ tests (ported from python), @hpaulj
+- Added conflictHandler, @applepicke
+- Added fromfilePrefixChar, @hpaulj
+
+
+0.1.10 / 2012-12-30
+-------------------
+
+- Added [mutual exclusion](http://docs.python.org/dev/library/argparse.html#mutual-exclusion)
+  support, thanks to @hpaulj
+- Fixed options check for `storeConst` & `appendConst` actions, thanks to @hpaulj
+
+
+0.1.9 / 2012-12-27
+------------------
+
+- Fixed option dest interferens with other options (issue #23), thanks to @hpaulj
+- Fixed default value behavior with `*` positionals, thanks to @hpaulj
+- Improve `getDefault()` behavior, thanks to @hpaulj
+- Imrove negative argument parsing, thanks to @hpaulj
+
+
+0.1.8 / 2012-12-01
+------------------
+
+- Fixed parser parents (issue #19), thanks to @hpaulj
+- Fixed negative argument parse (issue #20), thanks to @hpaulj
+
+
+0.1.7 / 2012-10-14
+------------------
+
+- Fixed 'choices' argument parse (issue #16)
+- Fixed stderr output (issue #15)
+
+
+0.1.6 / 2012-09-09
+------------------
+
+- Fixed check for conflict of options (thanks to @tomxtobin)
+
+
+0.1.5 / 2012-09-03
+------------------
+
+- Fix parser #setDefaults method (thanks to @tomxtobin)
+
+
+0.1.4 / 2012-07-30
+------------------
+
+- Fixed pseudo-argument support (thanks to @CGamesPlay)
+- Fixed addHelp default (should be true), if not set (thanks to @benblank)
+
+
+0.1.3 / 2012-06-27
+------------------
+
+- Fixed formatter api name: Formatter -> HelpFormatter
+
+
+0.1.2 / 2012-05-29
+------------------
+
+- Added basic tests
+- Removed excess whitespace in help
+- Fixed error reporting, when parcer with subcommands
+  called with empty arguments
+
+
+0.1.1 / 2012-05-23
+------------------
+
+- Fixed line wrapping in help formatter
+- Added better error reporting on invalid arguments
+
+
+0.1.0 / 2012-05-16
+------------------
+
+- First release.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/README.md b/wrt/build/node_modules/grunt-standard/node_modules/argparse/README.md
new file mode 100644 (file)
index 0000000..2d0bcab
--- /dev/null
@@ -0,0 +1,253 @@
+argparse
+========
+
+[![Build Status](https://secure.travis-ci.org/nodeca/argparse.png?branch=master)](http://travis-ci.org/nodeca/argparse)
+[![NPM version](https://img.shields.io/npm/v/argparse.svg)](https://www.npmjs.org/package/argparse)
+
+CLI arguments parser for node.js. Javascript port of python's
+[argparse](http://docs.python.org/dev/library/argparse.html) module
+(original version 3.2). That's a full port, except some very rare options,
+recorded in issue tracker.
+
+**NB. Difference with original.**
+
+- Method names changed to camelCase. See [generated docs](http://nodeca.github.com/argparse/).
+- Use `defaultValue` instead of `default`.
+
+
+Example
+=======
+
+test.js file:
+
+```javascript
+#!/usr/bin/env node
+'use strict';
+
+var ArgumentParser = require('../lib/argparse').ArgumentParser;
+var parser = new ArgumentParser({
+  version: '0.0.1',
+  addHelp:true,
+  description: 'Argparse example'
+});
+parser.addArgument(
+  [ '-f', '--foo' ],
+  {
+    help: 'foo bar'
+  }
+);
+parser.addArgument(
+  [ '-b', '--bar' ],
+  {
+    help: 'bar foo'
+  }
+);
+parser.addArgument(
+  '--baz',
+  {
+    help: 'baz bar'
+  }
+);
+var args = parser.parseArgs();
+console.dir(args);
+```
+
+Display help:
+
+```
+$ ./test.js -h
+usage: example.js [-h] [-v] [-f FOO] [-b BAR] [--baz BAZ]
+
+Argparse example
+
+Optional arguments:
+  -h, --help         Show this help message and exit.
+  -v, --version      Show program's version number and exit.
+  -f FOO, --foo FOO  foo bar
+  -b BAR, --bar BAR  bar foo
+  --baz BAZ          baz bar
+```
+
+Parse arguments:
+
+```
+$ ./test.js -f=3 --bar=4 --baz 5
+{ foo: '3', bar: '4', baz: '5' }
+```
+
+More [examples](https://github.com/nodeca/argparse/tree/master/examples).
+
+
+ArgumentParser objects
+======================
+
+```
+new ArgumentParser({paramters hash});
+```
+
+Creates a new ArgumentParser object.
+
+**Supported params:**
+
+- ```description``` - Text to display before the argument help.
+- ```epilog``` - Text to display after the argument help.
+- ```addHelp``` - Add a -h/–help option to the parser. (default: true)
+- ```argumentDefault``` - Set the global default value for arguments. (default: null)
+- ```parents``` - A list of ArgumentParser objects whose arguments should also be included.
+- ```prefixChars``` - The set of characters that prefix optional arguments. (default: ‘-‘)
+- ```formatterClass``` - A class for customizing the help output.
+- ```prog``` - The name of the program (default: `path.basename(process.argv[1])`)
+- ```usage``` - The string describing the program usage (default: generated)
+- ```conflictHandler``` - Usually unnecessary, defines strategy for resolving conflicting optionals.
+
+**Not supportied yet**
+
+- ```fromfilePrefixChars``` - The set of characters that prefix files from which additional arguments should be read.
+
+
+Details in [original ArgumentParser guide](http://docs.python.org/dev/library/argparse.html#argumentparser-objects)
+
+
+addArgument() method
+====================
+
+```
+ArgumentParser.addArgument(name or flag or [name] or [flags...], {options})
+```
+
+Defines how a single command-line argument should be parsed.
+
+- ```name or flag or [name] or [flags...]``` - Either a positional name
+  (e.g., `'foo'`), a single option (e.g., `'-f'` or `'--foo'`), an array
+  of a single positional name (e.g., `['foo']`), or an array of options
+  (e.g., `['-f', '--foo']`).
+
+Options:
+
+- ```action``` - The basic type of action to be taken when this argument is encountered at the command line.
+- ```nargs```- The number of command-line arguments that should be consumed.
+- ```constant``` - A constant value required by some action and nargs selections.
+- ```defaultValue``` - The value produced if the argument is absent from the command line.
+- ```type``` - The type to which the command-line argument should be converted.
+- ```choices``` - A container of the allowable values for the argument.
+- ```required``` - Whether or not the command-line option may be omitted (optionals only).
+- ```help``` - A brief description of what the argument does.
+- ```metavar``` - A name for the argument in usage messages.
+- ```dest``` - The name of the attribute to be added to the object returned by parseArgs().
+
+Details in [original add_argument guide](http://docs.python.org/dev/library/argparse.html#the-add-argument-method)
+
+
+Action (some details)
+================
+
+ArgumentParser objects associate command-line arguments with actions.
+These actions can do just about anything with the command-line arguments associated
+with them, though most actions simply add an attribute to the object returned by
+parseArgs(). The action keyword argument specifies how the command-line arguments
+should be handled. The supported actions are:
+
+- ```store``` - Just stores the argument’s value. This is the default action.
+- ```storeConst``` - Stores value, specified by the const keyword argument.
+  (Note that the const keyword argument defaults to the rather unhelpful None.)
+  The 'storeConst' action is most commonly used with optional arguments, that
+  specify some sort of flag.
+- ```storeTrue``` and ```storeFalse``` - Stores values True and False
+  respectively. These are special cases of 'storeConst'.
+- ```append``` - Stores a list, and appends each argument value to the list.
+  This is useful to allow an option to be specified multiple times.
+- ```appendConst``` - Stores a list, and appends value, specified by the
+  const keyword argument to the list. (Note, that the const keyword argument defaults
+  is None.) The 'appendConst' action is typically used when multiple arguments need
+  to store constants to the same list.
+- ```count``` - Counts the number of times a keyword argument occurs. For example,
+  used for increasing verbosity levels.
+- ```help``` - Prints a complete help message for all the options in the current
+  parser and then exits. By default a help action is automatically added to the parser.
+  See ArgumentParser for details of how the output is created.
+- ```version``` - Prints version information and exit. Expects a `version=`
+  keyword argument in the addArgument() call.
+
+Details in [original action guide](http://docs.python.org/dev/library/argparse.html#action)
+
+
+Sub-commands
+============
+
+ArgumentParser.addSubparsers()
+
+Many programs split their functionality into a number of sub-commands, for
+example, the svn program can invoke sub-commands like `svn checkout`, `svn update`,
+and `svn commit`. Splitting up functionality this way can be a particularly good
+idea when a program performs several different functions which require different
+kinds of command-line arguments. `ArgumentParser` supports creation of such
+sub-commands with `addSubparsers()` method. The `addSubparsers()` method is
+normally called with no arguments and returns an special action object.
+This object has a single method `addParser()`, which takes a command name and
+any `ArgumentParser` constructor arguments, and returns an `ArgumentParser` object
+that can be modified as usual.
+
+Example:
+
+sub_commands.js
+```javascript
+#!/usr/bin/env node
+'use strict';
+
+var ArgumentParser = require('../lib/argparse').ArgumentParser;
+var parser = new ArgumentParser({
+  version: '0.0.1',
+  addHelp:true,
+  description: 'Argparse examples: sub-commands',
+});
+
+var subparsers = parser.addSubparsers({
+  title:'subcommands',
+  dest:"subcommand_name"
+});
+
+var bar = subparsers.addParser('c1', {addHelp:true});
+bar.addArgument(
+  [ '-f', '--foo' ],
+  {
+    action: 'store',
+    help: 'foo3 bar3'
+  }
+);
+var bar = subparsers.addParser(
+  'c2',
+  {aliases:['co'], addHelp:true}
+);
+bar.addArgument(
+  [ '-b', '--bar' ],
+  {
+    action: 'store',
+    type: 'int',
+    help: 'foo3 bar3'
+  }
+);
+
+var args = parser.parseArgs();
+console.dir(args);
+
+```
+
+Details in [original sub-commands guide](http://docs.python.org/dev/library/argparse.html#sub-commands)
+
+
+Contributors
+============
+
+- [Eugene Shkuropat](https://github.com/shkuropat)
+- [Paul Jacobson](https://github.com/hpaulj)
+
+[others](https://github.com/nodeca/argparse/graphs/contributors)
+
+License
+=======
+
+Copyright (c) 2012 [Vitaly Puzrin](https://github.com/puzrin).
+Released under the MIT license. See
+[LICENSE](https://github.com/nodeca/argparse/blob/master/LICENSE) for details.
+
+
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/index.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/index.js
new file mode 100644 (file)
index 0000000..3bbc143
--- /dev/null
@@ -0,0 +1,3 @@
+'use strict';
+
+module.exports = require('./lib/argparse');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action.js
new file mode 100644 (file)
index 0000000..ef35989
--- /dev/null
@@ -0,0 +1,146 @@
+/**
+ * class Action
+ *
+ * Base class for all actions
+ * Do not call in your code, use this class only for inherits your own action
+ *
+ * Information about how to convert command line strings to Javascript objects.
+ * Action objects are used by an ArgumentParser to represent the information
+ * needed to parse a single argument from one or more strings from the command
+ * line. The keyword arguments to the Action constructor are also all attributes
+ * of Action instances.
+ *
+ * #####Alowed keywords:
+ *
+ * - `store`
+ * - `storeConstant`
+ * - `storeTrue`
+ * - `storeFalse`
+ * - `append`
+ * - `appendConstant`
+ * - `count`
+ * - `help`
+ * - `version`
+ *
+ * Information about action options see [[Action.new]]
+ *
+ * See also [original guide](http://docs.python.org/dev/library/argparse.html#action)
+ *
+ **/
+
+'use strict';
+
+
+// Constants
+var c = require('./const');
+
+
+/**
+ * new Action(options)
+ *
+ * Base class for all actions. Used only for inherits
+ *
+ *
+ * ##### Options:
+ *
+ * - `optionStrings`  A list of command-line option strings for the action.
+ * - `dest`  Attribute to hold the created object(s)
+ * - `nargs`  The number of command-line arguments that should be consumed.
+ * By default, one argument will be consumed and a single value will be
+ * produced.
+ * - `constant`  Default value for an action with no value.
+ * - `defaultValue`  The value to be produced if the option is not specified.
+ * - `type`  Cast to 'string'|'int'|'float'|'complex'|function (string). If
+ * None, 'string'.
+ * - `choices`  The choices available.
+ * - `required`  True if the action must always be specified at the command
+ * line.
+ * - `help`  The help describing the argument.
+ * - `metavar`  The name to be used for the option's argument with the help
+ * string. If None, the 'dest' value will be used as the name.
+ *
+ * ##### nargs supported values:
+ *
+ * - `N` (an integer) consumes N arguments (and produces a list)
+ * - `?`  consumes zero or one arguments
+ * - `*` consumes zero or more arguments (and produces a list)
+ * - `+` consumes one or more arguments (and produces a list)
+ *
+ * Note: that the difference between the default and nargs=1 is that with the
+ * default, a single value will be produced, while with nargs=1, a list
+ * containing a single value will be produced.
+ **/
+var Action = module.exports = function Action(options) {
+  options = options || {};
+  this.optionStrings = options.optionStrings || [];
+  this.dest = options.dest;
+  this.nargs = typeof options.nargs !== 'undefined' ? options.nargs : null;
+  this.constant = typeof options.constant !== 'undefined' ? options.constant : null;
+  this.defaultValue = options.defaultValue;
+  this.type = typeof options.type !== 'undefined' ? options.type : null;
+  this.choices = typeof options.choices !== 'undefined' ? options.choices : null;
+  this.required = typeof options.required !== 'undefined' ? options.required : false;
+  this.help = typeof options.help !== 'undefined' ? options.help : null;
+  this.metavar = typeof options.metavar !== 'undefined' ? options.metavar : null;
+
+  if (!(this.optionStrings instanceof Array)) {
+    throw new Error('optionStrings should be an array');
+  }
+  if (typeof this.required !== 'undefined' && typeof this.required !== 'boolean') {
+    throw new Error('required should be a boolean');
+  }
+};
+
+/**
+ * Action#getName -> String
+ *
+ * Tells action name
+ **/
+Action.prototype.getName = function () {
+  if (this.optionStrings.length > 0) {
+    return this.optionStrings.join('/');
+  } else if (this.metavar !== null && this.metavar !== c.SUPPRESS) {
+    return this.metavar;
+  } else if (typeof this.dest !== 'undefined' && this.dest !== c.SUPPRESS) {
+    return this.dest;
+  }
+  return null;
+};
+
+/**
+ * Action#isOptional -> Boolean
+ *
+ * Return true if optional
+ **/
+Action.prototype.isOptional = function () {
+  return !this.isPositional();
+};
+
+/**
+ * Action#isPositional -> Boolean
+ *
+ * Return true if positional
+ **/
+Action.prototype.isPositional = function () {
+  return (this.optionStrings.length === 0);
+};
+
+/**
+ * Action#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Should be implemented in inherited classes
+ *
+ * ##### Example
+ *
+ *      ActionCount.prototype.call = function (parser, namespace, values, optionString) {
+ *        namespace.set(this.dest, (namespace[this.dest] || 0) + 1);
+ *      };
+ *
+ **/
+Action.prototype.call = function () {
+  throw new Error('.call() not defined');// Not Implemented error
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append.js
new file mode 100644 (file)
index 0000000..b5da0de
--- /dev/null
@@ -0,0 +1,53 @@
+/*:nodoc:*
+ * class ActionAppend
+ *
+ * This action stores a list, and appends each argument value to the list.
+ * This is useful to allow an option to be specified multiple times.
+ * This class inherided from [[Action]]
+ *
+ **/
+
+'use strict';
+
+var util = require('util');
+
+var Action = require('../action');
+
+// Constants
+var c = require('../const');
+
+/*:nodoc:*
+ * new ActionAppend(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ * Note: options.nargs should be optional for constants
+ * and more then zero for other
+ **/
+var ActionAppend = module.exports = function ActionAppend(options) {
+  options = options || {};
+  if (this.nargs <= 0) {
+    throw new Error('nargs for append actions must be > 0; if arg ' +
+        'strings are not supplying the value to append, ' +
+        'the append const action may be more appropriate');
+  }
+  if (!!this.constant && this.nargs !== c.OPTIONAL) {
+    throw new Error('nargs must be OPTIONAL to supply const');
+  }
+  Action.call(this, options);
+};
+util.inherits(ActionAppend, Action);
+
+/*:nodoc:*
+ * ActionAppend#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Save result in namespace object
+ **/
+ActionAppend.prototype.call = function (parser, namespace, values) {
+  var items = (namespace[this.dest] || []).slice();
+  items.push(values);
+  namespace.set(this.dest, items);
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/append/constant.js
new file mode 100644 (file)
index 0000000..313f5d2
--- /dev/null
@@ -0,0 +1,47 @@
+/*:nodoc:*
+ * class ActionAppendConstant
+ *
+ * This stores a list, and appends the value specified by
+ * the const keyword argument to the list.
+ * (Note that the const keyword argument defaults to null.)
+ * The 'appendConst' action is typically useful when multiple
+ * arguments need to store constants to the same list.
+ *
+ * This class inherited from [[Action]]
+ **/
+
+'use strict';
+
+var util = require('util');
+
+var Action = require('../../action');
+
+/*:nodoc:*
+ * new ActionAppendConstant(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionAppendConstant = module.exports = function ActionAppendConstant(options) {
+  options = options || {};
+  options.nargs = 0;
+  if (typeof options.constant === 'undefined') {
+    throw new Error('constant option is required for appendAction');
+  }
+  Action.call(this, options);
+};
+util.inherits(ActionAppendConstant, Action);
+
+/*:nodoc:*
+ * ActionAppendConstant#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Save result in namespace object
+ **/
+ActionAppendConstant.prototype.call = function (parser, namespace) {
+  var items = [].concat(namespace[this.dest] || []);
+  items.push(this.constant);
+  namespace.set(this.dest, items);
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/help.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/help.js
new file mode 100644 (file)
index 0000000..b40e05a
--- /dev/null
@@ -0,0 +1,47 @@
+/*:nodoc:*
+ * class ActionHelp
+ *
+ * Support action for printing help
+ * This class inherided from [[Action]]
+ **/
+'use strict';
+
+var util = require('util');
+
+var Action = require('../action');
+
+// Constants
+var c  = require('../const');
+
+/*:nodoc:*
+ * new ActionHelp(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionHelp = module.exports = function ActionHelp(options) {
+  options = options || {};
+  if (options.defaultValue !== null) {
+    options.defaultValue = options.defaultValue;
+  } else {
+    options.defaultValue = c.SUPPRESS;
+  }
+  options.dest = (options.dest !== null ? options.dest : c.SUPPRESS);
+  options.nargs = 0;
+  Action.call(this, options);
+
+};
+util.inherits(ActionHelp, Action);
+
+/*:nodoc:*
+ * ActionHelp#call(parser, namespace, values, optionString)
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Print help and exit
+ **/
+ActionHelp.prototype.call = function (parser) {
+  parser.printHelp();
+  parser.exit();
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store.js
new file mode 100644 (file)
index 0000000..283b860
--- /dev/null
@@ -0,0 +1,50 @@
+/*:nodoc:*
+ * class ActionStore
+ *
+ * This action just stores the argument’s value. This is the default action.
+ *
+ * This class inherited from [[Action]]
+ *
+ **/
+'use strict';
+
+var util = require('util');
+
+var Action = require('../action');
+
+// Constants
+var c = require('../const');
+
+
+/*:nodoc:*
+ * new ActionStore(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionStore = module.exports = function ActionStore(options) {
+  options = options || {};
+  if (this.nargs <= 0) {
+    throw new Error('nargs for store actions must be > 0; if you ' +
+        'have nothing to store, actions such as store ' +
+        'true or store const may be more appropriate');
+
+  }
+  if (typeof this.constant !== 'undefined' && this.nargs !== c.OPTIONAL) {
+    throw new Error('nargs must be OPTIONAL to supply const');
+  }
+  Action.call(this, options);
+};
+util.inherits(ActionStore, Action);
+
+/*:nodoc:*
+ * ActionStore#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Save result in namespace object
+ **/
+ActionStore.prototype.call = function (parser, namespace, values) {
+  namespace.set(this.dest, values);
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/constant.js
new file mode 100644 (file)
index 0000000..23caa89
--- /dev/null
@@ -0,0 +1,43 @@
+/*:nodoc:*
+ * class ActionStoreConstant
+ *
+ * This action stores the value specified by the const keyword argument.
+ * (Note that the const keyword argument defaults to the rather unhelpful null.)
+ * The 'store_const' action is most commonly used with optional
+ * arguments that specify some sort of flag.
+ *
+ * This class inherited from [[Action]]
+ **/
+'use strict';
+
+var util = require('util');
+
+var Action = require('../../action');
+
+/*:nodoc:*
+ * new ActionStoreConstant(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionStoreConstant = module.exports = function ActionStoreConstant(options) {
+  options = options || {};
+  options.nargs = 0;
+  if (typeof options.constant === 'undefined') {
+    throw new Error('constant option is required for storeAction');
+  }
+  Action.call(this, options);
+};
+util.inherits(ActionStoreConstant, Action);
+
+/*:nodoc:*
+ * ActionStoreConstant#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Save result in namespace object
+ **/
+ActionStoreConstant.prototype.call = function (parser, namespace) {
+  namespace.set(this.dest, this.constant);
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/false.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/false.js
new file mode 100644 (file)
index 0000000..9924f46
--- /dev/null
@@ -0,0 +1,27 @@
+/*:nodoc:*
+ * class ActionStoreFalse
+ *
+ * This action store the values False respectively.
+ * This is special cases of 'storeConst'
+ *
+ * This class inherited from [[Action]]
+ **/
+
+'use strict';
+
+var util = require('util');
+
+var ActionStoreConstant = require('./constant');
+
+/*:nodoc:*
+ * new ActionStoreFalse(options)
+ * - options (object): hash of options see [[Action.new]]
+ *
+ **/
+var ActionStoreFalse = module.exports = function ActionStoreFalse(options) {
+  options = options || {};
+  options.constant = false;
+  options.defaultValue = options.defaultValue !== null ? options.defaultValue : true;
+  ActionStoreConstant.call(this, options);
+};
+util.inherits(ActionStoreFalse, ActionStoreConstant);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/true.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/store/true.js
new file mode 100644 (file)
index 0000000..9e22f7d
--- /dev/null
@@ -0,0 +1,26 @@
+/*:nodoc:*
+ * class ActionStoreTrue
+ *
+ * This action store the values True respectively.
+ * This isspecial cases of 'storeConst'
+ *
+ * This class inherited from [[Action]]
+ **/
+'use strict';
+
+var util = require('util');
+
+var ActionStoreConstant = require('./constant');
+
+/*:nodoc:*
+ * new ActionStoreTrue(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionStoreTrue = module.exports = function ActionStoreTrue(options) {
+  options = options || {};
+  options.constant = true;
+  options.defaultValue = options.defaultValue !== null ? options.defaultValue : false;
+  ActionStoreConstant.call(this, options);
+};
+util.inherits(ActionStoreTrue, ActionStoreConstant);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/subparsers.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/subparsers.js
new file mode 100644 (file)
index 0000000..99dfedd
--- /dev/null
@@ -0,0 +1,149 @@
+/** internal
+ * class ActionSubparsers
+ *
+ * Support the creation of such sub-commands with the addSubparsers()
+ *
+ * This class inherited from [[Action]]
+ **/
+'use strict';
+
+var util    = require('util');
+var format  = require('util').format;
+
+
+var Action = require('../action');
+
+// Constants
+var c = require('../const');
+
+// Errors
+var argumentErrorHelper = require('../argument/error');
+
+
+/*:nodoc:*
+ * new ChoicesPseudoAction(name, help)
+ *
+ * Create pseudo action for correct help text
+ *
+ **/
+function ChoicesPseudoAction(name, help) {
+  var options = {
+    optionStrings: [],
+    dest: name,
+    help: help
+  };
+
+  Action.call(this, options);
+}
+
+util.inherits(ChoicesPseudoAction, Action);
+
+/**
+ * new ActionSubparsers(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+function ActionSubparsers(options) {
+  options = options || {};
+  options.dest = options.dest || c.SUPPRESS;
+  options.nargs = c.PARSER;
+
+  this.debug = (options.debug === true);
+
+  this._progPrefix = options.prog;
+  this._parserClass = options.parserClass;
+  this._nameParserMap = {};
+  this._choicesActions = [];
+
+  options.choices = this._nameParserMap;
+  Action.call(this, options);
+}
+
+util.inherits(ActionSubparsers, Action);
+
+/*:nodoc:*
+ * ActionSubparsers#addParser(name, options) -> ArgumentParser
+ * - name (string): sub-command name
+ * - options (object): see [[ArgumentParser.new]]
+ *
+ *  Note:
+ *  addParser supports an additional aliases option,
+ *  which allows multiple strings to refer to the same subparser.
+ *  This example, like svn, aliases co as a shorthand for checkout
+ *
+ **/
+ActionSubparsers.prototype.addParser = function (name, options) {
+  var parser;
+
+  var self = this;
+
+  options = options || {};
+
+  options.debug = (this.debug === true);
+
+  // set program from the existing prefix
+  if (!options.prog) {
+    options.prog = this._progPrefix + ' ' + name;
+  }
+
+  var aliases = options.aliases || [];
+
+  // create a pseudo-action to hold the choice help
+  if (!!options.help || typeof options.help === 'string') {
+    var help = options.help;
+    delete options.help;
+
+    var choiceAction = new ChoicesPseudoAction(name, help);
+    this._choicesActions.push(choiceAction);
+  }
+
+  // create the parser and add it to the map
+  parser = new this._parserClass(options);
+  this._nameParserMap[name] = parser;
+
+  // make parser available under aliases also
+  aliases.forEach(function (alias) {
+    self._nameParserMap[alias] = parser;
+  });
+
+  return parser;
+};
+
+ActionSubparsers.prototype._getSubactions = function () {
+  return this._choicesActions;
+};
+
+/*:nodoc:*
+ * ActionSubparsers#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Call the action. Parse input aguments
+ **/
+ActionSubparsers.prototype.call = function (parser, namespace, values) {
+  var parserName = values[0];
+  var argStrings = values.slice(1);
+
+  // set the parser name if requested
+  if (this.dest !== c.SUPPRESS) {
+    namespace[this.dest] = parserName;
+  }
+
+  // select the parser
+  if (this._nameParserMap[parserName]) {
+    parser = this._nameParserMap[parserName];
+  } else {
+    throw argumentErrorHelper(format(
+      'Unknown parser "%s" (choices: [%s]).',
+        parserName,
+        Object.keys(this._nameParserMap).join(', ')
+    ));
+  }
+
+  // parse all the remaining options into the namespace
+  parser.parseArgs(argStrings, namespace);
+};
+
+module.exports = ActionSubparsers;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/version.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action/version.js
new file mode 100644 (file)
index 0000000..8053328
--- /dev/null
@@ -0,0 +1,47 @@
+/*:nodoc:*
+ * class ActionVersion
+ *
+ * Support action for printing program version
+ * This class inherited from [[Action]]
+ **/
+'use strict';
+
+var util = require('util');
+
+var Action = require('../action');
+
+//
+// Constants
+//
+var c = require('../const');
+
+/*:nodoc:*
+ * new ActionVersion(options)
+ * - options (object): options hash see [[Action.new]]
+ *
+ **/
+var ActionVersion = module.exports = function ActionVersion(options) {
+  options = options || {};
+  options.defaultValue = (options.defaultValue ? options.defaultValue : c.SUPPRESS);
+  options.dest = (options.dest || c.SUPPRESS);
+  options.nargs = 0;
+  this.version = options.version;
+  Action.call(this, options);
+};
+util.inherits(ActionVersion, Action);
+
+/*:nodoc:*
+ * ActionVersion#call(parser, namespace, values, optionString) -> Void
+ * - parser (ArgumentParser): current parser
+ * - namespace (Namespace): namespace for output data
+ * - values (Array): parsed values
+ * - optionString (Array): input option string(not parsed)
+ *
+ * Print version and exit
+ **/
+ActionVersion.prototype.call = function (parser) {
+  var version = this.version || parser.version;
+  var formatter = parser._getFormatter();
+  formatter.addText(version);
+  parser.exit(0, formatter.formatHelp());
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action_container.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/action_container.js
new file mode 100644 (file)
index 0000000..6f1237b
--- /dev/null
@@ -0,0 +1,482 @@
+/** internal
+ * class ActionContainer
+ *
+ * Action container. Parent for [[ArgumentParser]] and [[ArgumentGroup]]
+ **/
+
+'use strict';
+
+var format = require('util').format;
+
+// Constants
+var c = require('./const');
+
+var $$ = require('./utils');
+
+//Actions
+var ActionHelp = require('./action/help');
+var ActionAppend = require('./action/append');
+var ActionAppendConstant = require('./action/append/constant');
+var ActionCount = require('./action/count');
+var ActionStore = require('./action/store');
+var ActionStoreConstant = require('./action/store/constant');
+var ActionStoreTrue = require('./action/store/true');
+var ActionStoreFalse = require('./action/store/false');
+var ActionVersion = require('./action/version');
+var ActionSubparsers = require('./action/subparsers');
+
+// Errors
+var argumentErrorHelper = require('./argument/error');
+
+/**
+ * new ActionContainer(options)
+ *
+ * Action container. Parent for [[ArgumentParser]] and [[ArgumentGroup]]
+ *
+ * ##### Options:
+ *
+ * - `description` -- A description of what the program does
+ * - `prefixChars`  -- Characters that prefix optional arguments
+ * - `argumentDefault`  -- The default value for all arguments
+ * - `conflictHandler` -- The conflict handler to use for duplicate arguments
+ **/
+var ActionContainer = module.exports = function ActionContainer(options) {
+  options = options || {};
+
+  this.description = options.description;
+  this.argumentDefault = options.argumentDefault;
+  this.prefixChars = options.prefixChars || '';
+  this.conflictHandler = options.conflictHandler;
+
+  // set up registries
+  this._registries = {};
+
+  // register actions
+  this.register('action', null, ActionStore);
+  this.register('action', 'store', ActionStore);
+  this.register('action', 'storeConst', ActionStoreConstant);
+  this.register('action', 'storeTrue', ActionStoreTrue);
+  this.register('action', 'storeFalse', ActionStoreFalse);
+  this.register('action', 'append', ActionAppend);
+  this.register('action', 'appendConst', ActionAppendConstant);
+  this.register('action', 'count', ActionCount);
+  this.register('action', 'help', ActionHelp);
+  this.register('action', 'version', ActionVersion);
+  this.register('action', 'parsers', ActionSubparsers);
+
+  // raise an exception if the conflict handler is invalid
+  this._getHandler();
+
+  // action storage
+  this._actions = [];
+  this._optionStringActions = {};
+
+  // groups
+  this._actionGroups = [];
+  this._mutuallyExclusiveGroups = [];
+
+  // defaults storage
+  this._defaults = {};
+
+  // determines whether an "option" looks like a negative number
+  // -1, -1.5 -5e+4
+  this._regexpNegativeNumber = new RegExp('^[-]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?$');
+
+  // whether or not there are any optionals that look like negative
+  // numbers -- uses a list so it can be shared and edited
+  this._hasNegativeNumberOptionals = [];
+};
+
+// Groups must be required, then ActionContainer already defined
+var ArgumentGroup = require('./argument/group');
+var MutuallyExclusiveGroup = require('./argument/exclusive');
+
+//
+// Registration methods
+//
+
+/**
+ * ActionContainer#register(registryName, value, object) -> Void
+ * - registryName (String) : object type action|type
+ * - value (string) : keyword
+ * - object (Object|Function) : handler
+ *
+ *  Register handlers
+ **/
+ActionContainer.prototype.register = function (registryName, value, object) {
+  this._registries[registryName] = this._registries[registryName] || {};
+  this._registries[registryName][value] = object;
+};
+
+ActionContainer.prototype._registryGet = function (registryName, value, defaultValue) {
+  if (arguments.length < 3) {
+    defaultValue = null;
+  }
+  return this._registries[registryName][value] || defaultValue;
+};
+
+//
+// Namespace default accessor methods
+//
+
+/**
+ * ActionContainer#setDefaults(options) -> Void
+ * - options (object):hash of options see [[Action.new]]
+ *
+ * Set defaults
+ **/
+ActionContainer.prototype.setDefaults = function (options) {
+  options = options || {};
+  for (var property in options) {
+    if ($$.has(options, property)) {
+      this._defaults[property] = options[property];
+    }
+  }
+
+  // if these defaults match any existing arguments, replace the previous
+  // default on the object with the new one
+  this._actions.forEach(function (action) {
+    if ($$.has(options, action.dest)) {
+      action.defaultValue = options[action.dest];
+    }
+  });
+};
+
+/**
+ * ActionContainer#getDefault(dest) -> Mixed
+ * - dest (string): action destination
+ *
+ * Return action default value
+ **/
+ActionContainer.prototype.getDefault = function (dest) {
+  var result = $$.has(this._defaults, dest) ? this._defaults[dest] : null;
+
+  this._actions.forEach(function (action) {
+    if (action.dest === dest && $$.has(action, 'defaultValue')) {
+      result = action.defaultValue;
+    }
+  });
+
+  return result;
+};
+//
+// Adding argument actions
+//
+
+/**
+ * ActionContainer#addArgument(args, options) -> Object
+ * - args (String|Array): argument key, or array of argument keys
+ * - options (Object): action objects see [[Action.new]]
+ *
+ * #### Examples
+ * - addArgument([ '-f', '--foo' ], { action: 'store', defaultValue: 1, ... })
+ * - addArgument([ 'bar' ], { action: 'store', nargs: 1, ... })
+ * - addArgument('--baz', { action: 'store', nargs: 1, ... })
+ **/
+ActionContainer.prototype.addArgument = function (args, options) {
+  args = args;
+  options = options || {};
+
+  if (typeof args === 'string') {
+    args = [ args ];
+  }
+  if (!Array.isArray(args)) {
+    throw new TypeError('addArgument first argument should be a string or an array');
+  }
+  if (typeof options !== 'object' || Array.isArray(options)) {
+    throw new TypeError('addArgument second argument should be a hash');
+  }
+
+  // if no positional args are supplied or only one is supplied and
+  // it doesn't look like an option string, parse a positional argument
+  if (!args || args.length === 1 && this.prefixChars.indexOf(args[0][0]) < 0) {
+    if (args && !!options.dest) {
+      throw new Error('dest supplied twice for positional argument');
+    }
+    options = this._getPositional(args, options);
+
+    // otherwise, we're adding an optional argument
+  } else {
+    options = this._getOptional(args, options);
+  }
+
+  // if no default was supplied, use the parser-level default
+  if (typeof options.defaultValue === 'undefined') {
+    var dest = options.dest;
+    if ($$.has(this._defaults, dest)) {
+      options.defaultValue = this._defaults[dest];
+    } else if (typeof this.argumentDefault !== 'undefined') {
+      options.defaultValue = this.argumentDefault;
+    }
+  }
+
+  // create the action object, and add it to the parser
+  var ActionClass = this._popActionClass(options);
+  if (typeof ActionClass !== 'function') {
+    throw new Error(format('Unknown action "%s".', ActionClass));
+  }
+  var action = new ActionClass(options);
+
+  // throw an error if the action type is not callable
+  var typeFunction = this._registryGet('type', action.type, action.type);
+  if (typeof typeFunction !== 'function') {
+    throw new Error(format('"%s" is not callable', typeFunction));
+  }
+
+  return this._addAction(action);
+};
+
+/**
+ * ActionContainer#addArgumentGroup(options) -> ArgumentGroup
+ * - options (Object): hash of options see [[ArgumentGroup.new]]
+ *
+ * Create new arguments groups
+ **/
+ActionContainer.prototype.addArgumentGroup = function (options) {
+  var group = new ArgumentGroup(this, options);
+  this._actionGroups.push(group);
+  return group;
+};
+
+/**
+ * ActionContainer#addMutuallyExclusiveGroup(options) -> ArgumentGroup
+ * - options (Object): {required: false}
+ *
+ * Create new mutual exclusive groups
+ **/
+ActionContainer.prototype.addMutuallyExclusiveGroup = function (options) {
+  var group = new MutuallyExclusiveGroup(this, options);
+  this._mutuallyExclusiveGroups.push(group);
+  return group;
+};
+
+ActionContainer.prototype._addAction = function (action) {
+  var self = this;
+
+  // resolve any conflicts
+  this._checkConflict(action);
+
+  // add to actions list
+  this._actions.push(action);
+  action.container = this;
+
+  // index the action by any option strings it has
+  action.optionStrings.forEach(function (optionString) {
+    self._optionStringActions[optionString] = action;
+  });
+
+  // set the flag if any option strings look like negative numbers
+  action.optionStrings.forEach(function (optionString) {
+    if (optionString.match(self._regexpNegativeNumber)) {
+      if (!self._hasNegativeNumberOptionals.some(Boolean)) {
+        self._hasNegativeNumberOptionals.push(true);
+      }
+    }
+  });
+
+  // return the created action
+  return action;
+};
+
+ActionContainer.prototype._removeAction = function (action) {
+  var actionIndex = this._actions.indexOf(action);
+  if (actionIndex >= 0) {
+    this._actions.splice(actionIndex, 1);
+  }
+};
+
+ActionContainer.prototype._addContainerActions = function (container) {
+  // collect groups by titles
+  var titleGroupMap = {};
+  this._actionGroups.forEach(function (group) {
+    if (titleGroupMap[group.title]) {
+      throw new Error(format('Cannot merge actions - two groups are named "%s".', group.title));
+    }
+    titleGroupMap[group.title] = group;
+  });
+
+  // map each action to its group
+  var groupMap = {};
+  function actionHash(action) {
+    // unique (hopefully?) string suitable as dictionary key
+    return action.getName();
+  }
+  container._actionGroups.forEach(function (group) {
+    // if a group with the title exists, use that, otherwise
+    // create a new group matching the container's group
+    if (!titleGroupMap[group.title]) {
+      titleGroupMap[group.title] = this.addArgumentGroup({
+        title: group.title,
+        description: group.description
+      });
+    }
+
+    // map the actions to their new group
+    group._groupActions.forEach(function (action) {
+      groupMap[actionHash(action)] = titleGroupMap[group.title];
+    });
+  }, this);
+
+  // add container's mutually exclusive groups
+  // NOTE: if add_mutually_exclusive_group ever gains title= and
+  // description= then this code will need to be expanded as above
+  var mutexGroup;
+  container._mutuallyExclusiveGroups.forEach(function (group) {
+    mutexGroup = this.addMutuallyExclusiveGroup({
+      required: group.required
+    });
+    // map the actions to their new mutex group
+    group._groupActions.forEach(function (action) {
+      groupMap[actionHash(action)] = mutexGroup;
+    });
+  }, this);  // forEach takes a 'this' argument
+
+  // add all actions to this container or their group
+  container._actions.forEach(function (action) {
+    var key = actionHash(action);
+    if (groupMap[key]) {
+      groupMap[key]._addAction(action);
+    } else {
+      this._addAction(action);
+    }
+  });
+};
+
+ActionContainer.prototype._getPositional = function (dest, options) {
+  if (Array.isArray(dest)) {
+    dest = dest[0];
+  }
+  // make sure required is not specified
+  if (options.required) {
+    throw new Error('"required" is an invalid argument for positionals.');
+  }
+
+  // mark positional arguments as required if at least one is
+  // always required
+  if (options.nargs !== c.OPTIONAL && options.nargs !== c.ZERO_OR_MORE) {
+    options.required = true;
+  }
+  if (options.nargs === c.ZERO_OR_MORE && typeof options.defaultValue === 'undefined') {
+    options.required = true;
+  }
+
+  // return the keyword arguments with no option strings
+  options.dest = dest;
+  options.optionStrings = [];
+  return options;
+};
+
+ActionContainer.prototype._getOptional = function (args, options) {
+  var prefixChars = this.prefixChars;
+  var optionStrings = [];
+  var optionStringsLong = [];
+
+  // determine short and long option strings
+  args.forEach(function (optionString) {
+    // error on strings that don't start with an appropriate prefix
+    if (prefixChars.indexOf(optionString[0]) < 0) {
+      throw new Error(format('Invalid option string "%s": must start with a "%s".',
+        optionString,
+        prefixChars
+      ));
+    }
+
+    // strings starting with two prefix characters are long options
+    optionStrings.push(optionString);
+    if (optionString.length > 1 && prefixChars.indexOf(optionString[1]) >= 0) {
+      optionStringsLong.push(optionString);
+    }
+  });
+
+  // infer dest, '--foo-bar' -> 'foo_bar' and '-x' -> 'x'
+  var dest = options.dest || null;
+  delete options.dest;
+
+  if (!dest) {
+    var optionStringDest = optionStringsLong.length ? optionStringsLong[0] : optionStrings[0];
+    dest = $$.trimChars(optionStringDest, this.prefixChars);
+
+    if (dest.length === 0) {
+      throw new Error(
+        format('dest= is required for options like "%s"', optionStrings.join(', '))
+      );
+    }
+    dest = dest.replace(/-/g, '_');
+  }
+
+  // return the updated keyword arguments
+  options.dest = dest;
+  options.optionStrings = optionStrings;
+
+  return options;
+};
+
+ActionContainer.prototype._popActionClass = function (options, defaultValue) {
+  defaultValue = defaultValue || null;
+
+  var action = (options.action || defaultValue);
+  delete options.action;
+
+  var actionClass = this._registryGet('action', action, action);
+  return actionClass;
+};
+
+ActionContainer.prototype._getHandler = function () {
+  var handlerString = this.conflictHandler;
+  var handlerFuncName = '_handleConflict' + $$.capitalize(handlerString);
+  var func = this[handlerFuncName];
+  if (typeof func === 'undefined') {
+    var msg = 'invalid conflict resolution value: ' + handlerString;
+    throw new Error(msg);
+  } else {
+    return func;
+  }
+};
+
+ActionContainer.prototype._checkConflict = function (action) {
+  var optionStringActions = this._optionStringActions;
+  var conflictOptionals = [];
+
+  // find all options that conflict with this option
+  // collect pairs, the string, and an existing action that it conflicts with
+  action.optionStrings.forEach(function (optionString) {
+    var conflOptional = optionStringActions[optionString];
+    if (typeof conflOptional !== 'undefined') {
+      conflictOptionals.push([ optionString, conflOptional ]);
+    }
+  });
+
+  if (conflictOptionals.length > 0) {
+    var conflictHandler = this._getHandler();
+    conflictHandler.call(this, action, conflictOptionals);
+  }
+};
+
+ActionContainer.prototype._handleConflictError = function (action, conflOptionals) {
+  var conflicts = conflOptionals.map(function (pair) { return pair[0]; });
+  conflicts = conflicts.join(', ');
+  throw argumentErrorHelper(
+    action,
+    format('Conflicting option string(s): %s', conflicts)
+  );
+};
+
+ActionContainer.prototype._handleConflictResolve = function (action, conflOptionals) {
+  // remove all conflicting options
+  var self = this;
+  conflOptionals.forEach(function (pair) {
+    var optionString = pair[0];
+    var conflictingAction = pair[1];
+    // remove the conflicting option string
+    var i = conflictingAction.optionStrings.indexOf(optionString);
+    if (i >= 0) {
+      conflictingAction.optionStrings.splice(i, 1);
+    }
+    delete self._optionStringActions[optionString];
+    // if the option now has no option string, remove it from the
+    // container holding it
+    if (conflictingAction.optionStrings.length === 0) {
+      conflictingAction.container._removeAction(conflictingAction);
+    }
+  });
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument_parser.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/argument_parser.js
new file mode 100644 (file)
index 0000000..bd9a59a
--- /dev/null
@@ -0,0 +1,1161 @@
+/**
+ * class ArgumentParser
+ *
+ * Object for parsing command line strings into js objects.
+ *
+ * Inherited from [[ActionContainer]]
+ **/
+'use strict';
+
+var util    = require('util');
+var format  = require('util').format;
+var Path    = require('path');
+var sprintf = require('sprintf-js').sprintf;
+
+// Constants
+var c = require('./const');
+
+var $$ = require('./utils');
+
+var ActionContainer = require('./action_container');
+
+// Errors
+var argumentErrorHelper = require('./argument/error');
+
+var HelpFormatter = require('./help/formatter');
+
+var Namespace = require('./namespace');
+
+
+/**
+ * new ArgumentParser(options)
+ *
+ * Create a new ArgumentParser object.
+ *
+ * ##### Options:
+ * - `prog`  The name of the program (default: Path.basename(process.argv[1]))
+ * - `usage`  A usage message (default: auto-generated from arguments)
+ * - `description`  A description of what the program does
+ * - `epilog`  Text following the argument descriptions
+ * - `parents`  Parsers whose arguments should be copied into this one
+ * - `formatterClass`  HelpFormatter class for printing help messages
+ * - `prefixChars`  Characters that prefix optional arguments
+ * - `fromfilePrefixChars` Characters that prefix files containing additional arguments
+ * - `argumentDefault`  The default value for all arguments
+ * - `addHelp`  Add a -h/-help option
+ * - `conflictHandler`  Specifies how to handle conflicting argument names
+ * - `debug`  Enable debug mode. Argument errors throw exception in
+ *   debug mode and process.exit in normal. Used for development and
+ *   testing (default: false)
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#argumentparser-objects
+ **/
+function ArgumentParser(options) {
+  if (!(this instanceof ArgumentParser)) {
+    return new ArgumentParser(options);
+  }
+  var self = this;
+  options = options || {};
+
+  options.description = (options.description || null);
+  options.argumentDefault = (options.argumentDefault || null);
+  options.prefixChars = (options.prefixChars || '-');
+  options.conflictHandler = (options.conflictHandler || 'error');
+  ActionContainer.call(this, options);
+
+  options.addHelp = typeof options.addHelp === 'undefined' || !!options.addHelp;
+  options.parents = options.parents || [];
+  // default program name
+  options.prog = (options.prog || Path.basename(process.argv[1]));
+  this.prog = options.prog;
+  this.usage = options.usage;
+  this.epilog = options.epilog;
+  this.version = options.version;
+
+  this.debug = (options.debug === true);
+
+  this.formatterClass = (options.formatterClass || HelpFormatter);
+  this.fromfilePrefixChars = options.fromfilePrefixChars || null;
+  this._positionals = this.addArgumentGroup({ title: 'Positional arguments' });
+  this._optionals = this.addArgumentGroup({ title: 'Optional arguments' });
+  this._subparsers = null;
+
+  // register types
+  function FUNCTION_IDENTITY(o) {
+    return o;
+  }
+  this.register('type', 'auto', FUNCTION_IDENTITY);
+  this.register('type', null, FUNCTION_IDENTITY);
+  this.register('type', 'int', function (x) {
+    var result = parseInt(x, 10);
+    if (isNaN(result)) {
+      throw new Error(x + ' is not a valid integer.');
+    }
+    return result;
+  });
+  this.register('type', 'float', function (x) {
+    var result = parseFloat(x);
+    if (isNaN(result)) {
+      throw new Error(x + ' is not a valid float.');
+    }
+    return result;
+  });
+  this.register('type', 'string', function (x) {
+    return '' + x;
+  });
+
+  // add help and version arguments if necessary
+  var defaultPrefix = (this.prefixChars.indexOf('-') > -1) ? '-' : this.prefixChars[0];
+  if (options.addHelp) {
+    this.addArgument(
+      [ defaultPrefix + 'h', defaultPrefix + defaultPrefix + 'help' ],
+      {
+        action: 'help',
+        defaultValue: c.SUPPRESS,
+        help: 'Show this help message and exit.'
+      }
+    );
+  }
+  if (typeof this.version !== 'undefined') {
+    this.addArgument(
+      [ defaultPrefix + 'v', defaultPrefix + defaultPrefix + 'version' ],
+      {
+        action: 'version',
+        version: this.version,
+        defaultValue: c.SUPPRESS,
+        help: "Show program's version number and exit."
+      }
+    );
+  }
+
+  // add parent arguments and defaults
+  options.parents.forEach(function (parent) {
+    self._addContainerActions(parent);
+    if (typeof parent._defaults !== 'undefined') {
+      for (var defaultKey in parent._defaults) {
+        if (parent._defaults.hasOwnProperty(defaultKey)) {
+          self._defaults[defaultKey] = parent._defaults[defaultKey];
+        }
+      }
+    }
+  });
+}
+
+util.inherits(ArgumentParser, ActionContainer);
+
+/**
+ * ArgumentParser#addSubparsers(options) -> [[ActionSubparsers]]
+ * - options (object): hash of options see [[ActionSubparsers.new]]
+ *
+ * See also [subcommands][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#sub-commands
+ **/
+ArgumentParser.prototype.addSubparsers = function (options) {
+  if (this._subparsers) {
+    this.error('Cannot have multiple subparser arguments.');
+  }
+
+  options = options || {};
+  options.debug = (this.debug === true);
+  options.optionStrings = [];
+  options.parserClass = (options.parserClass || ArgumentParser);
+
+
+  if (!!options.title || !!options.description) {
+
+    this._subparsers = this.addArgumentGroup({
+      title: (options.title || 'subcommands'),
+      description: options.description
+    });
+    delete options.title;
+    delete options.description;
+
+  } else {
+    this._subparsers = this._positionals;
+  }
+
+  // prog defaults to the usage message of this parser, skipping
+  // optional arguments and with no "usage:" prefix
+  if (!options.prog) {
+    var formatter = this._getFormatter();
+    var positionals = this._getPositionalActions();
+    var groups = this._mutuallyExclusiveGroups;
+    formatter.addUsage(this.usage, positionals, groups, '');
+    options.prog = formatter.formatHelp().trim();
+  }
+
+  // create the parsers action and add it to the positionals list
+  var ParsersClass = this._popActionClass(options, 'parsers');
+  var action = new ParsersClass(options);
+  this._subparsers._addAction(action);
+
+  // return the created parsers action
+  return action;
+};
+
+ArgumentParser.prototype._addAction = function (action) {
+  if (action.isOptional()) {
+    this._optionals._addAction(action);
+  } else {
+    this._positionals._addAction(action);
+  }
+  return action;
+};
+
+ArgumentParser.prototype._getOptionalActions = function () {
+  return this._actions.filter(function (action) {
+    return action.isOptional();
+  });
+};
+
+ArgumentParser.prototype._getPositionalActions = function () {
+  return this._actions.filter(function (action) {
+    return action.isPositional();
+  });
+};
+
+
+/**
+ * ArgumentParser#parseArgs(args, namespace) -> Namespace|Object
+ * - args (array): input elements
+ * - namespace (Namespace|Object): result object
+ *
+ * Parsed args and throws error if some arguments are not recognized
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#the-parse-args-method
+ **/
+ArgumentParser.prototype.parseArgs = function (args, namespace) {
+  var argv;
+  var result = this.parseKnownArgs(args, namespace);
+
+  args = result[0];
+  argv = result[1];
+  if (argv && argv.length > 0) {
+    this.error(
+      format('Unrecognized arguments: %s.', argv.join(' '))
+    );
+  }
+  return args;
+};
+
+/**
+ * ArgumentParser#parseKnownArgs(args, namespace) -> array
+ * - args (array): input options
+ * - namespace (Namespace|Object): result object
+ *
+ * Parse known arguments and return tuple of result object
+ * and unknown args
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#partial-parsing
+ **/
+ArgumentParser.prototype.parseKnownArgs = function (args, namespace) {
+  var self = this;
+
+  // args default to the system args
+  args = args || process.argv.slice(2);
+
+  // default Namespace built from parser defaults
+  namespace = namespace || new Namespace();
+
+  self._actions.forEach(function (action) {
+    if (action.dest !== c.SUPPRESS) {
+      if (!$$.has(namespace, action.dest)) {
+        if (action.defaultValue !== c.SUPPRESS) {
+          var defaultValue = action.defaultValue;
+          if (typeof action.defaultValue === 'string') {
+            defaultValue = self._getValue(action, defaultValue);
+          }
+          namespace[action.dest] = defaultValue;
+        }
+      }
+    }
+  });
+
+  Object.keys(self._defaults).forEach(function (dest) {
+    namespace[dest] = self._defaults[dest];
+  });
+
+  // parse the arguments and exit if there are any errors
+  try {
+    var res = this._parseKnownArgs(args, namespace);
+
+    namespace = res[0];
+    args = res[1];
+    if ($$.has(namespace, c._UNRECOGNIZED_ARGS_ATTR)) {
+      args = $$.arrayUnion(args, namespace[c._UNRECOGNIZED_ARGS_ATTR]);
+      delete namespace[c._UNRECOGNIZED_ARGS_ATTR];
+    }
+    return [ namespace, args ];
+  } catch (e) {
+    this.error(e);
+  }
+};
+
+ArgumentParser.prototype._parseKnownArgs = function (argStrings, namespace) {
+  var self = this;
+
+  var extras = [];
+
+  // replace arg strings that are file references
+  if (this.fromfilePrefixChars !== null) {
+    argStrings = this._readArgsFromFiles(argStrings);
+  }
+  // map all mutually exclusive arguments to the other arguments
+  // they can't occur with
+  // Python has 'conflicts = action_conflicts.setdefault(mutex_action, [])'
+  // though I can't conceive of a way in which an action could be a member
+  // of two different mutually exclusive groups.
+
+  function actionHash(action) {
+    // some sort of hashable key for this action
+    // action itself cannot be a key in actionConflicts
+    // I think getName() (join of optionStrings) is unique enough
+    return action.getName();
+  }
+
+  var conflicts, key;
+  var actionConflicts = {};
+
+  this._mutuallyExclusiveGroups.forEach(function (mutexGroup) {
+    mutexGroup._groupActions.forEach(function (mutexAction, i, groupActions) {
+      key = actionHash(mutexAction);
+      if (!$$.has(actionConflicts, key)) {
+        actionConflicts[key] = [];
+      }
+      conflicts = actionConflicts[key];
+      conflicts.push.apply(conflicts, groupActions.slice(0, i));
+      conflicts.push.apply(conflicts, groupActions.slice(i + 1));
+    });
+  });
+
+  // find all option indices, and determine the arg_string_pattern
+  // which has an 'O' if there is an option at an index,
+  // an 'A' if there is an argument, or a '-' if there is a '--'
+  var optionStringIndices = {};
+
+  var argStringPatternParts = [];
+
+  argStrings.forEach(function (argString, argStringIndex) {
+    if (argString === '--') {
+      argStringPatternParts.push('-');
+      while (argStringIndex < argStrings.length) {
+        argStringPatternParts.push('A');
+        argStringIndex++;
+      }
+    } else {
+      // otherwise, add the arg to the arg strings
+      // and note the index if it was an option
+      var pattern;
+      var optionTuple = self._parseOptional(argString);
+      if (!optionTuple) {
+        pattern = 'A';
+      } else {
+        optionStringIndices[argStringIndex] = optionTuple;
+        pattern = 'O';
+      }
+      argStringPatternParts.push(pattern);
+    }
+  });
+  var argStringsPattern = argStringPatternParts.join('');
+
+  var seenActions = [];
+  var seenNonDefaultActions = [];
+
+
+  function takeAction(action, argumentStrings, optionString) {
+    seenActions.push(action);
+    var argumentValues = self._getValues(action, argumentStrings);
+
+    // error if this argument is not allowed with other previously
+    // seen arguments, assuming that actions that use the default
+    // value don't really count as "present"
+    if (argumentValues !== action.defaultValue) {
+      seenNonDefaultActions.push(action);
+      if (actionConflicts[actionHash(action)]) {
+        actionConflicts[actionHash(action)].forEach(function (actionConflict) {
+          if (seenNonDefaultActions.indexOf(actionConflict) >= 0) {
+            throw argumentErrorHelper(
+              action,
+              format('Not allowed with argument "%s".', actionConflict.getName())
+            );
+          }
+        });
+      }
+    }
+
+    if (argumentValues !== c.SUPPRESS) {
+      action.call(self, namespace, argumentValues, optionString);
+    }
+  }
+
+  function consumeOptional(startIndex) {
+    // get the optional identified at this index
+    var optionTuple = optionStringIndices[startIndex];
+    var action = optionTuple[0];
+    var optionString = optionTuple[1];
+    var explicitArg = optionTuple[2];
+
+    // identify additional optionals in the same arg string
+    // (e.g. -xyz is the same as -x -y -z if no args are required)
+    var actionTuples = [];
+
+    var args, argCount, start, stop;
+
+    for (;;) {
+      if (!action) {
+        extras.push(argStrings[startIndex]);
+        return startIndex + 1;
+      }
+      if (explicitArg) {
+        argCount = self._matchArgument(action, 'A');
+
+        // if the action is a single-dash option and takes no
+        // arguments, try to parse more single-dash options out
+        // of the tail of the option string
+        var chars = self.prefixChars;
+        if (argCount === 0 && chars.indexOf(optionString[1]) < 0) {
+          actionTuples.push([ action, [], optionString ]);
+          optionString = optionString[0] + explicitArg[0];
+          var newExplicitArg = explicitArg.slice(1) || null;
+          var optionalsMap = self._optionStringActions;
+
+          if (Object.keys(optionalsMap).indexOf(optionString) >= 0) {
+            action = optionalsMap[optionString];
+            explicitArg = newExplicitArg;
+          } else {
+            throw argumentErrorHelper(action, sprintf('ignored explicit argument %r', explicitArg));
+          }
+        } else if (argCount === 1) {
+          // if the action expect exactly one argument, we've
+          // successfully matched the option; exit the loop
+          stop = startIndex + 1;
+          args = [ explicitArg ];
+          actionTuples.push([ action, args, optionString ]);
+          break;
+        } else {
+          // error if a double-dash option did not use the
+          // explicit argument
+          throw argumentErrorHelper(action, sprintf('ignored explicit argument %r', explicitArg));
+        }
+      } else {
+        // if there is no explicit argument, try to match the
+        // optional's string arguments with the following strings
+        // if successful, exit the loop
+
+        start = startIndex + 1;
+        var selectedPatterns = argStringsPattern.substr(start);
+
+        argCount = self._matchArgument(action, selectedPatterns);
+        stop = start + argCount;
+
+
+        args = argStrings.slice(start, stop);
+
+        actionTuples.push([ action, args, optionString ]);
+        break;
+      }
+
+    }
+
+    // add the Optional to the list and return the index at which
+    // the Optional's string args stopped
+    if (actionTuples.length < 1) {
+      throw new Error('length should be > 0');
+    }
+    for (var i = 0; i < actionTuples.length; i++) {
+      takeAction.apply(self, actionTuples[i]);
+    }
+    return stop;
+  }
+
+  // the list of Positionals left to be parsed; this is modified
+  // by consume_positionals()
+  var positionals = self._getPositionalActions();
+
+  function consumePositionals(startIndex) {
+    // match as many Positionals as possible
+    var selectedPattern = argStringsPattern.substr(startIndex);
+    var argCounts = self._matchArgumentsPartial(positionals, selectedPattern);
+
+    // slice off the appropriate arg strings for each Positional
+    // and add the Positional and its args to the list
+    for (var i = 0; i < positionals.length; i++) {
+      var action = positionals[i];
+      var argCount = argCounts[i];
+      if (typeof argCount === 'undefined') {
+        continue;
+      }
+      var args = argStrings.slice(startIndex, startIndex + argCount);
+
+      startIndex += argCount;
+      takeAction(action, args);
+    }
+
+    // slice off the Positionals that we just parsed and return the
+    // index at which the Positionals' string args stopped
+    positionals = positionals.slice(argCounts.length);
+    return startIndex;
+  }
+
+  // consume Positionals and Optionals alternately, until we have
+  // passed the last option string
+  var startIndex = 0;
+  var position;
+
+  var maxOptionStringIndex = -1;
+
+  Object.keys(optionStringIndices).forEach(function (position) {
+    maxOptionStringIndex = Math.max(maxOptionStringIndex, parseInt(position, 10));
+  });
+
+  var positionalsEndIndex, nextOptionStringIndex;
+
+  while (startIndex <= maxOptionStringIndex) {
+    // consume any Positionals preceding the next option
+    nextOptionStringIndex = null;
+    for (position in optionStringIndices) {
+      if (!optionStringIndices.hasOwnProperty(position)) { continue; }
+
+      position = parseInt(position, 10);
+      if (position >= startIndex) {
+        if (nextOptionStringIndex !== null) {
+          nextOptionStringIndex = Math.min(nextOptionStringIndex, position);
+        } else {
+          nextOptionStringIndex = position;
+        }
+      }
+    }
+
+    if (startIndex !== nextOptionStringIndex) {
+      positionalsEndIndex = consumePositionals(startIndex);
+      // only try to parse the next optional if we didn't consume
+      // the option string during the positionals parsing
+      if (positionalsEndIndex > startIndex) {
+        startIndex = positionalsEndIndex;
+        continue;
+      } else {
+        startIndex = positionalsEndIndex;
+      }
+    }
+
+    // if we consumed all the positionals we could and we're not
+    // at the index of an option string, there were extra arguments
+    if (!optionStringIndices[startIndex]) {
+      var strings = argStrings.slice(startIndex, nextOptionStringIndex);
+      extras = extras.concat(strings);
+      startIndex = nextOptionStringIndex;
+    }
+    // consume the next optional and any arguments for it
+    startIndex = consumeOptional(startIndex);
+  }
+
+  // consume any positionals following the last Optional
+  var stopIndex = consumePositionals(startIndex);
+
+  // if we didn't consume all the argument strings, there were extras
+  extras = extras.concat(argStrings.slice(stopIndex));
+
+  // if we didn't use all the Positional objects, there were too few
+  // arg strings supplied.
+  if (positionals.length > 0) {
+    self.error('too few arguments');
+  }
+
+  // make sure all required actions were present
+  self._actions.forEach(function (action) {
+    if (action.required) {
+      if (seenActions.indexOf(action) < 0) {
+        self.error(format('Argument "%s" is required', action.getName()));
+      }
+    }
+  });
+
+  // make sure all required groups have one option present
+  var actionUsed = false;
+  self._mutuallyExclusiveGroups.forEach(function (group) {
+    if (group.required) {
+      actionUsed = group._groupActions.some(function (action) {
+        return seenNonDefaultActions.indexOf(action) !== -1;
+      });
+
+      // if no actions were used, report the error
+      if (!actionUsed) {
+        var names = [];
+        group._groupActions.forEach(function (action) {
+          if (action.help !== c.SUPPRESS) {
+            names.push(action.getName());
+          }
+        });
+        names = names.join(' ');
+        var msg = 'one of the arguments ' + names + ' is required';
+        self.error(msg);
+      }
+    }
+  });
+
+  // return the updated namespace and the extra arguments
+  return [ namespace, extras ];
+};
+
+ArgumentParser.prototype._readArgsFromFiles = function (argStrings) {
+  // expand arguments referencing files
+  var self = this;
+  var fs = require('fs');
+  var newArgStrings = [];
+  argStrings.forEach(function (argString) {
+    if (self.fromfilePrefixChars.indexOf(argString[0]) < 0) {
+      // for regular arguments, just add them back into the list
+      newArgStrings.push(argString);
+    } else {
+      // replace arguments referencing files with the file content
+      try {
+        var argstrs = [];
+        var filename = argString.slice(1);
+        var content = fs.readFileSync(filename, 'utf8');
+        content = content.trim().split('\n');
+        content.forEach(function (argLine) {
+          self.convertArgLineToArgs(argLine).forEach(function (arg) {
+            argstrs.push(arg);
+          });
+          argstrs = self._readArgsFromFiles(argstrs);
+        });
+        newArgStrings.push.apply(newArgStrings, argstrs);
+      } catch (error) {
+        return self.error(error.message);
+      }
+    }
+  });
+  return newArgStrings;
+};
+
+ArgumentParser.prototype.convertArgLineToArgs = function (argLine) {
+  return [ argLine ];
+};
+
+ArgumentParser.prototype._matchArgument = function (action, regexpArgStrings) {
+
+  // match the pattern for this action to the arg strings
+  var regexpNargs = new RegExp('^' + this._getNargsPattern(action));
+  var matches = regexpArgStrings.match(regexpNargs);
+  var message;
+
+  // throw an exception if we weren't able to find a match
+  if (!matches) {
+    switch (action.nargs) {
+      /*eslint-disable no-undefined*/
+      case undefined:
+      case null:
+        message = 'Expected one argument.';
+        break;
+      case c.OPTIONAL:
+        message = 'Expected at most one argument.';
+        break;
+      case c.ONE_OR_MORE:
+        message = 'Expected at least one argument.';
+        break;
+      default:
+        message = 'Expected %s argument(s)';
+    }
+
+    throw argumentErrorHelper(
+      action,
+      format(message, action.nargs)
+    );
+  }
+  // return the number of arguments matched
+  return matches[1].length;
+};
+
+ArgumentParser.prototype._matchArgumentsPartial = function (actions, regexpArgStrings) {
+  // progressively shorten the actions list by slicing off the
+  // final actions until we find a match
+  var self = this;
+  var result = [];
+  var actionSlice, pattern, matches;
+  var i, j;
+
+  function getLength(string) {
+    return string.length;
+  }
+
+  for (i = actions.length; i > 0; i--) {
+    pattern = '';
+    actionSlice = actions.slice(0, i);
+    for (j = 0; j < actionSlice.length; j++) {
+      pattern += self._getNargsPattern(actionSlice[j]);
+    }
+
+    pattern = new RegExp('^' + pattern);
+    matches = regexpArgStrings.match(pattern);
+
+    if (matches && matches.length > 0) {
+      // need only groups
+      matches = matches.splice(1);
+      result = result.concat(matches.map(getLength));
+      break;
+    }
+  }
+
+  // return the list of arg string counts
+  return result;
+};
+
+ArgumentParser.prototype._parseOptional = function (argString) {
+  var action, optionString, argExplicit, optionTuples;
+
+  // if it's an empty string, it was meant to be a positional
+  if (!argString) {
+    return null;
+  }
+
+  // if it doesn't start with a prefix, it was meant to be positional
+  if (this.prefixChars.indexOf(argString[0]) < 0) {
+    return null;
+  }
+
+  // if the option string is present in the parser, return the action
+  if (this._optionStringActions[argString]) {
+    return [ this._optionStringActions[argString], argString, null ];
+  }
+
+  // if it's just a single character, it was meant to be positional
+  if (argString.length === 1) {
+    return null;
+  }
+
+  // if the option string before the "=" is present, return the action
+  if (argString.indexOf('=') >= 0) {
+    optionString = argString.split('=', 1)[0];
+    argExplicit = argString.slice(optionString.length + 1);
+
+    if (this._optionStringActions[optionString]) {
+      action = this._optionStringActions[optionString];
+      return [ action, optionString, argExplicit ];
+    }
+  }
+
+  // search through all possible prefixes of the option string
+  // and all actions in the parser for possible interpretations
+  optionTuples = this._getOptionTuples(argString);
+
+  // if multiple actions match, the option string was ambiguous
+  if (optionTuples.length > 1) {
+    var optionStrings = optionTuples.map(function (optionTuple) {
+      return optionTuple[1];
+    });
+    this.error(format(
+          'Ambiguous option: "%s" could match %s.',
+          argString, optionStrings.join(', ')
+    ));
+  // if exactly one action matched, this segmentation is good,
+  // so return the parsed action
+  } else if (optionTuples.length === 1) {
+    return optionTuples[0];
+  }
+
+  // if it was not found as an option, but it looks like a negative
+  // number, it was meant to be positional
+  // unless there are negative-number-like options
+  if (argString.match(this._regexpNegativeNumber)) {
+    if (!this._hasNegativeNumberOptionals.some(Boolean)) {
+      return null;
+    }
+  }
+  // if it contains a space, it was meant to be a positional
+  if (argString.search(' ') >= 0) {
+    return null;
+  }
+
+  // it was meant to be an optional but there is no such option
+  // in this parser (though it might be a valid option in a subparser)
+  return [ null, argString, null ];
+};
+
+ArgumentParser.prototype._getOptionTuples = function (optionString) {
+  var result = [];
+  var chars = this.prefixChars;
+  var optionPrefix;
+  var argExplicit;
+  var action;
+  var actionOptionString;
+
+  // option strings starting with two prefix characters are only split at
+  // the '='
+  if (chars.indexOf(optionString[0]) >= 0 && chars.indexOf(optionString[1]) >= 0) {
+    if (optionString.indexOf('=') >= 0) {
+      var optionStringSplit = optionString.split('=', 1);
+
+      optionPrefix = optionStringSplit[0];
+      argExplicit = optionStringSplit[1];
+    } else {
+      optionPrefix = optionString;
+      argExplicit = null;
+    }
+
+    for (actionOptionString in this._optionStringActions) {
+      if (actionOptionString.substr(0, optionPrefix.length) === optionPrefix) {
+        action = this._optionStringActions[actionOptionString];
+        result.push([ action, actionOptionString, argExplicit ]);
+      }
+    }
+
+  // single character options can be concatenated with their arguments
+  // but multiple character options always have to have their argument
+  // separate
+  } else if (chars.indexOf(optionString[0]) >= 0 && chars.indexOf(optionString[1]) < 0) {
+    optionPrefix = optionString;
+    argExplicit = null;
+    var optionPrefixShort = optionString.substr(0, 2);
+    var argExplicitShort = optionString.substr(2);
+
+    for (actionOptionString in this._optionStringActions) {
+      if (!$$.has(this._optionStringActions, actionOptionString)) continue;
+
+      action = this._optionStringActions[actionOptionString];
+      if (actionOptionString === optionPrefixShort) {
+        result.push([ action, actionOptionString, argExplicitShort ]);
+      } else if (actionOptionString.substr(0, optionPrefix.length) === optionPrefix) {
+        result.push([ action, actionOptionString, argExplicit ]);
+      }
+    }
+
+  // shouldn't ever get here
+  } else {
+    throw new Error(format('Unexpected option string: %s.', optionString));
+  }
+  // return the collected option tuples
+  return result;
+};
+
+ArgumentParser.prototype._getNargsPattern = function (action) {
+  // in all examples below, we have to allow for '--' args
+  // which are represented as '-' in the pattern
+  var regexpNargs;
+
+  switch (action.nargs) {
+    // the default (null) is assumed to be a single argument
+    case undefined:
+    case null:
+      regexpNargs = '(-*A-*)';
+      break;
+    // allow zero or more arguments
+    case c.OPTIONAL:
+      regexpNargs = '(-*A?-*)';
+      break;
+    // allow zero or more arguments
+    case c.ZERO_OR_MORE:
+      regexpNargs = '(-*[A-]*)';
+      break;
+    // allow one or more arguments
+    case c.ONE_OR_MORE:
+      regexpNargs = '(-*A[A-]*)';
+      break;
+    // allow any number of options or arguments
+    case c.REMAINDER:
+      regexpNargs = '([-AO]*)';
+      break;
+    // allow one argument followed by any number of options or arguments
+    case c.PARSER:
+      regexpNargs = '(-*A[-AO]*)';
+      break;
+    // all others should be integers
+    default:
+      regexpNargs = '(-*' + $$.repeat('-*A', action.nargs) + '-*)';
+  }
+
+  // if this is an optional action, -- is not allowed
+  if (action.isOptional()) {
+    regexpNargs = regexpNargs.replace(/-\*/g, '');
+    regexpNargs = regexpNargs.replace(/-/g, '');
+  }
+
+  // return the pattern
+  return regexpNargs;
+};
+
+//
+// Value conversion methods
+//
+
+ArgumentParser.prototype._getValues = function (action, argStrings) {
+  var self = this;
+
+  // for everything but PARSER args, strip out '--'
+  if (action.nargs !== c.PARSER && action.nargs !== c.REMAINDER) {
+    argStrings = argStrings.filter(function (arrayElement) {
+      return arrayElement !== '--';
+    });
+  }
+
+  var value, argString;
+
+  // optional argument produces a default when not present
+  if (argStrings.length === 0 && action.nargs === c.OPTIONAL) {
+
+    value = (action.isOptional()) ? action.constant : action.defaultValue;
+
+    if (typeof (value) === 'string') {
+      value = this._getValue(action, value);
+      this._checkValue(action, value);
+    }
+
+  // when nargs='*' on a positional, if there were no command-line
+  // args, use the default if it is anything other than None
+  } else if (argStrings.length === 0 && action.nargs === c.ZERO_OR_MORE &&
+    action.optionStrings.length === 0) {
+
+    value = (action.defaultValue || argStrings);
+    this._checkValue(action, value);
+
+  // single argument or optional argument produces a single value
+  } else if (argStrings.length === 1 &&
+        (!action.nargs || action.nargs === c.OPTIONAL)) {
+
+    argString = argStrings[0];
+    value = this._getValue(action, argString);
+    this._checkValue(action, value);
+
+  // REMAINDER arguments convert all values, checking none
+  } else if (action.nargs === c.REMAINDER) {
+    value = argStrings.map(function (v) {
+      return self._getValue(action, v);
+    });
+
+  // PARSER arguments convert all values, but check only the first
+  } else if (action.nargs === c.PARSER) {
+    value = argStrings.map(function (v) {
+      return self._getValue(action, v);
+    });
+    this._checkValue(action, value[0]);
+
+  // all other types of nargs produce a list
+  } else {
+    value = argStrings.map(function (v) {
+      return self._getValue(action, v);
+    });
+    value.forEach(function (v) {
+      self._checkValue(action, v);
+    });
+  }
+
+  // return the converted value
+  return value;
+};
+
+ArgumentParser.prototype._getValue = function (action, argString) {
+  var result;
+
+  var typeFunction = this._registryGet('type', action.type, action.type);
+  if (typeof typeFunction !== 'function') {
+    var message = format('%s is not callable', typeFunction);
+    throw argumentErrorHelper(action, message);
+  }
+
+  // convert the value to the appropriate type
+  try {
+    result = typeFunction(argString);
+
+    // ArgumentTypeErrors indicate errors
+    // If action.type is not a registered string, it is a function
+    // Try to deduce its name for inclusion in the error message
+    // Failing that, include the error message it raised.
+  } catch (e) {
+    var name = null;
+    if (typeof action.type === 'string') {
+      name = action.type;
+    } else {
+      name = action.type.name || action.type.displayName || '<function>';
+    }
+    var msg = format('Invalid %s value: %s', name, argString);
+    if (name === '<function>') { msg += '\n' + e.message; }
+    throw argumentErrorHelper(action, msg);
+  }
+  // return the converted value
+  return result;
+};
+
+ArgumentParser.prototype._checkValue = function (action, value) {
+  // converted value must be one of the choices (if specified)
+  var choices = action.choices;
+  if (choices) {
+    // choise for argument can by array or string
+    if ((typeof choices === 'string' || Array.isArray(choices)) &&
+        choices.indexOf(value) !== -1) {
+      return;
+    }
+    // choise for subparsers can by only hash
+    if (typeof choices === 'object' && !Array.isArray(choices) && choices[value]) {
+      return;
+    }
+
+    if (typeof choices === 'string') {
+      choices = choices.split('').join(', ');
+    } else if (Array.isArray(choices)) {
+      choices =  choices.join(', ');
+    } else {
+      choices =  Object.keys(choices).join(', ');
+    }
+    var message = format('Invalid choice: %s (choose from [%s])', value, choices);
+    throw argumentErrorHelper(action, message);
+  }
+};
+
+//
+// Help formatting methods
+//
+
+/**
+ * ArgumentParser#formatUsage -> string
+ *
+ * Return usage string
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
+ **/
+ArgumentParser.prototype.formatUsage = function () {
+  var formatter = this._getFormatter();
+  formatter.addUsage(this.usage, this._actions, this._mutuallyExclusiveGroups);
+  return formatter.formatHelp();
+};
+
+/**
+ * ArgumentParser#formatHelp -> string
+ *
+ * Return help
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
+ **/
+ArgumentParser.prototype.formatHelp = function () {
+  var formatter = this._getFormatter();
+
+  // usage
+  formatter.addUsage(this.usage, this._actions, this._mutuallyExclusiveGroups);
+
+  // description
+  formatter.addText(this.description);
+
+  // positionals, optionals and user-defined groups
+  this._actionGroups.forEach(function (actionGroup) {
+    formatter.startSection(actionGroup.title);
+    formatter.addText(actionGroup.description);
+    formatter.addArguments(actionGroup._groupActions);
+    formatter.endSection();
+  });
+
+  // epilog
+  formatter.addText(this.epilog);
+
+  // determine help from format above
+  return formatter.formatHelp();
+};
+
+ArgumentParser.prototype._getFormatter = function () {
+  var FormatterClass = this.formatterClass;
+  var formatter = new FormatterClass({ prog: this.prog });
+  return formatter;
+};
+
+//
+//  Print functions
+//
+
+/**
+ * ArgumentParser#printUsage() -> Void
+ *
+ * Print usage
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
+ **/
+ArgumentParser.prototype.printUsage = function () {
+  this._printMessage(this.formatUsage());
+};
+
+/**
+ * ArgumentParser#printHelp() -> Void
+ *
+ * Print help
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
+ **/
+ArgumentParser.prototype.printHelp = function () {
+  this._printMessage(this.formatHelp());
+};
+
+ArgumentParser.prototype._printMessage = function (message, stream) {
+  if (!stream) {
+    stream = process.stdout;
+  }
+  if (message) {
+    stream.write('' + message);
+  }
+};
+
+//
+//  Exit functions
+//
+
+/**
+ * ArgumentParser#exit(status=0, message) -> Void
+ * - status (int): exit status
+ * - message (string): message
+ *
+ * Print message in stderr/stdout and exit program
+ **/
+ArgumentParser.prototype.exit = function (status, message) {
+  if (message) {
+    if (status === 0) {
+      this._printMessage(message);
+    } else {
+      this._printMessage(message, process.stderr);
+    }
+  }
+
+  process.exit(status);
+};
+
+/**
+ * ArgumentParser#error(message) -> Void
+ * - err (Error|string): message
+ *
+ * Error method Prints a usage message incorporating the message to stderr and
+ * exits. If you override this in a subclass,
+ * it should not return -- it should
+ * either exit or throw an exception.
+ *
+ **/
+ArgumentParser.prototype.error = function (err) {
+  var message;
+  if (err instanceof Error) {
+    if (this.debug === true) {
+      throw err;
+    }
+    message = err.message;
+  } else {
+    message = err;
+  }
+  var msg = format('%s: error: %s', this.prog, message) + c.EOL;
+
+  if (this.debug === true) {
+    throw new Error(msg);
+  }
+
+  this.printUsage(process.stderr);
+
+  return this.exit(2, msg);
+};
+
+module.exports = ArgumentParser;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/const.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/const.js
new file mode 100644 (file)
index 0000000..b1fd4ce
--- /dev/null
@@ -0,0 +1,21 @@
+//
+// Constants
+//
+
+'use strict';
+
+module.exports.EOL = '\n';
+
+module.exports.SUPPRESS = '==SUPPRESS==';
+
+module.exports.OPTIONAL = '?';
+
+module.exports.ZERO_OR_MORE = '*';
+
+module.exports.ONE_OR_MORE = '+';
+
+module.exports.PARSER = 'A...';
+
+module.exports.REMAINDER = '...';
+
+module.exports._UNRECOGNIZED_ARGS_ATTR = '_unrecognized_args';
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/added_formatters.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/added_formatters.js
new file mode 100644 (file)
index 0000000..f8e4299
--- /dev/null
@@ -0,0 +1,87 @@
+'use strict';
+
+var util    = require('util');
+
+// Constants
+var c = require('../const');
+
+var $$ = require('../utils');
+var HelpFormatter = require('./formatter.js');
+
+/**
+ * new RawDescriptionHelpFormatter(options)
+ * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...})
+ *
+ * Help message formatter which adds default values to argument help.
+ *
+ * Only the name of this class is considered a public API. All the methods
+ * provided by the class are considered an implementation detail.
+ **/
+
+function ArgumentDefaultsHelpFormatter(options) {
+  HelpFormatter.call(this, options);
+}
+
+util.inherits(ArgumentDefaultsHelpFormatter, HelpFormatter);
+
+ArgumentDefaultsHelpFormatter.prototype._getHelpString = function (action) {
+  var help = action.help;
+  if (action.help.indexOf('%(defaultValue)s') === -1) {
+    if (action.defaultValue !== c.SUPPRESS) {
+      var defaulting_nargs = [ c.OPTIONAL, c.ZERO_OR_MORE ];
+      if (action.isOptional() || (defaulting_nargs.indexOf(action.nargs) >= 0)) {
+        help += ' (default: %(defaultValue)s)';
+      }
+    }
+  }
+  return help;
+};
+
+module.exports.ArgumentDefaultsHelpFormatter = ArgumentDefaultsHelpFormatter;
+
+/**
+ * new RawDescriptionHelpFormatter(options)
+ * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...})
+ *
+ * Help message formatter which retains any formatting in descriptions.
+ *
+ * Only the name of this class is considered a public API. All the methods
+ * provided by the class are considered an implementation detail.
+ **/
+
+function RawDescriptionHelpFormatter(options) {
+  HelpFormatter.call(this, options);
+}
+
+util.inherits(RawDescriptionHelpFormatter, HelpFormatter);
+
+RawDescriptionHelpFormatter.prototype._fillText = function (text, width, indent) {
+  var lines = text.split('\n');
+  lines = lines.map(function (line) {
+    return $$.trimEnd(indent + line);
+  });
+  return lines.join('\n');
+};
+module.exports.RawDescriptionHelpFormatter = RawDescriptionHelpFormatter;
+
+/**
+ * new RawTextHelpFormatter(options)
+ * new ArgumentParser({formatterClass: argparse.RawTextHelpFormatter, ...})
+ *
+ * Help message formatter which retains formatting of all help text.
+ *
+ * Only the name of this class is considered a public API. All the methods
+ * provided by the class are considered an implementation detail.
+ **/
+
+function RawTextHelpFormatter(options) {
+  RawDescriptionHelpFormatter.call(this, options);
+}
+
+util.inherits(RawTextHelpFormatter, RawDescriptionHelpFormatter);
+
+RawTextHelpFormatter.prototype._splitLines = function (text) {
+  return text.split('\n');
+};
+
+module.exports.RawTextHelpFormatter = RawTextHelpFormatter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/formatter.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/help/formatter.js
new file mode 100644 (file)
index 0000000..a8e4148
--- /dev/null
@@ -0,0 +1,795 @@
+/**
+ * class HelpFormatter
+ *
+ * Formatter for generating usage messages and argument help strings. Only the
+ * name of this class is considered a public API. All the methods provided by
+ * the class are considered an implementation detail.
+ *
+ * Do not call in your code, use this class only for inherits your own forvatter
+ *
+ * ToDo add [additonal formatters][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#formatter-class
+ **/
+'use strict';
+
+var sprintf = require('sprintf-js').sprintf;
+
+// Constants
+var c = require('../const');
+
+var $$ = require('../utils');
+
+
+/*:nodoc:* internal
+ * new Support(parent, heding)
+ * - parent (object): parent section
+ * - heading (string): header string
+ *
+ **/
+function Section(parent, heading) {
+  this._parent = parent;
+  this._heading = heading;
+  this._items = [];
+}
+
+/*:nodoc:* internal
+ * Section#addItem(callback) -> Void
+ * - callback (array): tuple with function and args
+ *
+ * Add function for single element
+ **/
+Section.prototype.addItem = function (callback) {
+  this._items.push(callback);
+};
+
+/*:nodoc:* internal
+ * Section#formatHelp(formatter) -> string
+ * - formatter (HelpFormatter): current formatter
+ *
+ * Form help section string
+ *
+ **/
+Section.prototype.formatHelp = function (formatter) {
+  var itemHelp, heading;
+
+  // format the indented section
+  if (this._parent) {
+    formatter._indent();
+  }
+
+  itemHelp = this._items.map(function (item) {
+    var obj, func, args;
+
+    obj = formatter;
+    func = item[0];
+    args = item[1];
+    return func.apply(obj, args);
+  });
+  itemHelp = formatter._joinParts(itemHelp);
+
+  if (this._parent) {
+    formatter._dedent();
+  }
+
+  // return nothing if the section was empty
+  if (!itemHelp) {
+    return '';
+  }
+
+  // add the heading if the section was non-empty
+  heading = '';
+  if (this._heading && this._heading !== c.SUPPRESS) {
+    var currentIndent = formatter.currentIndent;
+    heading = $$.repeat(' ', currentIndent) + this._heading + ':' + c.EOL;
+  }
+
+  // join the section-initialize newline, the heading and the help
+  return formatter._joinParts([ c.EOL, heading, itemHelp, c.EOL ]);
+};
+
+/**
+ * new HelpFormatter(options)
+ *
+ * #### Options:
+ * - `prog`: program name
+ * - `indentIncriment`: indent step, default value 2
+ * - `maxHelpPosition`: max help position, default value = 24
+ * - `width`: line width
+ *
+ **/
+var HelpFormatter = module.exports = function HelpFormatter(options) {
+  options = options || {};
+
+  this._prog = options.prog;
+
+  this._maxHelpPosition = options.maxHelpPosition || 24;
+  this._width = (options.width || ((process.env.COLUMNS || 80) - 2));
+
+  this._currentIndent = 0;
+  this._indentIncriment = options.indentIncriment || 2;
+  this._level = 0;
+  this._actionMaxLength = 0;
+
+  this._rootSection = new Section(null);
+  this._currentSection = this._rootSection;
+
+  this._whitespaceMatcher = new RegExp('\\s+', 'g');
+  this._longBreakMatcher = new RegExp(c.EOL + c.EOL + c.EOL + '+', 'g');
+};
+
+HelpFormatter.prototype._indent = function () {
+  this._currentIndent += this._indentIncriment;
+  this._level += 1;
+};
+
+HelpFormatter.prototype._dedent = function () {
+  this._currentIndent -= this._indentIncriment;
+  this._level -= 1;
+  if (this._currentIndent < 0) {
+    throw new Error('Indent decreased below 0.');
+  }
+};
+
+HelpFormatter.prototype._addItem = function (func, args) {
+  this._currentSection.addItem([ func, args ]);
+};
+
+//
+// Message building methods
+//
+
+/**
+ * HelpFormatter#startSection(heading) -> Void
+ * - heading (string): header string
+ *
+ * Start new help section
+ *
+ * See alse [code example][1]
+ *
+ * ##### Example
+ *
+ *      formatter.startSection(actionGroup.title);
+ *      formatter.addText(actionGroup.description);
+ *      formatter.addArguments(actionGroup._groupActions);
+ *      formatter.endSection();
+ *
+ **/
+HelpFormatter.prototype.startSection = function (heading) {
+  this._indent();
+  var section = new Section(this._currentSection, heading);
+  var func = section.formatHelp.bind(section);
+  this._addItem(func, [ this ]);
+  this._currentSection = section;
+};
+
+/**
+ * HelpFormatter#endSection -> Void
+ *
+ * End help section
+ *
+ * ##### Example
+ *
+ *      formatter.startSection(actionGroup.title);
+ *      formatter.addText(actionGroup.description);
+ *      formatter.addArguments(actionGroup._groupActions);
+ *      formatter.endSection();
+ **/
+HelpFormatter.prototype.endSection = function () {
+  this._currentSection = this._currentSection._parent;
+  this._dedent();
+};
+
+/**
+ * HelpFormatter#addText(text) -> Void
+ * - text (string): plain text
+ *
+ * Add plain text into current section
+ *
+ * ##### Example
+ *
+ *      formatter.startSection(actionGroup.title);
+ *      formatter.addText(actionGroup.description);
+ *      formatter.addArguments(actionGroup._groupActions);
+ *      formatter.endSection();
+ *
+ **/
+HelpFormatter.prototype.addText = function (text) {
+  if (text && text !== c.SUPPRESS) {
+    this._addItem(this._formatText, [ text ]);
+  }
+};
+
+/**
+ * HelpFormatter#addUsage(usage, actions, groups, prefix) -> Void
+ * - usage (string): usage text
+ * - actions (array): actions list
+ * - groups (array): groups list
+ * - prefix (string): usage prefix
+ *
+ * Add usage data into current section
+ *
+ * ##### Example
+ *
+ *      formatter.addUsage(this.usage, this._actions, []);
+ *      return formatter.formatHelp();
+ *
+ **/
+HelpFormatter.prototype.addUsage = function (usage, actions, groups, prefix) {
+  if (usage !== c.SUPPRESS) {
+    this._addItem(this._formatUsage, [ usage, actions, groups, prefix ]);
+  }
+};
+
+/**
+ * HelpFormatter#addArgument(action) -> Void
+ * - action (object): action
+ *
+ * Add argument into current section
+ *
+ * Single variant of [[HelpFormatter#addArguments]]
+ **/
+HelpFormatter.prototype.addArgument = function (action) {
+  if (action.help !== c.SUPPRESS) {
+    var self = this;
+
+    // find all invocations
+    var invocations = [ this._formatActionInvocation(action) ];
+    var invocationLength = invocations[0].length;
+
+    var actionLength;
+
+    if (action._getSubactions) {
+      this._indent();
+      action._getSubactions().forEach(function (subaction) {
+
+        var invocationNew = self._formatActionInvocation(subaction);
+        invocations.push(invocationNew);
+        invocationLength = Math.max(invocationLength, invocationNew.length);
+
+      });
+      this._dedent();
+    }
+
+    // update the maximum item length
+    actionLength = invocationLength + this._currentIndent;
+    this._actionMaxLength = Math.max(this._actionMaxLength, actionLength);
+
+    // add the item to the list
+    this._addItem(this._formatAction, [ action ]);
+  }
+};
+
+/**
+ * HelpFormatter#addArguments(actions) -> Void
+ * - actions (array): actions list
+ *
+ * Mass add arguments into current section
+ *
+ * ##### Example
+ *
+ *      formatter.startSection(actionGroup.title);
+ *      formatter.addText(actionGroup.description);
+ *      formatter.addArguments(actionGroup._groupActions);
+ *      formatter.endSection();
+ *
+ **/
+HelpFormatter.prototype.addArguments = function (actions) {
+  var self = this;
+  actions.forEach(function (action) {
+    self.addArgument(action);
+  });
+};
+
+//
+// Help-formatting methods
+//
+
+/**
+ * HelpFormatter#formatHelp -> string
+ *
+ * Format help
+ *
+ * ##### Example
+ *
+ *      formatter.addText(this.epilog);
+ *      return formatter.formatHelp();
+ *
+ **/
+HelpFormatter.prototype.formatHelp = function () {
+  var help = this._rootSection.formatHelp(this);
+  if (help) {
+    help = help.replace(this._longBreakMatcher, c.EOL + c.EOL);
+    help = $$.trimChars(help, c.EOL) + c.EOL;
+  }
+  return help;
+};
+
+HelpFormatter.prototype._joinParts = function (partStrings) {
+  return partStrings.filter(function (part) {
+    return (part && part !== c.SUPPRESS);
+  }).join('');
+};
+
+HelpFormatter.prototype._formatUsage = function (usage, actions, groups, prefix) {
+  if (!prefix && typeof prefix !== 'string') {
+    prefix = 'usage: ';
+  }
+
+  actions = actions || [];
+  groups = groups || [];
+
+
+  // if usage is specified, use that
+  if (usage) {
+    usage = sprintf(usage, { prog: this._prog });
+
+    // if no optionals or positionals are available, usage is just prog
+  } else if (!usage && actions.length === 0) {
+    usage = this._prog;
+
+    // if optionals and positionals are available, calculate usage
+  } else if (!usage) {
+    var prog = this._prog;
+    var optionals = [];
+    var positionals = [];
+    var actionUsage;
+    var textWidth;
+
+    // split optionals from positionals
+    actions.forEach(function (action) {
+      if (action.isOptional()) {
+        optionals.push(action);
+      } else {
+        positionals.push(action);
+      }
+    });
+
+    // build full usage string
+    actionUsage = this._formatActionsUsage([].concat(optionals, positionals), groups);
+    usage = [ prog, actionUsage ].join(' ');
+
+    // wrap the usage parts if it's too long
+    textWidth = this._width - this._currentIndent;
+    if ((prefix.length + usage.length) > textWidth) {
+
+      // break usage into wrappable parts
+      var regexpPart = new RegExp('\\(.*?\\)+|\\[.*?\\]+|\\S+', 'g');
+      var optionalUsage = this._formatActionsUsage(optionals, groups);
+      var positionalUsage = this._formatActionsUsage(positionals, groups);
+
+
+      var optionalParts = optionalUsage.match(regexpPart);
+      var positionalParts = positionalUsage.match(regexpPart) || [];
+
+      if (optionalParts.join(' ') !== optionalUsage) {
+        throw new Error('assert "optionalParts.join(\' \') === optionalUsage"');
+      }
+      if (positionalParts.join(' ') !== positionalUsage) {
+        throw new Error('assert "positionalParts.join(\' \') === positionalUsage"');
+      }
+
+      // helper for wrapping lines
+      /*eslint-disable func-style*/ // node 0.10 compat
+      var _getLines = function (parts, indent, prefix) {
+        var lines = [];
+        var line = [];
+
+        var lineLength = prefix ? prefix.length - 1 : indent.length - 1;
+
+        parts.forEach(function (part) {
+          if (lineLength + 1 + part.length > textWidth) {
+            lines.push(indent + line.join(' '));
+            line = [];
+            lineLength = indent.length - 1;
+          }
+          line.push(part);
+          lineLength += part.length + 1;
+        });
+
+        if (line) {
+          lines.push(indent + line.join(' '));
+        }
+        if (prefix) {
+          lines[0] = lines[0].substr(indent.length);
+        }
+        return lines;
+      };
+
+      var lines, indent, parts;
+      // if prog is short, follow it with optionals or positionals
+      if (prefix.length + prog.length <= 0.75 * textWidth) {
+        indent = $$.repeat(' ', (prefix.length + prog.length + 1));
+        if (optionalParts) {
+          lines = [].concat(
+            _getLines([ prog ].concat(optionalParts), indent, prefix),
+            _getLines(positionalParts, indent)
+          );
+        } else if (positionalParts) {
+          lines = _getLines([ prog ].concat(positionalParts), indent, prefix);
+        } else {
+          lines = [ prog ];
+        }
+
+        // if prog is long, put it on its own line
+      } else {
+        indent = $$.repeat(' ', prefix.length);
+        parts = optionalParts + positionalParts;
+        lines = _getLines(parts, indent);
+        if (lines.length > 1) {
+          lines = [].concat(
+            _getLines(optionalParts, indent),
+            _getLines(positionalParts, indent)
+          );
+        }
+        lines = [ prog ] + lines;
+      }
+      // join lines into usage
+      usage = lines.join(c.EOL);
+    }
+  }
+
+  // prefix with 'usage:'
+  return prefix + usage + c.EOL + c.EOL;
+};
+
+HelpFormatter.prototype._formatActionsUsage = function (actions, groups) {
+  // find group indices and identify actions in groups
+  var groupActions = [];
+  var inserts = [];
+  var self = this;
+
+  groups.forEach(function (group) {
+    var end;
+    var i;
+
+    var start = actions.indexOf(group._groupActions[0]);
+    if (start >= 0) {
+      end = start + group._groupActions.length;
+
+      //if (actions.slice(start, end) === group._groupActions) {
+      if ($$.arrayEqual(actions.slice(start, end), group._groupActions)) {
+        group._groupActions.forEach(function (action) {
+          groupActions.push(action);
+        });
+
+        if (!group.required) {
+          if (inserts[start]) {
+            inserts[start] += ' [';
+          } else {
+            inserts[start] = '[';
+          }
+          inserts[end] = ']';
+        } else {
+          if (inserts[start]) {
+            inserts[start] += ' (';
+          } else {
+            inserts[start] = '(';
+          }
+          inserts[end] = ')';
+        }
+        for (i = start + 1; i < end; i += 1) {
+          inserts[i] = '|';
+        }
+      }
+    }
+  });
+
+  // collect all actions format strings
+  var parts = [];
+
+  actions.forEach(function (action, actionIndex) {
+    var part;
+    var optionString;
+    var argsDefault;
+    var argsString;
+
+    // suppressed arguments are marked with None
+    // remove | separators for suppressed arguments
+    if (action.help === c.SUPPRESS) {
+      parts.push(null);
+      if (inserts[actionIndex] === '|') {
+        inserts.splice(actionIndex, actionIndex);
+      } else if (inserts[actionIndex + 1] === '|') {
+        inserts.splice(actionIndex + 1, actionIndex + 1);
+      }
+
+      // produce all arg strings
+    } else if (!action.isOptional()) {
+      part = self._formatArgs(action, action.dest);
+
+      // if it's in a group, strip the outer []
+      if (groupActions.indexOf(action) >= 0) {
+        if (part[0] === '[' && part[part.length - 1] === ']') {
+          part = part.slice(1, -1);
+        }
+      }
+      // add the action string to the list
+      parts.push(part);
+
+    // produce the first way to invoke the option in brackets
+    } else {
+      optionString = action.optionStrings[0];
+
+      // if the Optional doesn't take a value, format is: -s or --long
+      if (action.nargs === 0) {
+        part = '' + optionString;
+
+      // if the Optional takes a value, format is: -s ARGS or --long ARGS
+      } else {
+        argsDefault = action.dest.toUpperCase();
+        argsString = self._formatArgs(action, argsDefault);
+        part = optionString + ' ' + argsString;
+      }
+      // make it look optional if it's not required or in a group
+      if (!action.required && groupActions.indexOf(action) < 0) {
+        part = '[' + part + ']';
+      }
+      // add the action string to the list
+      parts.push(part);
+    }
+  });
+
+  // insert things at the necessary indices
+  for (var i = inserts.length - 1; i >= 0; --i) {
+    if (inserts[i] !== null) {
+      parts.splice(i, 0, inserts[i]);
+    }
+  }
+
+  // join all the action items with spaces
+  var text = parts.filter(function (part) {
+    return !!part;
+  }).join(' ');
+
+  // clean up separators for mutually exclusive groups
+  text = text.replace(/([\[(]) /g, '$1'); // remove spaces
+  text = text.replace(/ ([\])])/g, '$1');
+  text = text.replace(/\[ *\]/g, ''); // remove empty groups
+  text = text.replace(/\( *\)/g, '');
+  text = text.replace(/\(([^|]*)\)/g, '$1'); // remove () from single action groups
+
+  text = text.trim();
+
+  // return the text
+  return text;
+};
+
+HelpFormatter.prototype._formatText = function (text) {
+  text = sprintf(text, { prog: this._prog });
+  var textWidth = this._width - this._currentIndent;
+  var indentIncriment = $$.repeat(' ', this._currentIndent);
+  return this._fillText(text, textWidth, indentIncriment) + c.EOL + c.EOL;
+};
+
+HelpFormatter.prototype._formatAction = function (action) {
+  var self = this;
+
+  var helpText;
+  var helpLines;
+  var parts;
+  var indentFirst;
+
+  // determine the required width and the entry label
+  var helpPosition = Math.min(this._actionMaxLength + 2, this._maxHelpPosition);
+  var helpWidth = this._width - helpPosition;
+  var actionWidth = helpPosition - this._currentIndent - 2;
+  var actionHeader = this._formatActionInvocation(action);
+
+  // no help; start on same line and add a final newline
+  if (!action.help) {
+    actionHeader = $$.repeat(' ', this._currentIndent) + actionHeader + c.EOL;
+
+  // short action name; start on the same line and pad two spaces
+  } else if (actionHeader.length <= actionWidth) {
+    actionHeader = $$.repeat(' ', this._currentIndent) +
+        actionHeader +
+        '  ' +
+        $$.repeat(' ', actionWidth - actionHeader.length);
+    indentFirst = 0;
+
+  // long action name; start on the next line
+  } else {
+    actionHeader = $$.repeat(' ', this._currentIndent) + actionHeader + c.EOL;
+    indentFirst = helpPosition;
+  }
+
+  // collect the pieces of the action help
+  parts = [ actionHeader ];
+
+  // if there was help for the action, add lines of help text
+  if (action.help) {
+    helpText = this._expandHelp(action);
+    helpLines = this._splitLines(helpText, helpWidth);
+    parts.push($$.repeat(' ', indentFirst) + helpLines[0] + c.EOL);
+    helpLines.slice(1).forEach(function (line) {
+      parts.push($$.repeat(' ', helpPosition) + line + c.EOL);
+    });
+
+  // or add a newline if the description doesn't end with one
+  } else if (actionHeader.charAt(actionHeader.length - 1) !== c.EOL) {
+    parts.push(c.EOL);
+  }
+  // if there are any sub-actions, add their help as well
+  if (action._getSubactions) {
+    this._indent();
+    action._getSubactions().forEach(function (subaction) {
+      parts.push(self._formatAction(subaction));
+    });
+    this._dedent();
+  }
+  // return a single string
+  return this._joinParts(parts);
+};
+
+HelpFormatter.prototype._formatActionInvocation = function (action) {
+  if (!action.isOptional()) {
+    var format_func = this._metavarFormatter(action, action.dest);
+    var metavars = format_func(1);
+    return metavars[0];
+  }
+
+  var parts = [];
+  var argsDefault;
+  var argsString;
+
+  // if the Optional doesn't take a value, format is: -s, --long
+  if (action.nargs === 0) {
+    parts = parts.concat(action.optionStrings);
+
+  // if the Optional takes a value, format is: -s ARGS, --long ARGS
+  } else {
+    argsDefault = action.dest.toUpperCase();
+    argsString = this._formatArgs(action, argsDefault);
+    action.optionStrings.forEach(function (optionString) {
+      parts.push(optionString + ' ' + argsString);
+    });
+  }
+  return parts.join(', ');
+};
+
+HelpFormatter.prototype._metavarFormatter = function (action, metavarDefault) {
+  var result;
+
+  if (action.metavar || action.metavar === '') {
+    result = action.metavar;
+  } else if (action.choices) {
+    var choices = action.choices;
+
+    if (typeof choices === 'string') {
+      choices = choices.split('').join(', ');
+    } else if (Array.isArray(choices)) {
+      choices = choices.join(',');
+    } else {
+      choices = Object.keys(choices).join(',');
+    }
+    result = '{' + choices + '}';
+  } else {
+    result = metavarDefault;
+  }
+
+  return function (size) {
+    if (Array.isArray(result)) {
+      return result;
+    }
+
+    var metavars = [];
+    for (var i = 0; i < size; i += 1) {
+      metavars.push(result);
+    }
+    return metavars;
+  };
+};
+
+HelpFormatter.prototype._formatArgs = function (action, metavarDefault) {
+  var result;
+  var metavars;
+
+  var buildMetavar = this._metavarFormatter(action, metavarDefault);
+
+  switch (action.nargs) {
+    /*eslint-disable no-undefined*/
+    case undefined:
+    case null:
+      metavars = buildMetavar(1);
+      result = '' + metavars[0];
+      break;
+    case c.OPTIONAL:
+      metavars = buildMetavar(1);
+      result = '[' + metavars[0] + ']';
+      break;
+    case c.ZERO_OR_MORE:
+      metavars = buildMetavar(2);
+      result = '[' + metavars[0] + ' [' + metavars[1] + ' ...]]';
+      break;
+    case c.ONE_OR_MORE:
+      metavars = buildMetavar(2);
+      result = '' + metavars[0] + ' [' + metavars[1] + ' ...]';
+      break;
+    case c.REMAINDER:
+      result = '...';
+      break;
+    case c.PARSER:
+      metavars = buildMetavar(1);
+      result = metavars[0] + ' ...';
+      break;
+    default:
+      metavars = buildMetavar(action.nargs);
+      result = metavars.join(' ');
+  }
+  return result;
+};
+
+HelpFormatter.prototype._expandHelp = function (action) {
+  var params = { prog: this._prog };
+
+  Object.keys(action).forEach(function (actionProperty) {
+    var actionValue = action[actionProperty];
+
+    if (actionValue !== c.SUPPRESS) {
+      params[actionProperty] = actionValue;
+    }
+  });
+
+  if (params.choices) {
+    if (typeof params.choices === 'string') {
+      params.choices = params.choices.split('').join(', ');
+    } else if (Array.isArray(params.choices)) {
+      params.choices = params.choices.join(', ');
+    } else {
+      params.choices = Object.keys(params.choices).join(', ');
+    }
+  }
+
+  return sprintf(this._getHelpString(action), params);
+};
+
+HelpFormatter.prototype._splitLines = function (text, width) {
+  var lines = [];
+  var delimiters = [ ' ', '.', ',', '!', '?' ];
+  var re = new RegExp('[' + delimiters.join('') + '][^' + delimiters.join('') + ']*$');
+
+  text = text.replace(/[\n\|\t]/g, ' ');
+
+  text = text.trim();
+  text = text.replace(this._whitespaceMatcher, ' ');
+
+  // Wraps the single paragraph in text (a string) so every line
+  // is at most width characters long.
+  text.split(c.EOL).forEach(function (line) {
+    if (width >= line.length) {
+      lines.push(line);
+      return;
+    }
+
+    var wrapStart = 0;
+    var wrapEnd = width;
+    var delimiterIndex = 0;
+    while (wrapEnd <= line.length) {
+      if (wrapEnd !== line.length && delimiters.indexOf(line[wrapEnd] < -1)) {
+        delimiterIndex = (re.exec(line.substring(wrapStart, wrapEnd)) || {}).index;
+        wrapEnd = wrapStart + delimiterIndex + 1;
+      }
+      lines.push(line.substring(wrapStart, wrapEnd));
+      wrapStart = wrapEnd;
+      wrapEnd += width;
+    }
+    if (wrapStart < line.length) {
+      lines.push(line.substring(wrapStart, wrapEnd));
+    }
+  });
+
+  return lines;
+};
+
+HelpFormatter.prototype._fillText = function (text, width, indent) {
+  var lines = this._splitLines(text, width);
+  lines = lines.map(function (line) {
+    return indent + line;
+  });
+  return lines.join(c.EOL);
+};
+
+HelpFormatter.prototype._getHelpString = function (action) {
+  return action.help;
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/namespace.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/namespace.js
new file mode 100644 (file)
index 0000000..a860de9
--- /dev/null
@@ -0,0 +1,76 @@
+/**
+ * class Namespace
+ *
+ * Simple object for storing attributes. Implements equality by attribute names
+ * and values, and provides a simple string representation.
+ *
+ * See also [original guide][1]
+ *
+ * [1]:http://docs.python.org/dev/library/argparse.html#the-namespace-object
+ **/
+'use strict';
+
+var $$ = require('./utils');
+
+/**
+ * new Namespace(options)
+ * - options(object): predefined propertis for result object
+ *
+ **/
+var Namespace = module.exports = function Namespace(options) {
+  $$.extend(this, options);
+};
+
+/**
+ * Namespace#isset(key) -> Boolean
+ * - key (string|number): property name
+ *
+ * Tells whenever `namespace` contains given `key` or not.
+ **/
+Namespace.prototype.isset = function (key) {
+  return $$.has(this, key);
+};
+
+/**
+ * Namespace#set(key, value) -> self
+ * -key (string|number|object): propery name
+ * -value (mixed): new property value
+ *
+ * Set the property named key with value.
+ * If key object then set all key properties to namespace object
+ **/
+Namespace.prototype.set = function (key, value) {
+  if (typeof (key) === 'object') {
+    $$.extend(this, key);
+  } else {
+    this[key] = value;
+  }
+  return this;
+};
+
+/**
+ * Namespace#get(key, defaultValue) -> mixed
+ * - key (string|number): property name
+ * - defaultValue (mixed): default value
+ *
+ * Return the property key or defaulValue if not set
+ **/
+Namespace.prototype.get = function (key, defaultValue) {
+  return !this[key] ? defaultValue : this[key];
+};
+
+/**
+ * Namespace#unset(key, defaultValue) -> mixed
+ * - key (string|number): property name
+ * - defaultValue (mixed): default value
+ *
+ * Return data[key](and delete it) or defaultValue
+ **/
+Namespace.prototype.unset = function (key, defaultValue) {
+  var value = this[key];
+  if (value !== null) {
+    delete this[key];
+    return value;
+  }
+  return defaultValue;
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/utils.js b/wrt/build/node_modules/grunt-standard/node_modules/argparse/lib/utils.js
new file mode 100644 (file)
index 0000000..4a9cf3e
--- /dev/null
@@ -0,0 +1,57 @@
+'use strict';
+
+exports.repeat = function (str, num) {
+  var result = '';
+  for (var i = 0; i < num; i++) { result += str; }
+  return result;
+};
+
+exports.arrayEqual = function (a, b) {
+  if (a.length !== b.length) { return false; }
+  for (var i = 0; i < a.length; i++) {
+    if (a[i] !== b[i]) { return false; }
+  }
+  return true;
+};
+
+exports.trimChars = function (str, chars) {
+  var start = 0;
+  var end = str.length - 1;
+  while (chars.indexOf(str.charAt(start)) >= 0) { start++; }
+  while (chars.indexOf(str.charAt(end)) >= 0) { end--; }
+  return str.slice(start, end + 1);
+};
+
+exports.capitalize = function (str) {
+  return str.charAt(0).toUpperCase() + str.slice(1);
+};
+
+exports.arrayUnion = function () {
+  var result = [];
+  for (var i = 0, values = {}; i < arguments.length; i++) {
+    var arr = arguments[i];
+    for (var j = 0; j < arr.length; j++) {
+      if (!values[arr[j]]) {
+        values[arr[j]] = true;
+        result.push(arr[j]);
+      }
+    }
+  }
+  return result;
+};
+
+function has(obj, key) {
+  return Object.prototype.hasOwnProperty.call(obj, key);
+}
+
+exports.has = has;
+
+exports.extend = function (dest, src) {
+  for (var i in src) {
+    if (has(src, i)) { dest[i] = src[i]; }
+  }
+};
+
+exports.trimEnd = function (str) {
+  return str.replace(/\s+$/g, '');
+};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/argparse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/argparse/package.json
new file mode 100644 (file)
index 0000000..3e7fd57
--- /dev/null
@@ -0,0 +1,105 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "argparse@^1.0.7",
+        "scope": null,
+        "escapedName": "argparse",
+        "name": "argparse",
+        "rawSpec": "^1.0.7",
+        "spec": ">=1.0.7 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/js-yaml"
+    ]
+  ],
+  "_from": "argparse@>=1.0.7 <2.0.0",
+  "_id": "argparse@1.0.9",
+  "_inCache": true,
+  "_location": "/grunt-standard/argparse",
+  "_nodeVersion": "6.5.0",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/argparse-1.0.9.tgz_1475177461025_0.33920647646300495"
+  },
+  "_npmUser": {
+    "name": "vitaly",
+    "email": "vitaly@rcdesign.ru"
+  },
+  "_npmVersion": "3.10.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "argparse@^1.0.7",
+    "scope": null,
+    "escapedName": "argparse",
+    "name": "argparse",
+    "rawSpec": "^1.0.7",
+    "spec": ">=1.0.7 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/js-yaml"
+  ],
+  "_resolved": "http://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz",
+  "_shasum": "73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86",
+  "_shrinkwrap": null,
+  "_spec": "argparse@^1.0.7",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/js-yaml",
+  "bugs": {
+    "url": "https://github.com/nodeca/argparse/issues"
+  },
+  "contributors": [
+    {
+      "name": "Eugene Shkuropat"
+    },
+    {
+      "name": "Paul Jacobson"
+    }
+  ],
+  "dependencies": {
+    "sprintf-js": "~1.0.2"
+  },
+  "description": "Very powerful CLI arguments parser. Native port of argparse - python's options parsing library",
+  "devDependencies": {
+    "eslint": "^2.13.1",
+    "istanbul": "^0.4.5",
+    "mocha": "^3.1.0",
+    "ndoc": "^5.0.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86",
+    "tarball": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz"
+  },
+  "files": [
+    "index.js",
+    "lib/"
+  ],
+  "gitHead": "acb39f2d726b90d2eadf9e6574a938d6250ad248",
+  "homepage": "https://github.com/nodeca/argparse#readme",
+  "keywords": [
+    "cli",
+    "parser",
+    "argparse",
+    "option",
+    "args"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "vitaly",
+      "email": "vitaly@rcdesign.ru"
+    }
+  ],
+  "name": "argparse",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/nodeca/argparse.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "version": "1.0.9"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/index.js b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/index.js
deleted file mode 100644 (file)
index caf9e11..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-'use strict';
-
-var styles = module.exports = {
-       modifiers: {
-               reset: [0, 0],
-               bold: [1, 22], // 21 isn't widely supported and 22 does the same thing
-               dim: [2, 22],
-               italic: [3, 23],
-               underline: [4, 24],
-               inverse: [7, 27],
-               hidden: [8, 28],
-               strikethrough: [9, 29]
-       },
-       colors: {
-               black: [30, 39],
-               red: [31, 39],
-               green: [32, 39],
-               yellow: [33, 39],
-               blue: [34, 39],
-               magenta: [35, 39],
-               cyan: [36, 39],
-               white: [37, 39],
-               gray: [90, 39]
-       },
-       bgColors: {
-               bgBlack: [40, 49],
-               bgRed: [41, 49],
-               bgGreen: [42, 49],
-               bgYellow: [43, 49],
-               bgBlue: [44, 49],
-               bgMagenta: [45, 49],
-               bgCyan: [46, 49],
-               bgWhite: [47, 49]
-       }
-};
-
-// fix humans
-styles.colors.grey = styles.colors.gray;
-
-Object.keys(styles).forEach(function (groupName) {
-       var group = styles[groupName];
-
-       Object.keys(group).forEach(function (styleName) {
-               var style = group[styleName];
-
-               styles[styleName] = group[styleName] = {
-                       open: '\u001b[' + style[0] + 'm',
-                       close: '\u001b[' + style[1] + 'm'
-               };
-       });
-
-       Object.defineProperty(styles, groupName, {
-               value: group,
-               enumerable: false
-       });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/license b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/license
deleted file mode 100644 (file)
index 654d0bf..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/package.json
deleted file mode 100644 (file)
index c7789e7..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-{
-  "_args": [
-    [
-      "ansi-styles@https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "ansi-styles@https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-  "_id": "ansi-styles@https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sDP1f5Pi0oreuLwRE4+hPaD9IKM=",
-  "_location": "/grunt-standard/chalk/ansi-styles",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ansi-styles@https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-    "name": "ansi-styles",
-    "escapedName": "ansi-styles",
-    "rawSpec": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk"
-  ],
-  "_spec": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/ansi-styles/issues"
-  },
-  "description": "ANSI escape codes for styling strings in the terminal",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/ansi-styles#readme",
-  "keywords": [
-    "ansi",
-    "styles",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "cli",
-    "string",
-    "tty",
-    "escape",
-    "formatting",
-    "rgb",
-    "256",
-    "shell",
-    "xterm",
-    "log",
-    "logging",
-    "command-line",
-    "text"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "ansi-styles",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/ansi-styles.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/ansi-styles/readme.md
deleted file mode 100644 (file)
index 89ec6a7..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-# ansi-styles [![Build Status](https://travis-ci.org/sindresorhus/ansi-styles.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-styles)
-
-> [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal
-
-You probably want the higher-level [chalk](https://github.com/sindresorhus/chalk) module for styling your strings.
-
-![](screenshot.png)
-
-
-## Install
-
-```sh
-$ npm install --save ansi-styles
-```
-
-
-## Usage
-
-```js
-var ansi = require('ansi-styles');
-
-console.log(ansi.green.open + 'Hello world!' + ansi.green.close);
-```
-
-
-## API
-
-Each style has an `open` and `close` property.
-
-
-## Styles
-
-### Modifiers
-
-- `reset`
-- `bold`
-- `dim`
-- `italic` *(not widely supported)*
-- `underline`
-- `inverse`
-- `hidden`
-- `strikethrough` *(not widely supported)*
-
-### Colors
-
-- `black`
-- `red`
-- `green`
-- `yellow`
-- `blue`
-- `magenta`
-- `cyan`
-- `white`
-- `gray`
-
-### Background colors
-
-- `bgBlack`
-- `bgRed`
-- `bgGreen`
-- `bgYellow`
-- `bgBlue`
-- `bgMagenta`
-- `bgCyan`
-- `bgWhite`
-
-
-## Advanced usage
-
-By default you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module.
-
-- `ansi.modifiers`
-- `ansi.colors`
-- `ansi.bgColors`
-
-
-###### Example
-
-```js
-console.log(ansi.colors.green.open);
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/index.js b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/index.js
deleted file mode 100644 (file)
index ac6572c..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g;
-
-module.exports = function (str) {
-       if (typeof str !== 'string') {
-               throw new TypeError('Expected a string');
-       }
-
-       return str.replace(matchOperatorsRe,  '\\$&');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/license b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/license
deleted file mode 100644 (file)
index 654d0bf..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/package.json
deleted file mode 100644 (file)
index dab6135..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-{
-  "_args": [
-    [
-      "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_id": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ni2LJbwlVcMzZyN1DgPwmcJzW7U=",
-  "_location": "/grunt-standard/chalk/escape-string-regexp",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "name": "escape-string-regexp",
-    "escapedName": "escape-string-regexp",
-    "rawSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk"
-  ],
-  "_spec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/escape-string-regexp/issues"
-  },
-  "description": "Escape RegExp special characters",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.8.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/escape-string-regexp#readme",
-  "keywords": [
-    "regex",
-    "regexp",
-    "re",
-    "regular",
-    "expression",
-    "escape",
-    "string",
-    "str",
-    "special",
-    "characters"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "escape-string-regexp",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/escape-string-regexp.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/escape-string-regexp/readme.md
deleted file mode 100644 (file)
index 808a963..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# escape-string-regexp [![Build Status](https://travis-ci.org/sindresorhus/escape-string-regexp.svg?branch=master)](https://travis-ci.org/sindresorhus/escape-string-regexp)
-
-> Escape RegExp special characters
-
-
-## Install
-
-```sh
-$ npm install --save escape-string-regexp
-```
-
-
-## Usage
-
-```js
-var escapeStringRegexp = require('escape-string-regexp');
-
-var escapedString = escapeStringRegexp('how much $ for a unicorn?');
-//=> how much \$ for a unicorn\?
-
-new RegExp(escapedString);
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/license b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/license
deleted file mode 100644 (file)
index 654d0bf..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/index.js
deleted file mode 100644 (file)
index 2fcdd1e..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-module.exports = function () {
-       return /(?:(?:\u001b\[)|\u009b)(?:(?:[0-9]{1,3})?(?:(?:;[0-9]{0,3})*)?[A-M|f-m])|\u001b[A-M]/g;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/package.json
deleted file mode 100644 (file)
index 44231c7..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-{
-  "_args": [
-    [
-      "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_id": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-QchHGUZGN15qGl0Qw8oFTvn8mA0=",
-  "_location": "/grunt-standard/chalk/has-ansi/ansi-regex",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "name": "ansi-regex",
-    "escapedName": "ansi-regex",
-    "rawSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk/has-ansi"
-  ],
-  "_spec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/ansi-regex/issues"
-  },
-  "description": "Regular expression for matching ANSI escape codes",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/ansi-regex#readme",
-  "keywords": [
-    "ansi",
-    "styles",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "cli",
-    "string",
-    "tty",
-    "escape",
-    "formatting",
-    "rgb",
-    "256",
-    "shell",
-    "xterm",
-    "command-line",
-    "text",
-    "regex",
-    "regexp",
-    "re",
-    "match",
-    "test",
-    "find",
-    "pattern"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "ansi-regex",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/ansi-regex.git"
-  },
-  "scripts": {
-    "test": "mocha test/test.js",
-    "view-supported": "node test/viewCodes.js"
-  },
-  "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex/readme.md
deleted file mode 100644 (file)
index ae876e7..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-# ansi-regex [![Build Status](https://travis-ci.org/sindresorhus/ansi-regex.svg?branch=master)](https://travis-ci.org/sindresorhus/ansi-regex)
-
-> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code)
-
-
-## Install
-
-```sh
-$ npm install --save ansi-regex
-```
-
-
-## Usage
-
-```js
-var ansiRegex = require('ansi-regex');
-
-ansiRegex().test('\u001b[4mcake\u001b[0m');
-//=> true
-
-ansiRegex().test('cake');
-//=> false
-
-'\u001b[4mcake\u001b[0m'.match(ansiRegex());
-//=> ['\u001b[4m', '\u001b[0m']
-```
-
-*It's a function so you can create multiple instances. Regexes with the global flag will have the `.lastIndex` property changed for each call to methods on the instance. Therefore reusing the instance with multiple calls will not work as expected for `.test()`.*
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/index.js b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/index.js
deleted file mode 100644 (file)
index 0f1aeb3..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-'use strict';
-
-module.exports = function (cb) {
-       var stdin = process.stdin;
-       var ret = '';
-
-       if (stdin.isTTY) {
-               setImmediate(cb, '');
-               return;
-       }
-
-       stdin.setEncoding('utf8');
-
-       stdin.on('readable', function () {
-               var chunk;
-
-               while (chunk = stdin.read()) {
-                       ret += chunk;
-               }
-       });
-
-       stdin.on('end', function () {
-               cb(ret);
-       });
-};
-
-module.exports.buffer = function (cb) {
-       var stdin = process.stdin;
-       var ret = [];
-       var len = 0;
-
-       if (stdin.isTTY) {
-               setImmediate(cb, new Buffer(''));
-               return;
-       }
-
-       stdin.on('readable', function () {
-               var chunk;
-
-               while (chunk = stdin.read()) {
-                       ret.push(chunk);
-                       len += chunk.length;
-               }
-       });
-
-       stdin.on('end', function () {
-               cb(Buffer.concat(ret, len));
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/package.json
deleted file mode 100644 (file)
index c97ead8..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_id": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-  "_location": "/grunt-standard/chalk/has-ansi/get-stdin",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "name": "get-stdin",
-    "escapedName": "get-stdin",
-    "rawSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk/has-ansi"
-  ],
-  "_spec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/get-stdin/issues"
-  },
-  "description": "Easier stdin",
-  "devDependencies": {
-    "ava": "0.0.4",
-    "buffer-equal": "0.0.1"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/get-stdin#readme",
-  "keywords": [
-    "std",
-    "stdin",
-    "stdio",
-    "concat",
-    "buffer",
-    "stream",
-    "process",
-    "stream"
-  ],
-  "license": "MIT",
-  "name": "get-stdin",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/get-stdin.git"
-  },
-  "scripts": {
-    "test": "node test.js && node test-buffer.js && echo unicorns | node test-real.js"
-  },
-  "version": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/node_modules/get-stdin/readme.md
deleted file mode 100644 (file)
index bc1d32a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-# get-stdin [![Build Status](https://travis-ci.org/sindresorhus/get-stdin.svg?branch=master)](https://travis-ci.org/sindresorhus/get-stdin)
-
-> Easier stdin
-
-
-## Install
-
-```sh
-$ npm install --save get-stdin
-```
-
-
-## Usage
-
-```js
-// example.js
-var stdin = require('get-stdin');
-
-stdin(function (data) {
-       console.log(data);
-       //=> unicorns
-});
-```
-
-```sh
-$ echo unicorns | node example.js
-unicorns
-```
-
-
-## API
-
-### stdin(callback)
-
-Get `stdin` as a string.
-
-### stdin.buffer(callback)
-
-Get `stdin` as a buffer.
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/has-ansi/package.json
deleted file mode 100644 (file)
index 7dff293..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-{
-  "_args": [
-    [
-      "has-ansi@https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "has-ansi@https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-  "_id": "has-ansi@https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-wLWxYV2eOCsP9nFp2We0JeSMpTg=",
-  "_location": "/grunt-standard/chalk/has-ansi",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "has-ansi@https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-    "name": "has-ansi",
-    "escapedName": "has-ansi",
-    "rawSpec": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk"
-  ],
-  "_spec": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bin": {
-    "has-ansi": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/has-ansi/issues"
-  },
-  "dependencies": {
-    "ansi-regex": "^1.1.0",
-    "get-stdin": "^4.0.1"
-  },
-  "description": "Check if a string has ANSI escape codes",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js",
-    "cli.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/has-ansi#readme",
-  "keywords": [
-    "cli",
-    "bin",
-    "ansi",
-    "styles",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "string",
-    "tty",
-    "escape",
-    "shell",
-    "xterm",
-    "command-line",
-    "text",
-    "regex",
-    "regexp",
-    "re",
-    "match",
-    "test",
-    "find",
-    "pattern",
-    "has"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "has-ansi",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/has-ansi.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/node_modules/ansi-regex/package.json
deleted file mode 100644 (file)
index 639bd1a..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-{
-  "_args": [
-    [
-      "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_id": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-QchHGUZGN15qGl0Qw8oFTvn8mA0=",
-  "_location": "/grunt-standard/chalk/strip-ansi/ansi-regex",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ansi-regex@https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "name": "ansi-regex",
-    "escapedName": "ansi-regex",
-    "rawSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk/strip-ansi"
-  ],
-  "_spec": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/ansi-regex/issues"
-  },
-  "description": "Regular expression for matching ANSI escape codes",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/ansi-regex#readme",
-  "keywords": [
-    "ansi",
-    "styles",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "cli",
-    "string",
-    "tty",
-    "escape",
-    "formatting",
-    "rgb",
-    "256",
-    "shell",
-    "xterm",
-    "command-line",
-    "text",
-    "regex",
-    "regexp",
-    "re",
-    "match",
-    "test",
-    "find",
-    "pattern"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "ansi-regex",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/ansi-regex.git"
-  },
-  "scripts": {
-    "test": "mocha test/test.js",
-    "view-supported": "node test/viewCodes.js"
-  },
-  "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/strip-ansi/package.json
deleted file mode 100644 (file)
index 66cfa29..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-{
-  "_args": [
-    [
-      "strip-ansi@https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "strip-ansi@https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-  "_id": "strip-ansi@https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-32LBqpTtLxFOHQ8h/R1QSCt5pg4=",
-  "_location": "/grunt-standard/chalk/strip-ansi",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "strip-ansi@https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-    "name": "strip-ansi",
-    "escapedName": "strip-ansi",
-    "rawSpec": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk"
-  ],
-  "_spec": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bin": {
-    "strip-ansi": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/strip-ansi/issues"
-  },
-  "dependencies": {
-    "ansi-regex": "^1.0.0"
-  },
-  "description": "Strip ANSI escape codes",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js",
-    "cli.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/strip-ansi#readme",
-  "keywords": [
-    "strip",
-    "trim",
-    "remove",
-    "ansi",
-    "styles",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "cli",
-    "string",
-    "tty",
-    "escape",
-    "formatting",
-    "rgb",
-    "256",
-    "shell",
-    "xterm",
-    "log",
-    "logging",
-    "command-line",
-    "text"
-  ],
-  "license": "MIT",
-  "name": "strip-ansi",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/strip-ansi.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/package.json b/wrt/build/node_modules/grunt-standard/node_modules/chalk/node_modules/supports-color/package.json
deleted file mode 100644 (file)
index aea2f9a..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-{
-  "_args": [
-    [
-      "supports-color@https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_from": "supports-color@https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-  "_id": "supports-color@https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-FXWN8J2P87SswwdTn6vicJXhBC0=",
-  "_location": "/grunt-standard/chalk/supports-color",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "supports-color@https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-    "name": "supports-color",
-    "escapedName": "supports-color",
-    "rawSpec": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/chalk"
-  ],
-  "_spec": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "sindresorhus.com"
-  },
-  "bin": {
-    "supports-color": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/supports-color/issues"
-  },
-  "description": "Detect whether a terminal supports color",
-  "devDependencies": {
-    "mocha": "*",
-    "require-uncached": "^1.0.2"
-  },
-  "engines": {
-    "node": ">=0.8.0"
-  },
-  "files": [
-    "index.js",
-    "cli.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/supports-color#readme",
-  "keywords": [
-    "cli",
-    "bin",
-    "color",
-    "colour",
-    "colors",
-    "terminal",
-    "console",
-    "cli",
-    "ansi",
-    "styles",
-    "tty",
-    "rgb",
-    "256",
-    "shell",
-    "xterm",
-    "command-line",
-    "support",
-    "supports",
-    "capability",
-    "detect"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "jbnicolai.com"
-    }
-  ],
-  "name": "supports-color",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/supports-color.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz"
-}
index d036766..14f0df2 100644 (file)
@@ -1,32 +1,47 @@
 {
   "_args": [
     [
-      "chalk@https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "chalk@1.0.0",
+        "scope": null,
+        "escapedName": "chalk",
+        "name": "chalk",
+        "rawSpec": "1.0.0",
+        "spec": "1.0.0",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard"
     ]
   ],
-  "_from": "chalk@https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-  "_id": "chalk@https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-s89O0P9Tl8mcdbj2edsvUoMfltw=",
+  "_from": "chalk@1.0.0",
+  "_id": "chalk@1.0.0",
+  "_inCache": true,
   "_location": "/grunt-standard/chalk",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "2.5.1",
   "_phantomChildren": {},
   "_requested": {
-    "type": "remote",
-    "raw": "chalk@https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-    "name": "chalk",
+    "raw": "chalk@1.0.0",
+    "scope": null,
     "escapedName": "chalk",
-    "rawSpec": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz"
+    "name": "chalk",
+    "rawSpec": "1.0.0",
+    "spec": "1.0.0",
+    "type": "version"
   },
   "_requiredBy": [
     "/grunt-standard",
-    "/grunt-standard/grunt-nsp-shrinkwrap/request/har-validator",
-    "/grunt-standard/standard/eslint"
+    "/grunt-standard/eslint"
   ],
-  "_spec": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
+  "_shasum": "b3cf4ed0ff5397c99c75b8f679db2f52831f96dc",
+  "_shrinkwrap": null,
+  "_spec": "chalk@1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard",
   "bugs": {
     "url": "https://github.com/sindresorhus/chalk/issues"
   },
     "matcha": "^0.6.0",
     "mocha": "*"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "b3cf4ed0ff5397c99c75b8f679db2f52831f96dc",
+    "tarball": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz"
+  },
   "engines": {
     "node": ">=0.10.0"
   },
   "files": [
     "index.js"
   ],
-  "homepage": "https://github.com/sindresorhus/chalk#readme",
+  "gitHead": "8864d3563313ed15574a38dd5c9d5966080c46ce",
+  "homepage": "https://github.com/sindresorhus/chalk",
   "keywords": [
     "color",
     "colour",
   "license": "MIT",
   "maintainers": [
     {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
     },
     {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
+      "name": "jbnicolai",
+      "email": "jappelman@xebia.com"
     }
   ],
   "name": "chalk",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git+https://github.com/sindresorhus/chalk.git"
     "bench": "matcha benchmark.js",
     "test": "mocha"
   },
-  "version": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz"
+  "version": "1.0.0"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/d/package.json b/wrt/build/node_modules/grunt-standard/node_modules/d/package.json
new file mode 100644 (file)
index 0000000..bfd6997
--- /dev/null
@@ -0,0 +1,94 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "d@~0.1.1",
+        "scope": null,
+        "escapedName": "d",
+        "name": "d",
+        "rawSpec": "~0.1.1",
+        "spec": ">=0.1.1 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map"
+    ]
+  ],
+  "_from": "d@>=0.1.1 <0.2.0",
+  "_id": "d@0.1.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/d",
+  "_npmUser": {
+    "name": "medikoo",
+    "email": "medikoo+npm@medikoo.com"
+  },
+  "_npmVersion": "1.4.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "d@~0.1.1",
+    "scope": null,
+    "escapedName": "d",
+    "name": "d",
+    "rawSpec": "~0.1.1",
+    "spec": ">=0.1.1 <0.2.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/es6-iterator",
+    "/grunt-standard/es6-symbol",
+    "/grunt-standard/es6-weak-map"
+  ],
+  "_resolved": "http://registry.npmjs.org/d/-/d-0.1.1.tgz",
+  "_shasum": "da184c535d18d8ee7ba2aa229b914009fae11309",
+  "_shrinkwrap": null,
+  "_spec": "d@~0.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map",
+  "author": {
+    "name": "Mariusz Nowak",
+    "email": "medyk@medikoo.com",
+    "url": "http://www.medikoo.com/"
+  },
+  "bugs": {
+    "url": "https://github.com/medikoo/d/issues"
+  },
+  "dependencies": {
+    "es5-ext": "~0.10.2"
+  },
+  "description": "Property descriptor factory",
+  "devDependencies": {
+    "tad": "~0.1.21"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "da184c535d18d8ee7ba2aa229b914009fae11309",
+    "tarball": "https://registry.npmjs.org/d/-/d-0.1.1.tgz"
+  },
+  "homepage": "https://github.com/medikoo/d",
+  "keywords": [
+    "descriptor",
+    "es",
+    "ecmascript",
+    "ecma",
+    "property",
+    "descriptors",
+    "meta",
+    "properties"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "medikoo",
+      "email": "medikoo+npm@medikoo.com"
+    }
+  ],
+  "name": "d",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/medikoo/d.git"
+  },
+  "scripts": {
+    "test": "node node_modules/tad/bin/tad"
+  },
+  "version": "0.1.1"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov.info b/wrt/build/node_modules/grunt-standard/node_modules/doctrine/coverage/lcov.info
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/doctrine/package.json b/wrt/build/node_modules/grunt-standard/node_modules/doctrine/package.json
new file mode 100644 (file)
index 0000000..8dde2d2
--- /dev/null
@@ -0,0 +1,104 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "doctrine@^0.6.2",
+        "scope": null,
+        "escapedName": "doctrine",
+        "name": "doctrine",
+        "rawSpec": "^0.6.2",
+        "spec": ">=0.6.2 <0.7.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "doctrine@>=0.6.2 <0.7.0",
+  "_id": "doctrine@0.6.4",
+  "_inCache": true,
+  "_location": "/grunt-standard/doctrine",
+  "_npmUser": {
+    "name": "constellation",
+    "email": "utatane.tea@gmail.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "doctrine@^0.6.2",
+    "scope": null,
+    "escapedName": "doctrine",
+    "name": "doctrine",
+    "rawSpec": "^0.6.2",
+    "spec": ">=0.6.2 <0.7.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
+  "_shasum": "81428491a942ef18b0492056eda3800eee57d61d",
+  "_shrinkwrap": null,
+  "_spec": "doctrine@^0.6.2",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "bugs": {
+    "url": "https://github.com/Constellation/doctrine/issues"
+  },
+  "dependencies": {
+    "esutils": "^1.1.6",
+    "isarray": "0.0.1"
+  },
+  "description": "JSDoc parser",
+  "devDependencies": {
+    "coveralls": "^2.11.2",
+    "gulp": "^3.8.10",
+    "gulp-bump": "^0.1.13",
+    "gulp-eslint": "^0.5.0",
+    "gulp-filter": "^2.0.2",
+    "gulp-git": "^1.0.0",
+    "gulp-istanbul": "^0.6.0",
+    "gulp-jshint": "^1.9.0",
+    "gulp-mocha": "^2.0.0",
+    "gulp-tag-version": "^1.2.1",
+    "jshint-stylish": "^1.0.0",
+    "should": "^5.0.1"
+  },
+  "directories": {
+    "lib": "./lib"
+  },
+  "dist": {
+    "shasum": "81428491a942ef18b0492056eda3800eee57d61d",
+    "tarball": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "gitHead": "0835299b485ecdfa908d20628d6c8900144590ff",
+  "homepage": "http://github.com/Constellation/doctrine.html",
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/Constellation/doctrine/raw/master/LICENSE.BSD"
+    }
+  ],
+  "main": "lib/doctrine.js",
+  "maintainers": [
+    {
+      "name": "constellation",
+      "email": "utatane.tea@gmail.com"
+    }
+  ],
+  "name": "doctrine",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/Constellation/doctrine.git"
+  },
+  "scripts": {
+    "coveralls": "cat ./coverage/lcov.info | coveralls && rm -rf ./coverage",
+    "lint": "gulp lint",
+    "test": "gulp",
+    "unit-test": "gulp test"
+  },
+  "version": "0.6.4"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/package.json b/wrt/build/node_modules/grunt-standard/node_modules/es6-iterator/package.json
new file mode 100644 (file)
index 0000000..8a126f3
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "es6-iterator@~0.1.3",
+        "scope": null,
+        "escapedName": "es6-iterator",
+        "name": "es6-iterator",
+        "rawSpec": "~0.1.3",
+        "spec": ">=0.1.3 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map"
+    ]
+  ],
+  "_from": "es6-iterator@>=0.1.3 <0.2.0",
+  "_id": "es6-iterator@0.1.3",
+  "_inCache": true,
+  "_location": "/grunt-standard/es6-iterator",
+  "_nodeVersion": "0.11.16",
+  "_npmUser": {
+    "name": "medikoo",
+    "email": "medikoo+npm@medikoo.com"
+  },
+  "_npmVersion": "2.3.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "es6-iterator@~0.1.3",
+    "scope": null,
+    "escapedName": "es6-iterator",
+    "name": "es6-iterator",
+    "rawSpec": "~0.1.3",
+    "spec": ">=0.1.3 <0.2.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/es6-weak-map"
+  ],
+  "_resolved": "http://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
+  "_shasum": "d6f58b8c4fc413c249b4baa19768f8e4d7c8944e",
+  "_shrinkwrap": null,
+  "_spec": "es6-iterator@~0.1.3",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map",
+  "author": {
+    "name": "Mariusz Nowak",
+    "email": "medyk@medikoo.com",
+    "url": "http://www.medikoo.com/"
+  },
+  "bugs": {
+    "url": "https://github.com/medikoo/es6-iterator/issues"
+  },
+  "dependencies": {
+    "d": "~0.1.1",
+    "es5-ext": "~0.10.5",
+    "es6-symbol": "~2.0.1"
+  },
+  "description": "Iterator abstraction based on ES6 specification",
+  "devDependencies": {
+    "event-emitter": "~0.3.3",
+    "tad": "~0.2.1",
+    "xlint": "~0.2.2",
+    "xlint-jslint-medikoo": "~0.1.2"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "d6f58b8c4fc413c249b4baa19768f8e4d7c8944e",
+    "tarball": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz"
+  },
+  "gitHead": "2addc362c6f139e4941cf4726eeb59e5960c5cef",
+  "homepage": "https://github.com/medikoo/es6-iterator",
+  "keywords": [
+    "iterator",
+    "array",
+    "list",
+    "set",
+    "map",
+    "generator"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "medikoo",
+      "email": "medikoo+npm@medikoo.com"
+    }
+  ],
+  "name": "es6-iterator",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/medikoo/es6-iterator.git"
+  },
+  "scripts": {
+    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
+    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
+    "test": "node ./node_modules/tad/bin/tad"
+  },
+  "version": "0.1.3"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/package.json b/wrt/build/node_modules/grunt-standard/node_modules/es6-symbol/package.json
new file mode 100644 (file)
index 0000000..4ce6d44
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "es6-symbol@~2.0.1",
+        "scope": null,
+        "escapedName": "es6-symbol",
+        "name": "es6-symbol",
+        "rawSpec": "~2.0.1",
+        "spec": ">=2.0.1 <2.1.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map"
+    ]
+  ],
+  "_from": "es6-symbol@>=2.0.1 <2.1.0",
+  "_id": "es6-symbol@2.0.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/es6-symbol",
+  "_npmUser": {
+    "name": "medikoo",
+    "email": "medikoo+npm@medikoo.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "es6-symbol@~2.0.1",
+    "scope": null,
+    "escapedName": "es6-symbol",
+    "name": "es6-symbol",
+    "rawSpec": "~2.0.1",
+    "spec": ">=2.0.1 <2.1.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/es6-iterator",
+    "/grunt-standard/es6-weak-map"
+  ],
+  "_resolved": "http://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
+  "_shasum": "761b5c67cfd4f1d18afb234f691d678682cb3bf3",
+  "_shrinkwrap": null,
+  "_spec": "es6-symbol@~2.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map",
+  "author": {
+    "name": "Mariusz Nowak",
+    "email": "medyk@medikoo.com",
+    "url": "http://www.medikoo.com/"
+  },
+  "bugs": {
+    "url": "https://github.com/medikoo/es6-symbol/issues"
+  },
+  "dependencies": {
+    "d": "~0.1.1",
+    "es5-ext": "~0.10.5"
+  },
+  "description": "ECMAScript6 Symbol polyfill",
+  "devDependencies": {
+    "tad": "~0.2.1",
+    "xlint": "~0.2.2",
+    "xlint-jslint-medikoo": "~0.1.2"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "761b5c67cfd4f1d18afb234f691d678682cb3bf3",
+    "tarball": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
+  },
+  "gitHead": "51f6938d7830269fefa38f02eb912f5472b3ccd7",
+  "homepage": "https://github.com/medikoo/es6-symbol",
+  "keywords": [
+    "symbol",
+    "private",
+    "property",
+    "es6",
+    "ecmascript",
+    "harmony"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "medikoo",
+      "email": "medikoo+npm@medikoo.com"
+    }
+  ],
+  "name": "es6-symbol",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/medikoo/es6-symbol.git"
+  },
+  "scripts": {
+    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
+    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
+    "test": "node ./node_modules/tad/bin/tad"
+  },
+  "version": "2.0.1"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/es6-weak-map/package.json
new file mode 100644 (file)
index 0000000..d5fc504
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "es6-weak-map@^0.1.2",
+        "scope": null,
+        "escapedName": "es6-weak-map",
+        "name": "es6-weak-map",
+        "rawSpec": "^0.1.2",
+        "spec": ">=0.1.2 <0.2.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope"
+    ]
+  ],
+  "_from": "es6-weak-map@>=0.1.2 <0.2.0",
+  "_id": "es6-weak-map@0.1.4",
+  "_inCache": true,
+  "_location": "/grunt-standard/es6-weak-map",
+  "_nodeVersion": "0.12.2",
+  "_npmUser": {
+    "name": "medikoo",
+    "email": "medikoo+npm@medikoo.com"
+  },
+  "_npmVersion": "2.7.4",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "es6-weak-map@^0.1.2",
+    "scope": null,
+    "escapedName": "es6-weak-map",
+    "name": "es6-weak-map",
+    "rawSpec": "^0.1.2",
+    "spec": ">=0.1.2 <0.2.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/escope"
+  ],
+  "_resolved": "http://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
+  "_shasum": "706cef9e99aa236ba7766c239c8b9e286ea7d228",
+  "_shrinkwrap": null,
+  "_spec": "es6-weak-map@^0.1.2",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope",
+  "author": {
+    "name": "Mariusz Nowak",
+    "email": "medyk@medikoo.com",
+    "url": "http://www.medikoo.com/"
+  },
+  "bugs": {
+    "url": "https://github.com/medikoo/es6-weak-map/issues"
+  },
+  "dependencies": {
+    "d": "~0.1.1",
+    "es5-ext": "~0.10.6",
+    "es6-iterator": "~0.1.3",
+    "es6-symbol": "~2.0.1"
+  },
+  "description": "ECMAScript6 WeakMap polyfill",
+  "devDependencies": {
+    "tad": "~0.2.2"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "706cef9e99aa236ba7766c239c8b9e286ea7d228",
+    "tarball": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz"
+  },
+  "gitHead": "e68802395b82a700257374c379cfaafe84ee8552",
+  "homepage": "https://github.com/medikoo/es6-weak-map",
+  "keywords": [
+    "map",
+    "weakmap",
+    "collection",
+    "es6",
+    "harmony",
+    "list",
+    "hash",
+    "gc"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "medikoo",
+      "email": "medikoo+npm@medikoo.com"
+    }
+  ],
+  "name": "es6-weak-map",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/medikoo/es6-weak-map.git"
+  },
+  "scripts": {
+    "test": "node ./node_modules/tad/bin/tad"
+  },
+  "version": "0.1.4"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/escope/package.json b/wrt/build/node_modules/grunt-standard/node_modules/escope/package.json
new file mode 100644 (file)
index 0000000..55edee9
--- /dev/null
@@ -0,0 +1,103 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "escope@2.0.6",
+        "scope": null,
+        "escapedName": "escope",
+        "name": "escope",
+        "rawSpec": "2.0.6",
+        "spec": "2.0.6",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "escope@2.0.6",
+  "_id": "escope@2.0.6",
+  "_inCache": true,
+  "_location": "/grunt-standard/escope",
+  "_npmUser": {
+    "name": "constellation",
+    "email": "utatane.tea@gmail.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "escope@2.0.6",
+    "scope": null,
+    "escapedName": "escope",
+    "name": "escope",
+    "rawSpec": "2.0.6",
+    "spec": "2.0.6",
+    "type": "version"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
+  "_shasum": "c1bac24870605bb384ba073dce0417c9305eddeb",
+  "_shrinkwrap": null,
+  "_spec": "escope@2.0.6",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "bugs": {
+    "url": "https://github.com/estools/escope/issues"
+  },
+  "dependencies": {
+    "es6-map": "^0.1.1",
+    "es6-weak-map": "^0.1.2",
+    "esrecurse": "^1.2.0",
+    "estraverse": ">=1.9.0",
+    "util-extend": "^1.0.1"
+  },
+  "description": "ECMAScript scope analyzer",
+  "devDependencies": {
+    "browserify": "^7.0.0",
+    "chai": "~1.10.0",
+    "coffee-script": "~1.8.0",
+    "esprima": "~1.2.2",
+    "gulp": "~3.8.10",
+    "gulp-eslint": "^0.2.0",
+    "gulp-mocha": "~2.0.0",
+    "jsdoc": "~3.3.0-alpha10",
+    "minimist": "^1.1.0",
+    "vinyl-source-stream": "^1.0.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "c1bac24870605bb384ba073dce0417c9305eddeb",
+    "tarball": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz"
+  },
+  "engines": {
+    "node": ">=0.4.0"
+  },
+  "gitHead": "dc4b85631e98011268fc426dd824c74e353d5b48",
+  "homepage": "http://github.com/estools/escope.html",
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/estools/escope/raw/master/LICENSE.BSD"
+    }
+  ],
+  "main": "escope.js",
+  "maintainers": [
+    {
+      "name": "constellation",
+      "email": "utatane.tea@gmail.com"
+    }
+  ],
+  "name": "escope",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/estools/escope.git"
+  },
+  "scripts": {
+    "jsdoc": "jsdoc escope.js README.md",
+    "lint": "gulp lint",
+    "test": "gulp travis",
+    "unit-test": "gulp test"
+  },
+  "version": "2.0.6"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/eslint/package.json b/wrt/build/node_modules/grunt-standard/node_modules/eslint/package.json
new file mode 100644 (file)
index 0000000..3727c6b
--- /dev/null
@@ -0,0 +1,151 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "eslint@^0.18.0",
+        "scope": null,
+        "escapedName": "eslint",
+        "name": "eslint",
+        "rawSpec": "^0.18.0",
+        "spec": ">=0.18.0 <0.19.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "eslint@>=0.18.0 <0.19.0",
+  "_id": "eslint@0.18.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/eslint",
+  "_npmUser": {
+    "name": "nzakas",
+    "email": "nicholas@nczconsulting.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "eslint@^0.18.0",
+    "scope": null,
+    "escapedName": "eslint",
+    "name": "eslint",
+    "rawSpec": "^0.18.0",
+    "spec": ">=0.18.0 <0.19.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "http://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
+  "_shasum": "e1117ccd86af174b0312ffe82509019d5b50759b",
+  "_shrinkwrap": null,
+  "_spec": "eslint@^0.18.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "Nicholas C. Zakas",
+    "email": "nicholas+npm@nczconsulting.com"
+  },
+  "bin": {
+    "eslint": "./bin/eslint.js"
+  },
+  "bugs": {
+    "url": "https://github.com/eslint/eslint/issues/"
+  },
+  "dependencies": {
+    "chalk": "^1.0.0",
+    "concat-stream": "^1.4.6",
+    "debug": "^2.1.1",
+    "doctrine": "^0.6.2",
+    "escape-string-regexp": "^1.0.2",
+    "escope": "2.0.6",
+    "espree": "^1.12.0",
+    "estraverse": "^2.0.0",
+    "estraverse-fb": "^1.3.1",
+    "globals": "^6.1.0",
+    "js-yaml": "^3.2.5",
+    "minimatch": "^2.0.1",
+    "mkdirp": "^0.5.0",
+    "object-assign": "^2.0.0",
+    "optionator": "^0.5.0",
+    "strip-json-comments": "~1.0.1",
+    "text-table": "~0.2.0",
+    "user-home": "^1.0.0",
+    "xml-escape": "~1.0.0"
+  },
+  "description": "An AST-based pattern checker for JavaScript.",
+  "devDependencies": {
+    "beefy": "^1.0.0",
+    "brfs": "0.0.9",
+    "browserify": "^8.1.3",
+    "chai": "^1.9.1",
+    "coveralls": "2.11.2",
+    "dateformat": "^1.0.8",
+    "eslint-tester": "^0.6.0",
+    "esprima-fb": "^10001.1.0-dev-harmony-fb",
+    "istanbul": "^0.3.5",
+    "jsdoc": "^3.3.0-beta1",
+    "jsonlint": "^1.6.2",
+    "mocha": "^2.1.0",
+    "mocha-phantomjs": "^3.5.0",
+    "npm-license": "^0.2.3",
+    "phantomjs": "^1.9.9",
+    "proxyquire": "^1.0.0",
+    "semver": "^4.1.0",
+    "shelljs": "^0.3.0",
+    "shelljs-nodecli": "~0.1.0",
+    "sinon": "^1.12.2",
+    "through": "^2.3.6"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "e1117ccd86af174b0312ffe82509019d5b50759b",
+    "tarball": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz"
+  },
+  "engines": {
+    "node": ">=0.10"
+  },
+  "files": [
+    "LICENSE",
+    "README.md",
+    "bin",
+    "conf",
+    "lib"
+  ],
+  "gitHead": "a5ce647aedd4627143d7928051cadaf86ab30932",
+  "homepage": "http://eslint.org",
+  "keywords": [
+    "ast",
+    "lint",
+    "javascript",
+    "ecmascript",
+    "espree"
+  ],
+  "license": "MIT",
+  "main": "./lib/api.js",
+  "maintainers": [
+    {
+      "name": "nzakas",
+      "email": "nicholas@nczconsulting.com"
+    }
+  ],
+  "name": "eslint",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/eslint/eslint.git"
+  },
+  "scripts": {
+    "browserify": "node Makefile.js browserify",
+    "coveralls": "cat ./coverage/lcov.info | coveralls",
+    "docs": "node Makefile.js docs",
+    "gensite": "node Makefile.js gensite",
+    "lint": "node Makefile.js lint",
+    "major": "node Makefile.js major",
+    "minor": "node Makefile.js minor",
+    "patch": "node Makefile.js patch",
+    "perf": "node Makefile.js perf",
+    "profile": "beefy tests/bench/bench.js --open -- -t brfs -t ./tests/bench/xform-rules.js",
+    "test": "node Makefile.js test"
+  },
+  "version": "0.18.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/espree/package.json b/wrt/build/node_modules/grunt-standard/node_modules/espree/package.json
new file mode 100644 (file)
index 0000000..806d3df
--- /dev/null
@@ -0,0 +1,141 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "espree@^1.12.0",
+        "scope": null,
+        "escapedName": "espree",
+        "name": "espree",
+        "rawSpec": "^1.12.0",
+        "spec": ">=1.12.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "espree@>=1.12.0 <2.0.0",
+  "_id": "espree@1.12.3",
+  "_inCache": true,
+  "_location": "/grunt-standard/espree",
+  "_npmUser": {
+    "name": "nzakas",
+    "email": "nicholas@nczconsulting.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "espree@^1.12.0",
+    "scope": null,
+    "escapedName": "espree",
+    "name": "espree",
+    "rawSpec": "^1.12.0",
+    "spec": ">=1.12.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
+  "_shasum": "04ceeada91bda077a38c040c125ba186b13bb3cc",
+  "_shrinkwrap": null,
+  "_spec": "espree@^1.12.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "Nicholas C. Zakas",
+    "email": "nicholas+npm@nczconsulting.com"
+  },
+  "bin": {
+    "esparse": "./bin/esparse.js",
+    "esvalidate": "./bin/esvalidate.js"
+  },
+  "bugs": {
+    "url": "http://github.com/eslint/espree.git"
+  },
+  "dependencies": {},
+  "description": "An actively-maintained fork of Esprima, the ECMAScript parsing infrastructure for multipurpose analysis",
+  "devDependencies": {
+    "browserify": "^7.0.0",
+    "chai": "^1.10.0",
+    "complexity-report": "~0.6.1",
+    "dateformat": "^1.0.11",
+    "eslint": "^0.9.2",
+    "esprima": "git://github.com/ariya/esprima.git#harmony",
+    "esprima-fb": "^8001.2001.0-dev-harmony-fb",
+    "istanbul": "~0.2.6",
+    "json-diff": "~0.3.1",
+    "leche": "^1.0.1",
+    "mocha": "^2.0.1",
+    "npm-license": "^0.2.3",
+    "optimist": "~0.6.0",
+    "regenerate": "~0.5.4",
+    "semver": "^4.1.1",
+    "shelljs": "^0.3.0",
+    "shelljs-nodecli": "^0.1.1",
+    "unicode-6.3.0": "~0.1.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "04ceeada91bda077a38c040c125ba186b13bb3cc",
+    "tarball": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "bin",
+    "lib",
+    "test/run.js",
+    "test/runner.js",
+    "test/test.js",
+    "test/compat.js",
+    "test/reflect.js",
+    "espree.js"
+  ],
+  "gitHead": "ee8f6d35943ed13af619270e320ce2d6109d6796",
+  "homepage": "https://github.com/eslint/espree",
+  "keywords": [
+    "ast",
+    "ecmascript",
+    "javascript",
+    "parser",
+    "syntax"
+  ],
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/nzakas/espree/raw/master/LICENSE"
+    }
+  ],
+  "main": "espree.js",
+  "maintainers": [
+    {
+      "name": "nzakas",
+      "email": "nicholas@nczconsulting.com"
+    }
+  ],
+  "name": "espree",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/eslint/espree.git"
+  },
+  "scripts": {
+    "analyze-complexity": "node tools/list-complexity.js",
+    "analyze-coverage": "node node_modules/istanbul/lib/cli.js cover test/runner.js",
+    "benchmark": "node test/benchmarks.js",
+    "benchmark-quick": "node test/benchmarks.js quick",
+    "browserify": "node Makefile.js browserify",
+    "check-complexity": "node node_modules/complexity-report/src/cli.js --maxcc 14 --silent -l -w espree.js",
+    "check-coverage": "node node_modules/istanbul/lib/cli.js check-coverage --statement 99 --branch 99 --function 99",
+    "complexity": "npm run-script analyze-complexity && npm run-script check-complexity",
+    "coverage": "npm run-script analyze-coverage && npm run-script check-coverage",
+    "generate-regex": "node tools/generate-identifier-regex.js",
+    "lint": "node Makefile.js lint",
+    "major": "node Makefile.js major",
+    "minor": "node Makefile.js minor",
+    "patch": "node Makefile.js patch",
+    "test": "npm run-script lint && node Makefile.js test && node test/run.js"
+  },
+  "version": "1.12.3"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/esrecurse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/esrecurse/package.json
new file mode 100644 (file)
index 0000000..9e5744b
--- /dev/null
@@ -0,0 +1,96 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esrecurse@^1.2.0",
+        "scope": null,
+        "escapedName": "esrecurse",
+        "name": "esrecurse",
+        "rawSpec": "^1.2.0",
+        "spec": ">=1.2.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope"
+    ]
+  ],
+  "_from": "esrecurse@>=1.2.0 <2.0.0",
+  "_id": "esrecurse@1.2.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/esrecurse",
+  "_npmUser": {
+    "name": "constellation",
+    "email": "utatane.tea@gmail.com"
+  },
+  "_npmVersion": "2.0.0-alpha-5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esrecurse@^1.2.0",
+    "scope": null,
+    "escapedName": "esrecurse",
+    "name": "esrecurse",
+    "rawSpec": "^1.2.0",
+    "spec": ">=1.2.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/escope"
+  ],
+  "_resolved": "http://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
+  "_shasum": "25e3b3ab76ad8a1da2d38e9393fd76b8456a706f",
+  "_shrinkwrap": null,
+  "_spec": "esrecurse@^1.2.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope",
+  "bugs": {
+    "url": "https://github.com/estools/esrecurse/issues"
+  },
+  "dependencies": {
+    "estraverse": ">=1.9.0"
+  },
+  "description": "ECMAScript scope analyzer",
+  "devDependencies": {
+    "chai": "~1.10.0",
+    "coffee-script": "~1.8.0",
+    "esprima": "~1.2.2",
+    "gulp": "~3.8.10",
+    "gulp-eslint": "^0.2.0",
+    "gulp-mocha": "~2.0.0",
+    "jsdoc": "~3.3.0-alpha10",
+    "minimist": "^1.1.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "25e3b3ab76ad8a1da2d38e9393fd76b8456a706f",
+    "tarball": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "gitHead": "9b363cee6d6b6b29b5236f4b98066ba0735fe9e4",
+  "homepage": "http://github.com/estools/esrecurse",
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/estools/esrecurse/raw/master/LICENSE.BSD"
+    }
+  ],
+  "main": "esrecurse.js",
+  "maintainers": [
+    {
+      "name": "constellation",
+      "email": "utatane.tea@gmail.com"
+    }
+  ],
+  "name": "esrecurse",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/estools/esrecurse.git"
+  },
+  "scripts": {
+    "lint": "gulp lint",
+    "test": "gulp travis",
+    "unit-test": "gulp test"
+  },
+  "version": "1.2.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/estraverse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/estraverse/package.json
new file mode 100644 (file)
index 0000000..e92eb72
--- /dev/null
@@ -0,0 +1,98 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "estraverse@^2.0.0",
+        "scope": null,
+        "escapedName": "estraverse",
+        "name": "estraverse",
+        "rawSpec": "^2.0.0",
+        "spec": ">=2.0.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "estraverse@>=2.0.0 <3.0.0",
+  "_id": "estraverse@2.0.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/estraverse",
+  "_npmUser": {
+    "name": "constellation",
+    "email": "utatane.tea@gmail.com"
+  },
+  "_npmVersion": "2.0.0-alpha-5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "estraverse@^2.0.0",
+    "scope": null,
+    "escapedName": "estraverse",
+    "name": "estraverse",
+    "rawSpec": "^2.0.0",
+    "spec": ">=2.0.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/escope",
+    "/grunt-standard/eslint",
+    "/grunt-standard/esrecurse"
+  ],
+  "_resolved": "http://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
+  "_shasum": "5ae46963243600206674ccb24a09e16674fcdca1",
+  "_shrinkwrap": null,
+  "_spec": "estraverse@^2.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "bugs": {
+    "url": "https://github.com/estools/estraverse/issues"
+  },
+  "dependencies": {},
+  "description": "ECMAScript JS AST traversal functions",
+  "devDependencies": {
+    "chai": "^2.1.1",
+    "coffee-script": "^1.8.0",
+    "espree": "^1.11.0",
+    "gulp": "^3.8.10",
+    "gulp-bump": "^0.2.2",
+    "gulp-filter": "^2.0.0",
+    "gulp-git": "^1.0.1",
+    "gulp-tag-version": "^1.2.1",
+    "jshint": "^2.5.6",
+    "mocha": "^2.1.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "5ae46963243600206674ccb24a09e16674fcdca1",
+    "tarball": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "gitHead": "d8bc726f126817cc03c7a4e751528edb19db0ffb",
+  "homepage": "https://github.com/estools/estraverse",
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/estools/estraverse/raw/master/LICENSE.BSD"
+    }
+  ],
+  "main": "estraverse.js",
+  "maintainers": [
+    {
+      "name": "constellation",
+      "email": "utatane.tea@gmail.com"
+    }
+  ],
+  "name": "estraverse",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/estools/estraverse.git"
+  },
+  "scripts": {
+    "lint": "jshint estraverse.js",
+    "test": "npm run-script lint && npm run-script unit-test",
+    "unit-test": "mocha --compilers coffee:coffee-script/register"
+  },
+  "version": "2.0.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/esutils/package.json b/wrt/build/node_modules/grunt-standard/node_modules/esutils/package.json
new file mode 100644 (file)
index 0000000..5794fd2
--- /dev/null
@@ -0,0 +1,100 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esutils@^1.1.6",
+        "scope": null,
+        "escapedName": "esutils",
+        "name": "esutils",
+        "rawSpec": "^1.1.6",
+        "spec": ">=1.1.6 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/doctrine"
+    ]
+  ],
+  "_from": "esutils@>=1.1.6 <2.0.0",
+  "_id": "esutils@1.1.6",
+  "_inCache": true,
+  "_location": "/grunt-standard/esutils",
+  "_npmUser": {
+    "name": "constellation",
+    "email": "utatane.tea@gmail.com"
+  },
+  "_npmVersion": "2.0.0-alpha-5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esutils@^1.1.6",
+    "scope": null,
+    "escapedName": "esutils",
+    "name": "esutils",
+    "rawSpec": "^1.1.6",
+    "spec": ">=1.1.6 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/doctrine"
+  ],
+  "_resolved": "http://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
+  "_shasum": "c01ccaa9ae4b897c6d0c3e210ae52f3c7a844375",
+  "_shrinkwrap": null,
+  "_spec": "esutils@^1.1.6",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/doctrine",
+  "bugs": {
+    "url": "https://github.com/Constellation/esutils/issues"
+  },
+  "dependencies": {},
+  "description": "utility box for ECMAScript language tools",
+  "devDependencies": {
+    "chai": "~1.7.2",
+    "coffee-script": "~1.6.3",
+    "jshint": "2.1.5",
+    "mocha": "~1.12.0",
+    "regenerate": "~0.5.4",
+    "unicode-6.3.0": "~0.1.1"
+  },
+  "directories": {
+    "lib": "./lib"
+  },
+  "dist": {
+    "shasum": "c01ccaa9ae4b897c6d0c3e210ae52f3c7a844375",
+    "tarball": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "LICENSE.BSD",
+    "README.md",
+    "lib"
+  ],
+  "gitHead": "a91c5ed6199d1019ef071f610848fcd5103ef153",
+  "homepage": "https://github.com/Constellation/esutils",
+  "licenses": [
+    {
+      "type": "BSD",
+      "url": "http://github.com/Constellation/esutils/raw/master/LICENSE.BSD"
+    }
+  ],
+  "main": "lib/utils.js",
+  "maintainers": [
+    {
+      "name": "constellation",
+      "email": "utatane.tea@gmail.com"
+    }
+  ],
+  "name": "esutils",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+ssh://git@github.com/Constellation/esutils.git"
+  },
+  "scripts": {
+    "generate-regex": "node tools/generate-identifier-regex.js",
+    "lint": "jshint lib/*.js",
+    "test": "npm run-script lint && npm run-script unit-test",
+    "unit-test": "mocha --compilers coffee:coffee-script -R spec"
+  },
+  "version": "1.1.6"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/globals/package.json b/wrt/build/node_modules/grunt-standard/node_modules/globals/package.json
new file mode 100644 (file)
index 0000000..64c5c35
--- /dev/null
@@ -0,0 +1,107 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "globals@^6.1.0",
+        "scope": null,
+        "escapedName": "globals",
+        "name": "globals",
+        "rawSpec": "^6.1.0",
+        "spec": ">=6.1.0 <7.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "globals@>=6.1.0 <7.0.0",
+  "_id": "globals@6.4.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/globals",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "2.5.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "globals@^6.1.0",
+    "scope": null,
+    "escapedName": "globals",
+    "name": "globals",
+    "rawSpec": "^6.1.0",
+    "spec": ">=6.1.0 <7.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
+  "_shasum": "8498032b3b6d1cc81eebc5f79690d8fe29fabf4f",
+  "_shrinkwrap": null,
+  "_spec": "globals@^6.1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/globals/issues"
+  },
+  "dependencies": {},
+  "description": "Global identifiers from different JavaScript environments",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "8498032b3b6d1cc81eebc5f79690d8fe29fabf4f",
+    "tarball": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js",
+    "globals.json"
+  ],
+  "gitHead": "c8e9f2aba0eaea2a732452667a386178ddd6bcb7",
+  "homepage": "https://github.com/sindresorhus/globals",
+  "keywords": [
+    "globals",
+    "global",
+    "identifiers",
+    "variables",
+    "vars",
+    "jshint",
+    "eslint",
+    "environments"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    },
+    {
+      "name": "nzakas",
+      "email": "nicholas@nczconsulting.com"
+    },
+    {
+      "name": "lo1tuma",
+      "email": "schreck.mathias@gmail.com"
+    }
+  ],
+  "name": "globals",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/globals.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "6.4.1"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/grunt-legacy-log/node_modules/underscore.string/libpeerconnection.log b/wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/grunt-legacy-log/node_modules/underscore.string/libpeerconnection.log
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log b/wrt/build/node_modules/grunt-standard/node_modules/grunt/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/has-ansi/package.json b/wrt/build/node_modules/grunt-standard/node_modules/has-ansi/package.json
new file mode 100644 (file)
index 0000000..605115e
--- /dev/null
@@ -0,0 +1,125 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "has-ansi@^1.0.3",
+        "scope": null,
+        "escapedName": "has-ansi",
+        "name": "has-ansi",
+        "rawSpec": "^1.0.3",
+        "spec": ">=1.0.3 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk"
+    ]
+  ],
+  "_from": "has-ansi@>=1.0.3 <2.0.0",
+  "_id": "has-ansi@1.0.3",
+  "_inCache": true,
+  "_location": "/grunt-standard/has-ansi",
+  "_nodeVersion": "0.10.35",
+  "_npmUser": {
+    "name": "jbnicolai",
+    "email": "jappelman@xebia.com"
+  },
+  "_npmVersion": "2.1.16",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "has-ansi@^1.0.3",
+    "scope": null,
+    "escapedName": "has-ansi",
+    "name": "has-ansi",
+    "rawSpec": "^1.0.3",
+    "spec": ">=1.0.3 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/chalk"
+  ],
+  "_resolved": "http://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz",
+  "_shasum": "c0b5b1615d9e382b0ff67169d967b425e48ca538",
+  "_shrinkwrap": null,
+  "_spec": "has-ansi@^1.0.3",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bin": {
+    "has-ansi": "cli.js"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/has-ansi/issues"
+  },
+  "dependencies": {
+    "ansi-regex": "^1.1.0",
+    "get-stdin": "^4.0.1"
+  },
+  "description": "Check if a string has ANSI escape codes",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "c0b5b1615d9e382b0ff67169d967b425e48ca538",
+    "tarball": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js",
+    "cli.js"
+  ],
+  "gitHead": "416428ed16f8e9718aec54cea083173af6019917",
+  "homepage": "https://github.com/sindresorhus/has-ansi",
+  "keywords": [
+    "cli",
+    "bin",
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "string",
+    "tty",
+    "escape",
+    "shell",
+    "xterm",
+    "command-line",
+    "text",
+    "regex",
+    "regexp",
+    "re",
+    "match",
+    "test",
+    "find",
+    "pattern",
+    "has"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    },
+    {
+      "name": "jbnicolai",
+      "email": "jappelman@xebia.com"
+    }
+  ],
+  "name": "has-ansi",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/has-ansi.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "1.0.3"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/CHANGELOG.md
new file mode 100644 (file)
index 0000000..1f31dfe
--- /dev/null
@@ -0,0 +1,463 @@
+3.10.0 / 2017-09-10
+-------------------
+
+- Fix `condenseFlow` output (quote keys for sure, instead of spaces), #371, #370.
+- Dump astrals as codepoints instead of surrogate pair, #368.
+
+
+3.9.1 / 2017-07-08
+------------------
+
+- Ensure stack is present for custom errors in node 7.+, #351.
+
+
+3.9.0 / 2017-07-08
+------------------
+
+- Add `condenseFlow` option (to create pretty URL query params), #346.
+- Support array return from safeLoadAll/loadAll, #350.
+
+
+3.8.4 / 2017-05-08
+------------------
+
+- Dumper: prevent space after dash for arrays that wrap, #343.
+
+
+3.8.3 / 2017-04-05
+------------------
+
+- Should not allow numbers to begin and end with underscore, #335.
+
+
+3.8.2 / 2017-03-02
+------------------
+
+- Fix `!!float 123` (integers) parse, #333.
+- Don't allow leading zeros in floats (except 0, 0.xxx).
+- Allow positive exponent without sign in floats.
+
+
+3.8.1 / 2017-02-07
+------------------
+
+- Maintenance: update browserified build.
+
+
+3.8.0 / 2017-02-07
+------------------
+
+- Fix reported position for `duplicated mapping key` errors.
+  Now points to block start instead of block end.
+  (#243, thanks to @shockey).
+
+
+3.7.0 / 2016-11-12
+------------------
+
+- Fix parsing of quotes followed by newlines (#304, thanks to @dplepage).
+- Support polymorphism for tags (#300, thanks to @monken).
+
+
+3.6.1 / 2016-05-11
+------------------
+
+- Fix output cut on a pipe, #286.
+
+
+3.6.0 / 2016-04-16
+------------------
+
+- Dumper rewrite, fix multiple bugs with trailing `\n`.
+  Big thanks to @aepsilon!
+- Loader: fix leading/trailing newlines in block scalars, @aepsilon.
+
+
+3.5.5 / 2016-03-17
+------------------
+
+- Date parse fix: don't allow dates with on digit in month and day, #268.
+
+
+3.5.4 / 2016-03-09
+------------------
+
+- `noCompatMode` for dumper, to disable quoting YAML 1.1 values.
+
+
+3.5.3 / 2016-02-11
+------------------
+
+- Maintenance release.
+
+
+3.5.2 / 2016-01-11
+------------------
+
+- Maintenance: missed comma in bower config.
+
+
+3.5.1 / 2016-01-11
+------------------
+
+- Removed `inherit` dependency, #239.
+- Better browserify workaround for esprima load.
+- Demo rewrite.
+
+
+3.5.0 / 2016-01-10
+------------------
+
+- Dumper. Fold strings only, #217.
+- Dumper. `norefs` option, to clone linked objects, #229.
+- Loader. Throw a warning for duplicate keys, #166.
+- Improved browserify support (mark `esprima` & `Buffer` excluded).
+
+
+3.4.6 / 2015-11-26
+------------------
+
+- Use standalone `inherit` to keep browserified files clear.
+
+
+3.4.5 / 2015-11-23
+------------------
+
+- Added `lineWidth` option to dumper.
+
+
+3.4.4 / 2015-11-21
+------------------
+
+- Fixed floats dump (missed dot for scientific format), #220.
+- Allow non-printable characters inside quoted scalars, #192.
+
+
+3.4.3 / 2015-10-10
+------------------
+
+- Maintenance release - deps bump (esprima, argparse).
+
+
+3.4.2 / 2015-09-09
+------------------
+
+- Fixed serialization of duplicated entries in sequences, #205.
+  Thanks to @vogelsgesang.
+
+
+3.4.1 / 2015-09-05
+------------------
+
+- Fixed stacktrace handling in generated errors, for browsers (FF/IE).
+
+
+3.4.0 / 2015-08-23
+------------------
+
+- Fixed multiline keys dump, #197. Thanks to @tcr.
+- Don't throw on warnongs anymore. Use `onWarning` option to catch.
+- Throw error on unknown tags (was warning before).
+- Fixed heading line breaks in some scalars (regression).
+- Reworked internals of error class.
+
+
+3.3.1 / 2015-05-13
+------------------
+
+- Added `.sortKeys` dumper option, thanks to @rjmunro.
+- Fixed astral characters support, #191.
+
+
+3.3.0 / 2015-04-26
+------------------
+
+- Significantly improved long strings formatting in dumper, thanks to @isaacs.
+- Strip BOM if exists.
+
+
+3.2.7 / 2015-02-19
+------------------
+
+- Maintenance release.
+- Updated dependencies.
+- HISTORY.md -> CHANGELOG.md
+
+
+3.2.6 / 2015-02-07
+------------------
+
+- Fixed encoding of UTF-16 surrogate pairs. (e.g. "\U0001F431" CAT FACE).
+- Fixed demo dates dump (#113, thanks to @Hypercubed).
+
+
+3.2.5 / 2014-12-28
+------------------
+
+- Fixed resolving of all built-in types on empty nodes.
+- Fixed invalid warning on empty lines within quoted scalars and flow collections.
+- Fixed bug: Tag on an empty node didn't resolve in some cases.
+
+
+3.2.4 / 2014-12-19
+------------------
+
+- Fixed resolving of !!null tag on an empty node.
+
+
+3.2.3 / 2014-11-08
+------------------
+
+- Implemented dumping of objects with circular and cross references.
+- Partially fixed aliasing of constructed objects. (see issue #141 for details)
+
+
+3.2.2 / 2014-09-07
+------------------
+
+- Fixed infinite loop on unindented block scalars.
+- Rewritten base64 encode/decode in binary type, to keep code licence clear.
+
+
+3.2.1 / 2014-08-24
+------------------
+
+- Nothig new. Just fix npm publish error.
+
+
+3.2.0 / 2014-08-24
+------------------
+
+- Added input piping support to CLI.
+- Fixed typo, that could cause hand on initial indent (#139).
+
+
+3.1.0 / 2014-07-07
+------------------
+
+- 1.5x-2x speed boost.
+- Removed deprecated `require('xxx.yml')` support.
+- Significant code cleanup and refactoring.
+- Internal API changed. If you used custom types - see updated examples.
+  Others are not affected.
+- Even if the input string has no trailing line break character,
+  it will be parsed as if it has one.
+- Added benchmark scripts.
+- Moved bower files to /dist folder
+- Bugfixes.
+
+
+3.0.2 / 2014-02-27
+------------------
+
+- Fixed bug: "constructor" string parsed as `null`.
+
+
+3.0.1 / 2013-12-22
+------------------
+
+- Fixed parsing of literal scalars. (issue #108)
+- Prevented adding unnecessary spaces in object dumps. (issue #68)
+- Fixed dumping of objects with very long (> 1024 in length) keys.
+
+
+3.0.0 / 2013-12-16
+------------------
+
+- Refactored code. Changed API for custom types.
+- Removed output colors in CLI, dump json by default.
+- Removed big dependencies from browser version (esprima, buffer)
+  - load `esprima` manually, if !!js/function needed
+  - !!bin now returns Array in browser
+- AMD support.
+- Don't quote dumped strings because of `-` & `?` (if not first char).
+- __Deprecated__ loading yaml files via `require()`, as not recommended
+  behaviour for node.
+
+
+2.1.3 / 2013-10-16
+------------------
+
+- Fix wrong loading of empty block scalars.
+
+
+2.1.2 / 2013-10-07
+------------------
+
+- Fix unwanted line breaks in folded scalars.
+
+
+2.1.1 / 2013-10-02
+------------------
+
+- Dumper now respects deprecated booleans syntax from YAML 1.0/1.1
+- Fixed reader bug in JSON-like sequences/mappings.
+
+
+2.1.0 / 2013-06-05
+------------------
+
+- Add standard YAML schemas: Failsafe (`FAILSAFE_SCHEMA`),
+  JSON (`JSON_SCHEMA`) and Core (`CORE_SCHEMA`).
+- Rename `DEFAULT_SCHEMA` to `DEFAULT_FULL_SCHEMA`
+  and `SAFE_SCHEMA` to `DEFAULT_SAFE_SCHEMA`.
+- Bug fix: export `NIL` constant from the public interface.
+- Add `skipInvalid` dumper option.
+- Use `safeLoad` for `require` extension.
+
+
+2.0.5 / 2013-04-26
+------------------
+
+- Close security issue in !!js/function constructor.
+  Big thanks to @nealpoole for security audit.
+
+
+2.0.4 / 2013-04-08
+------------------
+
+- Updated .npmignore to reduce package size
+
+
+2.0.3 / 2013-02-26
+------------------
+
+- Fixed dumping of empty arrays ans objects. ([] and {} instead of null)
+
+
+2.0.2 / 2013-02-15
+------------------
+
+- Fixed input validation: tabs are printable characters.
+
+
+2.0.1 / 2013-02-09
+------------------
+
+- Fixed error, when options not passed to function cass
+
+
+2.0.0 / 2013-02-09
+------------------
+
+- Full rewrite. New architecture. Fast one-stage parsing.
+- Changed custom types API.
+- Added YAML dumper.
+
+
+1.0.3 / 2012-11-05
+------------------
+
+- Fixed utf-8 files loading.
+
+
+1.0.2 / 2012-08-02
+------------------
+
+- Pull out hand-written shims. Use ES5-Shims for old browsers support. See #44.
+- Fix timstamps incorectly parsed in local time when no time part specified.
+
+
+1.0.1 / 2012-07-07
+------------------
+
+- Fixes `TypeError: 'undefined' is not an object` under Safari. Thanks Phuong.
+- Fix timestamps incorrectly parsed in local time. Thanks @caolan. Closes #46.
+
+
+1.0.0 / 2012-07-01
+------------------
+
+- `y`, `yes`, `n`, `no`, `on`, `off` are not converted to Booleans anymore.
+  Fixes #42.
+- `require(filename)` now returns a single document and throws an Error if
+  file contains more than one document.
+- CLI was merged back from js-yaml.bin
+
+
+0.3.7 / 2012-02-28
+------------------
+
+- Fix export of `addConstructor()`. Closes #39.
+
+
+0.3.6 / 2012-02-22
+------------------
+
+- Removed AMD parts - too buggy to use. Need help to rewrite from scratch
+- Removed YUI compressor warning (renamed `double` variable). Closes #40.
+
+
+0.3.5 / 2012-01-10
+------------------
+
+- Workagound for .npmignore fuckup under windows. Thanks to airportyh.
+
+
+0.3.4 / 2011-12-24
+------------------
+
+- Fixes str[] for oldIEs support.
+- Adds better has change support for browserified demo.
+- improves compact output of Error. Closes #33.
+
+
+0.3.3 / 2011-12-20
+------------------
+
+- jsyaml executable moved to separate module.
+- adds `compact` stringification of Errors.
+
+
+0.3.2 / 2011-12-16
+------------------
+
+- Fixes ug with block style scalars. Closes #26.
+- All sources are passing JSLint now.
+- Fixes bug in Safari. Closes #28.
+- Fixes bug in Opers. Closes #29.
+- Improves browser support. Closes #20.
+- Added jsyaml executable.
+- Added !!js/function support. Closes #12.
+
+
+0.3.1 / 2011-11-18
+------------------
+
+- Added AMD support for browserified version.
+- Wrapped browserified js-yaml into closure.
+- Fixed the resolvement of non-specific tags. Closes #17.
+- Added permalinks for online demo YAML snippets. Now we have YPaste service, lol.
+- Added !!js/regexp and !!js/undefined types. Partially solves #12.
+- Fixed !!set mapping.
+- Fixed month parse in dates. Closes #19.
+
+
+0.3.0 / 2011-11-09
+------------------
+
+- Removed JS.Class dependency. Closes #3.
+- Added browserified version. Closes #13.
+- Added live demo of browserified version.
+- Ported some of the PyYAML tests. See #14.
+- Fixed timestamp bug when fraction was given.
+
+
+0.2.2 / 2011-11-06
+------------------
+
+- Fixed crash on docs without ---. Closes #8.
+- Fixed miltiline string parse
+- Fixed tests/comments for using array as key
+
+
+0.2.1 / 2011-11-02
+------------------
+
+- Fixed short file read (<4k). Closes #9.
+
+
+0.2.0 / 2011-11-02
+------------------
+
+- First public release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/README.md b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/README.md
new file mode 100644 (file)
index 0000000..cf73ebd
--- /dev/null
@@ -0,0 +1,313 @@
+JS-YAML - YAML 1.2 parser / writer for JavaScript
+=================================================
+
+[![Build Status](https://travis-ci.org/nodeca/js-yaml.svg?branch=master)](https://travis-ci.org/nodeca/js-yaml)
+[![NPM version](https://img.shields.io/npm/v/js-yaml.svg)](https://www.npmjs.org/package/js-yaml)
+
+__[Online Demo](http://nodeca.github.com/js-yaml/)__
+
+
+This is an implementation of [YAML](http://yaml.org/), a human-friendly data
+serialization language. Started as [PyYAML](http://pyyaml.org/) port, it was
+completely rewritten from scratch. Now it's very fast, and supports 1.2 spec.
+
+
+Installation
+------------
+
+### YAML module for node.js
+
+```
+npm install js-yaml
+```
+
+
+### CLI executable
+
+If you want to inspect your YAML files from CLI, install js-yaml globally:
+
+```
+npm install -g js-yaml
+```
+
+#### Usage
+
+```
+usage: js-yaml [-h] [-v] [-c] [-t] file
+
+Positional arguments:
+  file           File with YAML document(s)
+
+Optional arguments:
+  -h, --help     Show this help message and exit.
+  -v, --version  Show program's version number and exit.
+  -c, --compact  Display errors in compact mode
+  -t, --trace    Show stack trace on error
+```
+
+
+### Bundled YAML library for browsers
+
+``` html
+<!-- esprima required only for !!js/function -->
+<script src="esprima.js"></script>
+<script src="js-yaml.min.js"></script>
+<script type="text/javascript">
+var doc = jsyaml.load('greeting: hello\nname: world');
+</script>
+```
+
+Browser support was done mostly for the online demo. If you find any errors - feel
+free to send pull requests with fixes. Also note, that IE and other old browsers
+needs [es5-shims](https://github.com/kriskowal/es5-shim) to operate.
+
+Notes:
+
+1. We have no resources to support browserified version. Don't expect it to be
+   well tested. Don't expect fast fixes if something goes wrong there.
+2. `!!js/function` in browser bundle will not work by default. If you really need
+   it - load `esprima` parser first (via amd or directly).
+3. `!!bin` in browser will return `Array`, because browsers do not support
+   node.js `Buffer` and adding Buffer shims is completely useless on practice.
+
+
+API
+---
+
+Here we cover the most 'useful' methods. If you need advanced details (creating
+your own tags), see [wiki](https://github.com/nodeca/js-yaml/wiki) and
+[examples](https://github.com/nodeca/js-yaml/tree/master/examples) for more
+info.
+
+``` javascript
+yaml = require('js-yaml');
+fs   = require('fs');
+
+// Get document, or throw exception on error
+try {
+  var doc = yaml.safeLoad(fs.readFileSync('/home/ixti/example.yml', 'utf8'));
+  console.log(doc);
+} catch (e) {
+  console.log(e);
+}
+```
+
+
+### safeLoad (string [ , options ])
+
+**Recommended loading way.** Parses `string` as single YAML document. Returns a JavaScript
+object or throws `YAMLException` on error. By default, does not support regexps,
+functions and undefined. This method is safe for untrusted data.
+
+options:
+
+- `filename` _(default: null)_ - string to be used as a file path in
+  error/warning messages.
+- `onWarning` _(default: null)_ - function to call on warning messages.
+  Loader will throw on warnings if this function is not provided.
+- `schema` _(default: `DEFAULT_SAFE_SCHEMA`)_ - specifies a schema to use.
+  - `FAILSAFE_SCHEMA` - only strings, arrays and plain objects:
+    http://www.yaml.org/spec/1.2/spec.html#id2802346
+  - `JSON_SCHEMA` - all JSON-supported types:
+    http://www.yaml.org/spec/1.2/spec.html#id2803231
+  - `CORE_SCHEMA` - same as `JSON_SCHEMA`:
+    http://www.yaml.org/spec/1.2/spec.html#id2804923
+  - `DEFAULT_SAFE_SCHEMA` - all supported YAML types, without unsafe ones
+    (`!!js/undefined`, `!!js/regexp` and `!!js/function`):
+    http://yaml.org/type/
+  - `DEFAULT_FULL_SCHEMA` - all supported YAML types.
+- `json` _(default: false)_ - compatibility with JSON.parse behaviour. If true, then duplicate keys in a mapping will override values rather than throwing an error.
+
+NOTE: This function **does not** understand multi-document sources, it throws
+exception on those.
+
+NOTE: JS-YAML **does not** support schema-specific tag resolution restrictions.
+So, the JSON schema is not as strictly defined in the YAML specification.
+It allows numbers in any notation, use `Null` and `NULL` as `null`, etc.
+The core schema also has no such restrictions. It allows binary notation for integers.
+
+
+### load (string [ , options ])
+
+**Use with care with untrusted sources**. The same as `safeLoad()` but uses
+`DEFAULT_FULL_SCHEMA` by default - adds some JavaScript-specific types:
+`!!js/function`, `!!js/regexp` and `!!js/undefined`. For untrusted sources, you
+must additionally validate object structure to avoid injections:
+
+``` javascript
+var untrusted_code = '"toString": !<tag:yaml.org,2002:js/function> "function (){very_evil_thing();}"';
+
+// I'm just converting that string, what could possibly go wrong?
+require('js-yaml').load(untrusted_code) + ''
+```
+
+
+### safeLoadAll (string [, iterator] [, options ])
+
+Same as `safeLoad()`, but understands multi-document sources. Applies
+`iterator` to each document if specified, or returns array of documents.
+
+``` javascript
+var yaml = require('js-yaml');
+
+yaml.safeLoadAll(data, function (doc) {
+  console.log(doc);
+});
+```
+
+
+### loadAll (string [, iterator] [ , options ])
+
+Same as `safeLoadAll()` but uses `DEFAULT_FULL_SCHEMA` by default.
+
+
+### safeDump (object [ , options ])
+
+Serializes `object` as a YAML document. Uses `DEFAULT_SAFE_SCHEMA`, so it will
+throw an exception if you try to dump regexps or functions. However, you can
+disable exceptions by setting the `skipInvalid` option to `true`.
+
+options:
+
+- `indent` _(default: 2)_ - indentation width to use (in spaces).
+- `skipInvalid` _(default: false)_ - do not throw on invalid types (like function
+  in the safe schema) and skip pairs and single values with such types.
+- `flowLevel` (default: -1) - specifies level of nesting, when to switch from
+  block to flow style for collections. -1 means block style everwhere
+- `styles` - "tag" => "style" map. Each tag may have own set of styles.
+- `schema` _(default: `DEFAULT_SAFE_SCHEMA`)_ specifies a schema to use.
+- `sortKeys` _(default: `false`)_ - if `true`, sort keys when dumping YAML. If a
+  function, use the function to sort the keys.
+- `lineWidth` _(default: `80`)_ - set max line width.
+- `noRefs` _(default: `false`)_ - if `true`, don't convert duplicate objects into references
+- `noCompatMode` _(default: `false`)_ - if `true` don't try to be compatible with older
+  yaml versions. Currently: don't quote "yes", "no" and so on, as required for YAML 1.1
+- `condenseFlow` _(default: `false`)_ - if `true` flow sequences will be condensed, omitting the space between `a, b`. Eg. `'[a,b]'`, and omitting the space between `key: value` and quoting the key. Eg. `'{"a":b}'` Can be useful when using yaml for pretty URL query params as spaces are %-encoded.
+
+The following table show availlable styles (e.g. "canonical",
+"binary"...) available for each tag (.e.g. !!null, !!int ...). Yaml
+ouput is shown on the right side after `=>` (default setting) or `->`:
+
+``` none
+!!null
+  "canonical"   -> "~"
+  "lowercase"   => "null"
+  "uppercase"   -> "NULL"
+  "camelcase"   -> "Null"
+
+!!int
+  "binary"      -> "0b1", "0b101010", "0b1110001111010"
+  "octal"       -> "01", "052", "016172"
+  "decimal"     => "1", "42", "7290"
+  "hexadecimal" -> "0x1", "0x2A", "0x1C7A"
+
+!!bool
+  "lowercase"   => "true", "false"
+  "uppercase"   -> "TRUE", "FALSE"
+  "camelcase"   -> "True", "False"
+
+!!float
+  "lowercase"   => ".nan", '.inf'
+  "uppercase"   -> ".NAN", '.INF'
+  "camelcase"   -> ".NaN", '.Inf'
+```
+
+Example:
+
+``` javascript
+safeDump (object, {
+  'styles': {
+    '!!null': 'canonical' // dump null as ~
+  },
+  'sortKeys': true        // sort object keys
+});
+```
+
+### dump (object [ , options ])
+
+Same as `safeDump()` but without limits (uses `DEFAULT_FULL_SCHEMA` by default).
+
+
+Supported YAML types
+--------------------
+
+The list of standard YAML tags and corresponding JavaScipt types. See also
+[YAML tag discussion](http://pyyaml.org/wiki/YAMLTagDiscussion) and
+[YAML types repository](http://yaml.org/type/).
+
+```
+!!null ''                   # null
+!!bool 'yes'                # bool
+!!int '3...'                # number
+!!float '3.14...'           # number
+!!binary '...base64...'     # buffer
+!!timestamp 'YYYY-...'      # date
+!!omap [ ... ]              # array of key-value pairs
+!!pairs [ ... ]             # array or array pairs
+!!set { ... }               # array of objects with given keys and null values
+!!str '...'                 # string
+!!seq [ ... ]               # array
+!!map { ... }               # object
+```
+
+**JavaScript-specific tags**
+
+```
+!!js/regexp /pattern/gim            # RegExp
+!!js/undefined ''                   # Undefined
+!!js/function 'function () {...}'   # Function
+```
+
+Caveats
+-------
+
+Note, that you use arrays or objects as key in JS-YAML. JS does not allow objects
+or arrays as keys, and stringifies (by calling `toString()` method) them at the
+moment of adding them.
+
+``` yaml
+---
+? [ foo, bar ]
+: - baz
+? { foo: bar }
+: - baz
+  - baz
+```
+
+``` javascript
+{ "foo,bar": ["baz"], "[object Object]": ["baz", "baz"] }
+```
+
+Also, reading of properties on implicit block mapping keys is not supported yet.
+So, the following YAML document cannot be loaded.
+
+``` yaml
+&anchor foo:
+  foo: bar
+  *anchor: duplicate key
+  baz: bat
+  *anchor: duplicate key
+```
+
+
+Breaking changes in 2.x.x -> 3.x.x
+----------------------------------
+
+If you have not used __custom__ tags or loader classes and not loaded yaml
+files via `require()`, no changes are needed. Just upgrade the library.
+
+Otherwise, you should:
+
+1. Replace all occurrences of `require('xxxx.yml')` by `fs.readFileSync()` +
+  `yaml.safeLoad()`.
+2. rewrite your custom tags constructors and custom loader
+  classes, to conform the new API. See
+  [examples](https://github.com/nodeca/js-yaml/tree/master/examples) and
+  [wiki](https://github.com/nodeca/js-yaml/wiki) for details.
+
+
+License
+-------
+
+View the [LICENSE](https://github.com/nodeca/js-yaml/blob/master/LICENSE) file
+(MIT).
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/bin/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/bin/js-yaml.js
new file mode 100755 (executable)
index 0000000..e79186b
--- /dev/null
@@ -0,0 +1,132 @@
+#!/usr/bin/env node
+
+
+'use strict';
+
+/*eslint-disable no-console*/
+
+
+// stdlib
+var fs    = require('fs');
+
+
+// 3rd-party
+var argparse = require('argparse');
+
+
+// internal
+var yaml = require('..');
+
+
+////////////////////////////////////////////////////////////////////////////////
+
+
+var cli = new argparse.ArgumentParser({
+  prog:     'js-yaml',
+  version:  require('../package.json').version,
+  addHelp:  true
+});
+
+
+cli.addArgument([ '-c', '--compact' ], {
+  help:   'Display errors in compact mode',
+  action: 'storeTrue'
+});
+
+
+// deprecated (not needed after we removed output colors)
+// option suppressed, but not completely removed for compatibility
+cli.addArgument([ '-j', '--to-json' ], {
+  help:   argparse.Const.SUPPRESS,
+  dest:   'json',
+  action: 'storeTrue'
+});
+
+
+cli.addArgument([ '-t', '--trace' ], {
+  help:   'Show stack trace on error',
+  action: 'storeTrue'
+});
+
+cli.addArgument([ 'file' ], {
+  help:   'File to read, utf-8 encoded without BOM',
+  nargs:  '?',
+  defaultValue: '-'
+});
+
+
+////////////////////////////////////////////////////////////////////////////////
+
+
+var options = cli.parseArgs();
+
+
+////////////////////////////////////////////////////////////////////////////////
+
+function readFile(filename, encoding, callback) {
+  if (options.file === '-') {
+    // read from stdin
+
+    var chunks = [];
+
+    process.stdin.on('data', function (chunk) {
+      chunks.push(chunk);
+    });
+
+    process.stdin.on('end', function () {
+      return callback(null, Buffer.concat(chunks).toString(encoding));
+    });
+  } else {
+    fs.readFile(filename, encoding, callback);
+  }
+}
+
+readFile(options.file, 'utf8', function (error, input) {
+  var output, isYaml;
+
+  if (error) {
+    if (error.code === 'ENOENT') {
+      console.error('File not found: ' + options.file);
+      process.exit(2);
+    }
+
+    console.error(
+      options.trace && error.stack ||
+      error.message ||
+      String(error));
+
+    process.exit(1);
+  }
+
+  try {
+    output = JSON.parse(input);
+    isYaml = false;
+  } catch (err) {
+    if (err instanceof SyntaxError) {
+      try {
+        output = [];
+        yaml.loadAll(input, function (doc) { output.push(doc); }, {});
+        isYaml = true;
+
+        if (output.length === 0) output = null;
+        else if (output.length === 1) output = output[0];
+
+      } catch (e) {
+        if (options.trace && err.stack) console.error(e.stack);
+        else console.error(e.toString(options.compact));
+
+        process.exit(1);
+      }
+    } else {
+      console.error(
+        options.trace && err.stack ||
+        err.message ||
+        String(err));
+
+      process.exit(1);
+    }
+  }
+
+  if (isYaml) console.log(JSON.stringify(output, null, '  '));
+  else console.log(yaml.dump(output));
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.js
new file mode 100644 (file)
index 0000000..8e28b85
--- /dev/null
@@ -0,0 +1,3902 @@
+/* js-yaml 3.10.0 https://github.com/nodeca/js-yaml */(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.jsyaml = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
+'use strict';
+
+
+var loader = require('./js-yaml/loader');
+var dumper = require('./js-yaml/dumper');
+
+
+function deprecated(name) {
+  return function () {
+    throw new Error('Function ' + name + ' is deprecated and cannot be used.');
+  };
+}
+
+
+module.exports.Type                = require('./js-yaml/type');
+module.exports.Schema              = require('./js-yaml/schema');
+module.exports.FAILSAFE_SCHEMA     = require('./js-yaml/schema/failsafe');
+module.exports.JSON_SCHEMA         = require('./js-yaml/schema/json');
+module.exports.CORE_SCHEMA         = require('./js-yaml/schema/core');
+module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe');
+module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full');
+module.exports.load                = loader.load;
+module.exports.loadAll             = loader.loadAll;
+module.exports.safeLoad            = loader.safeLoad;
+module.exports.safeLoadAll         = loader.safeLoadAll;
+module.exports.dump                = dumper.dump;
+module.exports.safeDump            = dumper.safeDump;
+module.exports.YAMLException       = require('./js-yaml/exception');
+
+// Deprecated schema names from JS-YAML 2.0.x
+module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe');
+module.exports.SAFE_SCHEMA    = require('./js-yaml/schema/default_safe');
+module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full');
+
+// Deprecated functions from JS-YAML 1.x.x
+module.exports.scan           = deprecated('scan');
+module.exports.parse          = deprecated('parse');
+module.exports.compose        = deprecated('compose');
+module.exports.addConstructor = deprecated('addConstructor');
+
+},{"./js-yaml/dumper":3,"./js-yaml/exception":4,"./js-yaml/loader":5,"./js-yaml/schema":7,"./js-yaml/schema/core":8,"./js-yaml/schema/default_full":9,"./js-yaml/schema/default_safe":10,"./js-yaml/schema/failsafe":11,"./js-yaml/schema/json":12,"./js-yaml/type":13}],2:[function(require,module,exports){
+'use strict';
+
+
+function isNothing(subject) {
+  return (typeof subject === 'undefined') || (subject === null);
+}
+
+
+function isObject(subject) {
+  return (typeof subject === 'object') && (subject !== null);
+}
+
+
+function toArray(sequence) {
+  if (Array.isArray(sequence)) return sequence;
+  else if (isNothing(sequence)) return [];
+
+  return [ sequence ];
+}
+
+
+function extend(target, source) {
+  var index, length, key, sourceKeys;
+
+  if (source) {
+    sourceKeys = Object.keys(source);
+
+    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
+      key = sourceKeys[index];
+      target[key] = source[key];
+    }
+  }
+
+  return target;
+}
+
+
+function repeat(string, count) {
+  var result = '', cycle;
+
+  for (cycle = 0; cycle < count; cycle += 1) {
+    result += string;
+  }
+
+  return result;
+}
+
+
+function isNegativeZero(number) {
+  return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number);
+}
+
+
+module.exports.isNothing      = isNothing;
+module.exports.isObject       = isObject;
+module.exports.toArray        = toArray;
+module.exports.repeat         = repeat;
+module.exports.isNegativeZero = isNegativeZero;
+module.exports.extend         = extend;
+
+},{}],3:[function(require,module,exports){
+'use strict';
+
+/*eslint-disable no-use-before-define*/
+
+var common              = require('./common');
+var YAMLException       = require('./exception');
+var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
+var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
+
+var _toString       = Object.prototype.toString;
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+var CHAR_TAB                  = 0x09; /* Tab */
+var CHAR_LINE_FEED            = 0x0A; /* LF */
+var CHAR_SPACE                = 0x20; /* Space */
+var CHAR_EXCLAMATION          = 0x21; /* ! */
+var CHAR_DOUBLE_QUOTE         = 0x22; /* " */
+var CHAR_SHARP                = 0x23; /* # */
+var CHAR_PERCENT              = 0x25; /* % */
+var CHAR_AMPERSAND            = 0x26; /* & */
+var CHAR_SINGLE_QUOTE         = 0x27; /* ' */
+var CHAR_ASTERISK             = 0x2A; /* * */
+var CHAR_COMMA                = 0x2C; /* , */
+var CHAR_MINUS                = 0x2D; /* - */
+var CHAR_COLON                = 0x3A; /* : */
+var CHAR_GREATER_THAN         = 0x3E; /* > */
+var CHAR_QUESTION             = 0x3F; /* ? */
+var CHAR_COMMERCIAL_AT        = 0x40; /* @ */
+var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */
+var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */
+var CHAR_GRAVE_ACCENT         = 0x60; /* ` */
+var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */
+var CHAR_VERTICAL_LINE        = 0x7C; /* | */
+var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */
+
+var ESCAPE_SEQUENCES = {};
+
+ESCAPE_SEQUENCES[0x00]   = '\\0';
+ESCAPE_SEQUENCES[0x07]   = '\\a';
+ESCAPE_SEQUENCES[0x08]   = '\\b';
+ESCAPE_SEQUENCES[0x09]   = '\\t';
+ESCAPE_SEQUENCES[0x0A]   = '\\n';
+ESCAPE_SEQUENCES[0x0B]   = '\\v';
+ESCAPE_SEQUENCES[0x0C]   = '\\f';
+ESCAPE_SEQUENCES[0x0D]   = '\\r';
+ESCAPE_SEQUENCES[0x1B]   = '\\e';
+ESCAPE_SEQUENCES[0x22]   = '\\"';
+ESCAPE_SEQUENCES[0x5C]   = '\\\\';
+ESCAPE_SEQUENCES[0x85]   = '\\N';
+ESCAPE_SEQUENCES[0xA0]   = '\\_';
+ESCAPE_SEQUENCES[0x2028] = '\\L';
+ESCAPE_SEQUENCES[0x2029] = '\\P';
+
+var DEPRECATED_BOOLEANS_SYNTAX = [
+  'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',
+  'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'
+];
+
+function compileStyleMap(schema, map) {
+  var result, keys, index, length, tag, style, type;
+
+  if (map === null) return {};
+
+  result = {};
+  keys = Object.keys(map);
+
+  for (index = 0, length = keys.length; index < length; index += 1) {
+    tag = keys[index];
+    style = String(map[tag]);
+
+    if (tag.slice(0, 2) === '!!') {
+      tag = 'tag:yaml.org,2002:' + tag.slice(2);
+    }
+    type = schema.compiledTypeMap['fallback'][tag];
+
+    if (type && _hasOwnProperty.call(type.styleAliases, style)) {
+      style = type.styleAliases[style];
+    }
+
+    result[tag] = style;
+  }
+
+  return result;
+}
+
+function encodeHex(character) {
+  var string, handle, length;
+
+  string = character.toString(16).toUpperCase();
+
+  if (character <= 0xFF) {
+    handle = 'x';
+    length = 2;
+  } else if (character <= 0xFFFF) {
+    handle = 'u';
+    length = 4;
+  } else if (character <= 0xFFFFFFFF) {
+    handle = 'U';
+    length = 8;
+  } else {
+    throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');
+  }
+
+  return '\\' + handle + common.repeat('0', length - string.length) + string;
+}
+
+function State(options) {
+  this.schema       = options['schema'] || DEFAULT_FULL_SCHEMA;
+  this.indent       = Math.max(1, (options['indent'] || 2));
+  this.skipInvalid  = options['skipInvalid'] || false;
+  this.flowLevel    = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);
+  this.styleMap     = compileStyleMap(this.schema, options['styles'] || null);
+  this.sortKeys     = options['sortKeys'] || false;
+  this.lineWidth    = options['lineWidth'] || 80;
+  this.noRefs       = options['noRefs'] || false;
+  this.noCompatMode = options['noCompatMode'] || false;
+  this.condenseFlow = options['condenseFlow'] || false;
+
+  this.implicitTypes = this.schema.compiledImplicit;
+  this.explicitTypes = this.schema.compiledExplicit;
+
+  this.tag = null;
+  this.result = '';
+
+  this.duplicates = [];
+  this.usedDuplicates = null;
+}
+
+// Indents every line in a string. Empty lines (\n only) are not indented.
+function indentString(string, spaces) {
+  var ind = common.repeat(' ', spaces),
+      position = 0,
+      next = -1,
+      result = '',
+      line,
+      length = string.length;
+
+  while (position < length) {
+    next = string.indexOf('\n', position);
+    if (next === -1) {
+      line = string.slice(position);
+      position = length;
+    } else {
+      line = string.slice(position, next + 1);
+      position = next + 1;
+    }
+
+    if (line.length && line !== '\n') result += ind;
+
+    result += line;
+  }
+
+  return result;
+}
+
+function generateNextLine(state, level) {
+  return '\n' + common.repeat(' ', state.indent * level);
+}
+
+function testImplicitResolving(state, str) {
+  var index, length, type;
+
+  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
+    type = state.implicitTypes[index];
+
+    if (type.resolve(str)) {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+// [33] s-white ::= s-space | s-tab
+function isWhitespace(c) {
+  return c === CHAR_SPACE || c === CHAR_TAB;
+}
+
+// Returns true if the character can be printed without escaping.
+// From YAML 1.2: "any allowed characters known to be non-printable
+// should also be escaped. [However,] This isn’t mandatory"
+// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029.
+function isPrintable(c) {
+  return  (0x00020 <= c && c <= 0x00007E)
+      || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029)
+      || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */)
+      ||  (0x10000 <= c && c <= 0x10FFFF);
+}
+
+// Simplified test for values allowed after the first character in plain style.
+function isPlainSafe(c) {
+  // Uses a subset of nb-char - c-flow-indicator - ":" - "#"
+  // where nb-char ::= c-printable - b-char - c-byte-order-mark.
+  return isPrintable(c) && c !== 0xFEFF
+    // - c-flow-indicator
+    && c !== CHAR_COMMA
+    && c !== CHAR_LEFT_SQUARE_BRACKET
+    && c !== CHAR_RIGHT_SQUARE_BRACKET
+    && c !== CHAR_LEFT_CURLY_BRACKET
+    && c !== CHAR_RIGHT_CURLY_BRACKET
+    // - ":" - "#"
+    && c !== CHAR_COLON
+    && c !== CHAR_SHARP;
+}
+
+// Simplified test for values allowed as the first character in plain style.
+function isPlainSafeFirst(c) {
+  // Uses a subset of ns-char - c-indicator
+  // where ns-char = nb-char - s-white.
+  return isPrintable(c) && c !== 0xFEFF
+    && !isWhitespace(c) // - s-white
+    // - (c-indicator ::=
+    // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}”
+    && c !== CHAR_MINUS
+    && c !== CHAR_QUESTION
+    && c !== CHAR_COLON
+    && c !== CHAR_COMMA
+    && c !== CHAR_LEFT_SQUARE_BRACKET
+    && c !== CHAR_RIGHT_SQUARE_BRACKET
+    && c !== CHAR_LEFT_CURLY_BRACKET
+    && c !== CHAR_RIGHT_CURLY_BRACKET
+    // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “"”
+    && c !== CHAR_SHARP
+    && c !== CHAR_AMPERSAND
+    && c !== CHAR_ASTERISK
+    && c !== CHAR_EXCLAMATION
+    && c !== CHAR_VERTICAL_LINE
+    && c !== CHAR_GREATER_THAN
+    && c !== CHAR_SINGLE_QUOTE
+    && c !== CHAR_DOUBLE_QUOTE
+    // | “%” | “@” | “`”)
+    && c !== CHAR_PERCENT
+    && c !== CHAR_COMMERCIAL_AT
+    && c !== CHAR_GRAVE_ACCENT;
+}
+
+var STYLE_PLAIN   = 1,
+    STYLE_SINGLE  = 2,
+    STYLE_LITERAL = 3,
+    STYLE_FOLDED  = 4,
+    STYLE_DOUBLE  = 5;
+
+// Determines which scalar styles are possible and returns the preferred style.
+// lineWidth = -1 => no limit.
+// Pre-conditions: str.length > 0.
+// Post-conditions:
+//    STYLE_PLAIN or STYLE_SINGLE => no \n are in the string.
+//    STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1).
+//    STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1).
+function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) {
+  var i;
+  var char;
+  var hasLineBreak = false;
+  var hasFoldableLine = false; // only checked if shouldTrackWidth
+  var shouldTrackWidth = lineWidth !== -1;
+  var previousLineBreak = -1; // count the first line correctly
+  var plain = isPlainSafeFirst(string.charCodeAt(0))
+          && !isWhitespace(string.charCodeAt(string.length - 1));
+
+  if (singleLineOnly) {
+    // Case: no block styles.
+    // Check for disallowed characters to rule out plain and single.
+    for (i = 0; i < string.length; i++) {
+      char = string.charCodeAt(i);
+      if (!isPrintable(char)) {
+        return STYLE_DOUBLE;
+      }
+      plain = plain && isPlainSafe(char);
+    }
+  } else {
+    // Case: block styles permitted.
+    for (i = 0; i < string.length; i++) {
+      char = string.charCodeAt(i);
+      if (char === CHAR_LINE_FEED) {
+        hasLineBreak = true;
+        // Check if any line can be folded.
+        if (shouldTrackWidth) {
+          hasFoldableLine = hasFoldableLine ||
+            // Foldable line = too long, and not more-indented.
+            (i - previousLineBreak - 1 > lineWidth &&
+             string[previousLineBreak + 1] !== ' ');
+          previousLineBreak = i;
+        }
+      } else if (!isPrintable(char)) {
+        return STYLE_DOUBLE;
+      }
+      plain = plain && isPlainSafe(char);
+    }
+    // in case the end is missing a \n
+    hasFoldableLine = hasFoldableLine || (shouldTrackWidth &&
+      (i - previousLineBreak - 1 > lineWidth &&
+       string[previousLineBreak + 1] !== ' '));
+  }
+  // Although every style can represent \n without escaping, prefer block styles
+  // for multiline, since they're more readable and they don't add empty lines.
+  // Also prefer folding a super-long line.
+  if (!hasLineBreak && !hasFoldableLine) {
+    // Strings interpretable as another type have to be quoted;
+    // e.g. the string 'true' vs. the boolean true.
+    return plain && !testAmbiguousType(string)
+      ? STYLE_PLAIN : STYLE_SINGLE;
+  }
+  // Edge case: block indentation indicator can only have one digit.
+  if (string[0] === ' ' && indentPerLevel > 9) {
+    return STYLE_DOUBLE;
+  }
+  // At this point we know block styles are valid.
+  // Prefer literal style unless we want to fold.
+  return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL;
+}
+
+// Note: line breaking/folding is implemented for only the folded style.
+// NB. We drop the last trailing newline (if any) of a returned block scalar
+//  since the dumper adds its own newline. This always works:
+//    • No ending newline => unaffected; already using strip "-" chomping.
+//    • Ending newline    => removed then restored.
+//  Importantly, this keeps the "+" chomp indicator from gaining an extra line.
+function writeScalar(state, string, level, iskey) {
+  state.dump = (function () {
+    if (string.length === 0) {
+      return "''";
+    }
+    if (!state.noCompatMode &&
+        DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) {
+      return "'" + string + "'";
+    }
+
+    var indent = state.indent * Math.max(1, level); // no 0-indent scalars
+    // As indentation gets deeper, let the width decrease monotonically
+    // to the lower bound min(state.lineWidth, 40).
+    // Note that this implies
+    //  state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound.
+    //  state.lineWidth > 40 + state.indent: width decreases until the lower bound.
+    // This behaves better than a constant minimum width which disallows narrower options,
+    // or an indent threshold which causes the width to suddenly increase.
+    var lineWidth = state.lineWidth === -1
+      ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);
+
+    // Without knowing if keys are implicit/explicit, assume implicit for safety.
+    var singleLineOnly = iskey
+      // No block styles in flow mode.
+      || (state.flowLevel > -1 && level >= state.flowLevel);
+    function testAmbiguity(string) {
+      return testImplicitResolving(state, string);
+    }
+
+    switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) {
+      case STYLE_PLAIN:
+        return string;
+      case STYLE_SINGLE:
+        return "'" + string.replace(/'/g, "''") + "'";
+      case STYLE_LITERAL:
+        return '|' + blockHeader(string, state.indent)
+          + dropEndingNewline(indentString(string, indent));
+      case STYLE_FOLDED:
+        return '>' + blockHeader(string, state.indent)
+          + dropEndingNewline(indentString(foldString(string, lineWidth), indent));
+      case STYLE_DOUBLE:
+        return '"' + escapeString(string, lineWidth) + '"';
+      default:
+        throw new YAMLException('impossible error: invalid scalar style');
+    }
+  }());
+}
+
+// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9.
+function blockHeader(string, indentPerLevel) {
+  var indentIndicator = (string[0] === ' ') ? String(indentPerLevel) : '';
+
+  // note the special case: the string '\n' counts as a "trailing" empty line.
+  var clip =          string[string.length - 1] === '\n';
+  var keep = clip && (string[string.length - 2] === '\n' || string === '\n');
+  var chomp = keep ? '+' : (clip ? '' : '-');
+
+  return indentIndicator + chomp + '\n';
+}
+
+// (See the note for writeScalar.)
+function dropEndingNewline(string) {
+  return string[string.length - 1] === '\n' ? string.slice(0, -1) : string;
+}
+
+// Note: a long line without a suitable break point will exceed the width limit.
+// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0.
+function foldString(string, width) {
+  // In folded style, $k$ consecutive newlines output as $k+1$ newlines—
+  // unless they're before or after a more-indented line, or at the very
+  // beginning or end, in which case $k$ maps to $k$.
+  // Therefore, parse each chunk as newline(s) followed by a content line.
+  var lineRe = /(\n+)([^\n]*)/g;
+
+  // first line (possibly an empty line)
+  var result = (function () {
+    var nextLF = string.indexOf('\n');
+    nextLF = nextLF !== -1 ? nextLF : string.length;
+    lineRe.lastIndex = nextLF;
+    return foldLine(string.slice(0, nextLF), width);
+  }());
+  // If we haven't reached the first content line yet, don't add an extra \n.
+  var prevMoreIndented = string[0] === '\n' || string[0] === ' ';
+  var moreIndented;
+
+  // rest of the lines
+  var match;
+  while ((match = lineRe.exec(string))) {
+    var prefix = match[1], line = match[2];
+    moreIndented = (line[0] === ' ');
+    result += prefix
+      + (!prevMoreIndented && !moreIndented && line !== ''
+        ? '\n' : '')
+      + foldLine(line, width);
+    prevMoreIndented = moreIndented;
+  }
+
+  return result;
+}
+
+// Greedy line breaking.
+// Picks the longest line under the limit each time,
+// otherwise settles for the shortest line over the limit.
+// NB. More-indented lines *cannot* be folded, as that would add an extra \n.
+function foldLine(line, width) {
+  if (line === '' || line[0] === ' ') return line;
+
+  // Since a more-indented line adds a \n, breaks can't be followed by a space.
+  var breakRe = / [^ ]/g; // note: the match index will always be <= length-2.
+  var match;
+  // start is an inclusive index. end, curr, and next are exclusive.
+  var start = 0, end, curr = 0, next = 0;
+  var result = '';
+
+  // Invariants: 0 <= start <= length-1.
+  //   0 <= curr <= next <= max(0, length-2). curr - start <= width.
+  // Inside the loop:
+  //   A match implies length >= 2, so curr and next are <= length-2.
+  while ((match = breakRe.exec(line))) {
+    next = match.index;
+    // maintain invariant: curr - start <= width
+    if (next - start > width) {
+      end = (curr > start) ? curr : next; // derive end <= length-2
+      result += '\n' + line.slice(start, end);
+      // skip the space that was output as \n
+      start = end + 1;                    // derive start <= length-1
+    }
+    curr = next;
+  }
+
+  // By the invariants, start <= length-1, so there is something left over.
+  // It is either the whole string or a part starting from non-whitespace.
+  result += '\n';
+  // Insert a break if the remainder is too long and there is a break available.
+  if (line.length - start > width && curr > start) {
+    result += line.slice(start, curr) + '\n' + line.slice(curr + 1);
+  } else {
+    result += line.slice(start);
+  }
+
+  return result.slice(1); // drop extra \n joiner
+}
+
+// Escapes a double-quoted string.
+function escapeString(string) {
+  var result = '';
+  var char, nextChar;
+  var escapeSeq;
+
+  for (var i = 0; i < string.length; i++) {
+    char = string.charCodeAt(i);
+    // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates").
+    if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) {
+      nextChar = string.charCodeAt(i + 1);
+      if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) {
+        // Combine the surrogate pair and store it escaped.
+        result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000);
+        // Advance index one extra since we already used that char here.
+        i++; continue;
+      }
+    }
+    escapeSeq = ESCAPE_SEQUENCES[char];
+    result += !escapeSeq && isPrintable(char)
+      ? string[i]
+      : escapeSeq || encodeHex(char);
+  }
+
+  return result;
+}
+
+function writeFlowSequence(state, level, object) {
+  var _result = '',
+      _tag    = state.tag,
+      index,
+      length;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    // Write only valid elements.
+    if (writeNode(state, level, object[index], false, false)) {
+      if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : '');
+      _result += state.dump;
+    }
+  }
+
+  state.tag = _tag;
+  state.dump = '[' + _result + ']';
+}
+
+function writeBlockSequence(state, level, object, compact) {
+  var _result = '',
+      _tag    = state.tag,
+      index,
+      length;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    // Write only valid elements.
+    if (writeNode(state, level + 1, object[index], true, true)) {
+      if (!compact || index !== 0) {
+        _result += generateNextLine(state, level);
+      }
+
+      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+        _result += '-';
+      } else {
+        _result += '- ';
+      }
+
+      _result += state.dump;
+    }
+  }
+
+  state.tag = _tag;
+  state.dump = _result || '[]'; // Empty sequence if no valid values.
+}
+
+function writeFlowMapping(state, level, object) {
+  var _result       = '',
+      _tag          = state.tag,
+      objectKeyList = Object.keys(object),
+      index,
+      length,
+      objectKey,
+      objectValue,
+      pairBuffer;
+
+  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+    pairBuffer = state.condenseFlow ? '"' : '';
+
+    if (index !== 0) pairBuffer += ', ';
+
+    objectKey = objectKeyList[index];
+    objectValue = object[objectKey];
+
+    if (!writeNode(state, level, objectKey, false, false)) {
+      continue; // Skip this pair because of invalid key;
+    }
+
+    if (state.dump.length > 1024) pairBuffer += '? ';
+
+    pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' ');
+
+    if (!writeNode(state, level, objectValue, false, false)) {
+      continue; // Skip this pair because of invalid value.
+    }
+
+    pairBuffer += state.dump;
+
+    // Both key and value are valid.
+    _result += pairBuffer;
+  }
+
+  state.tag = _tag;
+  state.dump = '{' + _result + '}';
+}
+
+function writeBlockMapping(state, level, object, compact) {
+  var _result       = '',
+      _tag          = state.tag,
+      objectKeyList = Object.keys(object),
+      index,
+      length,
+      objectKey,
+      objectValue,
+      explicitPair,
+      pairBuffer;
+
+  // Allow sorting keys so that the output file is deterministic
+  if (state.sortKeys === true) {
+    // Default sorting
+    objectKeyList.sort();
+  } else if (typeof state.sortKeys === 'function') {
+    // Custom sort function
+    objectKeyList.sort(state.sortKeys);
+  } else if (state.sortKeys) {
+    // Something is wrong
+    throw new YAMLException('sortKeys must be a boolean or a function');
+  }
+
+  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+    pairBuffer = '';
+
+    if (!compact || index !== 0) {
+      pairBuffer += generateNextLine(state, level);
+    }
+
+    objectKey = objectKeyList[index];
+    objectValue = object[objectKey];
+
+    if (!writeNode(state, level + 1, objectKey, true, true, true)) {
+      continue; // Skip this pair because of invalid key.
+    }
+
+    explicitPair = (state.tag !== null && state.tag !== '?') ||
+                   (state.dump && state.dump.length > 1024);
+
+    if (explicitPair) {
+      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+        pairBuffer += '?';
+      } else {
+        pairBuffer += '? ';
+      }
+    }
+
+    pairBuffer += state.dump;
+
+    if (explicitPair) {
+      pairBuffer += generateNextLine(state, level);
+    }
+
+    if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {
+      continue; // Skip this pair because of invalid value.
+    }
+
+    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+      pairBuffer += ':';
+    } else {
+      pairBuffer += ': ';
+    }
+
+    pairBuffer += state.dump;
+
+    // Both key and value are valid.
+    _result += pairBuffer;
+  }
+
+  state.tag = _tag;
+  state.dump = _result || '{}'; // Empty mapping if no valid pairs.
+}
+
+function detectType(state, object, explicit) {
+  var _result, typeList, index, length, type, style;
+
+  typeList = explicit ? state.explicitTypes : state.implicitTypes;
+
+  for (index = 0, length = typeList.length; index < length; index += 1) {
+    type = typeList[index];
+
+    if ((type.instanceOf  || type.predicate) &&
+        (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) &&
+        (!type.predicate  || type.predicate(object))) {
+
+      state.tag = explicit ? type.tag : '?';
+
+      if (type.represent) {
+        style = state.styleMap[type.tag] || type.defaultStyle;
+
+        if (_toString.call(type.represent) === '[object Function]') {
+          _result = type.represent(object, style);
+        } else if (_hasOwnProperty.call(type.represent, style)) {
+          _result = type.represent[style](object, style);
+        } else {
+          throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style');
+        }
+
+        state.dump = _result;
+      }
+
+      return true;
+    }
+  }
+
+  return false;
+}
+
+// Serializes `object` and writes it to global `result`.
+// Returns true on success, or false on invalid object.
+//
+function writeNode(state, level, object, block, compact, iskey) {
+  state.tag = null;
+  state.dump = object;
+
+  if (!detectType(state, object, false)) {
+    detectType(state, object, true);
+  }
+
+  var type = _toString.call(state.dump);
+
+  if (block) {
+    block = (state.flowLevel < 0 || state.flowLevel > level);
+  }
+
+  var objectOrArray = type === '[object Object]' || type === '[object Array]',
+      duplicateIndex,
+      duplicate;
+
+  if (objectOrArray) {
+    duplicateIndex = state.duplicates.indexOf(object);
+    duplicate = duplicateIndex !== -1;
+  }
+
+  if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) {
+    compact = false;
+  }
+
+  if (duplicate && state.usedDuplicates[duplicateIndex]) {
+    state.dump = '*ref_' + duplicateIndex;
+  } else {
+    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
+      state.usedDuplicates[duplicateIndex] = true;
+    }
+    if (type === '[object Object]') {
+      if (block && (Object.keys(state.dump).length !== 0)) {
+        writeBlockMapping(state, level, state.dump, compact);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + state.dump;
+        }
+      } else {
+        writeFlowMapping(state, level, state.dump);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
+        }
+      }
+    } else if (type === '[object Array]') {
+      if (block && (state.dump.length !== 0)) {
+        writeBlockSequence(state, level, state.dump, compact);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + state.dump;
+        }
+      } else {
+        writeFlowSequence(state, level, state.dump);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
+        }
+      }
+    } else if (type === '[object String]') {
+      if (state.tag !== '?') {
+        writeScalar(state, state.dump, level, iskey);
+      }
+    } else {
+      if (state.skipInvalid) return false;
+      throw new YAMLException('unacceptable kind of an object to dump ' + type);
+    }
+
+    if (state.tag !== null && state.tag !== '?') {
+      state.dump = '!<' + state.tag + '> ' + state.dump;
+    }
+  }
+
+  return true;
+}
+
+function getDuplicateReferences(object, state) {
+  var objects = [],
+      duplicatesIndexes = [],
+      index,
+      length;
+
+  inspectNode(object, objects, duplicatesIndexes);
+
+  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
+    state.duplicates.push(objects[duplicatesIndexes[index]]);
+  }
+  state.usedDuplicates = new Array(length);
+}
+
+function inspectNode(object, objects, duplicatesIndexes) {
+  var objectKeyList,
+      index,
+      length;
+
+  if (object !== null && typeof object === 'object') {
+    index = objects.indexOf(object);
+    if (index !== -1) {
+      if (duplicatesIndexes.indexOf(index) === -1) {
+        duplicatesIndexes.push(index);
+      }
+    } else {
+      objects.push(object);
+
+      if (Array.isArray(object)) {
+        for (index = 0, length = object.length; index < length; index += 1) {
+          inspectNode(object[index], objects, duplicatesIndexes);
+        }
+      } else {
+        objectKeyList = Object.keys(object);
+
+        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
+        }
+      }
+    }
+  }
+}
+
+function dump(input, options) {
+  options = options || {};
+
+  var state = new State(options);
+
+  if (!state.noRefs) getDuplicateReferences(input, state);
+
+  if (writeNode(state, 0, input, true, true)) return state.dump + '\n';
+
+  return '';
+}
+
+function safeDump(input, options) {
+  return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+}
+
+module.exports.dump     = dump;
+module.exports.safeDump = safeDump;
+
+},{"./common":2,"./exception":4,"./schema/default_full":9,"./schema/default_safe":10}],4:[function(require,module,exports){
+// YAML error class. http://stackoverflow.com/questions/8458984
+//
+'use strict';
+
+function YAMLException(reason, mark) {
+  // Super constructor
+  Error.call(this);
+
+  this.name = 'YAMLException';
+  this.reason = reason;
+  this.mark = mark;
+  this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '');
+
+  // Include stack trace in error object
+  if (Error.captureStackTrace) {
+    // Chrome and NodeJS
+    Error.captureStackTrace(this, this.constructor);
+  } else {
+    // FF, IE 10+ and Safari 6+. Fallback for others
+    this.stack = (new Error()).stack || '';
+  }
+}
+
+
+// Inherit from Error
+YAMLException.prototype = Object.create(Error.prototype);
+YAMLException.prototype.constructor = YAMLException;
+
+
+YAMLException.prototype.toString = function toString(compact) {
+  var result = this.name + ': ';
+
+  result += this.reason || '(unknown reason)';
+
+  if (!compact && this.mark) {
+    result += ' ' + this.mark.toString();
+  }
+
+  return result;
+};
+
+
+module.exports = YAMLException;
+
+},{}],5:[function(require,module,exports){
+'use strict';
+
+/*eslint-disable max-len,no-use-before-define*/
+
+var common              = require('./common');
+var YAMLException       = require('./exception');
+var Mark                = require('./mark');
+var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
+var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
+
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+
+var CONTEXT_FLOW_IN   = 1;
+var CONTEXT_FLOW_OUT  = 2;
+var CONTEXT_BLOCK_IN  = 3;
+var CONTEXT_BLOCK_OUT = 4;
+
+
+var CHOMPING_CLIP  = 1;
+var CHOMPING_STRIP = 2;
+var CHOMPING_KEEP  = 3;
+
+
+var PATTERN_NON_PRINTABLE         = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;
+var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
+var PATTERN_FLOW_INDICATORS       = /[,\[\]\{\}]/;
+var PATTERN_TAG_HANDLE            = /^(?:!|!!|![a-z\-]+!)$/i;
+var PATTERN_TAG_URI               = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
+
+
+function is_EOL(c) {
+  return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);
+}
+
+function is_WHITE_SPACE(c) {
+  return (c === 0x09/* Tab */) || (c === 0x20/* Space */);
+}
+
+function is_WS_OR_EOL(c) {
+  return (c === 0x09/* Tab */) ||
+         (c === 0x20/* Space */) ||
+         (c === 0x0A/* LF */) ||
+         (c === 0x0D/* CR */);
+}
+
+function is_FLOW_INDICATOR(c) {
+  return c === 0x2C/* , */ ||
+         c === 0x5B/* [ */ ||
+         c === 0x5D/* ] */ ||
+         c === 0x7B/* { */ ||
+         c === 0x7D/* } */;
+}
+
+function fromHexCode(c) {
+  var lc;
+
+  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
+    return c - 0x30;
+  }
+
+  /*eslint-disable no-bitwise*/
+  lc = c | 0x20;
+
+  if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {
+    return lc - 0x61 + 10;
+  }
+
+  return -1;
+}
+
+function escapedHexLen(c) {
+  if (c === 0x78/* x */) { return 2; }
+  if (c === 0x75/* u */) { return 4; }
+  if (c === 0x55/* U */) { return 8; }
+  return 0;
+}
+
+function fromDecimalCode(c) {
+  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
+    return c - 0x30;
+  }
+
+  return -1;
+}
+
+function simpleEscapeSequence(c) {
+  /* eslint-disable indent */
+  return (c === 0x30/* 0 */) ? '\x00' :
+        (c === 0x61/* a */) ? '\x07' :
+        (c === 0x62/* b */) ? '\x08' :
+        (c === 0x74/* t */) ? '\x09' :
+        (c === 0x09/* Tab */) ? '\x09' :
+        (c === 0x6E/* n */) ? '\x0A' :
+        (c === 0x76/* v */) ? '\x0B' :
+        (c === 0x66/* f */) ? '\x0C' :
+        (c === 0x72/* r */) ? '\x0D' :
+        (c === 0x65/* e */) ? '\x1B' :
+        (c === 0x20/* Space */) ? ' ' :
+        (c === 0x22/* " */) ? '\x22' :
+        (c === 0x2F/* / */) ? '/' :
+        (c === 0x5C/* \ */) ? '\x5C' :
+        (c === 0x4E/* N */) ? '\x85' :
+        (c === 0x5F/* _ */) ? '\xA0' :
+        (c === 0x4C/* L */) ? '\u2028' :
+        (c === 0x50/* P */) ? '\u2029' : '';
+}
+
+function charFromCodepoint(c) {
+  if (c <= 0xFFFF) {
+    return String.fromCharCode(c);
+  }
+  // Encode UTF-16 surrogate pair
+  // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF
+  return String.fromCharCode(
+    ((c - 0x010000) >> 10) + 0xD800,
+    ((c - 0x010000) & 0x03FF) + 0xDC00
+  );
+}
+
+var simpleEscapeCheck = new Array(256); // integer, for fast access
+var simpleEscapeMap = new Array(256);
+for (var i = 0; i < 256; i++) {
+  simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
+  simpleEscapeMap[i] = simpleEscapeSequence(i);
+}
+
+
+function State(input, options) {
+  this.input = input;
+
+  this.filename  = options['filename']  || null;
+  this.schema    = options['schema']    || DEFAULT_FULL_SCHEMA;
+  this.onWarning = options['onWarning'] || null;
+  this.legacy    = options['legacy']    || false;
+  this.json      = options['json']      || false;
+  this.listener  = options['listener']  || null;
+
+  this.implicitTypes = this.schema.compiledImplicit;
+  this.typeMap       = this.schema.compiledTypeMap;
+
+  this.length     = input.length;
+  this.position   = 0;
+  this.line       = 0;
+  this.lineStart  = 0;
+  this.lineIndent = 0;
+
+  this.documents = [];
+
+  /*
+  this.version;
+  this.checkLineBreaks;
+  this.tagMap;
+  this.anchorMap;
+  this.tag;
+  this.anchor;
+  this.kind;
+  this.result;*/
+
+}
+
+
+function generateError(state, message) {
+  return new YAMLException(
+    message,
+    new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));
+}
+
+function throwError(state, message) {
+  throw generateError(state, message);
+}
+
+function throwWarning(state, message) {
+  if (state.onWarning) {
+    state.onWarning.call(null, generateError(state, message));
+  }
+}
+
+
+var directiveHandlers = {
+
+  YAML: function handleYamlDirective(state, name, args) {
+
+    var match, major, minor;
+
+    if (state.version !== null) {
+      throwError(state, 'duplication of %YAML directive');
+    }
+
+    if (args.length !== 1) {
+      throwError(state, 'YAML directive accepts exactly one argument');
+    }
+
+    match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
+
+    if (match === null) {
+      throwError(state, 'ill-formed argument of the YAML directive');
+    }
+
+    major = parseInt(match[1], 10);
+    minor = parseInt(match[2], 10);
+
+    if (major !== 1) {
+      throwError(state, 'unacceptable YAML version of the document');
+    }
+
+    state.version = args[0];
+    state.checkLineBreaks = (minor < 2);
+
+    if (minor !== 1 && minor !== 2) {
+      throwWarning(state, 'unsupported YAML version of the document');
+    }
+  },
+
+  TAG: function handleTagDirective(state, name, args) {
+
+    var handle, prefix;
+
+    if (args.length !== 2) {
+      throwError(state, 'TAG directive accepts exactly two arguments');
+    }
+
+    handle = args[0];
+    prefix = args[1];
+
+    if (!PATTERN_TAG_HANDLE.test(handle)) {
+      throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');
+    }
+
+    if (_hasOwnProperty.call(state.tagMap, handle)) {
+      throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
+    }
+
+    if (!PATTERN_TAG_URI.test(prefix)) {
+      throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');
+    }
+
+    state.tagMap[handle] = prefix;
+  }
+};
+
+
+function captureSegment(state, start, end, checkJson) {
+  var _position, _length, _character, _result;
+
+  if (start < end) {
+    _result = state.input.slice(start, end);
+
+    if (checkJson) {
+      for (_position = 0, _length = _result.length; _position < _length; _position += 1) {
+        _character = _result.charCodeAt(_position);
+        if (!(_character === 0x09 ||
+              (0x20 <= _character && _character <= 0x10FFFF))) {
+          throwError(state, 'expected valid JSON character');
+        }
+      }
+    } else if (PATTERN_NON_PRINTABLE.test(_result)) {
+      throwError(state, 'the stream contains non-printable characters');
+    }
+
+    state.result += _result;
+  }
+}
+
+function mergeMappings(state, destination, source, overridableKeys) {
+  var sourceKeys, key, index, quantity;
+
+  if (!common.isObject(source)) {
+    throwError(state, 'cannot merge mappings; the provided source object is unacceptable');
+  }
+
+  sourceKeys = Object.keys(source);
+
+  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
+    key = sourceKeys[index];
+
+    if (!_hasOwnProperty.call(destination, key)) {
+      destination[key] = source[key];
+      overridableKeys[key] = true;
+    }
+  }
+}
+
+function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {
+  var index, quantity;
+
+  keyNode = String(keyNode);
+
+  if (_result === null) {
+    _result = {};
+  }
+
+  if (keyTag === 'tag:yaml.org,2002:merge') {
+    if (Array.isArray(valueNode)) {
+      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
+        mergeMappings(state, _result, valueNode[index], overridableKeys);
+      }
+    } else {
+      mergeMappings(state, _result, valueNode, overridableKeys);
+    }
+  } else {
+    if (!state.json &&
+        !_hasOwnProperty.call(overridableKeys, keyNode) &&
+        _hasOwnProperty.call(_result, keyNode)) {
+      state.line = startLine || state.line;
+      state.position = startPos || state.position;
+      throwError(state, 'duplicated mapping key');
+    }
+    _result[keyNode] = valueNode;
+    delete overridableKeys[keyNode];
+  }
+
+  return _result;
+}
+
+function readLineBreak(state) {
+  var ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x0A/* LF */) {
+    state.position++;
+  } else if (ch === 0x0D/* CR */) {
+    state.position++;
+    if (state.input.charCodeAt(state.position) === 0x0A/* LF */) {
+      state.position++;
+    }
+  } else {
+    throwError(state, 'a line break is expected');
+  }
+
+  state.line += 1;
+  state.lineStart = state.position;
+}
+
+function skipSeparationSpace(state, allowComments, checkIndent) {
+  var lineBreaks = 0,
+      ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+    while (is_WHITE_SPACE(ch)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    if (allowComments && ch === 0x23/* # */) {
+      do {
+        ch = state.input.charCodeAt(++state.position);
+      } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0);
+    }
+
+    if (is_EOL(ch)) {
+      readLineBreak(state);
+
+      ch = state.input.charCodeAt(state.position);
+      lineBreaks++;
+      state.lineIndent = 0;
+
+      while (ch === 0x20/* Space */) {
+        state.lineIndent++;
+        ch = state.input.charCodeAt(++state.position);
+      }
+    } else {
+      break;
+    }
+  }
+
+  if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {
+    throwWarning(state, 'deficient indentation');
+  }
+
+  return lineBreaks;
+}
+
+function testDocumentSeparator(state) {
+  var _position = state.position,
+      ch;
+
+  ch = state.input.charCodeAt(_position);
+
+  // Condition state.position === state.lineStart is tested
+  // in parent on each call, for efficiency. No needs to test here again.
+  if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) &&
+      ch === state.input.charCodeAt(_position + 1) &&
+      ch === state.input.charCodeAt(_position + 2)) {
+
+    _position += 3;
+
+    ch = state.input.charCodeAt(_position);
+
+    if (ch === 0 || is_WS_OR_EOL(ch)) {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+function writeFoldedLines(state, count) {
+  if (count === 1) {
+    state.result += ' ';
+  } else if (count > 1) {
+    state.result += common.repeat('\n', count - 1);
+  }
+}
+
+
+function readPlainScalar(state, nodeIndent, withinFlowCollection) {
+  var preceding,
+      following,
+      captureStart,
+      captureEnd,
+      hasPendingContent,
+      _line,
+      _lineStart,
+      _lineIndent,
+      _kind = state.kind,
+      _result = state.result,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (is_WS_OR_EOL(ch)      ||
+      is_FLOW_INDICATOR(ch) ||
+      ch === 0x23/* # */    ||
+      ch === 0x26/* & */    ||
+      ch === 0x2A/* * */    ||
+      ch === 0x21/* ! */    ||
+      ch === 0x7C/* | */    ||
+      ch === 0x3E/* > */    ||
+      ch === 0x27/* ' */    ||
+      ch === 0x22/* " */    ||
+      ch === 0x25/* % */    ||
+      ch === 0x40/* @ */    ||
+      ch === 0x60/* ` */) {
+    return false;
+  }
+
+  if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) {
+    following = state.input.charCodeAt(state.position + 1);
+
+    if (is_WS_OR_EOL(following) ||
+        withinFlowCollection && is_FLOW_INDICATOR(following)) {
+      return false;
+    }
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  captureStart = captureEnd = state.position;
+  hasPendingContent = false;
+
+  while (ch !== 0) {
+    if (ch === 0x3A/* : */) {
+      following = state.input.charCodeAt(state.position + 1);
+
+      if (is_WS_OR_EOL(following) ||
+          withinFlowCollection && is_FLOW_INDICATOR(following)) {
+        break;
+      }
+
+    } else if (ch === 0x23/* # */) {
+      preceding = state.input.charCodeAt(state.position - 1);
+
+      if (is_WS_OR_EOL(preceding)) {
+        break;
+      }
+
+    } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||
+               withinFlowCollection && is_FLOW_INDICATOR(ch)) {
+      break;
+
+    } else if (is_EOL(ch)) {
+      _line = state.line;
+      _lineStart = state.lineStart;
+      _lineIndent = state.lineIndent;
+      skipSeparationSpace(state, false, -1);
+
+      if (state.lineIndent >= nodeIndent) {
+        hasPendingContent = true;
+        ch = state.input.charCodeAt(state.position);
+        continue;
+      } else {
+        state.position = captureEnd;
+        state.line = _line;
+        state.lineStart = _lineStart;
+        state.lineIndent = _lineIndent;
+        break;
+      }
+    }
+
+    if (hasPendingContent) {
+      captureSegment(state, captureStart, captureEnd, false);
+      writeFoldedLines(state, state.line - _line);
+      captureStart = captureEnd = state.position;
+      hasPendingContent = false;
+    }
+
+    if (!is_WHITE_SPACE(ch)) {
+      captureEnd = state.position + 1;
+    }
+
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  captureSegment(state, captureStart, captureEnd, false);
+
+  if (state.result) {
+    return true;
+  }
+
+  state.kind = _kind;
+  state.result = _result;
+  return false;
+}
+
+function readSingleQuotedScalar(state, nodeIndent) {
+  var ch,
+      captureStart, captureEnd;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x27/* ' */) {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  state.position++;
+  captureStart = captureEnd = state.position;
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    if (ch === 0x27/* ' */) {
+      captureSegment(state, captureStart, state.position, true);
+      ch = state.input.charCodeAt(++state.position);
+
+      if (ch === 0x27/* ' */) {
+        captureStart = state.position;
+        state.position++;
+        captureEnd = state.position;
+      } else {
+        return true;
+      }
+
+    } else if (is_EOL(ch)) {
+      captureSegment(state, captureStart, captureEnd, true);
+      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
+      captureStart = captureEnd = state.position;
+
+    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
+      throwError(state, 'unexpected end of the document within a single quoted scalar');
+
+    } else {
+      state.position++;
+      captureEnd = state.position;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a single quoted scalar');
+}
+
+function readDoubleQuotedScalar(state, nodeIndent) {
+  var captureStart,
+      captureEnd,
+      hexLength,
+      hexResult,
+      tmp,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x22/* " */) {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  state.position++;
+  captureStart = captureEnd = state.position;
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    if (ch === 0x22/* " */) {
+      captureSegment(state, captureStart, state.position, true);
+      state.position++;
+      return true;
+
+    } else if (ch === 0x5C/* \ */) {
+      captureSegment(state, captureStart, state.position, true);
+      ch = state.input.charCodeAt(++state.position);
+
+      if (is_EOL(ch)) {
+        skipSeparationSpace(state, false, nodeIndent);
+
+        // TODO: rework to inline fn with no type cast?
+      } else if (ch < 256 && simpleEscapeCheck[ch]) {
+        state.result += simpleEscapeMap[ch];
+        state.position++;
+
+      } else if ((tmp = escapedHexLen(ch)) > 0) {
+        hexLength = tmp;
+        hexResult = 0;
+
+        for (; hexLength > 0; hexLength--) {
+          ch = state.input.charCodeAt(++state.position);
+
+          if ((tmp = fromHexCode(ch)) >= 0) {
+            hexResult = (hexResult << 4) + tmp;
+
+          } else {
+            throwError(state, 'expected hexadecimal character');
+          }
+        }
+
+        state.result += charFromCodepoint(hexResult);
+
+        state.position++;
+
+      } else {
+        throwError(state, 'unknown escape sequence');
+      }
+
+      captureStart = captureEnd = state.position;
+
+    } else if (is_EOL(ch)) {
+      captureSegment(state, captureStart, captureEnd, true);
+      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
+      captureStart = captureEnd = state.position;
+
+    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
+      throwError(state, 'unexpected end of the document within a double quoted scalar');
+
+    } else {
+      state.position++;
+      captureEnd = state.position;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a double quoted scalar');
+}
+
+function readFlowCollection(state, nodeIndent) {
+  var readNext = true,
+      _line,
+      _tag     = state.tag,
+      _result,
+      _anchor  = state.anchor,
+      following,
+      terminator,
+      isPair,
+      isExplicitPair,
+      isMapping,
+      overridableKeys = {},
+      keyNode,
+      keyTag,
+      valueNode,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x5B/* [ */) {
+    terminator = 0x5D;/* ] */
+    isMapping = false;
+    _result = [];
+  } else if (ch === 0x7B/* { */) {
+    terminator = 0x7D;/* } */
+    isMapping = true;
+    _result = {};
+  } else {
+    return false;
+  }
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+
+  while (ch !== 0) {
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (ch === terminator) {
+      state.position++;
+      state.tag = _tag;
+      state.anchor = _anchor;
+      state.kind = isMapping ? 'mapping' : 'sequence';
+      state.result = _result;
+      return true;
+    } else if (!readNext) {
+      throwError(state, 'missed comma between flow collection entries');
+    }
+
+    keyTag = keyNode = valueNode = null;
+    isPair = isExplicitPair = false;
+
+    if (ch === 0x3F/* ? */) {
+      following = state.input.charCodeAt(state.position + 1);
+
+      if (is_WS_OR_EOL(following)) {
+        isPair = isExplicitPair = true;
+        state.position++;
+        skipSeparationSpace(state, true, nodeIndent);
+      }
+    }
+
+    _line = state.line;
+    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
+    keyTag = state.tag;
+    keyNode = state.result;
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) {
+      isPair = true;
+      ch = state.input.charCodeAt(++state.position);
+      skipSeparationSpace(state, true, nodeIndent);
+      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
+      valueNode = state.result;
+    }
+
+    if (isMapping) {
+      storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode);
+    } else if (isPair) {
+      _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode));
+    } else {
+      _result.push(keyNode);
+    }
+
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (ch === 0x2C/* , */) {
+      readNext = true;
+      ch = state.input.charCodeAt(++state.position);
+    } else {
+      readNext = false;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a flow collection');
+}
+
+function readBlockScalar(state, nodeIndent) {
+  var captureStart,
+      folding,
+      chomping       = CHOMPING_CLIP,
+      didReadContent = false,
+      detectedIndent = false,
+      textIndent     = nodeIndent,
+      emptyLines     = 0,
+      atMoreIndented = false,
+      tmp,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x7C/* | */) {
+    folding = false;
+  } else if (ch === 0x3E/* > */) {
+    folding = true;
+  } else {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+
+  while (ch !== 0) {
+    ch = state.input.charCodeAt(++state.position);
+
+    if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {
+      if (CHOMPING_CLIP === chomping) {
+        chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP;
+      } else {
+        throwError(state, 'repeat of a chomping mode identifier');
+      }
+
+    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
+      if (tmp === 0) {
+        throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');
+      } else if (!detectedIndent) {
+        textIndent = nodeIndent + tmp - 1;
+        detectedIndent = true;
+      } else {
+        throwError(state, 'repeat of an indentation width identifier');
+      }
+
+    } else {
+      break;
+    }
+  }
+
+  if (is_WHITE_SPACE(ch)) {
+    do { ch = state.input.charCodeAt(++state.position); }
+    while (is_WHITE_SPACE(ch));
+
+    if (ch === 0x23/* # */) {
+      do { ch = state.input.charCodeAt(++state.position); }
+      while (!is_EOL(ch) && (ch !== 0));
+    }
+  }
+
+  while (ch !== 0) {
+    readLineBreak(state);
+    state.lineIndent = 0;
+
+    ch = state.input.charCodeAt(state.position);
+
+    while ((!detectedIndent || state.lineIndent < textIndent) &&
+           (ch === 0x20/* Space */)) {
+      state.lineIndent++;
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    if (!detectedIndent && state.lineIndent > textIndent) {
+      textIndent = state.lineIndent;
+    }
+
+    if (is_EOL(ch)) {
+      emptyLines++;
+      continue;
+    }
+
+    // End of the scalar.
+    if (state.lineIndent < textIndent) {
+
+      // Perform the chomping.
+      if (chomping === CHOMPING_KEEP) {
+        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+      } else if (chomping === CHOMPING_CLIP) {
+        if (didReadContent) { // i.e. only if the scalar is not empty.
+          state.result += '\n';
+        }
+      }
+
+      // Break this `while` cycle and go to the funciton's epilogue.
+      break;
+    }
+
+    // Folded style: use fancy rules to handle line breaks.
+    if (folding) {
+
+      // Lines starting with white space characters (more-indented lines) are not folded.
+      if (is_WHITE_SPACE(ch)) {
+        atMoreIndented = true;
+        // except for the first content line (cf. Example 8.1)
+        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+
+      // End of more-indented block.
+      } else if (atMoreIndented) {
+        atMoreIndented = false;
+        state.result += common.repeat('\n', emptyLines + 1);
+
+      // Just one line break - perceive as the same line.
+      } else if (emptyLines === 0) {
+        if (didReadContent) { // i.e. only if we have already read some scalar content.
+          state.result += ' ';
+        }
+
+      // Several line breaks - perceive as different lines.
+      } else {
+        state.result += common.repeat('\n', emptyLines);
+      }
+
+    // Literal style: just add exact number of line breaks between content lines.
+    } else {
+      // Keep all line breaks except the header line break.
+      state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+    }
+
+    didReadContent = true;
+    detectedIndent = true;
+    emptyLines = 0;
+    captureStart = state.position;
+
+    while (!is_EOL(ch) && (ch !== 0)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    captureSegment(state, captureStart, state.position, false);
+  }
+
+  return true;
+}
+
+function readBlockSequence(state, nodeIndent) {
+  var _line,
+      _tag      = state.tag,
+      _anchor   = state.anchor,
+      _result   = [],
+      following,
+      detected  = false,
+      ch;
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+
+    if (ch !== 0x2D/* - */) {
+      break;
+    }
+
+    following = state.input.charCodeAt(state.position + 1);
+
+    if (!is_WS_OR_EOL(following)) {
+      break;
+    }
+
+    detected = true;
+    state.position++;
+
+    if (skipSeparationSpace(state, true, -1)) {
+      if (state.lineIndent <= nodeIndent) {
+        _result.push(null);
+        ch = state.input.charCodeAt(state.position);
+        continue;
+      }
+    }
+
+    _line = state.line;
+    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
+    _result.push(state.result);
+    skipSeparationSpace(state, true, -1);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) {
+      throwError(state, 'bad indentation of a sequence entry');
+    } else if (state.lineIndent < nodeIndent) {
+      break;
+    }
+  }
+
+  if (detected) {
+    state.tag = _tag;
+    state.anchor = _anchor;
+    state.kind = 'sequence';
+    state.result = _result;
+    return true;
+  }
+  return false;
+}
+
+function readBlockMapping(state, nodeIndent, flowIndent) {
+  var following,
+      allowCompact,
+      _line,
+      _pos,
+      _tag          = state.tag,
+      _anchor       = state.anchor,
+      _result       = {},
+      overridableKeys = {},
+      keyTag        = null,
+      keyNode       = null,
+      valueNode     = null,
+      atExplicitKey = false,
+      detected      = false,
+      ch;
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+    following = state.input.charCodeAt(state.position + 1);
+    _line = state.line; // Save the current line.
+    _pos = state.position;
+
+    //
+    // Explicit notation case. There are two separate blocks:
+    // first for the key (denoted by "?") and second for the value (denoted by ":")
+    //
+    if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) {
+
+      if (ch === 0x3F/* ? */) {
+        if (atExplicitKey) {
+          storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+          keyTag = keyNode = valueNode = null;
+        }
+
+        detected = true;
+        atExplicitKey = true;
+        allowCompact = true;
+
+      } else if (atExplicitKey) {
+        // i.e. 0x3A/* : */ === character after the explicit key.
+        atExplicitKey = false;
+        allowCompact = true;
+
+      } else {
+        throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line');
+      }
+
+      state.position += 1;
+      ch = following;
+
+    //
+    // Implicit notation case. Flow-style node as the key first, then ":", and the value.
+    //
+    } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {
+
+      if (state.line === _line) {
+        ch = state.input.charCodeAt(state.position);
+
+        while (is_WHITE_SPACE(ch)) {
+          ch = state.input.charCodeAt(++state.position);
+        }
+
+        if (ch === 0x3A/* : */) {
+          ch = state.input.charCodeAt(++state.position);
+
+          if (!is_WS_OR_EOL(ch)) {
+            throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');
+          }
+
+          if (atExplicitKey) {
+            storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+            keyTag = keyNode = valueNode = null;
+          }
+
+          detected = true;
+          atExplicitKey = false;
+          allowCompact = false;
+          keyTag = state.tag;
+          keyNode = state.result;
+
+        } else if (detected) {
+          throwError(state, 'can not read an implicit mapping pair; a colon is missed');
+
+        } else {
+          state.tag = _tag;
+          state.anchor = _anchor;
+          return true; // Keep the result of `composeNode`.
+        }
+
+      } else if (detected) {
+        throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');
+
+      } else {
+        state.tag = _tag;
+        state.anchor = _anchor;
+        return true; // Keep the result of `composeNode`.
+      }
+
+    } else {
+      break; // Reading is done. Go to the epilogue.
+    }
+
+    //
+    // Common reading code for both explicit and implicit notations.
+    //
+    if (state.line === _line || state.lineIndent > nodeIndent) {
+      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
+        if (atExplicitKey) {
+          keyNode = state.result;
+        } else {
+          valueNode = state.result;
+        }
+      }
+
+      if (!atExplicitKey) {
+        storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos);
+        keyTag = keyNode = valueNode = null;
+      }
+
+      skipSeparationSpace(state, true, -1);
+      ch = state.input.charCodeAt(state.position);
+    }
+
+    if (state.lineIndent > nodeIndent && (ch !== 0)) {
+      throwError(state, 'bad indentation of a mapping entry');
+    } else if (state.lineIndent < nodeIndent) {
+      break;
+    }
+  }
+
+  //
+  // Epilogue.
+  //
+
+  // Special case: last mapping's node contains only the key in explicit notation.
+  if (atExplicitKey) {
+    storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+  }
+
+  // Expose the resulting mapping.
+  if (detected) {
+    state.tag = _tag;
+    state.anchor = _anchor;
+    state.kind = 'mapping';
+    state.result = _result;
+  }
+
+  return detected;
+}
+
+function readTagProperty(state) {
+  var _position,
+      isVerbatim = false,
+      isNamed    = false,
+      tagHandle,
+      tagName,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x21/* ! */) return false;
+
+  if (state.tag !== null) {
+    throwError(state, 'duplication of a tag property');
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+
+  if (ch === 0x3C/* < */) {
+    isVerbatim = true;
+    ch = state.input.charCodeAt(++state.position);
+
+  } else if (ch === 0x21/* ! */) {
+    isNamed = true;
+    tagHandle = '!!';
+    ch = state.input.charCodeAt(++state.position);
+
+  } else {
+    tagHandle = '!';
+  }
+
+  _position = state.position;
+
+  if (isVerbatim) {
+    do { ch = state.input.charCodeAt(++state.position); }
+    while (ch !== 0 && ch !== 0x3E/* > */);
+
+    if (state.position < state.length) {
+      tagName = state.input.slice(_position, state.position);
+      ch = state.input.charCodeAt(++state.position);
+    } else {
+      throwError(state, 'unexpected end of the stream within a verbatim tag');
+    }
+  } else {
+    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+
+      if (ch === 0x21/* ! */) {
+        if (!isNamed) {
+          tagHandle = state.input.slice(_position - 1, state.position + 1);
+
+          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
+            throwError(state, 'named tag handle cannot contain such characters');
+          }
+
+          isNamed = true;
+          _position = state.position + 1;
+        } else {
+          throwError(state, 'tag suffix cannot contain exclamation marks');
+        }
+      }
+
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    tagName = state.input.slice(_position, state.position);
+
+    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
+      throwError(state, 'tag suffix cannot contain flow indicator characters');
+    }
+  }
+
+  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
+    throwError(state, 'tag name cannot contain such characters: ' + tagName);
+  }
+
+  if (isVerbatim) {
+    state.tag = tagName;
+
+  } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {
+    state.tag = state.tagMap[tagHandle] + tagName;
+
+  } else if (tagHandle === '!') {
+    state.tag = '!' + tagName;
+
+  } else if (tagHandle === '!!') {
+    state.tag = 'tag:yaml.org,2002:' + tagName;
+
+  } else {
+    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
+  }
+
+  return true;
+}
+
+function readAnchorProperty(state) {
+  var _position,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x26/* & */) return false;
+
+  if (state.anchor !== null) {
+    throwError(state, 'duplication of an anchor property');
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+  _position = state.position;
+
+  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  if (state.position === _position) {
+    throwError(state, 'name of an anchor node must contain at least one character');
+  }
+
+  state.anchor = state.input.slice(_position, state.position);
+  return true;
+}
+
+function readAlias(state) {
+  var _position, alias,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x2A/* * */) return false;
+
+  ch = state.input.charCodeAt(++state.position);
+  _position = state.position;
+
+  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  if (state.position === _position) {
+    throwError(state, 'name of an alias node must contain at least one character');
+  }
+
+  alias = state.input.slice(_position, state.position);
+
+  if (!state.anchorMap.hasOwnProperty(alias)) {
+    throwError(state, 'unidentified alias "' + alias + '"');
+  }
+
+  state.result = state.anchorMap[alias];
+  skipSeparationSpace(state, true, -1);
+  return true;
+}
+
+function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
+  var allowBlockStyles,
+      allowBlockScalars,
+      allowBlockCollections,
+      indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this<parent
+      atNewLine  = false,
+      hasContent = false,
+      typeIndex,
+      typeQuantity,
+      type,
+      flowIndent,
+      blockIndent;
+
+  if (state.listener !== null) {
+    state.listener('open', state);
+  }
+
+  state.tag    = null;
+  state.anchor = null;
+  state.kind   = null;
+  state.result = null;
+
+  allowBlockStyles = allowBlockScalars = allowBlockCollections =
+    CONTEXT_BLOCK_OUT === nodeContext ||
+    CONTEXT_BLOCK_IN  === nodeContext;
+
+  if (allowToSeek) {
+    if (skipSeparationSpace(state, true, -1)) {
+      atNewLine = true;
+
+      if (state.lineIndent > parentIndent) {
+        indentStatus = 1;
+      } else if (state.lineIndent === parentIndent) {
+        indentStatus = 0;
+      } else if (state.lineIndent < parentIndent) {
+        indentStatus = -1;
+      }
+    }
+  }
+
+  if (indentStatus === 1) {
+    while (readTagProperty(state) || readAnchorProperty(state)) {
+      if (skipSeparationSpace(state, true, -1)) {
+        atNewLine = true;
+        allowBlockCollections = allowBlockStyles;
+
+        if (state.lineIndent > parentIndent) {
+          indentStatus = 1;
+        } else if (state.lineIndent === parentIndent) {
+          indentStatus = 0;
+        } else if (state.lineIndent < parentIndent) {
+          indentStatus = -1;
+        }
+      } else {
+        allowBlockCollections = false;
+      }
+    }
+  }
+
+  if (allowBlockCollections) {
+    allowBlockCollections = atNewLine || allowCompact;
+  }
+
+  if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) {
+    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
+      flowIndent = parentIndent;
+    } else {
+      flowIndent = parentIndent + 1;
+    }
+
+    blockIndent = state.position - state.lineStart;
+
+    if (indentStatus === 1) {
+      if (allowBlockCollections &&
+          (readBlockSequence(state, blockIndent) ||
+           readBlockMapping(state, blockIndent, flowIndent)) ||
+          readFlowCollection(state, flowIndent)) {
+        hasContent = true;
+      } else {
+        if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||
+            readSingleQuotedScalar(state, flowIndent) ||
+            readDoubleQuotedScalar(state, flowIndent)) {
+          hasContent = true;
+
+        } else if (readAlias(state)) {
+          hasContent = true;
+
+          if (state.tag !== null || state.anchor !== null) {
+            throwError(state, 'alias node should not have any properties');
+          }
+
+        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
+          hasContent = true;
+
+          if (state.tag === null) {
+            state.tag = '?';
+          }
+        }
+
+        if (state.anchor !== null) {
+          state.anchorMap[state.anchor] = state.result;
+        }
+      }
+    } else if (indentStatus === 0) {
+      // Special case: block sequences are allowed to have same indentation level as the parent.
+      // http://www.yaml.org/spec/1.2/spec.html#id2799784
+      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
+    }
+  }
+
+  if (state.tag !== null && state.tag !== '!') {
+    if (state.tag === '?') {
+      for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {
+        type = state.implicitTypes[typeIndex];
+
+        // Implicit resolving is not allowed for non-scalar types, and '?'
+        // non-specific tag is only assigned to plain scalars. So, it isn't
+        // needed to check for 'kind' conformity.
+
+        if (type.resolve(state.result)) { // `state.result` updated in resolver if matched
+          state.result = type.construct(state.result);
+          state.tag = type.tag;
+          if (state.anchor !== null) {
+            state.anchorMap[state.anchor] = state.result;
+          }
+          break;
+        }
+      }
+    } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) {
+      type = state.typeMap[state.kind || 'fallback'][state.tag];
+
+      if (state.result !== null && type.kind !== state.kind) {
+        throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"');
+      }
+
+      if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched
+        throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');
+      } else {
+        state.result = type.construct(state.result);
+        if (state.anchor !== null) {
+          state.anchorMap[state.anchor] = state.result;
+        }
+      }
+    } else {
+      throwError(state, 'unknown tag !<' + state.tag + '>');
+    }
+  }
+
+  if (state.listener !== null) {
+    state.listener('close', state);
+  }
+  return state.tag !== null ||  state.anchor !== null || hasContent;
+}
+
+function readDocument(state) {
+  var documentStart = state.position,
+      _position,
+      directiveName,
+      directiveArgs,
+      hasDirectives = false,
+      ch;
+
+  state.version = null;
+  state.checkLineBreaks = state.legacy;
+  state.tagMap = {};
+  state.anchorMap = {};
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    skipSeparationSpace(state, true, -1);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (state.lineIndent > 0 || ch !== 0x25/* % */) {
+      break;
+    }
+
+    hasDirectives = true;
+    ch = state.input.charCodeAt(++state.position);
+    _position = state.position;
+
+    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    directiveName = state.input.slice(_position, state.position);
+    directiveArgs = [];
+
+    if (directiveName.length < 1) {
+      throwError(state, 'directive name must not be less than one character in length');
+    }
+
+    while (ch !== 0) {
+      while (is_WHITE_SPACE(ch)) {
+        ch = state.input.charCodeAt(++state.position);
+      }
+
+      if (ch === 0x23/* # */) {
+        do { ch = state.input.charCodeAt(++state.position); }
+        while (ch !== 0 && !is_EOL(ch));
+        break;
+      }
+
+      if (is_EOL(ch)) break;
+
+      _position = state.position;
+
+      while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+        ch = state.input.charCodeAt(++state.position);
+      }
+
+      directiveArgs.push(state.input.slice(_position, state.position));
+    }
+
+    if (ch !== 0) readLineBreak(state);
+
+    if (_hasOwnProperty.call(directiveHandlers, directiveName)) {
+      directiveHandlers[directiveName](state, directiveName, directiveArgs);
+    } else {
+      throwWarning(state, 'unknown document directive "' + directiveName + '"');
+    }
+  }
+
+  skipSeparationSpace(state, true, -1);
+
+  if (state.lineIndent === 0 &&
+      state.input.charCodeAt(state.position)     === 0x2D/* - */ &&
+      state.input.charCodeAt(state.position + 1) === 0x2D/* - */ &&
+      state.input.charCodeAt(state.position + 2) === 0x2D/* - */) {
+    state.position += 3;
+    skipSeparationSpace(state, true, -1);
+
+  } else if (hasDirectives) {
+    throwError(state, 'directives end mark is expected');
+  }
+
+  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
+  skipSeparationSpace(state, true, -1);
+
+  if (state.checkLineBreaks &&
+      PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
+    throwWarning(state, 'non-ASCII line breaks are interpreted as content');
+  }
+
+  state.documents.push(state.result);
+
+  if (state.position === state.lineStart && testDocumentSeparator(state)) {
+
+    if (state.input.charCodeAt(state.position) === 0x2E/* . */) {
+      state.position += 3;
+      skipSeparationSpace(state, true, -1);
+    }
+    return;
+  }
+
+  if (state.position < (state.length - 1)) {
+    throwError(state, 'end of the stream or a document separator is expected');
+  } else {
+    return;
+  }
+}
+
+
+function loadDocuments(input, options) {
+  input = String(input);
+  options = options || {};
+
+  if (input.length !== 0) {
+
+    // Add tailing `\n` if not exists
+    if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ &&
+        input.charCodeAt(input.length - 1) !== 0x0D/* CR */) {
+      input += '\n';
+    }
+
+    // Strip BOM
+    if (input.charCodeAt(0) === 0xFEFF) {
+      input = input.slice(1);
+    }
+  }
+
+  var state = new State(input, options);
+
+  // Use 0 as string terminator. That significantly simplifies bounds check.
+  state.input += '\0';
+
+  while (state.input.charCodeAt(state.position) === 0x20/* Space */) {
+    state.lineIndent += 1;
+    state.position += 1;
+  }
+
+  while (state.position < (state.length - 1)) {
+    readDocument(state);
+  }
+
+  return state.documents;
+}
+
+
+function loadAll(input, iterator, options) {
+  var documents = loadDocuments(input, options), index, length;
+
+  if (typeof iterator !== 'function') {
+    return documents;
+  }
+
+  for (index = 0, length = documents.length; index < length; index += 1) {
+    iterator(documents[index]);
+  }
+}
+
+
+function load(input, options) {
+  var documents = loadDocuments(input, options);
+
+  if (documents.length === 0) {
+    /*eslint-disable no-undefined*/
+    return undefined;
+  } else if (documents.length === 1) {
+    return documents[0];
+  }
+  throw new YAMLException('expected a single document in the stream, but found more');
+}
+
+
+function safeLoadAll(input, output, options) {
+  if (typeof output === 'function') {
+    loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+  } else {
+    return loadAll(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+  }
+}
+
+
+function safeLoad(input, options) {
+  return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+}
+
+
+module.exports.loadAll     = loadAll;
+module.exports.load        = load;
+module.exports.safeLoadAll = safeLoadAll;
+module.exports.safeLoad    = safeLoad;
+
+},{"./common":2,"./exception":4,"./mark":6,"./schema/default_full":9,"./schema/default_safe":10}],6:[function(require,module,exports){
+'use strict';
+
+
+var common = require('./common');
+
+
+function Mark(name, buffer, position, line, column) {
+  this.name     = name;
+  this.buffer   = buffer;
+  this.position = position;
+  this.line     = line;
+  this.column   = column;
+}
+
+
+Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
+  var head, start, tail, end, snippet;
+
+  if (!this.buffer) return null;
+
+  indent = indent || 4;
+  maxLength = maxLength || 75;
+
+  head = '';
+  start = this.position;
+
+  while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) {
+    start -= 1;
+    if (this.position - start > (maxLength / 2 - 1)) {
+      head = ' ... ';
+      start += 5;
+      break;
+    }
+  }
+
+  tail = '';
+  end = this.position;
+
+  while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) {
+    end += 1;
+    if (end - this.position > (maxLength / 2 - 1)) {
+      tail = ' ... ';
+      end -= 5;
+      break;
+    }
+  }
+
+  snippet = this.buffer.slice(start, end);
+
+  return common.repeat(' ', indent) + head + snippet + tail + '\n' +
+         common.repeat(' ', indent + this.position - start + head.length) + '^';
+};
+
+
+Mark.prototype.toString = function toString(compact) {
+  var snippet, where = '';
+
+  if (this.name) {
+    where += 'in "' + this.name + '" ';
+  }
+
+  where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);
+
+  if (!compact) {
+    snippet = this.getSnippet();
+
+    if (snippet) {
+      where += ':\n' + snippet;
+    }
+  }
+
+  return where;
+};
+
+
+module.exports = Mark;
+
+},{"./common":2}],7:[function(require,module,exports){
+'use strict';
+
+/*eslint-disable max-len*/
+
+var common        = require('./common');
+var YAMLException = require('./exception');
+var Type          = require('./type');
+
+
+function compileList(schema, name, result) {
+  var exclude = [];
+
+  schema.include.forEach(function (includedSchema) {
+    result = compileList(includedSchema, name, result);
+  });
+
+  schema[name].forEach(function (currentType) {
+    result.forEach(function (previousType, previousIndex) {
+      if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) {
+        exclude.push(previousIndex);
+      }
+    });
+
+    result.push(currentType);
+  });
+
+  return result.filter(function (type, index) {
+    return exclude.indexOf(index) === -1;
+  });
+}
+
+
+function compileMap(/* lists... */) {
+  var result = {
+        scalar: {},
+        sequence: {},
+        mapping: {},
+        fallback: {}
+      }, index, length;
+
+  function collectType(type) {
+    result[type.kind][type.tag] = result['fallback'][type.tag] = type;
+  }
+
+  for (index = 0, length = arguments.length; index < length; index += 1) {
+    arguments[index].forEach(collectType);
+  }
+  return result;
+}
+
+
+function Schema(definition) {
+  this.include  = definition.include  || [];
+  this.implicit = definition.implicit || [];
+  this.explicit = definition.explicit || [];
+
+  this.implicit.forEach(function (type) {
+    if (type.loadKind && type.loadKind !== 'scalar') {
+      throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');
+    }
+  });
+
+  this.compiledImplicit = compileList(this, 'implicit', []);
+  this.compiledExplicit = compileList(this, 'explicit', []);
+  this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit);
+}
+
+
+Schema.DEFAULT = null;
+
+
+Schema.create = function createSchema() {
+  var schemas, types;
+
+  switch (arguments.length) {
+    case 1:
+      schemas = Schema.DEFAULT;
+      types = arguments[0];
+      break;
+
+    case 2:
+      schemas = arguments[0];
+      types = arguments[1];
+      break;
+
+    default:
+      throw new YAMLException('Wrong number of arguments for Schema.create function');
+  }
+
+  schemas = common.toArray(schemas);
+  types = common.toArray(types);
+
+  if (!schemas.every(function (schema) { return schema instanceof Schema; })) {
+    throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');
+  }
+
+  if (!types.every(function (type) { return type instanceof Type; })) {
+    throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');
+  }
+
+  return new Schema({
+    include: schemas,
+    explicit: types
+  });
+};
+
+
+module.exports = Schema;
+
+},{"./common":2,"./exception":4,"./type":13}],8:[function(require,module,exports){
+// Standard YAML's Core schema.
+// http://www.yaml.org/spec/1.2/spec.html#id2804923
+//
+// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
+// So, Core schema has no distinctions from JSON schema is JS-YAML.
+
+
+'use strict';
+
+
+var Schema = require('../schema');
+
+
+module.exports = new Schema({
+  include: [
+    require('./json')
+  ]
+});
+
+},{"../schema":7,"./json":12}],9:[function(require,module,exports){
+// JS-YAML's default schema for `load` function.
+// It is not described in the YAML specification.
+//
+// This schema is based on JS-YAML's default safe schema and includes
+// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function.
+//
+// Also this schema is used as default base schema at `Schema.create` function.
+
+
+'use strict';
+
+
+var Schema = require('../schema');
+
+
+module.exports = Schema.DEFAULT = new Schema({
+  include: [
+    require('./default_safe')
+  ],
+  explicit: [
+    require('../type/js/undefined'),
+    require('../type/js/regexp'),
+    require('../type/js/function')
+  ]
+});
+
+},{"../schema":7,"../type/js/function":18,"../type/js/regexp":19,"../type/js/undefined":20,"./default_safe":10}],10:[function(require,module,exports){
+// JS-YAML's default schema for `safeLoad` function.
+// It is not described in the YAML specification.
+//
+// This schema is based on standard YAML's Core schema and includes most of
+// extra types described at YAML tag repository. (http://yaml.org/type/)
+
+
+'use strict';
+
+
+var Schema = require('../schema');
+
+
+module.exports = new Schema({
+  include: [
+    require('./core')
+  ],
+  implicit: [
+    require('../type/timestamp'),
+    require('../type/merge')
+  ],
+  explicit: [
+    require('../type/binary'),
+    require('../type/omap'),
+    require('../type/pairs'),
+    require('../type/set')
+  ]
+});
+
+},{"../schema":7,"../type/binary":14,"../type/merge":22,"../type/omap":24,"../type/pairs":25,"../type/set":27,"../type/timestamp":29,"./core":8}],11:[function(require,module,exports){
+// Standard YAML's Failsafe schema.
+// http://www.yaml.org/spec/1.2/spec.html#id2802346
+
+
+'use strict';
+
+
+var Schema = require('../schema');
+
+
+module.exports = new Schema({
+  explicit: [
+    require('../type/str'),
+    require('../type/seq'),
+    require('../type/map')
+  ]
+});
+
+},{"../schema":7,"../type/map":21,"../type/seq":26,"../type/str":28}],12:[function(require,module,exports){
+// Standard YAML's JSON schema.
+// http://www.yaml.org/spec/1.2/spec.html#id2803231
+//
+// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
+// So, this schema is not such strict as defined in the YAML specification.
+// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc.
+
+
+'use strict';
+
+
+var Schema = require('../schema');
+
+
+module.exports = new Schema({
+  include: [
+    require('./failsafe')
+  ],
+  implicit: [
+    require('../type/null'),
+    require('../type/bool'),
+    require('../type/int'),
+    require('../type/float')
+  ]
+});
+
+},{"../schema":7,"../type/bool":15,"../type/float":16,"../type/int":17,"../type/null":23,"./failsafe":11}],13:[function(require,module,exports){
+'use strict';
+
+var YAMLException = require('./exception');
+
+var TYPE_CONSTRUCTOR_OPTIONS = [
+  'kind',
+  'resolve',
+  'construct',
+  'instanceOf',
+  'predicate',
+  'represent',
+  'defaultStyle',
+  'styleAliases'
+];
+
+var YAML_NODE_KINDS = [
+  'scalar',
+  'sequence',
+  'mapping'
+];
+
+function compileStyleAliases(map) {
+  var result = {};
+
+  if (map !== null) {
+    Object.keys(map).forEach(function (style) {
+      map[style].forEach(function (alias) {
+        result[String(alias)] = style;
+      });
+    });
+  }
+
+  return result;
+}
+
+function Type(tag, options) {
+  options = options || {};
+
+  Object.keys(options).forEach(function (name) {
+    if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) {
+      throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
+    }
+  });
+
+  // TODO: Add tag format check.
+  this.tag          = tag;
+  this.kind         = options['kind']         || null;
+  this.resolve      = options['resolve']      || function () { return true; };
+  this.construct    = options['construct']    || function (data) { return data; };
+  this.instanceOf   = options['instanceOf']   || null;
+  this.predicate    = options['predicate']    || null;
+  this.represent    = options['represent']    || null;
+  this.defaultStyle = options['defaultStyle'] || null;
+  this.styleAliases = compileStyleAliases(options['styleAliases'] || null);
+
+  if (YAML_NODE_KINDS.indexOf(this.kind) === -1) {
+    throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
+  }
+}
+
+module.exports = Type;
+
+},{"./exception":4}],14:[function(require,module,exports){
+'use strict';
+
+/*eslint-disable no-bitwise*/
+
+var NodeBuffer;
+
+try {
+  // A trick for browserified version, to not include `Buffer` shim
+  var _require = require;
+  NodeBuffer = _require('buffer').Buffer;
+} catch (__) {}
+
+var Type       = require('../type');
+
+
+// [ 64, 65, 66 ] -> [ padding, CR, LF ]
+var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r';
+
+
+function resolveYamlBinary(data) {
+  if (data === null) return false;
+
+  var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP;
+
+  // Convert one by one.
+  for (idx = 0; idx < max; idx++) {
+    code = map.indexOf(data.charAt(idx));
+
+    // Skip CR/LF
+    if (code > 64) continue;
+
+    // Fail on illegal characters
+    if (code < 0) return false;
+
+    bitlen += 6;
+  }
+
+  // If there are any bits left, source was corrupted
+  return (bitlen % 8) === 0;
+}
+
+function constructYamlBinary(data) {
+  var idx, tailbits,
+      input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan
+      max = input.length,
+      map = BASE64_MAP,
+      bits = 0,
+      result = [];
+
+  // Collect by 6*4 bits (3 bytes)
+
+  for (idx = 0; idx < max; idx++) {
+    if ((idx % 4 === 0) && idx) {
+      result.push((bits >> 16) & 0xFF);
+      result.push((bits >> 8) & 0xFF);
+      result.push(bits & 0xFF);
+    }
+
+    bits = (bits << 6) | map.indexOf(input.charAt(idx));
+  }
+
+  // Dump tail
+
+  tailbits = (max % 4) * 6;
+
+  if (tailbits === 0) {
+    result.push((bits >> 16) & 0xFF);
+    result.push((bits >> 8) & 0xFF);
+    result.push(bits & 0xFF);
+  } else if (tailbits === 18) {
+    result.push((bits >> 10) & 0xFF);
+    result.push((bits >> 2) & 0xFF);
+  } else if (tailbits === 12) {
+    result.push((bits >> 4) & 0xFF);
+  }
+
+  // Wrap into Buffer for NodeJS and leave Array for browser
+  if (NodeBuffer) {
+    // Support node 6.+ Buffer API when available
+    return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result);
+  }
+
+  return result;
+}
+
+function representYamlBinary(object /*, style*/) {
+  var result = '', bits = 0, idx, tail,
+      max = object.length,
+      map = BASE64_MAP;
+
+  // Convert every three bytes to 4 ASCII characters.
+
+  for (idx = 0; idx < max; idx++) {
+    if ((idx % 3 === 0) && idx) {
+      result += map[(bits >> 18) & 0x3F];
+      result += map[(bits >> 12) & 0x3F];
+      result += map[(bits >> 6) & 0x3F];
+      result += map[bits & 0x3F];
+    }
+
+    bits = (bits << 8) + object[idx];
+  }
+
+  // Dump tail
+
+  tail = max % 3;
+
+  if (tail === 0) {
+    result += map[(bits >> 18) & 0x3F];
+    result += map[(bits >> 12) & 0x3F];
+    result += map[(bits >> 6) & 0x3F];
+    result += map[bits & 0x3F];
+  } else if (tail === 2) {
+    result += map[(bits >> 10) & 0x3F];
+    result += map[(bits >> 4) & 0x3F];
+    result += map[(bits << 2) & 0x3F];
+    result += map[64];
+  } else if (tail === 1) {
+    result += map[(bits >> 2) & 0x3F];
+    result += map[(bits << 4) & 0x3F];
+    result += map[64];
+    result += map[64];
+  }
+
+  return result;
+}
+
+function isBinary(object) {
+  return NodeBuffer && NodeBuffer.isBuffer(object);
+}
+
+module.exports = new Type('tag:yaml.org,2002:binary', {
+  kind: 'scalar',
+  resolve: resolveYamlBinary,
+  construct: constructYamlBinary,
+  predicate: isBinary,
+  represent: representYamlBinary
+});
+
+},{"../type":13}],15:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlBoolean(data) {
+  if (data === null) return false;
+
+  var max = data.length;
+
+  return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||
+         (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));
+}
+
+function constructYamlBoolean(data) {
+  return data === 'true' ||
+         data === 'True' ||
+         data === 'TRUE';
+}
+
+function isBoolean(object) {
+  return Object.prototype.toString.call(object) === '[object Boolean]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:bool', {
+  kind: 'scalar',
+  resolve: resolveYamlBoolean,
+  construct: constructYamlBoolean,
+  predicate: isBoolean,
+  represent: {
+    lowercase: function (object) { return object ? 'true' : 'false'; },
+    uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },
+    camelcase: function (object) { return object ? 'True' : 'False'; }
+  },
+  defaultStyle: 'lowercase'
+});
+
+},{"../type":13}],16:[function(require,module,exports){
+'use strict';
+
+var common = require('../common');
+var Type   = require('../type');
+
+var YAML_FLOAT_PATTERN = new RegExp(
+  // 2.5e4, 2.5 and integers
+  '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' +
+  // .2e4, .2
+  // special case, seems not from spec
+  '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' +
+  // 20:59
+  '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' +
+  // .inf
+  '|[-+]?\\.(?:inf|Inf|INF)' +
+  // .nan
+  '|\\.(?:nan|NaN|NAN))$');
+
+function resolveYamlFloat(data) {
+  if (data === null) return false;
+
+  if (!YAML_FLOAT_PATTERN.test(data) ||
+      // Quick hack to not allow integers end with `_`
+      // Probably should update regexp & check speed
+      data[data.length - 1] === '_') {
+    return false;
+  }
+
+  return true;
+}
+
+function constructYamlFloat(data) {
+  var value, sign, base, digits;
+
+  value  = data.replace(/_/g, '').toLowerCase();
+  sign   = value[0] === '-' ? -1 : 1;
+  digits = [];
+
+  if ('+-'.indexOf(value[0]) >= 0) {
+    value = value.slice(1);
+  }
+
+  if (value === '.inf') {
+    return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
+
+  } else if (value === '.nan') {
+    return NaN;
+
+  } else if (value.indexOf(':') >= 0) {
+    value.split(':').forEach(function (v) {
+      digits.unshift(parseFloat(v, 10));
+    });
+
+    value = 0.0;
+    base = 1;
+
+    digits.forEach(function (d) {
+      value += d * base;
+      base *= 60;
+    });
+
+    return sign * value;
+
+  }
+  return sign * parseFloat(value, 10);
+}
+
+
+var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/;
+
+function representYamlFloat(object, style) {
+  var res;
+
+  if (isNaN(object)) {
+    switch (style) {
+      case 'lowercase': return '.nan';
+      case 'uppercase': return '.NAN';
+      case 'camelcase': return '.NaN';
+    }
+  } else if (Number.POSITIVE_INFINITY === object) {
+    switch (style) {
+      case 'lowercase': return '.inf';
+      case 'uppercase': return '.INF';
+      case 'camelcase': return '.Inf';
+    }
+  } else if (Number.NEGATIVE_INFINITY === object) {
+    switch (style) {
+      case 'lowercase': return '-.inf';
+      case 'uppercase': return '-.INF';
+      case 'camelcase': return '-.Inf';
+    }
+  } else if (common.isNegativeZero(object)) {
+    return '-0.0';
+  }
+
+  res = object.toString(10);
+
+  // JS stringifier can build scientific format without dots: 5e-100,
+  // while YAML requres dot: 5.e-100. Fix it with simple hack
+
+  return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res;
+}
+
+function isFloat(object) {
+  return (Object.prototype.toString.call(object) === '[object Number]') &&
+         (object % 1 !== 0 || common.isNegativeZero(object));
+}
+
+module.exports = new Type('tag:yaml.org,2002:float', {
+  kind: 'scalar',
+  resolve: resolveYamlFloat,
+  construct: constructYamlFloat,
+  predicate: isFloat,
+  represent: representYamlFloat,
+  defaultStyle: 'lowercase'
+});
+
+},{"../common":2,"../type":13}],17:[function(require,module,exports){
+'use strict';
+
+var common = require('../common');
+var Type   = require('../type');
+
+function isHexCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
+         ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
+         ((0x61/* a */ <= c) && (c <= 0x66/* f */));
+}
+
+function isOctCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
+}
+
+function isDecCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
+}
+
+function resolveYamlInteger(data) {
+  if (data === null) return false;
+
+  var max = data.length,
+      index = 0,
+      hasDigits = false,
+      ch;
+
+  if (!max) return false;
+
+  ch = data[index];
+
+  // sign
+  if (ch === '-' || ch === '+') {
+    ch = data[++index];
+  }
+
+  if (ch === '0') {
+    // 0
+    if (index + 1 === max) return true;
+    ch = data[++index];
+
+    // base 2, base 8, base 16
+
+    if (ch === 'b') {
+      // base 2
+      index++;
+
+      for (; index < max; index++) {
+        ch = data[index];
+        if (ch === '_') continue;
+        if (ch !== '0' && ch !== '1') return false;
+        hasDigits = true;
+      }
+      return hasDigits && ch !== '_';
+    }
+
+
+    if (ch === 'x') {
+      // base 16
+      index++;
+
+      for (; index < max; index++) {
+        ch = data[index];
+        if (ch === '_') continue;
+        if (!isHexCode(data.charCodeAt(index))) return false;
+        hasDigits = true;
+      }
+      return hasDigits && ch !== '_';
+    }
+
+    // base 8
+    for (; index < max; index++) {
+      ch = data[index];
+      if (ch === '_') continue;
+      if (!isOctCode(data.charCodeAt(index))) return false;
+      hasDigits = true;
+    }
+    return hasDigits && ch !== '_';
+  }
+
+  // base 10 (except 0) or base 60
+
+  // value should not start with `_`;
+  if (ch === '_') return false;
+
+  for (; index < max; index++) {
+    ch = data[index];
+    if (ch === '_') continue;
+    if (ch === ':') break;
+    if (!isDecCode(data.charCodeAt(index))) {
+      return false;
+    }
+    hasDigits = true;
+  }
+
+  // Should have digits and should not end with `_`
+  if (!hasDigits || ch === '_') return false;
+
+  // if !base60 - done;
+  if (ch !== ':') return true;
+
+  // base60 almost not used, no needs to optimize
+  return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
+}
+
+function constructYamlInteger(data) {
+  var value = data, sign = 1, ch, base, digits = [];
+
+  if (value.indexOf('_') !== -1) {
+    value = value.replace(/_/g, '');
+  }
+
+  ch = value[0];
+
+  if (ch === '-' || ch === '+') {
+    if (ch === '-') sign = -1;
+    value = value.slice(1);
+    ch = value[0];
+  }
+
+  if (value === '0') return 0;
+
+  if (ch === '0') {
+    if (value[1] === 'b') return sign * parseInt(value.slice(2), 2);
+    if (value[1] === 'x') return sign * parseInt(value, 16);
+    return sign * parseInt(value, 8);
+  }
+
+  if (value.indexOf(':') !== -1) {
+    value.split(':').forEach(function (v) {
+      digits.unshift(parseInt(v, 10));
+    });
+
+    value = 0;
+    base = 1;
+
+    digits.forEach(function (d) {
+      value += (d * base);
+      base *= 60;
+    });
+
+    return sign * value;
+
+  }
+
+  return sign * parseInt(value, 10);
+}
+
+function isInteger(object) {
+  return (Object.prototype.toString.call(object)) === '[object Number]' &&
+         (object % 1 === 0 && !common.isNegativeZero(object));
+}
+
+module.exports = new Type('tag:yaml.org,2002:int', {
+  kind: 'scalar',
+  resolve: resolveYamlInteger,
+  construct: constructYamlInteger,
+  predicate: isInteger,
+  represent: {
+    binary:      function (object) { return '0b' + object.toString(2); },
+    octal:       function (object) { return '0'  + object.toString(8); },
+    decimal:     function (object) { return        object.toString(10); },
+    hexadecimal: function (object) { return '0x' + object.toString(16).toUpperCase(); }
+  },
+  defaultStyle: 'decimal',
+  styleAliases: {
+    binary:      [ 2,  'bin' ],
+    octal:       [ 8,  'oct' ],
+    decimal:     [ 10, 'dec' ],
+    hexadecimal: [ 16, 'hex' ]
+  }
+});
+
+},{"../common":2,"../type":13}],18:[function(require,module,exports){
+'use strict';
+
+var esprima;
+
+// Browserified version does not have esprima
+//
+// 1. For node.js just require module as deps
+// 2. For browser try to require mudule via external AMD system.
+//    If not found - try to fallback to window.esprima. If not
+//    found too - then fail to parse.
+//
+try {
+  // workaround to exclude package from browserify list.
+  var _require = require;
+  esprima = _require('esprima');
+} catch (_) {
+  /*global window */
+  if (typeof window !== 'undefined') esprima = window.esprima;
+}
+
+var Type = require('../../type');
+
+function resolveJavascriptFunction(data) {
+  if (data === null) return false;
+
+  try {
+    var source = '(' + data + ')',
+        ast    = esprima.parse(source, { range: true });
+
+    if (ast.type                    !== 'Program'             ||
+        ast.body.length             !== 1                     ||
+        ast.body[0].type            !== 'ExpressionStatement' ||
+        ast.body[0].expression.type !== 'FunctionExpression') {
+      return false;
+    }
+
+    return true;
+  } catch (err) {
+    return false;
+  }
+}
+
+function constructJavascriptFunction(data) {
+  /*jslint evil:true*/
+
+  var source = '(' + data + ')',
+      ast    = esprima.parse(source, { range: true }),
+      params = [],
+      body;
+
+  if (ast.type                    !== 'Program'             ||
+      ast.body.length             !== 1                     ||
+      ast.body[0].type            !== 'ExpressionStatement' ||
+      ast.body[0].expression.type !== 'FunctionExpression') {
+    throw new Error('Failed to resolve function');
+  }
+
+  ast.body[0].expression.params.forEach(function (param) {
+    params.push(param.name);
+  });
+
+  body = ast.body[0].expression.body.range;
+
+  // Esprima's ranges include the first '{' and the last '}' characters on
+  // function expressions. So cut them out.
+  /*eslint-disable no-new-func*/
+  return new Function(params, source.slice(body[0] + 1, body[1] - 1));
+}
+
+function representJavascriptFunction(object /*, style*/) {
+  return object.toString();
+}
+
+function isFunction(object) {
+  return Object.prototype.toString.call(object) === '[object Function]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/function', {
+  kind: 'scalar',
+  resolve: resolveJavascriptFunction,
+  construct: constructJavascriptFunction,
+  predicate: isFunction,
+  represent: representJavascriptFunction
+});
+
+},{"../../type":13}],19:[function(require,module,exports){
+'use strict';
+
+var Type = require('../../type');
+
+function resolveJavascriptRegExp(data) {
+  if (data === null) return false;
+  if (data.length === 0) return false;
+
+  var regexp = data,
+      tail   = /\/([gim]*)$/.exec(data),
+      modifiers = '';
+
+  // if regexp starts with '/' it can have modifiers and must be properly closed
+  // `/foo/gim` - modifiers tail can be maximum 3 chars
+  if (regexp[0] === '/') {
+    if (tail) modifiers = tail[1];
+
+    if (modifiers.length > 3) return false;
+    // if expression starts with /, is should be properly terminated
+    if (regexp[regexp.length - modifiers.length - 1] !== '/') return false;
+  }
+
+  return true;
+}
+
+function constructJavascriptRegExp(data) {
+  var regexp = data,
+      tail   = /\/([gim]*)$/.exec(data),
+      modifiers = '';
+
+  // `/foo/gim` - tail can be maximum 4 chars
+  if (regexp[0] === '/') {
+    if (tail) modifiers = tail[1];
+    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
+  }
+
+  return new RegExp(regexp, modifiers);
+}
+
+function representJavascriptRegExp(object /*, style*/) {
+  var result = '/' + object.source + '/';
+
+  if (object.global) result += 'g';
+  if (object.multiline) result += 'm';
+  if (object.ignoreCase) result += 'i';
+
+  return result;
+}
+
+function isRegExp(object) {
+  return Object.prototype.toString.call(object) === '[object RegExp]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/regexp', {
+  kind: 'scalar',
+  resolve: resolveJavascriptRegExp,
+  construct: constructJavascriptRegExp,
+  predicate: isRegExp,
+  represent: representJavascriptRegExp
+});
+
+},{"../../type":13}],20:[function(require,module,exports){
+'use strict';
+
+var Type = require('../../type');
+
+function resolveJavascriptUndefined() {
+  return true;
+}
+
+function constructJavascriptUndefined() {
+  /*eslint-disable no-undefined*/
+  return undefined;
+}
+
+function representJavascriptUndefined() {
+  return '';
+}
+
+function isUndefined(object) {
+  return typeof object === 'undefined';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/undefined', {
+  kind: 'scalar',
+  resolve: resolveJavascriptUndefined,
+  construct: constructJavascriptUndefined,
+  predicate: isUndefined,
+  represent: representJavascriptUndefined
+});
+
+},{"../../type":13}],21:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:map', {
+  kind: 'mapping',
+  construct: function (data) { return data !== null ? data : {}; }
+});
+
+},{"../type":13}],22:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlMerge(data) {
+  return data === '<<' || data === null;
+}
+
+module.exports = new Type('tag:yaml.org,2002:merge', {
+  kind: 'scalar',
+  resolve: resolveYamlMerge
+});
+
+},{"../type":13}],23:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlNull(data) {
+  if (data === null) return true;
+
+  var max = data.length;
+
+  return (max === 1 && data === '~') ||
+         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
+}
+
+function constructYamlNull() {
+  return null;
+}
+
+function isNull(object) {
+  return object === null;
+}
+
+module.exports = new Type('tag:yaml.org,2002:null', {
+  kind: 'scalar',
+  resolve: resolveYamlNull,
+  construct: constructYamlNull,
+  predicate: isNull,
+  represent: {
+    canonical: function () { return '~';    },
+    lowercase: function () { return 'null'; },
+    uppercase: function () { return 'NULL'; },
+    camelcase: function () { return 'Null'; }
+  },
+  defaultStyle: 'lowercase'
+});
+
+},{"../type":13}],24:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+var _toString       = Object.prototype.toString;
+
+function resolveYamlOmap(data) {
+  if (data === null) return true;
+
+  var objectKeys = [], index, length, pair, pairKey, pairHasKey,
+      object = data;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+    pairHasKey = false;
+
+    if (_toString.call(pair) !== '[object Object]') return false;
+
+    for (pairKey in pair) {
+      if (_hasOwnProperty.call(pair, pairKey)) {
+        if (!pairHasKey) pairHasKey = true;
+        else return false;
+      }
+    }
+
+    if (!pairHasKey) return false;
+
+    if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
+    else return false;
+  }
+
+  return true;
+}
+
+function constructYamlOmap(data) {
+  return data !== null ? data : [];
+}
+
+module.exports = new Type('tag:yaml.org,2002:omap', {
+  kind: 'sequence',
+  resolve: resolveYamlOmap,
+  construct: constructYamlOmap
+});
+
+},{"../type":13}],25:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+var _toString = Object.prototype.toString;
+
+function resolveYamlPairs(data) {
+  if (data === null) return true;
+
+  var index, length, pair, keys, result,
+      object = data;
+
+  result = new Array(object.length);
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+
+    if (_toString.call(pair) !== '[object Object]') return false;
+
+    keys = Object.keys(pair);
+
+    if (keys.length !== 1) return false;
+
+    result[index] = [ keys[0], pair[keys[0]] ];
+  }
+
+  return true;
+}
+
+function constructYamlPairs(data) {
+  if (data === null) return [];
+
+  var index, length, pair, keys, result,
+      object = data;
+
+  result = new Array(object.length);
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+
+    keys = Object.keys(pair);
+
+    result[index] = [ keys[0], pair[keys[0]] ];
+  }
+
+  return result;
+}
+
+module.exports = new Type('tag:yaml.org,2002:pairs', {
+  kind: 'sequence',
+  resolve: resolveYamlPairs,
+  construct: constructYamlPairs
+});
+
+},{"../type":13}],26:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:seq', {
+  kind: 'sequence',
+  construct: function (data) { return data !== null ? data : []; }
+});
+
+},{"../type":13}],27:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+function resolveYamlSet(data) {
+  if (data === null) return true;
+
+  var key, object = data;
+
+  for (key in object) {
+    if (_hasOwnProperty.call(object, key)) {
+      if (object[key] !== null) return false;
+    }
+  }
+
+  return true;
+}
+
+function constructYamlSet(data) {
+  return data !== null ? data : {};
+}
+
+module.exports = new Type('tag:yaml.org,2002:set', {
+  kind: 'mapping',
+  resolve: resolveYamlSet,
+  construct: constructYamlSet
+});
+
+},{"../type":13}],28:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:str', {
+  kind: 'scalar',
+  construct: function (data) { return data !== null ? data : ''; }
+});
+
+},{"../type":13}],29:[function(require,module,exports){
+'use strict';
+
+var Type = require('../type');
+
+var YAML_DATE_REGEXP = new RegExp(
+  '^([0-9][0-9][0-9][0-9])'          + // [1] year
+  '-([0-9][0-9])'                    + // [2] month
+  '-([0-9][0-9])$');                   // [3] day
+
+var YAML_TIMESTAMP_REGEXP = new RegExp(
+  '^([0-9][0-9][0-9][0-9])'          + // [1] year
+  '-([0-9][0-9]?)'                   + // [2] month
+  '-([0-9][0-9]?)'                   + // [3] day
+  '(?:[Tt]|[ \\t]+)'                 + // ...
+  '([0-9][0-9]?)'                    + // [4] hour
+  ':([0-9][0-9])'                    + // [5] minute
+  ':([0-9][0-9])'                    + // [6] second
+  '(?:\\.([0-9]*))?'                 + // [7] fraction
+  '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
+  '(?::([0-9][0-9]))?))?$');           // [11] tz_minute
+
+function resolveYamlTimestamp(data) {
+  if (data === null) return false;
+  if (YAML_DATE_REGEXP.exec(data) !== null) return true;
+  if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;
+  return false;
+}
+
+function constructYamlTimestamp(data) {
+  var match, year, month, day, hour, minute, second, fraction = 0,
+      delta = null, tz_hour, tz_minute, date;
+
+  match = YAML_DATE_REGEXP.exec(data);
+  if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);
+
+  if (match === null) throw new Error('Date resolve error');
+
+  // match: [1] year [2] month [3] day
+
+  year = +(match[1]);
+  month = +(match[2]) - 1; // JS month starts with 0
+  day = +(match[3]);
+
+  if (!match[4]) { // no hour
+    return new Date(Date.UTC(year, month, day));
+  }
+
+  // match: [4] hour [5] minute [6] second [7] fraction
+
+  hour = +(match[4]);
+  minute = +(match[5]);
+  second = +(match[6]);
+
+  if (match[7]) {
+    fraction = match[7].slice(0, 3);
+    while (fraction.length < 3) { // milli-seconds
+      fraction += '0';
+    }
+    fraction = +fraction;
+  }
+
+  // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute
+
+  if (match[9]) {
+    tz_hour = +(match[10]);
+    tz_minute = +(match[11] || 0);
+    delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
+    if (match[9] === '-') delta = -delta;
+  }
+
+  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
+
+  if (delta) date.setTime(date.getTime() - delta);
+
+  return date;
+}
+
+function representYamlTimestamp(object /*, style*/) {
+  return object.toISOString();
+}
+
+module.exports = new Type('tag:yaml.org,2002:timestamp', {
+  kind: 'scalar',
+  resolve: resolveYamlTimestamp,
+  construct: constructYamlTimestamp,
+  instanceOf: Date,
+  represent: representYamlTimestamp
+});
+
+},{"../type":13}],"/":[function(require,module,exports){
+'use strict';
+
+
+var yaml = require('./lib/js-yaml.js');
+
+
+module.exports = yaml;
+
+},{"./lib/js-yaml.js":1}]},{},[])("/")
+});
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.min.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/dist/js-yaml.min.js
new file mode 100644 (file)
index 0000000..5d748b0
--- /dev/null
@@ -0,0 +1 @@
+!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).jsyaml=e()}}(function(){return function e(t,n,i){function r(a,s){if(!n[a]){if(!t[a]){var c="function"==typeof require&&require;if(!s&&c)return c(a,!0);if(o)return o(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[a]={exports:{}};t[a][0].call(l.exports,function(e){var n=t[a][1][e];return r(n||e)},l,l.exports,e,t,n,i)}return n[a].exports}for(var o="function"==typeof require&&require,a=0;a<i.length;a++)r(i[a]);return r}({1:[function(e,t,n){"use strict";function i(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}var r=e("./js-yaml/loader"),o=e("./js-yaml/dumper");t.exports.Type=e("./js-yaml/type"),t.exports.Schema=e("./js-yaml/schema"),t.exports.FAILSAFE_SCHEMA=e("./js-yaml/schema/failsafe"),t.exports.JSON_SCHEMA=e("./js-yaml/schema/json"),t.exports.CORE_SCHEMA=e("./js-yaml/schema/core"),t.exports.DEFAULT_SAFE_SCHEMA=e("./js-yaml/schema/default_safe"),t.exports.DEFAULT_FULL_SCHEMA=e("./js-yaml/schema/default_full"),t.exports.load=r.load,t.exports.loadAll=r.loadAll,t.exports.safeLoad=r.safeLoad,t.exports.safeLoadAll=r.safeLoadAll,t.exports.dump=o.dump,t.exports.safeDump=o.safeDump,t.exports.YAMLException=e("./js-yaml/exception"),t.exports.MINIMAL_SCHEMA=e("./js-yaml/schema/failsafe"),t.exports.SAFE_SCHEMA=e("./js-yaml/schema/default_safe"),t.exports.DEFAULT_SCHEMA=e("./js-yaml/schema/default_full"),t.exports.scan=i("scan"),t.exports.parse=i("parse"),t.exports.compose=i("compose"),t.exports.addConstructor=i("addConstructor")},{"./js-yaml/dumper":3,"./js-yaml/exception":4,"./js-yaml/loader":5,"./js-yaml/schema":7,"./js-yaml/schema/core":8,"./js-yaml/schema/default_full":9,"./js-yaml/schema/default_safe":10,"./js-yaml/schema/failsafe":11,"./js-yaml/schema/json":12,"./js-yaml/type":13}],2:[function(e,t,n){"use strict";function i(e){return void 0===e||null===e}t.exports.isNothing=i,t.exports.isObject=function(e){return"object"==typeof e&&null!==e},t.exports.toArray=function(e){return Array.isArray(e)?e:i(e)?[]:[e]},t.exports.repeat=function(e,t){var n,i="";for(n=0;n<t;n+=1)i+=e;return i},t.exports.isNegativeZero=function(e){return 0===e&&Number.NEGATIVE_INFINITY===1/e},t.exports.extend=function(e,t){var n,i,r,o;if(t)for(n=0,i=(o=Object.keys(t)).length;n<i;n+=1)e[r=o[n]]=t[r];return e}},{}],3:[function(e,t,n){"use strict";function i(e,t){var n,i,r,o,a,s,c;if(null===t)return{};for(n={},r=0,o=(i=Object.keys(t)).length;r<o;r+=1)a=i[r],s=String(t[a]),"!!"===a.slice(0,2)&&(a="tag:yaml.org,2002:"+a.slice(2)),(c=e.compiledTypeMap.fallback[a])&&T.call(c.styleAliases,s)&&(s=c.styleAliases[s]),n[a]=s;return n}function r(e){var t,n,i;if(t=e.toString(16).toUpperCase(),e<=255)n="x",i=2;else if(e<=65535)n="u",i=4;else{if(!(e<=4294967295))throw new F("code point within a string may not be greater than 0xFFFFFFFF");n="U",i=8}return"\\"+n+E.repeat("0",i-t.length)+t}function o(e){this.schema=e.schema||_,this.indent=Math.max(1,e.indent||2),this.skipInvalid=e.skipInvalid||!1,this.flowLevel=E.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=i(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function a(e,t){for(var n,i=E.repeat(" ",t),r=0,o=-1,a="",s=e.length;r<s;)-1===(o=e.indexOf("\n",r))?(n=e.slice(r),r=s):(n=e.slice(r,o+1),r=o+1),n.length&&"\n"!==n&&(a+=i),a+=n;return a}function s(e,t){return"\n"+E.repeat(" ",e.indent*t)}function c(e,t){var n,i;for(n=0,i=e.implicitTypes.length;n<i;n+=1)if(e.implicitTypes[n].resolve(t))return!0;return!1}function u(e){return e===U||e===L}function l(e){return 32<=e&&e<=126||161<=e&&e<=55295&&8232!==e&&8233!==e||57344<=e&&e<=65533&&65279!==e||65536<=e&&e<=1114111}function p(e){return l(e)&&65279!==e&&e!==$&&e!==J&&e!==Q&&e!==ee&&e!==ne&&e!==G&&e!==R}function f(e){return l(e)&&65279!==e&&!u(e)&&e!==H&&e!==Z&&e!==G&&e!==$&&e!==J&&e!==Q&&e!==ee&&e!==ne&&e!==R&&e!==W&&e!==K&&e!==q&&e!==te&&e!==V&&e!==B&&e!==Y&&e!==P&&e!==z&&e!==X}function d(e,t,n,i,r){var o,a,s=!1,c=!1,d=-1!==i,h=-1,m=f(e.charCodeAt(0))&&!u(e.charCodeAt(e.length-1));if(t)for(o=0;o<e.length;o++){if(a=e.charCodeAt(o),!l(a))return ue;m=m&&p(a)}else{for(o=0;o<e.length;o++){if((a=e.charCodeAt(o))===D)s=!0,d&&(c=c||o-h-1>i&&" "!==e[h+1],h=o);else if(!l(a))return ue;m=m&&p(a)}c=c||d&&o-h-1>i&&" "!==e[h+1]}return s||c?" "===e[0]&&n>9?ue:c?ce:se:m&&!r(e)?oe:ae}function h(e,t,n,i){e.dump=function(){if(0===t.length)return"''";if(!e.noCompatMode&&-1!==re.indexOf(t))return"'"+t+"'";var r=e.indent*Math.max(1,n),o=-1===e.lineWidth?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-r),s=i||e.flowLevel>-1&&n>=e.flowLevel;switch(d(t,s,e.indent,o,function(t){return c(e,t)})){case oe:return t;case ae:return"'"+t.replace(/'/g,"''")+"'";case se:return"|"+m(t,e.indent)+g(a(t,r));case ce:return">"+m(t,e.indent)+g(a(y(t,o),r));case ue:return'"'+v(t)+'"';default:throw new F("impossible error: invalid scalar style")}}()}function m(e,t){var n=" "===e[0]?String(t):"",i="\n"===e[e.length-1];return n+(i&&("\n"===e[e.length-2]||"\n"===e)?"+":i?"":"-")+"\n"}function g(e){return"\n"===e[e.length-1]?e.slice(0,-1):e}function y(e,t){for(var n,i,r=/(\n+)([^\n]*)/g,o=function(){var n=e.indexOf("\n");return n=-1!==n?n:e.length,r.lastIndex=n,x(e.slice(0,n),t)}(),a="\n"===e[0]||" "===e[0];i=r.exec(e);){var s=i[1],c=i[2];n=" "===c[0],o+=s+(a||n||""===c?"":"\n")+x(c,t),a=n}return o}function x(e,t){if(""===e||" "===e[0])return e;for(var n,i,r=/ [^ ]/g,o=0,a=0,s=0,c="";n=r.exec(e);)(s=n.index)-o>t&&(i=a>o?a:s,c+="\n"+e.slice(o,i),o=i+1),a=s;return c+="\n",e.length-o>t&&a>o?c+=e.slice(o,a)+"\n"+e.slice(a+1):c+=e.slice(o),c.slice(1)}function v(e){for(var t,n,i,o="",a=0;a<e.length;a++)(t=e.charCodeAt(a))>=55296&&t<=56319&&(n=e.charCodeAt(a+1))>=56320&&n<=57343?(o+=r(1024*(t-55296)+n-56320+65536),a++):o+=!(i=ie[t])&&l(t)?e[a]:i||r(t);return o}function A(e,t,n){var i,r,o="",a=e.tag;for(i=0,r=n.length;i<r;i+=1)j(e,t,n[i],!1,!1)&&(0!==i&&(o+=","+(e.condenseFlow?"":" ")),o+=e.dump);e.tag=a,e.dump="["+o+"]"}function b(e,t,n,i){var r,o,a="",c=e.tag;for(r=0,o=n.length;r<o;r+=1)j(e,t+1,n[r],!0,!0)&&(i&&0===r||(a+=s(e,t)),e.dump&&D===e.dump.charCodeAt(0)?a+="-":a+="- ",a+=e.dump);e.tag=c,e.dump=a||"[]"}function w(e,t,n){var i,r,o,a,s,c="",u=e.tag,l=Object.keys(n);for(i=0,r=l.length;i<r;i+=1)s=e.condenseFlow?'"':"",0!==i&&(s+=", "),a=n[o=l[i]],j(e,t,o,!1,!1)&&(e.dump.length>1024&&(s+="? "),s+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),j(e,t,a,!1,!1)&&(c+=s+=e.dump));e.tag=u,e.dump="{"+c+"}"}function C(e,t,n,i){var r,o,a,c,u,l,p="",f=e.tag,d=Object.keys(n);if(!0===e.sortKeys)d.sort();else if("function"==typeof e.sortKeys)d.sort(e.sortKeys);else if(e.sortKeys)throw new F("sortKeys must be a boolean or a function");for(r=0,o=d.length;r<o;r+=1)l="",i&&0===r||(l+=s(e,t)),c=n[a=d[r]],j(e,t+1,a,!0,!0,!0)&&((u=null!==e.tag&&"?"!==e.tag||e.dump&&e.dump.length>1024)&&(e.dump&&D===e.dump.charCodeAt(0)?l+="?":l+="? "),l+=e.dump,u&&(l+=s(e,t)),j(e,t+1,c,!0,u)&&(e.dump&&D===e.dump.charCodeAt(0)?l+=":":l+=": ",p+=l+=e.dump));e.tag=f,e.dump=p||"{}"}function k(e,t,n){var i,r,o,a,s,c;for(o=0,a=(r=n?e.explicitTypes:e.implicitTypes).length;o<a;o+=1)if(((s=r[o]).instanceOf||s.predicate)&&(!s.instanceOf||"object"==typeof t&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(e.tag=n?s.tag:"?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,"[object Function]"===M.call(s.represent))i=s.represent(t,c);else{if(!T.call(s.represent,c))throw new F("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');i=s.represent[c](t,c)}e.dump=i}return!0}return!1}function j(e,t,n,i,r,o){e.tag=null,e.dump=n,k(e,n,!1)||k(e,n,!0);var a=M.call(e.dump);i&&(i=e.flowLevel<0||e.flowLevel>t);var s,c,u="[object Object]"===a||"[object Array]"===a;if(u&&(c=-1!==(s=e.duplicates.indexOf(n))),(null!==e.tag&&"?"!==e.tag||c||2!==e.indent&&t>0)&&(r=!1),c&&e.usedDuplicates[s])e.dump="*ref_"+s;else{if(u&&c&&!e.usedDuplicates[s]&&(e.usedDuplicates[s]=!0),"[object Object]"===a)i&&0!==Object.keys(e.dump).length?(C(e,t,e.dump,r),c&&(e.dump="&ref_"+s+e.dump)):(w(e,t,e.dump),c&&(e.dump="&ref_"+s+" "+e.dump));else if("[object Array]"===a)i&&0!==e.dump.length?(b(e,t,e.dump,r),c&&(e.dump="&ref_"+s+e.dump)):(A(e,t,e.dump),c&&(e.dump="&ref_"+s+" "+e.dump));else{if("[object String]"!==a){if(e.skipInvalid)return!1;throw new F("unacceptable kind of an object to dump "+a)}"?"!==e.tag&&h(e,e.dump,t,o)}null!==e.tag&&"?"!==e.tag&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function I(e,t){var n,i,r=[],o=[];for(S(e,r,o),n=0,i=o.length;n<i;n+=1)t.duplicates.push(r[o[n]]);t.usedDuplicates=new Array(i)}function S(e,t,n){var i,r,o;if(null!==e&&"object"==typeof e)if(-1!==(r=t.indexOf(e)))-1===n.indexOf(r)&&n.push(r);else if(t.push(e),Array.isArray(e))for(r=0,o=e.length;r<o;r+=1)S(e[r],t,n);else for(r=0,o=(i=Object.keys(e)).length;r<o;r+=1)S(e[i[r]],t,n)}function O(e,t){var n=new o(t=t||{});return n.noRefs||I(e,n),j(n,0,e,!0,!0)?n.dump+"\n":""}var E=e("./common"),F=e("./exception"),_=e("./schema/default_full"),N=e("./schema/default_safe"),M=Object.prototype.toString,T=Object.prototype.hasOwnProperty,L=9,D=10,U=32,q=33,Y=34,R=35,P=37,W=38,B=39,K=42,$=44,H=45,G=58,V=62,Z=63,z=64,J=91,Q=93,X=96,ee=123,te=124,ne=125,ie={};ie[0]="\\0",ie[7]="\\a",ie[8]="\\b",ie[9]="\\t",ie[10]="\\n",ie[11]="\\v",ie[12]="\\f",ie[13]="\\r",ie[27]="\\e",ie[34]='\\"',ie[92]="\\\\",ie[133]="\\N",ie[160]="\\_",ie[8232]="\\L",ie[8233]="\\P";var re=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],oe=1,ae=2,se=3,ce=4,ue=5;t.exports.dump=O,t.exports.safeDump=function(e,t){return O(e,E.extend({schema:N},t))}},{"./common":2,"./exception":4,"./schema/default_full":9,"./schema/default_safe":10}],4:[function(e,t,n){"use strict";function i(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||""}(i.prototype=Object.create(Error.prototype)).constructor=i,i.prototype.toString=function(e){var t=this.name+": ";return t+=this.reason||"(unknown reason)",!e&&this.mark&&(t+=" "+this.mark.toString()),t},t.exports=i},{}],5:[function(e,t,n){"use strict";function i(e){return 10===e||13===e}function r(e){return 9===e||32===e}function o(e){return 9===e||32===e||10===e||13===e}function a(e){return 44===e||91===e||93===e||123===e||125===e}function s(e){var t;return 48<=e&&e<=57?e-48:97<=(t=32|e)&&t<=102?t-97+10:-1}function c(e){return 120===e?2:117===e?4:85===e?8:0}function u(e){return 48<=e&&e<=57?e-48:-1}function l(e){return 48===e?"\0":97===e?"\a":98===e?"\b":116===e?"\t":9===e?"\t":110===e?"\n":118===e?"\v":102===e?"\f":114===e?"\r":101===e?"\e":32===e?" ":34===e?'"':47===e?"/":92===e?"\\":78===e?"\85":95===e?" ":76===e?"\u2028":80===e?"\u2029":""}function p(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10),56320+(e-65536&1023))}function f(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||W,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function d(e,t){return new Y(t,new R(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function h(e,t){throw d(e,t)}function m(e,t){e.onWarning&&e.onWarning.call(null,d(e,t))}function g(e,t,n,i){var r,o,a,s;if(t<n){if(s=e.input.slice(t,n),i)for(r=0,o=s.length;r<o;r+=1)9===(a=s.charCodeAt(r))||32<=a&&a<=1114111||h(e,"expected valid JSON character");else J.test(s)&&h(e,"the stream contains non-printable characters");e.result+=s}}function y(e,t,n,i){var r,o,a,s;for(q.isObject(n)||h(e,"cannot merge mappings; the provided source object is unacceptable"),a=0,s=(r=Object.keys(n)).length;a<s;a+=1)o=r[a],B.call(t,o)||(t[o]=n[o],i[o]=!0)}function x(e,t,n,i,r,o,a,s){var c,u;if(r=String(r),null===t&&(t={}),"tag:yaml.org,2002:merge"===i)if(Array.isArray(o))for(c=0,u=o.length;c<u;c+=1)y(e,t,o[c],n);else y(e,t,o,n);else e.json||B.call(n,r)||!B.call(t,r)||(e.line=a||e.line,e.position=s||e.position,h(e,"duplicated mapping key")),t[r]=o,delete n[r];return t}function v(e){var t;10===(t=e.input.charCodeAt(e.position))?e.position++:13===t?(e.position++,10===e.input.charCodeAt(e.position)&&e.position++):h(e,"a line break is expected"),e.line+=1,e.lineStart=e.position}function A(e,t,n){for(var o=0,a=e.input.charCodeAt(e.position);0!==a;){for(;r(a);)a=e.input.charCodeAt(++e.position);if(t&&35===a)do{a=e.input.charCodeAt(++e.position)}while(10!==a&&13!==a&&0!==a);if(!i(a))break;for(v(e),a=e.input.charCodeAt(e.position),o++,e.lineIndent=0;32===a;)e.lineIndent++,a=e.input.charCodeAt(++e.position)}return-1!==n&&0!==o&&e.lineIndent<n&&m(e,"deficient indentation"),o}function b(e){var t,n=e.position;return!(45!==(t=e.input.charCodeAt(n))&&46!==t||t!==e.input.charCodeAt(n+1)||t!==e.input.charCodeAt(n+2)||(n+=3,0!==(t=e.input.charCodeAt(n))&&!o(t)))}function w(e,t){1===t?e.result+=" ":t>1&&(e.result+=q.repeat("\n",t-1))}function C(e,t,n){var s,c,u,l,p,f,d,h,m,y=e.kind,x=e.result;if(m=e.input.charCodeAt(e.position),o(m)||a(m)||35===m||38===m||42===m||33===m||124===m||62===m||39===m||34===m||37===m||64===m||96===m)return!1;if((63===m||45===m)&&(c=e.input.charCodeAt(e.position+1),o(c)||n&&a(c)))return!1;for(e.kind="scalar",e.result="",u=l=e.position,p=!1;0!==m;){if(58===m){if(c=e.input.charCodeAt(e.position+1),o(c)||n&&a(c))break}else if(35===m){if(s=e.input.charCodeAt(e.position-1),o(s))break}else{if(e.position===e.lineStart&&b(e)||n&&a(m))break;if(i(m)){if(f=e.line,d=e.lineStart,h=e.lineIndent,A(e,!1,-1),e.lineIndent>=t){p=!0,m=e.input.charCodeAt(e.position);continue}e.position=l,e.line=f,e.lineStart=d,e.lineIndent=h;break}}p&&(g(e,u,l,!1),w(e,e.line-f),u=l=e.position,p=!1),r(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return g(e,u,l,!1),!!e.result||(e.kind=y,e.result=x,!1)}function k(e,t){var n,r,o;if(39!==(n=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,r=o=e.position;0!==(n=e.input.charCodeAt(e.position));)if(39===n){if(g(e,r,e.position,!0),39!==(n=e.input.charCodeAt(++e.position)))return!0;r=e.position,e.position++,o=e.position}else i(n)?(g(e,r,o,!0),w(e,A(e,!1,t)),r=o=e.position):e.position===e.lineStart&&b(e)?h(e,"unexpected end of the document within a single quoted scalar"):(e.position++,o=e.position);h(e,"unexpected end of the stream within a single quoted scalar")}function j(e,t){var n,r,o,a,u,l;if(34!==(l=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,n=r=e.position;0!==(l=e.input.charCodeAt(e.position));){if(34===l)return g(e,n,e.position,!0),e.position++,!0;if(92===l){if(g(e,n,e.position,!0),l=e.input.charCodeAt(++e.position),i(l))A(e,!1,t);else if(l<256&&ne[l])e.result+=ie[l],e.position++;else if((u=c(l))>0){for(o=u,a=0;o>0;o--)(u=s(l=e.input.charCodeAt(++e.position)))>=0?a=(a<<4)+u:h(e,"expected hexadecimal character");e.result+=p(a),e.position++}else h(e,"unknown escape sequence");n=r=e.position}else i(l)?(g(e,n,r,!0),w(e,A(e,!1,t)),n=r=e.position):e.position===e.lineStart&&b(e)?h(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}h(e,"unexpected end of the stream within a double quoted scalar")}function I(e,t){var n,i,r,a,s,c,u,l,p,f,d=!0,m=e.tag,g=e.anchor,y={};if(91===(f=e.input.charCodeAt(e.position)))r=93,c=!1,i=[];else{if(123!==f)return!1;r=125,c=!0,i={}}for(null!==e.anchor&&(e.anchorMap[e.anchor]=i),f=e.input.charCodeAt(++e.position);0!==f;){if(A(e,!0,t),(f=e.input.charCodeAt(e.position))===r)return e.position++,e.tag=m,e.anchor=g,e.kind=c?"mapping":"sequence",e.result=i,!0;d||h(e,"missed comma between flow collection entries"),l=u=p=null,a=s=!1,63===f&&o(e.input.charCodeAt(e.position+1))&&(a=s=!0,e.position++,A(e,!0,t)),n=e.line,M(e,t,K,!1,!0),l=e.tag,u=e.result,A(e,!0,t),f=e.input.charCodeAt(e.position),!s&&e.line!==n||58!==f||(a=!0,f=e.input.charCodeAt(++e.position),A(e,!0,t),M(e,t,K,!1,!0),p=e.result),c?x(e,i,y,l,u,p):a?i.push(x(e,null,y,l,u,p)):i.push(u),A(e,!0,t),44===(f=e.input.charCodeAt(e.position))?(d=!0,f=e.input.charCodeAt(++e.position)):d=!1}h(e,"unexpected end of the stream within a flow collection")}function S(e,t){var n,o,a,s,c=V,l=!1,p=!1,f=t,d=0,m=!1;if(124===(s=e.input.charCodeAt(e.position)))o=!1;else{if(62!==s)return!1;o=!0}for(e.kind="scalar",e.result="";0!==s;)if(43===(s=e.input.charCodeAt(++e.position))||45===s)V===c?c=43===s?z:Z:h(e,"repeat of a chomping mode identifier");else{if(!((a=u(s))>=0))break;0===a?h(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):p?h(e,"repeat of an indentation width identifier"):(f=t+a-1,p=!0)}if(r(s)){do{s=e.input.charCodeAt(++e.position)}while(r(s));if(35===s)do{s=e.input.charCodeAt(++e.position)}while(!i(s)&&0!==s)}for(;0!==s;){for(v(e),e.lineIndent=0,s=e.input.charCodeAt(e.position);(!p||e.lineIndent<f)&&32===s;)e.lineIndent++,s=e.input.charCodeAt(++e.position);if(!p&&e.lineIndent>f&&(f=e.lineIndent),i(s))d++;else{if(e.lineIndent<f){c===z?e.result+=q.repeat("\n",l?1+d:d):c===V&&l&&(e.result+="\n");break}for(o?r(s)?(m=!0,e.result+=q.repeat("\n",l?1+d:d)):m?(m=!1,e.result+=q.repeat("\n",d+1)):0===d?l&&(e.result+=" "):e.result+=q.repeat("\n",d):e.result+=q.repeat("\n",l?1+d:d),l=!0,p=!0,d=0,n=e.position;!i(s)&&0!==s;)s=e.input.charCodeAt(++e.position);g(e,n,e.position,!1)}}return!0}function O(e,t){var n,i,r,a=e.tag,s=e.anchor,c=[],u=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=c),r=e.input.charCodeAt(e.position);0!==r&&45===r&&(i=e.input.charCodeAt(e.position+1),o(i));)if(u=!0,e.position++,A(e,!0,-1)&&e.lineIndent<=t)c.push(null),r=e.input.charCodeAt(e.position);else if(n=e.line,M(e,t,H,!1,!0),c.push(e.result),A(e,!0,-1),r=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>t)&&0!==r)h(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break;return!!u&&(e.tag=a,e.anchor=s,e.kind="sequence",e.result=c,!0)}function E(e,t,n){var i,a,s,c,u,l=e.tag,p=e.anchor,f={},d={},m=null,g=null,y=null,v=!1,b=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=f),u=e.input.charCodeAt(e.position);0!==u;){if(i=e.input.charCodeAt(e.position+1),s=e.line,c=e.position,63!==u&&58!==u||!o(i)){if(!M(e,n,$,!1,!0))break;if(e.line===s){for(u=e.input.charCodeAt(e.position);r(u);)u=e.input.charCodeAt(++e.position);if(58===u)o(u=e.input.charCodeAt(++e.position))||h(e,"a whitespace character is expected after the key-value separator within a block mapping"),v&&(x(e,f,d,m,g,null),m=g=y=null),b=!0,v=!1,a=!1,m=e.tag,g=e.result;else{if(!b)return e.tag=l,e.anchor=p,!0;h(e,"can not read an implicit mapping pair; a colon is missed")}}else{if(!b)return e.tag=l,e.anchor=p,!0;h(e,"can not read a block mapping entry; a multiline key may not be an implicit key")}}else 63===u?(v&&(x(e,f,d,m,g,null),m=g=y=null),b=!0,v=!0,a=!0):v?(v=!1,a=!0):h(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,u=i;if((e.line===s||e.lineIndent>t)&&(M(e,t,G,!0,a)&&(v?g=e.result:y=e.result),v||(x(e,f,d,m,g,y,s,c),m=g=y=null),A(e,!0,-1),u=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==u)h(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return v&&x(e,f,d,m,g,null),b&&(e.tag=l,e.anchor=p,e.kind="mapping",e.result=f),b}function F(e){var t,n,i,r,a=!1,s=!1;if(33!==(r=e.input.charCodeAt(e.position)))return!1;if(null!==e.tag&&h(e,"duplication of a tag property"),60===(r=e.input.charCodeAt(++e.position))?(a=!0,r=e.input.charCodeAt(++e.position)):33===r?(s=!0,n="!!",r=e.input.charCodeAt(++e.position)):n="!",t=e.position,a){do{r=e.input.charCodeAt(++e.position)}while(0!==r&&62!==r);e.position<e.length?(i=e.input.slice(t,e.position),r=e.input.charCodeAt(++e.position)):h(e,"unexpected end of the stream within a verbatim tag")}else{for(;0!==r&&!o(r);)33===r&&(s?h(e,"tag suffix cannot contain exclamation marks"):(n=e.input.slice(t-1,e.position+1),ee.test(n)||h(e,"named tag handle cannot contain such characters"),s=!0,t=e.position+1)),r=e.input.charCodeAt(++e.position);i=e.input.slice(t,e.position),X.test(i)&&h(e,"tag suffix cannot contain flow indicator characters")}return i&&!te.test(i)&&h(e,"tag name cannot contain such characters: "+i),a?e.tag=i:B.call(e.tagMap,n)?e.tag=e.tagMap[n]+i:"!"===n?e.tag="!"+i:"!!"===n?e.tag="tag:yaml.org,2002:"+i:h(e,'undeclared tag handle "'+n+'"'),!0}function _(e){var t,n;if(38!==(n=e.input.charCodeAt(e.position)))return!1;for(null!==e.anchor&&h(e,"duplication of an anchor property"),n=e.input.charCodeAt(++e.position),t=e.position;0!==n&&!o(n)&&!a(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&h(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function N(e){var t,n,i;if(42!==(i=e.input.charCodeAt(e.position)))return!1;for(i=e.input.charCodeAt(++e.position),t=e.position;0!==i&&!o(i)&&!a(i);)i=e.input.charCodeAt(++e.position);return e.position===t&&h(e,"name of an alias node must contain at least one character"),n=e.input.slice(t,e.position),e.anchorMap.hasOwnProperty(n)||h(e,'unidentified alias "'+n+'"'),e.result=e.anchorMap[n],A(e,!0,-1),!0}function M(e,t,n,i,r){var o,a,s,c,u,l,p,f,d=1,m=!1,g=!1;if(null!==e.listener&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,o=a=s=G===n||H===n,i&&A(e,!0,-1)&&(m=!0,e.lineIndent>t?d=1:e.lineIndent===t?d=0:e.lineIndent<t&&(d=-1)),1===d)for(;F(e)||_(e);)A(e,!0,-1)?(m=!0,s=o,e.lineIndent>t?d=1:e.lineIndent===t?d=0:e.lineIndent<t&&(d=-1)):s=!1;if(s&&(s=m||r),1!==d&&G!==n||(p=K===n||$===n?t:t+1,f=e.position-e.lineStart,1===d?s&&(O(e,f)||E(e,f,p))||I(e,p)?g=!0:(a&&S(e,p)||k(e,p)||j(e,p)?g=!0:N(e)?(g=!0,null===e.tag&&null===e.anchor||h(e,"alias node should not have any properties")):C(e,p,K===n)&&(g=!0,null===e.tag&&(e.tag="?")),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):0===d&&(g=s&&O(e,f))),null!==e.tag&&"!"!==e.tag)if("?"===e.tag){for(c=0,u=e.implicitTypes.length;c<u;c+=1)if((l=e.implicitTypes[c]).resolve(e.result)){e.result=l.construct(e.result),e.tag=l.tag,null!==e.anchor&&(e.anchorMap[e.anchor]=e.result);break}}else B.call(e.typeMap[e.kind||"fallback"],e.tag)?(l=e.typeMap[e.kind||"fallback"][e.tag],null!==e.result&&l.kind!==e.kind&&h(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+l.kind+'", not "'+e.kind+'"'),l.resolve(e.result)?(e.result=l.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):h(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):h(e,"unknown tag !<"+e.tag+">");return null!==e.listener&&e.listener("close",e),null!==e.tag||null!==e.anchor||g}function T(e){var t,n,a,s,c=e.position,u=!1;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(s=e.input.charCodeAt(e.position))&&(A(e,!0,-1),s=e.input.charCodeAt(e.position),!(e.lineIndent>0||37!==s));){for(u=!0,s=e.input.charCodeAt(++e.position),t=e.position;0!==s&&!o(s);)s=e.input.charCodeAt(++e.position);for(a=[],(n=e.input.slice(t,e.position)).length<1&&h(e,"directive name must not be less than one character in length");0!==s;){for(;r(s);)s=e.input.charCodeAt(++e.position);if(35===s){do{s=e.input.charCodeAt(++e.position)}while(0!==s&&!i(s));break}if(i(s))break;for(t=e.position;0!==s&&!o(s);)s=e.input.charCodeAt(++e.position);a.push(e.input.slice(t,e.position))}0!==s&&v(e),B.call(oe,n)?oe[n](e,n,a):m(e,'unknown document directive "'+n+'"')}A(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,A(e,!0,-1)):u&&h(e,"directives end mark is expected"),M(e,e.lineIndent-1,G,!1,!0),A(e,!0,-1),e.checkLineBreaks&&Q.test(e.input.slice(c,e.position))&&m(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&b(e)?46===e.input.charCodeAt(e.position)&&(e.position+=3,A(e,!0,-1)):e.position<e.length-1&&h(e,"end of the stream or a document separator is expected")}function L(e,t){e=String(e),t=t||{},0!==e.length&&(10!==e.charCodeAt(e.length-1)&&13!==e.charCodeAt(e.length-1)&&(e+="\n"),65279===e.charCodeAt(0)&&(e=e.slice(1)));var n=new f(e,t);for(n.input+="\0";32===n.input.charCodeAt(n.position);)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)T(n);return n.documents}function D(e,t,n){var i,r,o=L(e,n);if("function"!=typeof t)return o;for(i=0,r=o.length;i<r;i+=1)t(o[i])}function U(e,t){var n=L(e,t);if(0!==n.length){if(1===n.length)return n[0];throw new Y("expected a single document in the stream, but found more")}}for(var q=e("./common"),Y=e("./exception"),R=e("./mark"),P=e("./schema/default_safe"),W=e("./schema/default_full"),B=Object.prototype.hasOwnProperty,K=1,$=2,H=3,G=4,V=1,Z=2,z=3,J=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Q=/[\x85\u2028\u2029]/,X=/[,\[\]\{\}]/,ee=/^(?:!|!!|![a-z\-]+!)$/i,te=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i,ne=new Array(256),ie=new Array(256),re=0;re<256;re++)ne[re]=l(re)?1:0,ie[re]=l(re);var oe={YAML:function(e,t,n){var i,r,o;null!==e.version&&h(e,"duplication of %YAML directive"),1!==n.length&&h(e,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]))&&h(e,"ill-formed argument of the YAML directive"),r=parseInt(i[1],10),o=parseInt(i[2],10),1!==r&&h(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=o<2,1!==o&&2!==o&&m(e,"unsupported YAML version of the document")},TAG:function(e,t,n){var i,r;2!==n.length&&h(e,"TAG directive accepts exactly two arguments"),i=n[0],r=n[1],ee.test(i)||h(e,"ill-formed tag handle (first argument) of the TAG directive"),B.call(e.tagMap,i)&&h(e,'there is a previously declared suffix for "'+i+'" tag handle'),te.test(r)||h(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[i]=r}};t.exports.loadAll=D,t.exports.load=U,t.exports.safeLoadAll=function(e,t,n){if("function"!=typeof t)return D(e,q.extend({schema:P},n));D(e,t,q.extend({schema:P},n))},t.exports.safeLoad=function(e,t){return U(e,q.extend({schema:P},t))}},{"./common":2,"./exception":4,"./mark":6,"./schema/default_full":9,"./schema/default_safe":10}],6:[function(e,t,n){"use strict";function i(e,t,n,i,r){this.name=e,this.buffer=t,this.position=n,this.line=i,this.column=r}var r=e("./common");i.prototype.getSnippet=function(e,t){var n,i,o,a,s;if(!this.buffer)return null;for(e=e||4,t=t||75,n="",i=this.position;i>0&&-1==="\0\r\n\85\u2028\u2029".indexOf(this.buffer.charAt(i-1));)if(i-=1,this.position-i>t/2-1){n=" ... ",i+=5;break}for(o="",a=this.position;a<this.buffer.length&&-1==="\0\r\n\85\u2028\u2029".indexOf(this.buffer.charAt(a));)if((a+=1)-this.position>t/2-1){o=" ... ",a-=5;break}return s=this.buffer.slice(i,a),r.repeat(" ",e)+n+s+o+"\n"+r.repeat(" ",e+this.position-i+n.length)+"^"},i.prototype.toString=function(e){var t,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),e||(t=this.getSnippet())&&(n+=":\n"+t),n},t.exports=i},{"./common":2}],7:[function(e,t,n){"use strict";function i(e,t,n){var r=[];return e.include.forEach(function(e){n=i(e,t,n)}),e[t].forEach(function(e){n.forEach(function(t,n){t.tag===e.tag&&t.kind===e.kind&&r.push(n)}),n.push(e)}),n.filter(function(e,t){return-1===r.indexOf(t)})}function r(){var e,t,n={scalar:{},sequence:{},mapping:{},fallback:{}};for(e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(function(e){n[e.kind][e.tag]=n.fallback[e.tag]=e});return n}function o(e){this.include=e.include||[],this.implicit=e.implicit||[],this.explicit=e.explicit||[],this.implicit.forEach(function(e){if(e.loadKind&&"scalar"!==e.loadKind)throw new s("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=i(this,"implicit",[]),this.compiledExplicit=i(this,"explicit",[]),this.compiledTypeMap=r(this.compiledImplicit,this.compiledExplicit)}var a=e("./common"),s=e("./exception"),c=e("./type");o.DEFAULT=null,o.create=function(){var e,t;switch(arguments.length){case 1:e=o.DEFAULT,t=arguments[0];break;case 2:e=arguments[0],t=arguments[1];break;default:throw new s("Wrong number of arguments for Schema.create function")}if(e=a.toArray(e),t=a.toArray(t),!e.every(function(e){return e instanceof o}))throw new s("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!t.every(function(e){return e instanceof c}))throw new s("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new o({include:e,explicit:t})},t.exports=o},{"./common":2,"./exception":4,"./type":13}],8:[function(e,t,n){"use strict";var i=e("../schema");t.exports=new i({include:[e("./json")]})},{"../schema":7,"./json":12}],9:[function(e,t,n){"use strict";var i=e("../schema");t.exports=i.DEFAULT=new i({include:[e("./default_safe")],explicit:[e("../type/js/undefined"),e("../type/js/regexp"),e("../type/js/function")]})},{"../schema":7,"../type/js/function":18,"../type/js/regexp":19,"../type/js/undefined":20,"./default_safe":10}],10:[function(e,t,n){"use strict";var i=e("../schema");t.exports=new i({include:[e("./core")],implicit:[e("../type/timestamp"),e("../type/merge")],explicit:[e("../type/binary"),e("../type/omap"),e("../type/pairs"),e("../type/set")]})},{"../schema":7,"../type/binary":14,"../type/merge":22,"../type/omap":24,"../type/pairs":25,"../type/set":27,"../type/timestamp":29,"./core":8}],11:[function(e,t,n){"use strict";var i=e("../schema");t.exports=new i({explicit:[e("../type/str"),e("../type/seq"),e("../type/map")]})},{"../schema":7,"../type/map":21,"../type/seq":26,"../type/str":28}],12:[function(e,t,n){"use strict";var i=e("../schema");t.exports=new i({include:[e("./failsafe")],implicit:[e("../type/null"),e("../type/bool"),e("../type/int"),e("../type/float")]})},{"../schema":7,"../type/bool":15,"../type/float":16,"../type/int":17,"../type/null":23,"./failsafe":11}],13:[function(e,t,n){"use strict";function i(e){var t={};return null!==e&&Object.keys(e).forEach(function(n){e[n].forEach(function(e){t[String(e)]=n})}),t}var r=e("./exception"),o=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],a=["scalar","sequence","mapping"];t.exports=function(e,t){if(t=t||{},Object.keys(t).forEach(function(t){if(-1===o.indexOf(t))throw new r('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=i(t.styleAliases||null),-1===a.indexOf(this.kind))throw new r('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}},{"./exception":4}],14:[function(e,t,n){"use strict";var i;try{i=e("buffer").Buffer}catch(e){}var r=e("../type"),o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";t.exports=new r("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t,n,i=0,r=e.length,a=o;for(n=0;n<r;n++)if(!((t=a.indexOf(e.charAt(n)))>64)){if(t<0)return!1;i+=6}return i%8==0},construct:function(e){var t,n,r=e.replace(/[\r\n=]/g,""),a=r.length,s=o,c=0,u=[];for(t=0;t<a;t++)t%4==0&&t&&(u.push(c>>16&255),u.push(c>>8&255),u.push(255&c)),c=c<<6|s.indexOf(r.charAt(t));return 0==(n=a%4*6)?(u.push(c>>16&255),u.push(c>>8&255),u.push(255&c)):18===n?(u.push(c>>10&255),u.push(c>>2&255)):12===n&&u.push(c>>4&255),i?i.from?i.from(u):new i(u):u},predicate:function(e){return i&&i.isBuffer(e)},represent:function(e){var t,n,i="",r=0,a=e.length,s=o;for(t=0;t<a;t++)t%3==0&&t&&(i+=s[r>>18&63],i+=s[r>>12&63],i+=s[r>>6&63],i+=s[63&r]),r=(r<<8)+e[t];return 0==(n=a%3)?(i+=s[r>>18&63],i+=s[r>>12&63],i+=s[r>>6&63],i+=s[63&r]):2===n?(i+=s[r>>10&63],i+=s[r>>4&63],i+=s[r<<2&63],i+=s[64]):1===n&&(i+=s[r>>2&63],i+=s[r<<4&63],i+=s[64],i+=s[64]),i}})},{"../type":13}],15:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:bool",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t=e.length;return 4===t&&("true"===e||"True"===e||"TRUE"===e)||5===t&&("false"===e||"False"===e||"FALSE"===e)},construct:function(e){return"true"===e||"True"===e||"TRUE"===e},predicate:function(e){return"[object Boolean]"===Object.prototype.toString.call(e)},represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})},{"../type":13}],16:[function(e,t,n){"use strict";var i=e("../common"),r=e("../type"),o=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),a=/^[-+]?[0-9]+e/;t.exports=new r("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(e){return null!==e&&!(!o.test(e)||"_"===e[e.length-1])},construct:function(e){var t,n,i,r;return t=e.replace(/_/g,"").toLowerCase(),n="-"===t[0]?-1:1,r=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),".inf"===t?1===n?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===t?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(e){r.unshift(parseFloat(e,10))}),t=0,i=1,r.forEach(function(e){t+=e*i,i*=60}),n*t):n*parseFloat(t,10)},predicate:function(e){return"[object Number]"===Object.prototype.toString.call(e)&&(e%1!=0||i.isNegativeZero(e))},represent:function(e,t){var n;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(i.isNegativeZero(e))return"-0.0";return n=e.toString(10),a.test(n)?n.replace("e",".e"):n},defaultStyle:"lowercase"})},{"../common":2,"../type":13}],17:[function(e,t,n){"use strict";function i(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function r(e){return 48<=e&&e<=55}function o(e){return 48<=e&&e<=57}var a=e("../common"),s=e("../type");t.exports=new s("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t,n=e.length,a=0,s=!1;if(!n)return!1;if("-"!==(t=e[a])&&"+"!==t||(t=e[++a]),"0"===t){if(a+1===n)return!0;if("b"===(t=e[++a])){for(a++;a<n;a++)if("_"!==(t=e[a])){if("0"!==t&&"1"!==t)return!1;s=!0}return s&&"_"!==t}if("x"===t){for(a++;a<n;a++)if("_"!==(t=e[a])){if(!i(e.charCodeAt(a)))return!1;s=!0}return s&&"_"!==t}for(;a<n;a++)if("_"!==(t=e[a])){if(!r(e.charCodeAt(a)))return!1;s=!0}return s&&"_"!==t}if("_"===t)return!1;for(;a<n;a++)if("_"!==(t=e[a])){if(":"===t)break;if(!o(e.charCodeAt(a)))return!1;s=!0}return!(!s||"_"===t)&&(":"!==t||/^(:[0-5]?[0-9])+$/.test(e.slice(a)))},construct:function(e){var t,n,i=e,r=1,o=[];return-1!==i.indexOf("_")&&(i=i.replace(/_/g,"")),"-"!==(t=i[0])&&"+"!==t||("-"===t&&(r=-1),t=(i=i.slice(1))[0]),"0"===i?0:"0"===t?"b"===i[1]?r*parseInt(i.slice(2),2):"x"===i[1]?r*parseInt(i,16):r*parseInt(i,8):-1!==i.indexOf(":")?(i.split(":").forEach(function(e){o.unshift(parseInt(e,10))}),i=0,n=1,o.forEach(function(e){i+=e*n,n*=60}),r*i):r*parseInt(i,10)},predicate:function(e){return"[object Number]"===Object.prototype.toString.call(e)&&e%1==0&&!a.isNegativeZero(e)},represent:{binary:function(e){return"0b"+e.toString(2)},octal:function(e){return"0"+e.toString(8)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return"0x"+e.toString(16).toUpperCase()}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})},{"../common":2,"../type":13}],18:[function(e,t,n){"use strict";var i;try{i=e("esprima")}catch(e){"undefined"!=typeof window&&(i=window.esprima)}var r=e("../../type");t.exports=new r("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:function(e){if(null===e)return!1;try{var t="("+e+")",n=i.parse(t,{range:!0});return"Program"===n.type&&1===n.body.length&&"ExpressionStatement"===n.body[0].type&&"FunctionExpression"===n.body[0].expression.type}catch(e){return!1}},construct:function(e){var t,n="("+e+")",r=i.parse(n,{range:!0}),o=[];if("Program"!==r.type||1!==r.body.length||"ExpressionStatement"!==r.body[0].type||"FunctionExpression"!==r.body[0].expression.type)throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(e){o.push(e.name)}),t=r.body[0].expression.body.range,new Function(o,n.slice(t[0]+1,t[1]-1))},predicate:function(e){return"[object Function]"===Object.prototype.toString.call(e)},represent:function(e){return e.toString()}})},{"../../type":13}],19:[function(e,t,n){"use strict";var i=e("../../type");t.exports=new i("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:function(e){if(null===e)return!1;if(0===e.length)return!1;var t=e,n=/\/([gim]*)$/.exec(e),i="";if("/"===t[0]){if(n&&(i=n[1]),i.length>3)return!1;if("/"!==t[t.length-i.length-1])return!1}return!0},construct:function(e){var t=e,n=/\/([gim]*)$/.exec(e),i="";return"/"===t[0]&&(n&&(i=n[1]),t=t.slice(1,t.length-i.length-1)),new RegExp(t,i)},predicate:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},represent:function(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}})},{"../../type":13}],20:[function(e,t,n){"use strict";var i=e("../../type");t.exports=new i("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:function(){return!0},construct:function(){},predicate:function(e){return void 0===e},represent:function(){return""}})},{"../../type":13}],21:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return null!==e?e:{}}})},{"../type":13}],22:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(e){return"<<"===e||null===e}})},{"../type":13}],23:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(e){if(null===e)return!0;var t=e.length;return 1===t&&"~"===e||4===t&&("null"===e||"Null"===e||"NULL"===e)},construct:function(){return null},predicate:function(e){return null===e},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},{"../type":13}],24:[function(e,t,n){"use strict";var i=e("../type"),r=Object.prototype.hasOwnProperty,o=Object.prototype.toString;t.exports=new i("tag:yaml.org,2002:omap",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t,n,i,a,s,c=[],u=e;for(t=0,n=u.length;t<n;t+=1){if(i=u[t],s=!1,"[object Object]"!==o.call(i))return!1;for(a in i)if(r.call(i,a)){if(s)return!1;s=!0}if(!s)return!1;if(-1!==c.indexOf(a))return!1;c.push(a)}return!0},construct:function(e){return null!==e?e:[]}})},{"../type":13}],25:[function(e,t,n){"use strict";var i=e("../type"),r=Object.prototype.toString;t.exports=new i("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t,n,i,o,a,s=e;for(a=new Array(s.length),t=0,n=s.length;t<n;t+=1){if(i=s[t],"[object Object]"!==r.call(i))return!1;if(1!==(o=Object.keys(i)).length)return!1;a[t]=[o[0],i[o[0]]]}return!0},construct:function(e){if(null===e)return[];var t,n,i,r,o,a=e;for(o=new Array(a.length),t=0,n=a.length;t<n;t+=1)i=a[t],r=Object.keys(i),o[t]=[r[0],i[r[0]]];return o}})},{"../type":13}],26:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return null!==e?e:[]}})},{"../type":13}],27:[function(e,t,n){"use strict";var i=e("../type"),r=Object.prototype.hasOwnProperty;t.exports=new i("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(e){if(null===e)return!0;var t,n=e;for(t in n)if(r.call(n,t)&&null!==n[t])return!1;return!0},construct:function(e){return null!==e?e:{}}})},{"../type":13}],28:[function(e,t,n){"use strict";var i=e("../type");t.exports=new i("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return null!==e?e:""}})},{"../type":13}],29:[function(e,t,n){"use strict";var i=e("../type"),r=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),o=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");t.exports=new i("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:function(e){return null!==e&&(null!==r.exec(e)||null!==o.exec(e))},construct:function(e){var t,n,i,a,s,c,u,l,p=0,f=null;if(null===(t=r.exec(e))&&(t=o.exec(e)),null===t)throw new Error("Date resolve error");if(n=+t[1],i=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(n,i,a));if(s=+t[4],c=+t[5],u=+t[6],t[7]){for(p=t[7].slice(0,3);p.length<3;)p+="0";p=+p}return t[9]&&(f=6e4*(60*+t[10]+ +(t[11]||0)),"-"===t[9]&&(f=-f)),l=new Date(Date.UTC(n,i,a,s,c,u,p)),f&&l.setTime(l.getTime()-f),l},instanceOf:Date,represent:function(e){return e.toISOString()}})},{"../type":13}],"/":[function(e,t,n){"use strict";var i=e("./lib/js-yaml.js");t.exports=i},{"./lib/js-yaml.js":1}]},{},[])("/")});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml.js
new file mode 100644 (file)
index 0000000..f0e9281
--- /dev/null
@@ -0,0 +1,39 @@
+'use strict';
+
+
+var loader = require('./js-yaml/loader');
+var dumper = require('./js-yaml/dumper');
+
+
+function deprecated(name) {
+  return function () {
+    throw new Error('Function ' + name + ' is deprecated and cannot be used.');
+  };
+}
+
+
+module.exports.Type                = require('./js-yaml/type');
+module.exports.Schema              = require('./js-yaml/schema');
+module.exports.FAILSAFE_SCHEMA     = require('./js-yaml/schema/failsafe');
+module.exports.JSON_SCHEMA         = require('./js-yaml/schema/json');
+module.exports.CORE_SCHEMA         = require('./js-yaml/schema/core');
+module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe');
+module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full');
+module.exports.load                = loader.load;
+module.exports.loadAll             = loader.loadAll;
+module.exports.safeLoad            = loader.safeLoad;
+module.exports.safeLoadAll         = loader.safeLoadAll;
+module.exports.dump                = dumper.dump;
+module.exports.safeDump            = dumper.safeDump;
+module.exports.YAMLException       = require('./js-yaml/exception');
+
+// Deprecated schema names from JS-YAML 2.0.x
+module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe');
+module.exports.SAFE_SCHEMA    = require('./js-yaml/schema/default_safe');
+module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full');
+
+// Deprecated functions from JS-YAML 1.x.x
+module.exports.scan           = deprecated('scan');
+module.exports.parse          = deprecated('parse');
+module.exports.compose        = deprecated('compose');
+module.exports.addConstructor = deprecated('addConstructor');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/common.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/common.js
new file mode 100644 (file)
index 0000000..25ef7d8
--- /dev/null
@@ -0,0 +1,59 @@
+'use strict';
+
+
+function isNothing(subject) {
+  return (typeof subject === 'undefined') || (subject === null);
+}
+
+
+function isObject(subject) {
+  return (typeof subject === 'object') && (subject !== null);
+}
+
+
+function toArray(sequence) {
+  if (Array.isArray(sequence)) return sequence;
+  else if (isNothing(sequence)) return [];
+
+  return [ sequence ];
+}
+
+
+function extend(target, source) {
+  var index, length, key, sourceKeys;
+
+  if (source) {
+    sourceKeys = Object.keys(source);
+
+    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
+      key = sourceKeys[index];
+      target[key] = source[key];
+    }
+  }
+
+  return target;
+}
+
+
+function repeat(string, count) {
+  var result = '', cycle;
+
+  for (cycle = 0; cycle < count; cycle += 1) {
+    result += string;
+  }
+
+  return result;
+}
+
+
+function isNegativeZero(number) {
+  return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number);
+}
+
+
+module.exports.isNothing      = isNothing;
+module.exports.isObject       = isObject;
+module.exports.toArray        = toArray;
+module.exports.repeat         = repeat;
+module.exports.isNegativeZero = isNegativeZero;
+module.exports.extend         = extend;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/dumper.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/dumper.js
new file mode 100644 (file)
index 0000000..025b185
--- /dev/null
@@ -0,0 +1,819 @@
+'use strict';
+
+/*eslint-disable no-use-before-define*/
+
+var common              = require('./common');
+var YAMLException       = require('./exception');
+var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
+var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
+
+var _toString       = Object.prototype.toString;
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+var CHAR_TAB                  = 0x09; /* Tab */
+var CHAR_LINE_FEED            = 0x0A; /* LF */
+var CHAR_SPACE                = 0x20; /* Space */
+var CHAR_EXCLAMATION          = 0x21; /* ! */
+var CHAR_DOUBLE_QUOTE         = 0x22; /* " */
+var CHAR_SHARP                = 0x23; /* # */
+var CHAR_PERCENT              = 0x25; /* % */
+var CHAR_AMPERSAND            = 0x26; /* & */
+var CHAR_SINGLE_QUOTE         = 0x27; /* ' */
+var CHAR_ASTERISK             = 0x2A; /* * */
+var CHAR_COMMA                = 0x2C; /* , */
+var CHAR_MINUS                = 0x2D; /* - */
+var CHAR_COLON                = 0x3A; /* : */
+var CHAR_GREATER_THAN         = 0x3E; /* > */
+var CHAR_QUESTION             = 0x3F; /* ? */
+var CHAR_COMMERCIAL_AT        = 0x40; /* @ */
+var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */
+var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */
+var CHAR_GRAVE_ACCENT         = 0x60; /* ` */
+var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */
+var CHAR_VERTICAL_LINE        = 0x7C; /* | */
+var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */
+
+var ESCAPE_SEQUENCES = {};
+
+ESCAPE_SEQUENCES[0x00]   = '\\0';
+ESCAPE_SEQUENCES[0x07]   = '\\a';
+ESCAPE_SEQUENCES[0x08]   = '\\b';
+ESCAPE_SEQUENCES[0x09]   = '\\t';
+ESCAPE_SEQUENCES[0x0A]   = '\\n';
+ESCAPE_SEQUENCES[0x0B]   = '\\v';
+ESCAPE_SEQUENCES[0x0C]   = '\\f';
+ESCAPE_SEQUENCES[0x0D]   = '\\r';
+ESCAPE_SEQUENCES[0x1B]   = '\\e';
+ESCAPE_SEQUENCES[0x22]   = '\\"';
+ESCAPE_SEQUENCES[0x5C]   = '\\\\';
+ESCAPE_SEQUENCES[0x85]   = '\\N';
+ESCAPE_SEQUENCES[0xA0]   = '\\_';
+ESCAPE_SEQUENCES[0x2028] = '\\L';
+ESCAPE_SEQUENCES[0x2029] = '\\P';
+
+var DEPRECATED_BOOLEANS_SYNTAX = [
+  'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',
+  'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'
+];
+
+function compileStyleMap(schema, map) {
+  var result, keys, index, length, tag, style, type;
+
+  if (map === null) return {};
+
+  result = {};
+  keys = Object.keys(map);
+
+  for (index = 0, length = keys.length; index < length; index += 1) {
+    tag = keys[index];
+    style = String(map[tag]);
+
+    if (tag.slice(0, 2) === '!!') {
+      tag = 'tag:yaml.org,2002:' + tag.slice(2);
+    }
+    type = schema.compiledTypeMap['fallback'][tag];
+
+    if (type && _hasOwnProperty.call(type.styleAliases, style)) {
+      style = type.styleAliases[style];
+    }
+
+    result[tag] = style;
+  }
+
+  return result;
+}
+
+function encodeHex(character) {
+  var string, handle, length;
+
+  string = character.toString(16).toUpperCase();
+
+  if (character <= 0xFF) {
+    handle = 'x';
+    length = 2;
+  } else if (character <= 0xFFFF) {
+    handle = 'u';
+    length = 4;
+  } else if (character <= 0xFFFFFFFF) {
+    handle = 'U';
+    length = 8;
+  } else {
+    throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');
+  }
+
+  return '\\' + handle + common.repeat('0', length - string.length) + string;
+}
+
+function State(options) {
+  this.schema       = options['schema'] || DEFAULT_FULL_SCHEMA;
+  this.indent       = Math.max(1, (options['indent'] || 2));
+  this.skipInvalid  = options['skipInvalid'] || false;
+  this.flowLevel    = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);
+  this.styleMap     = compileStyleMap(this.schema, options['styles'] || null);
+  this.sortKeys     = options['sortKeys'] || false;
+  this.lineWidth    = options['lineWidth'] || 80;
+  this.noRefs       = options['noRefs'] || false;
+  this.noCompatMode = options['noCompatMode'] || false;
+  this.condenseFlow = options['condenseFlow'] || false;
+
+  this.implicitTypes = this.schema.compiledImplicit;
+  this.explicitTypes = this.schema.compiledExplicit;
+
+  this.tag = null;
+  this.result = '';
+
+  this.duplicates = [];
+  this.usedDuplicates = null;
+}
+
+// Indents every line in a string. Empty lines (\n only) are not indented.
+function indentString(string, spaces) {
+  var ind = common.repeat(' ', spaces),
+      position = 0,
+      next = -1,
+      result = '',
+      line,
+      length = string.length;
+
+  while (position < length) {
+    next = string.indexOf('\n', position);
+    if (next === -1) {
+      line = string.slice(position);
+      position = length;
+    } else {
+      line = string.slice(position, next + 1);
+      position = next + 1;
+    }
+
+    if (line.length && line !== '\n') result += ind;
+
+    result += line;
+  }
+
+  return result;
+}
+
+function generateNextLine(state, level) {
+  return '\n' + common.repeat(' ', state.indent * level);
+}
+
+function testImplicitResolving(state, str) {
+  var index, length, type;
+
+  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
+    type = state.implicitTypes[index];
+
+    if (type.resolve(str)) {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+// [33] s-white ::= s-space | s-tab
+function isWhitespace(c) {
+  return c === CHAR_SPACE || c === CHAR_TAB;
+}
+
+// Returns true if the character can be printed without escaping.
+// From YAML 1.2: "any allowed characters known to be non-printable
+// should also be escaped. [However,] This isn’t mandatory"
+// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029.
+function isPrintable(c) {
+  return  (0x00020 <= c && c <= 0x00007E)
+      || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029)
+      || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */)
+      ||  (0x10000 <= c && c <= 0x10FFFF);
+}
+
+// Simplified test for values allowed after the first character in plain style.
+function isPlainSafe(c) {
+  // Uses a subset of nb-char - c-flow-indicator - ":" - "#"
+  // where nb-char ::= c-printable - b-char - c-byte-order-mark.
+  return isPrintable(c) && c !== 0xFEFF
+    // - c-flow-indicator
+    && c !== CHAR_COMMA
+    && c !== CHAR_LEFT_SQUARE_BRACKET
+    && c !== CHAR_RIGHT_SQUARE_BRACKET
+    && c !== CHAR_LEFT_CURLY_BRACKET
+    && c !== CHAR_RIGHT_CURLY_BRACKET
+    // - ":" - "#"
+    && c !== CHAR_COLON
+    && c !== CHAR_SHARP;
+}
+
+// Simplified test for values allowed as the first character in plain style.
+function isPlainSafeFirst(c) {
+  // Uses a subset of ns-char - c-indicator
+  // where ns-char = nb-char - s-white.
+  return isPrintable(c) && c !== 0xFEFF
+    && !isWhitespace(c) // - s-white
+    // - (c-indicator ::=
+    // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}”
+    && c !== CHAR_MINUS
+    && c !== CHAR_QUESTION
+    && c !== CHAR_COLON
+    && c !== CHAR_COMMA
+    && c !== CHAR_LEFT_SQUARE_BRACKET
+    && c !== CHAR_RIGHT_SQUARE_BRACKET
+    && c !== CHAR_LEFT_CURLY_BRACKET
+    && c !== CHAR_RIGHT_CURLY_BRACKET
+    // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “"”
+    && c !== CHAR_SHARP
+    && c !== CHAR_AMPERSAND
+    && c !== CHAR_ASTERISK
+    && c !== CHAR_EXCLAMATION
+    && c !== CHAR_VERTICAL_LINE
+    && c !== CHAR_GREATER_THAN
+    && c !== CHAR_SINGLE_QUOTE
+    && c !== CHAR_DOUBLE_QUOTE
+    // | “%” | “@” | “`”)
+    && c !== CHAR_PERCENT
+    && c !== CHAR_COMMERCIAL_AT
+    && c !== CHAR_GRAVE_ACCENT;
+}
+
+var STYLE_PLAIN   = 1,
+    STYLE_SINGLE  = 2,
+    STYLE_LITERAL = 3,
+    STYLE_FOLDED  = 4,
+    STYLE_DOUBLE  = 5;
+
+// Determines which scalar styles are possible and returns the preferred style.
+// lineWidth = -1 => no limit.
+// Pre-conditions: str.length > 0.
+// Post-conditions:
+//    STYLE_PLAIN or STYLE_SINGLE => no \n are in the string.
+//    STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1).
+//    STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1).
+function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) {
+  var i;
+  var char;
+  var hasLineBreak = false;
+  var hasFoldableLine = false; // only checked if shouldTrackWidth
+  var shouldTrackWidth = lineWidth !== -1;
+  var previousLineBreak = -1; // count the first line correctly
+  var plain = isPlainSafeFirst(string.charCodeAt(0))
+          && !isWhitespace(string.charCodeAt(string.length - 1));
+
+  if (singleLineOnly) {
+    // Case: no block styles.
+    // Check for disallowed characters to rule out plain and single.
+    for (i = 0; i < string.length; i++) {
+      char = string.charCodeAt(i);
+      if (!isPrintable(char)) {
+        return STYLE_DOUBLE;
+      }
+      plain = plain && isPlainSafe(char);
+    }
+  } else {
+    // Case: block styles permitted.
+    for (i = 0; i < string.length; i++) {
+      char = string.charCodeAt(i);
+      if (char === CHAR_LINE_FEED) {
+        hasLineBreak = true;
+        // Check if any line can be folded.
+        if (shouldTrackWidth) {
+          hasFoldableLine = hasFoldableLine ||
+            // Foldable line = too long, and not more-indented.
+            (i - previousLineBreak - 1 > lineWidth &&
+             string[previousLineBreak + 1] !== ' ');
+          previousLineBreak = i;
+        }
+      } else if (!isPrintable(char)) {
+        return STYLE_DOUBLE;
+      }
+      plain = plain && isPlainSafe(char);
+    }
+    // in case the end is missing a \n
+    hasFoldableLine = hasFoldableLine || (shouldTrackWidth &&
+      (i - previousLineBreak - 1 > lineWidth &&
+       string[previousLineBreak + 1] !== ' '));
+  }
+  // Although every style can represent \n without escaping, prefer block styles
+  // for multiline, since they're more readable and they don't add empty lines.
+  // Also prefer folding a super-long line.
+  if (!hasLineBreak && !hasFoldableLine) {
+    // Strings interpretable as another type have to be quoted;
+    // e.g. the string 'true' vs. the boolean true.
+    return plain && !testAmbiguousType(string)
+      ? STYLE_PLAIN : STYLE_SINGLE;
+  }
+  // Edge case: block indentation indicator can only have one digit.
+  if (string[0] === ' ' && indentPerLevel > 9) {
+    return STYLE_DOUBLE;
+  }
+  // At this point we know block styles are valid.
+  // Prefer literal style unless we want to fold.
+  return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL;
+}
+
+// Note: line breaking/folding is implemented for only the folded style.
+// NB. We drop the last trailing newline (if any) of a returned block scalar
+//  since the dumper adds its own newline. This always works:
+//    • No ending newline => unaffected; already using strip "-" chomping.
+//    • Ending newline    => removed then restored.
+//  Importantly, this keeps the "+" chomp indicator from gaining an extra line.
+function writeScalar(state, string, level, iskey) {
+  state.dump = (function () {
+    if (string.length === 0) {
+      return "''";
+    }
+    if (!state.noCompatMode &&
+        DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) {
+      return "'" + string + "'";
+    }
+
+    var indent = state.indent * Math.max(1, level); // no 0-indent scalars
+    // As indentation gets deeper, let the width decrease monotonically
+    // to the lower bound min(state.lineWidth, 40).
+    // Note that this implies
+    //  state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound.
+    //  state.lineWidth > 40 + state.indent: width decreases until the lower bound.
+    // This behaves better than a constant minimum width which disallows narrower options,
+    // or an indent threshold which causes the width to suddenly increase.
+    var lineWidth = state.lineWidth === -1
+      ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);
+
+    // Without knowing if keys are implicit/explicit, assume implicit for safety.
+    var singleLineOnly = iskey
+      // No block styles in flow mode.
+      || (state.flowLevel > -1 && level >= state.flowLevel);
+    function testAmbiguity(string) {
+      return testImplicitResolving(state, string);
+    }
+
+    switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) {
+      case STYLE_PLAIN:
+        return string;
+      case STYLE_SINGLE:
+        return "'" + string.replace(/'/g, "''") + "'";
+      case STYLE_LITERAL:
+        return '|' + blockHeader(string, state.indent)
+          + dropEndingNewline(indentString(string, indent));
+      case STYLE_FOLDED:
+        return '>' + blockHeader(string, state.indent)
+          + dropEndingNewline(indentString(foldString(string, lineWidth), indent));
+      case STYLE_DOUBLE:
+        return '"' + escapeString(string, lineWidth) + '"';
+      default:
+        throw new YAMLException('impossible error: invalid scalar style');
+    }
+  }());
+}
+
+// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9.
+function blockHeader(string, indentPerLevel) {
+  var indentIndicator = (string[0] === ' ') ? String(indentPerLevel) : '';
+
+  // note the special case: the string '\n' counts as a "trailing" empty line.
+  var clip =          string[string.length - 1] === '\n';
+  var keep = clip && (string[string.length - 2] === '\n' || string === '\n');
+  var chomp = keep ? '+' : (clip ? '' : '-');
+
+  return indentIndicator + chomp + '\n';
+}
+
+// (See the note for writeScalar.)
+function dropEndingNewline(string) {
+  return string[string.length - 1] === '\n' ? string.slice(0, -1) : string;
+}
+
+// Note: a long line without a suitable break point will exceed the width limit.
+// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0.
+function foldString(string, width) {
+  // In folded style, $k$ consecutive newlines output as $k+1$ newlines—
+  // unless they're before or after a more-indented line, or at the very
+  // beginning or end, in which case $k$ maps to $k$.
+  // Therefore, parse each chunk as newline(s) followed by a content line.
+  var lineRe = /(\n+)([^\n]*)/g;
+
+  // first line (possibly an empty line)
+  var result = (function () {
+    var nextLF = string.indexOf('\n');
+    nextLF = nextLF !== -1 ? nextLF : string.length;
+    lineRe.lastIndex = nextLF;
+    return foldLine(string.slice(0, nextLF), width);
+  }());
+  // If we haven't reached the first content line yet, don't add an extra \n.
+  var prevMoreIndented = string[0] === '\n' || string[0] === ' ';
+  var moreIndented;
+
+  // rest of the lines
+  var match;
+  while ((match = lineRe.exec(string))) {
+    var prefix = match[1], line = match[2];
+    moreIndented = (line[0] === ' ');
+    result += prefix
+      + (!prevMoreIndented && !moreIndented && line !== ''
+        ? '\n' : '')
+      + foldLine(line, width);
+    prevMoreIndented = moreIndented;
+  }
+
+  return result;
+}
+
+// Greedy line breaking.
+// Picks the longest line under the limit each time,
+// otherwise settles for the shortest line over the limit.
+// NB. More-indented lines *cannot* be folded, as that would add an extra \n.
+function foldLine(line, width) {
+  if (line === '' || line[0] === ' ') return line;
+
+  // Since a more-indented line adds a \n, breaks can't be followed by a space.
+  var breakRe = / [^ ]/g; // note: the match index will always be <= length-2.
+  var match;
+  // start is an inclusive index. end, curr, and next are exclusive.
+  var start = 0, end, curr = 0, next = 0;
+  var result = '';
+
+  // Invariants: 0 <= start <= length-1.
+  //   0 <= curr <= next <= max(0, length-2). curr - start <= width.
+  // Inside the loop:
+  //   A match implies length >= 2, so curr and next are <= length-2.
+  while ((match = breakRe.exec(line))) {
+    next = match.index;
+    // maintain invariant: curr - start <= width
+    if (next - start > width) {
+      end = (curr > start) ? curr : next; // derive end <= length-2
+      result += '\n' + line.slice(start, end);
+      // skip the space that was output as \n
+      start = end + 1;                    // derive start <= length-1
+    }
+    curr = next;
+  }
+
+  // By the invariants, start <= length-1, so there is something left over.
+  // It is either the whole string or a part starting from non-whitespace.
+  result += '\n';
+  // Insert a break if the remainder is too long and there is a break available.
+  if (line.length - start > width && curr > start) {
+    result += line.slice(start, curr) + '\n' + line.slice(curr + 1);
+  } else {
+    result += line.slice(start);
+  }
+
+  return result.slice(1); // drop extra \n joiner
+}
+
+// Escapes a double-quoted string.
+function escapeString(string) {
+  var result = '';
+  var char, nextChar;
+  var escapeSeq;
+
+  for (var i = 0; i < string.length; i++) {
+    char = string.charCodeAt(i);
+    // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates").
+    if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) {
+      nextChar = string.charCodeAt(i + 1);
+      if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) {
+        // Combine the surrogate pair and store it escaped.
+        result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000);
+        // Advance index one extra since we already used that char here.
+        i++; continue;
+      }
+    }
+    escapeSeq = ESCAPE_SEQUENCES[char];
+    result += !escapeSeq && isPrintable(char)
+      ? string[i]
+      : escapeSeq || encodeHex(char);
+  }
+
+  return result;
+}
+
+function writeFlowSequence(state, level, object) {
+  var _result = '',
+      _tag    = state.tag,
+      index,
+      length;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    // Write only valid elements.
+    if (writeNode(state, level, object[index], false, false)) {
+      if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : '');
+      _result += state.dump;
+    }
+  }
+
+  state.tag = _tag;
+  state.dump = '[' + _result + ']';
+}
+
+function writeBlockSequence(state, level, object, compact) {
+  var _result = '',
+      _tag    = state.tag,
+      index,
+      length;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    // Write only valid elements.
+    if (writeNode(state, level + 1, object[index], true, true)) {
+      if (!compact || index !== 0) {
+        _result += generateNextLine(state, level);
+      }
+
+      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+        _result += '-';
+      } else {
+        _result += '- ';
+      }
+
+      _result += state.dump;
+    }
+  }
+
+  state.tag = _tag;
+  state.dump = _result || '[]'; // Empty sequence if no valid values.
+}
+
+function writeFlowMapping(state, level, object) {
+  var _result       = '',
+      _tag          = state.tag,
+      objectKeyList = Object.keys(object),
+      index,
+      length,
+      objectKey,
+      objectValue,
+      pairBuffer;
+
+  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+    pairBuffer = state.condenseFlow ? '"' : '';
+
+    if (index !== 0) pairBuffer += ', ';
+
+    objectKey = objectKeyList[index];
+    objectValue = object[objectKey];
+
+    if (!writeNode(state, level, objectKey, false, false)) {
+      continue; // Skip this pair because of invalid key;
+    }
+
+    if (state.dump.length > 1024) pairBuffer += '? ';
+
+    pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' ');
+
+    if (!writeNode(state, level, objectValue, false, false)) {
+      continue; // Skip this pair because of invalid value.
+    }
+
+    pairBuffer += state.dump;
+
+    // Both key and value are valid.
+    _result += pairBuffer;
+  }
+
+  state.tag = _tag;
+  state.dump = '{' + _result + '}';
+}
+
+function writeBlockMapping(state, level, object, compact) {
+  var _result       = '',
+      _tag          = state.tag,
+      objectKeyList = Object.keys(object),
+      index,
+      length,
+      objectKey,
+      objectValue,
+      explicitPair,
+      pairBuffer;
+
+  // Allow sorting keys so that the output file is deterministic
+  if (state.sortKeys === true) {
+    // Default sorting
+    objectKeyList.sort();
+  } else if (typeof state.sortKeys === 'function') {
+    // Custom sort function
+    objectKeyList.sort(state.sortKeys);
+  } else if (state.sortKeys) {
+    // Something is wrong
+    throw new YAMLException('sortKeys must be a boolean or a function');
+  }
+
+  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+    pairBuffer = '';
+
+    if (!compact || index !== 0) {
+      pairBuffer += generateNextLine(state, level);
+    }
+
+    objectKey = objectKeyList[index];
+    objectValue = object[objectKey];
+
+    if (!writeNode(state, level + 1, objectKey, true, true, true)) {
+      continue; // Skip this pair because of invalid key.
+    }
+
+    explicitPair = (state.tag !== null && state.tag !== '?') ||
+                   (state.dump && state.dump.length > 1024);
+
+    if (explicitPair) {
+      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+        pairBuffer += '?';
+      } else {
+        pairBuffer += '? ';
+      }
+    }
+
+    pairBuffer += state.dump;
+
+    if (explicitPair) {
+      pairBuffer += generateNextLine(state, level);
+    }
+
+    if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {
+      continue; // Skip this pair because of invalid value.
+    }
+
+    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
+      pairBuffer += ':';
+    } else {
+      pairBuffer += ': ';
+    }
+
+    pairBuffer += state.dump;
+
+    // Both key and value are valid.
+    _result += pairBuffer;
+  }
+
+  state.tag = _tag;
+  state.dump = _result || '{}'; // Empty mapping if no valid pairs.
+}
+
+function detectType(state, object, explicit) {
+  var _result, typeList, index, length, type, style;
+
+  typeList = explicit ? state.explicitTypes : state.implicitTypes;
+
+  for (index = 0, length = typeList.length; index < length; index += 1) {
+    type = typeList[index];
+
+    if ((type.instanceOf  || type.predicate) &&
+        (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) &&
+        (!type.predicate  || type.predicate(object))) {
+
+      state.tag = explicit ? type.tag : '?';
+
+      if (type.represent) {
+        style = state.styleMap[type.tag] || type.defaultStyle;
+
+        if (_toString.call(type.represent) === '[object Function]') {
+          _result = type.represent(object, style);
+        } else if (_hasOwnProperty.call(type.represent, style)) {
+          _result = type.represent[style](object, style);
+        } else {
+          throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style');
+        }
+
+        state.dump = _result;
+      }
+
+      return true;
+    }
+  }
+
+  return false;
+}
+
+// Serializes `object` and writes it to global `result`.
+// Returns true on success, or false on invalid object.
+//
+function writeNode(state, level, object, block, compact, iskey) {
+  state.tag = null;
+  state.dump = object;
+
+  if (!detectType(state, object, false)) {
+    detectType(state, object, true);
+  }
+
+  var type = _toString.call(state.dump);
+
+  if (block) {
+    block = (state.flowLevel < 0 || state.flowLevel > level);
+  }
+
+  var objectOrArray = type === '[object Object]' || type === '[object Array]',
+      duplicateIndex,
+      duplicate;
+
+  if (objectOrArray) {
+    duplicateIndex = state.duplicates.indexOf(object);
+    duplicate = duplicateIndex !== -1;
+  }
+
+  if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) {
+    compact = false;
+  }
+
+  if (duplicate && state.usedDuplicates[duplicateIndex]) {
+    state.dump = '*ref_' + duplicateIndex;
+  } else {
+    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
+      state.usedDuplicates[duplicateIndex] = true;
+    }
+    if (type === '[object Object]') {
+      if (block && (Object.keys(state.dump).length !== 0)) {
+        writeBlockMapping(state, level, state.dump, compact);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + state.dump;
+        }
+      } else {
+        writeFlowMapping(state, level, state.dump);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
+        }
+      }
+    } else if (type === '[object Array]') {
+      if (block && (state.dump.length !== 0)) {
+        writeBlockSequence(state, level, state.dump, compact);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + state.dump;
+        }
+      } else {
+        writeFlowSequence(state, level, state.dump);
+        if (duplicate) {
+          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
+        }
+      }
+    } else if (type === '[object String]') {
+      if (state.tag !== '?') {
+        writeScalar(state, state.dump, level, iskey);
+      }
+    } else {
+      if (state.skipInvalid) return false;
+      throw new YAMLException('unacceptable kind of an object to dump ' + type);
+    }
+
+    if (state.tag !== null && state.tag !== '?') {
+      state.dump = '!<' + state.tag + '> ' + state.dump;
+    }
+  }
+
+  return true;
+}
+
+function getDuplicateReferences(object, state) {
+  var objects = [],
+      duplicatesIndexes = [],
+      index,
+      length;
+
+  inspectNode(object, objects, duplicatesIndexes);
+
+  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
+    state.duplicates.push(objects[duplicatesIndexes[index]]);
+  }
+  state.usedDuplicates = new Array(length);
+}
+
+function inspectNode(object, objects, duplicatesIndexes) {
+  var objectKeyList,
+      index,
+      length;
+
+  if (object !== null && typeof object === 'object') {
+    index = objects.indexOf(object);
+    if (index !== -1) {
+      if (duplicatesIndexes.indexOf(index) === -1) {
+        duplicatesIndexes.push(index);
+      }
+    } else {
+      objects.push(object);
+
+      if (Array.isArray(object)) {
+        for (index = 0, length = object.length; index < length; index += 1) {
+          inspectNode(object[index], objects, duplicatesIndexes);
+        }
+      } else {
+        objectKeyList = Object.keys(object);
+
+        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
+          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
+        }
+      }
+    }
+  }
+}
+
+function dump(input, options) {
+  options = options || {};
+
+  var state = new State(options);
+
+  if (!state.noRefs) getDuplicateReferences(input, state);
+
+  if (writeNode(state, 0, input, true, true)) return state.dump + '\n';
+
+  return '';
+}
+
+function safeDump(input, options) {
+  return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+}
+
+module.exports.dump     = dump;
+module.exports.safeDump = safeDump;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/exception.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/exception.js
new file mode 100644 (file)
index 0000000..b744a1e
--- /dev/null
@@ -0,0 +1,43 @@
+// YAML error class. http://stackoverflow.com/questions/8458984
+//
+'use strict';
+
+function YAMLException(reason, mark) {
+  // Super constructor
+  Error.call(this);
+
+  this.name = 'YAMLException';
+  this.reason = reason;
+  this.mark = mark;
+  this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '');
+
+  // Include stack trace in error object
+  if (Error.captureStackTrace) {
+    // Chrome and NodeJS
+    Error.captureStackTrace(this, this.constructor);
+  } else {
+    // FF, IE 10+ and Safari 6+. Fallback for others
+    this.stack = (new Error()).stack || '';
+  }
+}
+
+
+// Inherit from Error
+YAMLException.prototype = Object.create(Error.prototype);
+YAMLException.prototype.constructor = YAMLException;
+
+
+YAMLException.prototype.toString = function toString(compact) {
+  var result = this.name + ': ';
+
+  result += this.reason || '(unknown reason)';
+
+  if (!compact && this.mark) {
+    result += ' ' + this.mark.toString();
+  }
+
+  return result;
+};
+
+
+module.exports = YAMLException;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/loader.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/loader.js
new file mode 100644 (file)
index 0000000..fe2cb4d
--- /dev/null
@@ -0,0 +1,1598 @@
+'use strict';
+
+/*eslint-disable max-len,no-use-before-define*/
+
+var common              = require('./common');
+var YAMLException       = require('./exception');
+var Mark                = require('./mark');
+var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
+var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
+
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+
+var CONTEXT_FLOW_IN   = 1;
+var CONTEXT_FLOW_OUT  = 2;
+var CONTEXT_BLOCK_IN  = 3;
+var CONTEXT_BLOCK_OUT = 4;
+
+
+var CHOMPING_CLIP  = 1;
+var CHOMPING_STRIP = 2;
+var CHOMPING_KEEP  = 3;
+
+
+var PATTERN_NON_PRINTABLE         = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;
+var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
+var PATTERN_FLOW_INDICATORS       = /[,\[\]\{\}]/;
+var PATTERN_TAG_HANDLE            = /^(?:!|!!|![a-z\-]+!)$/i;
+var PATTERN_TAG_URI               = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
+
+
+function is_EOL(c) {
+  return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);
+}
+
+function is_WHITE_SPACE(c) {
+  return (c === 0x09/* Tab */) || (c === 0x20/* Space */);
+}
+
+function is_WS_OR_EOL(c) {
+  return (c === 0x09/* Tab */) ||
+         (c === 0x20/* Space */) ||
+         (c === 0x0A/* LF */) ||
+         (c === 0x0D/* CR */);
+}
+
+function is_FLOW_INDICATOR(c) {
+  return c === 0x2C/* , */ ||
+         c === 0x5B/* [ */ ||
+         c === 0x5D/* ] */ ||
+         c === 0x7B/* { */ ||
+         c === 0x7D/* } */;
+}
+
+function fromHexCode(c) {
+  var lc;
+
+  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
+    return c - 0x30;
+  }
+
+  /*eslint-disable no-bitwise*/
+  lc = c | 0x20;
+
+  if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {
+    return lc - 0x61 + 10;
+  }
+
+  return -1;
+}
+
+function escapedHexLen(c) {
+  if (c === 0x78/* x */) { return 2; }
+  if (c === 0x75/* u */) { return 4; }
+  if (c === 0x55/* U */) { return 8; }
+  return 0;
+}
+
+function fromDecimalCode(c) {
+  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
+    return c - 0x30;
+  }
+
+  return -1;
+}
+
+function simpleEscapeSequence(c) {
+  /* eslint-disable indent */
+  return (c === 0x30/* 0 */) ? '\x00' :
+        (c === 0x61/* a */) ? '\x07' :
+        (c === 0x62/* b */) ? '\x08' :
+        (c === 0x74/* t */) ? '\x09' :
+        (c === 0x09/* Tab */) ? '\x09' :
+        (c === 0x6E/* n */) ? '\x0A' :
+        (c === 0x76/* v */) ? '\x0B' :
+        (c === 0x66/* f */) ? '\x0C' :
+        (c === 0x72/* r */) ? '\x0D' :
+        (c === 0x65/* e */) ? '\x1B' :
+        (c === 0x20/* Space */) ? ' ' :
+        (c === 0x22/* " */) ? '\x22' :
+        (c === 0x2F/* / */) ? '/' :
+        (c === 0x5C/* \ */) ? '\x5C' :
+        (c === 0x4E/* N */) ? '\x85' :
+        (c === 0x5F/* _ */) ? '\xA0' :
+        (c === 0x4C/* L */) ? '\u2028' :
+        (c === 0x50/* P */) ? '\u2029' : '';
+}
+
+function charFromCodepoint(c) {
+  if (c <= 0xFFFF) {
+    return String.fromCharCode(c);
+  }
+  // Encode UTF-16 surrogate pair
+  // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF
+  return String.fromCharCode(
+    ((c - 0x010000) >> 10) + 0xD800,
+    ((c - 0x010000) & 0x03FF) + 0xDC00
+  );
+}
+
+var simpleEscapeCheck = new Array(256); // integer, for fast access
+var simpleEscapeMap = new Array(256);
+for (var i = 0; i < 256; i++) {
+  simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
+  simpleEscapeMap[i] = simpleEscapeSequence(i);
+}
+
+
+function State(input, options) {
+  this.input = input;
+
+  this.filename  = options['filename']  || null;
+  this.schema    = options['schema']    || DEFAULT_FULL_SCHEMA;
+  this.onWarning = options['onWarning'] || null;
+  this.legacy    = options['legacy']    || false;
+  this.json      = options['json']      || false;
+  this.listener  = options['listener']  || null;
+
+  this.implicitTypes = this.schema.compiledImplicit;
+  this.typeMap       = this.schema.compiledTypeMap;
+
+  this.length     = input.length;
+  this.position   = 0;
+  this.line       = 0;
+  this.lineStart  = 0;
+  this.lineIndent = 0;
+
+  this.documents = [];
+
+  /*
+  this.version;
+  this.checkLineBreaks;
+  this.tagMap;
+  this.anchorMap;
+  this.tag;
+  this.anchor;
+  this.kind;
+  this.result;*/
+
+}
+
+
+function generateError(state, message) {
+  return new YAMLException(
+    message,
+    new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));
+}
+
+function throwError(state, message) {
+  throw generateError(state, message);
+}
+
+function throwWarning(state, message) {
+  if (state.onWarning) {
+    state.onWarning.call(null, generateError(state, message));
+  }
+}
+
+
+var directiveHandlers = {
+
+  YAML: function handleYamlDirective(state, name, args) {
+
+    var match, major, minor;
+
+    if (state.version !== null) {
+      throwError(state, 'duplication of %YAML directive');
+    }
+
+    if (args.length !== 1) {
+      throwError(state, 'YAML directive accepts exactly one argument');
+    }
+
+    match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
+
+    if (match === null) {
+      throwError(state, 'ill-formed argument of the YAML directive');
+    }
+
+    major = parseInt(match[1], 10);
+    minor = parseInt(match[2], 10);
+
+    if (major !== 1) {
+      throwError(state, 'unacceptable YAML version of the document');
+    }
+
+    state.version = args[0];
+    state.checkLineBreaks = (minor < 2);
+
+    if (minor !== 1 && minor !== 2) {
+      throwWarning(state, 'unsupported YAML version of the document');
+    }
+  },
+
+  TAG: function handleTagDirective(state, name, args) {
+
+    var handle, prefix;
+
+    if (args.length !== 2) {
+      throwError(state, 'TAG directive accepts exactly two arguments');
+    }
+
+    handle = args[0];
+    prefix = args[1];
+
+    if (!PATTERN_TAG_HANDLE.test(handle)) {
+      throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');
+    }
+
+    if (_hasOwnProperty.call(state.tagMap, handle)) {
+      throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
+    }
+
+    if (!PATTERN_TAG_URI.test(prefix)) {
+      throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');
+    }
+
+    state.tagMap[handle] = prefix;
+  }
+};
+
+
+function captureSegment(state, start, end, checkJson) {
+  var _position, _length, _character, _result;
+
+  if (start < end) {
+    _result = state.input.slice(start, end);
+
+    if (checkJson) {
+      for (_position = 0, _length = _result.length; _position < _length; _position += 1) {
+        _character = _result.charCodeAt(_position);
+        if (!(_character === 0x09 ||
+              (0x20 <= _character && _character <= 0x10FFFF))) {
+          throwError(state, 'expected valid JSON character');
+        }
+      }
+    } else if (PATTERN_NON_PRINTABLE.test(_result)) {
+      throwError(state, 'the stream contains non-printable characters');
+    }
+
+    state.result += _result;
+  }
+}
+
+function mergeMappings(state, destination, source, overridableKeys) {
+  var sourceKeys, key, index, quantity;
+
+  if (!common.isObject(source)) {
+    throwError(state, 'cannot merge mappings; the provided source object is unacceptable');
+  }
+
+  sourceKeys = Object.keys(source);
+
+  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
+    key = sourceKeys[index];
+
+    if (!_hasOwnProperty.call(destination, key)) {
+      destination[key] = source[key];
+      overridableKeys[key] = true;
+    }
+  }
+}
+
+function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {
+  var index, quantity;
+
+  keyNode = String(keyNode);
+
+  if (_result === null) {
+    _result = {};
+  }
+
+  if (keyTag === 'tag:yaml.org,2002:merge') {
+    if (Array.isArray(valueNode)) {
+      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
+        mergeMappings(state, _result, valueNode[index], overridableKeys);
+      }
+    } else {
+      mergeMappings(state, _result, valueNode, overridableKeys);
+    }
+  } else {
+    if (!state.json &&
+        !_hasOwnProperty.call(overridableKeys, keyNode) &&
+        _hasOwnProperty.call(_result, keyNode)) {
+      state.line = startLine || state.line;
+      state.position = startPos || state.position;
+      throwError(state, 'duplicated mapping key');
+    }
+    _result[keyNode] = valueNode;
+    delete overridableKeys[keyNode];
+  }
+
+  return _result;
+}
+
+function readLineBreak(state) {
+  var ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x0A/* LF */) {
+    state.position++;
+  } else if (ch === 0x0D/* CR */) {
+    state.position++;
+    if (state.input.charCodeAt(state.position) === 0x0A/* LF */) {
+      state.position++;
+    }
+  } else {
+    throwError(state, 'a line break is expected');
+  }
+
+  state.line += 1;
+  state.lineStart = state.position;
+}
+
+function skipSeparationSpace(state, allowComments, checkIndent) {
+  var lineBreaks = 0,
+      ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+    while (is_WHITE_SPACE(ch)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    if (allowComments && ch === 0x23/* # */) {
+      do {
+        ch = state.input.charCodeAt(++state.position);
+      } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0);
+    }
+
+    if (is_EOL(ch)) {
+      readLineBreak(state);
+
+      ch = state.input.charCodeAt(state.position);
+      lineBreaks++;
+      state.lineIndent = 0;
+
+      while (ch === 0x20/* Space */) {
+        state.lineIndent++;
+        ch = state.input.charCodeAt(++state.position);
+      }
+    } else {
+      break;
+    }
+  }
+
+  if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {
+    throwWarning(state, 'deficient indentation');
+  }
+
+  return lineBreaks;
+}
+
+function testDocumentSeparator(state) {
+  var _position = state.position,
+      ch;
+
+  ch = state.input.charCodeAt(_position);
+
+  // Condition state.position === state.lineStart is tested
+  // in parent on each call, for efficiency. No needs to test here again.
+  if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) &&
+      ch === state.input.charCodeAt(_position + 1) &&
+      ch === state.input.charCodeAt(_position + 2)) {
+
+    _position += 3;
+
+    ch = state.input.charCodeAt(_position);
+
+    if (ch === 0 || is_WS_OR_EOL(ch)) {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+function writeFoldedLines(state, count) {
+  if (count === 1) {
+    state.result += ' ';
+  } else if (count > 1) {
+    state.result += common.repeat('\n', count - 1);
+  }
+}
+
+
+function readPlainScalar(state, nodeIndent, withinFlowCollection) {
+  var preceding,
+      following,
+      captureStart,
+      captureEnd,
+      hasPendingContent,
+      _line,
+      _lineStart,
+      _lineIndent,
+      _kind = state.kind,
+      _result = state.result,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (is_WS_OR_EOL(ch)      ||
+      is_FLOW_INDICATOR(ch) ||
+      ch === 0x23/* # */    ||
+      ch === 0x26/* & */    ||
+      ch === 0x2A/* * */    ||
+      ch === 0x21/* ! */    ||
+      ch === 0x7C/* | */    ||
+      ch === 0x3E/* > */    ||
+      ch === 0x27/* ' */    ||
+      ch === 0x22/* " */    ||
+      ch === 0x25/* % */    ||
+      ch === 0x40/* @ */    ||
+      ch === 0x60/* ` */) {
+    return false;
+  }
+
+  if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) {
+    following = state.input.charCodeAt(state.position + 1);
+
+    if (is_WS_OR_EOL(following) ||
+        withinFlowCollection && is_FLOW_INDICATOR(following)) {
+      return false;
+    }
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  captureStart = captureEnd = state.position;
+  hasPendingContent = false;
+
+  while (ch !== 0) {
+    if (ch === 0x3A/* : */) {
+      following = state.input.charCodeAt(state.position + 1);
+
+      if (is_WS_OR_EOL(following) ||
+          withinFlowCollection && is_FLOW_INDICATOR(following)) {
+        break;
+      }
+
+    } else if (ch === 0x23/* # */) {
+      preceding = state.input.charCodeAt(state.position - 1);
+
+      if (is_WS_OR_EOL(preceding)) {
+        break;
+      }
+
+    } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||
+               withinFlowCollection && is_FLOW_INDICATOR(ch)) {
+      break;
+
+    } else if (is_EOL(ch)) {
+      _line = state.line;
+      _lineStart = state.lineStart;
+      _lineIndent = state.lineIndent;
+      skipSeparationSpace(state, false, -1);
+
+      if (state.lineIndent >= nodeIndent) {
+        hasPendingContent = true;
+        ch = state.input.charCodeAt(state.position);
+        continue;
+      } else {
+        state.position = captureEnd;
+        state.line = _line;
+        state.lineStart = _lineStart;
+        state.lineIndent = _lineIndent;
+        break;
+      }
+    }
+
+    if (hasPendingContent) {
+      captureSegment(state, captureStart, captureEnd, false);
+      writeFoldedLines(state, state.line - _line);
+      captureStart = captureEnd = state.position;
+      hasPendingContent = false;
+    }
+
+    if (!is_WHITE_SPACE(ch)) {
+      captureEnd = state.position + 1;
+    }
+
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  captureSegment(state, captureStart, captureEnd, false);
+
+  if (state.result) {
+    return true;
+  }
+
+  state.kind = _kind;
+  state.result = _result;
+  return false;
+}
+
+function readSingleQuotedScalar(state, nodeIndent) {
+  var ch,
+      captureStart, captureEnd;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x27/* ' */) {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  state.position++;
+  captureStart = captureEnd = state.position;
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    if (ch === 0x27/* ' */) {
+      captureSegment(state, captureStart, state.position, true);
+      ch = state.input.charCodeAt(++state.position);
+
+      if (ch === 0x27/* ' */) {
+        captureStart = state.position;
+        state.position++;
+        captureEnd = state.position;
+      } else {
+        return true;
+      }
+
+    } else if (is_EOL(ch)) {
+      captureSegment(state, captureStart, captureEnd, true);
+      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
+      captureStart = captureEnd = state.position;
+
+    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
+      throwError(state, 'unexpected end of the document within a single quoted scalar');
+
+    } else {
+      state.position++;
+      captureEnd = state.position;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a single quoted scalar');
+}
+
+function readDoubleQuotedScalar(state, nodeIndent) {
+  var captureStart,
+      captureEnd,
+      hexLength,
+      hexResult,
+      tmp,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x22/* " */) {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+  state.position++;
+  captureStart = captureEnd = state.position;
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    if (ch === 0x22/* " */) {
+      captureSegment(state, captureStart, state.position, true);
+      state.position++;
+      return true;
+
+    } else if (ch === 0x5C/* \ */) {
+      captureSegment(state, captureStart, state.position, true);
+      ch = state.input.charCodeAt(++state.position);
+
+      if (is_EOL(ch)) {
+        skipSeparationSpace(state, false, nodeIndent);
+
+        // TODO: rework to inline fn with no type cast?
+      } else if (ch < 256 && simpleEscapeCheck[ch]) {
+        state.result += simpleEscapeMap[ch];
+        state.position++;
+
+      } else if ((tmp = escapedHexLen(ch)) > 0) {
+        hexLength = tmp;
+        hexResult = 0;
+
+        for (; hexLength > 0; hexLength--) {
+          ch = state.input.charCodeAt(++state.position);
+
+          if ((tmp = fromHexCode(ch)) >= 0) {
+            hexResult = (hexResult << 4) + tmp;
+
+          } else {
+            throwError(state, 'expected hexadecimal character');
+          }
+        }
+
+        state.result += charFromCodepoint(hexResult);
+
+        state.position++;
+
+      } else {
+        throwError(state, 'unknown escape sequence');
+      }
+
+      captureStart = captureEnd = state.position;
+
+    } else if (is_EOL(ch)) {
+      captureSegment(state, captureStart, captureEnd, true);
+      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
+      captureStart = captureEnd = state.position;
+
+    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
+      throwError(state, 'unexpected end of the document within a double quoted scalar');
+
+    } else {
+      state.position++;
+      captureEnd = state.position;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a double quoted scalar');
+}
+
+function readFlowCollection(state, nodeIndent) {
+  var readNext = true,
+      _line,
+      _tag     = state.tag,
+      _result,
+      _anchor  = state.anchor,
+      following,
+      terminator,
+      isPair,
+      isExplicitPair,
+      isMapping,
+      overridableKeys = {},
+      keyNode,
+      keyTag,
+      valueNode,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x5B/* [ */) {
+    terminator = 0x5D;/* ] */
+    isMapping = false;
+    _result = [];
+  } else if (ch === 0x7B/* { */) {
+    terminator = 0x7D;/* } */
+    isMapping = true;
+    _result = {};
+  } else {
+    return false;
+  }
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+
+  while (ch !== 0) {
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (ch === terminator) {
+      state.position++;
+      state.tag = _tag;
+      state.anchor = _anchor;
+      state.kind = isMapping ? 'mapping' : 'sequence';
+      state.result = _result;
+      return true;
+    } else if (!readNext) {
+      throwError(state, 'missed comma between flow collection entries');
+    }
+
+    keyTag = keyNode = valueNode = null;
+    isPair = isExplicitPair = false;
+
+    if (ch === 0x3F/* ? */) {
+      following = state.input.charCodeAt(state.position + 1);
+
+      if (is_WS_OR_EOL(following)) {
+        isPair = isExplicitPair = true;
+        state.position++;
+        skipSeparationSpace(state, true, nodeIndent);
+      }
+    }
+
+    _line = state.line;
+    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
+    keyTag = state.tag;
+    keyNode = state.result;
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) {
+      isPair = true;
+      ch = state.input.charCodeAt(++state.position);
+      skipSeparationSpace(state, true, nodeIndent);
+      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
+      valueNode = state.result;
+    }
+
+    if (isMapping) {
+      storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode);
+    } else if (isPair) {
+      _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode));
+    } else {
+      _result.push(keyNode);
+    }
+
+    skipSeparationSpace(state, true, nodeIndent);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (ch === 0x2C/* , */) {
+      readNext = true;
+      ch = state.input.charCodeAt(++state.position);
+    } else {
+      readNext = false;
+    }
+  }
+
+  throwError(state, 'unexpected end of the stream within a flow collection');
+}
+
+function readBlockScalar(state, nodeIndent) {
+  var captureStart,
+      folding,
+      chomping       = CHOMPING_CLIP,
+      didReadContent = false,
+      detectedIndent = false,
+      textIndent     = nodeIndent,
+      emptyLines     = 0,
+      atMoreIndented = false,
+      tmp,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch === 0x7C/* | */) {
+    folding = false;
+  } else if (ch === 0x3E/* > */) {
+    folding = true;
+  } else {
+    return false;
+  }
+
+  state.kind = 'scalar';
+  state.result = '';
+
+  while (ch !== 0) {
+    ch = state.input.charCodeAt(++state.position);
+
+    if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {
+      if (CHOMPING_CLIP === chomping) {
+        chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP;
+      } else {
+        throwError(state, 'repeat of a chomping mode identifier');
+      }
+
+    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
+      if (tmp === 0) {
+        throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');
+      } else if (!detectedIndent) {
+        textIndent = nodeIndent + tmp - 1;
+        detectedIndent = true;
+      } else {
+        throwError(state, 'repeat of an indentation width identifier');
+      }
+
+    } else {
+      break;
+    }
+  }
+
+  if (is_WHITE_SPACE(ch)) {
+    do { ch = state.input.charCodeAt(++state.position); }
+    while (is_WHITE_SPACE(ch));
+
+    if (ch === 0x23/* # */) {
+      do { ch = state.input.charCodeAt(++state.position); }
+      while (!is_EOL(ch) && (ch !== 0));
+    }
+  }
+
+  while (ch !== 0) {
+    readLineBreak(state);
+    state.lineIndent = 0;
+
+    ch = state.input.charCodeAt(state.position);
+
+    while ((!detectedIndent || state.lineIndent < textIndent) &&
+           (ch === 0x20/* Space */)) {
+      state.lineIndent++;
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    if (!detectedIndent && state.lineIndent > textIndent) {
+      textIndent = state.lineIndent;
+    }
+
+    if (is_EOL(ch)) {
+      emptyLines++;
+      continue;
+    }
+
+    // End of the scalar.
+    if (state.lineIndent < textIndent) {
+
+      // Perform the chomping.
+      if (chomping === CHOMPING_KEEP) {
+        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+      } else if (chomping === CHOMPING_CLIP) {
+        if (didReadContent) { // i.e. only if the scalar is not empty.
+          state.result += '\n';
+        }
+      }
+
+      // Break this `while` cycle and go to the funciton's epilogue.
+      break;
+    }
+
+    // Folded style: use fancy rules to handle line breaks.
+    if (folding) {
+
+      // Lines starting with white space characters (more-indented lines) are not folded.
+      if (is_WHITE_SPACE(ch)) {
+        atMoreIndented = true;
+        // except for the first content line (cf. Example 8.1)
+        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+
+      // End of more-indented block.
+      } else if (atMoreIndented) {
+        atMoreIndented = false;
+        state.result += common.repeat('\n', emptyLines + 1);
+
+      // Just one line break - perceive as the same line.
+      } else if (emptyLines === 0) {
+        if (didReadContent) { // i.e. only if we have already read some scalar content.
+          state.result += ' ';
+        }
+
+      // Several line breaks - perceive as different lines.
+      } else {
+        state.result += common.repeat('\n', emptyLines);
+      }
+
+    // Literal style: just add exact number of line breaks between content lines.
+    } else {
+      // Keep all line breaks except the header line break.
+      state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
+    }
+
+    didReadContent = true;
+    detectedIndent = true;
+    emptyLines = 0;
+    captureStart = state.position;
+
+    while (!is_EOL(ch) && (ch !== 0)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    captureSegment(state, captureStart, state.position, false);
+  }
+
+  return true;
+}
+
+function readBlockSequence(state, nodeIndent) {
+  var _line,
+      _tag      = state.tag,
+      _anchor   = state.anchor,
+      _result   = [],
+      following,
+      detected  = false,
+      ch;
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+
+    if (ch !== 0x2D/* - */) {
+      break;
+    }
+
+    following = state.input.charCodeAt(state.position + 1);
+
+    if (!is_WS_OR_EOL(following)) {
+      break;
+    }
+
+    detected = true;
+    state.position++;
+
+    if (skipSeparationSpace(state, true, -1)) {
+      if (state.lineIndent <= nodeIndent) {
+        _result.push(null);
+        ch = state.input.charCodeAt(state.position);
+        continue;
+      }
+    }
+
+    _line = state.line;
+    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
+    _result.push(state.result);
+    skipSeparationSpace(state, true, -1);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) {
+      throwError(state, 'bad indentation of a sequence entry');
+    } else if (state.lineIndent < nodeIndent) {
+      break;
+    }
+  }
+
+  if (detected) {
+    state.tag = _tag;
+    state.anchor = _anchor;
+    state.kind = 'sequence';
+    state.result = _result;
+    return true;
+  }
+  return false;
+}
+
+function readBlockMapping(state, nodeIndent, flowIndent) {
+  var following,
+      allowCompact,
+      _line,
+      _pos,
+      _tag          = state.tag,
+      _anchor       = state.anchor,
+      _result       = {},
+      overridableKeys = {},
+      keyTag        = null,
+      keyNode       = null,
+      valueNode     = null,
+      atExplicitKey = false,
+      detected      = false,
+      ch;
+
+  if (state.anchor !== null) {
+    state.anchorMap[state.anchor] = _result;
+  }
+
+  ch = state.input.charCodeAt(state.position);
+
+  while (ch !== 0) {
+    following = state.input.charCodeAt(state.position + 1);
+    _line = state.line; // Save the current line.
+    _pos = state.position;
+
+    //
+    // Explicit notation case. There are two separate blocks:
+    // first for the key (denoted by "?") and second for the value (denoted by ":")
+    //
+    if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) {
+
+      if (ch === 0x3F/* ? */) {
+        if (atExplicitKey) {
+          storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+          keyTag = keyNode = valueNode = null;
+        }
+
+        detected = true;
+        atExplicitKey = true;
+        allowCompact = true;
+
+      } else if (atExplicitKey) {
+        // i.e. 0x3A/* : */ === character after the explicit key.
+        atExplicitKey = false;
+        allowCompact = true;
+
+      } else {
+        throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line');
+      }
+
+      state.position += 1;
+      ch = following;
+
+    //
+    // Implicit notation case. Flow-style node as the key first, then ":", and the value.
+    //
+    } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {
+
+      if (state.line === _line) {
+        ch = state.input.charCodeAt(state.position);
+
+        while (is_WHITE_SPACE(ch)) {
+          ch = state.input.charCodeAt(++state.position);
+        }
+
+        if (ch === 0x3A/* : */) {
+          ch = state.input.charCodeAt(++state.position);
+
+          if (!is_WS_OR_EOL(ch)) {
+            throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');
+          }
+
+          if (atExplicitKey) {
+            storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+            keyTag = keyNode = valueNode = null;
+          }
+
+          detected = true;
+          atExplicitKey = false;
+          allowCompact = false;
+          keyTag = state.tag;
+          keyNode = state.result;
+
+        } else if (detected) {
+          throwError(state, 'can not read an implicit mapping pair; a colon is missed');
+
+        } else {
+          state.tag = _tag;
+          state.anchor = _anchor;
+          return true; // Keep the result of `composeNode`.
+        }
+
+      } else if (detected) {
+        throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');
+
+      } else {
+        state.tag = _tag;
+        state.anchor = _anchor;
+        return true; // Keep the result of `composeNode`.
+      }
+
+    } else {
+      break; // Reading is done. Go to the epilogue.
+    }
+
+    //
+    // Common reading code for both explicit and implicit notations.
+    //
+    if (state.line === _line || state.lineIndent > nodeIndent) {
+      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
+        if (atExplicitKey) {
+          keyNode = state.result;
+        } else {
+          valueNode = state.result;
+        }
+      }
+
+      if (!atExplicitKey) {
+        storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos);
+        keyTag = keyNode = valueNode = null;
+      }
+
+      skipSeparationSpace(state, true, -1);
+      ch = state.input.charCodeAt(state.position);
+    }
+
+    if (state.lineIndent > nodeIndent && (ch !== 0)) {
+      throwError(state, 'bad indentation of a mapping entry');
+    } else if (state.lineIndent < nodeIndent) {
+      break;
+    }
+  }
+
+  //
+  // Epilogue.
+  //
+
+  // Special case: last mapping's node contains only the key in explicit notation.
+  if (atExplicitKey) {
+    storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
+  }
+
+  // Expose the resulting mapping.
+  if (detected) {
+    state.tag = _tag;
+    state.anchor = _anchor;
+    state.kind = 'mapping';
+    state.result = _result;
+  }
+
+  return detected;
+}
+
+function readTagProperty(state) {
+  var _position,
+      isVerbatim = false,
+      isNamed    = false,
+      tagHandle,
+      tagName,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x21/* ! */) return false;
+
+  if (state.tag !== null) {
+    throwError(state, 'duplication of a tag property');
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+
+  if (ch === 0x3C/* < */) {
+    isVerbatim = true;
+    ch = state.input.charCodeAt(++state.position);
+
+  } else if (ch === 0x21/* ! */) {
+    isNamed = true;
+    tagHandle = '!!';
+    ch = state.input.charCodeAt(++state.position);
+
+  } else {
+    tagHandle = '!';
+  }
+
+  _position = state.position;
+
+  if (isVerbatim) {
+    do { ch = state.input.charCodeAt(++state.position); }
+    while (ch !== 0 && ch !== 0x3E/* > */);
+
+    if (state.position < state.length) {
+      tagName = state.input.slice(_position, state.position);
+      ch = state.input.charCodeAt(++state.position);
+    } else {
+      throwError(state, 'unexpected end of the stream within a verbatim tag');
+    }
+  } else {
+    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+
+      if (ch === 0x21/* ! */) {
+        if (!isNamed) {
+          tagHandle = state.input.slice(_position - 1, state.position + 1);
+
+          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
+            throwError(state, 'named tag handle cannot contain such characters');
+          }
+
+          isNamed = true;
+          _position = state.position + 1;
+        } else {
+          throwError(state, 'tag suffix cannot contain exclamation marks');
+        }
+      }
+
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    tagName = state.input.slice(_position, state.position);
+
+    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
+      throwError(state, 'tag suffix cannot contain flow indicator characters');
+    }
+  }
+
+  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
+    throwError(state, 'tag name cannot contain such characters: ' + tagName);
+  }
+
+  if (isVerbatim) {
+    state.tag = tagName;
+
+  } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {
+    state.tag = state.tagMap[tagHandle] + tagName;
+
+  } else if (tagHandle === '!') {
+    state.tag = '!' + tagName;
+
+  } else if (tagHandle === '!!') {
+    state.tag = 'tag:yaml.org,2002:' + tagName;
+
+  } else {
+    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
+  }
+
+  return true;
+}
+
+function readAnchorProperty(state) {
+  var _position,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x26/* & */) return false;
+
+  if (state.anchor !== null) {
+    throwError(state, 'duplication of an anchor property');
+  }
+
+  ch = state.input.charCodeAt(++state.position);
+  _position = state.position;
+
+  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  if (state.position === _position) {
+    throwError(state, 'name of an anchor node must contain at least one character');
+  }
+
+  state.anchor = state.input.slice(_position, state.position);
+  return true;
+}
+
+function readAlias(state) {
+  var _position, alias,
+      ch;
+
+  ch = state.input.charCodeAt(state.position);
+
+  if (ch !== 0x2A/* * */) return false;
+
+  ch = state.input.charCodeAt(++state.position);
+  _position = state.position;
+
+  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
+    ch = state.input.charCodeAt(++state.position);
+  }
+
+  if (state.position === _position) {
+    throwError(state, 'name of an alias node must contain at least one character');
+  }
+
+  alias = state.input.slice(_position, state.position);
+
+  if (!state.anchorMap.hasOwnProperty(alias)) {
+    throwError(state, 'unidentified alias "' + alias + '"');
+  }
+
+  state.result = state.anchorMap[alias];
+  skipSeparationSpace(state, true, -1);
+  return true;
+}
+
+function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
+  var allowBlockStyles,
+      allowBlockScalars,
+      allowBlockCollections,
+      indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this<parent
+      atNewLine  = false,
+      hasContent = false,
+      typeIndex,
+      typeQuantity,
+      type,
+      flowIndent,
+      blockIndent;
+
+  if (state.listener !== null) {
+    state.listener('open', state);
+  }
+
+  state.tag    = null;
+  state.anchor = null;
+  state.kind   = null;
+  state.result = null;
+
+  allowBlockStyles = allowBlockScalars = allowBlockCollections =
+    CONTEXT_BLOCK_OUT === nodeContext ||
+    CONTEXT_BLOCK_IN  === nodeContext;
+
+  if (allowToSeek) {
+    if (skipSeparationSpace(state, true, -1)) {
+      atNewLine = true;
+
+      if (state.lineIndent > parentIndent) {
+        indentStatus = 1;
+      } else if (state.lineIndent === parentIndent) {
+        indentStatus = 0;
+      } else if (state.lineIndent < parentIndent) {
+        indentStatus = -1;
+      }
+    }
+  }
+
+  if (indentStatus === 1) {
+    while (readTagProperty(state) || readAnchorProperty(state)) {
+      if (skipSeparationSpace(state, true, -1)) {
+        atNewLine = true;
+        allowBlockCollections = allowBlockStyles;
+
+        if (state.lineIndent > parentIndent) {
+          indentStatus = 1;
+        } else if (state.lineIndent === parentIndent) {
+          indentStatus = 0;
+        } else if (state.lineIndent < parentIndent) {
+          indentStatus = -1;
+        }
+      } else {
+        allowBlockCollections = false;
+      }
+    }
+  }
+
+  if (allowBlockCollections) {
+    allowBlockCollections = atNewLine || allowCompact;
+  }
+
+  if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) {
+    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
+      flowIndent = parentIndent;
+    } else {
+      flowIndent = parentIndent + 1;
+    }
+
+    blockIndent = state.position - state.lineStart;
+
+    if (indentStatus === 1) {
+      if (allowBlockCollections &&
+          (readBlockSequence(state, blockIndent) ||
+           readBlockMapping(state, blockIndent, flowIndent)) ||
+          readFlowCollection(state, flowIndent)) {
+        hasContent = true;
+      } else {
+        if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||
+            readSingleQuotedScalar(state, flowIndent) ||
+            readDoubleQuotedScalar(state, flowIndent)) {
+          hasContent = true;
+
+        } else if (readAlias(state)) {
+          hasContent = true;
+
+          if (state.tag !== null || state.anchor !== null) {
+            throwError(state, 'alias node should not have any properties');
+          }
+
+        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
+          hasContent = true;
+
+          if (state.tag === null) {
+            state.tag = '?';
+          }
+        }
+
+        if (state.anchor !== null) {
+          state.anchorMap[state.anchor] = state.result;
+        }
+      }
+    } else if (indentStatus === 0) {
+      // Special case: block sequences are allowed to have same indentation level as the parent.
+      // http://www.yaml.org/spec/1.2/spec.html#id2799784
+      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
+    }
+  }
+
+  if (state.tag !== null && state.tag !== '!') {
+    if (state.tag === '?') {
+      for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {
+        type = state.implicitTypes[typeIndex];
+
+        // Implicit resolving is not allowed for non-scalar types, and '?'
+        // non-specific tag is only assigned to plain scalars. So, it isn't
+        // needed to check for 'kind' conformity.
+
+        if (type.resolve(state.result)) { // `state.result` updated in resolver if matched
+          state.result = type.construct(state.result);
+          state.tag = type.tag;
+          if (state.anchor !== null) {
+            state.anchorMap[state.anchor] = state.result;
+          }
+          break;
+        }
+      }
+    } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) {
+      type = state.typeMap[state.kind || 'fallback'][state.tag];
+
+      if (state.result !== null && type.kind !== state.kind) {
+        throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"');
+      }
+
+      if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched
+        throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');
+      } else {
+        state.result = type.construct(state.result);
+        if (state.anchor !== null) {
+          state.anchorMap[state.anchor] = state.result;
+        }
+      }
+    } else {
+      throwError(state, 'unknown tag !<' + state.tag + '>');
+    }
+  }
+
+  if (state.listener !== null) {
+    state.listener('close', state);
+  }
+  return state.tag !== null ||  state.anchor !== null || hasContent;
+}
+
+function readDocument(state) {
+  var documentStart = state.position,
+      _position,
+      directiveName,
+      directiveArgs,
+      hasDirectives = false,
+      ch;
+
+  state.version = null;
+  state.checkLineBreaks = state.legacy;
+  state.tagMap = {};
+  state.anchorMap = {};
+
+  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
+    skipSeparationSpace(state, true, -1);
+
+    ch = state.input.charCodeAt(state.position);
+
+    if (state.lineIndent > 0 || ch !== 0x25/* % */) {
+      break;
+    }
+
+    hasDirectives = true;
+    ch = state.input.charCodeAt(++state.position);
+    _position = state.position;
+
+    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+      ch = state.input.charCodeAt(++state.position);
+    }
+
+    directiveName = state.input.slice(_position, state.position);
+    directiveArgs = [];
+
+    if (directiveName.length < 1) {
+      throwError(state, 'directive name must not be less than one character in length');
+    }
+
+    while (ch !== 0) {
+      while (is_WHITE_SPACE(ch)) {
+        ch = state.input.charCodeAt(++state.position);
+      }
+
+      if (ch === 0x23/* # */) {
+        do { ch = state.input.charCodeAt(++state.position); }
+        while (ch !== 0 && !is_EOL(ch));
+        break;
+      }
+
+      if (is_EOL(ch)) break;
+
+      _position = state.position;
+
+      while (ch !== 0 && !is_WS_OR_EOL(ch)) {
+        ch = state.input.charCodeAt(++state.position);
+      }
+
+      directiveArgs.push(state.input.slice(_position, state.position));
+    }
+
+    if (ch !== 0) readLineBreak(state);
+
+    if (_hasOwnProperty.call(directiveHandlers, directiveName)) {
+      directiveHandlers[directiveName](state, directiveName, directiveArgs);
+    } else {
+      throwWarning(state, 'unknown document directive "' + directiveName + '"');
+    }
+  }
+
+  skipSeparationSpace(state, true, -1);
+
+  if (state.lineIndent === 0 &&
+      state.input.charCodeAt(state.position)     === 0x2D/* - */ &&
+      state.input.charCodeAt(state.position + 1) === 0x2D/* - */ &&
+      state.input.charCodeAt(state.position + 2) === 0x2D/* - */) {
+    state.position += 3;
+    skipSeparationSpace(state, true, -1);
+
+  } else if (hasDirectives) {
+    throwError(state, 'directives end mark is expected');
+  }
+
+  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
+  skipSeparationSpace(state, true, -1);
+
+  if (state.checkLineBreaks &&
+      PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
+    throwWarning(state, 'non-ASCII line breaks are interpreted as content');
+  }
+
+  state.documents.push(state.result);
+
+  if (state.position === state.lineStart && testDocumentSeparator(state)) {
+
+    if (state.input.charCodeAt(state.position) === 0x2E/* . */) {
+      state.position += 3;
+      skipSeparationSpace(state, true, -1);
+    }
+    return;
+  }
+
+  if (state.position < (state.length - 1)) {
+    throwError(state, 'end of the stream or a document separator is expected');
+  } else {
+    return;
+  }
+}
+
+
+function loadDocuments(input, options) {
+  input = String(input);
+  options = options || {};
+
+  if (input.length !== 0) {
+
+    // Add tailing `\n` if not exists
+    if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ &&
+        input.charCodeAt(input.length - 1) !== 0x0D/* CR */) {
+      input += '\n';
+    }
+
+    // Strip BOM
+    if (input.charCodeAt(0) === 0xFEFF) {
+      input = input.slice(1);
+    }
+  }
+
+  var state = new State(input, options);
+
+  // Use 0 as string terminator. That significantly simplifies bounds check.
+  state.input += '\0';
+
+  while (state.input.charCodeAt(state.position) === 0x20/* Space */) {
+    state.lineIndent += 1;
+    state.position += 1;
+  }
+
+  while (state.position < (state.length - 1)) {
+    readDocument(state);
+  }
+
+  return state.documents;
+}
+
+
+function loadAll(input, iterator, options) {
+  var documents = loadDocuments(input, options), index, length;
+
+  if (typeof iterator !== 'function') {
+    return documents;
+  }
+
+  for (index = 0, length = documents.length; index < length; index += 1) {
+    iterator(documents[index]);
+  }
+}
+
+
+function load(input, options) {
+  var documents = loadDocuments(input, options);
+
+  if (documents.length === 0) {
+    /*eslint-disable no-undefined*/
+    return undefined;
+  } else if (documents.length === 1) {
+    return documents[0];
+  }
+  throw new YAMLException('expected a single document in the stream, but found more');
+}
+
+
+function safeLoadAll(input, output, options) {
+  if (typeof output === 'function') {
+    loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+  } else {
+    return loadAll(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+  }
+}
+
+
+function safeLoad(input, options) {
+  return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
+}
+
+
+module.exports.loadAll     = loadAll;
+module.exports.load        = load;
+module.exports.safeLoadAll = safeLoadAll;
+module.exports.safeLoad    = safeLoad;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/mark.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/mark.js
new file mode 100644 (file)
index 0000000..47b265c
--- /dev/null
@@ -0,0 +1,76 @@
+'use strict';
+
+
+var common = require('./common');
+
+
+function Mark(name, buffer, position, line, column) {
+  this.name     = name;
+  this.buffer   = buffer;
+  this.position = position;
+  this.line     = line;
+  this.column   = column;
+}
+
+
+Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
+  var head, start, tail, end, snippet;
+
+  if (!this.buffer) return null;
+
+  indent = indent || 4;
+  maxLength = maxLength || 75;
+
+  head = '';
+  start = this.position;
+
+  while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) {
+    start -= 1;
+    if (this.position - start > (maxLength / 2 - 1)) {
+      head = ' ... ';
+      start += 5;
+      break;
+    }
+  }
+
+  tail = '';
+  end = this.position;
+
+  while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) {
+    end += 1;
+    if (end - this.position > (maxLength / 2 - 1)) {
+      tail = ' ... ';
+      end -= 5;
+      break;
+    }
+  }
+
+  snippet = this.buffer.slice(start, end);
+
+  return common.repeat(' ', indent) + head + snippet + tail + '\n' +
+         common.repeat(' ', indent + this.position - start + head.length) + '^';
+};
+
+
+Mark.prototype.toString = function toString(compact) {
+  var snippet, where = '';
+
+  if (this.name) {
+    where += 'in "' + this.name + '" ';
+  }
+
+  where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);
+
+  if (!compact) {
+    snippet = this.getSnippet();
+
+    if (snippet) {
+      where += ':\n' + snippet;
+    }
+  }
+
+  return where;
+};
+
+
+module.exports = Mark;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/schema.js
new file mode 100644 (file)
index 0000000..ca7cf47
--- /dev/null
@@ -0,0 +1,108 @@
+'use strict';
+
+/*eslint-disable max-len*/
+
+var common        = require('./common');
+var YAMLException = require('./exception');
+var Type          = require('./type');
+
+
+function compileList(schema, name, result) {
+  var exclude = [];
+
+  schema.include.forEach(function (includedSchema) {
+    result = compileList(includedSchema, name, result);
+  });
+
+  schema[name].forEach(function (currentType) {
+    result.forEach(function (previousType, previousIndex) {
+      if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) {
+        exclude.push(previousIndex);
+      }
+    });
+
+    result.push(currentType);
+  });
+
+  return result.filter(function (type, index) {
+    return exclude.indexOf(index) === -1;
+  });
+}
+
+
+function compileMap(/* lists... */) {
+  var result = {
+        scalar: {},
+        sequence: {},
+        mapping: {},
+        fallback: {}
+      }, index, length;
+
+  function collectType(type) {
+    result[type.kind][type.tag] = result['fallback'][type.tag] = type;
+  }
+
+  for (index = 0, length = arguments.length; index < length; index += 1) {
+    arguments[index].forEach(collectType);
+  }
+  return result;
+}
+
+
+function Schema(definition) {
+  this.include  = definition.include  || [];
+  this.implicit = definition.implicit || [];
+  this.explicit = definition.explicit || [];
+
+  this.implicit.forEach(function (type) {
+    if (type.loadKind && type.loadKind !== 'scalar') {
+      throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');
+    }
+  });
+
+  this.compiledImplicit = compileList(this, 'implicit', []);
+  this.compiledExplicit = compileList(this, 'explicit', []);
+  this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit);
+}
+
+
+Schema.DEFAULT = null;
+
+
+Schema.create = function createSchema() {
+  var schemas, types;
+
+  switch (arguments.length) {
+    case 1:
+      schemas = Schema.DEFAULT;
+      types = arguments[0];
+      break;
+
+    case 2:
+      schemas = arguments[0];
+      types = arguments[1];
+      break;
+
+    default:
+      throw new YAMLException('Wrong number of arguments for Schema.create function');
+  }
+
+  schemas = common.toArray(schemas);
+  types = common.toArray(types);
+
+  if (!schemas.every(function (schema) { return schema instanceof Schema; })) {
+    throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');
+  }
+
+  if (!types.every(function (type) { return type instanceof Type; })) {
+    throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');
+  }
+
+  return new Schema({
+    include: schemas,
+    explicit: types
+  });
+};
+
+
+module.exports = Schema;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type.js
new file mode 100644 (file)
index 0000000..90b702a
--- /dev/null
@@ -0,0 +1,61 @@
+'use strict';
+
+var YAMLException = require('./exception');
+
+var TYPE_CONSTRUCTOR_OPTIONS = [
+  'kind',
+  'resolve',
+  'construct',
+  'instanceOf',
+  'predicate',
+  'represent',
+  'defaultStyle',
+  'styleAliases'
+];
+
+var YAML_NODE_KINDS = [
+  'scalar',
+  'sequence',
+  'mapping'
+];
+
+function compileStyleAliases(map) {
+  var result = {};
+
+  if (map !== null) {
+    Object.keys(map).forEach(function (style) {
+      map[style].forEach(function (alias) {
+        result[String(alias)] = style;
+      });
+    });
+  }
+
+  return result;
+}
+
+function Type(tag, options) {
+  options = options || {};
+
+  Object.keys(options).forEach(function (name) {
+    if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) {
+      throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
+    }
+  });
+
+  // TODO: Add tag format check.
+  this.tag          = tag;
+  this.kind         = options['kind']         || null;
+  this.resolve      = options['resolve']      || function () { return true; };
+  this.construct    = options['construct']    || function (data) { return data; };
+  this.instanceOf   = options['instanceOf']   || null;
+  this.predicate    = options['predicate']    || null;
+  this.represent    = options['represent']    || null;
+  this.defaultStyle = options['defaultStyle'] || null;
+  this.styleAliases = compileStyleAliases(options['styleAliases'] || null);
+
+  if (YAML_NODE_KINDS.indexOf(this.kind) === -1) {
+    throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
+  }
+}
+
+module.exports = Type;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/binary.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/binary.js
new file mode 100644 (file)
index 0000000..10b1875
--- /dev/null
@@ -0,0 +1,138 @@
+'use strict';
+
+/*eslint-disable no-bitwise*/
+
+var NodeBuffer;
+
+try {
+  // A trick for browserified version, to not include `Buffer` shim
+  var _require = require;
+  NodeBuffer = _require('buffer').Buffer;
+} catch (__) {}
+
+var Type       = require('../type');
+
+
+// [ 64, 65, 66 ] -> [ padding, CR, LF ]
+var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r';
+
+
+function resolveYamlBinary(data) {
+  if (data === null) return false;
+
+  var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP;
+
+  // Convert one by one.
+  for (idx = 0; idx < max; idx++) {
+    code = map.indexOf(data.charAt(idx));
+
+    // Skip CR/LF
+    if (code > 64) continue;
+
+    // Fail on illegal characters
+    if (code < 0) return false;
+
+    bitlen += 6;
+  }
+
+  // If there are any bits left, source was corrupted
+  return (bitlen % 8) === 0;
+}
+
+function constructYamlBinary(data) {
+  var idx, tailbits,
+      input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan
+      max = input.length,
+      map = BASE64_MAP,
+      bits = 0,
+      result = [];
+
+  // Collect by 6*4 bits (3 bytes)
+
+  for (idx = 0; idx < max; idx++) {
+    if ((idx % 4 === 0) && idx) {
+      result.push((bits >> 16) & 0xFF);
+      result.push((bits >> 8) & 0xFF);
+      result.push(bits & 0xFF);
+    }
+
+    bits = (bits << 6) | map.indexOf(input.charAt(idx));
+  }
+
+  // Dump tail
+
+  tailbits = (max % 4) * 6;
+
+  if (tailbits === 0) {
+    result.push((bits >> 16) & 0xFF);
+    result.push((bits >> 8) & 0xFF);
+    result.push(bits & 0xFF);
+  } else if (tailbits === 18) {
+    result.push((bits >> 10) & 0xFF);
+    result.push((bits >> 2) & 0xFF);
+  } else if (tailbits === 12) {
+    result.push((bits >> 4) & 0xFF);
+  }
+
+  // Wrap into Buffer for NodeJS and leave Array for browser
+  if (NodeBuffer) {
+    // Support node 6.+ Buffer API when available
+    return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result);
+  }
+
+  return result;
+}
+
+function representYamlBinary(object /*, style*/) {
+  var result = '', bits = 0, idx, tail,
+      max = object.length,
+      map = BASE64_MAP;
+
+  // Convert every three bytes to 4 ASCII characters.
+
+  for (idx = 0; idx < max; idx++) {
+    if ((idx % 3 === 0) && idx) {
+      result += map[(bits >> 18) & 0x3F];
+      result += map[(bits >> 12) & 0x3F];
+      result += map[(bits >> 6) & 0x3F];
+      result += map[bits & 0x3F];
+    }
+
+    bits = (bits << 8) + object[idx];
+  }
+
+  // Dump tail
+
+  tail = max % 3;
+
+  if (tail === 0) {
+    result += map[(bits >> 18) & 0x3F];
+    result += map[(bits >> 12) & 0x3F];
+    result += map[(bits >> 6) & 0x3F];
+    result += map[bits & 0x3F];
+  } else if (tail === 2) {
+    result += map[(bits >> 10) & 0x3F];
+    result += map[(bits >> 4) & 0x3F];
+    result += map[(bits << 2) & 0x3F];
+    result += map[64];
+  } else if (tail === 1) {
+    result += map[(bits >> 2) & 0x3F];
+    result += map[(bits << 4) & 0x3F];
+    result += map[64];
+    result += map[64];
+  }
+
+  return result;
+}
+
+function isBinary(object) {
+  return NodeBuffer && NodeBuffer.isBuffer(object);
+}
+
+module.exports = new Type('tag:yaml.org,2002:binary', {
+  kind: 'scalar',
+  resolve: resolveYamlBinary,
+  construct: constructYamlBinary,
+  predicate: isBinary,
+  represent: representYamlBinary
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/bool.js
new file mode 100644 (file)
index 0000000..cb77459
--- /dev/null
@@ -0,0 +1,35 @@
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlBoolean(data) {
+  if (data === null) return false;
+
+  var max = data.length;
+
+  return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||
+         (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));
+}
+
+function constructYamlBoolean(data) {
+  return data === 'true' ||
+         data === 'True' ||
+         data === 'TRUE';
+}
+
+function isBoolean(object) {
+  return Object.prototype.toString.call(object) === '[object Boolean]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:bool', {
+  kind: 'scalar',
+  resolve: resolveYamlBoolean,
+  construct: constructYamlBoolean,
+  predicate: isBoolean,
+  represent: {
+    lowercase: function (object) { return object ? 'true' : 'false'; },
+    uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },
+    camelcase: function (object) { return object ? 'True' : 'False'; }
+  },
+  defaultStyle: 'lowercase'
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/float.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/float.js
new file mode 100644 (file)
index 0000000..127671b
--- /dev/null
@@ -0,0 +1,116 @@
+'use strict';
+
+var common = require('../common');
+var Type   = require('../type');
+
+var YAML_FLOAT_PATTERN = new RegExp(
+  // 2.5e4, 2.5 and integers
+  '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' +
+  // .2e4, .2
+  // special case, seems not from spec
+  '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' +
+  // 20:59
+  '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' +
+  // .inf
+  '|[-+]?\\.(?:inf|Inf|INF)' +
+  // .nan
+  '|\\.(?:nan|NaN|NAN))$');
+
+function resolveYamlFloat(data) {
+  if (data === null) return false;
+
+  if (!YAML_FLOAT_PATTERN.test(data) ||
+      // Quick hack to not allow integers end with `_`
+      // Probably should update regexp & check speed
+      data[data.length - 1] === '_') {
+    return false;
+  }
+
+  return true;
+}
+
+function constructYamlFloat(data) {
+  var value, sign, base, digits;
+
+  value  = data.replace(/_/g, '').toLowerCase();
+  sign   = value[0] === '-' ? -1 : 1;
+  digits = [];
+
+  if ('+-'.indexOf(value[0]) >= 0) {
+    value = value.slice(1);
+  }
+
+  if (value === '.inf') {
+    return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
+
+  } else if (value === '.nan') {
+    return NaN;
+
+  } else if (value.indexOf(':') >= 0) {
+    value.split(':').forEach(function (v) {
+      digits.unshift(parseFloat(v, 10));
+    });
+
+    value = 0.0;
+    base = 1;
+
+    digits.forEach(function (d) {
+      value += d * base;
+      base *= 60;
+    });
+
+    return sign * value;
+
+  }
+  return sign * parseFloat(value, 10);
+}
+
+
+var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/;
+
+function representYamlFloat(object, style) {
+  var res;
+
+  if (isNaN(object)) {
+    switch (style) {
+      case 'lowercase': return '.nan';
+      case 'uppercase': return '.NAN';
+      case 'camelcase': return '.NaN';
+    }
+  } else if (Number.POSITIVE_INFINITY === object) {
+    switch (style) {
+      case 'lowercase': return '.inf';
+      case 'uppercase': return '.INF';
+      case 'camelcase': return '.Inf';
+    }
+  } else if (Number.NEGATIVE_INFINITY === object) {
+    switch (style) {
+      case 'lowercase': return '-.inf';
+      case 'uppercase': return '-.INF';
+      case 'camelcase': return '-.Inf';
+    }
+  } else if (common.isNegativeZero(object)) {
+    return '-0.0';
+  }
+
+  res = object.toString(10);
+
+  // JS stringifier can build scientific format without dots: 5e-100,
+  // while YAML requres dot: 5.e-100. Fix it with simple hack
+
+  return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res;
+}
+
+function isFloat(object) {
+  return (Object.prototype.toString.call(object) === '[object Number]') &&
+         (object % 1 !== 0 || common.isNegativeZero(object));
+}
+
+module.exports = new Type('tag:yaml.org,2002:float', {
+  kind: 'scalar',
+  resolve: resolveYamlFloat,
+  construct: constructYamlFloat,
+  predicate: isFloat,
+  represent: representYamlFloat,
+  defaultStyle: 'lowercase'
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/int.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/int.js
new file mode 100644 (file)
index 0000000..4ae522a
--- /dev/null
@@ -0,0 +1,172 @@
+'use strict';
+
+var common = require('../common');
+var Type   = require('../type');
+
+function isHexCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
+         ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
+         ((0x61/* a */ <= c) && (c <= 0x66/* f */));
+}
+
+function isOctCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
+}
+
+function isDecCode(c) {
+  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
+}
+
+function resolveYamlInteger(data) {
+  if (data === null) return false;
+
+  var max = data.length,
+      index = 0,
+      hasDigits = false,
+      ch;
+
+  if (!max) return false;
+
+  ch = data[index];
+
+  // sign
+  if (ch === '-' || ch === '+') {
+    ch = data[++index];
+  }
+
+  if (ch === '0') {
+    // 0
+    if (index + 1 === max) return true;
+    ch = data[++index];
+
+    // base 2, base 8, base 16
+
+    if (ch === 'b') {
+      // base 2
+      index++;
+
+      for (; index < max; index++) {
+        ch = data[index];
+        if (ch === '_') continue;
+        if (ch !== '0' && ch !== '1') return false;
+        hasDigits = true;
+      }
+      return hasDigits && ch !== '_';
+    }
+
+
+    if (ch === 'x') {
+      // base 16
+      index++;
+
+      for (; index < max; index++) {
+        ch = data[index];
+        if (ch === '_') continue;
+        if (!isHexCode(data.charCodeAt(index))) return false;
+        hasDigits = true;
+      }
+      return hasDigits && ch !== '_';
+    }
+
+    // base 8
+    for (; index < max; index++) {
+      ch = data[index];
+      if (ch === '_') continue;
+      if (!isOctCode(data.charCodeAt(index))) return false;
+      hasDigits = true;
+    }
+    return hasDigits && ch !== '_';
+  }
+
+  // base 10 (except 0) or base 60
+
+  // value should not start with `_`;
+  if (ch === '_') return false;
+
+  for (; index < max; index++) {
+    ch = data[index];
+    if (ch === '_') continue;
+    if (ch === ':') break;
+    if (!isDecCode(data.charCodeAt(index))) {
+      return false;
+    }
+    hasDigits = true;
+  }
+
+  // Should have digits and should not end with `_`
+  if (!hasDigits || ch === '_') return false;
+
+  // if !base60 - done;
+  if (ch !== ':') return true;
+
+  // base60 almost not used, no needs to optimize
+  return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
+}
+
+function constructYamlInteger(data) {
+  var value = data, sign = 1, ch, base, digits = [];
+
+  if (value.indexOf('_') !== -1) {
+    value = value.replace(/_/g, '');
+  }
+
+  ch = value[0];
+
+  if (ch === '-' || ch === '+') {
+    if (ch === '-') sign = -1;
+    value = value.slice(1);
+    ch = value[0];
+  }
+
+  if (value === '0') return 0;
+
+  if (ch === '0') {
+    if (value[1] === 'b') return sign * parseInt(value.slice(2), 2);
+    if (value[1] === 'x') return sign * parseInt(value, 16);
+    return sign * parseInt(value, 8);
+  }
+
+  if (value.indexOf(':') !== -1) {
+    value.split(':').forEach(function (v) {
+      digits.unshift(parseInt(v, 10));
+    });
+
+    value = 0;
+    base = 1;
+
+    digits.forEach(function (d) {
+      value += (d * base);
+      base *= 60;
+    });
+
+    return sign * value;
+
+  }
+
+  return sign * parseInt(value, 10);
+}
+
+function isInteger(object) {
+  return (Object.prototype.toString.call(object)) === '[object Number]' &&
+         (object % 1 === 0 && !common.isNegativeZero(object));
+}
+
+module.exports = new Type('tag:yaml.org,2002:int', {
+  kind: 'scalar',
+  resolve: resolveYamlInteger,
+  construct: constructYamlInteger,
+  predicate: isInteger,
+  represent: {
+    binary:      function (object) { return '0b' + object.toString(2); },
+    octal:       function (object) { return '0'  + object.toString(8); },
+    decimal:     function (object) { return        object.toString(10); },
+    hexadecimal: function (object) { return '0x' + object.toString(16).toUpperCase(); }
+  },
+  defaultStyle: 'decimal',
+  styleAliases: {
+    binary:      [ 2,  'bin' ],
+    octal:       [ 8,  'oct' ],
+    decimal:     [ 10, 'dec' ],
+    hexadecimal: [ 16, 'hex' ]
+  }
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/function.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/function.js
new file mode 100644 (file)
index 0000000..c6a42d0
--- /dev/null
@@ -0,0 +1,84 @@
+'use strict';
+
+var esprima;
+
+// Browserified version does not have esprima
+//
+// 1. For node.js just require module as deps
+// 2. For browser try to require mudule via external AMD system.
+//    If not found - try to fallback to window.esprima. If not
+//    found too - then fail to parse.
+//
+try {
+  // workaround to exclude package from browserify list.
+  var _require = require;
+  esprima = _require('esprima');
+} catch (_) {
+  /*global window */
+  if (typeof window !== 'undefined') esprima = window.esprima;
+}
+
+var Type = require('../../type');
+
+function resolveJavascriptFunction(data) {
+  if (data === null) return false;
+
+  try {
+    var source = '(' + data + ')',
+        ast    = esprima.parse(source, { range: true });
+
+    if (ast.type                    !== 'Program'             ||
+        ast.body.length             !== 1                     ||
+        ast.body[0].type            !== 'ExpressionStatement' ||
+        ast.body[0].expression.type !== 'FunctionExpression') {
+      return false;
+    }
+
+    return true;
+  } catch (err) {
+    return false;
+  }
+}
+
+function constructJavascriptFunction(data) {
+  /*jslint evil:true*/
+
+  var source = '(' + data + ')',
+      ast    = esprima.parse(source, { range: true }),
+      params = [],
+      body;
+
+  if (ast.type                    !== 'Program'             ||
+      ast.body.length             !== 1                     ||
+      ast.body[0].type            !== 'ExpressionStatement' ||
+      ast.body[0].expression.type !== 'FunctionExpression') {
+    throw new Error('Failed to resolve function');
+  }
+
+  ast.body[0].expression.params.forEach(function (param) {
+    params.push(param.name);
+  });
+
+  body = ast.body[0].expression.body.range;
+
+  // Esprima's ranges include the first '{' and the last '}' characters on
+  // function expressions. So cut them out.
+  /*eslint-disable no-new-func*/
+  return new Function(params, source.slice(body[0] + 1, body[1] - 1));
+}
+
+function representJavascriptFunction(object /*, style*/) {
+  return object.toString();
+}
+
+function isFunction(object) {
+  return Object.prototype.toString.call(object) === '[object Function]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/function', {
+  kind: 'scalar',
+  resolve: resolveJavascriptFunction,
+  construct: constructJavascriptFunction,
+  predicate: isFunction,
+  represent: representJavascriptFunction
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
new file mode 100644 (file)
index 0000000..43fa470
--- /dev/null
@@ -0,0 +1,60 @@
+'use strict';
+
+var Type = require('../../type');
+
+function resolveJavascriptRegExp(data) {
+  if (data === null) return false;
+  if (data.length === 0) return false;
+
+  var regexp = data,
+      tail   = /\/([gim]*)$/.exec(data),
+      modifiers = '';
+
+  // if regexp starts with '/' it can have modifiers and must be properly closed
+  // `/foo/gim` - modifiers tail can be maximum 3 chars
+  if (regexp[0] === '/') {
+    if (tail) modifiers = tail[1];
+
+    if (modifiers.length > 3) return false;
+    // if expression starts with /, is should be properly terminated
+    if (regexp[regexp.length - modifiers.length - 1] !== '/') return false;
+  }
+
+  return true;
+}
+
+function constructJavascriptRegExp(data) {
+  var regexp = data,
+      tail   = /\/([gim]*)$/.exec(data),
+      modifiers = '';
+
+  // `/foo/gim` - tail can be maximum 4 chars
+  if (regexp[0] === '/') {
+    if (tail) modifiers = tail[1];
+    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
+  }
+
+  return new RegExp(regexp, modifiers);
+}
+
+function representJavascriptRegExp(object /*, style*/) {
+  var result = '/' + object.source + '/';
+
+  if (object.global) result += 'g';
+  if (object.multiline) result += 'm';
+  if (object.ignoreCase) result += 'i';
+
+  return result;
+}
+
+function isRegExp(object) {
+  return Object.prototype.toString.call(object) === '[object RegExp]';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/regexp', {
+  kind: 'scalar',
+  resolve: resolveJavascriptRegExp,
+  construct: constructJavascriptRegExp,
+  predicate: isRegExp,
+  represent: representJavascriptRegExp
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
new file mode 100644 (file)
index 0000000..95b5569
--- /dev/null
@@ -0,0 +1,28 @@
+'use strict';
+
+var Type = require('../../type');
+
+function resolveJavascriptUndefined() {
+  return true;
+}
+
+function constructJavascriptUndefined() {
+  /*eslint-disable no-undefined*/
+  return undefined;
+}
+
+function representJavascriptUndefined() {
+  return '';
+}
+
+function isUndefined(object) {
+  return typeof object === 'undefined';
+}
+
+module.exports = new Type('tag:yaml.org,2002:js/undefined', {
+  kind: 'scalar',
+  resolve: resolveJavascriptUndefined,
+  construct: constructJavascriptUndefined,
+  predicate: isUndefined,
+  represent: representJavascriptUndefined
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/map.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/map.js
new file mode 100644 (file)
index 0000000..f327bee
--- /dev/null
@@ -0,0 +1,8 @@
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:map', {
+  kind: 'mapping',
+  construct: function (data) { return data !== null ? data : {}; }
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/merge.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/merge.js
new file mode 100644 (file)
index 0000000..ae08a86
--- /dev/null
@@ -0,0 +1,12 @@
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlMerge(data) {
+  return data === '<<' || data === null;
+}
+
+module.exports = new Type('tag:yaml.org,2002:merge', {
+  kind: 'scalar',
+  resolve: resolveYamlMerge
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/null.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/null.js
new file mode 100644 (file)
index 0000000..6874daa
--- /dev/null
@@ -0,0 +1,34 @@
+'use strict';
+
+var Type = require('../type');
+
+function resolveYamlNull(data) {
+  if (data === null) return true;
+
+  var max = data.length;
+
+  return (max === 1 && data === '~') ||
+         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
+}
+
+function constructYamlNull() {
+  return null;
+}
+
+function isNull(object) {
+  return object === null;
+}
+
+module.exports = new Type('tag:yaml.org,2002:null', {
+  kind: 'scalar',
+  resolve: resolveYamlNull,
+  construct: constructYamlNull,
+  predicate: isNull,
+  represent: {
+    canonical: function () { return '~';    },
+    lowercase: function () { return 'null'; },
+    uppercase: function () { return 'NULL'; },
+    camelcase: function () { return 'Null'; }
+  },
+  defaultStyle: 'lowercase'
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/omap.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/omap.js
new file mode 100644 (file)
index 0000000..b2b5323
--- /dev/null
@@ -0,0 +1,44 @@
+'use strict';
+
+var Type = require('../type');
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+var _toString       = Object.prototype.toString;
+
+function resolveYamlOmap(data) {
+  if (data === null) return true;
+
+  var objectKeys = [], index, length, pair, pairKey, pairHasKey,
+      object = data;
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+    pairHasKey = false;
+
+    if (_toString.call(pair) !== '[object Object]') return false;
+
+    for (pairKey in pair) {
+      if (_hasOwnProperty.call(pair, pairKey)) {
+        if (!pairHasKey) pairHasKey = true;
+        else return false;
+      }
+    }
+
+    if (!pairHasKey) return false;
+
+    if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
+    else return false;
+  }
+
+  return true;
+}
+
+function constructYamlOmap(data) {
+  return data !== null ? data : [];
+}
+
+module.exports = new Type('tag:yaml.org,2002:omap', {
+  kind: 'sequence',
+  resolve: resolveYamlOmap,
+  construct: constructYamlOmap
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/pairs.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/pairs.js
new file mode 100644 (file)
index 0000000..74b5240
--- /dev/null
@@ -0,0 +1,53 @@
+'use strict';
+
+var Type = require('../type');
+
+var _toString = Object.prototype.toString;
+
+function resolveYamlPairs(data) {
+  if (data === null) return true;
+
+  var index, length, pair, keys, result,
+      object = data;
+
+  result = new Array(object.length);
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+
+    if (_toString.call(pair) !== '[object Object]') return false;
+
+    keys = Object.keys(pair);
+
+    if (keys.length !== 1) return false;
+
+    result[index] = [ keys[0], pair[keys[0]] ];
+  }
+
+  return true;
+}
+
+function constructYamlPairs(data) {
+  if (data === null) return [];
+
+  var index, length, pair, keys, result,
+      object = data;
+
+  result = new Array(object.length);
+
+  for (index = 0, length = object.length; index < length; index += 1) {
+    pair = object[index];
+
+    keys = Object.keys(pair);
+
+    result[index] = [ keys[0], pair[keys[0]] ];
+  }
+
+  return result;
+}
+
+module.exports = new Type('tag:yaml.org,2002:pairs', {
+  kind: 'sequence',
+  resolve: resolveYamlPairs,
+  construct: constructYamlPairs
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/seq.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/seq.js
new file mode 100644 (file)
index 0000000..be8f77f
--- /dev/null
@@ -0,0 +1,8 @@
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:seq', {
+  kind: 'sequence',
+  construct: function (data) { return data !== null ? data : []; }
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/set.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/set.js
new file mode 100644 (file)
index 0000000..f885a32
--- /dev/null
@@ -0,0 +1,29 @@
+'use strict';
+
+var Type = require('../type');
+
+var _hasOwnProperty = Object.prototype.hasOwnProperty;
+
+function resolveYamlSet(data) {
+  if (data === null) return true;
+
+  var key, object = data;
+
+  for (key in object) {
+    if (_hasOwnProperty.call(object, key)) {
+      if (object[key] !== null) return false;
+    }
+  }
+
+  return true;
+}
+
+function constructYamlSet(data) {
+  return data !== null ? data : {};
+}
+
+module.exports = new Type('tag:yaml.org,2002:set', {
+  kind: 'mapping',
+  resolve: resolveYamlSet,
+  construct: constructYamlSet
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/str.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/str.js
new file mode 100644 (file)
index 0000000..27acc10
--- /dev/null
@@ -0,0 +1,8 @@
+'use strict';
+
+var Type = require('../type');
+
+module.exports = new Type('tag:yaml.org,2002:str', {
+  kind: 'scalar',
+  construct: function (data) { return data !== null ? data : ''; }
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/timestamp.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/lib/js-yaml/type/timestamp.js
new file mode 100644 (file)
index 0000000..8fa9c58
--- /dev/null
@@ -0,0 +1,88 @@
+'use strict';
+
+var Type = require('../type');
+
+var YAML_DATE_REGEXP = new RegExp(
+  '^([0-9][0-9][0-9][0-9])'          + // [1] year
+  '-([0-9][0-9])'                    + // [2] month
+  '-([0-9][0-9])$');                   // [3] day
+
+var YAML_TIMESTAMP_REGEXP = new RegExp(
+  '^([0-9][0-9][0-9][0-9])'          + // [1] year
+  '-([0-9][0-9]?)'                   + // [2] month
+  '-([0-9][0-9]?)'                   + // [3] day
+  '(?:[Tt]|[ \\t]+)'                 + // ...
+  '([0-9][0-9]?)'                    + // [4] hour
+  ':([0-9][0-9])'                    + // [5] minute
+  ':([0-9][0-9])'                    + // [6] second
+  '(?:\\.([0-9]*))?'                 + // [7] fraction
+  '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
+  '(?::([0-9][0-9]))?))?$');           // [11] tz_minute
+
+function resolveYamlTimestamp(data) {
+  if (data === null) return false;
+  if (YAML_DATE_REGEXP.exec(data) !== null) return true;
+  if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;
+  return false;
+}
+
+function constructYamlTimestamp(data) {
+  var match, year, month, day, hour, minute, second, fraction = 0,
+      delta = null, tz_hour, tz_minute, date;
+
+  match = YAML_DATE_REGEXP.exec(data);
+  if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);
+
+  if (match === null) throw new Error('Date resolve error');
+
+  // match: [1] year [2] month [3] day
+
+  year = +(match[1]);
+  month = +(match[2]) - 1; // JS month starts with 0
+  day = +(match[3]);
+
+  if (!match[4]) { // no hour
+    return new Date(Date.UTC(year, month, day));
+  }
+
+  // match: [4] hour [5] minute [6] second [7] fraction
+
+  hour = +(match[4]);
+  minute = +(match[5]);
+  second = +(match[6]);
+
+  if (match[7]) {
+    fraction = match[7].slice(0, 3);
+    while (fraction.length < 3) { // milli-seconds
+      fraction += '0';
+    }
+    fraction = +fraction;
+  }
+
+  // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute
+
+  if (match[9]) {
+    tz_hour = +(match[10]);
+    tz_minute = +(match[11] || 0);
+    delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
+    if (match[9] === '-') delta = -delta;
+  }
+
+  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
+
+  if (delta) date.setTime(date.getTime() - delta);
+
+  return date;
+}
+
+function representYamlTimestamp(object /*, style*/) {
+  return object.toISOString();
+}
+
+module.exports = new Type('tag:yaml.org,2002:timestamp', {
+  kind: 'scalar',
+  resolve: resolveYamlTimestamp,
+  construct: constructYamlTimestamp,
+  instanceOf: Date,
+  represent: representYamlTimestamp
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esparse b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esparse
new file mode 120000 (symlink)
index 0000000..7423b18
--- /dev/null
@@ -0,0 +1 @@
+../esprima/bin/esparse.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esvalidate b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/.bin/esvalidate
new file mode 120000 (symlink)
index 0000000..16069ef
--- /dev/null
@@ -0,0 +1 @@
+../esprima/bin/esvalidate.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/ChangeLog b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/ChangeLog
new file mode 100644 (file)
index 0000000..47a7a0f
--- /dev/null
@@ -0,0 +1,225 @@
+2017-06-10: Version 4.0.0
+
+      * Support ES2017 async function and await expression (issue 1079)
+      * Support ES2017 trailing commas in function parameters (issue 1550)
+      * Explicitly distinguish parsing a module vs a script (issue 1576)
+      * Fix JSX non-empty container (issue 1786)
+      * Allow JSX element in a yield expression (issue 1765)
+      * Allow `in` expression in a concise body with a function body (issue 1793)
+      * Setter function argument must not be a rest parameter (issue 1693)
+      * Limit strict mode directive to functions with a simple parameter list (issue 1677)
+      * Prohibit any escape sequence in a reserved word (issue 1612)
+      * Only permit hex digits in hex escape sequence (issue 1619)
+      * Prohibit labelled class/generator/function declaration (issue 1484)
+      * Limit function declaration as if statement clause only in non-strict mode (issue 1657)
+      * Tolerate missing ) in a with and do-while statement (issue 1481)
+
+2016-12-22: Version 3.1.3
+
+      * Support binding patterns as rest element (issue 1681)
+      * Account for different possible arguments of a yield expression (issue 1469)
+
+2016-11-24: Version 3.1.2
+
+      * Ensure that import specifier is more restrictive (issue 1615)
+      * Fix duplicated JSX tokens (issue 1613)
+      * Scan template literal in a JSX expression container (issue 1622)
+      * Improve XHTML entity scanning in JSX (issue 1629)
+
+2016-10-31: Version 3.1.1
+
+      * Fix assignment expression problem in an export declaration (issue 1596)
+      * Fix incorrect tokenization of hex digits (issue 1605)
+
+2016-10-09: Version 3.1.0
+
+      * Do not implicitly collect comments when comment attachment is specified (issue 1553)
+      * Fix incorrect handling of duplicated proto shorthand fields (issue 1485)
+      * Prohibit initialization in some variants of for statements (issue 1309, 1561)
+      * Fix incorrect parsing of export specifier (issue 1578)
+      * Fix ESTree compatibility for assignment pattern (issue 1575)
+
+2016-09-03: Version 3.0.0
+
+      * Support ES2016 exponentiation expression (issue 1490)
+      * Support JSX syntax (issue 1467)
+      * Use the latest Unicode 8.0 (issue 1475)
+      * Add the support for syntax node delegate (issue 1435)
+      * Fix ESTree compatibility on meta property (issue 1338)
+      * Fix ESTree compatibility on default parameter value (issue 1081)
+      * Fix ESTree compatibility on try handler (issue 1030)
+
+2016-08-23: Version 2.7.3
+
+      * Fix tokenizer confusion with a comment (issue 1493, 1516)
+
+2016-02-02: Version 2.7.2
+
+      * Fix out-of-bound error location in an invalid string literal (issue 1457)
+      * Fix shorthand object destructuring defaults in variable declarations (issue 1459)
+
+2015-12-10: Version 2.7.1
+
+      * Do not allow trailing comma in a variable declaration (issue 1360)
+      * Fix assignment to `let` in non-strict mode (issue 1376)
+      * Fix missing delegate property in YieldExpression (issue 1407)
+
+2015-10-22: Version 2.7.0
+
+      * Fix the handling of semicolon in a break statement (issue 1044)
+      * Run the test suite with major web browsers (issue 1259, 1317)
+      * Allow `let` as an identifier in non-strict mode (issue 1289)
+      * Attach orphaned comments as `innerComments` (issue 1328)
+      * Add the support for token delegator (issue 1332)
+
+2015-09-01: Version 2.6.0
+
+      * Properly allow or prohibit `let` in a binding identifier/pattern (issue 1048, 1098)
+      * Add sourceType field for Program node (issue 1159)
+      * Ensure that strict mode reserved word binding throw an error (issue 1171)
+      * Run the test suite with Node.js and IE 11 on Windows (issue 1294)
+      * Allow binding pattern with no initializer in a for statement (issue 1301)
+
+2015-07-31: Version 2.5.0
+
+      * Run the test suite in a browser environment (issue 1004)
+      * Ensure a comma between imported default binding and named imports (issue 1046)
+      * Distinguish `yield` as a keyword vs an identifier (issue 1186)
+      * Support ES6 meta property `new.target` (issue 1203)
+      * Fix the syntax node for yield with expression (issue 1223)
+      * Fix the check of duplicated proto in property names (issue 1225)
+      * Fix ES6 Unicode escape in identifier name (issue 1229)
+      * Support ES6 IdentifierStart and IdentifierPart (issue 1232)
+      * Treat await as a reserved word when parsing as a module (issue 1234)
+      * Recognize identifier characters from Unicode SMP (issue 1244)
+      * Ensure that export and import can be followed by a comma (issue 1250)
+      * Fix yield operator precedence (issue 1262)
+
+2015-07-01: Version 2.4.1
+
+      * Fix some cases of comment attachment (issue 1071, 1175)
+      * Fix the handling of destructuring in function arguments (issue 1193)
+      * Fix invalid ranges in assignment expression (issue 1201)
+
+2015-06-26: Version 2.4.0
+
+      * Support ES6 for-of iteration (issue 1047)
+      * Support ES6 spread arguments (issue 1169)
+      * Minimize npm payload (issue 1191)
+
+2015-06-16: Version 2.3.0
+
+      * Support ES6 generator (issue 1033)
+      * Improve parsing of regular expressions with `u` flag (issue 1179)
+
+2015-04-17: Version 2.2.0
+
+      * Support ES6 import and export declarations (issue 1000)
+      * Fix line terminator before arrow not recognized as error (issue 1009)
+      * Support ES6 destructuring (issue 1045)
+      * Support ES6 template literal (issue 1074)
+      * Fix the handling of invalid/incomplete string escape sequences (issue 1106)
+      * Fix ES3 static member access restriction (issue 1120)
+      * Support for `super` in ES6 class (issue 1147)
+
+2015-03-09: Version 2.1.0
+
+      * Support ES6 class (issue 1001)
+      * Support ES6 rest parameter (issue 1011)
+      * Expand the location of property getter, setter, and methods (issue 1029)
+      * Enable TryStatement transition to a single handler (issue 1031)
+      * Support ES6 computed property name (issue 1037)
+      * Tolerate unclosed block comment (issue 1041)
+      * Support ES6 lexical declaration (issue 1065)
+
+2015-02-06: Version 2.0.0
+
+      * Support ES6 arrow function (issue 517)
+      * Support ES6 Unicode code point escape (issue 521)
+      * Improve the speed and accuracy of comment attachment (issue 522)
+      * Support ES6 default parameter (issue 519)
+      * Support ES6 regular expression flags (issue 557)
+      * Fix scanning of implicit octal literals (issue 565)
+      * Fix the handling of automatic semicolon insertion (issue 574)
+      * Support ES6 method definition (issue 620)
+      * Support ES6 octal integer literal (issue 621)
+      * Support ES6 binary integer literal (issue 622)
+      * Support ES6 object literal property value shorthand (issue 624)
+
+2015-03-03: Version 1.2.5
+
+      * Fix scanning of implicit octal literals (issue 565)
+
+2015-02-05: Version 1.2.4
+
+      * Fix parsing of LeftHandSideExpression in ForInStatement (issue 560)
+      * Fix the handling of automatic semicolon insertion (issue 574)
+
+2015-01-18: Version 1.2.3
+
+      * Fix division by this (issue 616)
+
+2014-05-18: Version 1.2.2
+
+      * Fix duplicated tokens when collecting comments (issue 537)
+
+2014-05-04: Version 1.2.1
+
+      * Ensure that Program node may still have leading comments (issue 536)
+
+2014-04-29: Version 1.2.0
+
+      * Fix semicolon handling for expression statement (issue 462, 533)
+      * Disallow escaped characters in regular expression flags (issue 503)
+      * Performance improvement for location tracking (issue 520)
+      * Improve the speed of comment attachment (issue 522)
+
+2014-03-26: Version 1.1.1
+
+      * Fix token handling of forward slash after an array literal (issue 512)
+
+2014-03-23: Version 1.1.0
+
+      * Optionally attach comments to the owning syntax nodes (issue 197)
+      * Simplify binary parsing with stack-based shift reduce (issue 352)
+      * Always include the raw source of literals (issue 376)
+      * Add optional input source information (issue 386)
+      * Tokenizer API for pure lexical scanning (issue 398)
+      * Improve the web site and its online demos (issue 337, 400, 404)
+      * Performance improvement for location tracking (issue 417, 424)
+      * Support HTML comment syntax (issue 451)
+      * Drop support for legacy browsers (issue 474)
+
+2013-08-27: Version 1.0.4
+
+      * Minimize the payload for packages (issue 362)
+      * Fix missing cases on an empty switch statement (issue 436)
+      * Support escaped ] in regexp literal character classes (issue 442)
+      * Tolerate invalid left-hand side expression (issue 130)
+
+2013-05-17: Version 1.0.3
+
+      * Variable declaration needs at least one declarator (issue 391)
+      * Fix benchmark's variance unit conversion (issue 397)
+      * IE < 9: \v should be treated as vertical tab (issue 405)
+      * Unary expressions should always have prefix: true (issue 418)
+      * Catch clause should only accept an identifier (issue 423)
+      * Tolerate setters without parameter (issue 426)
+
+2012-11-02: Version 1.0.2
+
+    Improvement:
+
+      * Fix esvalidate JUnit output upon a syntax error (issue 374)
+
+2012-10-28: Version 1.0.1
+
+    Improvements:
+
+      * esvalidate understands shebang in a Unix shell script (issue 361)
+      * esvalidate treats fatal parsing failure as an error (issue 361)
+      * Reduce Node.js package via .npmignore (issue 362)
+
+2012-10-22: Version 1.0.0
+
+    Initial release.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/LICENSE.BSD b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/LICENSE.BSD
new file mode 100644 (file)
index 0000000..7a55160
--- /dev/null
@@ -0,0 +1,21 @@
+Copyright JS Foundation and other contributors, https://js.foundation/
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+  * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+  * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/README.md b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/README.md
new file mode 100644 (file)
index 0000000..8fb25e6
--- /dev/null
@@ -0,0 +1,46 @@
+[![NPM version](https://img.shields.io/npm/v/esprima.svg)](https://www.npmjs.com/package/esprima)
+[![npm download](https://img.shields.io/npm/dm/esprima.svg)](https://www.npmjs.com/package/esprima)
+[![Build Status](https://img.shields.io/travis/jquery/esprima/master.svg)](https://travis-ci.org/jquery/esprima)
+[![Coverage Status](https://img.shields.io/codecov/c/github/jquery/esprima/master.svg)](https://codecov.io/github/jquery/esprima)
+
+**Esprima** ([esprima.org](http://esprima.org), BSD license) is a high performance,
+standard-compliant [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
+parser written in ECMAScript (also popularly known as
+[JavaScript](https://en.wikipedia.org/wiki/JavaScript)).
+Esprima is created and maintained by [Ariya Hidayat](https://twitter.com/ariyahidayat),
+with the help of [many contributors](https://github.com/jquery/esprima/contributors).
+
+### Features
+
+- Full support for ECMAScript 2017 ([ECMA-262 8th Edition](http://www.ecma-international.org/publications/standards/Ecma-262.htm))
+- Sensible [syntax tree format](https://github.com/estree/estree/blob/master/es5.md) as standardized by [ESTree project](https://github.com/estree/estree)
+- Experimental support for [JSX](https://facebook.github.io/jsx/), a syntax extension for [React](https://facebook.github.io/react/)
+- Optional tracking of syntax node location (index-based and line-column)
+- [Heavily tested](http://esprima.org/test/ci.html) (~1500 [unit tests](https://github.com/jquery/esprima/tree/master/test/fixtures) with [full code coverage](https://codecov.io/github/jquery/esprima))
+
+### API
+
+Esprima can be used to perform [lexical analysis](https://en.wikipedia.org/wiki/Lexical_analysis) (tokenization) or [syntactic analysis](https://en.wikipedia.org/wiki/Parsing) (parsing) of a JavaScript program.
+
+A simple example on Node.js REPL:
+
+```javascript
+> var esprima = require('esprima');
+> var program = 'const answer = 42';
+
+> esprima.tokenize(program);
+[ { type: 'Keyword', value: 'const' },
+  { type: 'Identifier', value: 'answer' },
+  { type: 'Punctuator', value: '=' },
+  { type: 'Numeric', value: '42' } ]
+  
+> esprima.parseScript(program);
+{ type: 'Program',
+  body:
+   [ { type: 'VariableDeclaration',
+       declarations: [Object],
+       kind: 'const' } ],
+  sourceType: 'script' }
+```
+
+For more information, please read the [complete documentation](http://esprima.org/doc).
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esparse.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esparse.js
new file mode 100755 (executable)
index 0000000..45d05fb
--- /dev/null
@@ -0,0 +1,139 @@
+#!/usr/bin/env node
+/*
+  Copyright JS Foundation and other contributors, https://js.foundation/
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+/*jslint sloppy:true node:true rhino:true */
+
+var fs, esprima, fname, forceFile, content, options, syntax;
+
+if (typeof require === 'function') {
+    fs = require('fs');
+    try {
+        esprima = require('esprima');
+    } catch (e) {
+        esprima = require('../');
+    }
+} else if (typeof load === 'function') {
+    try {
+        load('esprima.js');
+    } catch (e) {
+        load('../esprima.js');
+    }
+}
+
+// Shims to Node.js objects when running under Rhino.
+if (typeof console === 'undefined' && typeof process === 'undefined') {
+    console = { log: print };
+    fs = { readFileSync: readFile };
+    process = { argv: arguments, exit: quit };
+    process.argv.unshift('esparse.js');
+    process.argv.unshift('rhino');
+}
+
+function showUsage() {
+    console.log('Usage:');
+    console.log('   esparse [options] [file.js]');
+    console.log();
+    console.log('Available options:');
+    console.log();
+    console.log('  --comment      Gather all line and block comments in an array');
+    console.log('  --loc          Include line-column location info for each syntax node');
+    console.log('  --range        Include index-based range for each syntax node');
+    console.log('  --raw          Display the raw value of literals');
+    console.log('  --tokens       List all tokens in an array');
+    console.log('  --tolerant     Tolerate errors on a best-effort basis (experimental)');
+    console.log('  -v, --version  Shows program version');
+    console.log();
+    process.exit(1);
+}
+
+options = {};
+
+process.argv.splice(2).forEach(function (entry) {
+
+    if (forceFile || entry === '-' || entry.slice(0, 1) !== '-') {
+        if (typeof fname === 'string') {
+            console.log('Error: more than one input file.');
+            process.exit(1);
+        } else {
+            fname = entry;
+        }
+    } else if (entry === '-h' || entry === '--help') {
+        showUsage();
+    } else if (entry === '-v' || entry === '--version') {
+        console.log('ECMAScript Parser (using Esprima version', esprima.version, ')');
+        console.log();
+        process.exit(0);
+    } else if (entry === '--comment') {
+        options.comment = true;
+    } else if (entry === '--loc') {
+        options.loc = true;
+    } else if (entry === '--range') {
+        options.range = true;
+    } else if (entry === '--raw') {
+        options.raw = true;
+    } else if (entry === '--tokens') {
+        options.tokens = true;
+    } else if (entry === '--tolerant') {
+        options.tolerant = true;
+    } else if (entry === '--') {
+        forceFile = true;
+    } else {
+        console.log('Error: unknown option ' + entry + '.');
+        process.exit(1);
+    }
+});
+
+// Special handling for regular expression literal since we need to
+// convert it to a string literal, otherwise it will be decoded
+// as object "{}" and the regular expression would be lost.
+function adjustRegexLiteral(key, value) {
+    if (key === 'value' && value instanceof RegExp) {
+        value = value.toString();
+    }
+    return value;
+}
+
+function run(content) {
+    syntax = esprima.parse(content, options);
+    console.log(JSON.stringify(syntax, adjustRegexLiteral, 4));
+}
+
+try {
+    if (fname && (fname !== '-' || forceFile)) {
+        run(fs.readFileSync(fname, 'utf-8'));
+    } else {
+        var content = '';
+        process.stdin.resume();
+        process.stdin.on('data', function(chunk) {
+            content += chunk;
+        });
+        process.stdin.on('end', function() {
+            run(content);
+        });
+    }
+} catch (e) {
+    console.log('Error: ' + e.message);
+    process.exit(1);
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js
new file mode 100755 (executable)
index 0000000..d49a7e4
--- /dev/null
@@ -0,0 +1,236 @@
+#!/usr/bin/env node
+/*
+  Copyright JS Foundation and other contributors, https://js.foundation/
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+/*jslint sloppy:true plusplus:true node:true rhino:true */
+/*global phantom:true */
+
+var fs, system, esprima, options, fnames, forceFile, count;
+
+if (typeof esprima === 'undefined') {
+    // PhantomJS can only require() relative files
+    if (typeof phantom === 'object') {
+        fs = require('fs');
+        system = require('system');
+        esprima = require('./esprima');
+    } else if (typeof require === 'function') {
+        fs = require('fs');
+        try {
+            esprima = require('esprima');
+        } catch (e) {
+            esprima = require('../');
+        }
+    } else if (typeof load === 'function') {
+        try {
+            load('esprima.js');
+        } catch (e) {
+            load('../esprima.js');
+        }
+    }
+}
+
+// Shims to Node.js objects when running under PhantomJS 1.7+.
+if (typeof phantom === 'object') {
+    fs.readFileSync = fs.read;
+    process = {
+        argv: [].slice.call(system.args),
+        exit: phantom.exit,
+        on: function (evt, callback) {
+            callback();
+        }
+    };
+    process.argv.unshift('phantomjs');
+}
+
+// Shims to Node.js objects when running under Rhino.
+if (typeof console === 'undefined' && typeof process === 'undefined') {
+    console = { log: print };
+    fs = { readFileSync: readFile };
+    process = {
+        argv: arguments,
+        exit: quit,
+        on: function (evt, callback) {
+            callback();
+        }
+    };
+    process.argv.unshift('esvalidate.js');
+    process.argv.unshift('rhino');
+}
+
+function showUsage() {
+    console.log('Usage:');
+    console.log('   esvalidate [options] [file.js...]');
+    console.log();
+    console.log('Available options:');
+    console.log();
+    console.log('  --format=type  Set the report format, plain (default) or junit');
+    console.log('  -v, --version  Print program version');
+    console.log();
+    process.exit(1);
+}
+
+options = {
+    format: 'plain'
+};
+
+fnames = [];
+
+process.argv.splice(2).forEach(function (entry) {
+
+    if (forceFile || entry === '-' || entry.slice(0, 1) !== '-') {
+        fnames.push(entry);
+    } else if (entry === '-h' || entry === '--help') {
+        showUsage();
+    } else if (entry === '-v' || entry === '--version') {
+        console.log('ECMAScript Validator (using Esprima version', esprima.version, ')');
+        console.log();
+        process.exit(0);
+    } else if (entry.slice(0, 9) === '--format=') {
+        options.format = entry.slice(9);
+        if (options.format !== 'plain' && options.format !== 'junit') {
+            console.log('Error: unknown report format ' + options.format + '.');
+            process.exit(1);
+        }
+    } else if (entry === '--') {
+        forceFile = true;
+    } else {
+        console.log('Error: unknown option ' + entry + '.');
+        process.exit(1);
+    }
+});
+
+if (fnames.length === 0) {
+    fnames.push('');
+}
+
+if (options.format === 'junit') {
+    console.log('<?xml version="1.0" encoding="UTF-8"?>');
+    console.log('<testsuites>');
+}
+
+count = 0;
+
+function run(fname, content) {
+    var timestamp, syntax, name;
+    try {
+        if (typeof content !== 'string') {
+            throw content;
+        }
+
+        if (content[0] === '#' && content[1] === '!') {
+            content = '//' + content.substr(2, content.length);
+        }
+
+        timestamp = Date.now();
+        syntax = esprima.parse(content, { tolerant: true });
+
+        if (options.format === 'junit') {
+
+            name = fname;
+            if (name.lastIndexOf('/') >= 0) {
+                name = name.slice(name.lastIndexOf('/') + 1);
+            }
+
+            console.log('<testsuite name="' + fname + '" errors="0" ' +
+                ' failures="' + syntax.errors.length + '" ' +
+                ' tests="' + syntax.errors.length + '" ' +
+                ' time="' + Math.round((Date.now() - timestamp) / 1000) +
+                '">');
+
+            syntax.errors.forEach(function (error) {
+                var msg = error.message;
+                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
+                console.log('  <testcase name="Line ' + error.lineNumber + ': ' + msg + '" ' +
+                    ' time="0">');
+                console.log('    <error type="SyntaxError" message="' + error.message + '">' +
+                    error.message + '(' + name + ':' + error.lineNumber + ')' +
+                    '</error>');
+                console.log('  </testcase>');
+            });
+
+            console.log('</testsuite>');
+
+        } else if (options.format === 'plain') {
+
+            syntax.errors.forEach(function (error) {
+                var msg = error.message;
+                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
+                msg = fname + ':' + error.lineNumber + ': ' + msg;
+                console.log(msg);
+                ++count;
+            });
+
+        }
+    } catch (e) {
+        ++count;
+        if (options.format === 'junit') {
+            console.log('<testsuite name="' + fname + '" errors="1" failures="0" tests="1" ' +
+                ' time="' + Math.round((Date.now() - timestamp) / 1000) + '">');
+            console.log(' <testcase name="' + e.message + '" ' + ' time="0">');
+            console.log(' <error type="ParseError" message="' + e.message + '">' +
+                e.message + '(' + fname + ((e.lineNumber) ? ':' + e.lineNumber : '') +
+                ')</error>');
+            console.log(' </testcase>');
+            console.log('</testsuite>');
+        } else {
+            console.log(fname + ':' + e.lineNumber + ': ' + e.message.replace(/^Line\ [0-9]*\:\ /, ''));
+        }
+    }
+}
+
+fnames.forEach(function (fname) {
+    var content = '';
+    try {
+        if (fname && (fname !== '-' || forceFile)) {
+            content = fs.readFileSync(fname, 'utf-8');
+        } else {
+            fname = '';
+            process.stdin.resume();
+            process.stdin.on('data', function(chunk) {
+                content += chunk;
+            });
+            process.stdin.on('end', function() {
+                run(fname, content);
+            });
+            return;
+        }
+    } catch (e) {
+        content = e;
+    }
+    run(fname, content);
+});
+
+process.on('exit', function () {
+    if (options.format === 'junit') {
+        console.log('</testsuites>');
+    }
+
+    if (count > 0) {
+        process.exit(1);
+    }
+
+    if (count === 0 && typeof phantom === 'object') {
+        process.exit(0);
+    }
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/dist/esprima.js b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/dist/esprima.js
new file mode 100644 (file)
index 0000000..640d84b
--- /dev/null
@@ -0,0 +1,6700 @@
+(function webpackUniversalModuleDefinition(root, factory) {
+/* istanbul ignore next */
+       if(typeof exports === 'object' && typeof module === 'object')
+               module.exports = factory();
+       else if(typeof define === 'function' && define.amd)
+               define([], factory);
+/* istanbul ignore next */
+       else if(typeof exports === 'object')
+               exports["esprima"] = factory();
+       else
+               root["esprima"] = factory();
+})(this, function() {
+return /******/ (function(modules) { // webpackBootstrap
+/******/       // The module cache
+/******/       var installedModules = {};
+
+/******/       // The require function
+/******/       function __webpack_require__(moduleId) {
+
+/******/               // Check if module is in cache
+/* istanbul ignore if */
+/******/               if(installedModules[moduleId])
+/******/                       return installedModules[moduleId].exports;
+
+/******/               // Create a new module (and put it into the cache)
+/******/               var module = installedModules[moduleId] = {
+/******/                       exports: {},
+/******/                       id: moduleId,
+/******/                       loaded: false
+/******/               };
+
+/******/               // Execute the module function
+/******/               modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+
+/******/               // Flag the module as loaded
+/******/               module.loaded = true;
+
+/******/               // Return the exports of the module
+/******/               return module.exports;
+/******/       }
+
+
+/******/       // expose the modules object (__webpack_modules__)
+/******/       __webpack_require__.m = modules;
+
+/******/       // expose the module cache
+/******/       __webpack_require__.c = installedModules;
+
+/******/       // __webpack_public_path__
+/******/       __webpack_require__.p = "";
+
+/******/       // Load entry module and return exports
+/******/       return __webpack_require__(0);
+/******/ })
+/************************************************************************/
+/******/ ([
+/* 0 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       /*\r
+         Copyright JS Foundation and other contributors, https://js.foundation/\r
+\r
+         Redistribution and use in source and binary forms, with or without\r
+         modification, are permitted provided that the following conditions are met:\r
+\r
+           * Redistributions of source code must retain the above copyright\r
+             notice, this list of conditions and the following disclaimer.\r
+           * Redistributions in binary form must reproduce the above copyright\r
+             notice, this list of conditions and the following disclaimer in the\r
+             documentation and/or other materials provided with the distribution.\r
+\r
+         THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"\r
+         AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r
+         IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r
+         ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY\r
+         DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\r
+         (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r
+         LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\r
+         ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r
+         (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF\r
+         THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
+       */\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var comment_handler_1 = __webpack_require__(1);\r
+       var jsx_parser_1 = __webpack_require__(3);\r
+       var parser_1 = __webpack_require__(8);\r
+       var tokenizer_1 = __webpack_require__(15);\r
+       function parse(code, options, delegate) {\r
+           var commentHandler = null;\r
+           var proxyDelegate = function (node, metadata) {\r
+               if (delegate) {\r
+                   delegate(node, metadata);\r
+               }\r
+               if (commentHandler) {\r
+                   commentHandler.visit(node, metadata);\r
+               }\r
+           };\r
+           var parserDelegate = (typeof delegate === 'function') ? proxyDelegate : null;\r
+           var collectComment = false;\r
+           if (options) {\r
+               collectComment = (typeof options.comment === 'boolean' && options.comment);\r
+               var attachComment = (typeof options.attachComment === 'boolean' && options.attachComment);\r
+               if (collectComment || attachComment) {\r
+                   commentHandler = new comment_handler_1.CommentHandler();\r
+                   commentHandler.attach = attachComment;\r
+                   options.comment = true;\r
+                   parserDelegate = proxyDelegate;\r
+               }\r
+           }\r
+           var isModule = false;\r
+           if (options && typeof options.sourceType === 'string') {\r
+               isModule = (options.sourceType === 'module');\r
+           }\r
+           var parser;\r
+           if (options && typeof options.jsx === 'boolean' && options.jsx) {\r
+               parser = new jsx_parser_1.JSXParser(code, options, parserDelegate);\r
+           }\r
+           else {\r
+               parser = new parser_1.Parser(code, options, parserDelegate);\r
+           }\r
+           var program = isModule ? parser.parseModule() : parser.parseScript();\r
+           var ast = program;\r
+           if (collectComment && commentHandler) {\r
+               ast.comments = commentHandler.comments;\r
+           }\r
+           if (parser.config.tokens) {\r
+               ast.tokens = parser.tokens;\r
+           }\r
+           if (parser.config.tolerant) {\r
+               ast.errors = parser.errorHandler.errors;\r
+           }\r
+           return ast;\r
+       }\r
+       exports.parse = parse;\r
+       function parseModule(code, options, delegate) {\r
+           var parsingOptions = options || {};\r
+           parsingOptions.sourceType = 'module';\r
+           return parse(code, parsingOptions, delegate);\r
+       }\r
+       exports.parseModule = parseModule;\r
+       function parseScript(code, options, delegate) {\r
+           var parsingOptions = options || {};\r
+           parsingOptions.sourceType = 'script';\r
+           return parse(code, parsingOptions, delegate);\r
+       }\r
+       exports.parseScript = parseScript;\r
+       function tokenize(code, options, delegate) {\r
+           var tokenizer = new tokenizer_1.Tokenizer(code, options);\r
+           var tokens;\r
+           tokens = [];\r
+           try {\r
+               while (true) {\r
+                   var token = tokenizer.getNextToken();\r
+                   if (!token) {\r
+                       break;\r
+                   }\r
+                   if (delegate) {\r
+                       token = delegate(token);\r
+                   }\r
+                   tokens.push(token);\r
+               }\r
+           }\r
+           catch (e) {\r
+               tokenizer.errorHandler.tolerate(e);\r
+           }\r
+           if (tokenizer.errorHandler.tolerant) {\r
+               tokens.errors = tokenizer.errors();\r
+           }\r
+           return tokens;\r
+       }\r
+       exports.tokenize = tokenize;\r
+       var syntax_1 = __webpack_require__(2);\r
+       exports.Syntax = syntax_1.Syntax;\r
+       // Sync with *.json manifests.\r
+       exports.version = '4.0.0';\r
+
+
+/***/ },
+/* 1 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var syntax_1 = __webpack_require__(2);\r
+       var CommentHandler = (function () {\r
+           function CommentHandler() {\r
+               this.attach = false;\r
+               this.comments = [];\r
+               this.stack = [];\r
+               this.leading = [];\r
+               this.trailing = [];\r
+           }\r
+           CommentHandler.prototype.insertInnerComments = function (node, metadata) {\r
+               //  innnerComments for properties empty block\r
+               //  `function a() {/** comments **\/}`\r
+               if (node.type === syntax_1.Syntax.BlockStatement && node.body.length === 0) {\r
+                   var innerComments = [];\r
+                   for (var i = this.leading.length - 1; i >= 0; --i) {\r
+                       var entry = this.leading[i];\r
+                       if (metadata.end.offset >= entry.start) {\r
+                           innerComments.unshift(entry.comment);\r
+                           this.leading.splice(i, 1);\r
+                           this.trailing.splice(i, 1);\r
+                       }\r
+                   }\r
+                   if (innerComments.length) {\r
+                       node.innerComments = innerComments;\r
+                   }\r
+               }\r
+           };\r
+           CommentHandler.prototype.findTrailingComments = function (metadata) {\r
+               var trailingComments = [];\r
+               if (this.trailing.length > 0) {\r
+                   for (var i = this.trailing.length - 1; i >= 0; --i) {\r
+                       var entry_1 = this.trailing[i];\r
+                       if (entry_1.start >= metadata.end.offset) {\r
+                           trailingComments.unshift(entry_1.comment);\r
+                       }\r
+                   }\r
+                   this.trailing.length = 0;\r
+                   return trailingComments;\r
+               }\r
+               var entry = this.stack[this.stack.length - 1];\r
+               if (entry && entry.node.trailingComments) {\r
+                   var firstComment = entry.node.trailingComments[0];\r
+                   if (firstComment && firstComment.range[0] >= metadata.end.offset) {\r
+                       trailingComments = entry.node.trailingComments;\r
+                       delete entry.node.trailingComments;\r
+                   }\r
+               }\r
+               return trailingComments;\r
+           };\r
+           CommentHandler.prototype.findLeadingComments = function (metadata) {\r
+               var leadingComments = [];\r
+               var target;\r
+               while (this.stack.length > 0) {\r
+                   var entry = this.stack[this.stack.length - 1];\r
+                   if (entry && entry.start >= metadata.start.offset) {\r
+                       target = entry.node;\r
+                       this.stack.pop();\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               if (target) {\r
+                   var count = target.leadingComments ? target.leadingComments.length : 0;\r
+                   for (var i = count - 1; i >= 0; --i) {\r
+                       var comment = target.leadingComments[i];\r
+                       if (comment.range[1] <= metadata.start.offset) {\r
+                           leadingComments.unshift(comment);\r
+                           target.leadingComments.splice(i, 1);\r
+                       }\r
+                   }\r
+                   if (target.leadingComments && target.leadingComments.length === 0) {\r
+                       delete target.leadingComments;\r
+                   }\r
+                   return leadingComments;\r
+               }\r
+               for (var i = this.leading.length - 1; i >= 0; --i) {\r
+                   var entry = this.leading[i];\r
+                   if (entry.start <= metadata.start.offset) {\r
+                       leadingComments.unshift(entry.comment);\r
+                       this.leading.splice(i, 1);\r
+                   }\r
+               }\r
+               return leadingComments;\r
+           };\r
+           CommentHandler.prototype.visitNode = function (node, metadata) {\r
+               if (node.type === syntax_1.Syntax.Program && node.body.length > 0) {\r
+                   return;\r
+               }\r
+               this.insertInnerComments(node, metadata);\r
+               var trailingComments = this.findTrailingComments(metadata);\r
+               var leadingComments = this.findLeadingComments(metadata);\r
+               if (leadingComments.length > 0) {\r
+                   node.leadingComments = leadingComments;\r
+               }\r
+               if (trailingComments.length > 0) {\r
+                   node.trailingComments = trailingComments;\r
+               }\r
+               this.stack.push({\r
+                   node: node,\r
+                   start: metadata.start.offset\r
+               });\r
+           };\r
+           CommentHandler.prototype.visitComment = function (node, metadata) {\r
+               var type = (node.type[0] === 'L') ? 'Line' : 'Block';\r
+               var comment = {\r
+                   type: type,\r
+                   value: node.value\r
+               };\r
+               if (node.range) {\r
+                   comment.range = node.range;\r
+               }\r
+               if (node.loc) {\r
+                   comment.loc = node.loc;\r
+               }\r
+               this.comments.push(comment);\r
+               if (this.attach) {\r
+                   var entry = {\r
+                       comment: {\r
+                           type: type,\r
+                           value: node.value,\r
+                           range: [metadata.start.offset, metadata.end.offset]\r
+                       },\r
+                       start: metadata.start.offset\r
+                   };\r
+                   if (node.loc) {\r
+                       entry.comment.loc = node.loc;\r
+                   }\r
+                   node.type = type;\r
+                   this.leading.push(entry);\r
+                   this.trailing.push(entry);\r
+               }\r
+           };\r
+           CommentHandler.prototype.visit = function (node, metadata) {\r
+               if (node.type === 'LineComment') {\r
+                   this.visitComment(node, metadata);\r
+               }\r
+               else if (node.type === 'BlockComment') {\r
+                   this.visitComment(node, metadata);\r
+               }\r
+               else if (this.attach) {\r
+                   this.visitNode(node, metadata);\r
+               }\r
+           };\r
+           return CommentHandler;\r
+       }());\r
+       exports.CommentHandler = CommentHandler;\r
+
+
+/***/ },
+/* 2 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       exports.Syntax = {\r
+           AssignmentExpression: 'AssignmentExpression',\r
+           AssignmentPattern: 'AssignmentPattern',\r
+           ArrayExpression: 'ArrayExpression',\r
+           ArrayPattern: 'ArrayPattern',\r
+           ArrowFunctionExpression: 'ArrowFunctionExpression',\r
+           AwaitExpression: 'AwaitExpression',\r
+           BlockStatement: 'BlockStatement',\r
+           BinaryExpression: 'BinaryExpression',\r
+           BreakStatement: 'BreakStatement',\r
+           CallExpression: 'CallExpression',\r
+           CatchClause: 'CatchClause',\r
+           ClassBody: 'ClassBody',\r
+           ClassDeclaration: 'ClassDeclaration',\r
+           ClassExpression: 'ClassExpression',\r
+           ConditionalExpression: 'ConditionalExpression',\r
+           ContinueStatement: 'ContinueStatement',\r
+           DoWhileStatement: 'DoWhileStatement',\r
+           DebuggerStatement: 'DebuggerStatement',\r
+           EmptyStatement: 'EmptyStatement',\r
+           ExportAllDeclaration: 'ExportAllDeclaration',\r
+           ExportDefaultDeclaration: 'ExportDefaultDeclaration',\r
+           ExportNamedDeclaration: 'ExportNamedDeclaration',\r
+           ExportSpecifier: 'ExportSpecifier',\r
+           ExpressionStatement: 'ExpressionStatement',\r
+           ForStatement: 'ForStatement',\r
+           ForOfStatement: 'ForOfStatement',\r
+           ForInStatement: 'ForInStatement',\r
+           FunctionDeclaration: 'FunctionDeclaration',\r
+           FunctionExpression: 'FunctionExpression',\r
+           Identifier: 'Identifier',\r
+           IfStatement: 'IfStatement',\r
+           ImportDeclaration: 'ImportDeclaration',\r
+           ImportDefaultSpecifier: 'ImportDefaultSpecifier',\r
+           ImportNamespaceSpecifier: 'ImportNamespaceSpecifier',\r
+           ImportSpecifier: 'ImportSpecifier',\r
+           Literal: 'Literal',\r
+           LabeledStatement: 'LabeledStatement',\r
+           LogicalExpression: 'LogicalExpression',\r
+           MemberExpression: 'MemberExpression',\r
+           MetaProperty: 'MetaProperty',\r
+           MethodDefinition: 'MethodDefinition',\r
+           NewExpression: 'NewExpression',\r
+           ObjectExpression: 'ObjectExpression',\r
+           ObjectPattern: 'ObjectPattern',\r
+           Program: 'Program',\r
+           Property: 'Property',\r
+           RestElement: 'RestElement',\r
+           ReturnStatement: 'ReturnStatement',\r
+           SequenceExpression: 'SequenceExpression',\r
+           SpreadElement: 'SpreadElement',\r
+           Super: 'Super',\r
+           SwitchCase: 'SwitchCase',\r
+           SwitchStatement: 'SwitchStatement',\r
+           TaggedTemplateExpression: 'TaggedTemplateExpression',\r
+           TemplateElement: 'TemplateElement',\r
+           TemplateLiteral: 'TemplateLiteral',\r
+           ThisExpression: 'ThisExpression',\r
+           ThrowStatement: 'ThrowStatement',\r
+           TryStatement: 'TryStatement',\r
+           UnaryExpression: 'UnaryExpression',\r
+           UpdateExpression: 'UpdateExpression',\r
+           VariableDeclaration: 'VariableDeclaration',\r
+           VariableDeclarator: 'VariableDeclarator',\r
+           WhileStatement: 'WhileStatement',\r
+           WithStatement: 'WithStatement',\r
+           YieldExpression: 'YieldExpression'\r
+       };\r
+
+
+/***/ },
+/* 3 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+/* istanbul ignore next */
+       var __extends = (this && this.__extends) || (function () {\r
+           var extendStatics = Object.setPrototypeOf ||\r
+               ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r
+               function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r
+           return function (d, b) {\r
+               extendStatics(d, b);\r
+               function __() { this.constructor = d; }\r
+               d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r
+           };\r
+       })();\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var character_1 = __webpack_require__(4);\r
+       var JSXNode = __webpack_require__(5);\r
+       var jsx_syntax_1 = __webpack_require__(6);\r
+       var Node = __webpack_require__(7);\r
+       var parser_1 = __webpack_require__(8);\r
+       var token_1 = __webpack_require__(13);\r
+       var xhtml_entities_1 = __webpack_require__(14);\r
+       token_1.TokenName[100 /* Identifier */] = 'JSXIdentifier';\r
+       token_1.TokenName[101 /* Text */] = 'JSXText';\r
+       // Fully qualified element name, e.g. <svg:path> returns "svg:path"\r
+       function getQualifiedElementName(elementName) {\r
+           var qualifiedName;\r
+           switch (elementName.type) {\r
+               case jsx_syntax_1.JSXSyntax.JSXIdentifier:\r
+                   var id = elementName;\r
+                   qualifiedName = id.name;\r
+                   break;\r
+               case jsx_syntax_1.JSXSyntax.JSXNamespacedName:\r
+                   var ns = elementName;\r
+                   qualifiedName = getQualifiedElementName(ns.namespace) + ':' +\r
+                       getQualifiedElementName(ns.name);\r
+                   break;\r
+               case jsx_syntax_1.JSXSyntax.JSXMemberExpression:\r
+                   var expr = elementName;\r
+                   qualifiedName = getQualifiedElementName(expr.object) + '.' +\r
+                       getQualifiedElementName(expr.property);\r
+                   break;\r
+               /* istanbul ignore next */\r
+               default:\r
+                   break;\r
+           }\r
+           return qualifiedName;\r
+       }\r
+       var JSXParser = (function (_super) {\r
+           __extends(JSXParser, _super);\r
+           function JSXParser(code, options, delegate) {\r
+               return _super.call(this, code, options, delegate) || this;\r
+           }\r
+           JSXParser.prototype.parsePrimaryExpression = function () {\r
+               return this.match('<') ? this.parseJSXRoot() : _super.prototype.parsePrimaryExpression.call(this);\r
+           };\r
+           JSXParser.prototype.startJSX = function () {\r
+               // Unwind the scanner before the lookahead token.\r
+               this.scanner.index = this.startMarker.index;\r
+               this.scanner.lineNumber = this.startMarker.line;\r
+               this.scanner.lineStart = this.startMarker.index - this.startMarker.column;\r
+           };\r
+           JSXParser.prototype.finishJSX = function () {\r
+               // Prime the next lookahead.\r
+               this.nextToken();\r
+           };\r
+           JSXParser.prototype.reenterJSX = function () {\r
+               this.startJSX();\r
+               this.expectJSX('}');\r
+               // Pop the closing '}' added from the lookahead.\r
+               if (this.config.tokens) {\r
+                   this.tokens.pop();\r
+               }\r
+           };\r
+           JSXParser.prototype.createJSXNode = function () {\r
+               this.collectComments();\r
+               return {\r
+                   index: this.scanner.index,\r
+                   line: this.scanner.lineNumber,\r
+                   column: this.scanner.index - this.scanner.lineStart\r
+               };\r
+           };\r
+           JSXParser.prototype.createJSXChildNode = function () {\r
+               return {\r
+                   index: this.scanner.index,\r
+                   line: this.scanner.lineNumber,\r
+                   column: this.scanner.index - this.scanner.lineStart\r
+               };\r
+           };\r
+           JSXParser.prototype.scanXHTMLEntity = function (quote) {\r
+               var result = '&';\r
+               var valid = true;\r
+               var terminated = false;\r
+               var numeric = false;\r
+               var hex = false;\r
+               while (!this.scanner.eof() && valid && !terminated) {\r
+                   var ch = this.scanner.source[this.scanner.index];\r
+                   if (ch === quote) {\r
+                       break;\r
+                   }\r
+                   terminated = (ch === ';');\r
+                   result += ch;\r
+                   ++this.scanner.index;\r
+                   if (!terminated) {\r
+                       switch (result.length) {\r
+                           case 2:\r
+                               // e.g. '&#123;'\r
+                               numeric = (ch === '#');\r
+                               break;\r
+                           case 3:\r
+                               if (numeric) {\r
+                                   // e.g. '&#x41;'\r
+                                   hex = (ch === 'x');\r
+                                   valid = hex || character_1.Character.isDecimalDigit(ch.charCodeAt(0));\r
+                                   numeric = numeric && !hex;\r
+                               }\r
+                               break;\r
+                           default:\r
+                               valid = valid && !(numeric && !character_1.Character.isDecimalDigit(ch.charCodeAt(0)));\r
+                               valid = valid && !(hex && !character_1.Character.isHexDigit(ch.charCodeAt(0)));\r
+                               break;\r
+                       }\r
+                   }\r
+               }\r
+               if (valid && terminated && result.length > 2) {\r
+                   // e.g. '&#x41;' becomes just '#x41'\r
+                   var str = result.substr(1, result.length - 2);\r
+                   if (numeric && str.length > 1) {\r
+                       result = String.fromCharCode(parseInt(str.substr(1), 10));\r
+                   }\r
+                   else if (hex && str.length > 2) {\r
+                       result = String.fromCharCode(parseInt('0' + str.substr(1), 16));\r
+                   }\r
+                   else if (!numeric && !hex && xhtml_entities_1.XHTMLEntities[str]) {\r
+                       result = xhtml_entities_1.XHTMLEntities[str];\r
+                   }\r
+               }\r
+               return result;\r
+           };\r
+           // Scan the next JSX token. This replaces Scanner#lex when in JSX mode.\r
+           JSXParser.prototype.lexJSX = function () {\r
+               var cp = this.scanner.source.charCodeAt(this.scanner.index);\r
+               // < > / : = { }\r
+               if (cp === 60 || cp === 62 || cp === 47 || cp === 58 || cp === 61 || cp === 123 || cp === 125) {\r
+                   var value = this.scanner.source[this.scanner.index++];\r
+                   return {\r
+                       type: 7 /* Punctuator */,\r
+                       value: value,\r
+                       lineNumber: this.scanner.lineNumber,\r
+                       lineStart: this.scanner.lineStart,\r
+                       start: this.scanner.index - 1,\r
+                       end: this.scanner.index\r
+                   };\r
+               }\r
+               // " '\r
+               if (cp === 34 || cp === 39) {\r
+                   var start = this.scanner.index;\r
+                   var quote = this.scanner.source[this.scanner.index++];\r
+                   var str = '';\r
+                   while (!this.scanner.eof()) {\r
+                       var ch = this.scanner.source[this.scanner.index++];\r
+                       if (ch === quote) {\r
+                           break;\r
+                       }\r
+                       else if (ch === '&') {\r
+                           str += this.scanXHTMLEntity(quote);\r
+                       }\r
+                       else {\r
+                           str += ch;\r
+                       }\r
+                   }\r
+                   return {\r
+                       type: 8 /* StringLiteral */,\r
+                       value: str,\r
+                       lineNumber: this.scanner.lineNumber,\r
+                       lineStart: this.scanner.lineStart,\r
+                       start: start,\r
+                       end: this.scanner.index\r
+                   };\r
+               }\r
+               // ... or .\r
+               if (cp === 46) {\r
+                   var n1 = this.scanner.source.charCodeAt(this.scanner.index + 1);\r
+                   var n2 = this.scanner.source.charCodeAt(this.scanner.index + 2);\r
+                   var value = (n1 === 46 && n2 === 46) ? '...' : '.';\r
+                   var start = this.scanner.index;\r
+                   this.scanner.index += value.length;\r
+                   return {\r
+                       type: 7 /* Punctuator */,\r
+                       value: value,\r
+                       lineNumber: this.scanner.lineNumber,\r
+                       lineStart: this.scanner.lineStart,\r
+                       start: start,\r
+                       end: this.scanner.index\r
+                   };\r
+               }\r
+               // `\r
+               if (cp === 96) {\r
+                   // Only placeholder, since it will be rescanned as a real assignment expression.\r
+                   return {\r
+                       type: 10 /* Template */,\r
+                       value: '',\r
+                       lineNumber: this.scanner.lineNumber,\r
+                       lineStart: this.scanner.lineStart,\r
+                       start: this.scanner.index,\r
+                       end: this.scanner.index\r
+                   };\r
+               }\r
+               // Identifer can not contain backslash (char code 92).\r
+               if (character_1.Character.isIdentifierStart(cp) && (cp !== 92)) {\r
+                   var start = this.scanner.index;\r
+                   ++this.scanner.index;\r
+                   while (!this.scanner.eof()) {\r
+                       var ch = this.scanner.source.charCodeAt(this.scanner.index);\r
+                       if (character_1.Character.isIdentifierPart(ch) && (ch !== 92)) {\r
+                           ++this.scanner.index;\r
+                       }\r
+                       else if (ch === 45) {\r
+                           // Hyphen (char code 45) can be part of an identifier.\r
+                           ++this.scanner.index;\r
+                       }\r
+                       else {\r
+                           break;\r
+                       }\r
+                   }\r
+                   var id = this.scanner.source.slice(start, this.scanner.index);\r
+                   return {\r
+                       type: 100 /* Identifier */,\r
+                       value: id,\r
+                       lineNumber: this.scanner.lineNumber,\r
+                       lineStart: this.scanner.lineStart,\r
+                       start: start,\r
+                       end: this.scanner.index\r
+                   };\r
+               }\r
+               return this.scanner.lex();\r
+           };\r
+           JSXParser.prototype.nextJSXToken = function () {\r
+               this.collectComments();\r
+               this.startMarker.index = this.scanner.index;\r
+               this.startMarker.line = this.scanner.lineNumber;\r
+               this.startMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               var token = this.lexJSX();\r
+               this.lastMarker.index = this.scanner.index;\r
+               this.lastMarker.line = this.scanner.lineNumber;\r
+               this.lastMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               if (this.config.tokens) {\r
+                   this.tokens.push(this.convertToken(token));\r
+               }\r
+               return token;\r
+           };\r
+           JSXParser.prototype.nextJSXText = function () {\r
+               this.startMarker.index = this.scanner.index;\r
+               this.startMarker.line = this.scanner.lineNumber;\r
+               this.startMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               var start = this.scanner.index;\r
+               var text = '';\r
+               while (!this.scanner.eof()) {\r
+                   var ch = this.scanner.source[this.scanner.index];\r
+                   if (ch === '{' || ch === '<') {\r
+                       break;\r
+                   }\r
+                   ++this.scanner.index;\r
+                   text += ch;\r
+                   if (character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                       ++this.scanner.lineNumber;\r
+                       if (ch === '\r' && this.scanner.source[this.scanner.index] === '\n') {\r
+                           ++this.scanner.index;\r
+                       }\r
+                       this.scanner.lineStart = this.scanner.index;\r
+                   }\r
+               }\r
+               this.lastMarker.index = this.scanner.index;\r
+               this.lastMarker.line = this.scanner.lineNumber;\r
+               this.lastMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               var token = {\r
+                   type: 101 /* Text */,\r
+                   value: text,\r
+                   lineNumber: this.scanner.lineNumber,\r
+                   lineStart: this.scanner.lineStart,\r
+                   start: start,\r
+                   end: this.scanner.index\r
+               };\r
+               if ((text.length > 0) && this.config.tokens) {\r
+                   this.tokens.push(this.convertToken(token));\r
+               }\r
+               return token;\r
+           };\r
+           JSXParser.prototype.peekJSXToken = function () {\r
+               var state = this.scanner.saveState();\r
+               this.scanner.scanComments();\r
+               var next = this.lexJSX();\r
+               this.scanner.restoreState(state);\r
+               return next;\r
+           };\r
+           // Expect the next JSX token to match the specified punctuator.\r
+           // If not, an exception will be thrown.\r
+           JSXParser.prototype.expectJSX = function (value) {\r
+               var token = this.nextJSXToken();\r
+               if (token.type !== 7 /* Punctuator */ || token.value !== value) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+           };\r
+           // Return true if the next JSX token matches the specified punctuator.\r
+           JSXParser.prototype.matchJSX = function (value) {\r
+               var next = this.peekJSXToken();\r
+               return next.type === 7 /* Punctuator */ && next.value === value;\r
+           };\r
+           JSXParser.prototype.parseJSXIdentifier = function () {\r
+               var node = this.createJSXNode();\r
+               var token = this.nextJSXToken();\r
+               if (token.type !== 100 /* Identifier */) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+               return this.finalize(node, new JSXNode.JSXIdentifier(token.value));\r
+           };\r
+           JSXParser.prototype.parseJSXElementName = function () {\r
+               var node = this.createJSXNode();\r
+               var elementName = this.parseJSXIdentifier();\r
+               if (this.matchJSX(':')) {\r
+                   var namespace = elementName;\r
+                   this.expectJSX(':');\r
+                   var name_1 = this.parseJSXIdentifier();\r
+                   elementName = this.finalize(node, new JSXNode.JSXNamespacedName(namespace, name_1));\r
+               }\r
+               else if (this.matchJSX('.')) {\r
+                   while (this.matchJSX('.')) {\r
+                       var object = elementName;\r
+                       this.expectJSX('.');\r
+                       var property = this.parseJSXIdentifier();\r
+                       elementName = this.finalize(node, new JSXNode.JSXMemberExpression(object, property));\r
+                   }\r
+               }\r
+               return elementName;\r
+           };\r
+           JSXParser.prototype.parseJSXAttributeName = function () {\r
+               var node = this.createJSXNode();\r
+               var attributeName;\r
+               var identifier = this.parseJSXIdentifier();\r
+               if (this.matchJSX(':')) {\r
+                   var namespace = identifier;\r
+                   this.expectJSX(':');\r
+                   var name_2 = this.parseJSXIdentifier();\r
+                   attributeName = this.finalize(node, new JSXNode.JSXNamespacedName(namespace, name_2));\r
+               }\r
+               else {\r
+                   attributeName = identifier;\r
+               }\r
+               return attributeName;\r
+           };\r
+           JSXParser.prototype.parseJSXStringLiteralAttribute = function () {\r
+               var node = this.createJSXNode();\r
+               var token = this.nextJSXToken();\r
+               if (token.type !== 8 /* StringLiteral */) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+               var raw = this.getTokenRaw(token);\r
+               return this.finalize(node, new Node.Literal(token.value, raw));\r
+           };\r
+           JSXParser.prototype.parseJSXExpressionAttribute = function () {\r
+               var node = this.createJSXNode();\r
+               this.expectJSX('{');\r
+               this.finishJSX();\r
+               if (this.match('}')) {\r
+                   this.tolerateError('JSX attributes must only be assigned a non-empty expression');\r
+               }\r
+               var expression = this.parseAssignmentExpression();\r
+               this.reenterJSX();\r
+               return this.finalize(node, new JSXNode.JSXExpressionContainer(expression));\r
+           };\r
+           JSXParser.prototype.parseJSXAttributeValue = function () {\r
+               return this.matchJSX('{') ? this.parseJSXExpressionAttribute() :\r
+                   this.matchJSX('<') ? this.parseJSXElement() : this.parseJSXStringLiteralAttribute();\r
+           };\r
+           JSXParser.prototype.parseJSXNameValueAttribute = function () {\r
+               var node = this.createJSXNode();\r
+               var name = this.parseJSXAttributeName();\r
+               var value = null;\r
+               if (this.matchJSX('=')) {\r
+                   this.expectJSX('=');\r
+                   value = this.parseJSXAttributeValue();\r
+               }\r
+               return this.finalize(node, new JSXNode.JSXAttribute(name, value));\r
+           };\r
+           JSXParser.prototype.parseJSXSpreadAttribute = function () {\r
+               var node = this.createJSXNode();\r
+               this.expectJSX('{');\r
+               this.expectJSX('...');\r
+               this.finishJSX();\r
+               var argument = this.parseAssignmentExpression();\r
+               this.reenterJSX();\r
+               return this.finalize(node, new JSXNode.JSXSpreadAttribute(argument));\r
+           };\r
+           JSXParser.prototype.parseJSXAttributes = function () {\r
+               var attributes = [];\r
+               while (!this.matchJSX('/') && !this.matchJSX('>')) {\r
+                   var attribute = this.matchJSX('{') ? this.parseJSXSpreadAttribute() :\r
+                       this.parseJSXNameValueAttribute();\r
+                   attributes.push(attribute);\r
+               }\r
+               return attributes;\r
+           };\r
+           JSXParser.prototype.parseJSXOpeningElement = function () {\r
+               var node = this.createJSXNode();\r
+               this.expectJSX('<');\r
+               var name = this.parseJSXElementName();\r
+               var attributes = this.parseJSXAttributes();\r
+               var selfClosing = this.matchJSX('/');\r
+               if (selfClosing) {\r
+                   this.expectJSX('/');\r
+               }\r
+               this.expectJSX('>');\r
+               return this.finalize(node, new JSXNode.JSXOpeningElement(name, selfClosing, attributes));\r
+           };\r
+           JSXParser.prototype.parseJSXBoundaryElement = function () {\r
+               var node = this.createJSXNode();\r
+               this.expectJSX('<');\r
+               if (this.matchJSX('/')) {\r
+                   this.expectJSX('/');\r
+                   var name_3 = this.parseJSXElementName();\r
+                   this.expectJSX('>');\r
+                   return this.finalize(node, new JSXNode.JSXClosingElement(name_3));\r
+               }\r
+               var name = this.parseJSXElementName();\r
+               var attributes = this.parseJSXAttributes();\r
+               var selfClosing = this.matchJSX('/');\r
+               if (selfClosing) {\r
+                   this.expectJSX('/');\r
+               }\r
+               this.expectJSX('>');\r
+               return this.finalize(node, new JSXNode.JSXOpeningElement(name, selfClosing, attributes));\r
+           };\r
+           JSXParser.prototype.parseJSXEmptyExpression = function () {\r
+               var node = this.createJSXChildNode();\r
+               this.collectComments();\r
+               this.lastMarker.index = this.scanner.index;\r
+               this.lastMarker.line = this.scanner.lineNumber;\r
+               this.lastMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               return this.finalize(node, new JSXNode.JSXEmptyExpression());\r
+           };\r
+           JSXParser.prototype.parseJSXExpressionContainer = function () {\r
+               var node = this.createJSXNode();\r
+               this.expectJSX('{');\r
+               var expression;\r
+               if (this.matchJSX('}')) {\r
+                   expression = this.parseJSXEmptyExpression();\r
+                   this.expectJSX('}');\r
+               }\r
+               else {\r
+                   this.finishJSX();\r
+                   expression = this.parseAssignmentExpression();\r
+                   this.reenterJSX();\r
+               }\r
+               return this.finalize(node, new JSXNode.JSXExpressionContainer(expression));\r
+           };\r
+           JSXParser.prototype.parseJSXChildren = function () {\r
+               var children = [];\r
+               while (!this.scanner.eof()) {\r
+                   var node = this.createJSXChildNode();\r
+                   var token = this.nextJSXText();\r
+                   if (token.start < token.end) {\r
+                       var raw = this.getTokenRaw(token);\r
+                       var child = this.finalize(node, new JSXNode.JSXText(token.value, raw));\r
+                       children.push(child);\r
+                   }\r
+                   if (this.scanner.source[this.scanner.index] === '{') {\r
+                       var container = this.parseJSXExpressionContainer();\r
+                       children.push(container);\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               return children;\r
+           };\r
+           JSXParser.prototype.parseComplexJSXElement = function (el) {\r
+               var stack = [];\r
+               while (!this.scanner.eof()) {\r
+                   el.children = el.children.concat(this.parseJSXChildren());\r
+                   var node = this.createJSXChildNode();\r
+                   var element = this.parseJSXBoundaryElement();\r
+                   if (element.type === jsx_syntax_1.JSXSyntax.JSXOpeningElement) {\r
+                       var opening = element;\r
+                       if (opening.selfClosing) {\r
+                           var child = this.finalize(node, new JSXNode.JSXElement(opening, [], null));\r
+                           el.children.push(child);\r
+                       }\r
+                       else {\r
+                           stack.push(el);\r
+                           el = { node: node, opening: opening, closing: null, children: [] };\r
+                       }\r
+                   }\r
+                   if (element.type === jsx_syntax_1.JSXSyntax.JSXClosingElement) {\r
+                       el.closing = element;\r
+                       var open_1 = getQualifiedElementName(el.opening.name);\r
+                       var close_1 = getQualifiedElementName(el.closing.name);\r
+                       if (open_1 !== close_1) {\r
+                           this.tolerateError('Expected corresponding JSX closing tag for %0', open_1);\r
+                       }\r
+                       if (stack.length > 0) {\r
+                           var child = this.finalize(el.node, new JSXNode.JSXElement(el.opening, el.children, el.closing));\r
+                           el = stack[stack.length - 1];\r
+                           el.children.push(child);\r
+                           stack.pop();\r
+                       }\r
+                       else {\r
+                           break;\r
+                       }\r
+                   }\r
+               }\r
+               return el;\r
+           };\r
+           JSXParser.prototype.parseJSXElement = function () {\r
+               var node = this.createJSXNode();\r
+               var opening = this.parseJSXOpeningElement();\r
+               var children = [];\r
+               var closing = null;\r
+               if (!opening.selfClosing) {\r
+                   var el = this.parseComplexJSXElement({ node: node, opening: opening, closing: closing, children: children });\r
+                   children = el.children;\r
+                   closing = el.closing;\r
+               }\r
+               return this.finalize(node, new JSXNode.JSXElement(opening, children, closing));\r
+           };\r
+           JSXParser.prototype.parseJSXRoot = function () {\r
+               // Pop the opening '<' added from the lookahead.\r
+               if (this.config.tokens) {\r
+                   this.tokens.pop();\r
+               }\r
+               this.startJSX();\r
+               var element = this.parseJSXElement();\r
+               this.finishJSX();\r
+               return element;\r
+           };\r
+           JSXParser.prototype.isStartOfExpression = function () {\r
+               return _super.prototype.isStartOfExpression.call(this) || this.match('<');\r
+           };\r
+           return JSXParser;\r
+       }(parser_1.Parser));\r
+       exports.JSXParser = JSXParser;\r
+
+
+/***/ },
+/* 4 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       // See also tools/generate-unicode-regex.js.\r
+       var Regex = {\r
+           // Unicode v8.0.0 NonAsciiIdentifierStart:\r
+           NonAsciiIdentifierStart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,\r
+           // Unicode v8.0.0 NonAsciiIdentifierPart:\r
+           NonAsciiIdentifierPart: /[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/\r
+       };\r
+       exports.Character = {\r
+           /* tslint:disable:no-bitwise */\r
+           fromCodePoint: function (cp) {\r
+               return (cp < 0x10000) ? String.fromCharCode(cp) :\r
+                   String.fromCharCode(0xD800 + ((cp - 0x10000) >> 10)) +\r
+                       String.fromCharCode(0xDC00 + ((cp - 0x10000) & 1023));\r
+           },\r
+           // https://tc39.github.io/ecma262/#sec-white-space\r
+           isWhiteSpace: function (cp) {\r
+               return (cp === 0x20) || (cp === 0x09) || (cp === 0x0B) || (cp === 0x0C) || (cp === 0xA0) ||\r
+                   (cp >= 0x1680 && [0x1680, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF].indexOf(cp) >= 0);\r
+           },\r
+           // https://tc39.github.io/ecma262/#sec-line-terminators\r
+           isLineTerminator: function (cp) {\r
+               return (cp === 0x0A) || (cp === 0x0D) || (cp === 0x2028) || (cp === 0x2029);\r
+           },\r
+           // https://tc39.github.io/ecma262/#sec-names-and-keywords\r
+           isIdentifierStart: function (cp) {\r
+               return (cp === 0x24) || (cp === 0x5F) ||\r
+                   (cp >= 0x41 && cp <= 0x5A) ||\r
+                   (cp >= 0x61 && cp <= 0x7A) ||\r
+                   (cp === 0x5C) ||\r
+                   ((cp >= 0x80) && Regex.NonAsciiIdentifierStart.test(exports.Character.fromCodePoint(cp)));\r
+           },\r
+           isIdentifierPart: function (cp) {\r
+               return (cp === 0x24) || (cp === 0x5F) ||\r
+                   (cp >= 0x41 && cp <= 0x5A) ||\r
+                   (cp >= 0x61 && cp <= 0x7A) ||\r
+                   (cp >= 0x30 && cp <= 0x39) ||\r
+                   (cp === 0x5C) ||\r
+                   ((cp >= 0x80) && Regex.NonAsciiIdentifierPart.test(exports.Character.fromCodePoint(cp)));\r
+           },\r
+           // https://tc39.github.io/ecma262/#sec-literals-numeric-literals\r
+           isDecimalDigit: function (cp) {\r
+               return (cp >= 0x30 && cp <= 0x39); // 0..9\r
+           },\r
+           isHexDigit: function (cp) {\r
+               return (cp >= 0x30 && cp <= 0x39) ||\r
+                   (cp >= 0x41 && cp <= 0x46) ||\r
+                   (cp >= 0x61 && cp <= 0x66); // a..f\r
+           },\r
+           isOctalDigit: function (cp) {\r
+               return (cp >= 0x30 && cp <= 0x37); // 0..7\r
+           }\r
+       };\r
+
+
+/***/ },
+/* 5 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var jsx_syntax_1 = __webpack_require__(6);\r
+       /* tslint:disable:max-classes-per-file */\r
+       var JSXClosingElement = (function () {\r
+           function JSXClosingElement(name) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXClosingElement;\r
+               this.name = name;\r
+           }\r
+           return JSXClosingElement;\r
+       }());\r
+       exports.JSXClosingElement = JSXClosingElement;\r
+       var JSXElement = (function () {\r
+           function JSXElement(openingElement, children, closingElement) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXElement;\r
+               this.openingElement = openingElement;\r
+               this.children = children;\r
+               this.closingElement = closingElement;\r
+           }\r
+           return JSXElement;\r
+       }());\r
+       exports.JSXElement = JSXElement;\r
+       var JSXEmptyExpression = (function () {\r
+           function JSXEmptyExpression() {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXEmptyExpression;\r
+           }\r
+           return JSXEmptyExpression;\r
+       }());\r
+       exports.JSXEmptyExpression = JSXEmptyExpression;\r
+       var JSXExpressionContainer = (function () {\r
+           function JSXExpressionContainer(expression) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXExpressionContainer;\r
+               this.expression = expression;\r
+           }\r
+           return JSXExpressionContainer;\r
+       }());\r
+       exports.JSXExpressionContainer = JSXExpressionContainer;\r
+       var JSXIdentifier = (function () {\r
+           function JSXIdentifier(name) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXIdentifier;\r
+               this.name = name;\r
+           }\r
+           return JSXIdentifier;\r
+       }());\r
+       exports.JSXIdentifier = JSXIdentifier;\r
+       var JSXMemberExpression = (function () {\r
+           function JSXMemberExpression(object, property) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXMemberExpression;\r
+               this.object = object;\r
+               this.property = property;\r
+           }\r
+           return JSXMemberExpression;\r
+       }());\r
+       exports.JSXMemberExpression = JSXMemberExpression;\r
+       var JSXAttribute = (function () {\r
+           function JSXAttribute(name, value) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXAttribute;\r
+               this.name = name;\r
+               this.value = value;\r
+           }\r
+           return JSXAttribute;\r
+       }());\r
+       exports.JSXAttribute = JSXAttribute;\r
+       var JSXNamespacedName = (function () {\r
+           function JSXNamespacedName(namespace, name) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXNamespacedName;\r
+               this.namespace = namespace;\r
+               this.name = name;\r
+           }\r
+           return JSXNamespacedName;\r
+       }());\r
+       exports.JSXNamespacedName = JSXNamespacedName;\r
+       var JSXOpeningElement = (function () {\r
+           function JSXOpeningElement(name, selfClosing, attributes) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXOpeningElement;\r
+               this.name = name;\r
+               this.selfClosing = selfClosing;\r
+               this.attributes = attributes;\r
+           }\r
+           return JSXOpeningElement;\r
+       }());\r
+       exports.JSXOpeningElement = JSXOpeningElement;\r
+       var JSXSpreadAttribute = (function () {\r
+           function JSXSpreadAttribute(argument) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXSpreadAttribute;\r
+               this.argument = argument;\r
+           }\r
+           return JSXSpreadAttribute;\r
+       }());\r
+       exports.JSXSpreadAttribute = JSXSpreadAttribute;\r
+       var JSXText = (function () {\r
+           function JSXText(value, raw) {\r
+               this.type = jsx_syntax_1.JSXSyntax.JSXText;\r
+               this.value = value;\r
+               this.raw = raw;\r
+           }\r
+           return JSXText;\r
+       }());\r
+       exports.JSXText = JSXText;\r
+
+
+/***/ },
+/* 6 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       exports.JSXSyntax = {\r
+           JSXAttribute: 'JSXAttribute',\r
+           JSXClosingElement: 'JSXClosingElement',\r
+           JSXElement: 'JSXElement',\r
+           JSXEmptyExpression: 'JSXEmptyExpression',\r
+           JSXExpressionContainer: 'JSXExpressionContainer',\r
+           JSXIdentifier: 'JSXIdentifier',\r
+           JSXMemberExpression: 'JSXMemberExpression',\r
+           JSXNamespacedName: 'JSXNamespacedName',\r
+           JSXOpeningElement: 'JSXOpeningElement',\r
+           JSXSpreadAttribute: 'JSXSpreadAttribute',\r
+           JSXText: 'JSXText'\r
+       };\r
+
+
+/***/ },
+/* 7 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var syntax_1 = __webpack_require__(2);\r
+       /* tslint:disable:max-classes-per-file */\r
+       var ArrayExpression = (function () {\r
+           function ArrayExpression(elements) {\r
+               this.type = syntax_1.Syntax.ArrayExpression;\r
+               this.elements = elements;\r
+           }\r
+           return ArrayExpression;\r
+       }());\r
+       exports.ArrayExpression = ArrayExpression;\r
+       var ArrayPattern = (function () {\r
+           function ArrayPattern(elements) {\r
+               this.type = syntax_1.Syntax.ArrayPattern;\r
+               this.elements = elements;\r
+           }\r
+           return ArrayPattern;\r
+       }());\r
+       exports.ArrayPattern = ArrayPattern;\r
+       var ArrowFunctionExpression = (function () {\r
+           function ArrowFunctionExpression(params, body, expression) {\r
+               this.type = syntax_1.Syntax.ArrowFunctionExpression;\r
+               this.id = null;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = false;\r
+               this.expression = expression;\r
+               this.async = false;\r
+           }\r
+           return ArrowFunctionExpression;\r
+       }());\r
+       exports.ArrowFunctionExpression = ArrowFunctionExpression;\r
+       var AssignmentExpression = (function () {\r
+           function AssignmentExpression(operator, left, right) {\r
+               this.type = syntax_1.Syntax.AssignmentExpression;\r
+               this.operator = operator;\r
+               this.left = left;\r
+               this.right = right;\r
+           }\r
+           return AssignmentExpression;\r
+       }());\r
+       exports.AssignmentExpression = AssignmentExpression;\r
+       var AssignmentPattern = (function () {\r
+           function AssignmentPattern(left, right) {\r
+               this.type = syntax_1.Syntax.AssignmentPattern;\r
+               this.left = left;\r
+               this.right = right;\r
+           }\r
+           return AssignmentPattern;\r
+       }());\r
+       exports.AssignmentPattern = AssignmentPattern;\r
+       var AsyncArrowFunctionExpression = (function () {\r
+           function AsyncArrowFunctionExpression(params, body, expression) {\r
+               this.type = syntax_1.Syntax.ArrowFunctionExpression;\r
+               this.id = null;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = false;\r
+               this.expression = expression;\r
+               this.async = true;\r
+           }\r
+           return AsyncArrowFunctionExpression;\r
+       }());\r
+       exports.AsyncArrowFunctionExpression = AsyncArrowFunctionExpression;\r
+       var AsyncFunctionDeclaration = (function () {\r
+           function AsyncFunctionDeclaration(id, params, body) {\r
+               this.type = syntax_1.Syntax.FunctionDeclaration;\r
+               this.id = id;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = false;\r
+               this.expression = false;\r
+               this.async = true;\r
+           }\r
+           return AsyncFunctionDeclaration;\r
+       }());\r
+       exports.AsyncFunctionDeclaration = AsyncFunctionDeclaration;\r
+       var AsyncFunctionExpression = (function () {\r
+           function AsyncFunctionExpression(id, params, body) {\r
+               this.type = syntax_1.Syntax.FunctionExpression;\r
+               this.id = id;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = false;\r
+               this.expression = false;\r
+               this.async = true;\r
+           }\r
+           return AsyncFunctionExpression;\r
+       }());\r
+       exports.AsyncFunctionExpression = AsyncFunctionExpression;\r
+       var AwaitExpression = (function () {\r
+           function AwaitExpression(argument) {\r
+               this.type = syntax_1.Syntax.AwaitExpression;\r
+               this.argument = argument;\r
+           }\r
+           return AwaitExpression;\r
+       }());\r
+       exports.AwaitExpression = AwaitExpression;\r
+       var BinaryExpression = (function () {\r
+           function BinaryExpression(operator, left, right) {\r
+               var logical = (operator === '||' || operator === '&&');\r
+               this.type = logical ? syntax_1.Syntax.LogicalExpression : syntax_1.Syntax.BinaryExpression;\r
+               this.operator = operator;\r
+               this.left = left;\r
+               this.right = right;\r
+           }\r
+           return BinaryExpression;\r
+       }());\r
+       exports.BinaryExpression = BinaryExpression;\r
+       var BlockStatement = (function () {\r
+           function BlockStatement(body) {\r
+               this.type = syntax_1.Syntax.BlockStatement;\r
+               this.body = body;\r
+           }\r
+           return BlockStatement;\r
+       }());\r
+       exports.BlockStatement = BlockStatement;\r
+       var BreakStatement = (function () {\r
+           function BreakStatement(label) {\r
+               this.type = syntax_1.Syntax.BreakStatement;\r
+               this.label = label;\r
+           }\r
+           return BreakStatement;\r
+       }());\r
+       exports.BreakStatement = BreakStatement;\r
+       var CallExpression = (function () {\r
+           function CallExpression(callee, args) {\r
+               this.type = syntax_1.Syntax.CallExpression;\r
+               this.callee = callee;\r
+               this.arguments = args;\r
+           }\r
+           return CallExpression;\r
+       }());\r
+       exports.CallExpression = CallExpression;\r
+       var CatchClause = (function () {\r
+           function CatchClause(param, body) {\r
+               this.type = syntax_1.Syntax.CatchClause;\r
+               this.param = param;\r
+               this.body = body;\r
+           }\r
+           return CatchClause;\r
+       }());\r
+       exports.CatchClause = CatchClause;\r
+       var ClassBody = (function () {\r
+           function ClassBody(body) {\r
+               this.type = syntax_1.Syntax.ClassBody;\r
+               this.body = body;\r
+           }\r
+           return ClassBody;\r
+       }());\r
+       exports.ClassBody = ClassBody;\r
+       var ClassDeclaration = (function () {\r
+           function ClassDeclaration(id, superClass, body) {\r
+               this.type = syntax_1.Syntax.ClassDeclaration;\r
+               this.id = id;\r
+               this.superClass = superClass;\r
+               this.body = body;\r
+           }\r
+           return ClassDeclaration;\r
+       }());\r
+       exports.ClassDeclaration = ClassDeclaration;\r
+       var ClassExpression = (function () {\r
+           function ClassExpression(id, superClass, body) {\r
+               this.type = syntax_1.Syntax.ClassExpression;\r
+               this.id = id;\r
+               this.superClass = superClass;\r
+               this.body = body;\r
+           }\r
+           return ClassExpression;\r
+       }());\r
+       exports.ClassExpression = ClassExpression;\r
+       var ComputedMemberExpression = (function () {\r
+           function ComputedMemberExpression(object, property) {\r
+               this.type = syntax_1.Syntax.MemberExpression;\r
+               this.computed = true;\r
+               this.object = object;\r
+               this.property = property;\r
+           }\r
+           return ComputedMemberExpression;\r
+       }());\r
+       exports.ComputedMemberExpression = ComputedMemberExpression;\r
+       var ConditionalExpression = (function () {\r
+           function ConditionalExpression(test, consequent, alternate) {\r
+               this.type = syntax_1.Syntax.ConditionalExpression;\r
+               this.test = test;\r
+               this.consequent = consequent;\r
+               this.alternate = alternate;\r
+           }\r
+           return ConditionalExpression;\r
+       }());\r
+       exports.ConditionalExpression = ConditionalExpression;\r
+       var ContinueStatement = (function () {\r
+           function ContinueStatement(label) {\r
+               this.type = syntax_1.Syntax.ContinueStatement;\r
+               this.label = label;\r
+           }\r
+           return ContinueStatement;\r
+       }());\r
+       exports.ContinueStatement = ContinueStatement;\r
+       var DebuggerStatement = (function () {\r
+           function DebuggerStatement() {\r
+               this.type = syntax_1.Syntax.DebuggerStatement;\r
+           }\r
+           return DebuggerStatement;\r
+       }());\r
+       exports.DebuggerStatement = DebuggerStatement;\r
+       var Directive = (function () {\r
+           function Directive(expression, directive) {\r
+               this.type = syntax_1.Syntax.ExpressionStatement;\r
+               this.expression = expression;\r
+               this.directive = directive;\r
+           }\r
+           return Directive;\r
+       }());\r
+       exports.Directive = Directive;\r
+       var DoWhileStatement = (function () {\r
+           function DoWhileStatement(body, test) {\r
+               this.type = syntax_1.Syntax.DoWhileStatement;\r
+               this.body = body;\r
+               this.test = test;\r
+           }\r
+           return DoWhileStatement;\r
+       }());\r
+       exports.DoWhileStatement = DoWhileStatement;\r
+       var EmptyStatement = (function () {\r
+           function EmptyStatement() {\r
+               this.type = syntax_1.Syntax.EmptyStatement;\r
+           }\r
+           return EmptyStatement;\r
+       }());\r
+       exports.EmptyStatement = EmptyStatement;\r
+       var ExportAllDeclaration = (function () {\r
+           function ExportAllDeclaration(source) {\r
+               this.type = syntax_1.Syntax.ExportAllDeclaration;\r
+               this.source = source;\r
+           }\r
+           return ExportAllDeclaration;\r
+       }());\r
+       exports.ExportAllDeclaration = ExportAllDeclaration;\r
+       var ExportDefaultDeclaration = (function () {\r
+           function ExportDefaultDeclaration(declaration) {\r
+               this.type = syntax_1.Syntax.ExportDefaultDeclaration;\r
+               this.declaration = declaration;\r
+           }\r
+           return ExportDefaultDeclaration;\r
+       }());\r
+       exports.ExportDefaultDeclaration = ExportDefaultDeclaration;\r
+       var ExportNamedDeclaration = (function () {\r
+           function ExportNamedDeclaration(declaration, specifiers, source) {\r
+               this.type = syntax_1.Syntax.ExportNamedDeclaration;\r
+               this.declaration = declaration;\r
+               this.specifiers = specifiers;\r
+               this.source = source;\r
+           }\r
+           return ExportNamedDeclaration;\r
+       }());\r
+       exports.ExportNamedDeclaration = ExportNamedDeclaration;\r
+       var ExportSpecifier = (function () {\r
+           function ExportSpecifier(local, exported) {\r
+               this.type = syntax_1.Syntax.ExportSpecifier;\r
+               this.exported = exported;\r
+               this.local = local;\r
+           }\r
+           return ExportSpecifier;\r
+       }());\r
+       exports.ExportSpecifier = ExportSpecifier;\r
+       var ExpressionStatement = (function () {\r
+           function ExpressionStatement(expression) {\r
+               this.type = syntax_1.Syntax.ExpressionStatement;\r
+               this.expression = expression;\r
+           }\r
+           return ExpressionStatement;\r
+       }());\r
+       exports.ExpressionStatement = ExpressionStatement;\r
+       var ForInStatement = (function () {\r
+           function ForInStatement(left, right, body) {\r
+               this.type = syntax_1.Syntax.ForInStatement;\r
+               this.left = left;\r
+               this.right = right;\r
+               this.body = body;\r
+               this.each = false;\r
+           }\r
+           return ForInStatement;\r
+       }());\r
+       exports.ForInStatement = ForInStatement;\r
+       var ForOfStatement = (function () {\r
+           function ForOfStatement(left, right, body) {\r
+               this.type = syntax_1.Syntax.ForOfStatement;\r
+               this.left = left;\r
+               this.right = right;\r
+               this.body = body;\r
+           }\r
+           return ForOfStatement;\r
+       }());\r
+       exports.ForOfStatement = ForOfStatement;\r
+       var ForStatement = (function () {\r
+           function ForStatement(init, test, update, body) {\r
+               this.type = syntax_1.Syntax.ForStatement;\r
+               this.init = init;\r
+               this.test = test;\r
+               this.update = update;\r
+               this.body = body;\r
+           }\r
+           return ForStatement;\r
+       }());\r
+       exports.ForStatement = ForStatement;\r
+       var FunctionDeclaration = (function () {\r
+           function FunctionDeclaration(id, params, body, generator) {\r
+               this.type = syntax_1.Syntax.FunctionDeclaration;\r
+               this.id = id;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = generator;\r
+               this.expression = false;\r
+               this.async = false;\r
+           }\r
+           return FunctionDeclaration;\r
+       }());\r
+       exports.FunctionDeclaration = FunctionDeclaration;\r
+       var FunctionExpression = (function () {\r
+           function FunctionExpression(id, params, body, generator) {\r
+               this.type = syntax_1.Syntax.FunctionExpression;\r
+               this.id = id;\r
+               this.params = params;\r
+               this.body = body;\r
+               this.generator = generator;\r
+               this.expression = false;\r
+               this.async = false;\r
+           }\r
+           return FunctionExpression;\r
+       }());\r
+       exports.FunctionExpression = FunctionExpression;\r
+       var Identifier = (function () {\r
+           function Identifier(name) {\r
+               this.type = syntax_1.Syntax.Identifier;\r
+               this.name = name;\r
+           }\r
+           return Identifier;\r
+       }());\r
+       exports.Identifier = Identifier;\r
+       var IfStatement = (function () {\r
+           function IfStatement(test, consequent, alternate) {\r
+               this.type = syntax_1.Syntax.IfStatement;\r
+               this.test = test;\r
+               this.consequent = consequent;\r
+               this.alternate = alternate;\r
+           }\r
+           return IfStatement;\r
+       }());\r
+       exports.IfStatement = IfStatement;\r
+       var ImportDeclaration = (function () {\r
+           function ImportDeclaration(specifiers, source) {\r
+               this.type = syntax_1.Syntax.ImportDeclaration;\r
+               this.specifiers = specifiers;\r
+               this.source = source;\r
+           }\r
+           return ImportDeclaration;\r
+       }());\r
+       exports.ImportDeclaration = ImportDeclaration;\r
+       var ImportDefaultSpecifier = (function () {\r
+           function ImportDefaultSpecifier(local) {\r
+               this.type = syntax_1.Syntax.ImportDefaultSpecifier;\r
+               this.local = local;\r
+           }\r
+           return ImportDefaultSpecifier;\r
+       }());\r
+       exports.ImportDefaultSpecifier = ImportDefaultSpecifier;\r
+       var ImportNamespaceSpecifier = (function () {\r
+           function ImportNamespaceSpecifier(local) {\r
+               this.type = syntax_1.Syntax.ImportNamespaceSpecifier;\r
+               this.local = local;\r
+           }\r
+           return ImportNamespaceSpecifier;\r
+       }());\r
+       exports.ImportNamespaceSpecifier = ImportNamespaceSpecifier;\r
+       var ImportSpecifier = (function () {\r
+           function ImportSpecifier(local, imported) {\r
+               this.type = syntax_1.Syntax.ImportSpecifier;\r
+               this.local = local;\r
+               this.imported = imported;\r
+           }\r
+           return ImportSpecifier;\r
+       }());\r
+       exports.ImportSpecifier = ImportSpecifier;\r
+       var LabeledStatement = (function () {\r
+           function LabeledStatement(label, body) {\r
+               this.type = syntax_1.Syntax.LabeledStatement;\r
+               this.label = label;\r
+               this.body = body;\r
+           }\r
+           return LabeledStatement;\r
+       }());\r
+       exports.LabeledStatement = LabeledStatement;\r
+       var Literal = (function () {\r
+           function Literal(value, raw) {\r
+               this.type = syntax_1.Syntax.Literal;\r
+               this.value = value;\r
+               this.raw = raw;\r
+           }\r
+           return Literal;\r
+       }());\r
+       exports.Literal = Literal;\r
+       var MetaProperty = (function () {\r
+           function MetaProperty(meta, property) {\r
+               this.type = syntax_1.Syntax.MetaProperty;\r
+               this.meta = meta;\r
+               this.property = property;\r
+           }\r
+           return MetaProperty;\r
+       }());\r
+       exports.MetaProperty = MetaProperty;\r
+       var MethodDefinition = (function () {\r
+           function MethodDefinition(key, computed, value, kind, isStatic) {\r
+               this.type = syntax_1.Syntax.MethodDefinition;\r
+               this.key = key;\r
+               this.computed = computed;\r
+               this.value = value;\r
+               this.kind = kind;\r
+               this.static = isStatic;\r
+           }\r
+           return MethodDefinition;\r
+       }());\r
+       exports.MethodDefinition = MethodDefinition;\r
+       var Module = (function () {\r
+           function Module(body) {\r
+               this.type = syntax_1.Syntax.Program;\r
+               this.body = body;\r
+               this.sourceType = 'module';\r
+           }\r
+           return Module;\r
+       }());\r
+       exports.Module = Module;\r
+       var NewExpression = (function () {\r
+           function NewExpression(callee, args) {\r
+               this.type = syntax_1.Syntax.NewExpression;\r
+               this.callee = callee;\r
+               this.arguments = args;\r
+           }\r
+           return NewExpression;\r
+       }());\r
+       exports.NewExpression = NewExpression;\r
+       var ObjectExpression = (function () {\r
+           function ObjectExpression(properties) {\r
+               this.type = syntax_1.Syntax.ObjectExpression;\r
+               this.properties = properties;\r
+           }\r
+           return ObjectExpression;\r
+       }());\r
+       exports.ObjectExpression = ObjectExpression;\r
+       var ObjectPattern = (function () {\r
+           function ObjectPattern(properties) {\r
+               this.type = syntax_1.Syntax.ObjectPattern;\r
+               this.properties = properties;\r
+           }\r
+           return ObjectPattern;\r
+       }());\r
+       exports.ObjectPattern = ObjectPattern;\r
+       var Property = (function () {\r
+           function Property(kind, key, computed, value, method, shorthand) {\r
+               this.type = syntax_1.Syntax.Property;\r
+               this.key = key;\r
+               this.computed = computed;\r
+               this.value = value;\r
+               this.kind = kind;\r
+               this.method = method;\r
+               this.shorthand = shorthand;\r
+           }\r
+           return Property;\r
+       }());\r
+       exports.Property = Property;\r
+       var RegexLiteral = (function () {\r
+           function RegexLiteral(value, raw, pattern, flags) {\r
+               this.type = syntax_1.Syntax.Literal;\r
+               this.value = value;\r
+               this.raw = raw;\r
+               this.regex = { pattern: pattern, flags: flags };\r
+           }\r
+           return RegexLiteral;\r
+       }());\r
+       exports.RegexLiteral = RegexLiteral;\r
+       var RestElement = (function () {\r
+           function RestElement(argument) {\r
+               this.type = syntax_1.Syntax.RestElement;\r
+               this.argument = argument;\r
+           }\r
+           return RestElement;\r
+       }());\r
+       exports.RestElement = RestElement;\r
+       var ReturnStatement = (function () {\r
+           function ReturnStatement(argument) {\r
+               this.type = syntax_1.Syntax.ReturnStatement;\r
+               this.argument = argument;\r
+           }\r
+           return ReturnStatement;\r
+       }());\r
+       exports.ReturnStatement = ReturnStatement;\r
+       var Script = (function () {\r
+           function Script(body) {\r
+               this.type = syntax_1.Syntax.Program;\r
+               this.body = body;\r
+               this.sourceType = 'script';\r
+           }\r
+           return Script;\r
+       }());\r
+       exports.Script = Script;\r
+       var SequenceExpression = (function () {\r
+           function SequenceExpression(expressions) {\r
+               this.type = syntax_1.Syntax.SequenceExpression;\r
+               this.expressions = expressions;\r
+           }\r
+           return SequenceExpression;\r
+       }());\r
+       exports.SequenceExpression = SequenceExpression;\r
+       var SpreadElement = (function () {\r
+           function SpreadElement(argument) {\r
+               this.type = syntax_1.Syntax.SpreadElement;\r
+               this.argument = argument;\r
+           }\r
+           return SpreadElement;\r
+       }());\r
+       exports.SpreadElement = SpreadElement;\r
+       var StaticMemberExpression = (function () {\r
+           function StaticMemberExpression(object, property) {\r
+               this.type = syntax_1.Syntax.MemberExpression;\r
+               this.computed = false;\r
+               this.object = object;\r
+               this.property = property;\r
+           }\r
+           return StaticMemberExpression;\r
+       }());\r
+       exports.StaticMemberExpression = StaticMemberExpression;\r
+       var Super = (function () {\r
+           function Super() {\r
+               this.type = syntax_1.Syntax.Super;\r
+           }\r
+           return Super;\r
+       }());\r
+       exports.Super = Super;\r
+       var SwitchCase = (function () {\r
+           function SwitchCase(test, consequent) {\r
+               this.type = syntax_1.Syntax.SwitchCase;\r
+               this.test = test;\r
+               this.consequent = consequent;\r
+           }\r
+           return SwitchCase;\r
+       }());\r
+       exports.SwitchCase = SwitchCase;\r
+       var SwitchStatement = (function () {\r
+           function SwitchStatement(discriminant, cases) {\r
+               this.type = syntax_1.Syntax.SwitchStatement;\r
+               this.discriminant = discriminant;\r
+               this.cases = cases;\r
+           }\r
+           return SwitchStatement;\r
+       }());\r
+       exports.SwitchStatement = SwitchStatement;\r
+       var TaggedTemplateExpression = (function () {\r
+           function TaggedTemplateExpression(tag, quasi) {\r
+               this.type = syntax_1.Syntax.TaggedTemplateExpression;\r
+               this.tag = tag;\r
+               this.quasi = quasi;\r
+           }\r
+           return TaggedTemplateExpression;\r
+       }());\r
+       exports.TaggedTemplateExpression = TaggedTemplateExpression;\r
+       var TemplateElement = (function () {\r
+           function TemplateElement(value, tail) {\r
+               this.type = syntax_1.Syntax.TemplateElement;\r
+               this.value = value;\r
+               this.tail = tail;\r
+           }\r
+           return TemplateElement;\r
+       }());\r
+       exports.TemplateElement = TemplateElement;\r
+       var TemplateLiteral = (function () {\r
+           function TemplateLiteral(quasis, expressions) {\r
+               this.type = syntax_1.Syntax.TemplateLiteral;\r
+               this.quasis = quasis;\r
+               this.expressions = expressions;\r
+           }\r
+           return TemplateLiteral;\r
+       }());\r
+       exports.TemplateLiteral = TemplateLiteral;\r
+       var ThisExpression = (function () {\r
+           function ThisExpression() {\r
+               this.type = syntax_1.Syntax.ThisExpression;\r
+           }\r
+           return ThisExpression;\r
+       }());\r
+       exports.ThisExpression = ThisExpression;\r
+       var ThrowStatement = (function () {\r
+           function ThrowStatement(argument) {\r
+               this.type = syntax_1.Syntax.ThrowStatement;\r
+               this.argument = argument;\r
+           }\r
+           return ThrowStatement;\r
+       }());\r
+       exports.ThrowStatement = ThrowStatement;\r
+       var TryStatement = (function () {\r
+           function TryStatement(block, handler, finalizer) {\r
+               this.type = syntax_1.Syntax.TryStatement;\r
+               this.block = block;\r
+               this.handler = handler;\r
+               this.finalizer = finalizer;\r
+           }\r
+           return TryStatement;\r
+       }());\r
+       exports.TryStatement = TryStatement;\r
+       var UnaryExpression = (function () {\r
+           function UnaryExpression(operator, argument) {\r
+               this.type = syntax_1.Syntax.UnaryExpression;\r
+               this.operator = operator;\r
+               this.argument = argument;\r
+               this.prefix = true;\r
+           }\r
+           return UnaryExpression;\r
+       }());\r
+       exports.UnaryExpression = UnaryExpression;\r
+       var UpdateExpression = (function () {\r
+           function UpdateExpression(operator, argument, prefix) {\r
+               this.type = syntax_1.Syntax.UpdateExpression;\r
+               this.operator = operator;\r
+               this.argument = argument;\r
+               this.prefix = prefix;\r
+           }\r
+           return UpdateExpression;\r
+       }());\r
+       exports.UpdateExpression = UpdateExpression;\r
+       var VariableDeclaration = (function () {\r
+           function VariableDeclaration(declarations, kind) {\r
+               this.type = syntax_1.Syntax.VariableDeclaration;\r
+               this.declarations = declarations;\r
+               this.kind = kind;\r
+           }\r
+           return VariableDeclaration;\r
+       }());\r
+       exports.VariableDeclaration = VariableDeclaration;\r
+       var VariableDeclarator = (function () {\r
+           function VariableDeclarator(id, init) {\r
+               this.type = syntax_1.Syntax.VariableDeclarator;\r
+               this.id = id;\r
+               this.init = init;\r
+           }\r
+           return VariableDeclarator;\r
+       }());\r
+       exports.VariableDeclarator = VariableDeclarator;\r
+       var WhileStatement = (function () {\r
+           function WhileStatement(test, body) {\r
+               this.type = syntax_1.Syntax.WhileStatement;\r
+               this.test = test;\r
+               this.body = body;\r
+           }\r
+           return WhileStatement;\r
+       }());\r
+       exports.WhileStatement = WhileStatement;\r
+       var WithStatement = (function () {\r
+           function WithStatement(object, body) {\r
+               this.type = syntax_1.Syntax.WithStatement;\r
+               this.object = object;\r
+               this.body = body;\r
+           }\r
+           return WithStatement;\r
+       }());\r
+       exports.WithStatement = WithStatement;\r
+       var YieldExpression = (function () {\r
+           function YieldExpression(argument, delegate) {\r
+               this.type = syntax_1.Syntax.YieldExpression;\r
+               this.argument = argument;\r
+               this.delegate = delegate;\r
+           }\r
+           return YieldExpression;\r
+       }());\r
+       exports.YieldExpression = YieldExpression;\r
+
+
+/***/ },
+/* 8 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var assert_1 = __webpack_require__(9);\r
+       var error_handler_1 = __webpack_require__(10);\r
+       var messages_1 = __webpack_require__(11);\r
+       var Node = __webpack_require__(7);\r
+       var scanner_1 = __webpack_require__(12);\r
+       var syntax_1 = __webpack_require__(2);\r
+       var token_1 = __webpack_require__(13);\r
+       var ArrowParameterPlaceHolder = 'ArrowParameterPlaceHolder';\r
+       var Parser = (function () {\r
+           function Parser(code, options, delegate) {\r
+               if (options === void 0) { options = {}; }\r
+               this.config = {\r
+                   range: (typeof options.range === 'boolean') && options.range,\r
+                   loc: (typeof options.loc === 'boolean') && options.loc,\r
+                   source: null,\r
+                   tokens: (typeof options.tokens === 'boolean') && options.tokens,\r
+                   comment: (typeof options.comment === 'boolean') && options.comment,\r
+                   tolerant: (typeof options.tolerant === 'boolean') && options.tolerant\r
+               };\r
+               if (this.config.loc && options.source && options.source !== null) {\r
+                   this.config.source = String(options.source);\r
+               }\r
+               this.delegate = delegate;\r
+               this.errorHandler = new error_handler_1.ErrorHandler();\r
+               this.errorHandler.tolerant = this.config.tolerant;\r
+               this.scanner = new scanner_1.Scanner(code, this.errorHandler);\r
+               this.scanner.trackComment = this.config.comment;\r
+               this.operatorPrecedence = {\r
+                   ')': 0,\r
+                   ';': 0,\r
+                   ',': 0,\r
+                   '=': 0,\r
+                   ']': 0,\r
+                   '||': 1,\r
+                   '&&': 2,\r
+                   '|': 3,\r
+                   '^': 4,\r
+                   '&': 5,\r
+                   '==': 6,\r
+                   '!=': 6,\r
+                   '===': 6,\r
+                   '!==': 6,\r
+                   '<': 7,\r
+                   '>': 7,\r
+                   '<=': 7,\r
+                   '>=': 7,\r
+                   '<<': 8,\r
+                   '>>': 8,\r
+                   '>>>': 8,\r
+                   '+': 9,\r
+                   '-': 9,\r
+                   '*': 11,\r
+                   '/': 11,\r
+                   '%': 11\r
+               };\r
+               this.lookahead = {\r
+                   type: 2 /* EOF */,\r
+                   value: '',\r
+                   lineNumber: this.scanner.lineNumber,\r
+                   lineStart: 0,\r
+                   start: 0,\r
+                   end: 0\r
+               };\r
+               this.hasLineTerminator = false;\r
+               this.context = {\r
+                   isModule: false,\r
+                   await: false,\r
+                   allowIn: true,\r
+                   allowStrictDirective: true,\r
+                   allowYield: true,\r
+                   firstCoverInitializedNameError: null,\r
+                   isAssignmentTarget: false,\r
+                   isBindingElement: false,\r
+                   inFunctionBody: false,\r
+                   inIteration: false,\r
+                   inSwitch: false,\r
+                   labelSet: {},\r
+                   strict: false\r
+               };\r
+               this.tokens = [];\r
+               this.startMarker = {\r
+                   index: 0,\r
+                   line: this.scanner.lineNumber,\r
+                   column: 0\r
+               };\r
+               this.lastMarker = {\r
+                   index: 0,\r
+                   line: this.scanner.lineNumber,\r
+                   column: 0\r
+               };\r
+               this.nextToken();\r
+               this.lastMarker = {\r
+                   index: this.scanner.index,\r
+                   line: this.scanner.lineNumber,\r
+                   column: this.scanner.index - this.scanner.lineStart\r
+               };\r
+           }\r
+           Parser.prototype.throwError = function (messageFormat) {\r
+               var values = [];\r
+               for (var _i = 1; _i < arguments.length; _i++) {\r
+                   values[_i - 1] = arguments[_i];\r
+               }\r
+               var args = Array.prototype.slice.call(arguments, 1);\r
+               var msg = messageFormat.replace(/%(\d)/g, function (whole, idx) {\r
+                   assert_1.assert(idx < args.length, 'Message reference must be in range');\r
+                   return args[idx];\r
+               });\r
+               var index = this.lastMarker.index;\r
+               var line = this.lastMarker.line;\r
+               var column = this.lastMarker.column + 1;\r
+               throw this.errorHandler.createError(index, line, column, msg);\r
+           };\r
+           Parser.prototype.tolerateError = function (messageFormat) {\r
+               var values = [];\r
+               for (var _i = 1; _i < arguments.length; _i++) {\r
+                   values[_i - 1] = arguments[_i];\r
+               }\r
+               var args = Array.prototype.slice.call(arguments, 1);\r
+               var msg = messageFormat.replace(/%(\d)/g, function (whole, idx) {\r
+                   assert_1.assert(idx < args.length, 'Message reference must be in range');\r
+                   return args[idx];\r
+               });\r
+               var index = this.lastMarker.index;\r
+               var line = this.scanner.lineNumber;\r
+               var column = this.lastMarker.column + 1;\r
+               this.errorHandler.tolerateError(index, line, column, msg);\r
+           };\r
+           // Throw an exception because of the token.\r
+           Parser.prototype.unexpectedTokenError = function (token, message) {\r
+               var msg = message || messages_1.Messages.UnexpectedToken;\r
+               var value;\r
+               if (token) {\r
+                   if (!message) {\r
+                       msg = (token.type === 2 /* EOF */) ? messages_1.Messages.UnexpectedEOS :\r
+                           (token.type === 3 /* Identifier */) ? messages_1.Messages.UnexpectedIdentifier :\r
+                               (token.type === 6 /* NumericLiteral */) ? messages_1.Messages.UnexpectedNumber :\r
+                                   (token.type === 8 /* StringLiteral */) ? messages_1.Messages.UnexpectedString :\r
+                                       (token.type === 10 /* Template */) ? messages_1.Messages.UnexpectedTemplate :\r
+                                           messages_1.Messages.UnexpectedToken;\r
+                       if (token.type === 4 /* Keyword */) {\r
+                           if (this.scanner.isFutureReservedWord(token.value)) {\r
+                               msg = messages_1.Messages.UnexpectedReserved;\r
+                           }\r
+                           else if (this.context.strict && this.scanner.isStrictModeReservedWord(token.value)) {\r
+                               msg = messages_1.Messages.StrictReservedWord;\r
+                           }\r
+                       }\r
+                   }\r
+                   value = token.value;\r
+               }\r
+               else {\r
+                   value = 'ILLEGAL';\r
+               }\r
+               msg = msg.replace('%0', value);\r
+               if (token && typeof token.lineNumber === 'number') {\r
+                   var index = token.start;\r
+                   var line = token.lineNumber;\r
+                   var lastMarkerLineStart = this.lastMarker.index - this.lastMarker.column;\r
+                   var column = token.start - lastMarkerLineStart + 1;\r
+                   return this.errorHandler.createError(index, line, column, msg);\r
+               }\r
+               else {\r
+                   var index = this.lastMarker.index;\r
+                   var line = this.lastMarker.line;\r
+                   var column = this.lastMarker.column + 1;\r
+                   return this.errorHandler.createError(index, line, column, msg);\r
+               }\r
+           };\r
+           Parser.prototype.throwUnexpectedToken = function (token, message) {\r
+               throw this.unexpectedTokenError(token, message);\r
+           };\r
+           Parser.prototype.tolerateUnexpectedToken = function (token, message) {\r
+               this.errorHandler.tolerate(this.unexpectedTokenError(token, message));\r
+           };\r
+           Parser.prototype.collectComments = function () {\r
+               if (!this.config.comment) {\r
+                   this.scanner.scanComments();\r
+               }\r
+               else {\r
+                   var comments = this.scanner.scanComments();\r
+                   if (comments.length > 0 && this.delegate) {\r
+                       for (var i = 0; i < comments.length; ++i) {\r
+                           var e = comments[i];\r
+                           var node = void 0;\r
+                           node = {\r
+                               type: e.multiLine ? 'BlockComment' : 'LineComment',\r
+                               value: this.scanner.source.slice(e.slice[0], e.slice[1])\r
+                           };\r
+                           if (this.config.range) {\r
+                               node.range = e.range;\r
+                           }\r
+                           if (this.config.loc) {\r
+                               node.loc = e.loc;\r
+                           }\r
+                           var metadata = {\r
+                               start: {\r
+                                   line: e.loc.start.line,\r
+                                   column: e.loc.start.column,\r
+                                   offset: e.range[0]\r
+                               },\r
+                               end: {\r
+                                   line: e.loc.end.line,\r
+                                   column: e.loc.end.column,\r
+                                   offset: e.range[1]\r
+                               }\r
+                           };\r
+                           this.delegate(node, metadata);\r
+                       }\r
+                   }\r
+               }\r
+           };\r
+           // From internal representation to an external structure\r
+           Parser.prototype.getTokenRaw = function (token) {\r
+               return this.scanner.source.slice(token.start, token.end);\r
+           };\r
+           Parser.prototype.convertToken = function (token) {\r
+               var t = {\r
+                   type: token_1.TokenName[token.type],\r
+                   value: this.getTokenRaw(token)\r
+               };\r
+               if (this.config.range) {\r
+                   t.range = [token.start, token.end];\r
+               }\r
+               if (this.config.loc) {\r
+                   t.loc = {\r
+                       start: {\r
+                           line: this.startMarker.line,\r
+                           column: this.startMarker.column\r
+                       },\r
+                       end: {\r
+                           line: this.scanner.lineNumber,\r
+                           column: this.scanner.index - this.scanner.lineStart\r
+                       }\r
+                   };\r
+               }\r
+               if (token.type === 9 /* RegularExpression */) {\r
+                   var pattern = token.pattern;\r
+                   var flags = token.flags;\r
+                   t.regex = { pattern: pattern, flags: flags };\r
+               }\r
+               return t;\r
+           };\r
+           Parser.prototype.nextToken = function () {\r
+               var token = this.lookahead;\r
+               this.lastMarker.index = this.scanner.index;\r
+               this.lastMarker.line = this.scanner.lineNumber;\r
+               this.lastMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               this.collectComments();\r
+               if (this.scanner.index !== this.startMarker.index) {\r
+                   this.startMarker.index = this.scanner.index;\r
+                   this.startMarker.line = this.scanner.lineNumber;\r
+                   this.startMarker.column = this.scanner.index - this.scanner.lineStart;\r
+               }\r
+               var next = this.scanner.lex();\r
+               this.hasLineTerminator = (token.lineNumber !== next.lineNumber);\r
+               if (next && this.context.strict && next.type === 3 /* Identifier */) {\r
+                   if (this.scanner.isStrictModeReservedWord(next.value)) {\r
+                       next.type = 4 /* Keyword */;\r
+                   }\r
+               }\r
+               this.lookahead = next;\r
+               if (this.config.tokens && next.type !== 2 /* EOF */) {\r
+                   this.tokens.push(this.convertToken(next));\r
+               }\r
+               return token;\r
+           };\r
+           Parser.prototype.nextRegexToken = function () {\r
+               this.collectComments();\r
+               var token = this.scanner.scanRegExp();\r
+               if (this.config.tokens) {\r
+                   // Pop the previous token, '/' or '/='\r
+                   // This is added from the lookahead token.\r
+                   this.tokens.pop();\r
+                   this.tokens.push(this.convertToken(token));\r
+               }\r
+               // Prime the next lookahead.\r
+               this.lookahead = token;\r
+               this.nextToken();\r
+               return token;\r
+           };\r
+           Parser.prototype.createNode = function () {\r
+               return {\r
+                   index: this.startMarker.index,\r
+                   line: this.startMarker.line,\r
+                   column: this.startMarker.column\r
+               };\r
+           };\r
+           Parser.prototype.startNode = function (token) {\r
+               return {\r
+                   index: token.start,\r
+                   line: token.lineNumber,\r
+                   column: token.start - token.lineStart\r
+               };\r
+           };\r
+           Parser.prototype.finalize = function (marker, node) {\r
+               if (this.config.range) {\r
+                   node.range = [marker.index, this.lastMarker.index];\r
+               }\r
+               if (this.config.loc) {\r
+                   node.loc = {\r
+                       start: {\r
+                           line: marker.line,\r
+                           column: marker.column,\r
+                       },\r
+                       end: {\r
+                           line: this.lastMarker.line,\r
+                           column: this.lastMarker.column\r
+                       }\r
+                   };\r
+                   if (this.config.source) {\r
+                       node.loc.source = this.config.source;\r
+                   }\r
+               }\r
+               if (this.delegate) {\r
+                   var metadata = {\r
+                       start: {\r
+                           line: marker.line,\r
+                           column: marker.column,\r
+                           offset: marker.index\r
+                       },\r
+                       end: {\r
+                           line: this.lastMarker.line,\r
+                           column: this.lastMarker.column,\r
+                           offset: this.lastMarker.index\r
+                       }\r
+                   };\r
+                   this.delegate(node, metadata);\r
+               }\r
+               return node;\r
+           };\r
+           // Expect the next token to match the specified punctuator.\r
+           // If not, an exception will be thrown.\r
+           Parser.prototype.expect = function (value) {\r
+               var token = this.nextToken();\r
+               if (token.type !== 7 /* Punctuator */ || token.value !== value) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+           };\r
+           // Quietly expect a comma when in tolerant mode, otherwise delegates to expect().\r
+           Parser.prototype.expectCommaSeparator = function () {\r
+               if (this.config.tolerant) {\r
+                   var token = this.lookahead;\r
+                   if (token.type === 7 /* Punctuator */ && token.value === ',') {\r
+                       this.nextToken();\r
+                   }\r
+                   else if (token.type === 7 /* Punctuator */ && token.value === ';') {\r
+                       this.nextToken();\r
+                       this.tolerateUnexpectedToken(token);\r
+                   }\r
+                   else {\r
+                       this.tolerateUnexpectedToken(token, messages_1.Messages.UnexpectedToken);\r
+                   }\r
+               }\r
+               else {\r
+                   this.expect(',');\r
+               }\r
+           };\r
+           // Expect the next token to match the specified keyword.\r
+           // If not, an exception will be thrown.\r
+           Parser.prototype.expectKeyword = function (keyword) {\r
+               var token = this.nextToken();\r
+               if (token.type !== 4 /* Keyword */ || token.value !== keyword) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+           };\r
+           // Return true if the next token matches the specified punctuator.\r
+           Parser.prototype.match = function (value) {\r
+               return this.lookahead.type === 7 /* Punctuator */ && this.lookahead.value === value;\r
+           };\r
+           // Return true if the next token matches the specified keyword\r
+           Parser.prototype.matchKeyword = function (keyword) {\r
+               return this.lookahead.type === 4 /* Keyword */ && this.lookahead.value === keyword;\r
+           };\r
+           // Return true if the next token matches the specified contextual keyword\r
+           // (where an identifier is sometimes a keyword depending on the context)\r
+           Parser.prototype.matchContextualKeyword = function (keyword) {\r
+               return this.lookahead.type === 3 /* Identifier */ && this.lookahead.value === keyword;\r
+           };\r
+           // Return true if the next token is an assignment operator\r
+           Parser.prototype.matchAssign = function () {\r
+               if (this.lookahead.type !== 7 /* Punctuator */) {\r
+                   return false;\r
+               }\r
+               var op = this.lookahead.value;\r
+               return op === '=' ||\r
+                   op === '*=' ||\r
+                   op === '**=' ||\r
+                   op === '/=' ||\r
+                   op === '%=' ||\r
+                   op === '+=' ||\r
+                   op === '-=' ||\r
+                   op === '<<=' ||\r
+                   op === '>>=' ||\r
+                   op === '>>>=' ||\r
+                   op === '&=' ||\r
+                   op === '^=' ||\r
+                   op === '|=';\r
+           };\r
+           // Cover grammar support.\r
+           //\r
+           // When an assignment expression position starts with an left parenthesis, the determination of the type\r
+           // of the syntax is to be deferred arbitrarily long until the end of the parentheses pair (plus a lookahead)\r
+           // or the first comma. This situation also defers the determination of all the expressions nested in the pair.\r
+           //\r
+           // There are three productions that can be parsed in a parentheses pair that needs to be determined\r
+           // after the outermost pair is closed. They are:\r
+           //\r
+           //   1. AssignmentExpression\r
+           //   2. BindingElements\r
+           //   3. AssignmentTargets\r
+           //\r
+           // In order to avoid exponential backtracking, we use two flags to denote if the production can be\r
+           // binding element or assignment target.\r
+           //\r
+           // The three productions have the relationship:\r
+           //\r
+           //   BindingElements ⊆ AssignmentTargets ⊆ AssignmentExpression\r
+           //\r
+           // with a single exception that CoverInitializedName when used directly in an Expression, generates\r
+           // an early error. Therefore, we need the third state, firstCoverInitializedNameError, to track the\r
+           // first usage of CoverInitializedName and report it when we reached the end of the parentheses pair.\r
+           //\r
+           // isolateCoverGrammar function runs the given parser function with a new cover grammar context, and it does not\r
+           // effect the current flags. This means the production the parser parses is only used as an expression. Therefore\r
+           // the CoverInitializedName check is conducted.\r
+           //\r
+           // inheritCoverGrammar function runs the given parse function with a new cover grammar context, and it propagates\r
+           // the flags outside of the parser. This means the production the parser parses is used as a part of a potential\r
+           // pattern. The CoverInitializedName check is deferred.\r
+           Parser.prototype.isolateCoverGrammar = function (parseFunction) {\r
+               var previousIsBindingElement = this.context.isBindingElement;\r
+               var previousIsAssignmentTarget = this.context.isAssignmentTarget;\r
+               var previousFirstCoverInitializedNameError = this.context.firstCoverInitializedNameError;\r
+               this.context.isBindingElement = true;\r
+               this.context.isAssignmentTarget = true;\r
+               this.context.firstCoverInitializedNameError = null;\r
+               var result = parseFunction.call(this);\r
+               if (this.context.firstCoverInitializedNameError !== null) {\r
+                   this.throwUnexpectedToken(this.context.firstCoverInitializedNameError);\r
+               }\r
+               this.context.isBindingElement = previousIsBindingElement;\r
+               this.context.isAssignmentTarget = previousIsAssignmentTarget;\r
+               this.context.firstCoverInitializedNameError = previousFirstCoverInitializedNameError;\r
+               return result;\r
+           };\r
+           Parser.prototype.inheritCoverGrammar = function (parseFunction) {\r
+               var previousIsBindingElement = this.context.isBindingElement;\r
+               var previousIsAssignmentTarget = this.context.isAssignmentTarget;\r
+               var previousFirstCoverInitializedNameError = this.context.firstCoverInitializedNameError;\r
+               this.context.isBindingElement = true;\r
+               this.context.isAssignmentTarget = true;\r
+               this.context.firstCoverInitializedNameError = null;\r
+               var result = parseFunction.call(this);\r
+               this.context.isBindingElement = this.context.isBindingElement && previousIsBindingElement;\r
+               this.context.isAssignmentTarget = this.context.isAssignmentTarget && previousIsAssignmentTarget;\r
+               this.context.firstCoverInitializedNameError = previousFirstCoverInitializedNameError || this.context.firstCoverInitializedNameError;\r
+               return result;\r
+           };\r
+           Parser.prototype.consumeSemicolon = function () {\r
+               if (this.match(';')) {\r
+                   this.nextToken();\r
+               }\r
+               else if (!this.hasLineTerminator) {\r
+                   if (this.lookahead.type !== 2 /* EOF */ && !this.match('}')) {\r
+                       this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+                   this.lastMarker.index = this.startMarker.index;\r
+                   this.lastMarker.line = this.startMarker.line;\r
+                   this.lastMarker.column = this.startMarker.column;\r
+               }\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-primary-expression\r
+           Parser.prototype.parsePrimaryExpression = function () {\r
+               var node = this.createNode();\r
+               var expr;\r
+               var token, raw;\r
+               switch (this.lookahead.type) {\r
+                   case 3 /* Identifier */:\r
+                       if ((this.context.isModule || this.context.await) && this.lookahead.value === 'await') {\r
+                           this.tolerateUnexpectedToken(this.lookahead);\r
+                       }\r
+                       expr = this.matchAsyncFunction() ? this.parseFunctionExpression() : this.finalize(node, new Node.Identifier(this.nextToken().value));\r
+                       break;\r
+                   case 6 /* NumericLiteral */:\r
+                   case 8 /* StringLiteral */:\r
+                       if (this.context.strict && this.lookahead.octal) {\r
+                           this.tolerateUnexpectedToken(this.lookahead, messages_1.Messages.StrictOctalLiteral);\r
+                       }\r
+                       this.context.isAssignmentTarget = false;\r
+                       this.context.isBindingElement = false;\r
+                       token = this.nextToken();\r
+                       raw = this.getTokenRaw(token);\r
+                       expr = this.finalize(node, new Node.Literal(token.value, raw));\r
+                       break;\r
+                   case 1 /* BooleanLiteral */:\r
+                       this.context.isAssignmentTarget = false;\r
+                       this.context.isBindingElement = false;\r
+                       token = this.nextToken();\r
+                       raw = this.getTokenRaw(token);\r
+                       expr = this.finalize(node, new Node.Literal(token.value === 'true', raw));\r
+                       break;\r
+                   case 5 /* NullLiteral */:\r
+                       this.context.isAssignmentTarget = false;\r
+                       this.context.isBindingElement = false;\r
+                       token = this.nextToken();\r
+                       raw = this.getTokenRaw(token);\r
+                       expr = this.finalize(node, new Node.Literal(null, raw));\r
+                       break;\r
+                   case 10 /* Template */:\r
+                       expr = this.parseTemplateLiteral();\r
+                       break;\r
+                   case 7 /* Punctuator */:\r
+                       switch (this.lookahead.value) {\r
+                           case '(':\r
+                               this.context.isBindingElement = false;\r
+                               expr = this.inheritCoverGrammar(this.parseGroupExpression);\r
+                               break;\r
+                           case '[':\r
+                               expr = this.inheritCoverGrammar(this.parseArrayInitializer);\r
+                               break;\r
+                           case '{':\r
+                               expr = this.inheritCoverGrammar(this.parseObjectInitializer);\r
+                               break;\r
+                           case '/':\r
+                           case '/=':\r
+                               this.context.isAssignmentTarget = false;\r
+                               this.context.isBindingElement = false;\r
+                               this.scanner.index = this.startMarker.index;\r
+                               token = this.nextRegexToken();\r
+                               raw = this.getTokenRaw(token);\r
+                               expr = this.finalize(node, new Node.RegexLiteral(token.regex, raw, token.pattern, token.flags));\r
+                               break;\r
+                           default:\r
+                               expr = this.throwUnexpectedToken(this.nextToken());\r
+                       }\r
+                       break;\r
+                   case 4 /* Keyword */:\r
+                       if (!this.context.strict && this.context.allowYield && this.matchKeyword('yield')) {\r
+                           expr = this.parseIdentifierName();\r
+                       }\r
+                       else if (!this.context.strict && this.matchKeyword('let')) {\r
+                           expr = this.finalize(node, new Node.Identifier(this.nextToken().value));\r
+                       }\r
+                       else {\r
+                           this.context.isAssignmentTarget = false;\r
+                           this.context.isBindingElement = false;\r
+                           if (this.matchKeyword('function')) {\r
+                               expr = this.parseFunctionExpression();\r
+                           }\r
+                           else if (this.matchKeyword('this')) {\r
+                               this.nextToken();\r
+                               expr = this.finalize(node, new Node.ThisExpression());\r
+                           }\r
+                           else if (this.matchKeyword('class')) {\r
+                               expr = this.parseClassExpression();\r
+                           }\r
+                           else {\r
+                               expr = this.throwUnexpectedToken(this.nextToken());\r
+                           }\r
+                       }\r
+                       break;\r
+                   default:\r
+                       expr = this.throwUnexpectedToken(this.nextToken());\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-array-initializer\r
+           Parser.prototype.parseSpreadElement = function () {\r
+               var node = this.createNode();\r
+               this.expect('...');\r
+               var arg = this.inheritCoverGrammar(this.parseAssignmentExpression);\r
+               return this.finalize(node, new Node.SpreadElement(arg));\r
+           };\r
+           Parser.prototype.parseArrayInitializer = function () {\r
+               var node = this.createNode();\r
+               var elements = [];\r
+               this.expect('[');\r
+               while (!this.match(']')) {\r
+                   if (this.match(',')) {\r
+                       this.nextToken();\r
+                       elements.push(null);\r
+                   }\r
+                   else if (this.match('...')) {\r
+                       var element = this.parseSpreadElement();\r
+                       if (!this.match(']')) {\r
+                           this.context.isAssignmentTarget = false;\r
+                           this.context.isBindingElement = false;\r
+                           this.expect(',');\r
+                       }\r
+                       elements.push(element);\r
+                   }\r
+                   else {\r
+                       elements.push(this.inheritCoverGrammar(this.parseAssignmentExpression));\r
+                       if (!this.match(']')) {\r
+                           this.expect(',');\r
+                       }\r
+                   }\r
+               }\r
+               this.expect(']');\r
+               return this.finalize(node, new Node.ArrayExpression(elements));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-object-initializer\r
+           Parser.prototype.parsePropertyMethod = function (params) {\r
+               this.context.isAssignmentTarget = false;\r
+               this.context.isBindingElement = false;\r
+               var previousStrict = this.context.strict;\r
+               var previousAllowStrictDirective = this.context.allowStrictDirective;\r
+               this.context.allowStrictDirective = params.simple;\r
+               var body = this.isolateCoverGrammar(this.parseFunctionSourceElements);\r
+               if (this.context.strict && params.firstRestricted) {\r
+                   this.tolerateUnexpectedToken(params.firstRestricted, params.message);\r
+               }\r
+               if (this.context.strict && params.stricted) {\r
+                   this.tolerateUnexpectedToken(params.stricted, params.message);\r
+               }\r
+               this.context.strict = previousStrict;\r
+               this.context.allowStrictDirective = previousAllowStrictDirective;\r
+               return body;\r
+           };\r
+           Parser.prototype.parsePropertyMethodFunction = function () {\r
+               var isGenerator = false;\r
+               var node = this.createNode();\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.allowYield = false;\r
+               var params = this.parseFormalParameters();\r
+               var method = this.parsePropertyMethod(params);\r
+               this.context.allowYield = previousAllowYield;\r
+               return this.finalize(node, new Node.FunctionExpression(null, params.params, method, isGenerator));\r
+           };\r
+           Parser.prototype.parsePropertyMethodAsyncFunction = function () {\r
+               var node = this.createNode();\r
+               var previousAllowYield = this.context.allowYield;\r
+               var previousAwait = this.context.await;\r
+               this.context.allowYield = false;\r
+               this.context.await = true;\r
+               var params = this.parseFormalParameters();\r
+               var method = this.parsePropertyMethod(params);\r
+               this.context.allowYield = previousAllowYield;\r
+               this.context.await = previousAwait;\r
+               return this.finalize(node, new Node.AsyncFunctionExpression(null, params.params, method));\r
+           };\r
+           Parser.prototype.parseObjectPropertyKey = function () {\r
+               var node = this.createNode();\r
+               var token = this.nextToken();\r
+               var key;\r
+               switch (token.type) {\r
+                   case 8 /* StringLiteral */:\r
+                   case 6 /* NumericLiteral */:\r
+                       if (this.context.strict && token.octal) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.StrictOctalLiteral);\r
+                       }\r
+                       var raw = this.getTokenRaw(token);\r
+                       key = this.finalize(node, new Node.Literal(token.value, raw));\r
+                       break;\r
+                   case 3 /* Identifier */:\r
+                   case 1 /* BooleanLiteral */:\r
+                   case 5 /* NullLiteral */:\r
+                   case 4 /* Keyword */:\r
+                       key = this.finalize(node, new Node.Identifier(token.value));\r
+                       break;\r
+                   case 7 /* Punctuator */:\r
+                       if (token.value === '[') {\r
+                           key = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                           this.expect(']');\r
+                       }\r
+                       else {\r
+                           key = this.throwUnexpectedToken(token);\r
+                       }\r
+                       break;\r
+                   default:\r
+                       key = this.throwUnexpectedToken(token);\r
+               }\r
+               return key;\r
+           };\r
+           Parser.prototype.isPropertyKey = function (key, value) {\r
+               return (key.type === syntax_1.Syntax.Identifier && key.name === value) ||\r
+                   (key.type === syntax_1.Syntax.Literal && key.value === value);\r
+           };\r
+           Parser.prototype.parseObjectProperty = function (hasProto) {\r
+               var node = this.createNode();\r
+               var token = this.lookahead;\r
+               var kind;\r
+               var key = null;\r
+               var value = null;\r
+               var computed = false;\r
+               var method = false;\r
+               var shorthand = false;\r
+               var isAsync = false;\r
+               if (token.type === 3 /* Identifier */) {\r
+                   var id = token.value;\r
+                   this.nextToken();\r
+                   computed = this.match('[');\r
+                   isAsync = !this.hasLineTerminator && (id === 'async') &&\r
+                       !this.match(':') && !this.match('(') && !this.match('*');\r
+                   key = isAsync ? this.parseObjectPropertyKey() : this.finalize(node, new Node.Identifier(id));\r
+               }\r
+               else if (this.match('*')) {\r
+                   this.nextToken();\r
+               }\r
+               else {\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+               }\r
+               var lookaheadPropertyKey = this.qualifiedPropertyName(this.lookahead);\r
+               if (token.type === 3 /* Identifier */ && !isAsync && token.value === 'get' && lookaheadPropertyKey) {\r
+                   kind = 'get';\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   this.context.allowYield = false;\r
+                   value = this.parseGetterMethod();\r
+               }\r
+               else if (token.type === 3 /* Identifier */ && !isAsync && token.value === 'set' && lookaheadPropertyKey) {\r
+                   kind = 'set';\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   value = this.parseSetterMethod();\r
+               }\r
+               else if (token.type === 7 /* Punctuator */ && token.value === '*' && lookaheadPropertyKey) {\r
+                   kind = 'init';\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   value = this.parseGeneratorMethod();\r
+                   method = true;\r
+               }\r
+               else {\r
+                   if (!key) {\r
+                       this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+                   kind = 'init';\r
+                   if (this.match(':') && !isAsync) {\r
+                       if (!computed && this.isPropertyKey(key, '__proto__')) {\r
+                           if (hasProto.value) {\r
+                               this.tolerateError(messages_1.Messages.DuplicateProtoProperty);\r
+                           }\r
+                           hasProto.value = true;\r
+                       }\r
+                       this.nextToken();\r
+                       value = this.inheritCoverGrammar(this.parseAssignmentExpression);\r
+                   }\r
+                   else if (this.match('(')) {\r
+                       value = isAsync ? this.parsePropertyMethodAsyncFunction() : this.parsePropertyMethodFunction();\r
+                       method = true;\r
+                   }\r
+                   else if (token.type === 3 /* Identifier */) {\r
+                       var id = this.finalize(node, new Node.Identifier(token.value));\r
+                       if (this.match('=')) {\r
+                           this.context.firstCoverInitializedNameError = this.lookahead;\r
+                           this.nextToken();\r
+                           shorthand = true;\r
+                           var init = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                           value = this.finalize(node, new Node.AssignmentPattern(id, init));\r
+                       }\r
+                       else {\r
+                           shorthand = true;\r
+                           value = id;\r
+                       }\r
+                   }\r
+                   else {\r
+                       this.throwUnexpectedToken(this.nextToken());\r
+                   }\r
+               }\r
+               return this.finalize(node, new Node.Property(kind, key, computed, value, method, shorthand));\r
+           };\r
+           Parser.prototype.parseObjectInitializer = function () {\r
+               var node = this.createNode();\r
+               this.expect('{');\r
+               var properties = [];\r
+               var hasProto = { value: false };\r
+               while (!this.match('}')) {\r
+                   properties.push(this.parseObjectProperty(hasProto));\r
+                   if (!this.match('}')) {\r
+                       this.expectCommaSeparator();\r
+                   }\r
+               }\r
+               this.expect('}');\r
+               return this.finalize(node, new Node.ObjectExpression(properties));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-template-literals\r
+           Parser.prototype.parseTemplateHead = function () {\r
+               assert_1.assert(this.lookahead.head, 'Template literal must start with a template head');\r
+               var node = this.createNode();\r
+               var token = this.nextToken();\r
+               var raw = token.value;\r
+               var cooked = token.cooked;\r
+               return this.finalize(node, new Node.TemplateElement({ raw: raw, cooked: cooked }, token.tail));\r
+           };\r
+           Parser.prototype.parseTemplateElement = function () {\r
+               if (this.lookahead.type !== 10 /* Template */) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               var node = this.createNode();\r
+               var token = this.nextToken();\r
+               var raw = token.value;\r
+               var cooked = token.cooked;\r
+               return this.finalize(node, new Node.TemplateElement({ raw: raw, cooked: cooked }, token.tail));\r
+           };\r
+           Parser.prototype.parseTemplateLiteral = function () {\r
+               var node = this.createNode();\r
+               var expressions = [];\r
+               var quasis = [];\r
+               var quasi = this.parseTemplateHead();\r
+               quasis.push(quasi);\r
+               while (!quasi.tail) {\r
+                   expressions.push(this.parseExpression());\r
+                   quasi = this.parseTemplateElement();\r
+                   quasis.push(quasi);\r
+               }\r
+               return this.finalize(node, new Node.TemplateLiteral(quasis, expressions));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-grouping-operator\r
+           Parser.prototype.reinterpretExpressionAsPattern = function (expr) {\r
+               switch (expr.type) {\r
+                   case syntax_1.Syntax.Identifier:\r
+                   case syntax_1.Syntax.MemberExpression:\r
+                   case syntax_1.Syntax.RestElement:\r
+                   case syntax_1.Syntax.AssignmentPattern:\r
+                       break;\r
+                   case syntax_1.Syntax.SpreadElement:\r
+                       expr.type = syntax_1.Syntax.RestElement;\r
+                       this.reinterpretExpressionAsPattern(expr.argument);\r
+                       break;\r
+                   case syntax_1.Syntax.ArrayExpression:\r
+                       expr.type = syntax_1.Syntax.ArrayPattern;\r
+                       for (var i = 0; i < expr.elements.length; i++) {\r
+                           if (expr.elements[i] !== null) {\r
+                               this.reinterpretExpressionAsPattern(expr.elements[i]);\r
+                           }\r
+                       }\r
+                       break;\r
+                   case syntax_1.Syntax.ObjectExpression:\r
+                       expr.type = syntax_1.Syntax.ObjectPattern;\r
+                       for (var i = 0; i < expr.properties.length; i++) {\r
+                           this.reinterpretExpressionAsPattern(expr.properties[i].value);\r
+                       }\r
+                       break;\r
+                   case syntax_1.Syntax.AssignmentExpression:\r
+                       expr.type = syntax_1.Syntax.AssignmentPattern;\r
+                       delete expr.operator;\r
+                       this.reinterpretExpressionAsPattern(expr.left);\r
+                       break;\r
+                   default:\r
+                       // Allow other node type for tolerant parsing.\r
+                       break;\r
+               }\r
+           };\r
+           Parser.prototype.parseGroupExpression = function () {\r
+               var expr;\r
+               this.expect('(');\r
+               if (this.match(')')) {\r
+                   this.nextToken();\r
+                   if (!this.match('=>')) {\r
+                       this.expect('=>');\r
+                   }\r
+                   expr = {\r
+                       type: ArrowParameterPlaceHolder,\r
+                       params: [],\r
+                       async: false\r
+                   };\r
+               }\r
+               else {\r
+                   var startToken = this.lookahead;\r
+                   var params = [];\r
+                   if (this.match('...')) {\r
+                       expr = this.parseRestElement(params);\r
+                       this.expect(')');\r
+                       if (!this.match('=>')) {\r
+                           this.expect('=>');\r
+                       }\r
+                       expr = {\r
+                           type: ArrowParameterPlaceHolder,\r
+                           params: [expr],\r
+                           async: false\r
+                       };\r
+                   }\r
+                   else {\r
+                       var arrow = false;\r
+                       this.context.isBindingElement = true;\r
+                       expr = this.inheritCoverGrammar(this.parseAssignmentExpression);\r
+                       if (this.match(',')) {\r
+                           var expressions = [];\r
+                           this.context.isAssignmentTarget = false;\r
+                           expressions.push(expr);\r
+                           while (this.lookahead.type !== 2 /* EOF */) {\r
+                               if (!this.match(',')) {\r
+                                   break;\r
+                               }\r
+                               this.nextToken();\r
+                               if (this.match(')')) {\r
+                                   this.nextToken();\r
+                                   for (var i = 0; i < expressions.length; i++) {\r
+                                       this.reinterpretExpressionAsPattern(expressions[i]);\r
+                                   }\r
+                                   arrow = true;\r
+                                   expr = {\r
+                                       type: ArrowParameterPlaceHolder,\r
+                                       params: expressions,\r
+                                       async: false\r
+                                   };\r
+                               }\r
+                               else if (this.match('...')) {\r
+                                   if (!this.context.isBindingElement) {\r
+                                       this.throwUnexpectedToken(this.lookahead);\r
+                                   }\r
+                                   expressions.push(this.parseRestElement(params));\r
+                                   this.expect(')');\r
+                                   if (!this.match('=>')) {\r
+                                       this.expect('=>');\r
+                                   }\r
+                                   this.context.isBindingElement = false;\r
+                                   for (var i = 0; i < expressions.length; i++) {\r
+                                       this.reinterpretExpressionAsPattern(expressions[i]);\r
+                                   }\r
+                                   arrow = true;\r
+                                   expr = {\r
+                                       type: ArrowParameterPlaceHolder,\r
+                                       params: expressions,\r
+                                       async: false\r
+                                   };\r
+                               }\r
+                               else {\r
+                                   expressions.push(this.inheritCoverGrammar(this.parseAssignmentExpression));\r
+                               }\r
+                               if (arrow) {\r
+                                   break;\r
+                               }\r
+                           }\r
+                           if (!arrow) {\r
+                               expr = this.finalize(this.startNode(startToken), new Node.SequenceExpression(expressions));\r
+                           }\r
+                       }\r
+                       if (!arrow) {\r
+                           this.expect(')');\r
+                           if (this.match('=>')) {\r
+                               if (expr.type === syntax_1.Syntax.Identifier && expr.name === 'yield') {\r
+                                   arrow = true;\r
+                                   expr = {\r
+                                       type: ArrowParameterPlaceHolder,\r
+                                       params: [expr],\r
+                                       async: false\r
+                                   };\r
+                               }\r
+                               if (!arrow) {\r
+                                   if (!this.context.isBindingElement) {\r
+                                       this.throwUnexpectedToken(this.lookahead);\r
+                                   }\r
+                                   if (expr.type === syntax_1.Syntax.SequenceExpression) {\r
+                                       for (var i = 0; i < expr.expressions.length; i++) {\r
+                                           this.reinterpretExpressionAsPattern(expr.expressions[i]);\r
+                                       }\r
+                                   }\r
+                                   else {\r
+                                       this.reinterpretExpressionAsPattern(expr);\r
+                                   }\r
+                                   var parameters = (expr.type === syntax_1.Syntax.SequenceExpression ? expr.expressions : [expr]);\r
+                                   expr = {\r
+                                       type: ArrowParameterPlaceHolder,\r
+                                       params: parameters,\r
+                                       async: false\r
+                                   };\r
+                               }\r
+                           }\r
+                           this.context.isBindingElement = false;\r
+                       }\r
+                   }\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-left-hand-side-expressions\r
+           Parser.prototype.parseArguments = function () {\r
+               this.expect('(');\r
+               var args = [];\r
+               if (!this.match(')')) {\r
+                   while (true) {\r
+                       var expr = this.match('...') ? this.parseSpreadElement() :\r
+                           this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                       args.push(expr);\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                       this.expectCommaSeparator();\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                   }\r
+               }\r
+               this.expect(')');\r
+               return args;\r
+           };\r
+           Parser.prototype.isIdentifierName = function (token) {\r
+               return token.type === 3 /* Identifier */ ||\r
+                   token.type === 4 /* Keyword */ ||\r
+                   token.type === 1 /* BooleanLiteral */ ||\r
+                   token.type === 5 /* NullLiteral */;\r
+           };\r
+           Parser.prototype.parseIdentifierName = function () {\r
+               var node = this.createNode();\r
+               var token = this.nextToken();\r
+               if (!this.isIdentifierName(token)) {\r
+                   this.throwUnexpectedToken(token);\r
+               }\r
+               return this.finalize(node, new Node.Identifier(token.value));\r
+           };\r
+           Parser.prototype.parseNewExpression = function () {\r
+               var node = this.createNode();\r
+               var id = this.parseIdentifierName();\r
+               assert_1.assert(id.name === 'new', 'New expression must start with `new`');\r
+               var expr;\r
+               if (this.match('.')) {\r
+                   this.nextToken();\r
+                   if (this.lookahead.type === 3 /* Identifier */ && this.context.inFunctionBody && this.lookahead.value === 'target') {\r
+                       var property = this.parseIdentifierName();\r
+                       expr = new Node.MetaProperty(id, property);\r
+                   }\r
+                   else {\r
+                       this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+               }\r
+               else {\r
+                   var callee = this.isolateCoverGrammar(this.parseLeftHandSideExpression);\r
+                   var args = this.match('(') ? this.parseArguments() : [];\r
+                   expr = new Node.NewExpression(callee, args);\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+               }\r
+               return this.finalize(node, expr);\r
+           };\r
+           Parser.prototype.parseAsyncArgument = function () {\r
+               var arg = this.parseAssignmentExpression();\r
+               this.context.firstCoverInitializedNameError = null;\r
+               return arg;\r
+           };\r
+           Parser.prototype.parseAsyncArguments = function () {\r
+               this.expect('(');\r
+               var args = [];\r
+               if (!this.match(')')) {\r
+                   while (true) {\r
+                       var expr = this.match('...') ? this.parseSpreadElement() :\r
+                           this.isolateCoverGrammar(this.parseAsyncArgument);\r
+                       args.push(expr);\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                       this.expectCommaSeparator();\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                   }\r
+               }\r
+               this.expect(')');\r
+               return args;\r
+           };\r
+           Parser.prototype.parseLeftHandSideExpressionAllowCall = function () {\r
+               var startToken = this.lookahead;\r
+               var maybeAsync = this.matchContextualKeyword('async');\r
+               var previousAllowIn = this.context.allowIn;\r
+               this.context.allowIn = true;\r
+               var expr;\r
+               if (this.matchKeyword('super') && this.context.inFunctionBody) {\r
+                   expr = this.createNode();\r
+                   this.nextToken();\r
+                   expr = this.finalize(expr, new Node.Super());\r
+                   if (!this.match('(') && !this.match('.') && !this.match('[')) {\r
+                       this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+               }\r
+               else {\r
+                   expr = this.inheritCoverGrammar(this.matchKeyword('new') ? this.parseNewExpression : this.parsePrimaryExpression);\r
+               }\r
+               while (true) {\r
+                   if (this.match('.')) {\r
+                       this.context.isBindingElement = false;\r
+                       this.context.isAssignmentTarget = true;\r
+                       this.expect('.');\r
+                       var property = this.parseIdentifierName();\r
+                       expr = this.finalize(this.startNode(startToken), new Node.StaticMemberExpression(expr, property));\r
+                   }\r
+                   else if (this.match('(')) {\r
+                       var asyncArrow = maybeAsync && (startToken.lineNumber === this.lookahead.lineNumber);\r
+                       this.context.isBindingElement = false;\r
+                       this.context.isAssignmentTarget = false;\r
+                       var args = asyncArrow ? this.parseAsyncArguments() : this.parseArguments();\r
+                       expr = this.finalize(this.startNode(startToken), new Node.CallExpression(expr, args));\r
+                       if (asyncArrow && this.match('=>')) {\r
+                           for (var i = 0; i < args.length; ++i) {\r
+                               this.reinterpretExpressionAsPattern(args[i]);\r
+                           }\r
+                           expr = {\r
+                               type: ArrowParameterPlaceHolder,\r
+                               params: args,\r
+                               async: true\r
+                           };\r
+                       }\r
+                   }\r
+                   else if (this.match('[')) {\r
+                       this.context.isBindingElement = false;\r
+                       this.context.isAssignmentTarget = true;\r
+                       this.expect('[');\r
+                       var property = this.isolateCoverGrammar(this.parseExpression);\r
+                       this.expect(']');\r
+                       expr = this.finalize(this.startNode(startToken), new Node.ComputedMemberExpression(expr, property));\r
+                   }\r
+                   else if (this.lookahead.type === 10 /* Template */ && this.lookahead.head) {\r
+                       var quasi = this.parseTemplateLiteral();\r
+                       expr = this.finalize(this.startNode(startToken), new Node.TaggedTemplateExpression(expr, quasi));\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               this.context.allowIn = previousAllowIn;\r
+               return expr;\r
+           };\r
+           Parser.prototype.parseSuper = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('super');\r
+               if (!this.match('[') && !this.match('.')) {\r
+                   this.throwUnexpectedToken(this.lookahead);\r
+               }\r
+               return this.finalize(node, new Node.Super());\r
+           };\r
+           Parser.prototype.parseLeftHandSideExpression = function () {\r
+               assert_1.assert(this.context.allowIn, 'callee of new expression always allow in keyword.');\r
+               var node = this.startNode(this.lookahead);\r
+               var expr = (this.matchKeyword('super') && this.context.inFunctionBody) ? this.parseSuper() :\r
+                   this.inheritCoverGrammar(this.matchKeyword('new') ? this.parseNewExpression : this.parsePrimaryExpression);\r
+               while (true) {\r
+                   if (this.match('[')) {\r
+                       this.context.isBindingElement = false;\r
+                       this.context.isAssignmentTarget = true;\r
+                       this.expect('[');\r
+                       var property = this.isolateCoverGrammar(this.parseExpression);\r
+                       this.expect(']');\r
+                       expr = this.finalize(node, new Node.ComputedMemberExpression(expr, property));\r
+                   }\r
+                   else if (this.match('.')) {\r
+                       this.context.isBindingElement = false;\r
+                       this.context.isAssignmentTarget = true;\r
+                       this.expect('.');\r
+                       var property = this.parseIdentifierName();\r
+                       expr = this.finalize(node, new Node.StaticMemberExpression(expr, property));\r
+                   }\r
+                   else if (this.lookahead.type === 10 /* Template */ && this.lookahead.head) {\r
+                       var quasi = this.parseTemplateLiteral();\r
+                       expr = this.finalize(node, new Node.TaggedTemplateExpression(expr, quasi));\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-update-expressions\r
+           Parser.prototype.parseUpdateExpression = function () {\r
+               var expr;\r
+               var startToken = this.lookahead;\r
+               if (this.match('++') || this.match('--')) {\r
+                   var node = this.startNode(startToken);\r
+                   var token = this.nextToken();\r
+                   expr = this.inheritCoverGrammar(this.parseUnaryExpression);\r
+                   if (this.context.strict && expr.type === syntax_1.Syntax.Identifier && this.scanner.isRestrictedWord(expr.name)) {\r
+                       this.tolerateError(messages_1.Messages.StrictLHSPrefix);\r
+                   }\r
+                   if (!this.context.isAssignmentTarget) {\r
+                       this.tolerateError(messages_1.Messages.InvalidLHSInAssignment);\r
+                   }\r
+                   var prefix = true;\r
+                   expr = this.finalize(node, new Node.UpdateExpression(token.value, expr, prefix));\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+               }\r
+               else {\r
+                   expr = this.inheritCoverGrammar(this.parseLeftHandSideExpressionAllowCall);\r
+                   if (!this.hasLineTerminator && this.lookahead.type === 7 /* Punctuator */) {\r
+                       if (this.match('++') || this.match('--')) {\r
+                           if (this.context.strict && expr.type === syntax_1.Syntax.Identifier && this.scanner.isRestrictedWord(expr.name)) {\r
+                               this.tolerateError(messages_1.Messages.StrictLHSPostfix);\r
+                           }\r
+                           if (!this.context.isAssignmentTarget) {\r
+                               this.tolerateError(messages_1.Messages.InvalidLHSInAssignment);\r
+                           }\r
+                           this.context.isAssignmentTarget = false;\r
+                           this.context.isBindingElement = false;\r
+                           var operator = this.nextToken().value;\r
+                           var prefix = false;\r
+                           expr = this.finalize(this.startNode(startToken), new Node.UpdateExpression(operator, expr, prefix));\r
+                       }\r
+                   }\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-unary-operators\r
+           Parser.prototype.parseAwaitExpression = function () {\r
+               var node = this.createNode();\r
+               this.nextToken();\r
+               var argument = this.parseUnaryExpression();\r
+               return this.finalize(node, new Node.AwaitExpression(argument));\r
+           };\r
+           Parser.prototype.parseUnaryExpression = function () {\r
+               var expr;\r
+               if (this.match('+') || this.match('-') || this.match('~') || this.match('!') ||\r
+                   this.matchKeyword('delete') || this.matchKeyword('void') || this.matchKeyword('typeof')) {\r
+                   var node = this.startNode(this.lookahead);\r
+                   var token = this.nextToken();\r
+                   expr = this.inheritCoverGrammar(this.parseUnaryExpression);\r
+                   expr = this.finalize(node, new Node.UnaryExpression(token.value, expr));\r
+                   if (this.context.strict && expr.operator === 'delete' && expr.argument.type === syntax_1.Syntax.Identifier) {\r
+                       this.tolerateError(messages_1.Messages.StrictDelete);\r
+                   }\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+               }\r
+               else if (this.context.await && this.matchContextualKeyword('await')) {\r
+                   expr = this.parseAwaitExpression();\r
+               }\r
+               else {\r
+                   expr = this.parseUpdateExpression();\r
+               }\r
+               return expr;\r
+           };\r
+           Parser.prototype.parseExponentiationExpression = function () {\r
+               var startToken = this.lookahead;\r
+               var expr = this.inheritCoverGrammar(this.parseUnaryExpression);\r
+               if (expr.type !== syntax_1.Syntax.UnaryExpression && this.match('**')) {\r
+                   this.nextToken();\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+                   var left = expr;\r
+                   var right = this.isolateCoverGrammar(this.parseExponentiationExpression);\r
+                   expr = this.finalize(this.startNode(startToken), new Node.BinaryExpression('**', left, right));\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-exp-operator\r
+           // https://tc39.github.io/ecma262/#sec-multiplicative-operators\r
+           // https://tc39.github.io/ecma262/#sec-additive-operators\r
+           // https://tc39.github.io/ecma262/#sec-bitwise-shift-operators\r
+           // https://tc39.github.io/ecma262/#sec-relational-operators\r
+           // https://tc39.github.io/ecma262/#sec-equality-operators\r
+           // https://tc39.github.io/ecma262/#sec-binary-bitwise-operators\r
+           // https://tc39.github.io/ecma262/#sec-binary-logical-operators\r
+           Parser.prototype.binaryPrecedence = function (token) {\r
+               var op = token.value;\r
+               var precedence;\r
+               if (token.type === 7 /* Punctuator */) {\r
+                   precedence = this.operatorPrecedence[op] || 0;\r
+               }\r
+               else if (token.type === 4 /* Keyword */) {\r
+                   precedence = (op === 'instanceof' || (this.context.allowIn && op === 'in')) ? 7 : 0;\r
+               }\r
+               else {\r
+                   precedence = 0;\r
+               }\r
+               return precedence;\r
+           };\r
+           Parser.prototype.parseBinaryExpression = function () {\r
+               var startToken = this.lookahead;\r
+               var expr = this.inheritCoverGrammar(this.parseExponentiationExpression);\r
+               var token = this.lookahead;\r
+               var prec = this.binaryPrecedence(token);\r
+               if (prec > 0) {\r
+                   this.nextToken();\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+                   var markers = [startToken, this.lookahead];\r
+                   var left = expr;\r
+                   var right = this.isolateCoverGrammar(this.parseExponentiationExpression);\r
+                   var stack = [left, token.value, right];\r
+                   var precedences = [prec];\r
+                   while (true) {\r
+                       prec = this.binaryPrecedence(this.lookahead);\r
+                       if (prec <= 0) {\r
+                           break;\r
+                       }\r
+                       // Reduce: make a binary expression from the three topmost entries.\r
+                       while ((stack.length > 2) && (prec <= precedences[precedences.length - 1])) {\r
+                           right = stack.pop();\r
+                           var operator = stack.pop();\r
+                           precedences.pop();\r
+                           left = stack.pop();\r
+                           markers.pop();\r
+                           var node = this.startNode(markers[markers.length - 1]);\r
+                           stack.push(this.finalize(node, new Node.BinaryExpression(operator, left, right)));\r
+                       }\r
+                       // Shift.\r
+                       stack.push(this.nextToken().value);\r
+                       precedences.push(prec);\r
+                       markers.push(this.lookahead);\r
+                       stack.push(this.isolateCoverGrammar(this.parseExponentiationExpression));\r
+                   }\r
+                   // Final reduce to clean-up the stack.\r
+                   var i = stack.length - 1;\r
+                   expr = stack[i];\r
+                   markers.pop();\r
+                   while (i > 1) {\r
+                       var node = this.startNode(markers.pop());\r
+                       var operator = stack[i - 1];\r
+                       expr = this.finalize(node, new Node.BinaryExpression(operator, stack[i - 2], expr));\r
+                       i -= 2;\r
+                   }\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-conditional-operator\r
+           Parser.prototype.parseConditionalExpression = function () {\r
+               var startToken = this.lookahead;\r
+               var expr = this.inheritCoverGrammar(this.parseBinaryExpression);\r
+               if (this.match('?')) {\r
+                   this.nextToken();\r
+                   var previousAllowIn = this.context.allowIn;\r
+                   this.context.allowIn = true;\r
+                   var consequent = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                   this.context.allowIn = previousAllowIn;\r
+                   this.expect(':');\r
+                   var alternate = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                   expr = this.finalize(this.startNode(startToken), new Node.ConditionalExpression(expr, consequent, alternate));\r
+                   this.context.isAssignmentTarget = false;\r
+                   this.context.isBindingElement = false;\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-assignment-operators\r
+           Parser.prototype.checkPatternParam = function (options, param) {\r
+               switch (param.type) {\r
+                   case syntax_1.Syntax.Identifier:\r
+                       this.validateParam(options, param, param.name);\r
+                       break;\r
+                   case syntax_1.Syntax.RestElement:\r
+                       this.checkPatternParam(options, param.argument);\r
+                       break;\r
+                   case syntax_1.Syntax.AssignmentPattern:\r
+                       this.checkPatternParam(options, param.left);\r
+                       break;\r
+                   case syntax_1.Syntax.ArrayPattern:\r
+                       for (var i = 0; i < param.elements.length; i++) {\r
+                           if (param.elements[i] !== null) {\r
+                               this.checkPatternParam(options, param.elements[i]);\r
+                           }\r
+                       }\r
+                       break;\r
+                   case syntax_1.Syntax.ObjectPattern:\r
+                       for (var i = 0; i < param.properties.length; i++) {\r
+                           this.checkPatternParam(options, param.properties[i].value);\r
+                       }\r
+                       break;\r
+                   default:\r
+                       break;\r
+               }\r
+               options.simple = options.simple && (param instanceof Node.Identifier);\r
+           };\r
+           Parser.prototype.reinterpretAsCoverFormalsList = function (expr) {\r
+               var params = [expr];\r
+               var options;\r
+               var asyncArrow = false;\r
+               switch (expr.type) {\r
+                   case syntax_1.Syntax.Identifier:\r
+                       break;\r
+                   case ArrowParameterPlaceHolder:\r
+                       params = expr.params;\r
+                       asyncArrow = expr.async;\r
+                       break;\r
+                   default:\r
+                       return null;\r
+               }\r
+               options = {\r
+                   simple: true,\r
+                   paramSet: {}\r
+               };\r
+               for (var i = 0; i < params.length; ++i) {\r
+                   var param = params[i];\r
+                   if (param.type === syntax_1.Syntax.AssignmentPattern) {\r
+                       if (param.right.type === syntax_1.Syntax.YieldExpression) {\r
+                           if (param.right.argument) {\r
+                               this.throwUnexpectedToken(this.lookahead);\r
+                           }\r
+                           param.right.type = syntax_1.Syntax.Identifier;\r
+                           param.right.name = 'yield';\r
+                           delete param.right.argument;\r
+                           delete param.right.delegate;\r
+                       }\r
+                   }\r
+                   else if (asyncArrow && param.type === syntax_1.Syntax.Identifier && param.name === 'await') {\r
+                       this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+                   this.checkPatternParam(options, param);\r
+                   params[i] = param;\r
+               }\r
+               if (this.context.strict || !this.context.allowYield) {\r
+                   for (var i = 0; i < params.length; ++i) {\r
+                       var param = params[i];\r
+                       if (param.type === syntax_1.Syntax.YieldExpression) {\r
+                           this.throwUnexpectedToken(this.lookahead);\r
+                       }\r
+                   }\r
+               }\r
+               if (options.message === messages_1.Messages.StrictParamDupe) {\r
+                   var token = this.context.strict ? options.stricted : options.firstRestricted;\r
+                   this.throwUnexpectedToken(token, options.message);\r
+               }\r
+               return {\r
+                   simple: options.simple,\r
+                   params: params,\r
+                   stricted: options.stricted,\r
+                   firstRestricted: options.firstRestricted,\r
+                   message: options.message\r
+               };\r
+           };\r
+           Parser.prototype.parseAssignmentExpression = function () {\r
+               var expr;\r
+               if (!this.context.allowYield && this.matchKeyword('yield')) {\r
+                   expr = this.parseYieldExpression();\r
+               }\r
+               else {\r
+                   var startToken = this.lookahead;\r
+                   var token = startToken;\r
+                   expr = this.parseConditionalExpression();\r
+                   if (token.type === 3 /* Identifier */ && (token.lineNumber === this.lookahead.lineNumber) && token.value === 'async') {\r
+                       if (this.lookahead.type === 3 /* Identifier */ || this.matchKeyword('yield')) {\r
+                           var arg = this.parsePrimaryExpression();\r
+                           this.reinterpretExpressionAsPattern(arg);\r
+                           expr = {\r
+                               type: ArrowParameterPlaceHolder,\r
+                               params: [arg],\r
+                               async: true\r
+                           };\r
+                       }\r
+                   }\r
+                   if (expr.type === ArrowParameterPlaceHolder || this.match('=>')) {\r
+                       // https://tc39.github.io/ecma262/#sec-arrow-function-definitions\r
+                       this.context.isAssignmentTarget = false;\r
+                       this.context.isBindingElement = false;\r
+                       var isAsync = expr.async;\r
+                       var list = this.reinterpretAsCoverFormalsList(expr);\r
+                       if (list) {\r
+                           if (this.hasLineTerminator) {\r
+                               this.tolerateUnexpectedToken(this.lookahead);\r
+                           }\r
+                           this.context.firstCoverInitializedNameError = null;\r
+                           var previousStrict = this.context.strict;\r
+                           var previousAllowStrictDirective = this.context.allowStrictDirective;\r
+                           this.context.allowStrictDirective = list.simple;\r
+                           var previousAllowYield = this.context.allowYield;\r
+                           var previousAwait = this.context.await;\r
+                           this.context.allowYield = true;\r
+                           this.context.await = isAsync;\r
+                           var node = this.startNode(startToken);\r
+                           this.expect('=>');\r
+                           var body = void 0;\r
+                           if (this.match('{')) {\r
+                               var previousAllowIn = this.context.allowIn;\r
+                               this.context.allowIn = true;\r
+                               body = this.parseFunctionSourceElements();\r
+                               this.context.allowIn = previousAllowIn;\r
+                           }\r
+                           else {\r
+                               body = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                           }\r
+                           var expression = body.type !== syntax_1.Syntax.BlockStatement;\r
+                           if (this.context.strict && list.firstRestricted) {\r
+                               this.throwUnexpectedToken(list.firstRestricted, list.message);\r
+                           }\r
+                           if (this.context.strict && list.stricted) {\r
+                               this.tolerateUnexpectedToken(list.stricted, list.message);\r
+                           }\r
+                           expr = isAsync ? this.finalize(node, new Node.AsyncArrowFunctionExpression(list.params, body, expression)) :\r
+                               this.finalize(node, new Node.ArrowFunctionExpression(list.params, body, expression));\r
+                           this.context.strict = previousStrict;\r
+                           this.context.allowStrictDirective = previousAllowStrictDirective;\r
+                           this.context.allowYield = previousAllowYield;\r
+                           this.context.await = previousAwait;\r
+                       }\r
+                   }\r
+                   else {\r
+                       if (this.matchAssign()) {\r
+                           if (!this.context.isAssignmentTarget) {\r
+                               this.tolerateError(messages_1.Messages.InvalidLHSInAssignment);\r
+                           }\r
+                           if (this.context.strict && expr.type === syntax_1.Syntax.Identifier) {\r
+                               var id = expr;\r
+                               if (this.scanner.isRestrictedWord(id.name)) {\r
+                                   this.tolerateUnexpectedToken(token, messages_1.Messages.StrictLHSAssignment);\r
+                               }\r
+                               if (this.scanner.isStrictModeReservedWord(id.name)) {\r
+                                   this.tolerateUnexpectedToken(token, messages_1.Messages.StrictReservedWord);\r
+                               }\r
+                           }\r
+                           if (!this.match('=')) {\r
+                               this.context.isAssignmentTarget = false;\r
+                               this.context.isBindingElement = false;\r
+                           }\r
+                           else {\r
+                               this.reinterpretExpressionAsPattern(expr);\r
+                           }\r
+                           token = this.nextToken();\r
+                           var operator = token.value;\r
+                           var right = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                           expr = this.finalize(this.startNode(startToken), new Node.AssignmentExpression(operator, expr, right));\r
+                           this.context.firstCoverInitializedNameError = null;\r
+                       }\r
+                   }\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-comma-operator\r
+           Parser.prototype.parseExpression = function () {\r
+               var startToken = this.lookahead;\r
+               var expr = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+               if (this.match(',')) {\r
+                   var expressions = [];\r
+                   expressions.push(expr);\r
+                   while (this.lookahead.type !== 2 /* EOF */) {\r
+                       if (!this.match(',')) {\r
+                           break;\r
+                       }\r
+                       this.nextToken();\r
+                       expressions.push(this.isolateCoverGrammar(this.parseAssignmentExpression));\r
+                   }\r
+                   expr = this.finalize(this.startNode(startToken), new Node.SequenceExpression(expressions));\r
+               }\r
+               return expr;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-block\r
+           Parser.prototype.parseStatementListItem = function () {\r
+               var statement;\r
+               this.context.isAssignmentTarget = true;\r
+               this.context.isBindingElement = true;\r
+               if (this.lookahead.type === 4 /* Keyword */) {\r
+                   switch (this.lookahead.value) {\r
+                       case 'export':\r
+                           if (!this.context.isModule) {\r
+                               this.tolerateUnexpectedToken(this.lookahead, messages_1.Messages.IllegalExportDeclaration);\r
+                           }\r
+                           statement = this.parseExportDeclaration();\r
+                           break;\r
+                       case 'import':\r
+                           if (!this.context.isModule) {\r
+                               this.tolerateUnexpectedToken(this.lookahead, messages_1.Messages.IllegalImportDeclaration);\r
+                           }\r
+                           statement = this.parseImportDeclaration();\r
+                           break;\r
+                       case 'const':\r
+                           statement = this.parseLexicalDeclaration({ inFor: false });\r
+                           break;\r
+                       case 'function':\r
+                           statement = this.parseFunctionDeclaration();\r
+                           break;\r
+                       case 'class':\r
+                           statement = this.parseClassDeclaration();\r
+                           break;\r
+                       case 'let':\r
+                           statement = this.isLexicalDeclaration() ? this.parseLexicalDeclaration({ inFor: false }) : this.parseStatement();\r
+                           break;\r
+                       default:\r
+                           statement = this.parseStatement();\r
+                           break;\r
+                   }\r
+               }\r
+               else {\r
+                   statement = this.parseStatement();\r
+               }\r
+               return statement;\r
+           };\r
+           Parser.prototype.parseBlock = function () {\r
+               var node = this.createNode();\r
+               this.expect('{');\r
+               var block = [];\r
+               while (true) {\r
+                   if (this.match('}')) {\r
+                       break;\r
+                   }\r
+                   block.push(this.parseStatementListItem());\r
+               }\r
+               this.expect('}');\r
+               return this.finalize(node, new Node.BlockStatement(block));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-let-and-const-declarations\r
+           Parser.prototype.parseLexicalBinding = function (kind, options) {\r
+               var node = this.createNode();\r
+               var params = [];\r
+               var id = this.parsePattern(params, kind);\r
+               if (this.context.strict && id.type === syntax_1.Syntax.Identifier) {\r
+                   if (this.scanner.isRestrictedWord(id.name)) {\r
+                       this.tolerateError(messages_1.Messages.StrictVarName);\r
+                   }\r
+               }\r
+               var init = null;\r
+               if (kind === 'const') {\r
+                   if (!this.matchKeyword('in') && !this.matchContextualKeyword('of')) {\r
+                       if (this.match('=')) {\r
+                           this.nextToken();\r
+                           init = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                       }\r
+                       else {\r
+                           this.throwError(messages_1.Messages.DeclarationMissingInitializer, 'const');\r
+                       }\r
+                   }\r
+               }\r
+               else if ((!options.inFor && id.type !== syntax_1.Syntax.Identifier) || this.match('=')) {\r
+                   this.expect('=');\r
+                   init = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+               }\r
+               return this.finalize(node, new Node.VariableDeclarator(id, init));\r
+           };\r
+           Parser.prototype.parseBindingList = function (kind, options) {\r
+               var list = [this.parseLexicalBinding(kind, options)];\r
+               while (this.match(',')) {\r
+                   this.nextToken();\r
+                   list.push(this.parseLexicalBinding(kind, options));\r
+               }\r
+               return list;\r
+           };\r
+           Parser.prototype.isLexicalDeclaration = function () {\r
+               var state = this.scanner.saveState();\r
+               this.scanner.scanComments();\r
+               var next = this.scanner.lex();\r
+               this.scanner.restoreState(state);\r
+               return (next.type === 3 /* Identifier */) ||\r
+                   (next.type === 7 /* Punctuator */ && next.value === '[') ||\r
+                   (next.type === 7 /* Punctuator */ && next.value === '{') ||\r
+                   (next.type === 4 /* Keyword */ && next.value === 'let') ||\r
+                   (next.type === 4 /* Keyword */ && next.value === 'yield');\r
+           };\r
+           Parser.prototype.parseLexicalDeclaration = function (options) {\r
+               var node = this.createNode();\r
+               var kind = this.nextToken().value;\r
+               assert_1.assert(kind === 'let' || kind === 'const', 'Lexical declaration must be either let or const');\r
+               var declarations = this.parseBindingList(kind, options);\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.VariableDeclaration(declarations, kind));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-destructuring-binding-patterns\r
+           Parser.prototype.parseBindingRestElement = function (params, kind) {\r
+               var node = this.createNode();\r
+               this.expect('...');\r
+               var arg = this.parsePattern(params, kind);\r
+               return this.finalize(node, new Node.RestElement(arg));\r
+           };\r
+           Parser.prototype.parseArrayPattern = function (params, kind) {\r
+               var node = this.createNode();\r
+               this.expect('[');\r
+               var elements = [];\r
+               while (!this.match(']')) {\r
+                   if (this.match(',')) {\r
+                       this.nextToken();\r
+                       elements.push(null);\r
+                   }\r
+                   else {\r
+                       if (this.match('...')) {\r
+                           elements.push(this.parseBindingRestElement(params, kind));\r
+                           break;\r
+                       }\r
+                       else {\r
+                           elements.push(this.parsePatternWithDefault(params, kind));\r
+                       }\r
+                       if (!this.match(']')) {\r
+                           this.expect(',');\r
+                       }\r
+                   }\r
+               }\r
+               this.expect(']');\r
+               return this.finalize(node, new Node.ArrayPattern(elements));\r
+           };\r
+           Parser.prototype.parsePropertyPattern = function (params, kind) {\r
+               var node = this.createNode();\r
+               var computed = false;\r
+               var shorthand = false;\r
+               var method = false;\r
+               var key;\r
+               var value;\r
+               if (this.lookahead.type === 3 /* Identifier */) {\r
+                   var keyToken = this.lookahead;\r
+                   key = this.parseVariableIdentifier();\r
+                   var init = this.finalize(node, new Node.Identifier(keyToken.value));\r
+                   if (this.match('=')) {\r
+                       params.push(keyToken);\r
+                       shorthand = true;\r
+                       this.nextToken();\r
+                       var expr = this.parseAssignmentExpression();\r
+                       value = this.finalize(this.startNode(keyToken), new Node.AssignmentPattern(init, expr));\r
+                   }\r
+                   else if (!this.match(':')) {\r
+                       params.push(keyToken);\r
+                       shorthand = true;\r
+                       value = init;\r
+                   }\r
+                   else {\r
+                       this.expect(':');\r
+                       value = this.parsePatternWithDefault(params, kind);\r
+                   }\r
+               }\r
+               else {\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   this.expect(':');\r
+                   value = this.parsePatternWithDefault(params, kind);\r
+               }\r
+               return this.finalize(node, new Node.Property('init', key, computed, value, method, shorthand));\r
+           };\r
+           Parser.prototype.parseObjectPattern = function (params, kind) {\r
+               var node = this.createNode();\r
+               var properties = [];\r
+               this.expect('{');\r
+               while (!this.match('}')) {\r
+                   properties.push(this.parsePropertyPattern(params, kind));\r
+                   if (!this.match('}')) {\r
+                       this.expect(',');\r
+                   }\r
+               }\r
+               this.expect('}');\r
+               return this.finalize(node, new Node.ObjectPattern(properties));\r
+           };\r
+           Parser.prototype.parsePattern = function (params, kind) {\r
+               var pattern;\r
+               if (this.match('[')) {\r
+                   pattern = this.parseArrayPattern(params, kind);\r
+               }\r
+               else if (this.match('{')) {\r
+                   pattern = this.parseObjectPattern(params, kind);\r
+               }\r
+               else {\r
+                   if (this.matchKeyword('let') && (kind === 'const' || kind === 'let')) {\r
+                       this.tolerateUnexpectedToken(this.lookahead, messages_1.Messages.LetInLexicalBinding);\r
+                   }\r
+                   params.push(this.lookahead);\r
+                   pattern = this.parseVariableIdentifier(kind);\r
+               }\r
+               return pattern;\r
+           };\r
+           Parser.prototype.parsePatternWithDefault = function (params, kind) {\r
+               var startToken = this.lookahead;\r
+               var pattern = this.parsePattern(params, kind);\r
+               if (this.match('=')) {\r
+                   this.nextToken();\r
+                   var previousAllowYield = this.context.allowYield;\r
+                   this.context.allowYield = true;\r
+                   var right = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+                   this.context.allowYield = previousAllowYield;\r
+                   pattern = this.finalize(this.startNode(startToken), new Node.AssignmentPattern(pattern, right));\r
+               }\r
+               return pattern;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-variable-statement\r
+           Parser.prototype.parseVariableIdentifier = function (kind) {\r
+               var node = this.createNode();\r
+               var token = this.nextToken();\r
+               if (token.type === 4 /* Keyword */ && token.value === 'yield') {\r
+                   if (this.context.strict) {\r
+                       this.tolerateUnexpectedToken(token, messages_1.Messages.StrictReservedWord);\r
+                   }\r
+                   else if (!this.context.allowYield) {\r
+                       this.throwUnexpectedToken(token);\r
+                   }\r
+               }\r
+               else if (token.type !== 3 /* Identifier */) {\r
+                   if (this.context.strict && token.type === 4 /* Keyword */ && this.scanner.isStrictModeReservedWord(token.value)) {\r
+                       this.tolerateUnexpectedToken(token, messages_1.Messages.StrictReservedWord);\r
+                   }\r
+                   else {\r
+                       if (this.context.strict || token.value !== 'let' || kind !== 'var') {\r
+                           this.throwUnexpectedToken(token);\r
+                       }\r
+                   }\r
+               }\r
+               else if ((this.context.isModule || this.context.await) && token.type === 3 /* Identifier */ && token.value === 'await') {\r
+                   this.tolerateUnexpectedToken(token);\r
+               }\r
+               return this.finalize(node, new Node.Identifier(token.value));\r
+           };\r
+           Parser.prototype.parseVariableDeclaration = function (options) {\r
+               var node = this.createNode();\r
+               var params = [];\r
+               var id = this.parsePattern(params, 'var');\r
+               if (this.context.strict && id.type === syntax_1.Syntax.Identifier) {\r
+                   if (this.scanner.isRestrictedWord(id.name)) {\r
+                       this.tolerateError(messages_1.Messages.StrictVarName);\r
+                   }\r
+               }\r
+               var init = null;\r
+               if (this.match('=')) {\r
+                   this.nextToken();\r
+                   init = this.isolateCoverGrammar(this.parseAssignmentExpression);\r
+               }\r
+               else if (id.type !== syntax_1.Syntax.Identifier && !options.inFor) {\r
+                   this.expect('=');\r
+               }\r
+               return this.finalize(node, new Node.VariableDeclarator(id, init));\r
+           };\r
+           Parser.prototype.parseVariableDeclarationList = function (options) {\r
+               var opt = { inFor: options.inFor };\r
+               var list = [];\r
+               list.push(this.parseVariableDeclaration(opt));\r
+               while (this.match(',')) {\r
+                   this.nextToken();\r
+                   list.push(this.parseVariableDeclaration(opt));\r
+               }\r
+               return list;\r
+           };\r
+           Parser.prototype.parseVariableStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('var');\r
+               var declarations = this.parseVariableDeclarationList({ inFor: false });\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.VariableDeclaration(declarations, 'var'));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-empty-statement\r
+           Parser.prototype.parseEmptyStatement = function () {\r
+               var node = this.createNode();\r
+               this.expect(';');\r
+               return this.finalize(node, new Node.EmptyStatement());\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-expression-statement\r
+           Parser.prototype.parseExpressionStatement = function () {\r
+               var node = this.createNode();\r
+               var expr = this.parseExpression();\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.ExpressionStatement(expr));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-if-statement\r
+           Parser.prototype.parseIfClause = function () {\r
+               if (this.context.strict && this.matchKeyword('function')) {\r
+                   this.tolerateError(messages_1.Messages.StrictFunction);\r
+               }\r
+               return this.parseStatement();\r
+           };\r
+           Parser.prototype.parseIfStatement = function () {\r
+               var node = this.createNode();\r
+               var consequent;\r
+               var alternate = null;\r
+               this.expectKeyword('if');\r
+               this.expect('(');\r
+               var test = this.parseExpression();\r
+               if (!this.match(')') && this.config.tolerant) {\r
+                   this.tolerateUnexpectedToken(this.nextToken());\r
+                   consequent = this.finalize(this.createNode(), new Node.EmptyStatement());\r
+               }\r
+               else {\r
+                   this.expect(')');\r
+                   consequent = this.parseIfClause();\r
+                   if (this.matchKeyword('else')) {\r
+                       this.nextToken();\r
+                       alternate = this.parseIfClause();\r
+                   }\r
+               }\r
+               return this.finalize(node, new Node.IfStatement(test, consequent, alternate));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-do-while-statement\r
+           Parser.prototype.parseDoWhileStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('do');\r
+               var previousInIteration = this.context.inIteration;\r
+               this.context.inIteration = true;\r
+               var body = this.parseStatement();\r
+               this.context.inIteration = previousInIteration;\r
+               this.expectKeyword('while');\r
+               this.expect('(');\r
+               var test = this.parseExpression();\r
+               if (!this.match(')') && this.config.tolerant) {\r
+                   this.tolerateUnexpectedToken(this.nextToken());\r
+               }\r
+               else {\r
+                   this.expect(')');\r
+                   if (this.match(';')) {\r
+                       this.nextToken();\r
+                   }\r
+               }\r
+               return this.finalize(node, new Node.DoWhileStatement(body, test));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-while-statement\r
+           Parser.prototype.parseWhileStatement = function () {\r
+               var node = this.createNode();\r
+               var body;\r
+               this.expectKeyword('while');\r
+               this.expect('(');\r
+               var test = this.parseExpression();\r
+               if (!this.match(')') && this.config.tolerant) {\r
+                   this.tolerateUnexpectedToken(this.nextToken());\r
+                   body = this.finalize(this.createNode(), new Node.EmptyStatement());\r
+               }\r
+               else {\r
+                   this.expect(')');\r
+                   var previousInIteration = this.context.inIteration;\r
+                   this.context.inIteration = true;\r
+                   body = this.parseStatement();\r
+                   this.context.inIteration = previousInIteration;\r
+               }\r
+               return this.finalize(node, new Node.WhileStatement(test, body));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-for-statement\r
+           // https://tc39.github.io/ecma262/#sec-for-in-and-for-of-statements\r
+           Parser.prototype.parseForStatement = function () {\r
+               var init = null;\r
+               var test = null;\r
+               var update = null;\r
+               var forIn = true;\r
+               var left, right;\r
+               var node = this.createNode();\r
+               this.expectKeyword('for');\r
+               this.expect('(');\r
+               if (this.match(';')) {\r
+                   this.nextToken();\r
+               }\r
+               else {\r
+                   if (this.matchKeyword('var')) {\r
+                       init = this.createNode();\r
+                       this.nextToken();\r
+                       var previousAllowIn = this.context.allowIn;\r
+                       this.context.allowIn = false;\r
+                       var declarations = this.parseVariableDeclarationList({ inFor: true });\r
+                       this.context.allowIn = previousAllowIn;\r
+                       if (declarations.length === 1 && this.matchKeyword('in')) {\r
+                           var decl = declarations[0];\r
+                           if (decl.init && (decl.id.type === syntax_1.Syntax.ArrayPattern || decl.id.type === syntax_1.Syntax.ObjectPattern || this.context.strict)) {\r
+                               this.tolerateError(messages_1.Messages.ForInOfLoopInitializer, 'for-in');\r
+                           }\r
+                           init = this.finalize(init, new Node.VariableDeclaration(declarations, 'var'));\r
+                           this.nextToken();\r
+                           left = init;\r
+                           right = this.parseExpression();\r
+                           init = null;\r
+                       }\r
+                       else if (declarations.length === 1 && declarations[0].init === null && this.matchContextualKeyword('of')) {\r
+                           init = this.finalize(init, new Node.VariableDeclaration(declarations, 'var'));\r
+                           this.nextToken();\r
+                           left = init;\r
+                           right = this.parseAssignmentExpression();\r
+                           init = null;\r
+                           forIn = false;\r
+                       }\r
+                       else {\r
+                           init = this.finalize(init, new Node.VariableDeclaration(declarations, 'var'));\r
+                           this.expect(';');\r
+                       }\r
+                   }\r
+                   else if (this.matchKeyword('const') || this.matchKeyword('let')) {\r
+                       init = this.createNode();\r
+                       var kind = this.nextToken().value;\r
+                       if (!this.context.strict && this.lookahead.value === 'in') {\r
+                           init = this.finalize(init, new Node.Identifier(kind));\r
+                           this.nextToken();\r
+                           left = init;\r
+                           right = this.parseExpression();\r
+                           init = null;\r
+                       }\r
+                       else {\r
+                           var previousAllowIn = this.context.allowIn;\r
+                           this.context.allowIn = false;\r
+                           var declarations = this.parseBindingList(kind, { inFor: true });\r
+                           this.context.allowIn = previousAllowIn;\r
+                           if (declarations.length === 1 && declarations[0].init === null && this.matchKeyword('in')) {\r
+                               init = this.finalize(init, new Node.VariableDeclaration(declarations, kind));\r
+                               this.nextToken();\r
+                               left = init;\r
+                               right = this.parseExpression();\r
+                               init = null;\r
+                           }\r
+                           else if (declarations.length === 1 && declarations[0].init === null && this.matchContextualKeyword('of')) {\r
+                               init = this.finalize(init, new Node.VariableDeclaration(declarations, kind));\r
+                               this.nextToken();\r
+                               left = init;\r
+                               right = this.parseAssignmentExpression();\r
+                               init = null;\r
+                               forIn = false;\r
+                           }\r
+                           else {\r
+                               this.consumeSemicolon();\r
+                               init = this.finalize(init, new Node.VariableDeclaration(declarations, kind));\r
+                           }\r
+                       }\r
+                   }\r
+                   else {\r
+                       var initStartToken = this.lookahead;\r
+                       var previousAllowIn = this.context.allowIn;\r
+                       this.context.allowIn = false;\r
+                       init = this.inheritCoverGrammar(this.parseAssignmentExpression);\r
+                       this.context.allowIn = previousAllowIn;\r
+                       if (this.matchKeyword('in')) {\r
+                           if (!this.context.isAssignmentTarget || init.type === syntax_1.Syntax.AssignmentExpression) {\r
+                               this.tolerateError(messages_1.Messages.InvalidLHSInForIn);\r
+                           }\r
+                           this.nextToken();\r
+                           this.reinterpretExpressionAsPattern(init);\r
+                           left = init;\r
+                           right = this.parseExpression();\r
+                           init = null;\r
+                       }\r
+                       else if (this.matchContextualKeyword('of')) {\r
+                           if (!this.context.isAssignmentTarget || init.type === syntax_1.Syntax.AssignmentExpression) {\r
+                               this.tolerateError(messages_1.Messages.InvalidLHSInForLoop);\r
+                           }\r
+                           this.nextToken();\r
+                           this.reinterpretExpressionAsPattern(init);\r
+                           left = init;\r
+                           right = this.parseAssignmentExpression();\r
+                           init = null;\r
+                           forIn = false;\r
+                       }\r
+                       else {\r
+                           if (this.match(',')) {\r
+                               var initSeq = [init];\r
+                               while (this.match(',')) {\r
+                                   this.nextToken();\r
+                                   initSeq.push(this.isolateCoverGrammar(this.parseAssignmentExpression));\r
+                               }\r
+                               init = this.finalize(this.startNode(initStartToken), new Node.SequenceExpression(initSeq));\r
+                           }\r
+                           this.expect(';');\r
+                       }\r
+                   }\r
+               }\r
+               if (typeof left === 'undefined') {\r
+                   if (!this.match(';')) {\r
+                       test = this.parseExpression();\r
+                   }\r
+                   this.expect(';');\r
+                   if (!this.match(')')) {\r
+                       update = this.parseExpression();\r
+                   }\r
+               }\r
+               var body;\r
+               if (!this.match(')') && this.config.tolerant) {\r
+                   this.tolerateUnexpectedToken(this.nextToken());\r
+                   body = this.finalize(this.createNode(), new Node.EmptyStatement());\r
+               }\r
+               else {\r
+                   this.expect(')');\r
+                   var previousInIteration = this.context.inIteration;\r
+                   this.context.inIteration = true;\r
+                   body = this.isolateCoverGrammar(this.parseStatement);\r
+                   this.context.inIteration = previousInIteration;\r
+               }\r
+               return (typeof left === 'undefined') ?\r
+                   this.finalize(node, new Node.ForStatement(init, test, update, body)) :\r
+                   forIn ? this.finalize(node, new Node.ForInStatement(left, right, body)) :\r
+                       this.finalize(node, new Node.ForOfStatement(left, right, body));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-continue-statement\r
+           Parser.prototype.parseContinueStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('continue');\r
+               var label = null;\r
+               if (this.lookahead.type === 3 /* Identifier */ && !this.hasLineTerminator) {\r
+                   var id = this.parseVariableIdentifier();\r
+                   label = id;\r
+                   var key = '$' + id.name;\r
+                   if (!Object.prototype.hasOwnProperty.call(this.context.labelSet, key)) {\r
+                       this.throwError(messages_1.Messages.UnknownLabel, id.name);\r
+                   }\r
+               }\r
+               this.consumeSemicolon();\r
+               if (label === null && !this.context.inIteration) {\r
+                   this.throwError(messages_1.Messages.IllegalContinue);\r
+               }\r
+               return this.finalize(node, new Node.ContinueStatement(label));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-break-statement\r
+           Parser.prototype.parseBreakStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('break');\r
+               var label = null;\r
+               if (this.lookahead.type === 3 /* Identifier */ && !this.hasLineTerminator) {\r
+                   var id = this.parseVariableIdentifier();\r
+                   var key = '$' + id.name;\r
+                   if (!Object.prototype.hasOwnProperty.call(this.context.labelSet, key)) {\r
+                       this.throwError(messages_1.Messages.UnknownLabel, id.name);\r
+                   }\r
+                   label = id;\r
+               }\r
+               this.consumeSemicolon();\r
+               if (label === null && !this.context.inIteration && !this.context.inSwitch) {\r
+                   this.throwError(messages_1.Messages.IllegalBreak);\r
+               }\r
+               return this.finalize(node, new Node.BreakStatement(label));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-return-statement\r
+           Parser.prototype.parseReturnStatement = function () {\r
+               if (!this.context.inFunctionBody) {\r
+                   this.tolerateError(messages_1.Messages.IllegalReturn);\r
+               }\r
+               var node = this.createNode();\r
+               this.expectKeyword('return');\r
+               var hasArgument = !this.match(';') && !this.match('}') &&\r
+                   !this.hasLineTerminator && this.lookahead.type !== 2 /* EOF */;\r
+               var argument = hasArgument ? this.parseExpression() : null;\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.ReturnStatement(argument));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-with-statement\r
+           Parser.prototype.parseWithStatement = function () {\r
+               if (this.context.strict) {\r
+                   this.tolerateError(messages_1.Messages.StrictModeWith);\r
+               }\r
+               var node = this.createNode();\r
+               var body;\r
+               this.expectKeyword('with');\r
+               this.expect('(');\r
+               var object = this.parseExpression();\r
+               if (!this.match(')') && this.config.tolerant) {\r
+                   this.tolerateUnexpectedToken(this.nextToken());\r
+                   body = this.finalize(this.createNode(), new Node.EmptyStatement());\r
+               }\r
+               else {\r
+                   this.expect(')');\r
+                   body = this.parseStatement();\r
+               }\r
+               return this.finalize(node, new Node.WithStatement(object, body));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-switch-statement\r
+           Parser.prototype.parseSwitchCase = function () {\r
+               var node = this.createNode();\r
+               var test;\r
+               if (this.matchKeyword('default')) {\r
+                   this.nextToken();\r
+                   test = null;\r
+               }\r
+               else {\r
+                   this.expectKeyword('case');\r
+                   test = this.parseExpression();\r
+               }\r
+               this.expect(':');\r
+               var consequent = [];\r
+               while (true) {\r
+                   if (this.match('}') || this.matchKeyword('default') || this.matchKeyword('case')) {\r
+                       break;\r
+                   }\r
+                   consequent.push(this.parseStatementListItem());\r
+               }\r
+               return this.finalize(node, new Node.SwitchCase(test, consequent));\r
+           };\r
+           Parser.prototype.parseSwitchStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('switch');\r
+               this.expect('(');\r
+               var discriminant = this.parseExpression();\r
+               this.expect(')');\r
+               var previousInSwitch = this.context.inSwitch;\r
+               this.context.inSwitch = true;\r
+               var cases = [];\r
+               var defaultFound = false;\r
+               this.expect('{');\r
+               while (true) {\r
+                   if (this.match('}')) {\r
+                       break;\r
+                   }\r
+                   var clause = this.parseSwitchCase();\r
+                   if (clause.test === null) {\r
+                       if (defaultFound) {\r
+                           this.throwError(messages_1.Messages.MultipleDefaultsInSwitch);\r
+                       }\r
+                       defaultFound = true;\r
+                   }\r
+                   cases.push(clause);\r
+               }\r
+               this.expect('}');\r
+               this.context.inSwitch = previousInSwitch;\r
+               return this.finalize(node, new Node.SwitchStatement(discriminant, cases));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-labelled-statements\r
+           Parser.prototype.parseLabelledStatement = function () {\r
+               var node = this.createNode();\r
+               var expr = this.parseExpression();\r
+               var statement;\r
+               if ((expr.type === syntax_1.Syntax.Identifier) && this.match(':')) {\r
+                   this.nextToken();\r
+                   var id = expr;\r
+                   var key = '$' + id.name;\r
+                   if (Object.prototype.hasOwnProperty.call(this.context.labelSet, key)) {\r
+                       this.throwError(messages_1.Messages.Redeclaration, 'Label', id.name);\r
+                   }\r
+                   this.context.labelSet[key] = true;\r
+                   var body = void 0;\r
+                   if (this.matchKeyword('class')) {\r
+                       this.tolerateUnexpectedToken(this.lookahead);\r
+                       body = this.parseClassDeclaration();\r
+                   }\r
+                   else if (this.matchKeyword('function')) {\r
+                       var token = this.lookahead;\r
+                       var declaration = this.parseFunctionDeclaration();\r
+                       if (this.context.strict) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.StrictFunction);\r
+                       }\r
+                       else if (declaration.generator) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.GeneratorInLegacyContext);\r
+                       }\r
+                       body = declaration;\r
+                   }\r
+                   else {\r
+                       body = this.parseStatement();\r
+                   }\r
+                   delete this.context.labelSet[key];\r
+                   statement = new Node.LabeledStatement(id, body);\r
+               }\r
+               else {\r
+                   this.consumeSemicolon();\r
+                   statement = new Node.ExpressionStatement(expr);\r
+               }\r
+               return this.finalize(node, statement);\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-throw-statement\r
+           Parser.prototype.parseThrowStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('throw');\r
+               if (this.hasLineTerminator) {\r
+                   this.throwError(messages_1.Messages.NewlineAfterThrow);\r
+               }\r
+               var argument = this.parseExpression();\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.ThrowStatement(argument));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-try-statement\r
+           Parser.prototype.parseCatchClause = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('catch');\r
+               this.expect('(');\r
+               if (this.match(')')) {\r
+                   this.throwUnexpectedToken(this.lookahead);\r
+               }\r
+               var params = [];\r
+               var param = this.parsePattern(params);\r
+               var paramMap = {};\r
+               for (var i = 0; i < params.length; i++) {\r
+                   var key = '$' + params[i].value;\r
+                   if (Object.prototype.hasOwnProperty.call(paramMap, key)) {\r
+                       this.tolerateError(messages_1.Messages.DuplicateBinding, params[i].value);\r
+                   }\r
+                   paramMap[key] = true;\r
+               }\r
+               if (this.context.strict && param.type === syntax_1.Syntax.Identifier) {\r
+                   if (this.scanner.isRestrictedWord(param.name)) {\r
+                       this.tolerateError(messages_1.Messages.StrictCatchVariable);\r
+                   }\r
+               }\r
+               this.expect(')');\r
+               var body = this.parseBlock();\r
+               return this.finalize(node, new Node.CatchClause(param, body));\r
+           };\r
+           Parser.prototype.parseFinallyClause = function () {\r
+               this.expectKeyword('finally');\r
+               return this.parseBlock();\r
+           };\r
+           Parser.prototype.parseTryStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('try');\r
+               var block = this.parseBlock();\r
+               var handler = this.matchKeyword('catch') ? this.parseCatchClause() : null;\r
+               var finalizer = this.matchKeyword('finally') ? this.parseFinallyClause() : null;\r
+               if (!handler && !finalizer) {\r
+                   this.throwError(messages_1.Messages.NoCatchOrFinally);\r
+               }\r
+               return this.finalize(node, new Node.TryStatement(block, handler, finalizer));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-debugger-statement\r
+           Parser.prototype.parseDebuggerStatement = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('debugger');\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.DebuggerStatement());\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-ecmascript-language-statements-and-declarations\r
+           Parser.prototype.parseStatement = function () {\r
+               var statement;\r
+               switch (this.lookahead.type) {\r
+                   case 1 /* BooleanLiteral */:\r
+                   case 5 /* NullLiteral */:\r
+                   case 6 /* NumericLiteral */:\r
+                   case 8 /* StringLiteral */:\r
+                   case 10 /* Template */:\r
+                   case 9 /* RegularExpression */:\r
+                       statement = this.parseExpressionStatement();\r
+                       break;\r
+                   case 7 /* Punctuator */:\r
+                       var value = this.lookahead.value;\r
+                       if (value === '{') {\r
+                           statement = this.parseBlock();\r
+                       }\r
+                       else if (value === '(') {\r
+                           statement = this.parseExpressionStatement();\r
+                       }\r
+                       else if (value === ';') {\r
+                           statement = this.parseEmptyStatement();\r
+                       }\r
+                       else {\r
+                           statement = this.parseExpressionStatement();\r
+                       }\r
+                       break;\r
+                   case 3 /* Identifier */:\r
+                       statement = this.matchAsyncFunction() ? this.parseFunctionDeclaration() : this.parseLabelledStatement();\r
+                       break;\r
+                   case 4 /* Keyword */:\r
+                       switch (this.lookahead.value) {\r
+                           case 'break':\r
+                               statement = this.parseBreakStatement();\r
+                               break;\r
+                           case 'continue':\r
+                               statement = this.parseContinueStatement();\r
+                               break;\r
+                           case 'debugger':\r
+                               statement = this.parseDebuggerStatement();\r
+                               break;\r
+                           case 'do':\r
+                               statement = this.parseDoWhileStatement();\r
+                               break;\r
+                           case 'for':\r
+                               statement = this.parseForStatement();\r
+                               break;\r
+                           case 'function':\r
+                               statement = this.parseFunctionDeclaration();\r
+                               break;\r
+                           case 'if':\r
+                               statement = this.parseIfStatement();\r
+                               break;\r
+                           case 'return':\r
+                               statement = this.parseReturnStatement();\r
+                               break;\r
+                           case 'switch':\r
+                               statement = this.parseSwitchStatement();\r
+                               break;\r
+                           case 'throw':\r
+                               statement = this.parseThrowStatement();\r
+                               break;\r
+                           case 'try':\r
+                               statement = this.parseTryStatement();\r
+                               break;\r
+                           case 'var':\r
+                               statement = this.parseVariableStatement();\r
+                               break;\r
+                           case 'while':\r
+                               statement = this.parseWhileStatement();\r
+                               break;\r
+                           case 'with':\r
+                               statement = this.parseWithStatement();\r
+                               break;\r
+                           default:\r
+                               statement = this.parseExpressionStatement();\r
+                               break;\r
+                       }\r
+                       break;\r
+                   default:\r
+                       statement = this.throwUnexpectedToken(this.lookahead);\r
+               }\r
+               return statement;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-function-definitions\r
+           Parser.prototype.parseFunctionSourceElements = function () {\r
+               var node = this.createNode();\r
+               this.expect('{');\r
+               var body = this.parseDirectivePrologues();\r
+               var previousLabelSet = this.context.labelSet;\r
+               var previousInIteration = this.context.inIteration;\r
+               var previousInSwitch = this.context.inSwitch;\r
+               var previousInFunctionBody = this.context.inFunctionBody;\r
+               this.context.labelSet = {};\r
+               this.context.inIteration = false;\r
+               this.context.inSwitch = false;\r
+               this.context.inFunctionBody = true;\r
+               while (this.lookahead.type !== 2 /* EOF */) {\r
+                   if (this.match('}')) {\r
+                       break;\r
+                   }\r
+                   body.push(this.parseStatementListItem());\r
+               }\r
+               this.expect('}');\r
+               this.context.labelSet = previousLabelSet;\r
+               this.context.inIteration = previousInIteration;\r
+               this.context.inSwitch = previousInSwitch;\r
+               this.context.inFunctionBody = previousInFunctionBody;\r
+               return this.finalize(node, new Node.BlockStatement(body));\r
+           };\r
+           Parser.prototype.validateParam = function (options, param, name) {\r
+               var key = '$' + name;\r
+               if (this.context.strict) {\r
+                   if (this.scanner.isRestrictedWord(name)) {\r
+                       options.stricted = param;\r
+                       options.message = messages_1.Messages.StrictParamName;\r
+                   }\r
+                   if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {\r
+                       options.stricted = param;\r
+                       options.message = messages_1.Messages.StrictParamDupe;\r
+                   }\r
+               }\r
+               else if (!options.firstRestricted) {\r
+                   if (this.scanner.isRestrictedWord(name)) {\r
+                       options.firstRestricted = param;\r
+                       options.message = messages_1.Messages.StrictParamName;\r
+                   }\r
+                   else if (this.scanner.isStrictModeReservedWord(name)) {\r
+                       options.firstRestricted = param;\r
+                       options.message = messages_1.Messages.StrictReservedWord;\r
+                   }\r
+                   else if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {\r
+                       options.stricted = param;\r
+                       options.message = messages_1.Messages.StrictParamDupe;\r
+                   }\r
+               }\r
+               /* istanbul ignore next */\r
+               if (typeof Object.defineProperty === 'function') {\r
+                   Object.defineProperty(options.paramSet, key, { value: true, enumerable: true, writable: true, configurable: true });\r
+               }\r
+               else {\r
+                   options.paramSet[key] = true;\r
+               }\r
+           };\r
+           Parser.prototype.parseRestElement = function (params) {\r
+               var node = this.createNode();\r
+               this.expect('...');\r
+               var arg = this.parsePattern(params);\r
+               if (this.match('=')) {\r
+                   this.throwError(messages_1.Messages.DefaultRestParameter);\r
+               }\r
+               if (!this.match(')')) {\r
+                   this.throwError(messages_1.Messages.ParameterAfterRestParameter);\r
+               }\r
+               return this.finalize(node, new Node.RestElement(arg));\r
+           };\r
+           Parser.prototype.parseFormalParameter = function (options) {\r
+               var params = [];\r
+               var param = this.match('...') ? this.parseRestElement(params) : this.parsePatternWithDefault(params);\r
+               for (var i = 0; i < params.length; i++) {\r
+                   this.validateParam(options, params[i], params[i].value);\r
+               }\r
+               options.simple = options.simple && (param instanceof Node.Identifier);\r
+               options.params.push(param);\r
+           };\r
+           Parser.prototype.parseFormalParameters = function (firstRestricted) {\r
+               var options;\r
+               options = {\r
+                   simple: true,\r
+                   params: [],\r
+                   firstRestricted: firstRestricted\r
+               };\r
+               this.expect('(');\r
+               if (!this.match(')')) {\r
+                   options.paramSet = {};\r
+                   while (this.lookahead.type !== 2 /* EOF */) {\r
+                       this.parseFormalParameter(options);\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                       this.expect(',');\r
+                       if (this.match(')')) {\r
+                           break;\r
+                       }\r
+                   }\r
+               }\r
+               this.expect(')');\r
+               return {\r
+                   simple: options.simple,\r
+                   params: options.params,\r
+                   stricted: options.stricted,\r
+                   firstRestricted: options.firstRestricted,\r
+                   message: options.message\r
+               };\r
+           };\r
+           Parser.prototype.matchAsyncFunction = function () {\r
+               var match = this.matchContextualKeyword('async');\r
+               if (match) {\r
+                   var state = this.scanner.saveState();\r
+                   this.scanner.scanComments();\r
+                   var next = this.scanner.lex();\r
+                   this.scanner.restoreState(state);\r
+                   match = (state.lineNumber === next.lineNumber) && (next.type === 4 /* Keyword */) && (next.value === 'function');\r
+               }\r
+               return match;\r
+           };\r
+           Parser.prototype.parseFunctionDeclaration = function (identifierIsOptional) {\r
+               var node = this.createNode();\r
+               var isAsync = this.matchContextualKeyword('async');\r
+               if (isAsync) {\r
+                   this.nextToken();\r
+               }\r
+               this.expectKeyword('function');\r
+               var isGenerator = isAsync ? false : this.match('*');\r
+               if (isGenerator) {\r
+                   this.nextToken();\r
+               }\r
+               var message;\r
+               var id = null;\r
+               var firstRestricted = null;\r
+               if (!identifierIsOptional || !this.match('(')) {\r
+                   var token = this.lookahead;\r
+                   id = this.parseVariableIdentifier();\r
+                   if (this.context.strict) {\r
+                       if (this.scanner.isRestrictedWord(token.value)) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.StrictFunctionName);\r
+                       }\r
+                   }\r
+                   else {\r
+                       if (this.scanner.isRestrictedWord(token.value)) {\r
+                           firstRestricted = token;\r
+                           message = messages_1.Messages.StrictFunctionName;\r
+                       }\r
+                       else if (this.scanner.isStrictModeReservedWord(token.value)) {\r
+                           firstRestricted = token;\r
+                           message = messages_1.Messages.StrictReservedWord;\r
+                       }\r
+                   }\r
+               }\r
+               var previousAllowAwait = this.context.await;\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.await = isAsync;\r
+               this.context.allowYield = !isGenerator;\r
+               var formalParameters = this.parseFormalParameters(firstRestricted);\r
+               var params = formalParameters.params;\r
+               var stricted = formalParameters.stricted;\r
+               firstRestricted = formalParameters.firstRestricted;\r
+               if (formalParameters.message) {\r
+                   message = formalParameters.message;\r
+               }\r
+               var previousStrict = this.context.strict;\r
+               var previousAllowStrictDirective = this.context.allowStrictDirective;\r
+               this.context.allowStrictDirective = formalParameters.simple;\r
+               var body = this.parseFunctionSourceElements();\r
+               if (this.context.strict && firstRestricted) {\r
+                   this.throwUnexpectedToken(firstRestricted, message);\r
+               }\r
+               if (this.context.strict && stricted) {\r
+                   this.tolerateUnexpectedToken(stricted, message);\r
+               }\r
+               this.context.strict = previousStrict;\r
+               this.context.allowStrictDirective = previousAllowStrictDirective;\r
+               this.context.await = previousAllowAwait;\r
+               this.context.allowYield = previousAllowYield;\r
+               return isAsync ? this.finalize(node, new Node.AsyncFunctionDeclaration(id, params, body)) :\r
+                   this.finalize(node, new Node.FunctionDeclaration(id, params, body, isGenerator));\r
+           };\r
+           Parser.prototype.parseFunctionExpression = function () {\r
+               var node = this.createNode();\r
+               var isAsync = this.matchContextualKeyword('async');\r
+               if (isAsync) {\r
+                   this.nextToken();\r
+               }\r
+               this.expectKeyword('function');\r
+               var isGenerator = isAsync ? false : this.match('*');\r
+               if (isGenerator) {\r
+                   this.nextToken();\r
+               }\r
+               var message;\r
+               var id = null;\r
+               var firstRestricted;\r
+               var previousAllowAwait = this.context.await;\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.await = isAsync;\r
+               this.context.allowYield = !isGenerator;\r
+               if (!this.match('(')) {\r
+                   var token = this.lookahead;\r
+                   id = (!this.context.strict && !isGenerator && this.matchKeyword('yield')) ? this.parseIdentifierName() : this.parseVariableIdentifier();\r
+                   if (this.context.strict) {\r
+                       if (this.scanner.isRestrictedWord(token.value)) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.StrictFunctionName);\r
+                       }\r
+                   }\r
+                   else {\r
+                       if (this.scanner.isRestrictedWord(token.value)) {\r
+                           firstRestricted = token;\r
+                           message = messages_1.Messages.StrictFunctionName;\r
+                       }\r
+                       else if (this.scanner.isStrictModeReservedWord(token.value)) {\r
+                           firstRestricted = token;\r
+                           message = messages_1.Messages.StrictReservedWord;\r
+                       }\r
+                   }\r
+               }\r
+               var formalParameters = this.parseFormalParameters(firstRestricted);\r
+               var params = formalParameters.params;\r
+               var stricted = formalParameters.stricted;\r
+               firstRestricted = formalParameters.firstRestricted;\r
+               if (formalParameters.message) {\r
+                   message = formalParameters.message;\r
+               }\r
+               var previousStrict = this.context.strict;\r
+               var previousAllowStrictDirective = this.context.allowStrictDirective;\r
+               this.context.allowStrictDirective = formalParameters.simple;\r
+               var body = this.parseFunctionSourceElements();\r
+               if (this.context.strict && firstRestricted) {\r
+                   this.throwUnexpectedToken(firstRestricted, message);\r
+               }\r
+               if (this.context.strict && stricted) {\r
+                   this.tolerateUnexpectedToken(stricted, message);\r
+               }\r
+               this.context.strict = previousStrict;\r
+               this.context.allowStrictDirective = previousAllowStrictDirective;\r
+               this.context.await = previousAllowAwait;\r
+               this.context.allowYield = previousAllowYield;\r
+               return isAsync ? this.finalize(node, new Node.AsyncFunctionExpression(id, params, body)) :\r
+                   this.finalize(node, new Node.FunctionExpression(id, params, body, isGenerator));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-directive-prologues-and-the-use-strict-directive\r
+           Parser.prototype.parseDirective = function () {\r
+               var token = this.lookahead;\r
+               var node = this.createNode();\r
+               var expr = this.parseExpression();\r
+               var directive = (expr.type === syntax_1.Syntax.Literal) ? this.getTokenRaw(token).slice(1, -1) : null;\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, directive ? new Node.Directive(expr, directive) : new Node.ExpressionStatement(expr));\r
+           };\r
+           Parser.prototype.parseDirectivePrologues = function () {\r
+               var firstRestricted = null;\r
+               var body = [];\r
+               while (true) {\r
+                   var token = this.lookahead;\r
+                   if (token.type !== 8 /* StringLiteral */) {\r
+                       break;\r
+                   }\r
+                   var statement = this.parseDirective();\r
+                   body.push(statement);\r
+                   var directive = statement.directive;\r
+                   if (typeof directive !== 'string') {\r
+                       break;\r
+                   }\r
+                   if (directive === 'use strict') {\r
+                       this.context.strict = true;\r
+                       if (firstRestricted) {\r
+                           this.tolerateUnexpectedToken(firstRestricted, messages_1.Messages.StrictOctalLiteral);\r
+                       }\r
+                       if (!this.context.allowStrictDirective) {\r
+                           this.tolerateUnexpectedToken(token, messages_1.Messages.IllegalLanguageModeDirective);\r
+                       }\r
+                   }\r
+                   else {\r
+                       if (!firstRestricted && token.octal) {\r
+                           firstRestricted = token;\r
+                       }\r
+                   }\r
+               }\r
+               return body;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-method-definitions\r
+           Parser.prototype.qualifiedPropertyName = function (token) {\r
+               switch (token.type) {\r
+                   case 3 /* Identifier */:\r
+                   case 8 /* StringLiteral */:\r
+                   case 1 /* BooleanLiteral */:\r
+                   case 5 /* NullLiteral */:\r
+                   case 6 /* NumericLiteral */:\r
+                   case 4 /* Keyword */:\r
+                       return true;\r
+                   case 7 /* Punctuator */:\r
+                       return token.value === '[';\r
+                   default:\r
+                       break;\r
+               }\r
+               return false;\r
+           };\r
+           Parser.prototype.parseGetterMethod = function () {\r
+               var node = this.createNode();\r
+               var isGenerator = false;\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.allowYield = false;\r
+               var formalParameters = this.parseFormalParameters();\r
+               if (formalParameters.params.length > 0) {\r
+                   this.tolerateError(messages_1.Messages.BadGetterArity);\r
+               }\r
+               var method = this.parsePropertyMethod(formalParameters);\r
+               this.context.allowYield = previousAllowYield;\r
+               return this.finalize(node, new Node.FunctionExpression(null, formalParameters.params, method, isGenerator));\r
+           };\r
+           Parser.prototype.parseSetterMethod = function () {\r
+               var node = this.createNode();\r
+               var isGenerator = false;\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.allowYield = false;\r
+               var formalParameters = this.parseFormalParameters();\r
+               if (formalParameters.params.length !== 1) {\r
+                   this.tolerateError(messages_1.Messages.BadSetterArity);\r
+               }\r
+               else if (formalParameters.params[0] instanceof Node.RestElement) {\r
+                   this.tolerateError(messages_1.Messages.BadSetterRestParameter);\r
+               }\r
+               var method = this.parsePropertyMethod(formalParameters);\r
+               this.context.allowYield = previousAllowYield;\r
+               return this.finalize(node, new Node.FunctionExpression(null, formalParameters.params, method, isGenerator));\r
+           };\r
+           Parser.prototype.parseGeneratorMethod = function () {\r
+               var node = this.createNode();\r
+               var isGenerator = true;\r
+               var previousAllowYield = this.context.allowYield;\r
+               this.context.allowYield = true;\r
+               var params = this.parseFormalParameters();\r
+               this.context.allowYield = false;\r
+               var method = this.parsePropertyMethod(params);\r
+               this.context.allowYield = previousAllowYield;\r
+               return this.finalize(node, new Node.FunctionExpression(null, params.params, method, isGenerator));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-generator-function-definitions\r
+           Parser.prototype.isStartOfExpression = function () {\r
+               var start = true;\r
+               var value = this.lookahead.value;\r
+               switch (this.lookahead.type) {\r
+                   case 7 /* Punctuator */:\r
+                       start = (value === '[') || (value === '(') || (value === '{') ||\r
+                           (value === '+') || (value === '-') ||\r
+                           (value === '!') || (value === '~') ||\r
+                           (value === '++') || (value === '--') ||\r
+                           (value === '/') || (value === '/='); // regular expression literal\r
+                       break;\r
+                   case 4 /* Keyword */:\r
+                       start = (value === 'class') || (value === 'delete') ||\r
+                           (value === 'function') || (value === 'let') || (value === 'new') ||\r
+                           (value === 'super') || (value === 'this') || (value === 'typeof') ||\r
+                           (value === 'void') || (value === 'yield');\r
+                       break;\r
+                   default:\r
+                       break;\r
+               }\r
+               return start;\r
+           };\r
+           Parser.prototype.parseYieldExpression = function () {\r
+               var node = this.createNode();\r
+               this.expectKeyword('yield');\r
+               var argument = null;\r
+               var delegate = false;\r
+               if (!this.hasLineTerminator) {\r
+                   var previousAllowYield = this.context.allowYield;\r
+                   this.context.allowYield = false;\r
+                   delegate = this.match('*');\r
+                   if (delegate) {\r
+                       this.nextToken();\r
+                       argument = this.parseAssignmentExpression();\r
+                   }\r
+                   else if (this.isStartOfExpression()) {\r
+                       argument = this.parseAssignmentExpression();\r
+                   }\r
+                   this.context.allowYield = previousAllowYield;\r
+               }\r
+               return this.finalize(node, new Node.YieldExpression(argument, delegate));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-class-definitions\r
+           Parser.prototype.parseClassElement = function (hasConstructor) {\r
+               var token = this.lookahead;\r
+               var node = this.createNode();\r
+               var kind = '';\r
+               var key = null;\r
+               var value = null;\r
+               var computed = false;\r
+               var method = false;\r
+               var isStatic = false;\r
+               var isAsync = false;\r
+               if (this.match('*')) {\r
+                   this.nextToken();\r
+               }\r
+               else {\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   var id = key;\r
+                   if (id.name === 'static' && (this.qualifiedPropertyName(this.lookahead) || this.match('*'))) {\r
+                       token = this.lookahead;\r
+                       isStatic = true;\r
+                       computed = this.match('[');\r
+                       if (this.match('*')) {\r
+                           this.nextToken();\r
+                       }\r
+                       else {\r
+                           key = this.parseObjectPropertyKey();\r
+                       }\r
+                   }\r
+                   if ((token.type === 3 /* Identifier */) && !this.hasLineTerminator && (token.value === 'async')) {\r
+                       var punctuator = this.lookahead.value;\r
+                       if (punctuator !== ':' && punctuator !== '(' && punctuator !== '*') {\r
+                           isAsync = true;\r
+                           token = this.lookahead;\r
+                           key = this.parseObjectPropertyKey();\r
+                           if (token.type === 3 /* Identifier */) {\r
+                               if (token.value === 'get' || token.value === 'set') {\r
+                                   this.tolerateUnexpectedToken(token);\r
+                               }\r
+                               else if (token.value === 'constructor') {\r
+                                   this.tolerateUnexpectedToken(token, messages_1.Messages.ConstructorIsAsync);\r
+                               }\r
+                           }\r
+                       }\r
+                   }\r
+               }\r
+               var lookaheadPropertyKey = this.qualifiedPropertyName(this.lookahead);\r
+               if (token.type === 3 /* Identifier */) {\r
+                   if (token.value === 'get' && lookaheadPropertyKey) {\r
+                       kind = 'get';\r
+                       computed = this.match('[');\r
+                       key = this.parseObjectPropertyKey();\r
+                       this.context.allowYield = false;\r
+                       value = this.parseGetterMethod();\r
+                   }\r
+                   else if (token.value === 'set' && lookaheadPropertyKey) {\r
+                       kind = 'set';\r
+                       computed = this.match('[');\r
+                       key = this.parseObjectPropertyKey();\r
+                       value = this.parseSetterMethod();\r
+                   }\r
+               }\r
+               else if (token.type === 7 /* Punctuator */ && token.value === '*' && lookaheadPropertyKey) {\r
+                   kind = 'init';\r
+                   computed = this.match('[');\r
+                   key = this.parseObjectPropertyKey();\r
+                   value = this.parseGeneratorMethod();\r
+                   method = true;\r
+               }\r
+               if (!kind && key && this.match('(')) {\r
+                   kind = 'init';\r
+                   value = isAsync ? this.parsePropertyMethodAsyncFunction() : this.parsePropertyMethodFunction();\r
+                   method = true;\r
+               }\r
+               if (!kind) {\r
+                   this.throwUnexpectedToken(this.lookahead);\r
+               }\r
+               if (kind === 'init') {\r
+                   kind = 'method';\r
+               }\r
+               if (!computed) {\r
+                   if (isStatic && this.isPropertyKey(key, 'prototype')) {\r
+                       this.throwUnexpectedToken(token, messages_1.Messages.StaticPrototype);\r
+                   }\r
+                   if (!isStatic && this.isPropertyKey(key, 'constructor')) {\r
+                       if (kind !== 'method' || !method || (value && value.generator)) {\r
+                           this.throwUnexpectedToken(token, messages_1.Messages.ConstructorSpecialMethod);\r
+                       }\r
+                       if (hasConstructor.value) {\r
+                           this.throwUnexpectedToken(token, messages_1.Messages.DuplicateConstructor);\r
+                       }\r
+                       else {\r
+                           hasConstructor.value = true;\r
+                       }\r
+                       kind = 'constructor';\r
+                   }\r
+               }\r
+               return this.finalize(node, new Node.MethodDefinition(key, computed, value, kind, isStatic));\r
+           };\r
+           Parser.prototype.parseClassElementList = function () {\r
+               var body = [];\r
+               var hasConstructor = { value: false };\r
+               this.expect('{');\r
+               while (!this.match('}')) {\r
+                   if (this.match(';')) {\r
+                       this.nextToken();\r
+                   }\r
+                   else {\r
+                       body.push(this.parseClassElement(hasConstructor));\r
+                   }\r
+               }\r
+               this.expect('}');\r
+               return body;\r
+           };\r
+           Parser.prototype.parseClassBody = function () {\r
+               var node = this.createNode();\r
+               var elementList = this.parseClassElementList();\r
+               return this.finalize(node, new Node.ClassBody(elementList));\r
+           };\r
+           Parser.prototype.parseClassDeclaration = function (identifierIsOptional) {\r
+               var node = this.createNode();\r
+               var previousStrict = this.context.strict;\r
+               this.context.strict = true;\r
+               this.expectKeyword('class');\r
+               var id = (identifierIsOptional && (this.lookahead.type !== 3 /* Identifier */)) ? null : this.parseVariableIdentifier();\r
+               var superClass = null;\r
+               if (this.matchKeyword('extends')) {\r
+                   this.nextToken();\r
+                   superClass = this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall);\r
+               }\r
+               var classBody = this.parseClassBody();\r
+               this.context.strict = previousStrict;\r
+               return this.finalize(node, new Node.ClassDeclaration(id, superClass, classBody));\r
+           };\r
+           Parser.prototype.parseClassExpression = function () {\r
+               var node = this.createNode();\r
+               var previousStrict = this.context.strict;\r
+               this.context.strict = true;\r
+               this.expectKeyword('class');\r
+               var id = (this.lookahead.type === 3 /* Identifier */) ? this.parseVariableIdentifier() : null;\r
+               var superClass = null;\r
+               if (this.matchKeyword('extends')) {\r
+                   this.nextToken();\r
+                   superClass = this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall);\r
+               }\r
+               var classBody = this.parseClassBody();\r
+               this.context.strict = previousStrict;\r
+               return this.finalize(node, new Node.ClassExpression(id, superClass, classBody));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-scripts\r
+           // https://tc39.github.io/ecma262/#sec-modules\r
+           Parser.prototype.parseModule = function () {\r
+               this.context.strict = true;\r
+               this.context.isModule = true;\r
+               var node = this.createNode();\r
+               var body = this.parseDirectivePrologues();\r
+               while (this.lookahead.type !== 2 /* EOF */) {\r
+                   body.push(this.parseStatementListItem());\r
+               }\r
+               return this.finalize(node, new Node.Module(body));\r
+           };\r
+           Parser.prototype.parseScript = function () {\r
+               var node = this.createNode();\r
+               var body = this.parseDirectivePrologues();\r
+               while (this.lookahead.type !== 2 /* EOF */) {\r
+                   body.push(this.parseStatementListItem());\r
+               }\r
+               return this.finalize(node, new Node.Script(body));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-imports\r
+           Parser.prototype.parseModuleSpecifier = function () {\r
+               var node = this.createNode();\r
+               if (this.lookahead.type !== 8 /* StringLiteral */) {\r
+                   this.throwError(messages_1.Messages.InvalidModuleSpecifier);\r
+               }\r
+               var token = this.nextToken();\r
+               var raw = this.getTokenRaw(token);\r
+               return this.finalize(node, new Node.Literal(token.value, raw));\r
+           };\r
+           // import {<foo as bar>} ...;\r
+           Parser.prototype.parseImportSpecifier = function () {\r
+               var node = this.createNode();\r
+               var imported;\r
+               var local;\r
+               if (this.lookahead.type === 3 /* Identifier */) {\r
+                   imported = this.parseVariableIdentifier();\r
+                   local = imported;\r
+                   if (this.matchContextualKeyword('as')) {\r
+                       this.nextToken();\r
+                       local = this.parseVariableIdentifier();\r
+                   }\r
+               }\r
+               else {\r
+                   imported = this.parseIdentifierName();\r
+                   local = imported;\r
+                   if (this.matchContextualKeyword('as')) {\r
+                       this.nextToken();\r
+                       local = this.parseVariableIdentifier();\r
+                   }\r
+                   else {\r
+                       this.throwUnexpectedToken(this.nextToken());\r
+                   }\r
+               }\r
+               return this.finalize(node, new Node.ImportSpecifier(local, imported));\r
+           };\r
+           // {foo, bar as bas}\r
+           Parser.prototype.parseNamedImports = function () {\r
+               this.expect('{');\r
+               var specifiers = [];\r
+               while (!this.match('}')) {\r
+                   specifiers.push(this.parseImportSpecifier());\r
+                   if (!this.match('}')) {\r
+                       this.expect(',');\r
+                   }\r
+               }\r
+               this.expect('}');\r
+               return specifiers;\r
+           };\r
+           // import <foo> ...;\r
+           Parser.prototype.parseImportDefaultSpecifier = function () {\r
+               var node = this.createNode();\r
+               var local = this.parseIdentifierName();\r
+               return this.finalize(node, new Node.ImportDefaultSpecifier(local));\r
+           };\r
+           // import <* as foo> ...;\r
+           Parser.prototype.parseImportNamespaceSpecifier = function () {\r
+               var node = this.createNode();\r
+               this.expect('*');\r
+               if (!this.matchContextualKeyword('as')) {\r
+                   this.throwError(messages_1.Messages.NoAsAfterImportNamespace);\r
+               }\r
+               this.nextToken();\r
+               var local = this.parseIdentifierName();\r
+               return this.finalize(node, new Node.ImportNamespaceSpecifier(local));\r
+           };\r
+           Parser.prototype.parseImportDeclaration = function () {\r
+               if (this.context.inFunctionBody) {\r
+                   this.throwError(messages_1.Messages.IllegalImportDeclaration);\r
+               }\r
+               var node = this.createNode();\r
+               this.expectKeyword('import');\r
+               var src;\r
+               var specifiers = [];\r
+               if (this.lookahead.type === 8 /* StringLiteral */) {\r
+                   // import 'foo';\r
+                   src = this.parseModuleSpecifier();\r
+               }\r
+               else {\r
+                   if (this.match('{')) {\r
+                       // import {bar}\r
+                       specifiers = specifiers.concat(this.parseNamedImports());\r
+                   }\r
+                   else if (this.match('*')) {\r
+                       // import * as foo\r
+                       specifiers.push(this.parseImportNamespaceSpecifier());\r
+                   }\r
+                   else if (this.isIdentifierName(this.lookahead) && !this.matchKeyword('default')) {\r
+                       // import foo\r
+                       specifiers.push(this.parseImportDefaultSpecifier());\r
+                       if (this.match(',')) {\r
+                           this.nextToken();\r
+                           if (this.match('*')) {\r
+                               // import foo, * as foo\r
+                               specifiers.push(this.parseImportNamespaceSpecifier());\r
+                           }\r
+                           else if (this.match('{')) {\r
+                               // import foo, {bar}\r
+                               specifiers = specifiers.concat(this.parseNamedImports());\r
+                           }\r
+                           else {\r
+                               this.throwUnexpectedToken(this.lookahead);\r
+                           }\r
+                       }\r
+                   }\r
+                   else {\r
+                       this.throwUnexpectedToken(this.nextToken());\r
+                   }\r
+                   if (!this.matchContextualKeyword('from')) {\r
+                       var message = this.lookahead.value ? messages_1.Messages.UnexpectedToken : messages_1.Messages.MissingFromClause;\r
+                       this.throwError(message, this.lookahead.value);\r
+                   }\r
+                   this.nextToken();\r
+                   src = this.parseModuleSpecifier();\r
+               }\r
+               this.consumeSemicolon();\r
+               return this.finalize(node, new Node.ImportDeclaration(specifiers, src));\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-exports\r
+           Parser.prototype.parseExportSpecifier = function () {\r
+               var node = this.createNode();\r
+               var local = this.parseIdentifierName();\r
+               var exported = local;\r
+               if (this.matchContextualKeyword('as')) {\r
+                   this.nextToken();\r
+                   exported = this.parseIdentifierName();\r
+               }\r
+               return this.finalize(node, new Node.ExportSpecifier(local, exported));\r
+           };\r
+           Parser.prototype.parseExportDeclaration = function () {\r
+               if (this.context.inFunctionBody) {\r
+                   this.throwError(messages_1.Messages.IllegalExportDeclaration);\r
+               }\r
+               var node = this.createNode();\r
+               this.expectKeyword('export');\r
+               var exportDeclaration;\r
+               if (this.matchKeyword('default')) {\r
+                   // export default ...\r
+                   this.nextToken();\r
+                   if (this.matchKeyword('function')) {\r
+                       // export default function foo () {}\r
+                       // export default function () {}\r
+                       var declaration = this.parseFunctionDeclaration(true);\r
+                       exportDeclaration = this.finalize(node, new Node.ExportDefaultDeclaration(declaration));\r
+                   }\r
+                   else if (this.matchKeyword('class')) {\r
+                       // export default class foo {}\r
+                       var declaration = this.parseClassDeclaration(true);\r
+                       exportDeclaration = this.finalize(node, new Node.ExportDefaultDeclaration(declaration));\r
+                   }\r
+                   else if (this.matchContextualKeyword('async')) {\r
+                       // export default async function f () {}\r
+                       // export default async function () {}\r
+                       // export default async x => x\r
+                       var declaration = this.matchAsyncFunction() ? this.parseFunctionDeclaration(true) : this.parseAssignmentExpression();\r
+                       exportDeclaration = this.finalize(node, new Node.ExportDefaultDeclaration(declaration));\r
+                   }\r
+                   else {\r
+                       if (this.matchContextualKeyword('from')) {\r
+                           this.throwError(messages_1.Messages.UnexpectedToken, this.lookahead.value);\r
+                       }\r
+                       // export default {};\r
+                       // export default [];\r
+                       // export default (1 + 2);\r
+                       var declaration = this.match('{') ? this.parseObjectInitializer() :\r
+                           this.match('[') ? this.parseArrayInitializer() : this.parseAssignmentExpression();\r
+                       this.consumeSemicolon();\r
+                       exportDeclaration = this.finalize(node, new Node.ExportDefaultDeclaration(declaration));\r
+                   }\r
+               }\r
+               else if (this.match('*')) {\r
+                   // export * from 'foo';\r
+                   this.nextToken();\r
+                   if (!this.matchContextualKeyword('from')) {\r
+                       var message = this.lookahead.value ? messages_1.Messages.UnexpectedToken : messages_1.Messages.MissingFromClause;\r
+                       this.throwError(message, this.lookahead.value);\r
+                   }\r
+                   this.nextToken();\r
+                   var src = this.parseModuleSpecifier();\r
+                   this.consumeSemicolon();\r
+                   exportDeclaration = this.finalize(node, new Node.ExportAllDeclaration(src));\r
+               }\r
+               else if (this.lookahead.type === 4 /* Keyword */) {\r
+                   // export var f = 1;\r
+                   var declaration = void 0;\r
+                   switch (this.lookahead.value) {\r
+                       case 'let':\r
+                       case 'const':\r
+                           declaration = this.parseLexicalDeclaration({ inFor: false });\r
+                           break;\r
+                       case 'var':\r
+                       case 'class':\r
+                       case 'function':\r
+                           declaration = this.parseStatementListItem();\r
+                           break;\r
+                       default:\r
+                           this.throwUnexpectedToken(this.lookahead);\r
+                   }\r
+                   exportDeclaration = this.finalize(node, new Node.ExportNamedDeclaration(declaration, [], null));\r
+               }\r
+               else if (this.matchAsyncFunction()) {\r
+                   var declaration = this.parseFunctionDeclaration();\r
+                   exportDeclaration = this.finalize(node, new Node.ExportNamedDeclaration(declaration, [], null));\r
+               }\r
+               else {\r
+                   var specifiers = [];\r
+                   var source = null;\r
+                   var isExportFromIdentifier = false;\r
+                   this.expect('{');\r
+                   while (!this.match('}')) {\r
+                       isExportFromIdentifier = isExportFromIdentifier || this.matchKeyword('default');\r
+                       specifiers.push(this.parseExportSpecifier());\r
+                       if (!this.match('}')) {\r
+                           this.expect(',');\r
+                       }\r
+                   }\r
+                   this.expect('}');\r
+                   if (this.matchContextualKeyword('from')) {\r
+                       // export {default} from 'foo';\r
+                       // export {foo} from 'foo';\r
+                       this.nextToken();\r
+                       source = this.parseModuleSpecifier();\r
+                       this.consumeSemicolon();\r
+                   }\r
+                   else if (isExportFromIdentifier) {\r
+                       // export {default}; // missing fromClause\r
+                       var message = this.lookahead.value ? messages_1.Messages.UnexpectedToken : messages_1.Messages.MissingFromClause;\r
+                       this.throwError(message, this.lookahead.value);\r
+                   }\r
+                   else {\r
+                       // export {foo};\r
+                       this.consumeSemicolon();\r
+                   }\r
+                   exportDeclaration = this.finalize(node, new Node.ExportNamedDeclaration(null, specifiers, source));\r
+               }\r
+               return exportDeclaration;\r
+           };\r
+           return Parser;\r
+       }());\r
+       exports.Parser = Parser;\r
+
+
+/***/ },
+/* 9 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       // Ensure the condition is true, otherwise throw an error.\r
+       // This is only to have a better contract semantic, i.e. another safety net\r
+       // to catch a logic error. The condition shall be fulfilled in normal case.\r
+       // Do NOT use this to enforce a certain condition on any user input.\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       function assert(condition, message) {\r
+           /* istanbul ignore if */\r
+           if (!condition) {\r
+               throw new Error('ASSERT: ' + message);\r
+           }\r
+       }\r
+       exports.assert = assert;\r
+
+
+/***/ },
+/* 10 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       /* tslint:disable:max-classes-per-file */\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var ErrorHandler = (function () {\r
+           function ErrorHandler() {\r
+               this.errors = [];\r
+               this.tolerant = false;\r
+           }\r
+           ErrorHandler.prototype.recordError = function (error) {\r
+               this.errors.push(error);\r
+           };\r
+           ErrorHandler.prototype.tolerate = function (error) {\r
+               if (this.tolerant) {\r
+                   this.recordError(error);\r
+               }\r
+               else {\r
+                   throw error;\r
+               }\r
+           };\r
+           ErrorHandler.prototype.constructError = function (msg, column) {\r
+               var error = new Error(msg);\r
+               try {\r
+                   throw error;\r
+               }\r
+               catch (base) {\r
+                   /* istanbul ignore else */\r
+                   if (Object.create && Object.defineProperty) {\r
+                       error = Object.create(base);\r
+                       Object.defineProperty(error, 'column', { value: column });\r
+                   }\r
+               }\r
+               /* istanbul ignore next */\r
+               return error;\r
+           };\r
+           ErrorHandler.prototype.createError = function (index, line, col, description) {\r
+               var msg = 'Line ' + line + ': ' + description;\r
+               var error = this.constructError(msg, col);\r
+               error.index = index;\r
+               error.lineNumber = line;\r
+               error.description = description;\r
+               return error;\r
+           };\r
+           ErrorHandler.prototype.throwError = function (index, line, col, description) {\r
+               throw this.createError(index, line, col, description);\r
+           };\r
+           ErrorHandler.prototype.tolerateError = function (index, line, col, description) {\r
+               var error = this.createError(index, line, col, description);\r
+               if (this.tolerant) {\r
+                   this.recordError(error);\r
+               }\r
+               else {\r
+                   throw error;\r
+               }\r
+           };\r
+           return ErrorHandler;\r
+       }());\r
+       exports.ErrorHandler = ErrorHandler;\r
+
+
+/***/ },
+/* 11 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       // Error messages should be identical to V8.\r
+       exports.Messages = {\r
+           BadGetterArity: 'Getter must not have any formal parameters',\r
+           BadSetterArity: 'Setter must have exactly one formal parameter',\r
+           BadSetterRestParameter: 'Setter function argument must not be a rest parameter',\r
+           ConstructorIsAsync: 'Class constructor may not be an async method',\r
+           ConstructorSpecialMethod: 'Class constructor may not be an accessor',\r
+           DeclarationMissingInitializer: 'Missing initializer in %0 declaration',\r
+           DefaultRestParameter: 'Unexpected token =',\r
+           DuplicateBinding: 'Duplicate binding %0',\r
+           DuplicateConstructor: 'A class may only have one constructor',\r
+           DuplicateProtoProperty: 'Duplicate __proto__ fields are not allowed in object literals',\r
+           ForInOfLoopInitializer: '%0 loop variable declaration may not have an initializer',\r
+           GeneratorInLegacyContext: 'Generator declarations are not allowed in legacy contexts',\r
+           IllegalBreak: 'Illegal break statement',\r
+           IllegalContinue: 'Illegal continue statement',\r
+           IllegalExportDeclaration: 'Unexpected token',\r
+           IllegalImportDeclaration: 'Unexpected token',\r
+           IllegalLanguageModeDirective: 'Illegal \'use strict\' directive in function with non-simple parameter list',\r
+           IllegalReturn: 'Illegal return statement',\r
+           InvalidEscapedReservedWord: 'Keyword must not contain escaped characters',\r
+           InvalidHexEscapeSequence: 'Invalid hexadecimal escape sequence',\r
+           InvalidLHSInAssignment: 'Invalid left-hand side in assignment',\r
+           InvalidLHSInForIn: 'Invalid left-hand side in for-in',\r
+           InvalidLHSInForLoop: 'Invalid left-hand side in for-loop',\r
+           InvalidModuleSpecifier: 'Unexpected token',\r
+           InvalidRegExp: 'Invalid regular expression',\r
+           LetInLexicalBinding: 'let is disallowed as a lexically bound name',\r
+           MissingFromClause: 'Unexpected token',\r
+           MultipleDefaultsInSwitch: 'More than one default clause in switch statement',\r
+           NewlineAfterThrow: 'Illegal newline after throw',\r
+           NoAsAfterImportNamespace: 'Unexpected token',\r
+           NoCatchOrFinally: 'Missing catch or finally after try',\r
+           ParameterAfterRestParameter: 'Rest parameter must be last formal parameter',\r
+           Redeclaration: '%0 \'%1\' has already been declared',\r
+           StaticPrototype: 'Classes may not have static property named prototype',\r
+           StrictCatchVariable: 'Catch variable may not be eval or arguments in strict mode',\r
+           StrictDelete: 'Delete of an unqualified identifier in strict mode.',\r
+           StrictFunction: 'In strict mode code, functions can only be declared at top level or inside a block',\r
+           StrictFunctionName: 'Function name may not be eval or arguments in strict mode',\r
+           StrictLHSAssignment: 'Assignment to eval or arguments is not allowed in strict mode',\r
+           StrictLHSPostfix: 'Postfix increment/decrement may not have eval or arguments operand in strict mode',\r
+           StrictLHSPrefix: 'Prefix increment/decrement may not have eval or arguments operand in strict mode',\r
+           StrictModeWith: 'Strict mode code may not include a with statement',\r
+           StrictOctalLiteral: 'Octal literals are not allowed in strict mode.',\r
+           StrictParamDupe: 'Strict mode function may not have duplicate parameter names',\r
+           StrictParamName: 'Parameter name eval or arguments is not allowed in strict mode',\r
+           StrictReservedWord: 'Use of future reserved word in strict mode',\r
+           StrictVarName: 'Variable name may not be eval or arguments in strict mode',\r
+           TemplateOctalLiteral: 'Octal literals are not allowed in template strings.',\r
+           UnexpectedEOS: 'Unexpected end of input',\r
+           UnexpectedIdentifier: 'Unexpected identifier',\r
+           UnexpectedNumber: 'Unexpected number',\r
+           UnexpectedReserved: 'Unexpected reserved word',\r
+           UnexpectedString: 'Unexpected string',\r
+           UnexpectedTemplate: 'Unexpected quasi %0',\r
+           UnexpectedToken: 'Unexpected token %0',\r
+           UnexpectedTokenIllegal: 'Unexpected token ILLEGAL',\r
+           UnknownLabel: 'Undefined label \'%0\'',\r
+           UnterminatedRegExp: 'Invalid regular expression: missing /'\r
+       };\r
+
+
+/***/ },
+/* 12 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var assert_1 = __webpack_require__(9);\r
+       var character_1 = __webpack_require__(4);\r
+       var messages_1 = __webpack_require__(11);\r
+       function hexValue(ch) {\r
+           return '0123456789abcdef'.indexOf(ch.toLowerCase());\r
+       }\r
+       function octalValue(ch) {\r
+           return '01234567'.indexOf(ch);\r
+       }\r
+       var Scanner = (function () {\r
+           function Scanner(code, handler) {\r
+               this.source = code;\r
+               this.errorHandler = handler;\r
+               this.trackComment = false;\r
+               this.length = code.length;\r
+               this.index = 0;\r
+               this.lineNumber = (code.length > 0) ? 1 : 0;\r
+               this.lineStart = 0;\r
+               this.curlyStack = [];\r
+           }\r
+           Scanner.prototype.saveState = function () {\r
+               return {\r
+                   index: this.index,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart\r
+               };\r
+           };\r
+           Scanner.prototype.restoreState = function (state) {\r
+               this.index = state.index;\r
+               this.lineNumber = state.lineNumber;\r
+               this.lineStart = state.lineStart;\r
+           };\r
+           Scanner.prototype.eof = function () {\r
+               return this.index >= this.length;\r
+           };\r
+           Scanner.prototype.throwUnexpectedToken = function (message) {\r
+               if (message === void 0) { message = messages_1.Messages.UnexpectedTokenIllegal; }\r
+               return this.errorHandler.throwError(this.index, this.lineNumber, this.index - this.lineStart + 1, message);\r
+           };\r
+           Scanner.prototype.tolerateUnexpectedToken = function (message) {\r
+               if (message === void 0) { message = messages_1.Messages.UnexpectedTokenIllegal; }\r
+               this.errorHandler.tolerateError(this.index, this.lineNumber, this.index - this.lineStart + 1, message);\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-comments\r
+           Scanner.prototype.skipSingleLineComment = function (offset) {\r
+               var comments = [];\r
+               var start, loc;\r
+               if (this.trackComment) {\r
+                   comments = [];\r
+                   start = this.index - offset;\r
+                   loc = {\r
+                       start: {\r
+                           line: this.lineNumber,\r
+                           column: this.index - this.lineStart - offset\r
+                       },\r
+                       end: {}\r
+                   };\r
+               }\r
+               while (!this.eof()) {\r
+                   var ch = this.source.charCodeAt(this.index);\r
+                   ++this.index;\r
+                   if (character_1.Character.isLineTerminator(ch)) {\r
+                       if (this.trackComment) {\r
+                           loc.end = {\r
+                               line: this.lineNumber,\r
+                               column: this.index - this.lineStart - 1\r
+                           };\r
+                           var entry = {\r
+                               multiLine: false,\r
+                               slice: [start + offset, this.index - 1],\r
+                               range: [start, this.index - 1],\r
+                               loc: loc\r
+                           };\r
+                           comments.push(entry);\r
+                       }\r
+                       if (ch === 13 && this.source.charCodeAt(this.index) === 10) {\r
+                           ++this.index;\r
+                       }\r
+                       ++this.lineNumber;\r
+                       this.lineStart = this.index;\r
+                       return comments;\r
+                   }\r
+               }\r
+               if (this.trackComment) {\r
+                   loc.end = {\r
+                       line: this.lineNumber,\r
+                       column: this.index - this.lineStart\r
+                   };\r
+                   var entry = {\r
+                       multiLine: false,\r
+                       slice: [start + offset, this.index],\r
+                       range: [start, this.index],\r
+                       loc: loc\r
+                   };\r
+                   comments.push(entry);\r
+               }\r
+               return comments;\r
+           };\r
+           Scanner.prototype.skipMultiLineComment = function () {\r
+               var comments = [];\r
+               var start, loc;\r
+               if (this.trackComment) {\r
+                   comments = [];\r
+                   start = this.index - 2;\r
+                   loc = {\r
+                       start: {\r
+                           line: this.lineNumber,\r
+                           column: this.index - this.lineStart - 2\r
+                       },\r
+                       end: {}\r
+                   };\r
+               }\r
+               while (!this.eof()) {\r
+                   var ch = this.source.charCodeAt(this.index);\r
+                   if (character_1.Character.isLineTerminator(ch)) {\r
+                       if (ch === 0x0D && this.source.charCodeAt(this.index + 1) === 0x0A) {\r
+                           ++this.index;\r
+                       }\r
+                       ++this.lineNumber;\r
+                       ++this.index;\r
+                       this.lineStart = this.index;\r
+                   }\r
+                   else if (ch === 0x2A) {\r
+                       // Block comment ends with '*/'.\r
+                       if (this.source.charCodeAt(this.index + 1) === 0x2F) {\r
+                           this.index += 2;\r
+                           if (this.trackComment) {\r
+                               loc.end = {\r
+                                   line: this.lineNumber,\r
+                                   column: this.index - this.lineStart\r
+                               };\r
+                               var entry = {\r
+                                   multiLine: true,\r
+                                   slice: [start + 2, this.index - 2],\r
+                                   range: [start, this.index],\r
+                                   loc: loc\r
+                               };\r
+                               comments.push(entry);\r
+                           }\r
+                           return comments;\r
+                       }\r
+                       ++this.index;\r
+                   }\r
+                   else {\r
+                       ++this.index;\r
+                   }\r
+               }\r
+               // Ran off the end of the file - the whole thing is a comment\r
+               if (this.trackComment) {\r
+                   loc.end = {\r
+                       line: this.lineNumber,\r
+                       column: this.index - this.lineStart\r
+                   };\r
+                   var entry = {\r
+                       multiLine: true,\r
+                       slice: [start + 2, this.index],\r
+                       range: [start, this.index],\r
+                       loc: loc\r
+                   };\r
+                   comments.push(entry);\r
+               }\r
+               this.tolerateUnexpectedToken();\r
+               return comments;\r
+           };\r
+           Scanner.prototype.scanComments = function () {\r
+               var comments;\r
+               if (this.trackComment) {\r
+                   comments = [];\r
+               }\r
+               var start = (this.index === 0);\r
+               while (!this.eof()) {\r
+                   var ch = this.source.charCodeAt(this.index);\r
+                   if (character_1.Character.isWhiteSpace(ch)) {\r
+                       ++this.index;\r
+                   }\r
+                   else if (character_1.Character.isLineTerminator(ch)) {\r
+                       ++this.index;\r
+                       if (ch === 0x0D && this.source.charCodeAt(this.index) === 0x0A) {\r
+                           ++this.index;\r
+                       }\r
+                       ++this.lineNumber;\r
+                       this.lineStart = this.index;\r
+                       start = true;\r
+                   }\r
+                   else if (ch === 0x2F) {\r
+                       ch = this.source.charCodeAt(this.index + 1);\r
+                       if (ch === 0x2F) {\r
+                           this.index += 2;\r
+                           var comment = this.skipSingleLineComment(2);\r
+                           if (this.trackComment) {\r
+                               comments = comments.concat(comment);\r
+                           }\r
+                           start = true;\r
+                       }\r
+                       else if (ch === 0x2A) {\r
+                           this.index += 2;\r
+                           var comment = this.skipMultiLineComment();\r
+                           if (this.trackComment) {\r
+                               comments = comments.concat(comment);\r
+                           }\r
+                       }\r
+                       else {\r
+                           break;\r
+                       }\r
+                   }\r
+                   else if (start && ch === 0x2D) {\r
+                       // U+003E is '>'\r
+                       if ((this.source.charCodeAt(this.index + 1) === 0x2D) && (this.source.charCodeAt(this.index + 2) === 0x3E)) {\r
+                           // '-->' is a single-line comment\r
+                           this.index += 3;\r
+                           var comment = this.skipSingleLineComment(3);\r
+                           if (this.trackComment) {\r
+                               comments = comments.concat(comment);\r
+                           }\r
+                       }\r
+                       else {\r
+                           break;\r
+                       }\r
+                   }\r
+                   else if (ch === 0x3C) {\r
+                       if (this.source.slice(this.index + 1, this.index + 4) === '!--') {\r
+                           this.index += 4; // `<!--`\r
+                           var comment = this.skipSingleLineComment(4);\r
+                           if (this.trackComment) {\r
+                               comments = comments.concat(comment);\r
+                           }\r
+                       }\r
+                       else {\r
+                           break;\r
+                       }\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               return comments;\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-future-reserved-words\r
+           Scanner.prototype.isFutureReservedWord = function (id) {\r
+               switch (id) {\r
+                   case 'enum':\r
+                   case 'export':\r
+                   case 'import':\r
+                   case 'super':\r
+                       return true;\r
+                   default:\r
+                       return false;\r
+               }\r
+           };\r
+           Scanner.prototype.isStrictModeReservedWord = function (id) {\r
+               switch (id) {\r
+                   case 'implements':\r
+                   case 'interface':\r
+                   case 'package':\r
+                   case 'private':\r
+                   case 'protected':\r
+                   case 'public':\r
+                   case 'static':\r
+                   case 'yield':\r
+                   case 'let':\r
+                       return true;\r
+                   default:\r
+                       return false;\r
+               }\r
+           };\r
+           Scanner.prototype.isRestrictedWord = function (id) {\r
+               return id === 'eval' || id === 'arguments';\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-keywords\r
+           Scanner.prototype.isKeyword = function (id) {\r
+               switch (id.length) {\r
+                   case 2:\r
+                       return (id === 'if') || (id === 'in') || (id === 'do');\r
+                   case 3:\r
+                       return (id === 'var') || (id === 'for') || (id === 'new') ||\r
+                           (id === 'try') || (id === 'let');\r
+                   case 4:\r
+                       return (id === 'this') || (id === 'else') || (id === 'case') ||\r
+                           (id === 'void') || (id === 'with') || (id === 'enum');\r
+                   case 5:\r
+                       return (id === 'while') || (id === 'break') || (id === 'catch') ||\r
+                           (id === 'throw') || (id === 'const') || (id === 'yield') ||\r
+                           (id === 'class') || (id === 'super');\r
+                   case 6:\r
+                       return (id === 'return') || (id === 'typeof') || (id === 'delete') ||\r
+                           (id === 'switch') || (id === 'export') || (id === 'import');\r
+                   case 7:\r
+                       return (id === 'default') || (id === 'finally') || (id === 'extends');\r
+                   case 8:\r
+                       return (id === 'function') || (id === 'continue') || (id === 'debugger');\r
+                   case 10:\r
+                       return (id === 'instanceof');\r
+                   default:\r
+                       return false;\r
+               }\r
+           };\r
+           Scanner.prototype.codePointAt = function (i) {\r
+               var cp = this.source.charCodeAt(i);\r
+               if (cp >= 0xD800 && cp <= 0xDBFF) {\r
+                   var second = this.source.charCodeAt(i + 1);\r
+                   if (second >= 0xDC00 && second <= 0xDFFF) {\r
+                       var first = cp;\r
+                       cp = (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\r
+                   }\r
+               }\r
+               return cp;\r
+           };\r
+           Scanner.prototype.scanHexEscape = function (prefix) {\r
+               var len = (prefix === 'u') ? 4 : 2;\r
+               var code = 0;\r
+               for (var i = 0; i < len; ++i) {\r
+                   if (!this.eof() && character_1.Character.isHexDigit(this.source.charCodeAt(this.index))) {\r
+                       code = code * 16 + hexValue(this.source[this.index++]);\r
+                   }\r
+                   else {\r
+                       return null;\r
+                   }\r
+               }\r
+               return String.fromCharCode(code);\r
+           };\r
+           Scanner.prototype.scanUnicodeCodePointEscape = function () {\r
+               var ch = this.source[this.index];\r
+               var code = 0;\r
+               // At least, one hex digit is required.\r
+               if (ch === '}') {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               while (!this.eof()) {\r
+                   ch = this.source[this.index++];\r
+                   if (!character_1.Character.isHexDigit(ch.charCodeAt(0))) {\r
+                       break;\r
+                   }\r
+                   code = code * 16 + hexValue(ch);\r
+               }\r
+               if (code > 0x10FFFF || ch !== '}') {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return character_1.Character.fromCodePoint(code);\r
+           };\r
+           Scanner.prototype.getIdentifier = function () {\r
+               var start = this.index++;\r
+               while (!this.eof()) {\r
+                   var ch = this.source.charCodeAt(this.index);\r
+                   if (ch === 0x5C) {\r
+                       // Blackslash (U+005C) marks Unicode escape sequence.\r
+                       this.index = start;\r
+                       return this.getComplexIdentifier();\r
+                   }\r
+                   else if (ch >= 0xD800 && ch < 0xDFFF) {\r
+                       // Need to handle surrogate pairs.\r
+                       this.index = start;\r
+                       return this.getComplexIdentifier();\r
+                   }\r
+                   if (character_1.Character.isIdentifierPart(ch)) {\r
+                       ++this.index;\r
+                   }\r
+                   else {\r
+                       break;\r
+                   }\r
+               }\r
+               return this.source.slice(start, this.index);\r
+           };\r
+           Scanner.prototype.getComplexIdentifier = function () {\r
+               var cp = this.codePointAt(this.index);\r
+               var id = character_1.Character.fromCodePoint(cp);\r
+               this.index += id.length;\r
+               // '\u' (U+005C, U+0075) denotes an escaped character.\r
+               var ch;\r
+               if (cp === 0x5C) {\r
+                   if (this.source.charCodeAt(this.index) !== 0x75) {\r
+                       this.throwUnexpectedToken();\r
+                   }\r
+                   ++this.index;\r
+                   if (this.source[this.index] === '{') {\r
+                       ++this.index;\r
+                       ch = this.scanUnicodeCodePointEscape();\r
+                   }\r
+                   else {\r
+                       ch = this.scanHexEscape('u');\r
+                       if (ch === null || ch === '\\' || !character_1.Character.isIdentifierStart(ch.charCodeAt(0))) {\r
+                           this.throwUnexpectedToken();\r
+                       }\r
+                   }\r
+                   id = ch;\r
+               }\r
+               while (!this.eof()) {\r
+                   cp = this.codePointAt(this.index);\r
+                   if (!character_1.Character.isIdentifierPart(cp)) {\r
+                       break;\r
+                   }\r
+                   ch = character_1.Character.fromCodePoint(cp);\r
+                   id += ch;\r
+                   this.index += ch.length;\r
+                   // '\u' (U+005C, U+0075) denotes an escaped character.\r
+                   if (cp === 0x5C) {\r
+                       id = id.substr(0, id.length - 1);\r
+                       if (this.source.charCodeAt(this.index) !== 0x75) {\r
+                           this.throwUnexpectedToken();\r
+                       }\r
+                       ++this.index;\r
+                       if (this.source[this.index] === '{') {\r
+                           ++this.index;\r
+                           ch = this.scanUnicodeCodePointEscape();\r
+                       }\r
+                       else {\r
+                           ch = this.scanHexEscape('u');\r
+                           if (ch === null || ch === '\\' || !character_1.Character.isIdentifierPart(ch.charCodeAt(0))) {\r
+                               this.throwUnexpectedToken();\r
+                           }\r
+                       }\r
+                       id += ch;\r
+                   }\r
+               }\r
+               return id;\r
+           };\r
+           Scanner.prototype.octalToDecimal = function (ch) {\r
+               // \0 is not octal escape sequence\r
+               var octal = (ch !== '0');\r
+               var code = octalValue(ch);\r
+               if (!this.eof() && character_1.Character.isOctalDigit(this.source.charCodeAt(this.index))) {\r
+                   octal = true;\r
+                   code = code * 8 + octalValue(this.source[this.index++]);\r
+                   // 3 digits are only allowed when string starts\r
+                   // with 0, 1, 2, 3\r
+                   if ('0123'.indexOf(ch) >= 0 && !this.eof() && character_1.Character.isOctalDigit(this.source.charCodeAt(this.index))) {\r
+                       code = code * 8 + octalValue(this.source[this.index++]);\r
+                   }\r
+               }\r
+               return {\r
+                   code: code,\r
+                   octal: octal\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-names-and-keywords\r
+           Scanner.prototype.scanIdentifier = function () {\r
+               var type;\r
+               var start = this.index;\r
+               // Backslash (U+005C) starts an escaped character.\r
+               var id = (this.source.charCodeAt(start) === 0x5C) ? this.getComplexIdentifier() : this.getIdentifier();\r
+               // There is no keyword or literal with only one character.\r
+               // Thus, it must be an identifier.\r
+               if (id.length === 1) {\r
+                   type = 3 /* Identifier */;\r
+               }\r
+               else if (this.isKeyword(id)) {\r
+                   type = 4 /* Keyword */;\r
+               }\r
+               else if (id === 'null') {\r
+                   type = 5 /* NullLiteral */;\r
+               }\r
+               else if (id === 'true' || id === 'false') {\r
+                   type = 1 /* BooleanLiteral */;\r
+               }\r
+               else {\r
+                   type = 3 /* Identifier */;\r
+               }\r
+               if (type !== 3 /* Identifier */ && (start + id.length !== this.index)) {\r
+                   var restore = this.index;\r
+                   this.index = start;\r
+                   this.tolerateUnexpectedToken(messages_1.Messages.InvalidEscapedReservedWord);\r
+                   this.index = restore;\r
+               }\r
+               return {\r
+                   type: type,\r
+                   value: id,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-punctuators\r
+           Scanner.prototype.scanPunctuator = function () {\r
+               var start = this.index;\r
+               // Check for most common single-character punctuators.\r
+               var str = this.source[this.index];\r
+               switch (str) {\r
+                   case '(':\r
+                   case '{':\r
+                       if (str === '{') {\r
+                           this.curlyStack.push('{');\r
+                       }\r
+                       ++this.index;\r
+                       break;\r
+                   case '.':\r
+                       ++this.index;\r
+                       if (this.source[this.index] === '.' && this.source[this.index + 1] === '.') {\r
+                           // Spread operator: ...\r
+                           this.index += 2;\r
+                           str = '...';\r
+                       }\r
+                       break;\r
+                   case '}':\r
+                       ++this.index;\r
+                       this.curlyStack.pop();\r
+                       break;\r
+                   case ')':\r
+                   case ';':\r
+                   case ',':\r
+                   case '[':\r
+                   case ']':\r
+                   case ':':\r
+                   case '?':\r
+                   case '~':\r
+                       ++this.index;\r
+                       break;\r
+                   default:\r
+                       // 4-character punctuator.\r
+                       str = this.source.substr(this.index, 4);\r
+                       if (str === '>>>=') {\r
+                           this.index += 4;\r
+                       }\r
+                       else {\r
+                           // 3-character punctuators.\r
+                           str = str.substr(0, 3);\r
+                           if (str === '===' || str === '!==' || str === '>>>' ||\r
+                               str === '<<=' || str === '>>=' || str === '**=') {\r
+                               this.index += 3;\r
+                           }\r
+                           else {\r
+                               // 2-character punctuators.\r
+                               str = str.substr(0, 2);\r
+                               if (str === '&&' || str === '||' || str === '==' || str === '!=' ||\r
+                                   str === '+=' || str === '-=' || str === '*=' || str === '/=' ||\r
+                                   str === '++' || str === '--' || str === '<<' || str === '>>' ||\r
+                                   str === '&=' || str === '|=' || str === '^=' || str === '%=' ||\r
+                                   str === '<=' || str === '>=' || str === '=>' || str === '**') {\r
+                                   this.index += 2;\r
+                               }\r
+                               else {\r
+                                   // 1-character punctuators.\r
+                                   str = this.source[this.index];\r
+                                   if ('<>=!+-*%&|^/'.indexOf(str) >= 0) {\r
+                                       ++this.index;\r
+                                   }\r
+                               }\r
+                           }\r
+                       }\r
+               }\r
+               if (this.index === start) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return {\r
+                   type: 7 /* Punctuator */,\r
+                   value: str,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-literals-numeric-literals\r
+           Scanner.prototype.scanHexLiteral = function (start) {\r
+               var num = '';\r
+               while (!this.eof()) {\r
+                   if (!character_1.Character.isHexDigit(this.source.charCodeAt(this.index))) {\r
+                       break;\r
+                   }\r
+                   num += this.source[this.index++];\r
+               }\r
+               if (num.length === 0) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               if (character_1.Character.isIdentifierStart(this.source.charCodeAt(this.index))) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return {\r
+                   type: 6 /* NumericLiteral */,\r
+                   value: parseInt('0x' + num, 16),\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           Scanner.prototype.scanBinaryLiteral = function (start) {\r
+               var num = '';\r
+               var ch;\r
+               while (!this.eof()) {\r
+                   ch = this.source[this.index];\r
+                   if (ch !== '0' && ch !== '1') {\r
+                       break;\r
+                   }\r
+                   num += this.source[this.index++];\r
+               }\r
+               if (num.length === 0) {\r
+                   // only 0b or 0B\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               if (!this.eof()) {\r
+                   ch = this.source.charCodeAt(this.index);\r
+                   /* istanbul ignore else */\r
+                   if (character_1.Character.isIdentifierStart(ch) || character_1.Character.isDecimalDigit(ch)) {\r
+                       this.throwUnexpectedToken();\r
+                   }\r
+               }\r
+               return {\r
+                   type: 6 /* NumericLiteral */,\r
+                   value: parseInt(num, 2),\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           Scanner.prototype.scanOctalLiteral = function (prefix, start) {\r
+               var num = '';\r
+               var octal = false;\r
+               if (character_1.Character.isOctalDigit(prefix.charCodeAt(0))) {\r
+                   octal = true;\r
+                   num = '0' + this.source[this.index++];\r
+               }\r
+               else {\r
+                   ++this.index;\r
+               }\r
+               while (!this.eof()) {\r
+                   if (!character_1.Character.isOctalDigit(this.source.charCodeAt(this.index))) {\r
+                       break;\r
+                   }\r
+                   num += this.source[this.index++];\r
+               }\r
+               if (!octal && num.length === 0) {\r
+                   // only 0o or 0O\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               if (character_1.Character.isIdentifierStart(this.source.charCodeAt(this.index)) || character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return {\r
+                   type: 6 /* NumericLiteral */,\r
+                   value: parseInt(num, 8),\r
+                   octal: octal,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           Scanner.prototype.isImplicitOctalLiteral = function () {\r
+               // Implicit octal, unless there is a non-octal digit.\r
+               // (Annex B.1.1 on Numeric Literals)\r
+               for (var i = this.index + 1; i < this.length; ++i) {\r
+                   var ch = this.source[i];\r
+                   if (ch === '8' || ch === '9') {\r
+                       return false;\r
+                   }\r
+                   if (!character_1.Character.isOctalDigit(ch.charCodeAt(0))) {\r
+                       return true;\r
+                   }\r
+               }\r
+               return true;\r
+           };\r
+           Scanner.prototype.scanNumericLiteral = function () {\r
+               var start = this.index;\r
+               var ch = this.source[start];\r
+               assert_1.assert(character_1.Character.isDecimalDigit(ch.charCodeAt(0)) || (ch === '.'), 'Numeric literal must start with a decimal digit or a decimal point');\r
+               var num = '';\r
+               if (ch !== '.') {\r
+                   num = this.source[this.index++];\r
+                   ch = this.source[this.index];\r
+                   // Hex number starts with '0x'.\r
+                   // Octal number starts with '0'.\r
+                   // Octal number in ES6 starts with '0o'.\r
+                   // Binary number in ES6 starts with '0b'.\r
+                   if (num === '0') {\r
+                       if (ch === 'x' || ch === 'X') {\r
+                           ++this.index;\r
+                           return this.scanHexLiteral(start);\r
+                       }\r
+                       if (ch === 'b' || ch === 'B') {\r
+                           ++this.index;\r
+                           return this.scanBinaryLiteral(start);\r
+                       }\r
+                       if (ch === 'o' || ch === 'O') {\r
+                           return this.scanOctalLiteral(ch, start);\r
+                       }\r
+                       if (ch && character_1.Character.isOctalDigit(ch.charCodeAt(0))) {\r
+                           if (this.isImplicitOctalLiteral()) {\r
+                               return this.scanOctalLiteral(ch, start);\r
+                           }\r
+                       }\r
+                   }\r
+                   while (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                       num += this.source[this.index++];\r
+                   }\r
+                   ch = this.source[this.index];\r
+               }\r
+               if (ch === '.') {\r
+                   num += this.source[this.index++];\r
+                   while (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                       num += this.source[this.index++];\r
+                   }\r
+                   ch = this.source[this.index];\r
+               }\r
+               if (ch === 'e' || ch === 'E') {\r
+                   num += this.source[this.index++];\r
+                   ch = this.source[this.index];\r
+                   if (ch === '+' || ch === '-') {\r
+                       num += this.source[this.index++];\r
+                   }\r
+                   if (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                       while (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                           num += this.source[this.index++];\r
+                       }\r
+                   }\r
+                   else {\r
+                       this.throwUnexpectedToken();\r
+                   }\r
+               }\r
+               if (character_1.Character.isIdentifierStart(this.source.charCodeAt(this.index))) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return {\r
+                   type: 6 /* NumericLiteral */,\r
+                   value: parseFloat(num),\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-literals-string-literals\r
+           Scanner.prototype.scanStringLiteral = function () {\r
+               var start = this.index;\r
+               var quote = this.source[start];\r
+               assert_1.assert((quote === '\'' || quote === '"'), 'String literal must starts with a quote');\r
+               ++this.index;\r
+               var octal = false;\r
+               var str = '';\r
+               while (!this.eof()) {\r
+                   var ch = this.source[this.index++];\r
+                   if (ch === quote) {\r
+                       quote = '';\r
+                       break;\r
+                   }\r
+                   else if (ch === '\\') {\r
+                       ch = this.source[this.index++];\r
+                       if (!ch || !character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                           switch (ch) {\r
+                               case 'u':\r
+                                   if (this.source[this.index] === '{') {\r
+                                       ++this.index;\r
+                                       str += this.scanUnicodeCodePointEscape();\r
+                                   }\r
+                                   else {\r
+                                       var unescaped_1 = this.scanHexEscape(ch);\r
+                                       if (unescaped_1 === null) {\r
+                                           this.throwUnexpectedToken();\r
+                                       }\r
+                                       str += unescaped_1;\r
+                                   }\r
+                                   break;\r
+                               case 'x':\r
+                                   var unescaped = this.scanHexEscape(ch);\r
+                                   if (unescaped === null) {\r
+                                       this.throwUnexpectedToken(messages_1.Messages.InvalidHexEscapeSequence);\r
+                                   }\r
+                                   str += unescaped;\r
+                                   break;\r
+                               case 'n':\r
+                                   str += '\n';\r
+                                   break;\r
+                               case 'r':\r
+                                   str += '\r';\r
+                                   break;\r
+                               case 't':\r
+                                   str += '\t';\r
+                                   break;\r
+                               case 'b':\r
+                                   str += '\b';\r
+                                   break;\r
+                               case 'f':\r
+                                   str += '\f';\r
+                                   break;\r
+                               case 'v':\r
+                                   str += '\x0B';\r
+                                   break;\r
+                               case '8':\r
+                               case '9':\r
+                                   str += ch;\r
+                                   this.tolerateUnexpectedToken();\r
+                                   break;\r
+                               default:\r
+                                   if (ch && character_1.Character.isOctalDigit(ch.charCodeAt(0))) {\r
+                                       var octToDec = this.octalToDecimal(ch);\r
+                                       octal = octToDec.octal || octal;\r
+                                       str += String.fromCharCode(octToDec.code);\r
+                                   }\r
+                                   else {\r
+                                       str += ch;\r
+                                   }\r
+                                   break;\r
+                           }\r
+                       }\r
+                       else {\r
+                           ++this.lineNumber;\r
+                           if (ch === '\r' && this.source[this.index] === '\n') {\r
+                               ++this.index;\r
+                           }\r
+                           this.lineStart = this.index;\r
+                       }\r
+                   }\r
+                   else if (character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                       break;\r
+                   }\r
+                   else {\r
+                       str += ch;\r
+                   }\r
+               }\r
+               if (quote !== '') {\r
+                   this.index = start;\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               return {\r
+                   type: 8 /* StringLiteral */,\r
+                   value: str,\r
+                   octal: octal,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-template-literal-lexical-components\r
+           Scanner.prototype.scanTemplate = function () {\r
+               var cooked = '';\r
+               var terminated = false;\r
+               var start = this.index;\r
+               var head = (this.source[start] === '`');\r
+               var tail = false;\r
+               var rawOffset = 2;\r
+               ++this.index;\r
+               while (!this.eof()) {\r
+                   var ch = this.source[this.index++];\r
+                   if (ch === '`') {\r
+                       rawOffset = 1;\r
+                       tail = true;\r
+                       terminated = true;\r
+                       break;\r
+                   }\r
+                   else if (ch === '$') {\r
+                       if (this.source[this.index] === '{') {\r
+                           this.curlyStack.push('${');\r
+                           ++this.index;\r
+                           terminated = true;\r
+                           break;\r
+                       }\r
+                       cooked += ch;\r
+                   }\r
+                   else if (ch === '\\') {\r
+                       ch = this.source[this.index++];\r
+                       if (!character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                           switch (ch) {\r
+                               case 'n':\r
+                                   cooked += '\n';\r
+                                   break;\r
+                               case 'r':\r
+                                   cooked += '\r';\r
+                                   break;\r
+                               case 't':\r
+                                   cooked += '\t';\r
+                                   break;\r
+                               case 'u':\r
+                                   if (this.source[this.index] === '{') {\r
+                                       ++this.index;\r
+                                       cooked += this.scanUnicodeCodePointEscape();\r
+                                   }\r
+                                   else {\r
+                                       var restore = this.index;\r
+                                       var unescaped_2 = this.scanHexEscape(ch);\r
+                                       if (unescaped_2 !== null) {\r
+                                           cooked += unescaped_2;\r
+                                       }\r
+                                       else {\r
+                                           this.index = restore;\r
+                                           cooked += ch;\r
+                                       }\r
+                                   }\r
+                                   break;\r
+                               case 'x':\r
+                                   var unescaped = this.scanHexEscape(ch);\r
+                                   if (unescaped === null) {\r
+                                       this.throwUnexpectedToken(messages_1.Messages.InvalidHexEscapeSequence);\r
+                                   }\r
+                                   cooked += unescaped;\r
+                                   break;\r
+                               case 'b':\r
+                                   cooked += '\b';\r
+                                   break;\r
+                               case 'f':\r
+                                   cooked += '\f';\r
+                                   break;\r
+                               case 'v':\r
+                                   cooked += '\v';\r
+                                   break;\r
+                               default:\r
+                                   if (ch === '0') {\r
+                                       if (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index))) {\r
+                                           // Illegal: \01 \02 and so on\r
+                                           this.throwUnexpectedToken(messages_1.Messages.TemplateOctalLiteral);\r
+                                       }\r
+                                       cooked += '\0';\r
+                                   }\r
+                                   else if (character_1.Character.isOctalDigit(ch.charCodeAt(0))) {\r
+                                       // Illegal: \1 \2\r
+                                       this.throwUnexpectedToken(messages_1.Messages.TemplateOctalLiteral);\r
+                                   }\r
+                                   else {\r
+                                       cooked += ch;\r
+                                   }\r
+                                   break;\r
+                           }\r
+                       }\r
+                       else {\r
+                           ++this.lineNumber;\r
+                           if (ch === '\r' && this.source[this.index] === '\n') {\r
+                               ++this.index;\r
+                           }\r
+                           this.lineStart = this.index;\r
+                       }\r
+                   }\r
+                   else if (character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                       ++this.lineNumber;\r
+                       if (ch === '\r' && this.source[this.index] === '\n') {\r
+                           ++this.index;\r
+                       }\r
+                       this.lineStart = this.index;\r
+                       cooked += '\n';\r
+                   }\r
+                   else {\r
+                       cooked += ch;\r
+                   }\r
+               }\r
+               if (!terminated) {\r
+                   this.throwUnexpectedToken();\r
+               }\r
+               if (!head) {\r
+                   this.curlyStack.pop();\r
+               }\r
+               return {\r
+                   type: 10 /* Template */,\r
+                   value: this.source.slice(start + 1, this.index - rawOffset),\r
+                   cooked: cooked,\r
+                   head: head,\r
+                   tail: tail,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           // https://tc39.github.io/ecma262/#sec-literals-regular-expression-literals\r
+           Scanner.prototype.testRegExp = function (pattern, flags) {\r
+               // The BMP character to use as a replacement for astral symbols when\r
+               // translating an ES6 "u"-flagged pattern to an ES5-compatible\r
+               // approximation.\r
+               // Note: replacing with '\uFFFF' enables false positives in unlikely\r
+               // scenarios. For example, `[\u{1044f}-\u{10440}]` is an invalid\r
+               // pattern that would not be detected by this substitution.\r
+               var astralSubstitute = '\uFFFF';\r
+               var tmp = pattern;\r
+               var self = this;\r
+               if (flags.indexOf('u') >= 0) {\r
+                   tmp = tmp\r
+                       .replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g, function ($0, $1, $2) {\r
+                       var codePoint = parseInt($1 || $2, 16);\r
+                       if (codePoint > 0x10FFFF) {\r
+                           self.throwUnexpectedToken(messages_1.Messages.InvalidRegExp);\r
+                       }\r
+                       if (codePoint <= 0xFFFF) {\r
+                           return String.fromCharCode(codePoint);\r
+                       }\r
+                       return astralSubstitute;\r
+                   })\r
+                       .replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, astralSubstitute);\r
+               }\r
+               // First, detect invalid regular expressions.\r
+               try {\r
+                   RegExp(tmp);\r
+               }\r
+               catch (e) {\r
+                   this.throwUnexpectedToken(messages_1.Messages.InvalidRegExp);\r
+               }\r
+               // Return a regular expression object for this pattern-flag pair, or\r
+               // `null` in case the current environment doesn't support the flags it\r
+               // uses.\r
+               try {\r
+                   return new RegExp(pattern, flags);\r
+               }\r
+               catch (exception) {\r
+                   /* istanbul ignore next */\r
+                   return null;\r
+               }\r
+           };\r
+           Scanner.prototype.scanRegExpBody = function () {\r
+               var ch = this.source[this.index];\r
+               assert_1.assert(ch === '/', 'Regular expression literal must start with a slash');\r
+               var str = this.source[this.index++];\r
+               var classMarker = false;\r
+               var terminated = false;\r
+               while (!this.eof()) {\r
+                   ch = this.source[this.index++];\r
+                   str += ch;\r
+                   if (ch === '\\') {\r
+                       ch = this.source[this.index++];\r
+                       // https://tc39.github.io/ecma262/#sec-literals-regular-expression-literals\r
+                       if (character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                           this.throwUnexpectedToken(messages_1.Messages.UnterminatedRegExp);\r
+                       }\r
+                       str += ch;\r
+                   }\r
+                   else if (character_1.Character.isLineTerminator(ch.charCodeAt(0))) {\r
+                       this.throwUnexpectedToken(messages_1.Messages.UnterminatedRegExp);\r
+                   }\r
+                   else if (classMarker) {\r
+                       if (ch === ']') {\r
+                           classMarker = false;\r
+                       }\r
+                   }\r
+                   else {\r
+                       if (ch === '/') {\r
+                           terminated = true;\r
+                           break;\r
+                       }\r
+                       else if (ch === '[') {\r
+                           classMarker = true;\r
+                       }\r
+                   }\r
+               }\r
+               if (!terminated) {\r
+                   this.throwUnexpectedToken(messages_1.Messages.UnterminatedRegExp);\r
+               }\r
+               // Exclude leading and trailing slash.\r
+               return str.substr(1, str.length - 2);\r
+           };\r
+           Scanner.prototype.scanRegExpFlags = function () {\r
+               var str = '';\r
+               var flags = '';\r
+               while (!this.eof()) {\r
+                   var ch = this.source[this.index];\r
+                   if (!character_1.Character.isIdentifierPart(ch.charCodeAt(0))) {\r
+                       break;\r
+                   }\r
+                   ++this.index;\r
+                   if (ch === '\\' && !this.eof()) {\r
+                       ch = this.source[this.index];\r
+                       if (ch === 'u') {\r
+                           ++this.index;\r
+                           var restore = this.index;\r
+                           var char = this.scanHexEscape('u');\r
+                           if (char !== null) {\r
+                               flags += char;\r
+                               for (str += '\\u'; restore < this.index; ++restore) {\r
+                                   str += this.source[restore];\r
+                               }\r
+                           }\r
+                           else {\r
+                               this.index = restore;\r
+                               flags += 'u';\r
+                               str += '\\u';\r
+                           }\r
+                           this.tolerateUnexpectedToken();\r
+                       }\r
+                       else {\r
+                           str += '\\';\r
+                           this.tolerateUnexpectedToken();\r
+                       }\r
+                   }\r
+                   else {\r
+                       flags += ch;\r
+                       str += ch;\r
+                   }\r
+               }\r
+               return flags;\r
+           };\r
+           Scanner.prototype.scanRegExp = function () {\r
+               var start = this.index;\r
+               var pattern = this.scanRegExpBody();\r
+               var flags = this.scanRegExpFlags();\r
+               var value = this.testRegExp(pattern, flags);\r
+               return {\r
+                   type: 9 /* RegularExpression */,\r
+                   value: '',\r
+                   pattern: pattern,\r
+                   flags: flags,\r
+                   regex: value,\r
+                   lineNumber: this.lineNumber,\r
+                   lineStart: this.lineStart,\r
+                   start: start,\r
+                   end: this.index\r
+               };\r
+           };\r
+           Scanner.prototype.lex = function () {\r
+               if (this.eof()) {\r
+                   return {\r
+                       type: 2 /* EOF */,\r
+                       value: '',\r
+                       lineNumber: this.lineNumber,\r
+                       lineStart: this.lineStart,\r
+                       start: this.index,\r
+                       end: this.index\r
+                   };\r
+               }\r
+               var cp = this.source.charCodeAt(this.index);\r
+               if (character_1.Character.isIdentifierStart(cp)) {\r
+                   return this.scanIdentifier();\r
+               }\r
+               // Very common: ( and ) and ;\r
+               if (cp === 0x28 || cp === 0x29 || cp === 0x3B) {\r
+                   return this.scanPunctuator();\r
+               }\r
+               // String literal starts with single quote (U+0027) or double quote (U+0022).\r
+               if (cp === 0x27 || cp === 0x22) {\r
+                   return this.scanStringLiteral();\r
+               }\r
+               // Dot (.) U+002E can also start a floating-point number, hence the need\r
+               // to check the next character.\r
+               if (cp === 0x2E) {\r
+                   if (character_1.Character.isDecimalDigit(this.source.charCodeAt(this.index + 1))) {\r
+                       return this.scanNumericLiteral();\r
+                   }\r
+                   return this.scanPunctuator();\r
+               }\r
+               if (character_1.Character.isDecimalDigit(cp)) {\r
+                   return this.scanNumericLiteral();\r
+               }\r
+               // Template literals start with ` (U+0060) for template head\r
+               // or } (U+007D) for template middle or template tail.\r
+               if (cp === 0x60 || (cp === 0x7D && this.curlyStack[this.curlyStack.length - 1] === '${')) {\r
+                   return this.scanTemplate();\r
+               }\r
+               // Possible identifier start in a surrogate pair.\r
+               if (cp >= 0xD800 && cp < 0xDFFF) {\r
+                   if (character_1.Character.isIdentifierStart(this.codePointAt(this.index))) {\r
+                       return this.scanIdentifier();\r
+                   }\r
+               }\r
+               return this.scanPunctuator();\r
+           };\r
+           return Scanner;\r
+       }());\r
+       exports.Scanner = Scanner;\r
+
+
+/***/ },
+/* 13 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       exports.TokenName = {};\r
+       exports.TokenName[1 /* BooleanLiteral */] = 'Boolean';\r
+       exports.TokenName[2 /* EOF */] = '<end>';\r
+       exports.TokenName[3 /* Identifier */] = 'Identifier';\r
+       exports.TokenName[4 /* Keyword */] = 'Keyword';\r
+       exports.TokenName[5 /* NullLiteral */] = 'Null';\r
+       exports.TokenName[6 /* NumericLiteral */] = 'Numeric';\r
+       exports.TokenName[7 /* Punctuator */] = 'Punctuator';\r
+       exports.TokenName[8 /* StringLiteral */] = 'String';\r
+       exports.TokenName[9 /* RegularExpression */] = 'RegularExpression';\r
+       exports.TokenName[10 /* Template */] = 'Template';\r
+
+
+/***/ },
+/* 14 */
+/***/ function(module, exports) {
+
+       "use strict";\r
+       // Generated by generate-xhtml-entities.js. DO NOT MODIFY!\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       exports.XHTMLEntities = {\r
+           quot: '\u0022',\r
+           amp: '\u0026',\r
+           apos: '\u0027',\r
+           gt: '\u003E',\r
+           nbsp: '\u00A0',\r
+           iexcl: '\u00A1',\r
+           cent: '\u00A2',\r
+           pound: '\u00A3',\r
+           curren: '\u00A4',\r
+           yen: '\u00A5',\r
+           brvbar: '\u00A6',\r
+           sect: '\u00A7',\r
+           uml: '\u00A8',\r
+           copy: '\u00A9',\r
+           ordf: '\u00AA',\r
+           laquo: '\u00AB',\r
+           not: '\u00AC',\r
+           shy: '\u00AD',\r
+           reg: '\u00AE',\r
+           macr: '\u00AF',\r
+           deg: '\u00B0',\r
+           plusmn: '\u00B1',\r
+           sup2: '\u00B2',\r
+           sup3: '\u00B3',\r
+           acute: '\u00B4',\r
+           micro: '\u00B5',\r
+           para: '\u00B6',\r
+           middot: '\u00B7',\r
+           cedil: '\u00B8',\r
+           sup1: '\u00B9',\r
+           ordm: '\u00BA',\r
+           raquo: '\u00BB',\r
+           frac14: '\u00BC',\r
+           frac12: '\u00BD',\r
+           frac34: '\u00BE',\r
+           iquest: '\u00BF',\r
+           Agrave: '\u00C0',\r
+           Aacute: '\u00C1',\r
+           Acirc: '\u00C2',\r
+           Atilde: '\u00C3',\r
+           Auml: '\u00C4',\r
+           Aring: '\u00C5',\r
+           AElig: '\u00C6',\r
+           Ccedil: '\u00C7',\r
+           Egrave: '\u00C8',\r
+           Eacute: '\u00C9',\r
+           Ecirc: '\u00CA',\r
+           Euml: '\u00CB',\r
+           Igrave: '\u00CC',\r
+           Iacute: '\u00CD',\r
+           Icirc: '\u00CE',\r
+           Iuml: '\u00CF',\r
+           ETH: '\u00D0',\r
+           Ntilde: '\u00D1',\r
+           Ograve: '\u00D2',\r
+           Oacute: '\u00D3',\r
+           Ocirc: '\u00D4',\r
+           Otilde: '\u00D5',\r
+           Ouml: '\u00D6',\r
+           times: '\u00D7',\r
+           Oslash: '\u00D8',\r
+           Ugrave: '\u00D9',\r
+           Uacute: '\u00DA',\r
+           Ucirc: '\u00DB',\r
+           Uuml: '\u00DC',\r
+           Yacute: '\u00DD',\r
+           THORN: '\u00DE',\r
+           szlig: '\u00DF',\r
+           agrave: '\u00E0',\r
+           aacute: '\u00E1',\r
+           acirc: '\u00E2',\r
+           atilde: '\u00E3',\r
+           auml: '\u00E4',\r
+           aring: '\u00E5',\r
+           aelig: '\u00E6',\r
+           ccedil: '\u00E7',\r
+           egrave: '\u00E8',\r
+           eacute: '\u00E9',\r
+           ecirc: '\u00EA',\r
+           euml: '\u00EB',\r
+           igrave: '\u00EC',\r
+           iacute: '\u00ED',\r
+           icirc: '\u00EE',\r
+           iuml: '\u00EF',\r
+           eth: '\u00F0',\r
+           ntilde: '\u00F1',\r
+           ograve: '\u00F2',\r
+           oacute: '\u00F3',\r
+           ocirc: '\u00F4',\r
+           otilde: '\u00F5',\r
+           ouml: '\u00F6',\r
+           divide: '\u00F7',\r
+           oslash: '\u00F8',\r
+           ugrave: '\u00F9',\r
+           uacute: '\u00FA',\r
+           ucirc: '\u00FB',\r
+           uuml: '\u00FC',\r
+           yacute: '\u00FD',\r
+           thorn: '\u00FE',\r
+           yuml: '\u00FF',\r
+           OElig: '\u0152',\r
+           oelig: '\u0153',\r
+           Scaron: '\u0160',\r
+           scaron: '\u0161',\r
+           Yuml: '\u0178',\r
+           fnof: '\u0192',\r
+           circ: '\u02C6',\r
+           tilde: '\u02DC',\r
+           Alpha: '\u0391',\r
+           Beta: '\u0392',\r
+           Gamma: '\u0393',\r
+           Delta: '\u0394',\r
+           Epsilon: '\u0395',\r
+           Zeta: '\u0396',\r
+           Eta: '\u0397',\r
+           Theta: '\u0398',\r
+           Iota: '\u0399',\r
+           Kappa: '\u039A',\r
+           Lambda: '\u039B',\r
+           Mu: '\u039C',\r
+           Nu: '\u039D',\r
+           Xi: '\u039E',\r
+           Omicron: '\u039F',\r
+           Pi: '\u03A0',\r
+           Rho: '\u03A1',\r
+           Sigma: '\u03A3',\r
+           Tau: '\u03A4',\r
+           Upsilon: '\u03A5',\r
+           Phi: '\u03A6',\r
+           Chi: '\u03A7',\r
+           Psi: '\u03A8',\r
+           Omega: '\u03A9',\r
+           alpha: '\u03B1',\r
+           beta: '\u03B2',\r
+           gamma: '\u03B3',\r
+           delta: '\u03B4',\r
+           epsilon: '\u03B5',\r
+           zeta: '\u03B6',\r
+           eta: '\u03B7',\r
+           theta: '\u03B8',\r
+           iota: '\u03B9',\r
+           kappa: '\u03BA',\r
+           lambda: '\u03BB',\r
+           mu: '\u03BC',\r
+           nu: '\u03BD',\r
+           xi: '\u03BE',\r
+           omicron: '\u03BF',\r
+           pi: '\u03C0',\r
+           rho: '\u03C1',\r
+           sigmaf: '\u03C2',\r
+           sigma: '\u03C3',\r
+           tau: '\u03C4',\r
+           upsilon: '\u03C5',\r
+           phi: '\u03C6',\r
+           chi: '\u03C7',\r
+           psi: '\u03C8',\r
+           omega: '\u03C9',\r
+           thetasym: '\u03D1',\r
+           upsih: '\u03D2',\r
+           piv: '\u03D6',\r
+           ensp: '\u2002',\r
+           emsp: '\u2003',\r
+           thinsp: '\u2009',\r
+           zwnj: '\u200C',\r
+           zwj: '\u200D',\r
+           lrm: '\u200E',\r
+           rlm: '\u200F',\r
+           ndash: '\u2013',\r
+           mdash: '\u2014',\r
+           lsquo: '\u2018',\r
+           rsquo: '\u2019',\r
+           sbquo: '\u201A',\r
+           ldquo: '\u201C',\r
+           rdquo: '\u201D',\r
+           bdquo: '\u201E',\r
+           dagger: '\u2020',\r
+           Dagger: '\u2021',\r
+           bull: '\u2022',\r
+           hellip: '\u2026',\r
+           permil: '\u2030',\r
+           prime: '\u2032',\r
+           Prime: '\u2033',\r
+           lsaquo: '\u2039',\r
+           rsaquo: '\u203A',\r
+           oline: '\u203E',\r
+           frasl: '\u2044',\r
+           euro: '\u20AC',\r
+           image: '\u2111',\r
+           weierp: '\u2118',\r
+           real: '\u211C',\r
+           trade: '\u2122',\r
+           alefsym: '\u2135',\r
+           larr: '\u2190',\r
+           uarr: '\u2191',\r
+           rarr: '\u2192',\r
+           darr: '\u2193',\r
+           harr: '\u2194',\r
+           crarr: '\u21B5',\r
+           lArr: '\u21D0',\r
+           uArr: '\u21D1',\r
+           rArr: '\u21D2',\r
+           dArr: '\u21D3',\r
+           hArr: '\u21D4',\r
+           forall: '\u2200',\r
+           part: '\u2202',\r
+           exist: '\u2203',\r
+           empty: '\u2205',\r
+           nabla: '\u2207',\r
+           isin: '\u2208',\r
+           notin: '\u2209',\r
+           ni: '\u220B',\r
+           prod: '\u220F',\r
+           sum: '\u2211',\r
+           minus: '\u2212',\r
+           lowast: '\u2217',\r
+           radic: '\u221A',\r
+           prop: '\u221D',\r
+           infin: '\u221E',\r
+           ang: '\u2220',\r
+           and: '\u2227',\r
+           or: '\u2228',\r
+           cap: '\u2229',\r
+           cup: '\u222A',\r
+           int: '\u222B',\r
+           there4: '\u2234',\r
+           sim: '\u223C',\r
+           cong: '\u2245',\r
+           asymp: '\u2248',\r
+           ne: '\u2260',\r
+           equiv: '\u2261',\r
+           le: '\u2264',\r
+           ge: '\u2265',\r
+           sub: '\u2282',\r
+           sup: '\u2283',\r
+           nsub: '\u2284',\r
+           sube: '\u2286',\r
+           supe: '\u2287',\r
+           oplus: '\u2295',\r
+           otimes: '\u2297',\r
+           perp: '\u22A5',\r
+           sdot: '\u22C5',\r
+           lceil: '\u2308',\r
+           rceil: '\u2309',\r
+           lfloor: '\u230A',\r
+           rfloor: '\u230B',\r
+           loz: '\u25CA',\r
+           spades: '\u2660',\r
+           clubs: '\u2663',\r
+           hearts: '\u2665',\r
+           diams: '\u2666',\r
+           lang: '\u27E8',\r
+           rang: '\u27E9'\r
+       };\r
+
+
+/***/ },
+/* 15 */
+/***/ function(module, exports, __webpack_require__) {
+
+       "use strict";\r
+       Object.defineProperty(exports, "__esModule", { value: true });\r
+       var error_handler_1 = __webpack_require__(10);\r
+       var scanner_1 = __webpack_require__(12);\r
+       var token_1 = __webpack_require__(13);\r
+       var Reader = (function () {\r
+           function Reader() {\r
+               this.values = [];\r
+               this.curly = this.paren = -1;\r
+           }\r
+           // A function following one of those tokens is an expression.\r
+           Reader.prototype.beforeFunctionExpression = function (t) {\r
+               return ['(', '{', '[', 'in', 'typeof', 'instanceof', 'new',\r
+                   'return', 'case', 'delete', 'throw', 'void',\r
+                   // assignment operators\r
+                   '=', '+=', '-=', '*=', '**=', '/=', '%=', '<<=', '>>=', '>>>=',\r
+                   '&=', '|=', '^=', ',',\r
+                   // binary/unary operators\r
+                   '+', '-', '*', '**', '/', '%', '++', '--', '<<', '>>', '>>>', '&',\r
+                   '|', '^', '!', '~', '&&', '||', '?', ':', '===', '==', '>=',\r
+                   '<=', '<', '>', '!=', '!=='].indexOf(t) >= 0;\r
+           };\r
+           // Determine if forward slash (/) is an operator or part of a regular expression\r
+           // https://github.com/mozilla/sweet.js/wiki/design\r
+           Reader.prototype.isRegexStart = function () {\r
+               var previous = this.values[this.values.length - 1];\r
+               var regex = (previous !== null);\r
+               switch (previous) {\r
+                   case 'this':\r
+                   case ']':\r
+                       regex = false;\r
+                       break;\r
+                   case ')':\r
+                       var keyword = this.values[this.paren - 1];\r
+                       regex = (keyword === 'if' || keyword === 'while' || keyword === 'for' || keyword === 'with');\r
+                       break;\r
+                   case '}':\r
+                       // Dividing a function by anything makes little sense,\r
+                       // but we have to check for that.\r
+                       regex = false;\r
+                       if (this.values[this.curly - 3] === 'function') {\r
+                           // Anonymous function, e.g. function(){} /42\r
+                           var check = this.values[this.curly - 4];\r
+                           regex = check ? !this.beforeFunctionExpression(check) : false;\r
+                       }\r
+                       else if (this.values[this.curly - 4] === 'function') {\r
+                           // Named function, e.g. function f(){} /42/\r
+                           var check = this.values[this.curly - 5];\r
+                           regex = check ? !this.beforeFunctionExpression(check) : true;\r
+                       }\r
+                       break;\r
+                   default:\r
+                       break;\r
+               }\r
+               return regex;\r
+           };\r
+           Reader.prototype.push = function (token) {\r
+               if (token.type === 7 /* Punctuator */ || token.type === 4 /* Keyword */) {\r
+                   if (token.value === '{') {\r
+                       this.curly = this.values.length;\r
+                   }\r
+                   else if (token.value === '(') {\r
+                       this.paren = this.values.length;\r
+                   }\r
+                   this.values.push(token.value);\r
+               }\r
+               else {\r
+                   this.values.push(null);\r
+               }\r
+           };\r
+           return Reader;\r
+       }());\r
+       var Tokenizer = (function () {\r
+           function Tokenizer(code, config) {\r
+               this.errorHandler = new error_handler_1.ErrorHandler();\r
+               this.errorHandler.tolerant = config ? (typeof config.tolerant === 'boolean' && config.tolerant) : false;\r
+               this.scanner = new scanner_1.Scanner(code, this.errorHandler);\r
+               this.scanner.trackComment = config ? (typeof config.comment === 'boolean' && config.comment) : false;\r
+               this.trackRange = config ? (typeof config.range === 'boolean' && config.range) : false;\r
+               this.trackLoc = config ? (typeof config.loc === 'boolean' && config.loc) : false;\r
+               this.buffer = [];\r
+               this.reader = new Reader();\r
+           }\r
+           Tokenizer.prototype.errors = function () {\r
+               return this.errorHandler.errors;\r
+           };\r
+           Tokenizer.prototype.getNextToken = function () {\r
+               if (this.buffer.length === 0) {\r
+                   var comments = this.scanner.scanComments();\r
+                   if (this.scanner.trackComment) {\r
+                       for (var i = 0; i < comments.length; ++i) {\r
+                           var e = comments[i];\r
+                           var value = this.scanner.source.slice(e.slice[0], e.slice[1]);\r
+                           var comment = {\r
+                               type: e.multiLine ? 'BlockComment' : 'LineComment',\r
+                               value: value\r
+                           };\r
+                           if (this.trackRange) {\r
+                               comment.range = e.range;\r
+                           }\r
+                           if (this.trackLoc) {\r
+                               comment.loc = e.loc;\r
+                           }\r
+                           this.buffer.push(comment);\r
+                       }\r
+                   }\r
+                   if (!this.scanner.eof()) {\r
+                       var loc = void 0;\r
+                       if (this.trackLoc) {\r
+                           loc = {\r
+                               start: {\r
+                                   line: this.scanner.lineNumber,\r
+                                   column: this.scanner.index - this.scanner.lineStart\r
+                               },\r
+                               end: {}\r
+                           };\r
+                       }\r
+                       var startRegex = (this.scanner.source[this.scanner.index] === '/') && this.reader.isRegexStart();\r
+                       var token = startRegex ? this.scanner.scanRegExp() : this.scanner.lex();\r
+                       this.reader.push(token);\r
+                       var entry = {\r
+                           type: token_1.TokenName[token.type],\r
+                           value: this.scanner.source.slice(token.start, token.end)\r
+                       };\r
+                       if (this.trackRange) {\r
+                           entry.range = [token.start, token.end];\r
+                       }\r
+                       if (this.trackLoc) {\r
+                           loc.end = {\r
+                               line: this.scanner.lineNumber,\r
+                               column: this.scanner.index - this.scanner.lineStart\r
+                           };\r
+                           entry.loc = loc;\r
+                       }\r
+                       if (token.type === 9 /* RegularExpression */) {\r
+                           var pattern = token.pattern;\r
+                           var flags = token.flags;\r
+                           entry.regex = { pattern: pattern, flags: flags };\r
+                       }\r
+                       this.buffer.push(entry);\r
+                   }\r
+               }\r
+               return this.buffer.shift();\r
+           };\r
+           return Tokenizer;\r
+       }());\r
+       exports.Tokenizer = Tokenizer;\r
+
+
+/***/ }
+/******/ ])
+});
+;
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/package.json b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/node_modules/esprima/package.json
new file mode 100644 (file)
index 0000000..38bdd40
--- /dev/null
@@ -0,0 +1,167 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esprima@^4.0.0",
+        "scope": null,
+        "escapedName": "esprima",
+        "name": "esprima",
+        "rawSpec": "^4.0.0",
+        "spec": ">=4.0.0 <5.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/js-yaml"
+    ]
+  ],
+  "_from": "esprima@>=4.0.0 <5.0.0",
+  "_id": "esprima@4.0.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/js-yaml/esprima",
+  "_nodeVersion": "8.0.0",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/esprima-4.0.0.tgz_1497095776705_0.45635089301504195"
+  },
+  "_npmUser": {
+    "name": "ariya",
+    "email": "ariya.hidayat@gmail.com"
+  },
+  "_npmVersion": "5.0.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esprima@^4.0.0",
+    "scope": null,
+    "escapedName": "esprima",
+    "name": "esprima",
+    "rawSpec": "^4.0.0",
+    "spec": ">=4.0.0 <5.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/js-yaml"
+  ],
+  "_resolved": "http://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
+  "_shasum": "4499eddcd1110e0b218bacf2fa7f7f59f55ca804",
+  "_shrinkwrap": null,
+  "_spec": "esprima@^4.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/js-yaml",
+  "author": {
+    "name": "Ariya Hidayat",
+    "email": "ariya.hidayat@gmail.com"
+  },
+  "bin": {
+    "esparse": "./bin/esparse.js",
+    "esvalidate": "./bin/esvalidate.js"
+  },
+  "bugs": {
+    "url": "https://github.com/jquery/esprima/issues"
+  },
+  "dependencies": {},
+  "description": "ECMAScript parsing infrastructure for multipurpose analysis",
+  "devDependencies": {
+    "codecov.io": "~0.1.6",
+    "escomplex-js": "1.2.0",
+    "everything.js": "~1.0.3",
+    "glob": "~7.1.0",
+    "istanbul": "~0.4.0",
+    "json-diff": "~0.3.1",
+    "karma": "~1.3.0",
+    "karma-chrome-launcher": "~2.0.0",
+    "karma-detect-browsers": "~2.2.3",
+    "karma-edge-launcher": "~0.2.0",
+    "karma-firefox-launcher": "~1.0.0",
+    "karma-ie-launcher": "~1.0.0",
+    "karma-mocha": "~1.3.0",
+    "karma-safari-launcher": "~1.0.0",
+    "karma-safaritechpreview-launcher": "~0.0.4",
+    "karma-sauce-launcher": "~1.1.0",
+    "lodash": "~3.10.1",
+    "mocha": "~3.2.0",
+    "node-tick-processor": "~0.0.2",
+    "regenerate": "~1.3.2",
+    "temp": "~0.8.3",
+    "tslint": "~5.1.0",
+    "typescript": "~2.3.2",
+    "typescript-formatter": "~5.1.3",
+    "unicode-8.0.0": "~0.7.0",
+    "webpack": "~1.14.0"
+  },
+  "directories": {},
+  "dist": {
+    "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
+    "shasum": "4499eddcd1110e0b218bacf2fa7f7f59f55ca804",
+    "tarball": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz"
+  },
+  "engines": {
+    "node": ">=4"
+  },
+  "files": [
+    "bin",
+    "dist/esprima.js"
+  ],
+  "gitHead": "56c0f0f7248c8611cb55cb97ad089cb86cf8ddb3",
+  "homepage": "http://esprima.org",
+  "keywords": [
+    "ast",
+    "ecmascript",
+    "esprima",
+    "javascript",
+    "parser",
+    "syntax"
+  ],
+  "license": "BSD-2-Clause",
+  "main": "dist/esprima.js",
+  "maintainers": [
+    {
+      "name": "ariya",
+      "email": "ariya.hidayat@gmail.com"
+    }
+  ],
+  "name": "esprima",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jquery/esprima.git"
+  },
+  "scripts": {
+    "all-tests": "npm run verify-line-ending && npm run generate-fixtures && npm run unit-tests && npm run api-tests && npm run grammar-tests && npm run regression-tests && npm run hostile-env-tests",
+    "analyze-coverage": "istanbul cover test/unit-tests.js",
+    "api-tests": "mocha -R dot test/api-tests.js",
+    "appveyor": "npm run compile && npm run all-tests && npm run browser-tests",
+    "benchmark": "npm run benchmark-parser && npm run benchmark-tokenizer",
+    "benchmark-parser": "node -expose_gc test/benchmark-parser.js",
+    "benchmark-tokenizer": "node --expose_gc test/benchmark-tokenizer.js",
+    "browser-tests": "npm run compile && npm run generate-fixtures && cd test && karma start --single-run",
+    "check-coverage": "istanbul check-coverage --statement 100 --branch 100 --function 100",
+    "check-version": "node test/check-version.js",
+    "circleci": "npm test && npm run codecov && npm run downstream",
+    "code-style": "tsfmt --verify src/*.ts && tsfmt --verify test/*.js",
+    "codecov": "istanbul report cobertura && codecov < ./coverage/cobertura-coverage.xml",
+    "compile": "tsc -p src/ && webpack && node tools/fixupbundle.js",
+    "complexity": "node test/check-complexity.js",
+    "downstream": "node test/downstream.js",
+    "droneio": "npm run compile && npm run all-tests && npm run saucelabs",
+    "dynamic-analysis": "npm run analyze-coverage && npm run check-coverage",
+    "format-code": "tsfmt -r src/*.ts && tsfmt -r test/*.js",
+    "generate-fixtures": "node tools/generate-fixtures.js",
+    "generate-regex": "node tools/generate-identifier-regex.js",
+    "generate-xhtml-entities": "node tools/generate-xhtml-entities.js",
+    "grammar-tests": "node test/grammar-tests.js",
+    "hostile-env-tests": "node test/hostile-environment-tests.js",
+    "prepublish": "npm run compile",
+    "profile": "node --prof test/profile.js && mv isolate*.log v8.log && node-tick-processor",
+    "regression-tests": "node test/regression-tests.js",
+    "saucelabs": "npm run saucelabs-evergreen && npm run saucelabs-ie && npm run saucelabs-safari",
+    "saucelabs-evergreen": "cd test && karma start saucelabs-evergreen.conf.js",
+    "saucelabs-ie": "cd test && karma start saucelabs-ie.conf.js",
+    "saucelabs-safari": "cd test && karma start saucelabs-safari.conf.js",
+    "static-analysis": "npm run check-version && npm run tslint && npm run code-style && npm run complexity",
+    "test": "npm run compile && npm run all-tests && npm run static-analysis && npm run dynamic-analysis",
+    "travis": "npm test",
+    "tslint": "tslint src/*.ts",
+    "unit-tests": "node test/unit-tests.js",
+    "verify-line-ending": "node test/verify-line-ending.js"
+  },
+  "version": "4.0.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/package.json b/wrt/build/node_modules/grunt-standard/node_modules/js-yaml/package.json
new file mode 100644 (file)
index 0000000..f44e876
--- /dev/null
@@ -0,0 +1,128 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "js-yaml@^3.2.5",
+        "scope": null,
+        "escapedName": "js-yaml",
+        "name": "js-yaml",
+        "rawSpec": "^3.2.5",
+        "spec": ">=3.2.5 <4.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "js-yaml@>=3.2.5 <4.0.0",
+  "_id": "js-yaml@3.10.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/js-yaml",
+  "_nodeVersion": "8.4.0",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/js-yaml-3.10.0.tgz_1505117951321_0.05147904600016773"
+  },
+  "_npmUser": {
+    "name": "vitaly",
+    "email": "vitaly@rcdesign.ru"
+  },
+  "_npmVersion": "5.3.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "js-yaml@^3.2.5",
+    "scope": null,
+    "escapedName": "js-yaml",
+    "name": "js-yaml",
+    "rawSpec": "^3.2.5",
+    "spec": ">=3.2.5 <4.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz",
+  "_shasum": "2e78441646bd4682e963f22b6e92823c309c62dc",
+  "_shrinkwrap": null,
+  "_spec": "js-yaml@^3.2.5",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "Vladimir Zapparov",
+    "email": "dervus.grim@gmail.com"
+  },
+  "bin": {
+    "js-yaml": "bin/js-yaml.js"
+  },
+  "bugs": {
+    "url": "https://github.com/nodeca/js-yaml/issues"
+  },
+  "contributors": [
+    {
+      "name": "Aleksey V Zapparov",
+      "email": "ixti@member.fsf.org",
+      "url": "http://www.ixti.net/"
+    },
+    {
+      "name": "Vitaly Puzrin",
+      "email": "vitaly@rcdesign.ru",
+      "url": "https://github.com/puzrin"
+    },
+    {
+      "name": "Martin Grenfell",
+      "email": "martin.grenfell@gmail.com",
+      "url": "http://got-ravings.blogspot.com"
+    }
+  ],
+  "dependencies": {
+    "argparse": "^1.0.7",
+    "esprima": "^4.0.0"
+  },
+  "description": "YAML 1.2 parser and serializer",
+  "devDependencies": {
+    "ansi": "^0.3.1",
+    "benchmark": "^2.1.4",
+    "browserify": "^14.3.0",
+    "codemirror": "^5.13.4",
+    "eslint": "^4.1.1",
+    "istanbul": "^0.4.5",
+    "mocha": "^3.3.0",
+    "uglify-js": "^3.0.1"
+  },
+  "directories": {},
+  "dist": {
+    "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==",
+    "shasum": "2e78441646bd4682e963f22b6e92823c309c62dc",
+    "tarball": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz"
+  },
+  "files": [
+    "index.js",
+    "lib/",
+    "bin/",
+    "dist/"
+  ],
+  "gitHead": "42e7fcccf10c74fe157b1f8eb9d73c1c25c3c259",
+  "homepage": "https://github.com/nodeca/js-yaml",
+  "keywords": [
+    "yaml",
+    "parser",
+    "serializer",
+    "pyyaml"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "vitaly",
+      "email": "vitaly@rcdesign.ru"
+    }
+  ],
+  "name": "js-yaml",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/nodeca/js-yaml.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "version": "3.10.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/minimist/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/minimist/.travis.yml
new file mode 100644 (file)
index 0000000..74c57bf
--- /dev/null
@@ -0,0 +1,8 @@
+language: node_js
+node_js:
+  - "0.8"
+  - "0.10"
+  - "0.12"
+  - "iojs"
+before_install:
+  - npm install -g npm@~1.4.6
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/minimist/index.js b/wrt/build/node_modules/grunt-standard/node_modules/minimist/index.js
new file mode 100644 (file)
index 0000000..6a0559d
--- /dev/null
@@ -0,0 +1,236 @@
+module.exports = function (args, opts) {
+    if (!opts) opts = {};
+    
+    var flags = { bools : {}, strings : {}, unknownFn: null };
+
+    if (typeof opts['unknown'] === 'function') {
+        flags.unknownFn = opts['unknown'];
+    }
+
+    if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
+      flags.allBools = true;
+    } else {
+      [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
+          flags.bools[key] = true;
+      });
+    }
+    
+    var aliases = {};
+    Object.keys(opts.alias || {}).forEach(function (key) {
+        aliases[key] = [].concat(opts.alias[key]);
+        aliases[key].forEach(function (x) {
+            aliases[x] = [key].concat(aliases[key].filter(function (y) {
+                return x !== y;
+            }));
+        });
+    });
+
+    [].concat(opts.string).filter(Boolean).forEach(function (key) {
+        flags.strings[key] = true;
+        if (aliases[key]) {
+            flags.strings[aliases[key]] = true;
+        }
+     });
+
+    var defaults = opts['default'] || {};
+    
+    var argv = { _ : [] };
+    Object.keys(flags.bools).forEach(function (key) {
+        setArg(key, defaults[key] === undefined ? false : defaults[key]);
+    });
+    
+    var notFlags = [];
+
+    if (args.indexOf('--') !== -1) {
+        notFlags = args.slice(args.indexOf('--')+1);
+        args = args.slice(0, args.indexOf('--'));
+    }
+
+    function argDefined(key, arg) {
+        return (flags.allBools && /^--[^=]+$/.test(arg)) ||
+            flags.strings[key] || flags.bools[key] || aliases[key];
+    }
+
+    function setArg (key, val, arg) {
+        if (arg && flags.unknownFn && !argDefined(key, arg)) {
+            if (flags.unknownFn(arg) === false) return;
+        }
+
+        var value = !flags.strings[key] && isNumber(val)
+            ? Number(val) : val
+        ;
+        setKey(argv, key.split('.'), value);
+        
+        (aliases[key] || []).forEach(function (x) {
+            setKey(argv, x.split('.'), value);
+        });
+    }
+
+    function setKey (obj, keys, value) {
+        var o = obj;
+        keys.slice(0,-1).forEach(function (key) {
+            if (o[key] === undefined) o[key] = {};
+            o = o[key];
+        });
+
+        var key = keys[keys.length - 1];
+        if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
+            o[key] = value;
+        }
+        else if (Array.isArray(o[key])) {
+            o[key].push(value);
+        }
+        else {
+            o[key] = [ o[key], value ];
+        }
+    }
+    
+    function aliasIsBoolean(key) {
+      return aliases[key].some(function (x) {
+          return flags.bools[x];
+      });
+    }
+
+    for (var i = 0; i < args.length; i++) {
+        var arg = args[i];
+        
+        if (/^--.+=/.test(arg)) {
+            // Using [\s\S] instead of . because js doesn't support the
+            // 'dotall' regex modifier. See:
+            // http://stackoverflow.com/a/1068308/13216
+            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
+            var key = m[1];
+            var value = m[2];
+            if (flags.bools[key]) {
+                value = value !== 'false';
+            }
+            setArg(key, value, arg);
+        }
+        else if (/^--no-.+/.test(arg)) {
+            var key = arg.match(/^--no-(.+)/)[1];
+            setArg(key, false, arg);
+        }
+        else if (/^--.+/.test(arg)) {
+            var key = arg.match(/^--(.+)/)[1];
+            var next = args[i + 1];
+            if (next !== undefined && !/^-/.test(next)
+            && !flags.bools[key]
+            && !flags.allBools
+            && (aliases[key] ? !aliasIsBoolean(key) : true)) {
+                setArg(key, next, arg);
+                i++;
+            }
+            else if (/^(true|false)$/.test(next)) {
+                setArg(key, next === 'true', arg);
+                i++;
+            }
+            else {
+                setArg(key, flags.strings[key] ? '' : true, arg);
+            }
+        }
+        else if (/^-[^-]+/.test(arg)) {
+            var letters = arg.slice(1,-1).split('');
+            
+            var broken = false;
+            for (var j = 0; j < letters.length; j++) {
+                var next = arg.slice(j+2);
+                
+                if (next === '-') {
+                    setArg(letters[j], next, arg)
+                    continue;
+                }
+                
+                if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {
+                    setArg(letters[j], next.split('=')[1], arg);
+                    broken = true;
+                    break;
+                }
+                
+                if (/[A-Za-z]/.test(letters[j])
+                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
+                    setArg(letters[j], next, arg);
+                    broken = true;
+                    break;
+                }
+                
+                if (letters[j+1] && letters[j+1].match(/\W/)) {
+                    setArg(letters[j], arg.slice(j+2), arg);
+                    broken = true;
+                    break;
+                }
+                else {
+                    setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
+                }
+            }
+            
+            var key = arg.slice(-1)[0];
+            if (!broken && key !== '-') {
+                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
+                && !flags.bools[key]
+                && (aliases[key] ? !aliasIsBoolean(key) : true)) {
+                    setArg(key, args[i+1], arg);
+                    i++;
+                }
+                else if (args[i+1] && /true|false/.test(args[i+1])) {
+                    setArg(key, args[i+1] === 'true', arg);
+                    i++;
+                }
+                else {
+                    setArg(key, flags.strings[key] ? '' : true, arg);
+                }
+            }
+        }
+        else {
+            if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
+                argv._.push(
+                    flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
+                );
+            }
+            if (opts.stopEarly) {
+                argv._.push.apply(argv._, args.slice(i + 1));
+                break;
+            }
+        }
+    }
+    
+    Object.keys(defaults).forEach(function (key) {
+        if (!hasKey(argv, key.split('.'))) {
+            setKey(argv, key.split('.'), defaults[key]);
+            
+            (aliases[key] || []).forEach(function (x) {
+                setKey(argv, x.split('.'), defaults[key]);
+            });
+        }
+    });
+    
+    if (opts['--']) {
+        argv['--'] = new Array();
+        notFlags.forEach(function(key) {
+            argv['--'].push(key);
+        });
+    }
+    else {
+        notFlags.forEach(function(key) {
+            argv._.push(key);
+        });
+    }
+
+    return argv;
+};
+
+function hasKey (obj, keys) {
+    var o = obj;
+    keys.slice(0,-1).forEach(function (key) {
+        o = (o[key] || {});
+    });
+
+    var key = keys[keys.length - 1];
+    return key in o;
+}
+
+function isNumber (x) {
+    if (typeof x === 'number') return true;
+    if (/^0x[0-9a-f]+$/i.test(x)) return true;
+    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
+}
+
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/minimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/minimist/package.json
new file mode 100644 (file)
index 0000000..347a970
--- /dev/null
@@ -0,0 +1,106 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "minimist@^1.1.0",
+        "scope": null,
+        "escapedName": "minimist",
+        "name": "minimist",
+        "rawSpec": "^1.1.0",
+        "spec": ">=1.1.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "minimist@>=1.1.0 <2.0.0",
+  "_id": "minimist@1.2.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/minimist",
+  "_nodeVersion": "2.4.0",
+  "_npmUser": {
+    "name": "substack",
+    "email": "substack@gmail.com"
+  },
+  "_npmVersion": "3.2.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "minimist@^1.1.0",
+    "scope": null,
+    "escapedName": "minimist",
+    "name": "minimist",
+    "rawSpec": "^1.1.0",
+    "spec": ">=1.1.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard",
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+  "_shasum": "a35008b20f41383eec1fb914f4cd5df79a264284",
+  "_shrinkwrap": null,
+  "_spec": "minimist@^1.1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "James Halliday",
+    "email": "mail@substack.net",
+    "url": "http://substack.net"
+  },
+  "bugs": {
+    "url": "https://github.com/substack/minimist/issues"
+  },
+  "dependencies": {},
+  "description": "parse argument options",
+  "devDependencies": {
+    "covert": "^1.0.0",
+    "tap": "~0.4.0",
+    "tape": "^3.5.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "a35008b20f41383eec1fb914f4cd5df79a264284",
+    "tarball": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz"
+  },
+  "gitHead": "dc624482fcfec5bc669c68cdb861f00573ed4e64",
+  "homepage": "https://github.com/substack/minimist",
+  "keywords": [
+    "argv",
+    "getopt",
+    "parser",
+    "optimist"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "substack",
+      "email": "mail@substack.net"
+    }
+  ],
+  "name": "minimist",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/substack/minimist.git"
+  },
+  "scripts": {
+    "coverage": "covert test/*.js",
+    "test": "tap test/*.js"
+  },
+  "testling": {
+    "files": "test/*.js",
+    "browsers": [
+      "ie/6..latest",
+      "ff/5",
+      "firefox/latest",
+      "chrome/10",
+      "chrome/latest",
+      "safari/5.1",
+      "safari/latest",
+      "opera/12"
+    ]
+  },
+  "version": "1.2.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/minimist/test/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/minimist/test/bool.js
new file mode 100644 (file)
index 0000000..14b0717
--- /dev/null
@@ -0,0 +1,166 @@
+var parse = require('../');
+var test = require('tape');
+
+test('flag boolean default false', function (t) {
+    var argv = parse(['moo'], {
+        boolean: ['t', 'verbose'],
+        default: { verbose: false, t: false }
+    });
+    
+    t.deepEqual(argv, {
+        verbose: false,
+        t: false,
+        _: ['moo']
+    });
+    
+    t.deepEqual(typeof argv.verbose, 'boolean');
+    t.deepEqual(typeof argv.t, 'boolean');
+    t.end();
+
+});
+
+test('boolean groups', function (t) {
+    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
+        boolean: ['x','y','z']
+    });
+    
+    t.deepEqual(argv, {
+        x : true,
+        y : false,
+        z : true,
+        _ : [ 'one', 'two', 'three' ]
+    });
+    
+    t.deepEqual(typeof argv.x, 'boolean');
+    t.deepEqual(typeof argv.y, 'boolean');
+    t.deepEqual(typeof argv.z, 'boolean');
+    t.end();
+});
+test('boolean and alias with chainable api', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp',  'derp' ];
+    var opts = {
+        herp: { alias: 'h', boolean: true }
+    };
+    var aliasedArgv = parse(aliased, {
+        boolean: 'herp',
+        alias: { h: 'herp' }
+    });
+    var propertyArgv = parse(regular, {
+        boolean: 'herp',
+        alias: { h: 'herp' }
+    });
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected); 
+    t.end();
+});
+
+test('boolean and alias with options hash', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp', 'derp' ];
+    var opts = {
+        alias: { 'h': 'herp' },
+        boolean: 'herp'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected);
+    t.end();
+});
+
+test('boolean and alias array with options hash', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp', 'derp' ];
+    var alt = [ '--harp', 'derp' ];
+    var opts = {
+        alias: { 'h': ['herp', 'harp'] },
+        boolean: 'h'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var altPropertyArgv = parse(alt, opts);
+    var expected = {
+        harp: true,
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected);
+    t.same(altPropertyArgv, expected);
+    t.end();
+});
+
+test('boolean and alias using explicit true', function (t) {
+    var aliased = [ '-h', 'true' ];
+    var regular = [ '--herp',  'true' ];
+    var opts = {
+        alias: { h: 'herp' },
+        boolean: 'h'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ ]
+    };
+
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected); 
+    t.end();
+});
+
+// regression, see https://github.com/substack/node-optimist/issues/71
+test('boolean and --x=true', function(t) {
+    var parsed = parse(['--boool', '--other=true'], {
+        boolean: 'boool'
+    });
+
+    t.same(parsed.boool, true);
+    t.same(parsed.other, 'true');
+
+    parsed = parse(['--boool', '--other=false'], {
+        boolean: 'boool'
+    });
+    
+    t.same(parsed.boool, true);
+    t.same(parsed.other, 'false');
+    t.end();
+});
+
+test('boolean --boool=true', function (t) {
+    var parsed = parse(['--boool=true'], {
+        default: {
+            boool: false
+        },
+        boolean: ['boool']
+    });
+
+    t.same(parsed.boool, true);
+    t.end();
+});
+
+test('boolean --boool=false', function (t) {
+    var parsed = parse(['--boool=false'], {
+        default: {
+          boool: true
+        },
+        boolean: ['boool']
+    });
+
+    t.same(parsed.boool, false);
+    t.end();
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/minimist/test/kv_short.js b/wrt/build/node_modules/grunt-standard/node_modules/minimist/test/kv_short.js
new file mode 100644 (file)
index 0000000..f813b30
--- /dev/null
@@ -0,0 +1,16 @@
+var parse = require('../');
+var test = require('tape');
+
+test('short -k=v' , function (t) {
+    t.plan(1);
+    
+    var argv = parse([ '-b=123' ]);
+    t.deepEqual(argv, { b: 123, _: [] });
+});
+
+test('multi short -k=v' , function (t) {
+    t.plan(1);
+    
+    var argv = parse([ '-a=whatever', '-b=robots' ]);
+    t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
+});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/optionator/package.json b/wrt/build/node_modules/grunt-standard/node_modules/optionator/package.json
new file mode 100644 (file)
index 0000000..5858644
--- /dev/null
@@ -0,0 +1,106 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "optionator@^0.5.0",
+        "scope": null,
+        "escapedName": "optionator",
+        "name": "optionator",
+        "rawSpec": "^0.5.0",
+        "spec": ">=0.5.0 <0.6.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "optionator@>=0.5.0 <0.6.0",
+  "_id": "optionator@0.5.0",
+  "_inCache": true,
+  "_location": "/grunt-standard/optionator",
+  "_npmUser": {
+    "name": "gkz",
+    "email": "z@georgezahariev.com"
+  },
+  "_npmVersion": "2.0.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "optionator@^0.5.0",
+    "scope": null,
+    "escapedName": "optionator",
+    "name": "optionator",
+    "rawSpec": "^0.5.0",
+    "spec": ">=0.5.0 <0.6.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
+  "_shasum": "b75a8995a2d417df25b6e4e3862f50aa88651368",
+  "_shrinkwrap": null,
+  "_spec": "optionator@^0.5.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "George Zahariev",
+    "email": "z@georgezahariev.com"
+  },
+  "bugs": {
+    "url": "https://github.com/gkz/optionator/issues"
+  },
+  "dependencies": {
+    "deep-is": "~0.1.2",
+    "fast-levenshtein": "~1.0.0",
+    "levn": "~0.2.5",
+    "prelude-ls": "~1.1.1",
+    "type-check": "~0.3.1",
+    "wordwrap": "~0.0.2"
+  },
+  "description": "option parsing and help generation",
+  "devDependencies": {
+    "LiveScript": "~1.3.1",
+    "istanbul": "~0.1.43",
+    "mocha": "~2.0.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "b75a8995a2d417df25b6e4e3862f50aa88651368",
+    "tarball": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz"
+  },
+  "engines": {
+    "node": ">= 0.8.0"
+  },
+  "files": [
+    "lib",
+    "README.md",
+    "LICENSE"
+  ],
+  "gitHead": "52241eef663601bef5120c3a770d60533d2b3097",
+  "homepage": "https://github.com/gkz/optionator",
+  "keywords": [
+    "options"
+  ],
+  "licenses": [
+    {
+      "type": "MIT",
+      "url": "https://raw.githubusercontent.com/gkz/optionator/master/LICENSE"
+    }
+  ],
+  "main": "./lib/",
+  "maintainers": [
+    {
+      "name": "gkz",
+      "email": "z@georgezahariev.com"
+    }
+  ],
+  "name": "optionator",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/gkz/optionator.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "version": "0.5.0"
+}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/browser-raw.js b/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/browser-raw.js
deleted file mode 100644 (file)
index 72bd4a0..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-"use strict";
-
-// Use the fastest means possible to execute a task in its own turn, with
-// priority over other events including IO, animation, reflow, and redraw
-// events in browsers.
-//
-// An exception thrown by a task will permanently interrupt the processing of
-// subsequent tasks. The higher level `asap` function ensures that if an
-// exception is thrown by a task, that the task queue will continue flushing as
-// soon as possible, but if you use `rawAsap` directly, you are responsible to
-// either ensure that no exceptions are thrown from your task, or to manually
-// call `rawAsap.requestFlush` if an exception is thrown.
-module.exports = rawAsap;
-function rawAsap(task) {
-    if (!queue.length) {
-        requestFlush();
-        flushing = true;
-    }
-    // Equivalent to push, but avoids a function call.
-    queue[queue.length] = task;
-}
-
-var queue = [];
-// Once a flush has been requested, no further calls to `requestFlush` are
-// necessary until the next `flush` completes.
-var flushing = false;
-// `requestFlush` is an implementation-specific method that attempts to kick
-// off a `flush` event as quickly as possible. `flush` will attempt to exhaust
-// the event queue before yielding to the browser's own event loop.
-var requestFlush;
-// The position of the next task to execute in the task queue. This is
-// preserved between calls to `flush` so that it can be resumed if
-// a task throws an exception.
-var index = 0;
-// If a task schedules additional tasks recursively, the task queue can grow
-// unbounded. To prevent memory exhaustion, the task queue will periodically
-// truncate already-completed tasks.
-var capacity = 1024;
-
-// The flush function processes all tasks that have been scheduled with
-// `rawAsap` unless and until one of those tasks throws an exception.
-// If a task throws an exception, `flush` ensures that its state will remain
-// consistent and will resume where it left off when called again.
-// However, `flush` does not make any arrangements to be called again if an
-// exception is thrown.
-function flush() {
-    while (index < queue.length) {
-        var currentIndex = index;
-        // Advance the index before calling the task. This ensures that we will
-        // begin flushing on the next task the task throws an error.
-        index = index + 1;
-        queue[currentIndex].call();
-        // Prevent leaking memory for long chains of recursive calls to `asap`.
-        // If we call `asap` within tasks scheduled by `asap`, the queue will
-        // grow, but to avoid an O(n) walk for every task we execute, we don't
-        // shift tasks off the queue after they have been executed.
-        // Instead, we periodically shift 1024 tasks off the queue.
-        if (index > capacity) {
-            // Manually shift all values starting at the index back to the
-            // beginning of the queue.
-            for (var scan = 0; scan < index; scan++) {
-                queue[scan] = queue[scan + index];
-            }
-            queue.length -= index;
-            index = 0;
-        }
-    }
-    queue.length = 0;
-    index = 0;
-    flushing = false;
-}
-
-// `requestFlush` is implemented using a strategy based on data collected from
-// every available SauceLabs Selenium web driver worker at time of writing.
-// https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593
-
-// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that
-// have WebKitMutationObserver but not un-prefixed MutationObserver.
-// Must use `global` instead of `window` to work in both frames and web
-// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.
-var BrowserMutationObserver = global.MutationObserver || global.WebKitMutationObserver;
-
-// MutationObservers are desirable because they have high priority and work
-// reliably everywhere they are implemented.
-// They are implemented in all modern browsers.
-//
-// - Android 4-4.3
-// - Chrome 26-34
-// - Firefox 14-29
-// - Internet Explorer 11
-// - iPad Safari 6-7.1
-// - iPhone Safari 7-7.1
-// - Safari 6-7
-if (typeof BrowserMutationObserver === "function") {
-    requestFlush = makeRequestCallFromMutationObserver(flush);
-
-// MessageChannels are desirable because they give direct access to the HTML
-// task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera
-// 11-12, and in web workers in many engines.
-// Although message channels yield to any queued rendering and IO tasks, they
-// would be better than imposing the 4ms delay of timers.
-// However, they do not work reliably in Internet Explorer or Safari.
-
-// Internet Explorer 10 is the only browser that has setImmediate but does
-// not have MutationObservers.
-// Although setImmediate yields to the browser's renderer, it would be
-// preferrable to falling back to setTimeout since it does not have
-// the minimum 4ms penalty.
-// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and
-// Desktop to a lesser extent) that renders both setImmediate and
-// MessageChannel useless for the purposes of ASAP.
-// https://github.com/kriskowal/q/issues/396
-
-// Timers are implemented universally.
-// We fall back to timers in workers in most engines, and in foreground
-// contexts in the following browsers.
-// However, note that even this simple case requires nuances to operate in a
-// broad spectrum of browsers.
-//
-// - Firefox 3-13
-// - Internet Explorer 6-9
-// - iPad Safari 4.3
-// - Lynx 2.8.7
-} else {
-    requestFlush = makeRequestCallFromTimer(flush);
-}
-
-// `requestFlush` requests that the high priority event queue be flushed as
-// soon as possible.
-// This is useful to prevent an error thrown in a task from stalling the event
-// queue if the exception handled by Node.js’s
-// `process.on("uncaughtException")` or by a domain.
-rawAsap.requestFlush = requestFlush;
-
-// To request a high priority event, we induce a mutation observer by toggling
-// the text of a text node between "1" and "-1".
-function makeRequestCallFromMutationObserver(callback) {
-    var toggle = 1;
-    var observer = new BrowserMutationObserver(callback);
-    var node = document.createTextNode("");
-    observer.observe(node, {characterData: true});
-    return function requestCall() {
-        toggle = -toggle;
-        node.data = toggle;
-    };
-}
-
-// The message channel technique was discovered by Malte Ubl and was the
-// original foundation for this library.
-// http://www.nonblocking.io/2011/06/windownexttick.html
-
-// Safari 6.0.5 (at least) intermittently fails to create message ports on a
-// page's first load. Thankfully, this version of Safari supports
-// MutationObservers, so we don't need to fall back in that case.
-
-// function makeRequestCallFromMessageChannel(callback) {
-//     var channel = new MessageChannel();
-//     channel.port1.onmessage = callback;
-//     return function requestCall() {
-//         channel.port2.postMessage(0);
-//     };
-// }
-
-// For reasons explained above, we are also unable to use `setImmediate`
-// under any circumstances.
-// Even if we were, there is another bug in Internet Explorer 10.
-// It is not sufficient to assign `setImmediate` to `requestFlush` because
-// `setImmediate` must be called *by name* and therefore must be wrapped in a
-// closure.
-// Never forget.
-
-// function makeRequestCallFromSetImmediate(callback) {
-//     return function requestCall() {
-//         setImmediate(callback);
-//     };
-// }
-
-// Safari 6.0 has a problem where timers will get lost while the user is
-// scrolling. This problem does not impact ASAP because Safari 6.0 supports
-// mutation observers, so that implementation is used instead.
-// However, if we ever elect to use timers in Safari, the prevalent work-around
-// is to add a scroll event listener that calls for a flush.
-
-// `setTimeout` does not call the passed callback if the delay is less than
-// approximately 7 in web workers in Firefox 8 through 18, and sometimes not
-// even then.
-
-function makeRequestCallFromTimer(callback) {
-    return function requestCall() {
-        // We dispatch a timeout with a specified delay of 0 for engines that
-        // can reliably accommodate that request. This will usually be snapped
-        // to a 4 milisecond delay, but once we're flushing, there's no delay
-        // between events.
-        var timeoutHandle = setTimeout(handleTimer, 0);
-        // However, since this timer gets frequently dropped in Firefox
-        // workers, we enlist an interval handle that will try to fire
-        // an event 20 times per second until it succeeds.
-        var intervalHandle = setInterval(handleTimer, 50);
-
-        function handleTimer() {
-            // Whichever timer succeeds will cancel both timers and
-            // execute the callback.
-            clearTimeout(timeoutHandle);
-            clearInterval(intervalHandle);
-            callback();
-        }
-    };
-}
-
-// This is for `asap.js` only.
-// Its name will be periodically randomized to break any code that depends on
-// its existence.
-rawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer;
-
-// ASAP was originally a nextTick shim included in Q. This was factored out
-// into this ASAP package. It was later adapted to RSVP which made further
-// amendments. These decisions, particularly to marginalize MessageChannel and
-// to capture the MutationObserver implementation in a closure, were integrated
-// back into ASAP proper.
-// https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/package.json b/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/package.json
deleted file mode 100644 (file)
index ceacd2e..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-{
-  "_args": [
-    [
-      "asap@https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "asap@https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-  "_id": "asap@https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-SgKLdGwaByAVHCZQwWbBfKAyou8=",
-  "_location": "/grunt-standard/promise/asap",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "asap@https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-    "name": "asap",
-    "escapedName": "asap",
-    "rawSpec": "https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/asap/-/asap-2.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/promise"
-  ],
-  "_spec": "https://registry.npmjs.org/asap/-/asap-2.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "browser": {
-    "./asap.js": "./browser-asap.js",
-    "./raw.js": "./browser-raw.js",
-    "./test/domain.js": "./test/browser-domain.js"
-  },
-  "bugs": {
-    "url": "https://github.com/kriskowal/asap/issues"
-  },
-  "description": "High-priority task queue for Node.js and browsers",
-  "devDependencies": {
-    "events": "^1.0.1",
-    "jshint": "^2.5.1",
-    "knox": "^0.8.10",
-    "mr": "^2.0.5",
-    "opener": "^1.3.0",
-    "q": "^2.0.3",
-    "q-io": "^2.0.3",
-    "saucelabs": "^0.1.1",
-    "wd": "^0.2.21",
-    "weak-map": "^1.0.5"
-  },
-  "files": [
-    "raw.js",
-    "asap.js",
-    "browser-raw.js",
-    "browser-asap.js"
-  ],
-  "homepage": "https://github.com/kriskowal/asap#readme",
-  "keywords": [
-    "event",
-    "task",
-    "queue"
-  ],
-  "license": {
-    "type": "MIT",
-    "url": "https://github.com/kriskowal/asap/raw/master/LICENSE.md"
-  },
-  "main": "./asap.js",
-  "name": "asap",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/kriskowal/asap.git"
-  },
-  "scripts": {
-    "lint": "jshint raw.js asap.js browser-raw.js browser-asap.js $(find scripts -name '*.js' | grep -v gauntlet)",
-    "test": "npm run lint && npm run test-node",
-    "test-browser": "node scripts/publish-bundle.js test/asap-test.js | xargs opener",
-    "test-node": "node test/asap-test.js",
-    "test-publish": "node scripts/publish-bundle.js test/asap-test.js | pbcopy",
-    "test-saucelabs": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-spot-configurations.json",
-    "test-saucelabs-all": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-all-configurations.json",
-    "test-saucelabs-worker": "node scripts/saucelabs-worker-test.js scripts/saucelabs-spot-configurations.json",
-    "test-saucelabs-worker-all": "node scripts/saucelabs-worker-test.js scripts/saucelabs-all-configurations.json",
-    "test-travis": "npm run lint && npm run test-node && npm run test-saucelabs && npm run test-saucelabs-worker"
-  },
-  "version": "https://registry.npmjs.org/asap/-/asap-2.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/raw.js b/wrt/build/node_modules/grunt-standard/node_modules/promise/node_modules/asap/raw.js
deleted file mode 100644 (file)
index eba9e5e..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-"use strict";
-
-var domain; // The domain module is executed on demand
-var hasSetImmediate = typeof setImmediate === "function";
-
-// Use the fastest means possible to execute a task in its own turn, with
-// priority over other events including network IO events in Node.js.
-//
-// An exception thrown by a task will permanently interrupt the processing of
-// subsequent tasks. The higher level `asap` function ensures that if an
-// exception is thrown by a task, that the task queue will continue flushing as
-// soon as possible, but if you use `rawAsap` directly, you are responsible to
-// either ensure that no exceptions are thrown from your task, or to manually
-// call `rawAsap.requestFlush` if an exception is thrown.
-module.exports = rawAsap;
-function rawAsap(task) {
-    if (!queue.length) {
-        requestFlush();
-        flushing = true;
-    }
-    // Avoids a function call
-    queue[queue.length] = task;
-}
-
-var queue = [];
-// Once a flush has been requested, no further calls to `requestFlush` are
-// necessary until the next `flush` completes.
-var flushing = false;
-// The position of the next task to execute in the task queue. This is
-// preserved between calls to `flush` so that it can be resumed if
-// a task throws an exception.
-var index = 0;
-// If a task schedules additional tasks recursively, the task queue can grown
-// unbounded. To prevent memory excaustion, the task queue will periodically
-// truncate already-completed tasks.
-var capacity = 1024;
-
-// The flush function processes all tasks that have been scheduled with
-// `rawAsap` unless and until one of those tasks throws an exception.
-// If a task throws an exception, `flush` ensures that its state will remain
-// consistent and will resume where it left off when called again.
-// However, `flush` does not make any arrangements to be called again if an
-// exception is thrown.
-function flush() {
-    while (index < queue.length) {
-        var currentIndex = index;
-        // Advance the index before calling the task. This ensures that we will
-        // begin flushing on the next task the task throws an error.
-        index = index + 1;
-        queue[currentIndex].call();
-        // Prevent leaking memory for long chains of recursive calls to `asap`.
-        // If we call `asap` within tasks scheduled by `asap`, the queue will
-        // grow, but to avoid an O(n) walk for every task we execute, we don't
-        // shift tasks off the queue after they have been executed.
-        // Instead, we periodically shift 1024 tasks off the queue.
-        if (index > capacity) {
-            // Manually shift all values starting at the index back to the
-            // beginning of the queue.
-            for (var scan = 0; scan < index; scan++) {
-                queue[scan] = queue[scan + index];
-            }
-            queue.length -= index;
-            index = 0;
-        }
-    }
-    queue.length = 0;
-    index = 0;
-    flushing = false;
-}
-
-rawAsap.requestFlush = requestFlush;
-function requestFlush() {
-    // Ensure flushing is not bound to any domain.
-    // It is not sufficient to exit the domain, because domains exist on a stack.
-    // To execute code outside of any domain, the following dance is necessary.
-    var parentDomain = process.domain;
-    if (parentDomain) {
-        if (!domain) {
-            // Lazy execute the domain module.
-            // Only employed if the user elects to use domains.
-            domain = require("domain");
-        }
-        domain.active = process.domain = null;
-    }
-
-    // `setImmediate` is slower that `process.nextTick`, but `process.nextTick`
-    // cannot handle recursion.
-    // `requestFlush` will only be called recursively from `asap.js`, to resume
-    // flushing after an error is thrown into a domain.
-    // Conveniently, `setImmediate` was introduced in the same version
-    // `process.nextTick` started throwing recursion errors.
-    if (flushing && hasSetImmediate) {
-        setImmediate(flush);
-    } else {
-        process.nextTick(flush);
-    }
-
-    if (parentDomain) {
-        domain.active = process.domain = parentDomain;
-    }
-}
-
index 52fa034..3b6d455 100644 (file)
@@ -1,31 +1,46 @@
 {
   "_args": [
     [
-      "promise@https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "promise@7.0.0",
+        "scope": null,
+        "escapedName": "promise",
+        "name": "promise",
+        "rawSpec": "7.0.0",
+        "spec": "7.0.0",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard"
     ]
   ],
-  "_development": true,
-  "_from": "promise@https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-  "_id": "promise@https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-mK5LV5h1UhbErqLB9iOAUXq4dns=",
+  "_from": "promise@7.0.0",
+  "_id": "promise@7.0.0",
+  "_inCache": true,
   "_location": "/grunt-standard/promise",
+  "_nodeVersion": "1.6.2",
+  "_npmUser": {
+    "name": "forbeslindesay",
+    "email": "forbes@lindesay.co.uk"
+  },
+  "_npmVersion": "2.7.1",
   "_phantomChildren": {},
   "_requested": {
-    "type": "remote",
-    "raw": "promise@https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-    "name": "promise",
+    "raw": "promise@7.0.0",
+    "scope": null,
     "escapedName": "promise",
-    "rawSpec": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz"
+    "name": "promise",
+    "rawSpec": "7.0.0",
+    "spec": "7.0.0",
+    "type": "version"
   },
   "_requiredBy": [
     "/grunt-standard"
   ],
-  "_spec": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/promise/-/promise-7.0.0.tgz",
+  "_shasum": "98ae4b5798755216c4aea2c1f62380517ab8767b",
+  "_shrinkwrap": null,
+  "_spec": "promise@7.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard",
   "author": {
     "name": "ForbesLindesay"
   },
     "promises-aplus-tests": "*",
     "rimraf": "^2.3.2"
   },
-  "homepage": "https://github.com/then/promise#readme",
+  "directories": {},
+  "dist": {
+    "shasum": "98ae4b5798755216c4aea2c1f62380517ab8767b",
+    "tarball": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz"
+  },
+  "gitHead": "0f7bcb9a010d299561b519c30406ad719bc349a1",
+  "homepage": "https://github.com/then/promise",
   "license": "MIT",
   "main": "index.js",
+  "maintainers": [
+    {
+      "name": "forbeslindesay",
+      "email": "forbes@lindesay.co.uk"
+    },
+    {
+      "name": "nathan7",
+      "email": "nathan@nathan7.eu"
+    }
+  ],
   "name": "promise",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git+https://github.com/then/promise.git"
@@ -62,5 +95,5 @@
     "test-memory-leak": "node --expose-gc test/memory-leak.js",
     "test-resolve": "mocha test/resolver-tests.js --timeout 200 --slow 999999"
   },
-  "version": "https://registry.npmjs.org/promise/-/promise-7.0.0.tgz"
+  "version": "7.0.0"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/.npmignore
deleted file mode 100644 (file)
index c2658d7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-node_modules/
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/node_modules/string.prototype.endswith/package.json
deleted file mode 100644 (file)
index d4511f6..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "string.prototype.endswith@https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "string.prototype.endswith@https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-  "_id": "string.prototype.endswith@https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-oZwg3uUamHd+mkfhDwm+OTubunU=",
-  "_location": "/grunt-standard/standard-format/esformatter-eol-last/string.prototype.endswith",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "string.prototype.endswith@https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-    "name": "string.prototype.endswith",
-    "escapedName": "string.prototype.endswith",
-    "rawSpec": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter-eol-last"
-  ],
-  "_spec": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mathias Bynens",
-    "url": "http://mathiasbynens.be/"
-  },
-  "bugs": {
-    "url": "https://github.com/mathiasbynens/String.prototype.endsWith/issues"
-  },
-  "description": "A robust & optimized `String.prototype.endsWith` polyfill, based on the ECMAScript 6 specification.",
-  "directories": {
-    "test": "tests"
-  },
-  "files": [
-    "LICENSE-MIT.txt",
-    "endswith.js"
-  ],
-  "homepage": "http://mths.be/endswith",
-  "keywords": [
-    "string",
-    "endswith",
-    "es6",
-    "ecmascript",
-    "polyfill"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "http://mths.be/mit"
-    }
-  ],
-  "main": "endswith.js",
-  "name": "string.prototype.endswith",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/mathiasbynens/String.prototype.endsWith.git"
-  },
-  "scripts": {
-    "cover": "istanbul cover --report html --verbose --dir coverage tests/tests.js",
-    "test": "node tests/tests.js"
-  },
-  "version": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-eol-last/package.json
deleted file mode 100644 (file)
index 3c46136..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-{
-  "_args": [
-    [
-      "esformatter-eol-last@https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esformatter-eol-last@https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-  "_id": "esformatter-eol-last@https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-RaeP9GIrHUnkT1a0mQV2amMpDAc=",
-  "_location": "/grunt-standard/standard-format/esformatter-eol-last",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esformatter-eol-last@https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-    "name": "esformatter-eol-last",
-    "escapedName": "esformatter-eol-last",
-    "rawSpec": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": "",
-  "bugs": {
-    "url": "https://github.com/briandipalma/esformatter-eol-last/issues"
-  },
-  "dependencies": {
-    "string.prototype.endswith": "^0.2.0"
-  },
-  "description": "Adds a newline to the end of esformatter output. Will not add newline is the output ends in a newline already.",
-  "devDependencies": {
-    "mocha": "^2.0.1"
-  },
-  "homepage": "https://github.com/briandipalma/esformatter-eol-last",
-  "license": "ISC",
-  "main": "index.js",
-  "name": "esformatter-eol-last",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/briandipalma/esformatter-eol-last.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/esformatter-eol-last/-/esformatter-eol-last-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/README.md
deleted file mode 100644 (file)
index c2c03c2..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-# rocambole-token
-
-Helpers to manipulate [rocambole](https://github.com/millermedeiros/rocambole)
-AST tokens.
-
-
-## Why?
-
-Created mainly to be used by
-[esindent](https://github.com/millermedeiros/esindent/) and
-[esformatter](https://github.com/millermedeiros/esformatter/).
-
-
-## Important Notes
-
-Right now all methods ignores the `loc` and `range` info of the tokens, this is
-*by design* since updating the range and loc info on a large JS program
-multiple times can be very expensive. It's *better* to write a separate tool to
-*sanitize* this info and that can be executed as a separate step.
-
-Also important to note that right now rocambole doesn't add any reference on
-the token itself to the nodes that contain that token, so if you remove a token
-that happens to be the `startToken` or `endToken` of any node you might have
-some conflict if you start manipulating the tokens based on the `nodes`,
-instead of the `token` LinkedList. - the `node.startToken` might be *detached*
-from the LinkedList.
-
-Test coverage is pretty low so far, but since it was mostly extracted from
-esformatter the methods should work as expected. I started to write some tests
-just to show how I would do it but did not had the time to finish it...
-(ideally tests should be written before the implementation).
-
-
-## License
-
-Released under the MIT License.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/find.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/find.js
deleted file mode 100644 (file)
index 956dc06..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-"use strict";
-
-var makeCheck = require('./makeCheck');
-var isNotEmpty = require('./is').isNotEmpty;
-
-
-// ---
-
-
-exports.findInBetween = findInBetween;
-function findInBetween(startToken, endToken, check) {
-  check = makeCheck(check);
-  var found;
-  var last = endToken && endToken.next;
-  while (startToken && startToken !== last && !found) {
-    if (check(startToken)) {
-      found = startToken;
-    }
-    startToken = startToken.next;
-  }
-  return found;
-}
-
-
-exports.findInBetweenFromEnd = findInBetweenFromEnd;
-function findInBetweenFromEnd(startToken, endToken, check) {
-  check = makeCheck(check);
-  var found;
-  var last = startToken && startToken.prev;
-  while (endToken && endToken !== last && !found) {
-    if (check(endToken)) {
-      found = endToken;
-    }
-    endToken = endToken.prev;
-  }
-  return found;
-}
-
-
-exports.findNext = findNext;
-function findNext(startToken, check) {
-  check = makeCheck(check);
-  startToken = startToken && startToken.next;
-  while (startToken) {
-    if (check(startToken)) {
-      return startToken;
-    }
-    startToken = startToken.next;
-  }
-}
-
-
-exports.findPrev = findPrev;
-function findPrev(endToken, check) {
-  check = makeCheck(check);
-  endToken = endToken && endToken.prev;
-  while (endToken) {
-    if (check(endToken)) {
-      return endToken;
-    }
-    endToken = endToken.prev;
-  }
-}
-
-
-exports.findNextNonEmpty = findNextNonEmpty;
-function findNextNonEmpty(startToken) {
-  return findNext(startToken, isNotEmpty);
-}
-
-
-exports.findPrevNonEmpty = findPrevNonEmpty;
-function findPrevNonEmpty(endToken) {
-  return findPrev(endToken, isNotEmpty);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/index.js
deleted file mode 100644 (file)
index 9241344..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-"use strict";
-
-// ---
-
-function mixIn(target, source){
-  Object.keys(source).forEach(function(key){
-    target[key] = source[key];
-  });
-  return target;
-}
-
-
-// ---
-
-
-exports.eachInBetween = eachInBetween;
-function eachInBetween(startToken, endToken, iterator) {
-  var last = endToken && endToken.next;
-  while (startToken && startToken !== last) {
-    iterator(startToken);
-    startToken = startToken.next;
-  }
-}
-
-
-// ---
-
-// XXX: ugly but works for now, that way we avoid changing the whole
-// esformatter structure.
-mixIn(exports, require('./find'));
-mixIn(exports, require('./insert'));
-mixIn(exports, require('./is'));
-mixIn(exports, require('./remove'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/insert.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/insert.js
deleted file mode 100644 (file)
index 7768007..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-"use strict";
-
-exports.before = before;
-function before(target, newToken) {
-  newToken.prev = target.prev;
-  newToken.next = target;
-  if (target.prev) {
-    target.prev.next = newToken;
-  } else if (target.root) {
-    target.root.startToken = newToken;
-  }
-  target.prev = newToken;
-  newToken.root = target.root;
-  return newToken;
-}
-
-
-exports.after = after;
-function after(target, newToken) {
-  if (target.next) {
-    target.next.prev = newToken;
-  } else if (target.root) {
-    target.root.endToken = newToken;
-  }
-  newToken.prev = target;
-  newToken.next = target.next;
-  target.next = newToken;
-  newToken.root = target.root;
-  return newToken;
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/is.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/is.js
deleted file mode 100644 (file)
index 68335e5..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-"use strict";
-
-
-// ---
-
-
-exports.isWs = isWs;
-function isWs(token) {
-  return token && token.type === 'WhiteSpace';
-}
-
-
-exports.isBr = isBr;
-function isBr(token) {
-  return token && token.type === 'LineBreak';
-}
-
-
-exports.isEmpty = isEmpty;
-function isEmpty(token) {
-  return token &&
-    (token.type === 'WhiteSpace' ||
-    token.type === 'LineBreak' ||
-    token.type === 'Indent');
-}
-
-
-exports.isNotEmpty = isNotEmpty;
-function isNotEmpty(token) {
-  return !isEmpty(token);
-}
-
-
-//XXX: isCode is a bad name, find something better to describe it
-exports.isCode = isCode;
-function isCode(token) {
-  return !isEmpty(token) && !isComment(token);
-}
-
-
-exports.isSemiColon = isSemiColon;
-function isSemiColon(token) {
-  return token && (token.type === 'Punctuator' && token.value === ';');
-}
-
-
-exports.isComma = isComma;
-function isComma(token) {
-  return token && (token.type === 'Punctuator' && token.value === ',');
-}
-
-
-exports.isIndent = isIndent;
-function isIndent(token) {
-  return token && token.type === 'Indent';
-}
-
-
-exports.isComment = isComment;
-function isComment(token) {
-  return token && (token.type === 'LineComment' || token.type === 'BlockComment');
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/makeCheck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/makeCheck.js
deleted file mode 100644 (file)
index 5f92861..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-"use strict";
-
-module.exports = makeCheck;
-
-function makeCheck(orig) {
-  if (typeof orig === 'string') {
-    return makeStringCheck(orig);
-  }
-  else if (Array.isArray(orig)) {
-    return makeArrayCheck(orig);
-  }
-  // already a function or invalid value
-  return orig;
-}
-
-
-function makeArrayCheck(arr) {
-  return function checkTypeAndValueByIndex(token) {
-    return token && (arr.indexOf(token.type) !== -1 || arr.indexOf(token.value) !== -1);
-  };
-}
-
-
-function makeStringCheck(str) {
-  return function checkTypeAndValueByString(token) {
-    return token && (token.type === str || token.value === str);
-  };
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/package.json
deleted file mode 100644 (file)
index e285ccb..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_id": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-x4XfdCjcPLJ614lwR71SOMwHDTU=",
-  "_location": "/grunt-standard/standard-format/esformatter-literal-notation/rocambole-token",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "name": "rocambole-token",
-    "escapedName": "rocambole-token",
-    "rawSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter-literal-notation"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "contact@millermedeiros.com",
-    "url": "http://blog.millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-token/issues"
-  },
-  "description": "Helpers for rocambole AST token manipulation",
-  "devDependencies": {
-    "jasmine-node": "~1.11.0",
-    "rocambole": "~0.2.3"
-  },
-  "homepage": "https://github.com/millermedeiros/rocambole-token",
-  "jshintConfig": {
-    "node": true
-  },
-  "keywords": [
-    "ast",
-    "token",
-    "rocambole"
-  ],
-  "license": "MIT",
-  "main": "./index.js",
-  "name": "rocambole-token",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-token.git"
-  },
-  "scripts": {
-    "test": "jasmine-node test/"
-  },
-  "version": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/remove.js
deleted file mode 100644 (file)
index bc32add..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-"use strict";
-
-var makeCheck = require('./makeCheck');
-var isEmpty = require('./is').isEmpty;
-
-
-// ---
-
-
-exports.remove = remove;
-function remove(target) {
-  if (target.next) {
-    target.next.prev = target.prev;
-  } else if (target.root) {
-    target.root.endToken = target.prev;
-  }
-
-  if (target.prev) {
-    target.prev.next = target.next;
-  } else if (target.root) {
-    target.root.startToken = target.next;
-  }
-}
-
-
-exports.removeInBetween = removeInBetween;
-function removeInBetween(startToken, endToken, check) {
-  check = makeCheck(check);
-  var last = endToken && endToken.next;
-  while (startToken && startToken !== last) {
-    if (check(startToken)) {
-      remove(startToken);
-    }
-    startToken = startToken.next;
-  }
-}
-
-
-exports.removeAdjacent = removeAdjacent;
-function removeAdjacent(token, check) {
-  removeAdjacentBefore(token, check);
-  removeAdjacentAfter(token, check);
-}
-
-
-exports.removeAdjacentBefore = removeAdjacentBefore;
-function removeAdjacentBefore(token, check) {
-  check = makeCheck(check);
-  var prev = token.prev;
-  while (prev && check(prev)) {
-    remove(prev);
-    prev = prev.prev;
-  }
-}
-
-
-exports.removeAdjacentAfter = removeAdjacentAfter;
-function removeAdjacentAfter(token, check) {
-  check = makeCheck(check);
-  var next = token.next;
-  while (next && check(next)) {
-    remove(next);
-    next = next.next;
-  }
-}
-
-
-exports.removeEmptyAdjacentBefore = removeEmptyAdjacentBefore;
-function removeEmptyAdjacentBefore(startToken) {
-  removeAdjacentBefore(startToken, isEmpty);
-}
-
-
-exports.removeEmptyAdjacentAfter = removeEmptyAdjacentAfter;
-function removeEmptyAdjacentAfter(startToken) {
-  removeAdjacentAfter(startToken, isEmpty);
-}
-
-
-exports.removeEmptyInBetween = removeEmptyInBetween;
-function removeEmptyInBetween(startToken, endToken) {
-  removeInBetween(startToken, endToken, isEmpty);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/test/find-spec.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole-token/test/find-spec.js
deleted file mode 100644 (file)
index b63ffe4..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-/* jshint strict:true */
-/* global describe, it, expect, beforeEach */
-"use strict";
-
-// ---
-
-
-var rocambole = require('rocambole');
-
-var _find = require('../find');
-var findInBetween = _find.findInBetween;
-var findInBetweenFromEnd = _find.findInBetweenFromEnd;
-
-
-// ---
-
-
-describe('find', function () {
-
-
-  describe('findInBetween', function () {
-
-    var ast = rocambole.parse('var foo = "bar";\nfunction fn(a, b){\nreturn b? a + b : a * 2;\n}');
-
-    it('should return first token inside range by value', function () {
-      var tk = findInBetween(ast.startToken, ast.endToken, 'a');
-      expect( tk.type ).toBe( 'Identifier' );
-      expect( tk.value ).toBe( 'a' );
-      expect( tk.prev.value ).toBe( '(' );
-    });
-
-    it('should return first token inside range by Type', function () {
-      var tk = findInBetween(ast.startToken, ast.endToken, 'Punctuator');
-      expect( tk.value ).toBe( '=' );
-    });
-
-    it('should return first token that passes truth test', function () {
-      var tk = findInBetween(ast.startToken, ast.endToken, function(val){
-        return val.type === 'Punctuator' && val.prev.prev.value !== 'foo';
-      });
-      expect( tk.value ).toBe(';');
-    });
-
-    it('shold return first token that matches any array items values', function () {
-      var tk = findInBetween(ast.startToken, ast.endToken, ['?', 'return']);
-      expect( tk.type ).toBe( 'Keyword' );
-    });
-
-    it('shold return first token that matches any array items types', function () {
-      var tk = findInBetween(ast.startToken, ast.endToken, ['Keyword', 'Identifier']);
-      expect( tk.value ).toBe( 'var' );
-    });
-
-  });
-
-
-  describe('findInBetweenFromEnd', function () {
-
-    var ast = rocambole.parse('var foo = "bar";\nfunction fn(a, b){\nreturn b? a + b : a * 2;\n}');
-
-    it('should return first match from end by "type"', function () {
-      var tk = findInBetweenFromEnd(ast.startToken, ast.endToken, 'Keyword');
-      expect( tk.value ).toBe( 'return' );
-    });
-
-    it('should return first match from end by "value"', function () {
-      var tk = findInBetweenFromEnd(ast.startToken, ast.endToken, 'a');
-      expect( tk.prev.prev.value ).toBe( ':' );
-    });
-
-
-  });
-
-
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/README.md
deleted file mode 100644 (file)
index a74bd12..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-**Esprima** ([esprima.org](http://esprima.org)) is a high performance,
-standard-compliant [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
-parser written in ECMAScript (also popularly known as
-[JavaScript](http://en.wikipedia.org/wiki/JavaScript>JavaScript)).
-Esprima is created and maintained by [Ariya Hidayat](http://twitter.com/ariyahidayat),
-with the help of [many contributors](https://github.com/ariya/esprima/contributors).
-
-Esprima runs on web browsers (IE 6+, Firefox 1+, Safari 3+, Chrome 1+, Konqueror 4.6+, Opera 8+) as well as
-[Node.js](http://nodejs.org).
-
-### Features
-
-- Full support for [ECMAScript 5.1](http://www.ecma-international.org/publications/standards/Ecma-262.htm)(ECMA-262)
-- Sensible [syntax tree format](http://esprima.org/doc/index.html#ast) compatible with Mozilla
-[Parser AST](https://developer.mozilla.org/en/SpiderMonkey/Parser_API)
-- Heavily tested (> 550 [unit tests](http://esprima.org/test/) with solid 100% statement coverage)
-- Optional tracking of syntax node location (index-based and line-column)
-- Experimental support for ES6/Harmony (module, class, destructuring, ...)
-
-Esprima is blazing fast (see the [benchmark suite](http://esprima.org/test/benchmarks.html)).
-It is up to 3x faster than UglifyJS v1 and it is still [competitive](http://esprima.org/test/compare.html)
-with the new generation of fast parsers.
-
-### Applications
-
-Esprima serves as the basis for many popular JavaScript development tools:
-
-- Code coverage analysis: [node-cover](https://github.com/itay/node-cover), [Istanbul](https://github.com/yahoo/Istanbul)
-- Documentation tool: [JFDoc](https://github.com/thejohnfreeman/jfdoc), [JSDuck](https://github.com/senchalabs/jsduck)
-- Language extension: [LLJS](http://mbebenita.github.com/LLJS/) (low-level JS),
-[Sweet.js](http://sweetjs.org/) (macro)
-- ES6/Harmony transpiler: [Six](https://github.com/matthewrobb/six), [Harmonizr](https://github.com/jdiamond/harmonizr)
-- Eclipse Orion smart editing ([outline view](https://github.com/aclement/esprima-outline), [content assist](http://contraptionsforprogramming.blogspot.com/2012/02/better-javascript-content-assist-in.html))
-- Source code modification: [Esmorph](https://github.com/ariya/esmorph), [Code Painter](https://github.com/fawek/codepainter),
-- Source transformation: [node-falafel](https://github.com/substack/node-falafel), [Esmangle](https://github.com/Constellation/esmangle), [escodegen](https://github.com/Constellation/escodegen)
-
-### Questions?
-- [Documentation](http://esprima.org/doc)
-- [Issue tracker](http://issues.esprima.org): [known problems](http://code.google.com/p/esprima/issues/list?q=Defect)
-and [future plans](http://code.google.com/p/esprima/issues/list?q=Enhancement)
-- [Mailing list](http://groups.google.com/group/esprima)
-- [Contribution guide](http://esprima.org/doc/index.html#contribution)
-
-Follow [@Esprima](http://twitter.com/Esprima) on Twitter to get the
-development updates.
-Feedback and contribution are welcomed!
-
-### License
-
-Copyright (C) 2012, 2011 [Ariya Hidayat](http://ariya.ofilabs.com/about)
- and other contributors.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-  * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
-
-  * Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the
-    documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esparse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esparse.js
deleted file mode 100755 (executable)
index 3e7bb81..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true node:true rhino:true */
-
-var fs, esprima, fname, content, options, syntax;
-
-if (typeof require === 'function') {
-    fs = require('fs');
-    esprima = require('esprima');
-} else if (typeof load === 'function') {
-    try {
-        load('esprima.js');
-    } catch (e) {
-        load('../esprima.js');
-    }
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esparse.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esparse [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --comment      Gather all line and block comments in an array');
-    console.log('  --loc          Include line-column location info for each syntax node');
-    console.log('  --range        Include index-based range for each syntax node');
-    console.log('  --raw          Display the raw value of literals');
-    console.log('  --tokens       List all tokens in an array');
-    console.log('  --tolerant     Tolerate errors on a best-effort basis (experimental)');
-    console.log('  -v, --version  Shows program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {};
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Parser (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry === '--comment') {
-        options.comment = true;
-    } else if (entry === '--loc') {
-        options.loc = true;
-    } else if (entry === '--range') {
-        options.range = true;
-    } else if (entry === '--raw') {
-        options.raw = true;
-    } else if (entry === '--tokens') {
-        options.tokens = true;
-    } else if (entry === '--tolerant') {
-        options.tolerant = true;
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else if (typeof fname === 'string') {
-        console.log('Error: more than one input file.');
-        process.exit(1);
-    } else {
-        fname = entry;
-    }
-});
-
-if (typeof fname !== 'string') {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-try {
-    content = fs.readFileSync(fname, 'utf-8');
-    syntax = esprima.parse(content, options);
-    console.log(JSON.stringify(syntax, null, 4));
-} catch (e) {
-    console.log('Error: ' + e.message);
-    process.exit(1);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js
deleted file mode 100755 (executable)
index e0af3f7..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true plusplus:true node:true rhino:true */
-
-var fs, esprima, options, fnames, count;
-
-if (typeof require === 'function') {
-    fs = require('fs');
-    esprima = require('esprima');
-} else if (typeof load === 'function') {
-    try {
-        load('esprima.js');
-    } catch (e) {
-        load('../esprima.js');
-    }
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esvalidate.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esvalidate [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --format=type  Set the report format, plain (default) or junit');
-    console.log('  -v, --version  Print program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {
-    format: 'plain'
-};
-
-fnames = [];
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Validator (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry.slice(0, 9) === '--format=') {
-        options.format = entry.slice(9);
-        if (options.format !== 'plain' && options.format !== 'junit') {
-            console.log('Error: unknown report format ' + options.format + '.');
-            process.exit(1);
-        }
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else {
-        fnames.push(entry);
-    }
-});
-
-if (fnames.length === 0) {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-if (options.format === 'junit') {
-    console.log('<?xml version="1.0" encoding="UTF-8"?>');
-    console.log('<testsuites>');
-}
-
-count = 0;
-fnames.forEach(function (fname) {
-    var content, timestamp, syntax, name;
-    try {
-        content = fs.readFileSync(fname, 'utf-8');
-
-        if (content[0] === '#' && content[1] === '!') {
-            content = '//' + content.substr(2, content.length);
-        }
-
-        timestamp = Date.now();
-        syntax = esprima.parse(content, { tolerant: true });
-
-        if (options.format === 'junit') {
-
-            name = fname;
-            if (name.lastIndexOf('/') >= 0) {
-                name = name.slice(name.lastIndexOf('/') + 1);
-            }
-
-            console.log('<testsuite name="' + fname + '" errors="0" ' +
-                ' failures="' + syntax.errors.length + '" ' +
-                ' tests="' + syntax.errors.length + '" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) +
-                '">');
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                console.log('  <testcase name="Line ' + error.lineNumber + ': ' + msg + '" ' +
-                    ' time="0">');
-                console.log('    <error type="SyntaxError" message="' + error.message + '">' +
-                    error.message + '(' + name + ':' + error.lineNumber + ')' +
-                    '</error>');
-                console.log('  </testcase>');
-            });
-
-            console.log('</testsuite>');
-
-        } else if (options.format === 'plain') {
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                msg = fname + ':' + error.lineNumber + ': ' + msg;
-                console.log(msg);
-                ++count;
-            });
-
-        }
-    } catch (e) {
-        ++count;
-        if (options.format === 'junit') {
-            console.log('<testsuite name="' + fname + '" errors="1" failures="0" tests="1" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) + '">');
-            console.log(' <testcase name="' + e.message + '" ' + ' time="0">');
-            console.log(' <error type="ParseError" message="' + e.message + '">' +
-                e.message + '(' + fname + ((e.lineNumber) ? ':' + e.lineNumber : '') +
-                ')</error>');
-            console.log(' </testcase>');
-            console.log('</testsuite>');
-        } else {
-            console.log('Error: ' + e.message);
-        }
-    }
-});
-
-if (options.format === 'junit') {
-    console.log('</testsuites>');
-}
-
-if (count > 0) {
-    process.exit(1);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/esprima.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/esprima.js
deleted file mode 100644 (file)
index f1320da..0000000
+++ /dev/null
@@ -1,3908 +0,0 @@
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Kris Kowal <kris.kowal@cixar.com>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint bitwise:true plusplus:true */
-/*global esprima:true, define:true, exports:true, window: true,
-throwError: true, createLiteral: true, generateStatement: true,
-parseAssignmentExpression: true, parseBlock: true, parseExpression: true,
-parseFunctionDeclaration: true, parseFunctionExpression: true,
-parseFunctionSourceElements: true, parseVariableIdentifier: true,
-parseLeftHandSideExpression: true,
-parseStatement: true, parseSourceElement: true */
-
-(function (root, factory) {
-    'use strict';
-
-    // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js,
-    // Rhino, and plain browser loading.
-    if (typeof define === 'function' && define.amd) {
-        define(['exports'], factory);
-    } else if (typeof exports !== 'undefined') {
-        factory(exports);
-    } else {
-        factory((root.esprima = {}));
-    }
-}(this, function (exports) {
-    'use strict';
-
-    var Token,
-        TokenName,
-        Syntax,
-        PropertyKind,
-        Messages,
-        Regex,
-        source,
-        strict,
-        index,
-        lineNumber,
-        lineStart,
-        length,
-        buffer,
-        state,
-        extra;
-
-    Token = {
-        BooleanLiteral: 1,
-        EOF: 2,
-        Identifier: 3,
-        Keyword: 4,
-        NullLiteral: 5,
-        NumericLiteral: 6,
-        Punctuator: 7,
-        StringLiteral: 8
-    };
-
-    TokenName = {};
-    TokenName[Token.BooleanLiteral] = 'Boolean';
-    TokenName[Token.EOF] = '<end>';
-    TokenName[Token.Identifier] = 'Identifier';
-    TokenName[Token.Keyword] = 'Keyword';
-    TokenName[Token.NullLiteral] = 'Null';
-    TokenName[Token.NumericLiteral] = 'Numeric';
-    TokenName[Token.Punctuator] = 'Punctuator';
-    TokenName[Token.StringLiteral] = 'String';
-
-    Syntax = {
-        AssignmentExpression: 'AssignmentExpression',
-        ArrayExpression: 'ArrayExpression',
-        BlockStatement: 'BlockStatement',
-        BinaryExpression: 'BinaryExpression',
-        BreakStatement: 'BreakStatement',
-        CallExpression: 'CallExpression',
-        CatchClause: 'CatchClause',
-        ConditionalExpression: 'ConditionalExpression',
-        ContinueStatement: 'ContinueStatement',
-        DoWhileStatement: 'DoWhileStatement',
-        DebuggerStatement: 'DebuggerStatement',
-        EmptyStatement: 'EmptyStatement',
-        ExpressionStatement: 'ExpressionStatement',
-        ForStatement: 'ForStatement',
-        ForInStatement: 'ForInStatement',
-        FunctionDeclaration: 'FunctionDeclaration',
-        FunctionExpression: 'FunctionExpression',
-        Identifier: 'Identifier',
-        IfStatement: 'IfStatement',
-        Literal: 'Literal',
-        LabeledStatement: 'LabeledStatement',
-        LogicalExpression: 'LogicalExpression',
-        MemberExpression: 'MemberExpression',
-        NewExpression: 'NewExpression',
-        ObjectExpression: 'ObjectExpression',
-        Program: 'Program',
-        Property: 'Property',
-        ReturnStatement: 'ReturnStatement',
-        SequenceExpression: 'SequenceExpression',
-        SwitchStatement: 'SwitchStatement',
-        SwitchCase: 'SwitchCase',
-        ThisExpression: 'ThisExpression',
-        ThrowStatement: 'ThrowStatement',
-        TryStatement: 'TryStatement',
-        UnaryExpression: 'UnaryExpression',
-        UpdateExpression: 'UpdateExpression',
-        VariableDeclaration: 'VariableDeclaration',
-        VariableDeclarator: 'VariableDeclarator',
-        WhileStatement: 'WhileStatement',
-        WithStatement: 'WithStatement'
-    };
-
-    PropertyKind = {
-        Data: 1,
-        Get: 2,
-        Set: 4
-    };
-
-    // Error messages should be identical to V8.
-    Messages = {
-        UnexpectedToken:  'Unexpected token %0',
-        UnexpectedNumber:  'Unexpected number',
-        UnexpectedString:  'Unexpected string',
-        UnexpectedIdentifier:  'Unexpected identifier',
-        UnexpectedReserved:  'Unexpected reserved word',
-        UnexpectedEOS:  'Unexpected end of input',
-        NewlineAfterThrow:  'Illegal newline after throw',
-        InvalidRegExp: 'Invalid regular expression',
-        UnterminatedRegExp:  'Invalid regular expression: missing /',
-        InvalidLHSInAssignment:  'Invalid left-hand side in assignment',
-        InvalidLHSInForIn:  'Invalid left-hand side in for-in',
-        MultipleDefaultsInSwitch: 'More than one default clause in switch statement',
-        NoCatchOrFinally:  'Missing catch or finally after try',
-        UnknownLabel: 'Undefined label \'%0\'',
-        Redeclaration: '%0 \'%1\' has already been declared',
-        IllegalContinue: 'Illegal continue statement',
-        IllegalBreak: 'Illegal break statement',
-        IllegalReturn: 'Illegal return statement',
-        StrictModeWith:  'Strict mode code may not include a with statement',
-        StrictCatchVariable:  'Catch variable may not be eval or arguments in strict mode',
-        StrictVarName:  'Variable name may not be eval or arguments in strict mode',
-        StrictParamName:  'Parameter name eval or arguments is not allowed in strict mode',
-        StrictParamDupe: 'Strict mode function may not have duplicate parameter names',
-        StrictFunctionName:  'Function name may not be eval or arguments in strict mode',
-        StrictOctalLiteral:  'Octal literals are not allowed in strict mode.',
-        StrictDelete:  'Delete of an unqualified identifier in strict mode.',
-        StrictDuplicateProperty:  'Duplicate data property in object literal not allowed in strict mode',
-        AccessorDataProperty:  'Object literal may not have data and accessor property with the same name',
-        AccessorGetSet:  'Object literal may not have multiple get/set accessors with the same name',
-        StrictLHSAssignment:  'Assignment to eval or arguments is not allowed in strict mode',
-        StrictLHSPostfix:  'Postfix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictLHSPrefix:  'Prefix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictReservedWord:  'Use of future reserved word in strict mode'
-    };
-
-    // See also tools/generate-unicode-regex.py.
-    Regex = {
-        NonAsciiIdentifierStart: new RegExp('[\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0\u08a2-\u08ac\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f0\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua697\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa80-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]'),
-        NonAsciiIdentifierPart: new RegExp('[\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0300-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u0483-\u0487\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u05d0-\u05ea\u05f0-\u05f2\u0610-\u061a\u0620-\u0669\u066e-\u06d3\u06d5-\u06dc\u06df-\u06e8\u06ea-\u06fc\u06ff\u0710-\u074a\u074d-\u07b1\u07c0-\u07f5\u07fa\u0800-\u082d\u0840-\u085b\u08a0\u08a2-\u08ac\u08e4-\u08fe\u0900-\u0963\u0966-\u096f\u0971-\u0977\u0979-\u097f\u0981-\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7\u09c8\u09cb-\u09ce\u09d7\u09dc\u09dd\u09df-\u09e3\u09e6-\u09f1\u0a01-\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a66-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b5c\u0b5d\u0b5f-\u0b63\u0b66-\u0b6f\u0b71\u0b82\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0be6-\u0bef\u0c01-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c58\u0c59\u0c60-\u0c63\u0c66-\u0c6f\u0c82\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0cde\u0ce0-\u0ce3\u0ce6-\u0cef\u0cf1\u0cf2\u0d02\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d57\u0d60-\u0d63\u0d66-\u0d6f\u0d7a-\u0d7f\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2\u0df3\u0e01-\u0e3a\u0e40-\u0e4e\u0e50-\u0e59\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb9\u0ebb-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0ed0-\u0ed9\u0edc-\u0edf\u0f00\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e-\u0f47\u0f49-\u0f6c\u0f71-\u0f84\u0f86-\u0f97\u0f99-\u0fbc\u0fc6\u1000-\u1049\u1050-\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u135f\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f0\u1700-\u170c\u170e-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772\u1773\u1780-\u17d3\u17d7\u17dc\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u1820-\u1877\u1880-\u18aa\u18b0-\u18f5\u1900-\u191c\u1920-\u192b\u1930-\u193b\u1946-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19d9\u1a00-\u1a1b\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1aa7\u1b00-\u1b4b\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1bf3\u1c00-\u1c37\u1c40-\u1c49\u1c4d-\u1c7d\u1cd0-\u1cd2\u1cd4-\u1cf6\u1d00-\u1de6\u1dfc-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u200c\u200d\u203f\u2040\u2054\u2071\u207f\u2090-\u209c\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d7f-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u2e2f\u3005-\u3007\u3021-\u302f\u3031-\u3035\u3038-\u303c\u3041-\u3096\u3099\u309a\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua62b\ua640-\ua66f\ua674-\ua67d\ua67f-\ua697\ua69f-\ua6f1\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua827\ua840-\ua873\ua880-\ua8c4\ua8d0-\ua8d9\ua8e0-\ua8f7\ua8fb\ua900-\ua92d\ua930-\ua953\ua960-\ua97c\ua980-\ua9c0\ua9cf-\ua9d9\uaa00-\uaa36\uaa40-\uaa4d\uaa50-\uaa59\uaa60-\uaa76\uaa7a\uaa7b\uaa80-\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf6\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabea\uabec\uabed\uabf0-\uabf9\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe00-\ufe0f\ufe20-\ufe26\ufe33\ufe34\ufe4d-\ufe4f\ufe70-\ufe74\ufe76-\ufefc\uff10-\uff19\uff21-\uff3a\uff3f\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]')
-    };
-
-    // Ensure the condition is true, otherwise throw an error.
-    // This is only to have a better contract semantic, i.e. another safety net
-    // to catch a logic error. The condition shall be fulfilled in normal case.
-    // Do NOT use this to enforce a certain condition on any user input.
-
-    function assert(condition, message) {
-        if (!condition) {
-            throw new Error('ASSERT: ' + message);
-        }
-    }
-
-    function sliceSource(from, to) {
-        return source.slice(from, to);
-    }
-
-    if (typeof 'esprima'[0] === 'undefined') {
-        sliceSource = function sliceArraySource(from, to) {
-            return source.slice(from, to).join('');
-        };
-    }
-
-    function isDecimalDigit(ch) {
-        return '0123456789'.indexOf(ch) >= 0;
-    }
-
-    function isHexDigit(ch) {
-        return '0123456789abcdefABCDEF'.indexOf(ch) >= 0;
-    }
-
-    function isOctalDigit(ch) {
-        return '01234567'.indexOf(ch) >= 0;
-    }
-
-
-    // 7.2 White Space
-
-    function isWhiteSpace(ch) {
-        return (ch === ' ') || (ch === '\u0009') || (ch === '\u000B') ||
-            (ch === '\u000C') || (ch === '\u00A0') ||
-            (ch.charCodeAt(0) >= 0x1680 &&
-             '\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\uFEFF'.indexOf(ch) >= 0);
-    }
-
-    // 7.3 Line Terminators
-
-    function isLineTerminator(ch) {
-        return (ch === '\n' || ch === '\r' || ch === '\u2028' || ch === '\u2029');
-    }
-
-    // 7.6 Identifier Names and Identifiers
-
-    function isIdentifierStart(ch) {
-        return (ch === '$') || (ch === '_') || (ch === '\\') ||
-            (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') ||
-            ((ch.charCodeAt(0) >= 0x80) && Regex.NonAsciiIdentifierStart.test(ch));
-    }
-
-    function isIdentifierPart(ch) {
-        return (ch === '$') || (ch === '_') || (ch === '\\') ||
-            (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') ||
-            ((ch >= '0') && (ch <= '9')) ||
-            ((ch.charCodeAt(0) >= 0x80) && Regex.NonAsciiIdentifierPart.test(ch));
-    }
-
-    // 7.6.1.2 Future Reserved Words
-
-    function isFutureReservedWord(id) {
-        switch (id) {
-
-        // Future reserved words.
-        case 'class':
-        case 'enum':
-        case 'export':
-        case 'extends':
-        case 'import':
-        case 'super':
-            return true;
-        }
-
-        return false;
-    }
-
-    function isStrictModeReservedWord(id) {
-        switch (id) {
-
-        // Strict Mode reserved words.
-        case 'implements':
-        case 'interface':
-        case 'package':
-        case 'private':
-        case 'protected':
-        case 'public':
-        case 'static':
-        case 'yield':
-        case 'let':
-            return true;
-        }
-
-        return false;
-    }
-
-    function isRestrictedWord(id) {
-        return id === 'eval' || id === 'arguments';
-    }
-
-    // 7.6.1.1 Keywords
-
-    function isKeyword(id) {
-        var keyword = false;
-        switch (id.length) {
-        case 2:
-            keyword = (id === 'if') || (id === 'in') || (id === 'do');
-            break;
-        case 3:
-            keyword = (id === 'var') || (id === 'for') || (id === 'new') || (id === 'try');
-            break;
-        case 4:
-            keyword = (id === 'this') || (id === 'else') || (id === 'case') || (id === 'void') || (id === 'with');
-            break;
-        case 5:
-            keyword = (id === 'while') || (id === 'break') || (id === 'catch') || (id === 'throw');
-            break;
-        case 6:
-            keyword = (id === 'return') || (id === 'typeof') || (id === 'delete') || (id === 'switch');
-            break;
-        case 7:
-            keyword = (id === 'default') || (id === 'finally');
-            break;
-        case 8:
-            keyword = (id === 'function') || (id === 'continue') || (id === 'debugger');
-            break;
-        case 10:
-            keyword = (id === 'instanceof');
-            break;
-        }
-
-        if (keyword) {
-            return true;
-        }
-
-        switch (id) {
-        // Future reserved words.
-        // 'const' is specialized as Keyword in V8.
-        case 'const':
-            return true;
-
-        // For compatiblity to SpiderMonkey and ES.next
-        case 'yield':
-        case 'let':
-            return true;
-        }
-
-        if (strict && isStrictModeReservedWord(id)) {
-            return true;
-        }
-
-        return isFutureReservedWord(id);
-    }
-
-    // 7.4 Comments
-
-    function skipComment() {
-        var ch, blockComment, lineComment;
-
-        blockComment = false;
-        lineComment = false;
-
-        while (index < length) {
-            ch = source[index];
-
-            if (lineComment) {
-                ch = source[index++];
-                if (isLineTerminator(ch)) {
-                    lineComment = false;
-                    if (ch === '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                    ++lineNumber;
-                    lineStart = index;
-                }
-            } else if (blockComment) {
-                if (isLineTerminator(ch)) {
-                    if (ch === '\r' && source[index + 1] === '\n') {
-                        ++index;
-                    }
-                    ++lineNumber;
-                    ++index;
-                    lineStart = index;
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                } else {
-                    ch = source[index++];
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                    if (ch === '*') {
-                        ch = source[index];
-                        if (ch === '/') {
-                            ++index;
-                            blockComment = false;
-                        }
-                    }
-                }
-            } else if (ch === '/') {
-                ch = source[index + 1];
-                if (ch === '/') {
-                    index += 2;
-                    lineComment = true;
-                } else if (ch === '*') {
-                    index += 2;
-                    blockComment = true;
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                } else {
-                    break;
-                }
-            } else if (isWhiteSpace(ch)) {
-                ++index;
-            } else if (isLineTerminator(ch)) {
-                ++index;
-                if (ch ===  '\r' && source[index] === '\n') {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-            } else {
-                break;
-            }
-        }
-    }
-
-    function scanHexEscape(prefix) {
-        var i, len, ch, code = 0;
-
-        len = (prefix === 'u') ? 4 : 2;
-        for (i = 0; i < len; ++i) {
-            if (index < length && isHexDigit(source[index])) {
-                ch = source[index++];
-                code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
-            } else {
-                return '';
-            }
-        }
-        return String.fromCharCode(code);
-    }
-
-    function scanIdentifier() {
-        var ch, start, id, restore;
-
-        ch = source[index];
-        if (!isIdentifierStart(ch)) {
-            return;
-        }
-
-        start = index;
-        if (ch === '\\') {
-            ++index;
-            if (source[index] !== 'u') {
-                return;
-            }
-            ++index;
-            restore = index;
-            ch = scanHexEscape('u');
-            if (ch) {
-                if (ch === '\\' || !isIdentifierStart(ch)) {
-                    return;
-                }
-                id = ch;
-            } else {
-                index = restore;
-                id = 'u';
-            }
-        } else {
-            id = source[index++];
-        }
-
-        while (index < length) {
-            ch = source[index];
-            if (!isIdentifierPart(ch)) {
-                break;
-            }
-            if (ch === '\\') {
-                ++index;
-                if (source[index] !== 'u') {
-                    return;
-                }
-                ++index;
-                restore = index;
-                ch = scanHexEscape('u');
-                if (ch) {
-                    if (ch === '\\' || !isIdentifierPart(ch)) {
-                        return;
-                    }
-                    id += ch;
-                } else {
-                    index = restore;
-                    id += 'u';
-                }
-            } else {
-                id += source[index++];
-            }
-        }
-
-        // There is no keyword or literal with only one character.
-        // Thus, it must be an identifier.
-        if (id.length === 1) {
-            return {
-                type: Token.Identifier,
-                value: id,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (isKeyword(id)) {
-            return {
-                type: Token.Keyword,
-                value: id,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        // 7.8.1 Null Literals
-
-        if (id === 'null') {
-            return {
-                type: Token.NullLiteral,
-                value: id,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        // 7.8.2 Boolean Literals
-
-        if (id === 'true' || id === 'false') {
-            return {
-                type: Token.BooleanLiteral,
-                value: id,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        return {
-            type: Token.Identifier,
-            value: id,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            range: [start, index]
-        };
-    }
-
-    // 7.7 Punctuators
-
-    function scanPunctuator() {
-        var start = index,
-            ch1 = source[index],
-            ch2,
-            ch3,
-            ch4;
-
-        // Check for most common single-character punctuators.
-
-        if (ch1 === ';' || ch1 === '{' || ch1 === '}') {
-            ++index;
-            return {
-                type: Token.Punctuator,
-                value: ch1,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (ch1 === ',' || ch1 === '(' || ch1 === ')') {
-            ++index;
-            return {
-                type: Token.Punctuator,
-                value: ch1,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        // Dot (.) can also start a floating-point number, hence the need
-        // to check the next character.
-
-        ch2 = source[index + 1];
-        if (ch1 === '.' && !isDecimalDigit(ch2)) {
-            return {
-                type: Token.Punctuator,
-                value: source[index++],
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        // Peek more characters.
-
-        ch3 = source[index + 2];
-        ch4 = source[index + 3];
-
-        // 4-character punctuator: >>>=
-
-        if (ch1 === '>' && ch2 === '>' && ch3 === '>') {
-            if (ch4 === '=') {
-                index += 4;
-                return {
-                    type: Token.Punctuator,
-                    value: '>>>=',
-                    lineNumber: lineNumber,
-                    lineStart: lineStart,
-                    range: [start, index]
-                };
-            }
-        }
-
-        // 3-character punctuators: === !== >>> <<= >>=
-
-        if (ch1 === '=' && ch2 === '=' && ch3 === '=') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: '===',
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (ch1 === '!' && ch2 === '=' && ch3 === '=') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: '!==',
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (ch1 === '>' && ch2 === '>' && ch3 === '>') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: '>>>',
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (ch1 === '<' && ch2 === '<' && ch3 === '=') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: '<<=',
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        if (ch1 === '>' && ch2 === '>' && ch3 === '=') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: '>>=',
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-
-        // 2-character punctuators: <= >= == != ++ -- << >> && ||
-        // += -= *= %= &= |= ^= /=
-
-        if (ch2 === '=') {
-            if ('<>=!+-*%&|^/'.indexOf(ch1) >= 0) {
-                index += 2;
-                return {
-                    type: Token.Punctuator,
-                    value: ch1 + ch2,
-                    lineNumber: lineNumber,
-                    lineStart: lineStart,
-                    range: [start, index]
-                };
-            }
-        }
-
-        if (ch1 === ch2 && ('+-<>&|'.indexOf(ch1) >= 0)) {
-            if ('+-<>&|'.indexOf(ch2) >= 0) {
-                index += 2;
-                return {
-                    type: Token.Punctuator,
-                    value: ch1 + ch2,
-                    lineNumber: lineNumber,
-                    lineStart: lineStart,
-                    range: [start, index]
-                };
-            }
-        }
-
-        // The remaining 1-character punctuators.
-
-        if ('[]<>+-*%&|^!~?:=/'.indexOf(ch1) >= 0) {
-            return {
-                type: Token.Punctuator,
-                value: source[index++],
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [start, index]
-            };
-        }
-    }
-
-    // 7.8.3 Numeric Literals
-
-    function scanNumericLiteral() {
-        var number, start, ch;
-
-        ch = source[index];
-        assert(isDecimalDigit(ch) || (ch === '.'),
-            'Numeric literal must start with a decimal digit or a decimal point');
-
-        start = index;
-        number = '';
-        if (ch !== '.') {
-            number = source[index++];
-            ch = source[index];
-
-            // Hex number starts with '0x'.
-            // Octal number starts with '0'.
-            if (number === '0') {
-                if (ch === 'x' || ch === 'X') {
-                    number += source[index++];
-                    while (index < length) {
-                        ch = source[index];
-                        if (!isHexDigit(ch)) {
-                            break;
-                        }
-                        number += source[index++];
-                    }
-
-                    if (number.length <= 2) {
-                        // only 0x
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-
-                    if (index < length) {
-                        ch = source[index];
-                        if (isIdentifierStart(ch)) {
-                            throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                        }
-                    }
-                    return {
-                        type: Token.NumericLiteral,
-                        value: parseInt(number, 16),
-                        lineNumber: lineNumber,
-                        lineStart: lineStart,
-                        range: [start, index]
-                    };
-                } else if (isOctalDigit(ch)) {
-                    number += source[index++];
-                    while (index < length) {
-                        ch = source[index];
-                        if (!isOctalDigit(ch)) {
-                            break;
-                        }
-                        number += source[index++];
-                    }
-
-                    if (index < length) {
-                        ch = source[index];
-                        if (isIdentifierStart(ch) || isDecimalDigit(ch)) {
-                            throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                        }
-                    }
-                    return {
-                        type: Token.NumericLiteral,
-                        value: parseInt(number, 8),
-                        octal: true,
-                        lineNumber: lineNumber,
-                        lineStart: lineStart,
-                        range: [start, index]
-                    };
-                }
-
-                // decimal number starts with '0' such as '09' is illegal.
-                if (isDecimalDigit(ch)) {
-                    throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                }
-            }
-
-            while (index < length) {
-                ch = source[index];
-                if (!isDecimalDigit(ch)) {
-                    break;
-                }
-                number += source[index++];
-            }
-        }
-
-        if (ch === '.') {
-            number += source[index++];
-            while (index < length) {
-                ch = source[index];
-                if (!isDecimalDigit(ch)) {
-                    break;
-                }
-                number += source[index++];
-            }
-        }
-
-        if (ch === 'e' || ch === 'E') {
-            number += source[index++];
-
-            ch = source[index];
-            if (ch === '+' || ch === '-') {
-                number += source[index++];
-            }
-
-            ch = source[index];
-            if (isDecimalDigit(ch)) {
-                number += source[index++];
-                while (index < length) {
-                    ch = source[index];
-                    if (!isDecimalDigit(ch)) {
-                        break;
-                    }
-                    number += source[index++];
-                }
-            } else {
-                ch = 'character ' + ch;
-                if (index >= length) {
-                    ch = '<end>';
-                }
-                throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-            }
-        }
-
-        if (index < length) {
-            ch = source[index];
-            if (isIdentifierStart(ch)) {
-                throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-            }
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseFloat(number),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            range: [start, index]
-        };
-    }
-
-    // 7.8.4 String Literals
-
-    function scanStringLiteral() {
-        var str = '', quote, start, ch, code, unescaped, restore, octal = false;
-
-        quote = source[index];
-        assert((quote === '\'' || quote === '"'),
-            'String literal must starts with a quote');
-
-        start = index;
-        ++index;
-
-        while (index < length) {
-            ch = source[index++];
-
-            if (ch === quote) {
-                quote = '';
-                break;
-            } else if (ch === '\\') {
-                ch = source[index++];
-                if (!isLineTerminator(ch)) {
-                    switch (ch) {
-                    case 'n':
-                        str += '\n';
-                        break;
-                    case 'r':
-                        str += '\r';
-                        break;
-                    case 't':
-                        str += '\t';
-                        break;
-                    case 'u':
-                    case 'x':
-                        restore = index;
-                        unescaped = scanHexEscape(ch);
-                        if (unescaped) {
-                            str += unescaped;
-                        } else {
-                            index = restore;
-                            str += ch;
-                        }
-                        break;
-                    case 'b':
-                        str += '\b';
-                        break;
-                    case 'f':
-                        str += '\f';
-                        break;
-                    case 'v':
-                        str += '\x0B';
-                        break;
-
-                    default:
-                        if (isOctalDigit(ch)) {
-                            code = '01234567'.indexOf(ch);
-
-                            // \0 is not octal escape sequence
-                            if (code !== 0) {
-                                octal = true;
-                            }
-
-                            if (index < length && isOctalDigit(source[index])) {
-                                octal = true;
-                                code = code * 8 + '01234567'.indexOf(source[index++]);
-
-                                // 3 digits are only allowed when string starts
-                                // with 0, 1, 2, 3
-                                if ('0123'.indexOf(ch) >= 0 &&
-                                        index < length &&
-                                        isOctalDigit(source[index])) {
-                                    code = code * 8 + '01234567'.indexOf(source[index++]);
-                                }
-                            }
-                            str += String.fromCharCode(code);
-                        } else {
-                            str += ch;
-                        }
-                        break;
-                    }
-                } else {
-                    ++lineNumber;
-                    if (ch ===  '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                }
-            } else if (isLineTerminator(ch)) {
-                break;
-            } else {
-                str += ch;
-            }
-        }
-
-        if (quote !== '') {
-            throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-        }
-
-        return {
-            type: Token.StringLiteral,
-            value: str,
-            octal: octal,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            range: [start, index]
-        };
-    }
-
-    function scanRegExp() {
-        var str, ch, start, pattern, flags, value, classMarker = false, restore, terminated = false;
-
-        buffer = null;
-        skipComment();
-
-        start = index;
-        ch = source[index];
-        assert(ch === '/', 'Regular expression literal must start with a slash');
-        str = source[index++];
-
-        while (index < length) {
-            ch = source[index++];
-            str += ch;
-            if (ch === '\\') {
-                ch = source[index++];
-                // ECMA-262 7.8.5
-                if (isLineTerminator(ch)) {
-                    throwError({}, Messages.UnterminatedRegExp);
-                }
-                str += ch;
-            } else if (classMarker) {
-                if (ch === ']') {
-                    classMarker = false;
-                }
-            } else {
-                if (ch === '/') {
-                    terminated = true;
-                    break;
-                } else if (ch === '[') {
-                    classMarker = true;
-                } else if (isLineTerminator(ch)) {
-                    throwError({}, Messages.UnterminatedRegExp);
-                }
-            }
-        }
-
-        if (!terminated) {
-            throwError({}, Messages.UnterminatedRegExp);
-        }
-
-        // Exclude leading and trailing slash.
-        pattern = str.substr(1, str.length - 2);
-
-        flags = '';
-        while (index < length) {
-            ch = source[index];
-            if (!isIdentifierPart(ch)) {
-                break;
-            }
-
-            ++index;
-            if (ch === '\\' && index < length) {
-                ch = source[index];
-                if (ch === 'u') {
-                    ++index;
-                    restore = index;
-                    ch = scanHexEscape('u');
-                    if (ch) {
-                        flags += ch;
-                        str += '\\u';
-                        for (; restore < index; ++restore) {
-                            str += source[restore];
-                        }
-                    } else {
-                        index = restore;
-                        flags += 'u';
-                        str += '\\u';
-                    }
-                } else {
-                    str += '\\';
-                }
-            } else {
-                flags += ch;
-                str += ch;
-            }
-        }
-
-        try {
-            value = new RegExp(pattern, flags);
-        } catch (e) {
-            throwError({}, Messages.InvalidRegExp);
-        }
-
-        return {
-            literal: str,
-            value: value,
-            range: [start, index]
-        };
-    }
-
-    function isIdentifierName(token) {
-        return token.type === Token.Identifier ||
-            token.type === Token.Keyword ||
-            token.type === Token.BooleanLiteral ||
-            token.type === Token.NullLiteral;
-    }
-
-    function advance() {
-        var ch, token;
-
-        skipComment();
-
-        if (index >= length) {
-            return {
-                type: Token.EOF,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                range: [index, index]
-            };
-        }
-
-        token = scanPunctuator();
-        if (typeof token !== 'undefined') {
-            return token;
-        }
-
-        ch = source[index];
-
-        if (ch === '\'' || ch === '"') {
-            return scanStringLiteral();
-        }
-
-        if (ch === '.' || isDecimalDigit(ch)) {
-            return scanNumericLiteral();
-        }
-
-        token = scanIdentifier();
-        if (typeof token !== 'undefined') {
-            return token;
-        }
-
-        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-    }
-
-    function lex() {
-        var token;
-
-        if (buffer) {
-            index = buffer.range[1];
-            lineNumber = buffer.lineNumber;
-            lineStart = buffer.lineStart;
-            token = buffer;
-            buffer = null;
-            return token;
-        }
-
-        buffer = null;
-        return advance();
-    }
-
-    function lookahead() {
-        var pos, line, start;
-
-        if (buffer !== null) {
-            return buffer;
-        }
-
-        pos = index;
-        line = lineNumber;
-        start = lineStart;
-        buffer = advance();
-        index = pos;
-        lineNumber = line;
-        lineStart = start;
-
-        return buffer;
-    }
-
-    // Return true if there is a line terminator before the next token.
-
-    function peekLineTerminator() {
-        var pos, line, start, found;
-
-        pos = index;
-        line = lineNumber;
-        start = lineStart;
-        skipComment();
-        found = lineNumber !== line;
-        index = pos;
-        lineNumber = line;
-        lineStart = start;
-
-        return found;
-    }
-
-    // Throw an exception
-
-    function throwError(token, messageFormat) {
-        var error,
-            args = Array.prototype.slice.call(arguments, 2),
-            msg = messageFormat.replace(
-                /%(\d)/g,
-                function (whole, index) {
-                    return args[index] || '';
-                }
-            );
-
-        if (typeof token.lineNumber === 'number') {
-            error = new Error('Line ' + token.lineNumber + ': ' + msg);
-            error.index = token.range[0];
-            error.lineNumber = token.lineNumber;
-            error.column = token.range[0] - lineStart + 1;
-        } else {
-            error = new Error('Line ' + lineNumber + ': ' + msg);
-            error.index = index;
-            error.lineNumber = lineNumber;
-            error.column = index - lineStart + 1;
-        }
-
-        throw error;
-    }
-
-    function throwErrorTolerant() {
-        try {
-            throwError.apply(null, arguments);
-        } catch (e) {
-            if (extra.errors) {
-                extra.errors.push(e);
-            } else {
-                throw e;
-            }
-        }
-    }
-
-
-    // Throw an exception because of the token.
-
-    function throwUnexpected(token) {
-        if (token.type === Token.EOF) {
-            throwError(token, Messages.UnexpectedEOS);
-        }
-
-        if (token.type === Token.NumericLiteral) {
-            throwError(token, Messages.UnexpectedNumber);
-        }
-
-        if (token.type === Token.StringLiteral) {
-            throwError(token, Messages.UnexpectedString);
-        }
-
-        if (token.type === Token.Identifier) {
-            throwError(token, Messages.UnexpectedIdentifier);
-        }
-
-        if (token.type === Token.Keyword) {
-            if (isFutureReservedWord(token.value)) {
-                throwError(token, Messages.UnexpectedReserved);
-            } else if (strict && isStrictModeReservedWord(token.value)) {
-                throwErrorTolerant(token, Messages.StrictReservedWord);
-                return;
-            }
-            throwError(token, Messages.UnexpectedToken, token.value);
-        }
-
-        // BooleanLiteral, NullLiteral, or Punctuator.
-        throwError(token, Messages.UnexpectedToken, token.value);
-    }
-
-    // Expect the next token to match the specified punctuator.
-    // If not, an exception will be thrown.
-
-    function expect(value) {
-        var token = lex();
-        if (token.type !== Token.Punctuator || token.value !== value) {
-            throwUnexpected(token);
-        }
-    }
-
-    // Expect the next token to match the specified keyword.
-    // If not, an exception will be thrown.
-
-    function expectKeyword(keyword) {
-        var token = lex();
-        if (token.type !== Token.Keyword || token.value !== keyword) {
-            throwUnexpected(token);
-        }
-    }
-
-    // Return true if the next token matches the specified punctuator.
-
-    function match(value) {
-        var token = lookahead();
-        return token.type === Token.Punctuator && token.value === value;
-    }
-
-    // Return true if the next token matches the specified keyword
-
-    function matchKeyword(keyword) {
-        var token = lookahead();
-        return token.type === Token.Keyword && token.value === keyword;
-    }
-
-    // Return true if the next token is an assignment operator
-
-    function matchAssign() {
-        var token = lookahead(),
-            op = token.value;
-
-        if (token.type !== Token.Punctuator) {
-            return false;
-        }
-        return op === '=' ||
-            op === '*=' ||
-            op === '/=' ||
-            op === '%=' ||
-            op === '+=' ||
-            op === '-=' ||
-            op === '<<=' ||
-            op === '>>=' ||
-            op === '>>>=' ||
-            op === '&=' ||
-            op === '^=' ||
-            op === '|=';
-    }
-
-    function consumeSemicolon() {
-        var token, line;
-
-        // Catch the very common case first.
-        if (source[index] === ';') {
-            lex();
-            return;
-        }
-
-        line = lineNumber;
-        skipComment();
-        if (lineNumber !== line) {
-            return;
-        }
-
-        if (match(';')) {
-            lex();
-            return;
-        }
-
-        token = lookahead();
-        if (token.type !== Token.EOF && !match('}')) {
-            throwUnexpected(token);
-        }
-    }
-
-    // Return true if provided expression is LeftHandSideExpression
-
-    function isLeftHandSide(expr) {
-        return expr.type === Syntax.Identifier || expr.type === Syntax.MemberExpression;
-    }
-
-    // 11.1.4 Array Initialiser
-
-    function parseArrayInitialiser() {
-        var elements = [];
-
-        expect('[');
-
-        while (!match(']')) {
-            if (match(',')) {
-                lex();
-                elements.push(null);
-            } else {
-                elements.push(parseAssignmentExpression());
-
-                if (!match(']')) {
-                    expect(',');
-                }
-            }
-        }
-
-        expect(']');
-
-        return {
-            type: Syntax.ArrayExpression,
-            elements: elements
-        };
-    }
-
-    // 11.1.5 Object Initialiser
-
-    function parsePropertyFunction(param, first) {
-        var previousStrict, body;
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (first && strict && isRestrictedWord(param[0].name)) {
-            throwErrorTolerant(first, Messages.StrictParamName);
-        }
-        strict = previousStrict;
-
-        return {
-            type: Syntax.FunctionExpression,
-            id: null,
-            params: param,
-            defaults: [],
-            body: body,
-            rest: null,
-            generator: false,
-            expression: false
-        };
-    }
-
-    function parseObjectPropertyKey() {
-        var token = lex();
-
-        // Note: This function is called only from parseObjectProperty(), where
-        // EOF and Punctuator tokens are already filtered out.
-
-        if (token.type === Token.StringLiteral || token.type === Token.NumericLiteral) {
-            if (strict && token.octal) {
-                throwErrorTolerant(token, Messages.StrictOctalLiteral);
-            }
-            return createLiteral(token);
-        }
-
-        return {
-            type: Syntax.Identifier,
-            name: token.value
-        };
-    }
-
-    function parseObjectProperty() {
-        var token, key, id, param;
-
-        token = lookahead();
-
-        if (token.type === Token.Identifier) {
-
-            id = parseObjectPropertyKey();
-
-            // Property Assignment: Getter and Setter.
-
-            if (token.value === 'get' && !match(':')) {
-                key = parseObjectPropertyKey();
-                expect('(');
-                expect(')');
-                return {
-                    type: Syntax.Property,
-                    key: key,
-                    value: parsePropertyFunction([]),
-                    kind: 'get'
-                };
-            } else if (token.value === 'set' && !match(':')) {
-                key = parseObjectPropertyKey();
-                expect('(');
-                token = lookahead();
-                if (token.type !== Token.Identifier) {
-                    expect(')');
-                    throwErrorTolerant(token, Messages.UnexpectedToken, token.value);
-                    return {
-                        type: Syntax.Property,
-                        key: key,
-                        value: parsePropertyFunction([]),
-                        kind: 'set'
-                    };
-                } else {
-                    param = [ parseVariableIdentifier() ];
-                    expect(')');
-                    return {
-                        type: Syntax.Property,
-                        key: key,
-                        value: parsePropertyFunction(param, token),
-                        kind: 'set'
-                    };
-                }
-            } else {
-                expect(':');
-                return {
-                    type: Syntax.Property,
-                    key: id,
-                    value: parseAssignmentExpression(),
-                    kind: 'init'
-                };
-            }
-        } else if (token.type === Token.EOF || token.type === Token.Punctuator) {
-            throwUnexpected(token);
-        } else {
-            key = parseObjectPropertyKey();
-            expect(':');
-            return {
-                type: Syntax.Property,
-                key: key,
-                value: parseAssignmentExpression(),
-                kind: 'init'
-            };
-        }
-    }
-
-    function parseObjectInitialiser() {
-        var properties = [], property, name, kind, map = {}, toString = String;
-
-        expect('{');
-
-        while (!match('}')) {
-            property = parseObjectProperty();
-
-            if (property.key.type === Syntax.Identifier) {
-                name = property.key.name;
-            } else {
-                name = toString(property.key.value);
-            }
-            kind = (property.kind === 'init') ? PropertyKind.Data : (property.kind === 'get') ? PropertyKind.Get : PropertyKind.Set;
-            if (Object.prototype.hasOwnProperty.call(map, name)) {
-                if (map[name] === PropertyKind.Data) {
-                    if (strict && kind === PropertyKind.Data) {
-                        throwErrorTolerant({}, Messages.StrictDuplicateProperty);
-                    } else if (kind !== PropertyKind.Data) {
-                        throwErrorTolerant({}, Messages.AccessorDataProperty);
-                    }
-                } else {
-                    if (kind === PropertyKind.Data) {
-                        throwErrorTolerant({}, Messages.AccessorDataProperty);
-                    } else if (map[name] & kind) {
-                        throwErrorTolerant({}, Messages.AccessorGetSet);
-                    }
-                }
-                map[name] |= kind;
-            } else {
-                map[name] = kind;
-            }
-
-            properties.push(property);
-
-            if (!match('}')) {
-                expect(',');
-            }
-        }
-
-        expect('}');
-
-        return {
-            type: Syntax.ObjectExpression,
-            properties: properties
-        };
-    }
-
-    // 11.1.6 The Grouping Operator
-
-    function parseGroupExpression() {
-        var expr;
-
-        expect('(');
-
-        expr = parseExpression();
-
-        expect(')');
-
-        return expr;
-    }
-
-
-    // 11.1 Primary Expressions
-
-    function parsePrimaryExpression() {
-        var token = lookahead(),
-            type = token.type;
-
-        if (type === Token.Identifier) {
-            return {
-                type: Syntax.Identifier,
-                name: lex().value
-            };
-        }
-
-        if (type === Token.StringLiteral || type === Token.NumericLiteral) {
-            if (strict && token.octal) {
-                throwErrorTolerant(token, Messages.StrictOctalLiteral);
-            }
-            return createLiteral(lex());
-        }
-
-        if (type === Token.Keyword) {
-            if (matchKeyword('this')) {
-                lex();
-                return {
-                    type: Syntax.ThisExpression
-                };
-            }
-
-            if (matchKeyword('function')) {
-                return parseFunctionExpression();
-            }
-        }
-
-        if (type === Token.BooleanLiteral) {
-            lex();
-            token.value = (token.value === 'true');
-            return createLiteral(token);
-        }
-
-        if (type === Token.NullLiteral) {
-            lex();
-            token.value = null;
-            return createLiteral(token);
-        }
-
-        if (match('[')) {
-            return parseArrayInitialiser();
-        }
-
-        if (match('{')) {
-            return parseObjectInitialiser();
-        }
-
-        if (match('(')) {
-            return parseGroupExpression();
-        }
-
-        if (match('/') || match('/=')) {
-            return createLiteral(scanRegExp());
-        }
-
-        return throwUnexpected(lex());
-    }
-
-    // 11.2 Left-Hand-Side Expressions
-
-    function parseArguments() {
-        var args = [];
-
-        expect('(');
-
-        if (!match(')')) {
-            while (index < length) {
-                args.push(parseAssignmentExpression());
-                if (match(')')) {
-                    break;
-                }
-                expect(',');
-            }
-        }
-
-        expect(')');
-
-        return args;
-    }
-
-    function parseNonComputedProperty() {
-        var token = lex();
-
-        if (!isIdentifierName(token)) {
-            throwUnexpected(token);
-        }
-
-        return {
-            type: Syntax.Identifier,
-            name: token.value
-        };
-    }
-
-    function parseNonComputedMember() {
-        expect('.');
-
-        return parseNonComputedProperty();
-    }
-
-    function parseComputedMember() {
-        var expr;
-
-        expect('[');
-
-        expr = parseExpression();
-
-        expect(']');
-
-        return expr;
-    }
-
-    function parseNewExpression() {
-        var expr;
-
-        expectKeyword('new');
-
-        expr = {
-            type: Syntax.NewExpression,
-            callee: parseLeftHandSideExpression(),
-            'arguments': []
-        };
-
-        if (match('(')) {
-            expr['arguments'] = parseArguments();
-        }
-
-        return expr;
-    }
-
-    function parseLeftHandSideExpressionAllowCall() {
-        var expr;
-
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        while (match('.') || match('[') || match('(')) {
-            if (match('(')) {
-                expr = {
-                    type: Syntax.CallExpression,
-                    callee: expr,
-                    'arguments': parseArguments()
-                };
-            } else if (match('[')) {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: true,
-                    object: expr,
-                    property: parseComputedMember()
-                };
-            } else {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: false,
-                    object: expr,
-                    property: parseNonComputedMember()
-                };
-            }
-        }
-
-        return expr;
-    }
-
-
-    function parseLeftHandSideExpression() {
-        var expr;
-
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        while (match('.') || match('[')) {
-            if (match('[')) {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: true,
-                    object: expr,
-                    property: parseComputedMember()
-                };
-            } else {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: false,
-                    object: expr,
-                    property: parseNonComputedMember()
-                };
-            }
-        }
-
-        return expr;
-    }
-
-    // 11.3 Postfix Expressions
-
-    function parsePostfixExpression() {
-        var expr = parseLeftHandSideExpressionAllowCall(), token;
-
-        token = lookahead();
-        if (token.type !== Token.Punctuator) {
-            return expr;
-        }
-
-        if ((match('++') || match('--')) && !peekLineTerminator()) {
-            // 11.3.1, 11.3.2
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                throwErrorTolerant({}, Messages.StrictLHSPostfix);
-            }
-            if (!isLeftHandSide(expr)) {
-                throwErrorTolerant({}, Messages.InvalidLHSInAssignment);
-            }
-
-            expr = {
-                type: Syntax.UpdateExpression,
-                operator: lex().value,
-                argument: expr,
-                prefix: false
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.4 Unary Operators
-
-    function parseUnaryExpression() {
-        var token, expr;
-
-        token = lookahead();
-        if (token.type !== Token.Punctuator && token.type !== Token.Keyword) {
-            return parsePostfixExpression();
-        }
-
-        if (match('++') || match('--')) {
-            token = lex();
-            expr = parseUnaryExpression();
-            // 11.4.4, 11.4.5
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                throwErrorTolerant({}, Messages.StrictLHSPrefix);
-            }
-
-            if (!isLeftHandSide(expr)) {
-                throwErrorTolerant({}, Messages.InvalidLHSInAssignment);
-            }
-
-            expr = {
-                type: Syntax.UpdateExpression,
-                operator: token.value,
-                argument: expr,
-                prefix: true
-            };
-            return expr;
-        }
-
-        if (match('+') || match('-') || match('~') || match('!')) {
-            expr = {
-                type: Syntax.UnaryExpression,
-                operator: lex().value,
-                argument: parseUnaryExpression(),
-                prefix: true
-            };
-            return expr;
-        }
-
-        if (matchKeyword('delete') || matchKeyword('void') || matchKeyword('typeof')) {
-            expr = {
-                type: Syntax.UnaryExpression,
-                operator: lex().value,
-                argument: parseUnaryExpression(),
-                prefix: true
-            };
-            if (strict && expr.operator === 'delete' && expr.argument.type === Syntax.Identifier) {
-                throwErrorTolerant({}, Messages.StrictDelete);
-            }
-            return expr;
-        }
-
-        return parsePostfixExpression();
-    }
-
-    // 11.5 Multiplicative Operators
-
-    function parseMultiplicativeExpression() {
-        var expr = parseUnaryExpression();
-
-        while (match('*') || match('/') || match('%')) {
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseUnaryExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.6 Additive Operators
-
-    function parseAdditiveExpression() {
-        var expr = parseMultiplicativeExpression();
-
-        while (match('+') || match('-')) {
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseMultiplicativeExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.7 Bitwise Shift Operators
-
-    function parseShiftExpression() {
-        var expr = parseAdditiveExpression();
-
-        while (match('<<') || match('>>') || match('>>>')) {
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseAdditiveExpression()
-            };
-        }
-
-        return expr;
-    }
-    // 11.8 Relational Operators
-
-    function parseRelationalExpression() {
-        var expr, previousAllowIn;
-
-        previousAllowIn = state.allowIn;
-        state.allowIn = true;
-
-        expr = parseShiftExpression();
-
-        while (match('<') || match('>') || match('<=') || match('>=') || (previousAllowIn && matchKeyword('in')) || matchKeyword('instanceof')) {
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseShiftExpression()
-            };
-        }
-
-        state.allowIn = previousAllowIn;
-        return expr;
-    }
-
-    // 11.9 Equality Operators
-
-    function parseEqualityExpression() {
-        var expr = parseRelationalExpression();
-
-        while (match('==') || match('!=') || match('===') || match('!==')) {
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseRelationalExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.10 Binary Bitwise Operators
-
-    function parseBitwiseANDExpression() {
-        var expr = parseEqualityExpression();
-
-        while (match('&')) {
-            lex();
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: '&',
-                left: expr,
-                right: parseEqualityExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    function parseBitwiseXORExpression() {
-        var expr = parseBitwiseANDExpression();
-
-        while (match('^')) {
-            lex();
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: '^',
-                left: expr,
-                right: parseBitwiseANDExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    function parseBitwiseORExpression() {
-        var expr = parseBitwiseXORExpression();
-
-        while (match('|')) {
-            lex();
-            expr = {
-                type: Syntax.BinaryExpression,
-                operator: '|',
-                left: expr,
-                right: parseBitwiseXORExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.11 Binary Logical Operators
-
-    function parseLogicalANDExpression() {
-        var expr = parseBitwiseORExpression();
-
-        while (match('&&')) {
-            lex();
-            expr = {
-                type: Syntax.LogicalExpression,
-                operator: '&&',
-                left: expr,
-                right: parseBitwiseORExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    function parseLogicalORExpression() {
-        var expr = parseLogicalANDExpression();
-
-        while (match('||')) {
-            lex();
-            expr = {
-                type: Syntax.LogicalExpression,
-                operator: '||',
-                left: expr,
-                right: parseLogicalANDExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.12 Conditional Operator
-
-    function parseConditionalExpression() {
-        var expr, previousAllowIn, consequent;
-
-        expr = parseLogicalORExpression();
-
-        if (match('?')) {
-            lex();
-            previousAllowIn = state.allowIn;
-            state.allowIn = true;
-            consequent = parseAssignmentExpression();
-            state.allowIn = previousAllowIn;
-            expect(':');
-
-            expr = {
-                type: Syntax.ConditionalExpression,
-                test: expr,
-                consequent: consequent,
-                alternate: parseAssignmentExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.13 Assignment Operators
-
-    function parseAssignmentExpression() {
-        var token, expr;
-
-        token = lookahead();
-        expr = parseConditionalExpression();
-
-        if (matchAssign()) {
-            // LeftHandSideExpression
-            if (!isLeftHandSide(expr)) {
-                throwErrorTolerant({}, Messages.InvalidLHSInAssignment);
-            }
-
-            // 11.13.1
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                throwErrorTolerant(token, Messages.StrictLHSAssignment);
-            }
-
-            expr = {
-                type: Syntax.AssignmentExpression,
-                operator: lex().value,
-                left: expr,
-                right: parseAssignmentExpression()
-            };
-        }
-
-        return expr;
-    }
-
-    // 11.14 Comma Operator
-
-    function parseExpression() {
-        var expr = parseAssignmentExpression();
-
-        if (match(',')) {
-            expr = {
-                type: Syntax.SequenceExpression,
-                expressions: [ expr ]
-            };
-
-            while (index < length) {
-                if (!match(',')) {
-                    break;
-                }
-                lex();
-                expr.expressions.push(parseAssignmentExpression());
-            }
-
-        }
-        return expr;
-    }
-
-    // 12.1 Block
-
-    function parseStatementList() {
-        var list = [],
-            statement;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            statement = parseSourceElement();
-            if (typeof statement === 'undefined') {
-                break;
-            }
-            list.push(statement);
-        }
-
-        return list;
-    }
-
-    function parseBlock() {
-        var block;
-
-        expect('{');
-
-        block = parseStatementList();
-
-        expect('}');
-
-        return {
-            type: Syntax.BlockStatement,
-            body: block
-        };
-    }
-
-    // 12.2 Variable Statement
-
-    function parseVariableIdentifier() {
-        var token = lex();
-
-        if (token.type !== Token.Identifier) {
-            throwUnexpected(token);
-        }
-
-        return {
-            type: Syntax.Identifier,
-            name: token.value
-        };
-    }
-
-    function parseVariableDeclaration(kind) {
-        var id = parseVariableIdentifier(),
-            init = null;
-
-        // 12.2.1
-        if (strict && isRestrictedWord(id.name)) {
-            throwErrorTolerant({}, Messages.StrictVarName);
-        }
-
-        if (kind === 'const') {
-            expect('=');
-            init = parseAssignmentExpression();
-        } else if (match('=')) {
-            lex();
-            init = parseAssignmentExpression();
-        }
-
-        return {
-            type: Syntax.VariableDeclarator,
-            id: id,
-            init: init
-        };
-    }
-
-    function parseVariableDeclarationList(kind) {
-        var list = [];
-
-        do {
-            list.push(parseVariableDeclaration(kind));
-            if (!match(',')) {
-                break;
-            }
-            lex();
-        } while (index < length);
-
-        return list;
-    }
-
-    function parseVariableStatement() {
-        var declarations;
-
-        expectKeyword('var');
-
-        declarations = parseVariableDeclarationList();
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.VariableDeclaration,
-            declarations: declarations,
-            kind: 'var'
-        };
-    }
-
-    // kind may be `const` or `let`
-    // Both are experimental and not in the specification yet.
-    // see http://wiki.ecmascript.org/doku.php?id=harmony:const
-    // and http://wiki.ecmascript.org/doku.php?id=harmony:let
-    function parseConstLetDeclaration(kind) {
-        var declarations;
-
-        expectKeyword(kind);
-
-        declarations = parseVariableDeclarationList(kind);
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.VariableDeclaration,
-            declarations: declarations,
-            kind: kind
-        };
-    }
-
-    // 12.3 Empty Statement
-
-    function parseEmptyStatement() {
-        expect(';');
-
-        return {
-            type: Syntax.EmptyStatement
-        };
-    }
-
-    // 12.4 Expression Statement
-
-    function parseExpressionStatement() {
-        var expr = parseExpression();
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.ExpressionStatement,
-            expression: expr
-        };
-    }
-
-    // 12.5 If statement
-
-    function parseIfStatement() {
-        var test, consequent, alternate;
-
-        expectKeyword('if');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        consequent = parseStatement();
-
-        if (matchKeyword('else')) {
-            lex();
-            alternate = parseStatement();
-        } else {
-            alternate = null;
-        }
-
-        return {
-            type: Syntax.IfStatement,
-            test: test,
-            consequent: consequent,
-            alternate: alternate
-        };
-    }
-
-    // 12.6 Iteration Statements
-
-    function parseDoWhileStatement() {
-        var body, test, oldInIteration;
-
-        expectKeyword('do');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        if (match(';')) {
-            lex();
-        }
-
-        return {
-            type: Syntax.DoWhileStatement,
-            body: body,
-            test: test
-        };
-    }
-
-    function parseWhileStatement() {
-        var test, body, oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        return {
-            type: Syntax.WhileStatement,
-            test: test,
-            body: body
-        };
-    }
-
-    function parseForVariableDeclaration() {
-        var token = lex();
-
-        return {
-            type: Syntax.VariableDeclaration,
-            declarations: parseVariableDeclarationList(),
-            kind: token.value
-        };
-    }
-
-    function parseForStatement() {
-        var init, test, update, left, right, body, oldInIteration;
-
-        init = test = update = null;
-
-        expectKeyword('for');
-
-        expect('(');
-
-        if (match(';')) {
-            lex();
-        } else {
-            if (matchKeyword('var') || matchKeyword('let')) {
-                state.allowIn = false;
-                init = parseForVariableDeclaration();
-                state.allowIn = true;
-
-                if (init.declarations.length === 1 && matchKeyword('in')) {
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                }
-            } else {
-                state.allowIn = false;
-                init = parseExpression();
-                state.allowIn = true;
-
-                if (matchKeyword('in')) {
-                    // LeftHandSideExpression
-                    if (!isLeftHandSide(init)) {
-                        throwErrorTolerant({}, Messages.InvalidLHSInForIn);
-                    }
-
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                }
-            }
-
-            if (typeof left === 'undefined') {
-                expect(';');
-            }
-        }
-
-        if (typeof left === 'undefined') {
-
-            if (!match(';')) {
-                test = parseExpression();
-            }
-            expect(';');
-
-            if (!match(')')) {
-                update = parseExpression();
-            }
-        }
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        if (typeof left === 'undefined') {
-            return {
-                type: Syntax.ForStatement,
-                init: init,
-                test: test,
-                update: update,
-                body: body
-            };
-        }
-
-        return {
-            type: Syntax.ForInStatement,
-            left: left,
-            right: right,
-            body: body,
-            each: false
-        };
-    }
-
-    // 12.7 The continue statement
-
-    function parseContinueStatement() {
-        var token, label = null;
-
-        expectKeyword('continue');
-
-        // Optimize the most common form: 'continue;'.
-        if (source[index] === ';') {
-            lex();
-
-            if (!state.inIteration) {
-                throwError({}, Messages.IllegalContinue);
-            }
-
-            return {
-                type: Syntax.ContinueStatement,
-                label: null
-            };
-        }
-
-        if (peekLineTerminator()) {
-            if (!state.inIteration) {
-                throwError({}, Messages.IllegalContinue);
-            }
-
-            return {
-                type: Syntax.ContinueStatement,
-                label: null
-            };
-        }
-
-        token = lookahead();
-        if (token.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, label.name)) {
-                throwError({}, Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !state.inIteration) {
-            throwError({}, Messages.IllegalContinue);
-        }
-
-        return {
-            type: Syntax.ContinueStatement,
-            label: label
-        };
-    }
-
-    // 12.8 The break statement
-
-    function parseBreakStatement() {
-        var token, label = null;
-
-        expectKeyword('break');
-
-        // Optimize the most common form: 'break;'.
-        if (source[index] === ';') {
-            lex();
-
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError({}, Messages.IllegalBreak);
-            }
-
-            return {
-                type: Syntax.BreakStatement,
-                label: null
-            };
-        }
-
-        if (peekLineTerminator()) {
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError({}, Messages.IllegalBreak);
-            }
-
-            return {
-                type: Syntax.BreakStatement,
-                label: null
-            };
-        }
-
-        token = lookahead();
-        if (token.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, label.name)) {
-                throwError({}, Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !(state.inIteration || state.inSwitch)) {
-            throwError({}, Messages.IllegalBreak);
-        }
-
-        return {
-            type: Syntax.BreakStatement,
-            label: label
-        };
-    }
-
-    // 12.9 The return statement
-
-    function parseReturnStatement() {
-        var token, argument = null;
-
-        expectKeyword('return');
-
-        if (!state.inFunctionBody) {
-            throwErrorTolerant({}, Messages.IllegalReturn);
-        }
-
-        // 'return' followed by a space and an identifier is very common.
-        if (source[index] === ' ') {
-            if (isIdentifierStart(source[index + 1])) {
-                argument = parseExpression();
-                consumeSemicolon();
-                return {
-                    type: Syntax.ReturnStatement,
-                    argument: argument
-                };
-            }
-        }
-
-        if (peekLineTerminator()) {
-            return {
-                type: Syntax.ReturnStatement,
-                argument: null
-            };
-        }
-
-        if (!match(';')) {
-            token = lookahead();
-            if (!match('}') && token.type !== Token.EOF) {
-                argument = parseExpression();
-            }
-        }
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.ReturnStatement,
-            argument: argument
-        };
-    }
-
-    // 12.10 The with statement
-
-    function parseWithStatement() {
-        var object, body;
-
-        if (strict) {
-            throwErrorTolerant({}, Messages.StrictModeWith);
-        }
-
-        expectKeyword('with');
-
-        expect('(');
-
-        object = parseExpression();
-
-        expect(')');
-
-        body = parseStatement();
-
-        return {
-            type: Syntax.WithStatement,
-            object: object,
-            body: body
-        };
-    }
-
-    // 12.10 The swith statement
-
-    function parseSwitchCase() {
-        var test,
-            consequent = [],
-            statement;
-
-        if (matchKeyword('default')) {
-            lex();
-            test = null;
-        } else {
-            expectKeyword('case');
-            test = parseExpression();
-        }
-        expect(':');
-
-        while (index < length) {
-            if (match('}') || matchKeyword('default') || matchKeyword('case')) {
-                break;
-            }
-            statement = parseStatement();
-            if (typeof statement === 'undefined') {
-                break;
-            }
-            consequent.push(statement);
-        }
-
-        return {
-            type: Syntax.SwitchCase,
-            test: test,
-            consequent: consequent
-        };
-    }
-
-    function parseSwitchStatement() {
-        var discriminant, cases, clause, oldInSwitch, defaultFound;
-
-        expectKeyword('switch');
-
-        expect('(');
-
-        discriminant = parseExpression();
-
-        expect(')');
-
-        expect('{');
-
-        cases = [];
-
-        if (match('}')) {
-            lex();
-            return {
-                type: Syntax.SwitchStatement,
-                discriminant: discriminant,
-                cases: cases
-            };
-        }
-
-        oldInSwitch = state.inSwitch;
-        state.inSwitch = true;
-        defaultFound = false;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            clause = parseSwitchCase();
-            if (clause.test === null) {
-                if (defaultFound) {
-                    throwError({}, Messages.MultipleDefaultsInSwitch);
-                }
-                defaultFound = true;
-            }
-            cases.push(clause);
-        }
-
-        state.inSwitch = oldInSwitch;
-
-        expect('}');
-
-        return {
-            type: Syntax.SwitchStatement,
-            discriminant: discriminant,
-            cases: cases
-        };
-    }
-
-    // 12.13 The throw statement
-
-    function parseThrowStatement() {
-        var argument;
-
-        expectKeyword('throw');
-
-        if (peekLineTerminator()) {
-            throwError({}, Messages.NewlineAfterThrow);
-        }
-
-        argument = parseExpression();
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.ThrowStatement,
-            argument: argument
-        };
-    }
-
-    // 12.14 The try statement
-
-    function parseCatchClause() {
-        var param;
-
-        expectKeyword('catch');
-
-        expect('(');
-        if (match(')')) {
-            throwUnexpected(lookahead());
-        }
-
-        param = parseVariableIdentifier();
-        // 12.14.1
-        if (strict && isRestrictedWord(param.name)) {
-            throwErrorTolerant({}, Messages.StrictCatchVariable);
-        }
-
-        expect(')');
-
-        return {
-            type: Syntax.CatchClause,
-            param: param,
-            body: parseBlock()
-        };
-    }
-
-    function parseTryStatement() {
-        var block, handlers = [], finalizer = null;
-
-        expectKeyword('try');
-
-        block = parseBlock();
-
-        if (matchKeyword('catch')) {
-            handlers.push(parseCatchClause());
-        }
-
-        if (matchKeyword('finally')) {
-            lex();
-            finalizer = parseBlock();
-        }
-
-        if (handlers.length === 0 && !finalizer) {
-            throwError({}, Messages.NoCatchOrFinally);
-        }
-
-        return {
-            type: Syntax.TryStatement,
-            block: block,
-            guardedHandlers: [],
-            handlers: handlers,
-            finalizer: finalizer
-        };
-    }
-
-    // 12.15 The debugger statement
-
-    function parseDebuggerStatement() {
-        expectKeyword('debugger');
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.DebuggerStatement
-        };
-    }
-
-    // 12 Statements
-
-    function parseStatement() {
-        var token = lookahead(),
-            expr,
-            labeledBody;
-
-        if (token.type === Token.EOF) {
-            throwUnexpected(token);
-        }
-
-        if (token.type === Token.Punctuator) {
-            switch (token.value) {
-            case ';':
-                return parseEmptyStatement();
-            case '{':
-                return parseBlock();
-            case '(':
-                return parseExpressionStatement();
-            default:
-                break;
-            }
-        }
-
-        if (token.type === Token.Keyword) {
-            switch (token.value) {
-            case 'break':
-                return parseBreakStatement();
-            case 'continue':
-                return parseContinueStatement();
-            case 'debugger':
-                return parseDebuggerStatement();
-            case 'do':
-                return parseDoWhileStatement();
-            case 'for':
-                return parseForStatement();
-            case 'function':
-                return parseFunctionDeclaration();
-            case 'if':
-                return parseIfStatement();
-            case 'return':
-                return parseReturnStatement();
-            case 'switch':
-                return parseSwitchStatement();
-            case 'throw':
-                return parseThrowStatement();
-            case 'try':
-                return parseTryStatement();
-            case 'var':
-                return parseVariableStatement();
-            case 'while':
-                return parseWhileStatement();
-            case 'with':
-                return parseWithStatement();
-            default:
-                break;
-            }
-        }
-
-        expr = parseExpression();
-
-        // 12.12 Labelled Statements
-        if ((expr.type === Syntax.Identifier) && match(':')) {
-            lex();
-
-            if (Object.prototype.hasOwnProperty.call(state.labelSet, expr.name)) {
-                throwError({}, Messages.Redeclaration, 'Label', expr.name);
-            }
-
-            state.labelSet[expr.name] = true;
-            labeledBody = parseStatement();
-            delete state.labelSet[expr.name];
-
-            return {
-                type: Syntax.LabeledStatement,
-                label: expr,
-                body: labeledBody
-            };
-        }
-
-        consumeSemicolon();
-
-        return {
-            type: Syntax.ExpressionStatement,
-            expression: expr
-        };
-    }
-
-    // 13 Function Definition
-
-    function parseFunctionSourceElements() {
-        var sourceElement, sourceElements = [], token, directive, firstRestricted,
-            oldLabelSet, oldInIteration, oldInSwitch, oldInFunctionBody;
-
-        expect('{');
-
-        while (index < length) {
-            token = lookahead();
-            if (token.type !== Token.StringLiteral) {
-                break;
-            }
-
-            sourceElement = parseSourceElement();
-            sourceElements.push(sourceElement);
-            if (sourceElement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = sliceSource(token.range[0] + 1, token.range[1] - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    throwErrorTolerant(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        oldLabelSet = state.labelSet;
-        oldInIteration = state.inIteration;
-        oldInSwitch = state.inSwitch;
-        oldInFunctionBody = state.inFunctionBody;
-
-        state.labelSet = {};
-        state.inIteration = false;
-        state.inSwitch = false;
-        state.inFunctionBody = true;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            sourceElement = parseSourceElement();
-            if (typeof sourceElement === 'undefined') {
-                break;
-            }
-            sourceElements.push(sourceElement);
-        }
-
-        expect('}');
-
-        state.labelSet = oldLabelSet;
-        state.inIteration = oldInIteration;
-        state.inSwitch = oldInSwitch;
-        state.inFunctionBody = oldInFunctionBody;
-
-        return {
-            type: Syntax.BlockStatement,
-            body: sourceElements
-        };
-    }
-
-    function parseFunctionDeclaration() {
-        var id, param, params = [], body, token, stricted, firstRestricted, message, previousStrict, paramSet;
-
-        expectKeyword('function');
-        token = lookahead();
-        id = parseVariableIdentifier();
-        if (strict) {
-            if (isRestrictedWord(token.value)) {
-                throwErrorTolerant(token, Messages.StrictFunctionName);
-            }
-        } else {
-            if (isRestrictedWord(token.value)) {
-                firstRestricted = token;
-                message = Messages.StrictFunctionName;
-            } else if (isStrictModeReservedWord(token.value)) {
-                firstRestricted = token;
-                message = Messages.StrictReservedWord;
-            }
-        }
-
-        expect('(');
-
-        if (!match(')')) {
-            paramSet = {};
-            while (index < length) {
-                token = lookahead();
-                param = parseVariableIdentifier();
-                if (strict) {
-                    if (isRestrictedWord(token.value)) {
-                        stricted = token;
-                        message = Messages.StrictParamName;
-                    }
-                    if (Object.prototype.hasOwnProperty.call(paramSet, token.value)) {
-                        stricted = token;
-                        message = Messages.StrictParamDupe;
-                    }
-                } else if (!firstRestricted) {
-                    if (isRestrictedWord(token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictParamName;
-                    } else if (isStrictModeReservedWord(token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictReservedWord;
-                    } else if (Object.prototype.hasOwnProperty.call(paramSet, token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictParamDupe;
-                    }
-                }
-                params.push(param);
-                paramSet[param.name] = true;
-                if (match(')')) {
-                    break;
-                }
-                expect(',');
-            }
-        }
-
-        expect(')');
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwError(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            throwErrorTolerant(stricted, message);
-        }
-        strict = previousStrict;
-
-        return {
-            type: Syntax.FunctionDeclaration,
-            id: id,
-            params: params,
-            defaults: [],
-            body: body,
-            rest: null,
-            generator: false,
-            expression: false
-        };
-    }
-
-    function parseFunctionExpression() {
-        var token, id = null, stricted, firstRestricted, message, param, params = [], body, previousStrict, paramSet;
-
-        expectKeyword('function');
-
-        if (!match('(')) {
-            token = lookahead();
-            id = parseVariableIdentifier();
-            if (strict) {
-                if (isRestrictedWord(token.value)) {
-                    throwErrorTolerant(token, Messages.StrictFunctionName);
-                }
-            } else {
-                if (isRestrictedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictFunctionName;
-                } else if (isStrictModeReservedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictReservedWord;
-                }
-            }
-        }
-
-        expect('(');
-
-        if (!match(')')) {
-            paramSet = {};
-            while (index < length) {
-                token = lookahead();
-                param = parseVariableIdentifier();
-                if (strict) {
-                    if (isRestrictedWord(token.value)) {
-                        stricted = token;
-                        message = Messages.StrictParamName;
-                    }
-                    if (Object.prototype.hasOwnProperty.call(paramSet, token.value)) {
-                        stricted = token;
-                        message = Messages.StrictParamDupe;
-                    }
-                } else if (!firstRestricted) {
-                    if (isRestrictedWord(token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictParamName;
-                    } else if (isStrictModeReservedWord(token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictReservedWord;
-                    } else if (Object.prototype.hasOwnProperty.call(paramSet, token.value)) {
-                        firstRestricted = token;
-                        message = Messages.StrictParamDupe;
-                    }
-                }
-                params.push(param);
-                paramSet[param.name] = true;
-                if (match(')')) {
-                    break;
-                }
-                expect(',');
-            }
-        }
-
-        expect(')');
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwError(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            throwErrorTolerant(stricted, message);
-        }
-        strict = previousStrict;
-
-        return {
-            type: Syntax.FunctionExpression,
-            id: id,
-            params: params,
-            defaults: [],
-            body: body,
-            rest: null,
-            generator: false,
-            expression: false
-        };
-    }
-
-    // 14 Program
-
-    function parseSourceElement() {
-        var token = lookahead();
-
-        if (token.type === Token.Keyword) {
-            switch (token.value) {
-            case 'const':
-            case 'let':
-                return parseConstLetDeclaration(token.value);
-            case 'function':
-                return parseFunctionDeclaration();
-            default:
-                return parseStatement();
-            }
-        }
-
-        if (token.type !== Token.EOF) {
-            return parseStatement();
-        }
-    }
-
-    function parseSourceElements() {
-        var sourceElement, sourceElements = [], token, directive, firstRestricted;
-
-        while (index < length) {
-            token = lookahead();
-            if (token.type !== Token.StringLiteral) {
-                break;
-            }
-
-            sourceElement = parseSourceElement();
-            sourceElements.push(sourceElement);
-            if (sourceElement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = sliceSource(token.range[0] + 1, token.range[1] - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    throwErrorTolerant(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        while (index < length) {
-            sourceElement = parseSourceElement();
-            if (typeof sourceElement === 'undefined') {
-                break;
-            }
-            sourceElements.push(sourceElement);
-        }
-        return sourceElements;
-    }
-
-    function parseProgram() {
-        var program;
-        strict = false;
-        program = {
-            type: Syntax.Program,
-            body: parseSourceElements()
-        };
-        return program;
-    }
-
-    // The following functions are needed only when the option to preserve
-    // the comments is active.
-
-    function addComment(type, value, start, end, loc) {
-        assert(typeof start === 'number', 'Comment must have valid position');
-
-        // Because the way the actual token is scanned, often the comments
-        // (if any) are skipped twice during the lexical analysis.
-        // Thus, we need to skip adding a comment if the comment array already
-        // handled it.
-        if (extra.comments.length > 0) {
-            if (extra.comments[extra.comments.length - 1].range[1] > start) {
-                return;
-            }
-        }
-
-        extra.comments.push({
-            type: type,
-            value: value,
-            range: [start, end],
-            loc: loc
-        });
-    }
-
-    function scanComment() {
-        var comment, ch, loc, start, blockComment, lineComment;
-
-        comment = '';
-        blockComment = false;
-        lineComment = false;
-
-        while (index < length) {
-            ch = source[index];
-
-            if (lineComment) {
-                ch = source[index++];
-                if (isLineTerminator(ch)) {
-                    loc.end = {
-                        line: lineNumber,
-                        column: index - lineStart - 1
-                    };
-                    lineComment = false;
-                    addComment('Line', comment, start, index - 1, loc);
-                    if (ch === '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                    ++lineNumber;
-                    lineStart = index;
-                    comment = '';
-                } else if (index >= length) {
-                    lineComment = false;
-                    comment += ch;
-                    loc.end = {
-                        line: lineNumber,
-                        column: length - lineStart
-                    };
-                    addComment('Line', comment, start, length, loc);
-                } else {
-                    comment += ch;
-                }
-            } else if (blockComment) {
-                if (isLineTerminator(ch)) {
-                    if (ch === '\r' && source[index + 1] === '\n') {
-                        ++index;
-                        comment += '\r\n';
-                    } else {
-                        comment += ch;
-                    }
-                    ++lineNumber;
-                    ++index;
-                    lineStart = index;
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                } else {
-                    ch = source[index++];
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                    comment += ch;
-                    if (ch === '*') {
-                        ch = source[index];
-                        if (ch === '/') {
-                            comment = comment.substr(0, comment.length - 1);
-                            blockComment = false;
-                            ++index;
-                            loc.end = {
-                                line: lineNumber,
-                                column: index - lineStart
-                            };
-                            addComment('Block', comment, start, index, loc);
-                            comment = '';
-                        }
-                    }
-                }
-            } else if (ch === '/') {
-                ch = source[index + 1];
-                if (ch === '/') {
-                    loc = {
-                        start: {
-                            line: lineNumber,
-                            column: index - lineStart
-                        }
-                    };
-                    start = index;
-                    index += 2;
-                    lineComment = true;
-                    if (index >= length) {
-                        loc.end = {
-                            line: lineNumber,
-                            column: index - lineStart
-                        };
-                        lineComment = false;
-                        addComment('Line', comment, start, index, loc);
-                    }
-                } else if (ch === '*') {
-                    start = index;
-                    index += 2;
-                    blockComment = true;
-                    loc = {
-                        start: {
-                            line: lineNumber,
-                            column: index - lineStart - 2
-                        }
-                    };
-                    if (index >= length) {
-                        throwError({}, Messages.UnexpectedToken, 'ILLEGAL');
-                    }
-                } else {
-                    break;
-                }
-            } else if (isWhiteSpace(ch)) {
-                ++index;
-            } else if (isLineTerminator(ch)) {
-                ++index;
-                if (ch ===  '\r' && source[index] === '\n') {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-            } else {
-                break;
-            }
-        }
-    }
-
-    function filterCommentLocation() {
-        var i, entry, comment, comments = [];
-
-        for (i = 0; i < extra.comments.length; ++i) {
-            entry = extra.comments[i];
-            comment = {
-                type: entry.type,
-                value: entry.value
-            };
-            if (extra.range) {
-                comment.range = entry.range;
-            }
-            if (extra.loc) {
-                comment.loc = entry.loc;
-            }
-            comments.push(comment);
-        }
-
-        extra.comments = comments;
-    }
-
-    function collectToken() {
-        var start, loc, token, range, value;
-
-        skipComment();
-        start = index;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        token = extra.advance();
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        if (token.type !== Token.EOF) {
-            range = [token.range[0], token.range[1]];
-            value = sliceSource(token.range[0], token.range[1]);
-            extra.tokens.push({
-                type: TokenName[token.type],
-                value: value,
-                range: range,
-                loc: loc
-            });
-        }
-
-        return token;
-    }
-
-    function collectRegex() {
-        var pos, loc, regex, token;
-
-        skipComment();
-
-        pos = index;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        regex = extra.scanRegExp();
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        // Pop the previous token, which is likely '/' or '/='
-        if (extra.tokens.length > 0) {
-            token = extra.tokens[extra.tokens.length - 1];
-            if (token.range[0] === pos && token.type === 'Punctuator') {
-                if (token.value === '/' || token.value === '/=') {
-                    extra.tokens.pop();
-                }
-            }
-        }
-
-        extra.tokens.push({
-            type: 'RegularExpression',
-            value: regex.literal,
-            range: [pos, index],
-            loc: loc
-        });
-
-        return regex;
-    }
-
-    function filterTokenLocation() {
-        var i, entry, token, tokens = [];
-
-        for (i = 0; i < extra.tokens.length; ++i) {
-            entry = extra.tokens[i];
-            token = {
-                type: entry.type,
-                value: entry.value
-            };
-            if (extra.range) {
-                token.range = entry.range;
-            }
-            if (extra.loc) {
-                token.loc = entry.loc;
-            }
-            tokens.push(token);
-        }
-
-        extra.tokens = tokens;
-    }
-
-    function createLiteral(token) {
-        return {
-            type: Syntax.Literal,
-            value: token.value
-        };
-    }
-
-    function createRawLiteral(token) {
-        return {
-            type: Syntax.Literal,
-            value: token.value,
-            raw: sliceSource(token.range[0], token.range[1])
-        };
-    }
-
-    function createLocationMarker() {
-        var marker = {};
-
-        marker.range = [index, index];
-        marker.loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            },
-            end: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        marker.end = function () {
-            this.range[1] = index;
-            this.loc.end.line = lineNumber;
-            this.loc.end.column = index - lineStart;
-        };
-
-        marker.applyGroup = function (node) {
-            if (extra.range) {
-                node.groupRange = [this.range[0], this.range[1]];
-            }
-            if (extra.loc) {
-                node.groupLoc = {
-                    start: {
-                        line: this.loc.start.line,
-                        column: this.loc.start.column
-                    },
-                    end: {
-                        line: this.loc.end.line,
-                        column: this.loc.end.column
-                    }
-                };
-            }
-        };
-
-        marker.apply = function (node) {
-            if (extra.range) {
-                node.range = [this.range[0], this.range[1]];
-            }
-            if (extra.loc) {
-                node.loc = {
-                    start: {
-                        line: this.loc.start.line,
-                        column: this.loc.start.column
-                    },
-                    end: {
-                        line: this.loc.end.line,
-                        column: this.loc.end.column
-                    }
-                };
-            }
-        };
-
-        return marker;
-    }
-
-    function trackGroupExpression() {
-        var marker, expr;
-
-        skipComment();
-        marker = createLocationMarker();
-        expect('(');
-
-        expr = parseExpression();
-
-        expect(')');
-
-        marker.end();
-        marker.applyGroup(expr);
-
-        return expr;
-    }
-
-    function trackLeftHandSideExpression() {
-        var marker, expr;
-
-        skipComment();
-        marker = createLocationMarker();
-
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        while (match('.') || match('[')) {
-            if (match('[')) {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: true,
-                    object: expr,
-                    property: parseComputedMember()
-                };
-                marker.end();
-                marker.apply(expr);
-            } else {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: false,
-                    object: expr,
-                    property: parseNonComputedMember()
-                };
-                marker.end();
-                marker.apply(expr);
-            }
-        }
-
-        return expr;
-    }
-
-    function trackLeftHandSideExpressionAllowCall() {
-        var marker, expr;
-
-        skipComment();
-        marker = createLocationMarker();
-
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        while (match('.') || match('[') || match('(')) {
-            if (match('(')) {
-                expr = {
-                    type: Syntax.CallExpression,
-                    callee: expr,
-                    'arguments': parseArguments()
-                };
-                marker.end();
-                marker.apply(expr);
-            } else if (match('[')) {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: true,
-                    object: expr,
-                    property: parseComputedMember()
-                };
-                marker.end();
-                marker.apply(expr);
-            } else {
-                expr = {
-                    type: Syntax.MemberExpression,
-                    computed: false,
-                    object: expr,
-                    property: parseNonComputedMember()
-                };
-                marker.end();
-                marker.apply(expr);
-            }
-        }
-
-        return expr;
-    }
-
-    function filterGroup(node) {
-        var n, i, entry;
-
-        n = (Object.prototype.toString.apply(node) === '[object Array]') ? [] : {};
-        for (i in node) {
-            if (node.hasOwnProperty(i) && i !== 'groupRange' && i !== 'groupLoc') {
-                entry = node[i];
-                if (entry === null || typeof entry !== 'object' || entry instanceof RegExp) {
-                    n[i] = entry;
-                } else {
-                    n[i] = filterGroup(entry);
-                }
-            }
-        }
-        return n;
-    }
-
-    function wrapTrackingFunction(range, loc) {
-
-        return function (parseFunction) {
-
-            function isBinary(node) {
-                return node.type === Syntax.LogicalExpression ||
-                    node.type === Syntax.BinaryExpression;
-            }
-
-            function visit(node) {
-                var start, end;
-
-                if (isBinary(node.left)) {
-                    visit(node.left);
-                }
-                if (isBinary(node.right)) {
-                    visit(node.right);
-                }
-
-                if (range) {
-                    if (node.left.groupRange || node.right.groupRange) {
-                        start = node.left.groupRange ? node.left.groupRange[0] : node.left.range[0];
-                        end = node.right.groupRange ? node.right.groupRange[1] : node.right.range[1];
-                        node.range = [start, end];
-                    } else if (typeof node.range === 'undefined') {
-                        start = node.left.range[0];
-                        end = node.right.range[1];
-                        node.range = [start, end];
-                    }
-                }
-                if (loc) {
-                    if (node.left.groupLoc || node.right.groupLoc) {
-                        start = node.left.groupLoc ? node.left.groupLoc.start : node.left.loc.start;
-                        end = node.right.groupLoc ? node.right.groupLoc.end : node.right.loc.end;
-                        node.loc = {
-                            start: start,
-                            end: end
-                        };
-                    } else if (typeof node.loc === 'undefined') {
-                        node.loc = {
-                            start: node.left.loc.start,
-                            end: node.right.loc.end
-                        };
-                    }
-                }
-            }
-
-            return function () {
-                var marker, node;
-
-                skipComment();
-
-                marker = createLocationMarker();
-                node = parseFunction.apply(null, arguments);
-                marker.end();
-
-                if (range && typeof node.range === 'undefined') {
-                    marker.apply(node);
-                }
-
-                if (loc && typeof node.loc === 'undefined') {
-                    marker.apply(node);
-                }
-
-                if (isBinary(node)) {
-                    visit(node);
-                }
-
-                return node;
-            };
-        };
-    }
-
-    function patch() {
-
-        var wrapTracking;
-
-        if (extra.comments) {
-            extra.skipComment = skipComment;
-            skipComment = scanComment;
-        }
-
-        if (extra.raw) {
-            extra.createLiteral = createLiteral;
-            createLiteral = createRawLiteral;
-        }
-
-        if (extra.range || extra.loc) {
-
-            extra.parseGroupExpression = parseGroupExpression;
-            extra.parseLeftHandSideExpression = parseLeftHandSideExpression;
-            extra.parseLeftHandSideExpressionAllowCall = parseLeftHandSideExpressionAllowCall;
-            parseGroupExpression = trackGroupExpression;
-            parseLeftHandSideExpression = trackLeftHandSideExpression;
-            parseLeftHandSideExpressionAllowCall = trackLeftHandSideExpressionAllowCall;
-
-            wrapTracking = wrapTrackingFunction(extra.range, extra.loc);
-
-            extra.parseAdditiveExpression = parseAdditiveExpression;
-            extra.parseAssignmentExpression = parseAssignmentExpression;
-            extra.parseBitwiseANDExpression = parseBitwiseANDExpression;
-            extra.parseBitwiseORExpression = parseBitwiseORExpression;
-            extra.parseBitwiseXORExpression = parseBitwiseXORExpression;
-            extra.parseBlock = parseBlock;
-            extra.parseFunctionSourceElements = parseFunctionSourceElements;
-            extra.parseCatchClause = parseCatchClause;
-            extra.parseComputedMember = parseComputedMember;
-            extra.parseConditionalExpression = parseConditionalExpression;
-            extra.parseConstLetDeclaration = parseConstLetDeclaration;
-            extra.parseEqualityExpression = parseEqualityExpression;
-            extra.parseExpression = parseExpression;
-            extra.parseForVariableDeclaration = parseForVariableDeclaration;
-            extra.parseFunctionDeclaration = parseFunctionDeclaration;
-            extra.parseFunctionExpression = parseFunctionExpression;
-            extra.parseLogicalANDExpression = parseLogicalANDExpression;
-            extra.parseLogicalORExpression = parseLogicalORExpression;
-            extra.parseMultiplicativeExpression = parseMultiplicativeExpression;
-            extra.parseNewExpression = parseNewExpression;
-            extra.parseNonComputedProperty = parseNonComputedProperty;
-            extra.parseObjectProperty = parseObjectProperty;
-            extra.parseObjectPropertyKey = parseObjectPropertyKey;
-            extra.parsePostfixExpression = parsePostfixExpression;
-            extra.parsePrimaryExpression = parsePrimaryExpression;
-            extra.parseProgram = parseProgram;
-            extra.parsePropertyFunction = parsePropertyFunction;
-            extra.parseRelationalExpression = parseRelationalExpression;
-            extra.parseStatement = parseStatement;
-            extra.parseShiftExpression = parseShiftExpression;
-            extra.parseSwitchCase = parseSwitchCase;
-            extra.parseUnaryExpression = parseUnaryExpression;
-            extra.parseVariableDeclaration = parseVariableDeclaration;
-            extra.parseVariableIdentifier = parseVariableIdentifier;
-
-            parseAdditiveExpression = wrapTracking(extra.parseAdditiveExpression);
-            parseAssignmentExpression = wrapTracking(extra.parseAssignmentExpression);
-            parseBitwiseANDExpression = wrapTracking(extra.parseBitwiseANDExpression);
-            parseBitwiseORExpression = wrapTracking(extra.parseBitwiseORExpression);
-            parseBitwiseXORExpression = wrapTracking(extra.parseBitwiseXORExpression);
-            parseBlock = wrapTracking(extra.parseBlock);
-            parseFunctionSourceElements = wrapTracking(extra.parseFunctionSourceElements);
-            parseCatchClause = wrapTracking(extra.parseCatchClause);
-            parseComputedMember = wrapTracking(extra.parseComputedMember);
-            parseConditionalExpression = wrapTracking(extra.parseConditionalExpression);
-            parseConstLetDeclaration = wrapTracking(extra.parseConstLetDeclaration);
-            parseEqualityExpression = wrapTracking(extra.parseEqualityExpression);
-            parseExpression = wrapTracking(extra.parseExpression);
-            parseForVariableDeclaration = wrapTracking(extra.parseForVariableDeclaration);
-            parseFunctionDeclaration = wrapTracking(extra.parseFunctionDeclaration);
-            parseFunctionExpression = wrapTracking(extra.parseFunctionExpression);
-            parseLeftHandSideExpression = wrapTracking(parseLeftHandSideExpression);
-            parseLogicalANDExpression = wrapTracking(extra.parseLogicalANDExpression);
-            parseLogicalORExpression = wrapTracking(extra.parseLogicalORExpression);
-            parseMultiplicativeExpression = wrapTracking(extra.parseMultiplicativeExpression);
-            parseNewExpression = wrapTracking(extra.parseNewExpression);
-            parseNonComputedProperty = wrapTracking(extra.parseNonComputedProperty);
-            parseObjectProperty = wrapTracking(extra.parseObjectProperty);
-            parseObjectPropertyKey = wrapTracking(extra.parseObjectPropertyKey);
-            parsePostfixExpression = wrapTracking(extra.parsePostfixExpression);
-            parsePrimaryExpression = wrapTracking(extra.parsePrimaryExpression);
-            parseProgram = wrapTracking(extra.parseProgram);
-            parsePropertyFunction = wrapTracking(extra.parsePropertyFunction);
-            parseRelationalExpression = wrapTracking(extra.parseRelationalExpression);
-            parseStatement = wrapTracking(extra.parseStatement);
-            parseShiftExpression = wrapTracking(extra.parseShiftExpression);
-            parseSwitchCase = wrapTracking(extra.parseSwitchCase);
-            parseUnaryExpression = wrapTracking(extra.parseUnaryExpression);
-            parseVariableDeclaration = wrapTracking(extra.parseVariableDeclaration);
-            parseVariableIdentifier = wrapTracking(extra.parseVariableIdentifier);
-        }
-
-        if (typeof extra.tokens !== 'undefined') {
-            extra.advance = advance;
-            extra.scanRegExp = scanRegExp;
-
-            advance = collectToken;
-            scanRegExp = collectRegex;
-        }
-    }
-
-    function unpatch() {
-        if (typeof extra.skipComment === 'function') {
-            skipComment = extra.skipComment;
-        }
-
-        if (extra.raw) {
-            createLiteral = extra.createLiteral;
-        }
-
-        if (extra.range || extra.loc) {
-            parseAdditiveExpression = extra.parseAdditiveExpression;
-            parseAssignmentExpression = extra.parseAssignmentExpression;
-            parseBitwiseANDExpression = extra.parseBitwiseANDExpression;
-            parseBitwiseORExpression = extra.parseBitwiseORExpression;
-            parseBitwiseXORExpression = extra.parseBitwiseXORExpression;
-            parseBlock = extra.parseBlock;
-            parseFunctionSourceElements = extra.parseFunctionSourceElements;
-            parseCatchClause = extra.parseCatchClause;
-            parseComputedMember = extra.parseComputedMember;
-            parseConditionalExpression = extra.parseConditionalExpression;
-            parseConstLetDeclaration = extra.parseConstLetDeclaration;
-            parseEqualityExpression = extra.parseEqualityExpression;
-            parseExpression = extra.parseExpression;
-            parseForVariableDeclaration = extra.parseForVariableDeclaration;
-            parseFunctionDeclaration = extra.parseFunctionDeclaration;
-            parseFunctionExpression = extra.parseFunctionExpression;
-            parseGroupExpression = extra.parseGroupExpression;
-            parseLeftHandSideExpression = extra.parseLeftHandSideExpression;
-            parseLeftHandSideExpressionAllowCall = extra.parseLeftHandSideExpressionAllowCall;
-            parseLogicalANDExpression = extra.parseLogicalANDExpression;
-            parseLogicalORExpression = extra.parseLogicalORExpression;
-            parseMultiplicativeExpression = extra.parseMultiplicativeExpression;
-            parseNewExpression = extra.parseNewExpression;
-            parseNonComputedProperty = extra.parseNonComputedProperty;
-            parseObjectProperty = extra.parseObjectProperty;
-            parseObjectPropertyKey = extra.parseObjectPropertyKey;
-            parsePrimaryExpression = extra.parsePrimaryExpression;
-            parsePostfixExpression = extra.parsePostfixExpression;
-            parseProgram = extra.parseProgram;
-            parsePropertyFunction = extra.parsePropertyFunction;
-            parseRelationalExpression = extra.parseRelationalExpression;
-            parseStatement = extra.parseStatement;
-            parseShiftExpression = extra.parseShiftExpression;
-            parseSwitchCase = extra.parseSwitchCase;
-            parseUnaryExpression = extra.parseUnaryExpression;
-            parseVariableDeclaration = extra.parseVariableDeclaration;
-            parseVariableIdentifier = extra.parseVariableIdentifier;
-        }
-
-        if (typeof extra.scanRegExp === 'function') {
-            advance = extra.advance;
-            scanRegExp = extra.scanRegExp;
-        }
-    }
-
-    function stringToArray(str) {
-        var length = str.length,
-            result = [],
-            i;
-        for (i = 0; i < length; ++i) {
-            result[i] = str.charAt(i);
-        }
-        return result;
-    }
-
-    function parse(code, options) {
-        var program, toString;
-
-        toString = String;
-        if (typeof code !== 'string' && !(code instanceof String)) {
-            code = toString(code);
-        }
-
-        source = code;
-        index = 0;
-        lineNumber = (source.length > 0) ? 1 : 0;
-        lineStart = 0;
-        length = source.length;
-        buffer = null;
-        state = {
-            allowIn: true,
-            labelSet: {},
-            inFunctionBody: false,
-            inIteration: false,
-            inSwitch: false
-        };
-
-        extra = {};
-        if (typeof options !== 'undefined') {
-            extra.range = (typeof options.range === 'boolean') && options.range;
-            extra.loc = (typeof options.loc === 'boolean') && options.loc;
-            extra.raw = (typeof options.raw === 'boolean') && options.raw;
-            if (typeof options.tokens === 'boolean' && options.tokens) {
-                extra.tokens = [];
-            }
-            if (typeof options.comment === 'boolean' && options.comment) {
-                extra.comments = [];
-            }
-            if (typeof options.tolerant === 'boolean' && options.tolerant) {
-                extra.errors = [];
-            }
-        }
-
-        if (length > 0) {
-            if (typeof source[0] === 'undefined') {
-                // Try first to convert to a string. This is good as fast path
-                // for old IE which understands string indexing for string
-                // literals only and not for string object.
-                if (code instanceof String) {
-                    source = code.valueOf();
-                }
-
-                // Force accessing the characters via an array.
-                if (typeof source[0] === 'undefined') {
-                    source = stringToArray(code);
-                }
-            }
-        }
-
-        patch();
-        try {
-            program = parseProgram();
-            if (typeof extra.comments !== 'undefined') {
-                filterCommentLocation();
-                program.comments = extra.comments;
-            }
-            if (typeof extra.tokens !== 'undefined') {
-                filterTokenLocation();
-                program.tokens = extra.tokens;
-            }
-            if (typeof extra.errors !== 'undefined') {
-                program.errors = extra.errors;
-            }
-            if (extra.range || extra.loc) {
-                program.body = filterGroup(program.body);
-            }
-        } catch (e) {
-            throw e;
-        } finally {
-            unpatch();
-            extra = {};
-        }
-
-        return program;
-    }
-
-    // Sync with package.json.
-    exports.version = '1.0.4';
-
-    exports.parse = parse;
-
-    // Deep copy.
-    exports.Syntax = (function () {
-        var name, types = {};
-
-        if (typeof Object.create === 'function') {
-            types = Object.create(null);
-        }
-
-        for (name in Syntax) {
-            if (Syntax.hasOwnProperty(name)) {
-                types[name] = Syntax[name];
-            }
-        }
-
-        if (typeof Object.freeze === 'function') {
-            Object.freeze(types);
-        }
-
-        return types;
-    }());
-
-}));
-/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/package.json
deleted file mode 100644 (file)
index cff2b34..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-{
-  "_args": [
-    [
-      "esprima@https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esprima@https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-  "_id": "esprima@https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
-  "_location": "/grunt-standard/standard-format/esformatter-literal-notation/rocambole/esprima",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esprima@https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-    "name": "esprima",
-    "escapedName": "esprima",
-    "rawSpec": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter-literal-notation/rocambole"
-  ],
-  "_spec": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bin": {
-    "esparse": "./bin/esparse.js",
-    "esvalidate": "./bin/esvalidate.js"
-  },
-  "bugs": {
-    "url": "https://github.com/ariya/esprima/issues"
-  },
-  "description": "ECMAScript parsing infrastructure for multipurpose analysis",
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "files": [
-    "bin",
-    "test/run.js",
-    "test/runner.js",
-    "test/test.js",
-    "test/compat.js",
-    "test/reflect.js",
-    "esprima.js"
-  ],
-  "homepage": "http://esprima.org",
-  "keywords": [
-    "ast",
-    "ecmascript",
-    "javascript",
-    "parser",
-    "syntax"
-  ],
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/ariya/esprima/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "esprima.js",
-  "maintainers": [
-    {
-      "name": "Ariya Hidayat",
-      "email": "ariya.hidayat@gmail.com",
-      "url": "http://ariya.ofilabs.com"
-    }
-  ],
-  "name": "esprima",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/ariya/esprima.git"
-  },
-  "scripts": {
-    "benchmark": "node test/benchmarks.js",
-    "benchmark-quick": "node test/benchmarks.js quick",
-    "test": "node test/run.js"
-  },
-  "version": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/compat.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/compat.js
deleted file mode 100644 (file)
index ee3a629..0000000
+++ /dev/null
@@ -1,239 +0,0 @@
-/*
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint node: true */
-/*global document: true, window:true, esprima: true, testReflect: true */
-
-var runTests;
-
-function getContext(esprima, reportCase, reportFailure) {
-    'use strict';
-
-    var Reflect, Pattern;
-
-    // Maps Mozilla Reflect object to our Esprima parser.
-    Reflect = {
-        parse: function (code) {
-            var result;
-
-            reportCase(code);
-
-            try {
-                result = esprima.parse(code);
-            } catch (error) {
-                result = error;
-            }
-
-            return result;
-        }
-    };
-
-    // This is used by Reflect test suite to match a syntax tree.
-    Pattern = function (obj) {
-        var pattern;
-
-        // Poor man's deep object cloning.
-        pattern = JSON.parse(JSON.stringify(obj));
-
-        // Special handling for regular expression literal since we need to
-        // convert it to a string literal, otherwise it will be decoded
-        // as object "{}" and the regular expression would be lost.
-        if (obj.type && obj.type === 'Literal') {
-            if (obj.value instanceof RegExp) {
-                pattern = {
-                    type: obj.type,
-                    value: obj.value.toString()
-                };
-            }
-        }
-
-        // Special handling for branch statement because SpiderMonkey
-        // prefers to put the 'alternate' property before 'consequent'.
-        if (obj.type && obj.type === 'IfStatement') {
-            pattern = {
-                type: pattern.type,
-                test: pattern.test,
-                consequent: pattern.consequent,
-                alternate: pattern.alternate
-            };
-        }
-
-        // Special handling for do while statement because SpiderMonkey
-        // prefers to put the 'test' property before 'body'.
-        if (obj.type && obj.type === 'DoWhileStatement') {
-            pattern = {
-                type: pattern.type,
-                body: pattern.body,
-                test: pattern.test
-            };
-        }
-
-        function adjustRegexLiteralAndRaw(key, value) {
-            if (key === 'value' && value instanceof RegExp) {
-                value = value.toString();
-            } else if (key === 'raw' && typeof value === "string") {
-                // Ignore Esprima-specific 'raw' property.
-                return undefined;
-            }
-            return value;
-        }
-
-        if (obj.type && (obj.type === 'Program')) {
-            pattern.assert = function (tree) {
-                var actual, expected;
-                actual = JSON.stringify(tree, adjustRegexLiteralAndRaw, 4);
-                expected = JSON.stringify(obj, null, 4);
-
-                if (expected !== actual) {
-                    reportFailure(expected, actual);
-                }
-            };
-        }
-
-        return pattern;
-    };
-
-    return {
-        Reflect: Reflect,
-        Pattern: Pattern
-    };
-}
-
-if (typeof window !== 'undefined') {
-    // Run all tests in a browser environment.
-    runTests = function () {
-        'use strict';
-
-        var total = 0,
-            failures = 0;
-
-        function setText(el, str) {
-            if (typeof el.innerText === 'string') {
-                el.innerText = str;
-            } else {
-                el.textContent = str;
-            }
-        }
-
-        function reportCase(code) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-            total += 1;
-        }
-
-        function reportFailure(expected, actual) {
-            var report, e;
-
-            failures += 1;
-
-            report = document.getElementById('report');
-
-            e = document.createElement('p');
-            setText(e, 'Expected');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'expected');
-            setText(e, expected);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Actual');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'actual');
-            setText(e, actual);
-            report.appendChild(e);
-        }
-
-        setText(document.getElementById('version'), esprima.version);
-
-        window.setTimeout(function () {
-            var tick, context = getContext(esprima, reportCase, reportFailure);
-
-            tick = new Date();
-            testReflect(context.Reflect, context.Pattern);
-            tick = (new Date()) - tick;
-
-            if (failures > 0) {
-                setText(document.getElementById('status'), total + ' tests. ' +
-                    'Failures: ' + failures + '. ' + tick + ' ms');
-            } else {
-                setText(document.getElementById('status'), total + ' tests. ' +
-                    'No failure. ' + tick + ' ms');
-            }
-        }, 513);
-    };
-} else {
-    (function (global) {
-        'use strict';
-        var esprima = require('../esprima'),
-            tick,
-            total = 0,
-            failures = [],
-            header,
-            current,
-            context;
-
-        function reportCase(code) {
-            total += 1;
-            current = code;
-        }
-
-        function reportFailure(expected, actual) {
-            failures.push({
-                source: current,
-                expected: expected.toString(),
-                actual: actual.toString()
-            });
-        }
-
-        context = getContext(esprima, reportCase, reportFailure);
-
-        tick = new Date();
-        require('./reflect').testReflect(context.Reflect, context.Pattern);
-        tick = (new Date()) - tick;
-
-        header = total + ' tests. ' + failures.length + ' failures. ' +
-            tick + ' ms';
-        if (failures.length) {
-            console.error(header);
-            failures.forEach(function (failure) {
-                console.error(failure.source + ': Expected\n    ' +
-                    failure.expected.split('\n').join('\n    ') +
-                    '\nto match\n    ' + failure.actual);
-            });
-        } else {
-            console.log(header);
-        }
-        process.exit(failures.length === 0 ? 0 : 1);
-    }(this));
-}
-/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/reflect.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/reflect.js
deleted file mode 100644 (file)
index dba1ba8..0000000
+++ /dev/null
@@ -1,422 +0,0 @@
-// This is modified from Mozilla Reflect.parse test suite (the file is located
-// at js/src/tests/js1_8_5/extensions/reflect-parse.js in the source tree).
-//
-// Some notable changes:
-//   * Removed unsupported features (destructuring, let, comprehensions...).
-//   * Removed tests for E4X (ECMAScript for XML).
-//   * Removed everything related to builder.
-//   * Enclosed every 'Pattern' construct with a scope.
-//   * Tweaked some expected tree to remove generator field.
-//   * Removed the test for bug 632030 and bug 632024.
-
-/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/licenses/publicdomain/
- */
-
-(function (exports) {
-
-function testReflect(Reflect, Pattern) {
-
-function program(elts) { return Pattern({ type: "Program", body: elts }) }
-function exprStmt(expr) { return Pattern({ type: "ExpressionStatement", expression: expr }) }
-function throwStmt(expr) { return Pattern({ type: "ThrowStatement", argument: expr }) }
-function returnStmt(expr) { return Pattern({ type: "ReturnStatement", argument: expr }) }
-function yieldExpr(expr) { return Pattern({ type: "YieldExpression", argument: expr }) }
-function lit(val) { return Pattern({ type: "Literal", value: val }) }
-var thisExpr = Pattern({ type: "ThisExpression" });
-function funDecl(id, params, body) { return Pattern({ type: "FunctionDeclaration",
-                                             id: id,
-                                             params: params,
-                                             defaults: [],
-                                             body: body,
-                                             rest: null,
-                                             generator: false,
-                                             expression: false
-                                             }) }
-function genFunDecl(id, params, body) { return Pattern({ type: "FunctionDeclaration",
-                                                id: id,
-                                                params: params,
-                                                defaults: [],
-                                                body: body,
-                                                rest: null,
-                                                generator: false,
-                                                expression: false
-                                                }) }
-function declarator(id, init) { return Pattern({ type: "VariableDeclarator", id: id, init: init }) }
-function varDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "var" }) }
-function letDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "let" }) }
-function constDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "const" }) }
-function ident(name) { return Pattern({ type: "Identifier", name: name }) }
-function dotExpr(obj, id) { return Pattern({ type: "MemberExpression", computed: false, object: obj, property: id }) }
-function memExpr(obj, id) { return Pattern({ type: "MemberExpression", computed: true, object: obj, property: id }) }
-function forStmt(init, test, update, body) { return Pattern({ type: "ForStatement", init: init, test: test, update: update, body: body }) }
-function forInStmt(lhs, rhs, body) { return Pattern({ type: "ForInStatement", left: lhs, right: rhs, body: body, each: false }) }
-function forEachInStmt(lhs, rhs, body) { return Pattern({ type: "ForInStatement", left: lhs, right: rhs, body: body, each: true }) }
-function breakStmt(lab) { return Pattern({ type: "BreakStatement", label: lab }) }
-function continueStmt(lab) { return Pattern({ type: "ContinueStatement", label: lab }) }
-function blockStmt(body) { return Pattern({ type: "BlockStatement", body: body }) }
-var emptyStmt = Pattern({ type: "EmptyStatement" });
-function ifStmt(test, cons, alt) { return Pattern({ type: "IfStatement", test: test, alternate: alt, consequent: cons }) }
-function labStmt(lab, stmt) { return Pattern({ type: "LabeledStatement", label: lab, body: stmt }) }
-function withStmt(obj, stmt) { return Pattern({ type: "WithStatement", object: obj, body: stmt }) }
-function whileStmt(test, stmt) { return Pattern({ type: "WhileStatement", test: test, body: stmt }) }
-function doStmt(stmt, test) { return Pattern({ type: "DoWhileStatement", test: test, body: stmt }) }
-function switchStmt(disc, cases) { return Pattern({ type: "SwitchStatement", discriminant: disc, cases: cases }) }
-function caseClause(test, stmts) { return Pattern({ type: "SwitchCase", test: test, consequent: stmts }) }
-function defaultClause(stmts) { return Pattern({ type: "SwitchCase", test: null, consequent: stmts }) }
-function catchClause(id, guard, body) { if (guard) { return Pattern({ type: "GuardedCatchClause", param: id, guard: guard, body: body }) } else { return Pattern({ type: "CatchClause", param: id, body: body }) } }
-function tryStmt(body, guarded, catches, fin) { return Pattern({ type: "TryStatement", block: body, guardedHandlers: guarded, handlers: catches, finalizer: fin }) }
-function letStmt(head, body) { return Pattern({ type: "LetStatement", head: head, body: body }) }
-function funExpr(id, args, body, gen) { return Pattern({ type: "FunctionExpression",
-                                                id: id,
-                                                params: args,
-                                                defaults: [],
-                                                body: body,
-                                                rest: null,
-                                                generator: false,
-                                                expression: false
-                                                }) }
-function genFunExpr(id, args, body) { return Pattern({ type: "FunctionExpression",
-                                              id: id,
-                                              params: args,
-                                              defaults: [],
-                                              body: body,
-                                              rest: null,
-                                              generator: false,
-                                              expression: false
-                                              }) }
-
-function unExpr(op, arg) { return Pattern({ type: "UnaryExpression", operator: op, argument: arg, prefix: true }) }
-function binExpr(op, left, right) { return Pattern({ type: "BinaryExpression", operator: op, left: left, right: right }) }
-function aExpr(op, left, right) { return Pattern({ type: "AssignmentExpression", operator: op, left: left, right: right }) }
-function updExpr(op, arg, prefix) { return Pattern({ type: "UpdateExpression", operator: op, argument: arg, prefix: prefix }) }
-function logExpr(op, left, right) { return Pattern({ type: "LogicalExpression", operator: op, left: left, right: right }) }
-
-function condExpr(test, cons, alt) { return Pattern({ type: "ConditionalExpression", test: test, consequent: cons, alternate: alt }) }
-function seqExpr(exprs) { return Pattern({ type: "SequenceExpression", expressions: exprs }) }
-function newExpr(callee, args) { return Pattern({ type: "NewExpression", callee: callee, arguments: args }) }
-function callExpr(callee, args) { return Pattern({ type: "CallExpression", callee: callee, arguments: args }) }
-function arrExpr(elts) { return Pattern({ type: "ArrayExpression", elements: elts }) }
-function objExpr(elts) { return Pattern({ type: "ObjectExpression", properties: elts }) }
-function objProp(key, value, kind) { return Pattern({ type: "Property", key: key, value: value, kind: kind }) }
-
-function arrPatt(elts) { return Pattern({ type: "ArrayPattern", elements: elts }) }
-function objPatt(elts) { return Pattern({ type: "ObjectPattern", properties: elts }) }
-
-function localSrc(src) { return "(function(){ " + src + " })" }
-function localPatt(patt) { return program([exprStmt(funExpr(null, [], blockStmt([patt])))]) }
-function blockSrc(src) { return "(function(){ { " + src + " } })" }
-function blockPatt(patt) { return program([exprStmt(funExpr(null, [], blockStmt([blockStmt([patt])])))]) }
-
-function assertBlockStmt(src, patt) {
-    blockPatt(patt).assert(Reflect.parse(blockSrc(src)));
-}
-
-function assertBlockExpr(src, patt) {
-    assertBlockStmt(src, exprStmt(patt));
-}
-
-function assertBlockDecl(src, patt, builder) {
-    blockPatt(patt).assert(Reflect.parse(blockSrc(src), {builder: builder}));
-}
-
-function assertLocalStmt(src, patt) {
-    localPatt(patt).assert(Reflect.parse(localSrc(src)));
-}
-
-function assertLocalExpr(src, patt) {
-    assertLocalStmt(src, exprStmt(patt));
-}
-
-function assertLocalDecl(src, patt) {
-    localPatt(patt).assert(Reflect.parse(localSrc(src)));
-}
-
-function assertGlobalStmt(src, patt, builder) {
-    program([patt]).assert(Reflect.parse(src, {builder: builder}));
-}
-
-function assertGlobalExpr(src, patt, builder) {
-    program([exprStmt(patt)]).assert(Reflect.parse(src, {builder: builder}));
-    //assertStmt(src, exprStmt(patt));
-}
-
-function assertGlobalDecl(src, patt) {
-    program([patt]).assert(Reflect.parse(src));
-}
-
-function assertProg(src, patt) {
-    program(patt).assert(Reflect.parse(src));
-}
-
-function assertStmt(src, patt) {
-    assertLocalStmt(src, patt);
-    assertGlobalStmt(src, patt);
-    assertBlockStmt(src, patt);
-}
-
-function assertExpr(src, patt) {
-    assertLocalExpr(src, patt);
-    assertGlobalExpr(src, patt);
-    assertBlockExpr(src, patt);
-}
-
-function assertDecl(src, patt) {
-    assertLocalDecl(src, patt);
-    assertGlobalDecl(src, patt);
-    assertBlockDecl(src, patt);
-}
-
-function assertError(src, errorType) {
-    try {
-        Reflect.parse(src);
-    } catch (e) {
-        return;
-    }
-    throw new Error("expected " + errorType.name + " for " + uneval(src));
-}
-
-
-// general tests
-
-// NB: These are useful but for now jit-test doesn't do I/O reliably.
-
-//program(_).assert(Reflect.parse(snarf('data/flapjax.txt')));
-//program(_).assert(Reflect.parse(snarf('data/jquery-1.4.2.txt')));
-//program(_).assert(Reflect.parse(snarf('data/prototype.js')));
-//program(_).assert(Reflect.parse(snarf('data/dojo.js.uncompressed.js')));
-//program(_).assert(Reflect.parse(snarf('data/mootools-1.2.4-core-nc.js')));
-
-
-// declarations
-
-assertDecl("var x = 1, y = 2, z = 3",
-           varDecl([declarator(ident("x"), lit(1)),
-                    declarator(ident("y"), lit(2)),
-                    declarator(ident("z"), lit(3))]));
-assertDecl("var x, y, z",
-           varDecl([declarator(ident("x"), null),
-                    declarator(ident("y"), null),
-                    declarator(ident("z"), null)]));
-assertDecl("function foo() { }",
-           funDecl(ident("foo"), [], blockStmt([])));
-assertDecl("function foo() { return 42 }",
-           funDecl(ident("foo"), [], blockStmt([returnStmt(lit(42))])));
-
-
-// Bug 591437: rebound args have their defs turned into uses
-assertDecl("function f(a) { function a() { } }",
-           funDecl(ident("f"), [ident("a")], blockStmt([funDecl(ident("a"), [], blockStmt([]))])));
-assertDecl("function f(a,b,c) { function b() { } }",
-           funDecl(ident("f"), [ident("a"),ident("b"),ident("c")], blockStmt([funDecl(ident("b"), [], blockStmt([]))])));
-
-// expressions
-
-assertExpr("true", lit(true));
-assertExpr("false", lit(false));
-assertExpr("42", lit(42));
-assertExpr("(/asdf/)", lit(/asdf/));
-assertExpr("this", thisExpr);
-assertExpr("foo", ident("foo"));
-assertExpr("foo.bar", dotExpr(ident("foo"), ident("bar")));
-assertExpr("foo[bar]", memExpr(ident("foo"), ident("bar")));
-assertExpr("(function(){})", funExpr(null, [], blockStmt([])));
-assertExpr("(function f() {})", funExpr(ident("f"), [], blockStmt([])));
-assertExpr("(function f(x,y,z) {})", funExpr(ident("f"), [ident("x"),ident("y"),ident("z")], blockStmt([])));
-assertExpr("(++x)", updExpr("++", ident("x"), true));
-assertExpr("(x++)", updExpr("++", ident("x"), false));
-assertExpr("(+x)", unExpr("+", ident("x")));
-assertExpr("(-x)", unExpr("-", ident("x")));
-assertExpr("(!x)", unExpr("!", ident("x")));
-assertExpr("(~x)", unExpr("~", ident("x")));
-assertExpr("(delete x)", unExpr("delete", ident("x")));
-assertExpr("(typeof x)", unExpr("typeof", ident("x")));
-assertExpr("(void x)", unExpr("void", ident("x")));
-assertExpr("(x == y)", binExpr("==", ident("x"), ident("y")));
-assertExpr("(x != y)", binExpr("!=", ident("x"), ident("y")));
-assertExpr("(x === y)", binExpr("===", ident("x"), ident("y")));
-assertExpr("(x !== y)", binExpr("!==", ident("x"), ident("y")));
-assertExpr("(x < y)", binExpr("<", ident("x"), ident("y")));
-assertExpr("(x <= y)", binExpr("<=", ident("x"), ident("y")));
-assertExpr("(x > y)", binExpr(">", ident("x"), ident("y")));
-assertExpr("(x >= y)", binExpr(">=", ident("x"), ident("y")));
-assertExpr("(x << y)", binExpr("<<", ident("x"), ident("y")));
-assertExpr("(x >> y)", binExpr(">>", ident("x"), ident("y")));
-assertExpr("(x >>> y)", binExpr(">>>", ident("x"), ident("y")));
-assertExpr("(x + y)", binExpr("+", ident("x"), ident("y")));
-assertExpr("(w + x + y + z)", binExpr("+", binExpr("+", binExpr("+", ident("w"), ident("x")), ident("y")), ident("z")));
-assertExpr("(x - y)", binExpr("-", ident("x"), ident("y")));
-assertExpr("(w - x - y - z)", binExpr("-", binExpr("-", binExpr("-", ident("w"), ident("x")), ident("y")), ident("z")));
-assertExpr("(x * y)", binExpr("*", ident("x"), ident("y")));
-assertExpr("(x / y)", binExpr("/", ident("x"), ident("y")));
-assertExpr("(x % y)", binExpr("%", ident("x"), ident("y")));
-assertExpr("(x | y)", binExpr("|", ident("x"), ident("y")));
-assertExpr("(x ^ y)", binExpr("^", ident("x"), ident("y")));
-assertExpr("(x & y)", binExpr("&", ident("x"), ident("y")));
-assertExpr("(x in y)", binExpr("in", ident("x"), ident("y")));
-assertExpr("(x instanceof y)", binExpr("instanceof", ident("x"), ident("y")));
-assertExpr("(x = y)", aExpr("=", ident("x"), ident("y")));
-assertExpr("(x += y)", aExpr("+=", ident("x"), ident("y")));
-assertExpr("(x -= y)", aExpr("-=", ident("x"), ident("y")));
-assertExpr("(x *= y)", aExpr("*=", ident("x"), ident("y")));
-assertExpr("(x /= y)", aExpr("/=", ident("x"), ident("y")));
-assertExpr("(x %= y)", aExpr("%=", ident("x"), ident("y")));
-assertExpr("(x <<= y)", aExpr("<<=", ident("x"), ident("y")));
-assertExpr("(x >>= y)", aExpr(">>=", ident("x"), ident("y")));
-assertExpr("(x >>>= y)", aExpr(">>>=", ident("x"), ident("y")));
-assertExpr("(x |= y)", aExpr("|=", ident("x"), ident("y")));
-assertExpr("(x ^= y)", aExpr("^=", ident("x"), ident("y")));
-assertExpr("(x &= y)", aExpr("&=", ident("x"), ident("y")));
-assertExpr("(x || y)", logExpr("||", ident("x"), ident("y")));
-assertExpr("(x && y)", logExpr("&&", ident("x"), ident("y")));
-assertExpr("(w || x || y || z)", logExpr("||", logExpr("||", logExpr("||", ident("w"), ident("x")), ident("y")), ident("z")))
-assertExpr("(x ? y : z)", condExpr(ident("x"), ident("y"), ident("z")));
-assertExpr("(x,y)", seqExpr([ident("x"),ident("y")]))
-assertExpr("(x,y,z)", seqExpr([ident("x"),ident("y"),ident("z")]))
-assertExpr("(a,b,c,d,e,f,g)", seqExpr([ident("a"),ident("b"),ident("c"),ident("d"),ident("e"),ident("f"),ident("g")]));
-assertExpr("(new Object)", newExpr(ident("Object"), []));
-assertExpr("(new Object())", newExpr(ident("Object"), []));
-assertExpr("(new Object(42))", newExpr(ident("Object"), [lit(42)]));
-assertExpr("(new Object(1,2,3))", newExpr(ident("Object"), [lit(1),lit(2),lit(3)]));
-assertExpr("(String())", callExpr(ident("String"), []));
-assertExpr("(String(42))", callExpr(ident("String"), [lit(42)]));
-assertExpr("(String(1,2,3))", callExpr(ident("String"), [lit(1),lit(2),lit(3)]));
-assertExpr("[]", arrExpr([]));
-assertExpr("[1]", arrExpr([lit(1)]));
-assertExpr("[1,2]", arrExpr([lit(1),lit(2)]));
-assertExpr("[1,2,3]", arrExpr([lit(1),lit(2),lit(3)]));
-assertExpr("[1,,2,3]", arrExpr([lit(1),,lit(2),lit(3)]));
-assertExpr("[1,,,2,3]", arrExpr([lit(1),,,lit(2),lit(3)]));
-assertExpr("[1,,,2,,3]", arrExpr([lit(1),,,lit(2),,lit(3)]));
-assertExpr("[1,,,2,,,3]", arrExpr([lit(1),,,lit(2),,,lit(3)]));
-assertExpr("[,1,2,3]", arrExpr([,lit(1),lit(2),lit(3)]));
-assertExpr("[,,1,2,3]", arrExpr([,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3]", arrExpr([,,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3,]", arrExpr([,,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3,,]", arrExpr([,,,lit(1),lit(2),lit(3),undefined]));
-assertExpr("[,,,1,2,3,,,]", arrExpr([,,,lit(1),lit(2),lit(3),undefined,undefined]));
-assertExpr("[,,,,,]", arrExpr([undefined,undefined,undefined,undefined,undefined]));
-assertExpr("({})", objExpr([]));
-assertExpr("({x:1})", objExpr([objProp(ident("x"), lit(1), "init")]));
-assertExpr("({x:1, y:2})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                    objProp(ident("y"), lit(2), "init")]));
-assertExpr("({x:1, y:2, z:3})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                         objProp(ident("y"), lit(2), "init"),
-                                         objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({x:1, 'y':2, z:3})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                           objProp(lit("y"), lit(2), "init"),
-                                           objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({'x':1, 'y':2, z:3})", objExpr([objProp(lit("x"), lit(1), "init"),
-                                             objProp(lit("y"), lit(2), "init"),
-                                             objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({'x':1, 'y':2, 3:3})", objExpr([objProp(lit("x"), lit(1), "init"),
-                                             objProp(lit("y"), lit(2), "init"),
-                                             objProp(lit(3), lit(3), "init") ]));
-
-// Bug 571617: eliminate constant-folding
-assertExpr("2 + 3", binExpr("+", lit(2), lit(3)));
-
-// Bug 632026: constant-folding
-assertExpr("typeof(0?0:a)", unExpr("typeof", condExpr(lit(0), lit(0), ident("a"))));
-
-// Bug 632056: constant-folding
-program([exprStmt(ident("f")),
-         ifStmt(lit(1),
-                funDecl(ident("f"), [], blockStmt([])),
-                null)]).assert(Reflect.parse("f; if (1) function f(){}"));
-
-// statements
-
-assertStmt("throw 42", throwStmt(lit(42)));
-assertStmt("for (;;) break", forStmt(null, null, null, breakStmt(null)));
-assertStmt("for (x; y; z) break", forStmt(ident("x"), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (var x; y; z) break", forStmt(varDecl([declarator(ident("x"), null)]), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (var x = 42; y; z) break", forStmt(varDecl([declarator(ident("x"), lit(42))]), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (x; ; z) break", forStmt(ident("x"), null, ident("z"), breakStmt(null)));
-assertStmt("for (var x; ; z) break", forStmt(varDecl([declarator(ident("x"), null)]), null, ident("z"), breakStmt(null)));
-assertStmt("for (var x = 42; ; z) break", forStmt(varDecl([declarator(ident("x"), lit(42))]), null, ident("z"), breakStmt(null)));
-assertStmt("for (x; y; ) break", forStmt(ident("x"), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x; y; ) break", forStmt(varDecl([declarator(ident("x"), null)]), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x = 42; y; ) break", forStmt(varDecl([declarator(ident("x"),lit(42))]), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x in y) break", forInStmt(varDecl([declarator(ident("x"),null)]), ident("y"), breakStmt(null)));
-assertStmt("for (x in y) break", forInStmt(ident("x"), ident("y"), breakStmt(null)));
-assertStmt("{ }", blockStmt([]));
-assertStmt("{ throw 1; throw 2; throw 3; }", blockStmt([ throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]));
-assertStmt(";", emptyStmt);
-assertStmt("if (foo) throw 42;", ifStmt(ident("foo"), throwStmt(lit(42)), null));
-assertStmt("if (foo) throw 42; else true;", ifStmt(ident("foo"), throwStmt(lit(42)), exprStmt(lit(true))));
-assertStmt("if (foo) { throw 1; throw 2; throw 3; }",
-           ifStmt(ident("foo"),
-                  blockStmt([throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]),
-                  null));
-assertStmt("if (foo) { throw 1; throw 2; throw 3; } else true;",
-           ifStmt(ident("foo"),
-                  blockStmt([throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]),
-                  exprStmt(lit(true))));
-assertStmt("foo: for(;;) break foo;", labStmt(ident("foo"), forStmt(null, null, null, breakStmt(ident("foo")))));
-assertStmt("foo: for(;;) continue foo;", labStmt(ident("foo"), forStmt(null, null, null, continueStmt(ident("foo")))));
-assertStmt("with (obj) { }", withStmt(ident("obj"), blockStmt([])));
-assertStmt("with (obj) { obj; }", withStmt(ident("obj"), blockStmt([exprStmt(ident("obj"))])));
-assertStmt("while (foo) { }", whileStmt(ident("foo"), blockStmt([])));
-assertStmt("while (foo) { foo; }", whileStmt(ident("foo"), blockStmt([exprStmt(ident("foo"))])));
-assertStmt("do { } while (foo);", doStmt(blockStmt([]), ident("foo")));
-assertStmt("do { foo; } while (foo)", doStmt(blockStmt([exprStmt(ident("foo"))]), ident("foo")));
-assertStmt("switch (foo) { case 1: 1; break; case 2: 2; break; default: 3; }",
-           switchStmt(ident("foo"),
-                      [ caseClause(lit(1), [ exprStmt(lit(1)), breakStmt(null) ]),
-                        caseClause(lit(2), [ exprStmt(lit(2)), breakStmt(null) ]),
-                        defaultClause([ exprStmt(lit(3)) ]) ]));
-assertStmt("switch (foo) { case 1: 1; break; case 2: 2; break; default: 3; case 42: 42; }",
-           switchStmt(ident("foo"),
-                      [ caseClause(lit(1), [ exprStmt(lit(1)), breakStmt(null) ]),
-                        caseClause(lit(2), [ exprStmt(lit(2)), breakStmt(null) ]),
-                        defaultClause([ exprStmt(lit(3)) ]),
-                        caseClause(lit(42), [ exprStmt(lit(42)) ]) ]));
-assertStmt("try { } catch (e) { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [ catchClause(ident("e"), null, blockStmt([])) ],
-                   null));
-assertStmt("try { } catch (e) { } finally { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [ catchClause(ident("e"), null, blockStmt([])) ],
-                   blockStmt([])));
-assertStmt("try { } finally { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [],
-                   blockStmt([])));
-
-// redeclarations (TOK_NAME nodes with lexdef)
-
-assertStmt("function f() { function g() { } function g() { } }",
-           funDecl(ident("f"), [], blockStmt([funDecl(ident("g"), [], blockStmt([])),
-                                              funDecl(ident("g"), [], blockStmt([]))])));
-
-assertStmt("function f() { function g() { } function g() { return 42 } }",
-           funDecl(ident("f"), [], blockStmt([funDecl(ident("g"), [], blockStmt([])),
-                                              funDecl(ident("g"), [], blockStmt([returnStmt(lit(42))]))])));
-
-assertStmt("function f() { var x = 42; var x = 43; }",
-           funDecl(ident("f"), [], blockStmt([varDecl([declarator(ident("x"),lit(42))]),
-                                              varDecl([declarator(ident("x"),lit(43))])])));
-
-// getters and setters
-
- assertExpr("({ get x() { return 42 } })",
-            objExpr([ objProp(ident("x"),
-                              funExpr(null, [], blockStmt([returnStmt(lit(42))])),
-                              "get" ) ]));
- assertExpr("({ set x(v) { return 42 } })",
-            objExpr([ objProp(ident("x"),
-                              funExpr(null, [ident("v")], blockStmt([returnStmt(lit(42))])),
-                              "set" ) ]));
-
-}
-
-exports.testReflect = testReflect;
-
-}(typeof exports === 'undefined' ? this : exports));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/run.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/run.js
deleted file mode 100644 (file)
index 32ca3fa..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint node:true */
-
-(function () {
-    'use strict';
-
-    var child = require('child_process'),
-        nodejs = '"' + process.execPath + '"',
-        ret = 0,
-        suites,
-        index;
-
-    suites = [
-        'runner',
-        'compat'
-    ];
-
-    function nextTest() {
-        var suite = suites[index];
-
-        if (index < suites.length) {
-            child.exec(nodejs + ' ./test/' + suite + '.js', function (err, stdout, stderr) {
-                if (stdout) {
-                    process.stdout.write(suite + ': ' + stdout);
-                }
-                if (stderr) {
-                    process.stderr.write(suite + ': ' + stderr);
-                }
-                if (err) {
-                    ret = err.code;
-                }
-                index += 1;
-                nextTest();
-            });
-        } else {
-            process.exit(ret);
-        }
-    }
-
-    index = 0;
-    nextTest();
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/runner.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/runner.js
deleted file mode 100644 (file)
index c1a3fc9..0000000
+++ /dev/null
@@ -1,387 +0,0 @@
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2011 Arpad Borsos <arpad.borsos@googlemail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint browser:true node:true */
-/*global esprima:true, testFixture:true */
-
-var runTests;
-
-// Special handling for regular expression literal since we need to
-// convert it to a string literal, otherwise it will be decoded
-// as object "{}" and the regular expression would be lost.
-function adjustRegexLiteral(key, value) {
-    'use strict';
-    if (key === 'value' && value instanceof RegExp) {
-        value = value.toString();
-    }
-    return value;
-}
-
-function NotMatchingError(expected, actual) {
-    'use strict';
-    Error.call(this, 'Expected ');
-    this.expected = expected;
-    this.actual = actual;
-}
-NotMatchingError.prototype = new Error();
-
-function errorToObject(e) {
-    'use strict';
-    var msg = e.toString();
-
-    // Opera 9.64 produces an non-standard string in toString().
-    if (msg.substr(0, 6) !== 'Error:') {
-        if (typeof e.message === 'string') {
-            msg = 'Error: ' + e.message;
-        }
-    }
-
-    return {
-        index: e.index,
-        lineNumber: e.lineNumber,
-        column: e.column,
-        message: msg
-    };
-}
-
-function testParse(esprima, code, syntax) {
-    'use strict';
-    var expected, tree, actual, options, StringObject, i, len, err;
-
-    // alias, so that JSLint does not complain.
-    StringObject = String;
-
-    options = {
-        comment: (typeof syntax.comments !== 'undefined'),
-        range: true,
-        loc: true,
-        tokens: (typeof syntax.tokens !== 'undefined'),
-        raw: true,
-        tolerant: (typeof syntax.errors !== 'undefined')
-    };
-
-    if (typeof syntax.tokens !== 'undefined') {
-        if (syntax.tokens.length > 0) {
-            options.range = (typeof syntax.tokens[0].range !== 'undefined');
-            options.loc = (typeof syntax.tokens[0].loc !== 'undefined');
-        }
-    }
-
-    if (typeof syntax.comments !== 'undefined') {
-        if (syntax.comments.length > 0) {
-            options.range = (typeof syntax.comments[0].range !== 'undefined');
-            options.loc = (typeof syntax.comments[0].loc !== 'undefined');
-        }
-    }
-
-    expected = JSON.stringify(syntax, null, 4);
-    try {
-        tree = esprima.parse(code, options);
-        tree = (options.comment || options.tokens || options.tolerant) ? tree : tree.body[0];
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-
-        actual = JSON.stringify(tree, adjustRegexLiteral, 4);
-
-        // Only to ensure that there is no error when using string object.
-        esprima.parse(new StringObject(code), options);
-
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-
-    function filter(key, value) {
-        if (key === 'value' && value instanceof RegExp) {
-            value = value.toString();
-        }
-        return (key === 'loc' || key === 'range') ? undefined : value;
-    }
-
-    if (options.tolerant) {
-        return;
-    }
-
-
-    // Check again without any location info.
-    options.range = false;
-    options.loc = false;
-    expected = JSON.stringify(syntax, filter, 4);
-    try {
-        tree = esprima.parse(code, options);
-        tree = (options.comment || options.tokens) ? tree : tree.body[0];
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-
-        actual = JSON.stringify(tree, filter, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function testError(esprima, code, exception) {
-    'use strict';
-    var i, options, expected, actual, handleInvalidRegexFlag;
-
-    // Different parsing options should give the same error.
-    options = [
-        {},
-        { comment: true },
-        { raw: true },
-        { raw: true, comment: true }
-    ];
-
-    // If handleInvalidRegexFlag is true, an invalid flag in a regular expression
-    // will throw an exception. In some old version V8, this is not the case
-    // and hence handleInvalidRegexFlag is false.
-    handleInvalidRegexFlag = false;
-    try {
-        'test'.match(new RegExp('[a-z]', 'x'));
-    } catch (e) {
-        handleInvalidRegexFlag = true;
-    }
-
-    expected = JSON.stringify(exception);
-
-    for (i = 0; i < options.length; i += 1) {
-
-        try {
-            esprima.parse(code, options[i]);
-        } catch (e) {
-            actual = JSON.stringify(errorToObject(e));
-        }
-
-        if (expected !== actual) {
-
-            // Compensate for old V8 which does not handle invalid flag.
-            if (exception.message.indexOf('Invalid regular expression') > 0) {
-                if (typeof actual === 'undefined' && !handleInvalidRegexFlag) {
-                    return;
-                }
-            }
-
-            throw new NotMatchingError(expected, actual);
-        }
-
-    }
-}
-
-function testAPI(esprima, code, result) {
-    'use strict';
-    var expected, res, actual;
-
-    expected = JSON.stringify(result.result, null, 4);
-    try {
-        if (typeof result.property !== 'undefined') {
-            res = esprima[result.property];
-        } else {
-            res = esprima[result.call].apply(esprima, result.args);
-        }
-        actual = JSON.stringify(res, adjustRegexLiteral, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function runTest(esprima, code, result) {
-    'use strict';
-    if (result.hasOwnProperty('lineNumber')) {
-        testError(esprima, code, result);
-    } else if (result.hasOwnProperty('result')) {
-        testAPI(esprima, code, result);
-    } else {
-        testParse(esprima, code, result);
-    }
-}
-
-if (typeof window !== 'undefined') {
-    // Run all tests in a browser environment.
-    runTests = function () {
-        'use strict';
-        var total = 0,
-            failures = 0,
-            category,
-            fixture,
-            source,
-            tick,
-            expected,
-            index,
-            len;
-
-        function setText(el, str) {
-            if (typeof el.innerText === 'string') {
-                el.innerText = str;
-            } else {
-                el.textContent = str;
-            }
-        }
-
-        function startCategory(category) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('h4');
-            setText(e, category);
-            report.appendChild(e);
-        }
-
-        function reportSuccess(code) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-        }
-
-        function reportFailure(code, expected, actual) {
-            var report, e;
-
-            report = document.getElementById('report');
-
-            e = document.createElement('p');
-            setText(e, 'Code:');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Expected');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'expected');
-            setText(e, expected);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Actual');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'actual');
-            setText(e, actual);
-            report.appendChild(e);
-        }
-
-        setText(document.getElementById('version'), esprima.version);
-
-        tick = new Date();
-        for (category in testFixture) {
-            if (testFixture.hasOwnProperty(category)) {
-                startCategory(category);
-                fixture = testFixture[category];
-                for (source in fixture) {
-                    if (fixture.hasOwnProperty(source)) {
-                        expected = fixture[source];
-                        total += 1;
-                        try {
-                            runTest(esprima, source, expected);
-                            reportSuccess(source, JSON.stringify(expected, null, 4));
-                        } catch (e) {
-                            failures += 1;
-                            reportFailure(source, e.expected, e.actual);
-                        }
-                    }
-                }
-            }
-        }
-        tick = (new Date()) - tick;
-
-        if (failures > 0) {
-            setText(document.getElementById('status'), total + ' tests. ' +
-                'Failures: ' + failures + '. ' + tick + ' ms');
-        } else {
-            setText(document.getElementById('status'), total + ' tests. ' +
-                'No failure. ' + tick + ' ms');
-        }
-    };
-} else {
-    (function () {
-        'use strict';
-
-        var esprima = require('../esprima'),
-            vm = require('vm'),
-            fs = require('fs'),
-            total = 0,
-            failures = [],
-            tick = new Date(),
-            expected,
-            header;
-
-        vm.runInThisContext(fs.readFileSync(__dirname + '/test.js', 'utf-8'));
-
-        Object.keys(testFixture).forEach(function (category) {
-            Object.keys(testFixture[category]).forEach(function (source) {
-                total += 1;
-                expected = testFixture[category][source];
-                try {
-                    runTest(esprima, source, expected);
-                } catch (e) {
-                    e.source = source;
-                    failures.push(e);
-                }
-            });
-        });
-        tick = (new Date()) - tick;
-
-        header = total + ' tests. ' + failures.length + ' failures. ' +
-            tick + ' ms';
-        if (failures.length) {
-            console.error(header);
-            failures.forEach(function (failure) {
-                console.error(failure.source + ': Expected\n    ' +
-                    failure.expected.split('\n').join('\n    ') +
-                    '\nto match\n    ' + failure.actual);
-            });
-        } else {
-            console.log(header);
-        }
-        process.exit(failures.length === 0 ? 0 : 1);
-    }());
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/node_modules/esprima/test/test.js
deleted file mode 100644 (file)
index 8ceee54..0000000
+++ /dev/null
@@ -1,20238 +0,0 @@
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2011 Arpad Borsos <arpad.borsos@googlemail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-var testFixture = {
-
-    'Primary Expression': {
-
-        'this\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'ThisExpression',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 0 }
-                }
-            }],
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'this',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        'null\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: null,
-                    raw: 'null',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 0 }
-                }
-            }],
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            tokens: [{
-                type: 'Null',
-                value: 'null',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        '\n    42\n\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [5, 9],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 4, column: 0 }
-                }
-            }],
-            range: [5, 9],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 4, column: 0 }
-            },
-            tokens: [{
-                type: 'Numeric',
-                value: '42',
-                range: [5, 7],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }]
-        },
-
-        '(1 + 2 ) * 3': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [1, 2],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 2 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [1, 6],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        }
-
-    },
-
-    'Grouping Operator': {
-
-        '(1) + (2  ) + 3': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [1, 2],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 2 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [7, 8],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    range: [0, 11],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [14, 15],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '4 + 5 << (6)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 4,
-                        raw: '4',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 5,
-                        raw: '5',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 6,
-                    raw: '6',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        }
-
-    },
-
-    'Array Initializer': {
-
-        'x = []': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'ArrayExpression',
-                        elements: [],
-                        range: [4, 6],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            },
-            tokens: [{
-                type: 'Identifier',
-                value: 'x',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [2, 3],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '[',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: ']',
-                range: [5, 6],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 6 }
-                }
-            }]
-        },
-
-        'x = [ ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x = [ 42 ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [6, 8],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 8 }
-                        }
-                    }],
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'x = [ 42, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [6, 8],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 8 }
-                        }
-                    }],
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x = [ ,, 42 ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [
-                        null,
-                        null,
-                        {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [9, 11],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 11 }
-                            }
-                        }],
-                    range: [4, 13],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'x = [ 1, 2, 3, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = [ 1, 2,, 3, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }, null, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '日本語 = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '日本語',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'T\u203F = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u203F',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'T\u200C = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u200C',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'T\u200D = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u200D',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\u2163\u2161 = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '\u2163\u2161',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\u2163\u2161\u200A=\u2009[]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '\u2163\u2161',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Object Initializer': {
-
-        'x = {}': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [],
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x = { }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [],
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x = { answer: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'answer',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [14, 16],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 16],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 16 }
-                        }
-                    }],
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'x = { if: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [6, 8],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 12],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 12 }
-                        }
-                    }],
-                    range: [4, 14],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x = { true: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [12, 14],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = { false: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [6, 11],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 11 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [13, 15],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 15],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 15 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'x = { null: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [12, 14],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = { "answer": 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'answer',
-                            raw: '"answer"',
-                            range: [6, 14],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [16, 18],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 18],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }],
-                    range: [4, 20],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'x = { x: 1, x: 2 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [
-                        {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [6, 7],
-                                loc: {
-                                    start: { line: 1, column: 6 },
-                                    end: { line: 1, column: 7 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [9, 10],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 10 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [12, 13],
-                                loc: {
-                                    start: { line: 1, column: 12 },
-                                    end: { line: 1, column: 13 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 2,
-                                raw: '2',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [12, 16],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 16 }
-                            }
-                        }
-                    ],
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'x = { get width() { return m_width } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ReturnStatement',
-                                    argument: {
-                                        type: 'Identifier',
-                                        name: 'm_width',
-                                        range: [27, 34],
-                                        loc: {
-                                            start: { line: 1, column: 27 },
-                                            end: { line: 1, column: 34 }
-                                        }
-                                    },
-                                    range: [20, 35],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 35 }
-                                    }
-                                }],
-                                range: [18, 36],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 36],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 36],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 36 }
-                        }
-                    }],
-                    range: [4, 38],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            },
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'x = { get undef() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'undef',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [18, 20],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 20 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 20],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 20],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'x = { get if() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [15, 17],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [15, 17],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 17],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 17 }
-                        }
-                    }],
-                    range: [4, 19],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 19],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'x = { get true() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [17, 19],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [17, 19],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 19],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }],
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'x = { get false() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [18, 20],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 20 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 20],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 20],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'x = { get null() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [17, 19],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [17, 19],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 19],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }],
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'x = { get "undef"() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'undef',
-                            raw: '"undef"',
-                            range: [10, 17],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [20, 22],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 22 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [20, 22],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 22 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 22],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 22 }
-                        }
-                    }],
-                    range: [4, 24],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [0, 24],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'x = { get 10() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 10,
-                            raw: '10',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [15, 17],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [15, 17],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        kind: 'get',
-                        range: [6, 17],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 17 }
-                        }
-                    }],
-                    range: [4, 19],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 19],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'x = { set width(w) { m_width = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_width',
-                                            range: [21, 28],
-                                            loc: {
-                                                start: { line: 1, column: 21 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [21, 32],
-                                        loc: {
-                                            start: { line: 1, column: 21 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [21, 33],
-                                    loc: {
-                                        start: { line: 1, column: 21 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [19, 34],
-                                loc: {
-                                    start: { line: 1, column: 19 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [19, 34],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set if(w) { m_if = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [13, 14],
-                                loc: {
-                                    start: { line: 1, column: 13 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_if',
-                                            range: [18, 22],
-                                            loc: {
-                                                start: { line: 1, column: 18 },
-                                                end: { line: 1, column: 22 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [25, 26],
-                                            loc: {
-                                                start: { line: 1, column: 25 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        range: [18, 26],
-                                        loc: {
-                                            start: { line: 1, column: 18 },
-                                            end: { line: 1, column: 26 }
-                                        }
-                                    },
-                                    range: [18, 27],
-                                    loc: {
-                                        start: { line: 1, column: 18 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                }],
-                                range: [16, 28],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [16, 28],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 28 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 28],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 28 }
-                        }
-                    }],
-                    range: [4, 30],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [0, 30],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'x = { set true(w) { m_true = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_true',
-                                            range: [20, 26],
-                                            loc: {
-                                                start: { line: 1, column: 20 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [29, 30],
-                                            loc: {
-                                                start: { line: 1, column: 29 },
-                                                end: { line: 1, column: 30 }
-                                            }
-                                        },
-                                        range: [20, 30],
-                                        loc: {
-                                            start: { line: 1, column: 20 },
-                                            end: { line: 1, column: 30 }
-                                        }
-                                    },
-                                    range: [20, 31],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                range: [18, 32],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 32 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 32],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 32 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 32],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 32 }
-                        }
-                    }],
-                    range: [4, 34],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [0, 34],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'x = { set false(w) { m_false = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_false',
-                                            range: [21, 28],
-                                            loc: {
-                                                start: { line: 1, column: 21 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [21, 32],
-                                        loc: {
-                                            start: { line: 1, column: 21 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [21, 33],
-                                    loc: {
-                                        start: { line: 1, column: 21 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [19, 34],
-                                loc: {
-                                    start: { line: 1, column: 19 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [19, 34],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set null(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [20, 26],
-                                            loc: {
-                                                start: { line: 1, column: 20 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [29, 30],
-                                            loc: {
-                                                start: { line: 1, column: 29 },
-                                                end: { line: 1, column: 30 }
-                                            }
-                                        },
-                                        range: [20, 30],
-                                        loc: {
-                                            start: { line: 1, column: 20 },
-                                            end: { line: 1, column: 30 }
-                                        }
-                                    },
-                                    range: [20, 31],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                range: [18, 32],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 32 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 32],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 32 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 32],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 32 }
-                        }
-                    }],
-                    range: [4, 34],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [0, 34],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'x = { set "null"(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'null',
-                            raw: '"null"',
-                            range: [10, 16],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [17, 18],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 18 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [22, 28],
-                                            loc: {
-                                                start: { line: 1, column: 22 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [22, 32],
-                                        loc: {
-                                            start: { line: 1, column: 22 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [22, 33],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [20, 34],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [20, 34],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set 10(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 10,
-                            raw: '10',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [13, 14],
-                                loc: {
-                                    start: { line: 1, column: 13 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [18, 24],
-                                            loc: {
-                                                start: { line: 1, column: 18 },
-                                                end: { line: 1, column: 24 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [27, 28],
-                                            loc: {
-                                                start: { line: 1, column: 27 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        range: [18, 28],
-                                        loc: {
-                                            start: { line: 1, column: 18 },
-                                            end: { line: 1, column: 28 }
-                                        }
-                                    },
-                                    range: [18, 29],
-                                    loc: {
-                                        start: { line: 1, column: 18 },
-                                        end: { line: 1, column: 29 }
-                                    }
-                                }],
-                                range: [16, 30],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 30 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [16, 30],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 30 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [6, 30],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 30 }
-                        }
-                    }],
-                    range: [4, 32],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                range: [0, 32],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 32 }
-                }
-            },
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 32 }
-            }
-        },
-
-        'x = { get: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'get',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [11, 13],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 13 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 13],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        'x = { set: 43 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'set',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 43,
-                            raw: '43',
-                            range: [11, 13],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 13 }
-                            }
-                        },
-                        kind: 'init',
-                        range: [6, 13],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        }
-
-    },
-
-    'Comments': {
-
-        '/* block comment */ 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [20, 22],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [20, 22],
-            loc: {
-                start: { line: 1, column: 20 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '42 /*The*/ /*Answer*/': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'The',
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            }, {
-                type: 'Block',
-                value: 'Answer',
-                range: [11, 21],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 21 }
-                }
-            }]
-        },
-
-        '42 /*the*/ /*answer*/': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2]
-                },
-                range: [0, 21]
-            }],
-            range: [0, 21],
-            comments: [{
-                type: 'Block',
-                value: 'the',
-                range: [3, 10]
-            }, {
-                type: 'Block',
-                value: 'answer',
-                range: [11, 21]
-            }]
-        },
-
-        '/* multiline\ncomment\nshould\nbe\nignored */ 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [42, 44],
-                loc: {
-                    start: { line: 5, column: 11 },
-                    end: { line: 5, column: 13 }
-                }
-            },
-            range: [42, 44],
-            loc: {
-                start: { line: 5, column: 11 },
-                end: { line: 5, column: 13 }
-            }
-        },
-
-        '/*a\r\nb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [9, 11],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [9, 11],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [9, 11],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\r\nb',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\rb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [8, 10],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [8, 10],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\rb',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\nb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [8, 10],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [8, 10],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\nb',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\nc*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\nc',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '// line comment\n42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [16, 18],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            },
-            range: [16, 18],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            }
-        },
-
-        '42 // line comment': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' line comment',
-                range: [3, 18],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 18 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [17, 19],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 2 }
-                    }
-                },
-                range: [17, 19],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            }],
-            range: [17, 19],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n': {
-            type: 'Program',
-            body: [],
-            range: [17, 17],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '// Hallo, world!\n': {
-            type: 'Program',
-            body: [],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hallo, world!',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '//\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [3, 5],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 2 }
-                    }
-                },
-                range: [3, 5],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            }],
-            range: [3, 5],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: '',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            }]
-        },
-
-        '//': {
-            type: 'Program',
-            body: [],
-            range: [2, 2],
-            loc: {
-                start: { line: 1, column: 2 },
-                end: { line: 1, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: '',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            }]
-        },
-
-        '// ': {
-            type: 'Program',
-            body: [],
-            range: [3, 3],
-            comments: [{
-                type: 'Line',
-                value: ' ',
-                range: [0, 3]
-            }]
-        },
-
-        '/**/42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [4, 6],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [4, 6],
-            loc: {
-                start: { line: 1, column: 4 },
-                end: { line: 1, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: '',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n\n//   Another hello\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [37, 39],
-                    loc: {
-                        start: { line: 4, column: 0 },
-                        end: { line: 4, column: 2 }
-                    }
-                },
-                range: [37, 39],
-                loc: {
-                    start: { line: 4, column: 0 },
-                    end: { line: 4, column: 2 }
-                }
-            }],
-            range: [37, 39],
-            loc: {
-                start: { line: 4, column: 0 },
-                end: { line: 4, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }, {
-                type: 'Line',
-                value: '   Another hello',
-                range: [18, 36],
-                loc: {
-                    start: { line: 3, column: 0 },
-                    end: { line: 3, column: 18 }
-                }
-            }]
-        },
-
-        'if (x) { // Some comment\ndoThat(); }': {
-            type: 'Program',
-            body: [{
-                type: 'IfStatement',
-                test: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                consequent: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'doThat',
-                                range: [25, 31],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 6 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [25, 33],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 8 }
-                            }
-                        },
-                        range: [25, 34],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 9 }
-                        }
-                    }],
-                    range: [7, 36],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 2, column: 11 }
-                    }
-                },
-                alternate: null,
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 11 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 11 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Some comment',
-                range: [9, 24],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 24 }
-                }
-            }]
-        },
-
-        'switch (answer) { case 42: /* perfect */ bingo() }': {
-            type: 'Program',
-            body: [{
-                type: 'SwitchStatement',
-                discriminant: {
-                    type: 'Identifier',
-                    name: 'answer',
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                cases: [{
-                    type: 'SwitchCase',
-                    test: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [23, 25],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    consequent: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'bingo',
-                                range: [41, 46],
-                                loc: {
-                                    start: { line: 1, column: 41 },
-                                    end: { line: 1, column: 46 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [41, 48],
-                            loc: {
-                                start: { line: 1, column: 41 },
-                                end: { line: 1, column: 48 }
-                            }
-                        },
-                        range: [41, 49],
-                        loc: {
-                            start: { line: 1, column: 41 },
-                            end: { line: 1, column: 49 }
-                        }
-                    }],
-                    range: [18, 49],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 49 }
-                    }
-                }],
-                range: [0, 50],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 50 }
-                }
-            }],
-            range: [0, 50],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 50 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' perfect ',
-                range: [27, 40],
-                loc: {
-                    start: { line: 1, column: 27 },
-                    end: { line: 1, column: 40 }
-                }
-            }]
-        }
-
-    },
-
-    'Numeric Literals': {
-
-        '0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            },
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        },
-
-        '42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '3': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [0, 1]
-                },
-                range: [0, 1]
-            }],
-            range: [0, 1],
-            tokens: [{
-                type: 'Numeric',
-                value: '3',
-                range: [0, 1]
-            }]
-        },
-
-        '5': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 5,
-                    raw: '5',
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            },
-            tokens: [{
-                type: 'Numeric',
-                value: '5',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }]
-        },
-
-        '.14': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0.14,
-                raw: '.14',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '3.14159': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 3.14159,
-                raw: '3.14159',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '6.02214179e+23': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 6.02214179e+23,
-                raw: '6.02214179e+23',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '1.492417830e-10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 1.49241783e-10,
-                raw: '1.492417830e-10',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '0x0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0x0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0e+100': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0e+100',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '0xabc': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0xabc,
-                raw: '0xabc',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0xdef': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0xdef,
-                raw: '0xdef',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0X1A': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x1A,
-                raw: '0X1A',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0x10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x10,
-                raw: '0x10',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0x100': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x100,
-                raw: '0x100',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0X04': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0X04,
-                raw: '0X04',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '02': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 2,
-                raw: '02',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '012': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 10,
-                raw: '012',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0012': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 10,
-                raw: '0012',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        }
-
-    },
-
-    'String Literals': {
-
-        '"Hello"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello',
-                raw: '"Hello"',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '"\\n\\r\\t\\v\\b\\f\\\\\\\'\\"\\0"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: '\n\r\t\x0B\b\f\\\'"\x00',
-                raw: '"\\n\\r\\t\\v\\b\\f\\\\\\\'\\"\\0"',
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '"\\u0061"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'a',
-                raw: '"\\u0061"',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        '"\\x61"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'a',
-                raw: '"\\x61"',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '"\\u00"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'u00',
-                raw: '"\\u00"',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '"\\xt"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'xt',
-                raw: '"\\xt"',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '"Hello\\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\nworld',
-                raw: '"Hello\\nworld"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '"Hello\\\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Helloworld',
-                raw: '"Hello\\\nworld"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 14 }
-            }
-        },
-
-        '"Hello\\02World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0002World',
-                raw: '"Hello\\02World"',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '"Hello\\012World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u000AWorld',
-                raw: '"Hello\\012World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\122World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\122World',
-                raw: '"Hello\\122World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\0122World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u000A2World',
-                raw: '"Hello\\0122World"',
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '"Hello\\312World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u00CAWorld',
-                raw: '"Hello\\312World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\412World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\412World',
-                raw: '"Hello\\412World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\812World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello812World',
-                raw: '"Hello\\812World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\712World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\712World',
-                raw: '"Hello\\712World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\0World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0000World',
-                raw: '"Hello\\0World"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '"Hello\\\r\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Helloworld',
-                raw: '"Hello\\\r\nworld"',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 15 }
-            }
-        },
-
-        '"Hello\\1World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0001World',
-                raw: '"Hello\\1World"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        }
-    },
-
-    'Regular Expression Literals': {
-
-        'var x = /[a-z]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[a-z]/i',
-                        raw: '/[a-z]/i',
-                        range: [8, 16],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-z]/i',
-                range: [8, 16],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[x-z]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5]
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[x-z]/i',
-                        raw: '/[x-z]/i',
-                        range: [8, 16]
-                    },
-                    range: [4, 16]
-                }],
-                kind: 'var',
-                range: [0, 16]
-            }],
-            range: [0, 16],
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3]
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5]
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7]
-            }, {
-                type: 'RegularExpression',
-                value: '/[x-z]/i',
-                range: [8, 16]
-            }]
-        },
-
-        'var x = /[a-c]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[a-c]/i',
-                        raw: '/[a-c]/i',
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-c]/i',
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[P QR]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[P QR]/i',
-                        raw: '/[P QR]/i',
-                        range: [8, 17],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            }],
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[P QR]/i',
-                range: [8, 17],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 17 }
-                }
-            }]
-        },
-
-        'var x = /[\\]/]/': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: new RegExp('[\\]/]').toString(),
-                        raw: '/[\\]/]/',
-                        range: [8, 15],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            }],
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[\\]/]/',
-                range: [8, 15],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 15 }
-                }
-            }]
-        },
-
-        'var x = /foo\\/bar/': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/foo\\/bar/',
-                        raw: '/foo\\/bar/',
-                        range: [8, 18],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/foo\\/bar/',
-                range: [8, 18],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 18 }
-                }
-            }]
-        },
-
-        'var x = /=([^=\\s])+/g': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/=([^=\\s])+/g',
-                        raw: '/=([^=\\s])+/g',
-                        range: [8, 21],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/=([^=\\s])+/g',
-                range: [8, 21],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 21 }
-                }
-            }]
-        },
-
-        'var x = /[P QR]/\\u0067': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[P QR]/g',
-                        raw: '/[P QR]/\\u0067',
-                        range: [8, 22],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            }],
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[P QR]/\\u0067',
-                range: [8, 22],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 22 }
-                }
-            }]
-        },
-
-        'var x = /[P QR]/\\g': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[P QR]/g',
-                        raw: '/[P QR]/\\g',
-                        range: [8, 18],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[P QR]/\\g',
-                range: [8, 18],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 18 }
-                }
-            }]
-        }
-
-    },
-
-    'Left-Hand-Side Expression': {
-
-        'new Button': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'Button',
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'new Button()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'Button',
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'new new foo': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'NewExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'new new foo()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'NewExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [4, 13],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'new foo().bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'NewExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [4, 7],
-                            loc: {
-                                start: { line: 1, column: 4 },
-                                end: { line: 1, column: 7 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [0, 9],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [10, 13],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [0, 13],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        'new foo[bar]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: true,
-                    object: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [4, 7],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [4, 12],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'new foo.bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [4, 7],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        '( new foo).bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'NewExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [2, 9],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [11, 14],
-                        loc: {
-                            start: { line: 1, column: 11 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [0, 14],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'foo(bar, baz)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                'arguments': [{
-                    type: 'Identifier',
-                    name: 'bar',
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'baz',
-                    range: [9, 12],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 12 }
-                    }
-                }],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        '(    foo  )()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [5, 8],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'universe.milkyway': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'milkyway',
-                    range: [9, 17],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'universe.milkyway.solarsystem': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'milkyway',
-                        range: [9, 17],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    range: [0, 17],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'solarsystem',
-                    range: [18, 29],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [0, 29],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 29 }
-                }
-            },
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'universe.milkyway.solarsystem.Earth': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'Identifier',
-                            name: 'universe',
-                            range: [0, 8],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'milkyway',
-                            range: [9, 17],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        range: [0, 17],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'solarsystem',
-                        range: [18, 29],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [0, 29],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'Earth',
-                    range: [30, 35],
-                    loc: {
-                        start: { line: 1, column: 30 },
-                        end: { line: 1, column: 35 }
-                    }
-                },
-                range: [0, 35],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 35 }
-                }
-            },
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            }
-        },
-
-        'universe[galaxyName, otherUselessName]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'SequenceExpression',
-                    expressions: [{
-                        type: 'Identifier',
-                        name: 'galaxyName',
-                        range: [9, 19],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'otherUselessName',
-                        range: [21, 37],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [9, 37],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            },
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'universe[galaxyName]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxyName',
-                    range: [9, 19],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'universe[42].galaxies': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: true,
-                    object: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    property: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [9, 11],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxies',
-                    range: [13, 21],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'universe(42).galaxies': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [9, 11],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 11 }
-                        }
-                    }],
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxies',
-                    range: [13, 21],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'universe(42).galaxies(14, 3, 77).milkyway': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'universe',
-                                range: [0, 8],
-                                loc: {
-                                    start: { line: 1, column: 0 },
-                                    end: { line: 1, column: 8 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [9, 11],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 11 }
-                                }
-                            }],
-                            range: [0, 12],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'galaxies',
-                            range: [13, 21],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 21 }
-                            }
-                        },
-                        range: [0, 21],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [22, 24],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [26, 27],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 27 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 77,
-                        raw: '77',
-                        range: [29, 31],
-                        loc: {
-                            start: { line: 1, column: 29 },
-                            end: { line: 1, column: 31 }
-                        }
-                    }],
-                    range: [0, 32],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'milkyway',
-                    range: [33, 41],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 41 }
-                    }
-                },
-                range: [0, 41],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 41 }
-                }
-            },
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            }
-        },
-
-        'earth.asia.Indonesia.prepareForElection(2014)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'MemberExpression',
-                            computed: false,
-                            object: {
-                                type: 'Identifier',
-                                name: 'earth',
-                                range: [0, 5],
-                                loc: {
-                                    start: { line: 1, column: 0 },
-                                    end: { line: 1, column: 5 }
-                                }
-                            },
-                            property: {
-                                type: 'Identifier',
-                                name: 'asia',
-                                range: [6, 10],
-                                loc: {
-                                    start: { line: 1, column: 6 },
-                                    end: { line: 1, column: 10 }
-                                }
-                            },
-                            range: [0, 10],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'Indonesia',
-                            range: [11, 20],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        range: [0, 20],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'prepareForElection',
-                        range: [21, 39],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    range: [0, 39],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                'arguments': [{
-                    type: 'Literal',
-                    value: 2014,
-                    raw: '2014',
-                    range: [40, 44],
-                    loc: {
-                        start: { line: 1, column: 40 },
-                        end: { line: 1, column: 44 }
-                    }
-                }],
-                range: [0, 45],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 45 }
-                }
-            },
-            range: [0, 45],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 45 }
-            }
-        },
-
-        'universe.if': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'if',
-                    range: [9, 11],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'universe.true': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'true',
-                    range: [9, 13],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'universe.false': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'false',
-                    range: [9, 14],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'universe.null': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'null',
-                    range: [9, 13],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        }
-
-    },
-
-    'Postfix Expressions': {
-
-        'x++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                prefix: false,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'x--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                prefix: false,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'eval++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                prefix: false,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'eval--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                prefix: false,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'arguments++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                prefix: false,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'arguments--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                prefix: false,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        }
-
-    },
-
-    'Unary Operators': {
-
-        '++x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                prefix: true,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '--x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                prefix: true,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '++eval': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [2, 6],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '--eval': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [2, 6],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '++arguments': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [2, 11],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                prefix: true,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        '--arguments': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [2, 11],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                prefix: true,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        '+x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '+',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '-x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '-',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '~x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '~',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '!x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '!',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        'void x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'void',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'delete x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'delete',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                prefix: true,
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'typeof x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'typeof',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                prefix: true,
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        }
-
-    },
-
-    'Multiplicative Operators': {
-
-        'x * y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x / y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '/',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x % y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '%',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        }
-
-    },
-
-    'Additive Operators': {
-
-        'x + y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x - y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        }
-
-    },
-
-    'Bitwise Shift Operator': {
-
-        'x << y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >> y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >>> y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>>>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Relational Operators': {
-
-        'x < y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x > y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x <= y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >= y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x in y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: 'in',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x instanceof y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: 'instanceof',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [13, 14],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x < y < z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '<',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Equality Operators': {
-
-        'x == y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '==',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x != y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '!=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x === y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '===',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x !== y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '!==',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Binary Bitwise Operators': {
-
-        'x & y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '&',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x ^ y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '^',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x | y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        }
-
-    },
-
-    'Binary Expressions': {
-
-        'x + y + z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y + z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '-',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y - z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y - z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '-',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y / z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '/',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y % z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '%',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y / z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '/',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y % z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '%',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x % y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '%',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x << y << z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '<<',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x | y | z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '|',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x & y & z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '&',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x ^ y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '^',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x & y | z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x | y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x | y & z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Binary Logical Operators': {
-
-        'x || y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x && y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '&&',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x || y || z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'LogicalExpression',
-                    operator: '||',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x && y && z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '&&',
-                left: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x || y && z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [10, 11],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [5, 11],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x || y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    range: [5, 10],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        }
-
-    },
-
-    'Conditional Operator': {
-
-        'y ? 1 : 2': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ConditionalExpression',
-                test: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                consequent: {
-                    type: 'Literal',
-                    value: 1,
-                    raw: '1',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                alternate: {
-                    type: 'Literal',
-                    value: 2,
-                    raw: '2',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x && y ? 1 : 2': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ConditionalExpression',
-                test: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                consequent: {
-                    type: 'Literal',
-                    value: 1,
-                    raw: '1',
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                alternate: {
-                    type: 'Literal',
-                    value: 2,
-                    raw: '2',
-                    range: [13, 14],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        }
-
-    },
-
-    'Assignment Operators': {
-
-        'x = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'eval = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'arguments = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [12, 14],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x *= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '*=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x /= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '/=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x %= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '%=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x += 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '+=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x -= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '-=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x <<= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '<<=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'x >>= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '>>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'x >>>= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '>>>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x &= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '&=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x ^= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '^=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x |= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '|=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Block': {
-
-        '{ foo }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [2, 5],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [2, 6],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '{ doThis(); doThat(); }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doThis',
-                        range: [2, 8],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [2, 10],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [2, 11],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 11 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doThat',
-                        range: [12, 18],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [12, 20],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [12, 21],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '{}': {
-            type: 'BlockStatement',
-            body: [],
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        }
-
-    },
-
-    'Variable Statement': {
-
-        'var x': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'var x, y;': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                init: null,
-                range: [7, 8],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 8 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'var x = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [4, 10],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 10 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'var eval = 42, arguments = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [4, 8],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [15, 24],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [27, 29],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [15, 29],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'var x = 14, y = 3, z = 1977': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 14,
-                    raw: '14',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [4, 10],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 10 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [12, 13],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [16, 17],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [12, 17],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 17 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 1977,
-                    raw: '1977',
-                    range: [23, 27],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [19, 27],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 27 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'var implements, interface, package': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'implements',
-                    range: [4, 14],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                init: null,
-                range: [4, 14],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 14 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'interface',
-                    range: [16, 25],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                init: null,
-                range: [16, 25],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 25 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'package',
-                    range: [27, 34],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                init: null,
-                range: [27, 34],
-                loc: {
-                    start: { line: 1, column: 27 },
-                    end: { line: 1, column: 34 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'var private, protected, public, static': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'private',
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                init: null,
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'protected',
-                    range: [13, 22],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                init: null,
-                range: [13, 22],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'public',
-                    range: [24, 30],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                init: null,
-                range: [24, 30],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 30 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'static',
-                    range: [32, 38],
-                    loc: {
-                        start: { line: 1, column: 32 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                init: null,
-                range: [32, 38],
-                loc: {
-                    start: { line: 1, column: 32 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        }
-
-    },
-
-    'Let Statement': {
-
-        'let x': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'let',
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '{ let x }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: null,
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 8],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 8 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        '{ let x = 42 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 13],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 13 }
-                }
-            }],
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '{ let x = 14, y = 3, z = 1977 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 19 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1977,
-                        raw: '1977',
-                        range: [25, 29],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [21, 29],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 29 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 30],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 30 }
-                }
-            }],
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        }
-
-    },
-
-    'Const Statement': {
-
-        'const x = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [10, 12],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [6, 12],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 12 }
-                }
-            }],
-            kind: 'const',
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        '{ const x = 42 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [12, 14],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                }],
-                kind: 'const',
-                range: [2, 15],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 15 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '{ const x = 14, y = 3, z = 1977 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [12, 14],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [16, 17],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [20, 21],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    range: [16, 21],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 21 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [23, 24],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1977,
-                        raw: '1977',
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [23, 31],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                kind: 'const',
-                range: [2, 32],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 32 }
-                }
-            }],
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        }
-
-    },
-
-    'Empty Statement': {
-
-        ';': {
-            type: 'EmptyStatement',
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        }
-
-    },
-
-    'Expression Statement': {
-
-        'x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'x',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            },
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        },
-
-        'x, y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'SequenceExpression',
-                expressions: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [3, 4],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 4 }
-                    }
-                }],
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '\\u0061': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'a',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'a\\u0061': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'aa',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\\ua': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'ua',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'a\\u': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'au',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        }
-
-    },
-
-    'If Statement': {
-
-        'if (morning) goodMorning()': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodMorning',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            alternate: null,
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'if (morning) (function(){})': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [24, 26],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 26 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [14, 26],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: null,
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'if (morning) var x = 0;': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [17, 18],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    range: [17, 22],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 22 }
-                    }
-                }],
-                kind: 'var',
-                range: [13, 23],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            alternate: null,
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        'if (morning) function a(){}': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [22, 23],
-                    loc: {
-                        start: { line: 1, column: 22 },
-                        end: { line: 1, column: 23 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [25, 27],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: null,
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'if (morning) goodMorning(); else goodDay()': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodMorning',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodDay',
-                        range: [33, 40],
-                        loc: {
-                            start: { line: 1, column: 33 },
-                            end: { line: 1, column: 40 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [33, 42],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 42 }
-                    }
-                },
-                range: [33, 42],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 42 }
-                }
-            },
-            range: [0, 42],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 42 }
-            }
-        }
-
-    },
-
-    'Iteration Statements': {
-
-        'do keep(); while (true)': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'keep',
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [18, 22],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        'do keep(); while (true);': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'keep',
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [18, 22],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'do { x++; y--; } while (x < 10)': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '++',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'x',
-                            range: [5, 6],
-                            loc: {
-                                start: { line: 1, column: 5 },
-                                end: { line: 1, column: 6 }
-                            }
-                        },
-                        prefix: false,
-                        range: [5, 8],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    range: [5, 9],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 9 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '--',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [10, 11],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 11 }
-                            }
-                        },
-                        prefix: false,
-                        range: [10, 13],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [10, 14],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 14 }
-                    }
-                }],
-                range: [3, 16],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [24, 25],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [28, 30],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [24, 30],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        '{ do { } while (false) false }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'DoWhileStatement',
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [5, 8],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                test: {
-                    type: 'Literal',
-                    value: false,
-                    raw: 'false',
-                    range: [16, 21],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [2, 22],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: false,
-                    raw: 'false',
-                    range: [23, 28],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [23, 29],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'while (true) doSomething()': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doSomething',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'while (x < 10) { x++; y--; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [7, 13],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '++',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'x',
-                            range: [17, 18],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        prefix: false,
-                        range: [17, 20],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [17, 21],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 21 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '--',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [22, 23],
-                            loc: {
-                                start: { line: 1, column: 22 },
-                                end: { line: 1, column: 23 }
-                            }
-                        },
-                        prefix: false,
-                        range: [22, 25],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    range: [22, 26],
-                    loc: {
-                        start: { line: 1, column: 22 },
-                        end: { line: 1, column: 26 }
-                    }
-                }],
-                range: [15, 28],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 28 }
-                }
-            },
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        },
-
-        'for(;;);': {
-            type: 'ForStatement',
-            init: null,
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [7, 8],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'for(;;){}': {
-            type: 'ForStatement',
-            init: null,
-            test: null,
-            update: null,
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [7, 9],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'for(x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [12, 13],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'for(var x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }],
-                kind: 'var',
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'for(let x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }],
-                kind: 'let',
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'for(var x = 0, y = 1;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [15, 16],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [19, 20],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }],
-                kind: 'var',
-                range: [4, 20],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'for(x = 0; x < 42;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [19, 20],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'for(x = 0; x < 42; x++);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                prefix: false,
-                range: [19, 22],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'for(x = 0; x < 42; x++) process(x);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                prefix: false,
-                range: [19, 22],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [24, 31],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [32, 33],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 33 }
-                        }
-                    }],
-                    range: [24, 34],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [24, 35],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 35 }
-                }
-            },
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            }
-        },
-
-        'for(x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'Identifier',
-                name: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [15, 22],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [23, 24],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }],
-                    range: [15, 25],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [15, 26],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            each: false,
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'for (var x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: null,
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 10],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [14, 18],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [28, 29],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }],
-                    range: [20, 30],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [20, 31],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            each: false,
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        'for (var x = 42 in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [13, 15],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    range: [9, 15],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 15],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [19, 23],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [25, 32],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [33, 34],
-                        loc: {
-                            start: { line: 1, column: 33 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [25, 35],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 35 }
-                    }
-                },
-                range: [25, 36],
-                loc: {
-                    start: { line: 1, column: 25 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            each: false,
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'for (let x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: null,
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                }],
-                kind: 'let',
-                range: [5, 10],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [14, 18],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [28, 29],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }],
-                    range: [20, 30],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [20, 31],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            each: false,
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        'for (let x = 42 in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [13, 15],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    range: [9, 15],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                kind: 'let',
-                range: [5, 15],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [19, 23],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [25, 32],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [33, 34],
-                        loc: {
-                            start: { line: 1, column: 33 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [25, 35],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 35 }
-                    }
-                },
-                range: [25, 36],
-                loc: {
-                    start: { line: 1, column: 25 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            each: false,
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'for (var i = function() { return 10 in [] } in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'i',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ReturnStatement',
-                                argument: {
-                                    type: 'BinaryExpression',
-                                    operator: 'in',
-                                    left: {
-                                        type: 'Literal',
-                                        value: 10,
-                                        raw: '10',
-                                        range: [33, 35],
-                                        loc: {
-                                            start: { line: 1, column: 33 },
-                                            end: { line: 1, column: 35 }
-                                        }
-                                    },
-                                    right: {
-                                        type: 'ArrayExpression',
-                                        elements: [],
-                                        range: [39, 41],
-                                        loc: {
-                                            start: { line: 1, column: 39 },
-                                            end: { line: 1, column: 41 }
-                                        }
-                                    },
-                                    range: [33, 41],
-                                    loc: {
-                                        start: { line: 1, column: 33 },
-                                        end: { line: 1, column: 41 }
-                                    }
-                                },
-                                range: [26, 42],
-                                loc: {
-                                    start: { line: 1, column: 26 },
-                                    end: { line: 1, column: 42 }
-                                }
-                            }],
-                            range: [24, 43],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 43 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [13, 43],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 43 }
-                        }
-                    },
-                    range: [9, 43],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 43 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 43],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 43 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [47, 51],
-                loc: {
-                    start: { line: 1, column: 47 },
-                    end: { line: 1, column: 51 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [53, 60],
-                        loc: {
-                            start: { line: 1, column: 53 },
-                            end: { line: 1, column: 60 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [61, 62],
-                        loc: {
-                            start: { line: 1, column: 61 },
-                            end: { line: 1, column: 62 }
-                        }
-                    }],
-                    range: [53, 63],
-                    loc: {
-                        start: { line: 1, column: 53 },
-                        end: { line: 1, column: 63 }
-                    }
-                },
-                range: [53, 64],
-                loc: {
-                    start: { line: 1, column: 53 },
-                    end: { line: 1, column: 64 }
-                }
-            },
-            each: false,
-            range: [0, 64],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 64 }
-            }
-        }
-
-    },
-
-    'continue statement': {
-
-        'while (true) { continue; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'ContinueStatement',
-                        label: null,
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }
-                ],
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'while (true) { continue }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'ContinueStatement',
-                        label: null,
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }
-                ],
-                range: [13, 25],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 25 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        'done: while (true) { continue done }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ContinueStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [30, 34],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            range: [21, 35],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }
-                    ],
-                    range: [19, 36],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [6, 36],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'done: while (true) { continue done; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ContinueStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [30, 34],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            range: [21, 35],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }
-                    ],
-                    range: [19, 37],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [6, 37],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 37 }
-                }
-            },
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            }
-        }
-
-    },
-
-    'break statement': {
-
-        'while (true) { break }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'BreakStatement',
-                        label: null,
-                        range: [15, 21],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 21 }
-                        }
-                    }
-                ],
-                range: [13, 22],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'done: while (true) { break done }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'BreakStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [27, 31],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 31 }
-                                }
-                            },
-                            range: [21, 32],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 32 }
-                            }
-                        }
-                    ],
-                    range: [19, 33],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [6, 33],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 33 }
-                }
-            },
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        },
-
-        'done: while (true) { break done; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'BreakStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [27, 31],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 31 }
-                                }
-                            },
-                            range: [21, 32],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 32 }
-                            }
-                        }
-                    ],
-                    range: [19, 34],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [6, 34],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        }
-
-    },
-
-    'return statement': {
-
-        '(function(){ return })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 20],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 20 }
-                            }
-                        }
-                    ],
-                    range: [11, 21],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 21],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '(function(){ return; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 20],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 20 }
-                            }
-                        }
-                    ],
-                    range: [11, 22],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 22],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '(function(){ return x; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 21 }
-                                }
-                            },
-                            range: [13, 22],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 22 }
-                            }
-                        }
-                    ],
-                    range: [11, 24],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        '(function(){ return x * y })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: {
-                                type: 'BinaryExpression',
-                                operator: '*',
-                                left: {
-                                    type: 'Identifier',
-                                    name: 'x',
-                                    range: [20, 21],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 21 }
-                                    }
-                                },
-                                right: {
-                                    type: 'Identifier',
-                                    name: 'y',
-                                    range: [24, 25],
-                                    loc: {
-                                        start: { line: 1, column: 24 },
-                                        end: { line: 1, column: 25 }
-                                    }
-                                },
-                                range: [20, 25],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            range: [13, 26],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 26 }
-                            }
-                        }
-                    ],
-                    range: [11, 27],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 27],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        }
-    },
-
-    'with statement': {
-
-        'with (x) foo = bar': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [9, 12],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [15, 18],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [9, 18],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [9, 18],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'with (x) foo = bar;': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [9, 12],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [15, 18],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [9, 18],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [9, 19],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'with (x) { foo = bar }': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'AssignmentExpression',
-                        operator: '=',
-                        left: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [11, 14],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        right: {
-                            type: 'Identifier',
-                            name: 'bar',
-                            range: [17, 20],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        range: [11, 20],
-                        loc: {
-                            start: { line: 1, column: 11 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [11, 21],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 21 }
-                    }
-                }],
-                range: [9, 22],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        }
-
-    },
-
-    'switch statement': {
-
-        'switch (x) {}': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'x',
-                range: [8, 9],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            cases:[],
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'switch (answer) { case 42: hi(); break; }': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'answer',
-                range: [8, 14],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            cases: [{
-                type: 'SwitchCase',
-                test: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [23, 25],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                consequent: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'hi',
-                            range: [27, 29],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 29 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [27, 32],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 32 }
-                    }
-                }, {
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [33, 39],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 39 }
-                    }
-                }],
-                range: [18, 39],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            }
-        },
-
-        'switch (answer) { case 42: hi(); break; default: break }': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'answer',
-                range: [8, 14],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            cases: [{
-                type: 'SwitchCase',
-                test: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [23, 25],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                consequent: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'hi',
-                            range: [27, 29],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 29 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [27, 32],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 32 }
-                    }
-                }, {
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [33, 39],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 39 }
-                    }
-                }],
-                range: [18, 39],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 39 }
-                }
-            }, {
-                type: 'SwitchCase',
-                test: null,
-                consequent: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [49, 55],
-                    loc: {
-                        start: { line: 1, column: 49 },
-                        end: { line: 1, column: 55 }
-                    }
-                }],
-                range: [40, 55],
-                loc: {
-                    start: { line: 1, column: 40 },
-                    end: { line: 1, column: 55 }
-                }
-            }],
-            range: [0, 56],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 56 }
-            }
-        }
-
-    },
-
-    'Labelled Statements': {
-
-        'start: for (;;) break start': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'start',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            body: {
-                type: 'ForStatement',
-                init: null,
-                test: null,
-                update: null,
-                body: {
-                    type: 'BreakStatement',
-                    label: {
-                        type: 'Identifier',
-                        name: 'start',
-                        range: [22, 27],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [16, 27],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [7, 27],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'start: while (true) break start': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'start',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [14, 18],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                body: {
-                    type: 'BreakStatement',
-                    label: {
-                        type: 'Identifier',
-                        name: 'start',
-                        range: [26, 31],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [20, 31],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 31 }
-                    }
-                },
-                range: [7, 31],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        }
-
-    },
-
-    'throw statement': {
-
-        'throw x;': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'throw x * y': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [6, 11],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'throw { message: "Error" }': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'ObjectExpression',
-                properties: [{
-                    type: 'Property',
-                    key: {
-                        type: 'Identifier',
-                        name: 'message',
-                        range: [8, 15],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    value: {
-                        type: 'Literal',
-                        value: 'Error',
-                        raw: '"Error"',
-                        range: [17, 24],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    kind: 'init',
-                    range: [8, 24],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 24 }
-                    }
-                }],
-                range: [6, 26],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        }
-
-    },
-
-    'try statement': {
-
-        'try { } catch (e) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 21],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [8, 21],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'try { } catch (eval) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [15, 19],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [21, 24],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [8, 24],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 24 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'try { } catch (arguments) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [15, 24],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [26, 29],
-                    loc: {
-                        start: { line: 1, column: 26 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [8, 29],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'try { } catch (e) { say(e) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [20, 23],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 23 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            }],
-                            range: [20, 26],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 26 }
-                            }
-                        },
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    }],
-                    range: [18, 28],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [8, 28],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        },
-
-        'try { } finally { cleanup(stuff) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [],
-            finalizer: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'cleanup',
-                            range: [18, 25],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 25 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Identifier',
-                            name: 'stuff',
-                            range: [26, 31],
-                            loc: {
-                                start: { line: 1, column: 26 },
-                                end: { line: 1, column: 31 }
-                            }
-                        }],
-                        range: [18, 32],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    range: [18, 33],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 33 }
-                    }
-                }],
-                range: [16, 34],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'try { doThat(); } catch (e) { say(e) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'doThat',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [6, 15],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                range: [4, 17],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [25, 26],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [30, 33],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [34, 35],
-                                loc: {
-                                    start: { line: 1, column: 34 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            }],
-                            range: [30, 36],
-                            loc: {
-                                start: { line: 1, column: 30 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        range: [30, 37],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [28, 38],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [18, 38],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'try { doThat(); } catch (e) { say(e) } finally { cleanup(stuff) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'doThat',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [6, 15],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                range: [4, 17],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [25, 26],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [30, 33],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [34, 35],
-                                loc: {
-                                    start: { line: 1, column: 34 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            }],
-                            range: [30, 36],
-                            loc: {
-                                start: { line: 1, column: 30 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        range: [30, 37],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [28, 38],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [18, 38],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            finalizer: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'cleanup',
-                            range: [49, 56],
-                            loc: {
-                                start: { line: 1, column: 49 },
-                                end: { line: 1, column: 56 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Identifier',
-                            name: 'stuff',
-                            range: [57, 62],
-                            loc: {
-                                start: { line: 1, column: 57 },
-                                end: { line: 1, column: 62 }
-                            }
-                        }],
-                        range: [49, 63],
-                        loc: {
-                            start: { line: 1, column: 49 },
-                            end: { line: 1, column: 63 }
-                        }
-                    },
-                    range: [49, 64],
-                    loc: {
-                        start: { line: 1, column: 49 },
-                        end: { line: 1, column: 64 }
-                    }
-                }],
-                range: [47, 65],
-                loc: {
-                    start: { line: 1, column: 47 },
-                    end: { line: 1, column: 65 }
-                }
-            },
-            range: [0, 65],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 65 }
-            }
-        }
-
-    },
-
-    'debugger statement': {
-
-        'debugger;': {
-            type: 'DebuggerStatement',
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Function Definition': {
-
-        'function hello() { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [19, 24],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 24 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [19, 26],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 26 }
-                        }
-                    },
-                    range: [19, 27],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 27 }
-                    }
-                }],
-                range: [17, 29],
-                loc: {
-                    start: { line: 1, column: 17 },
-                    end: { line: 1, column: 29 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'function eval() { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'eval',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [16, 19],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'function arguments() { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'arguments',
-                range: [9, 18],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [21, 24],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'function test(t, t) { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'test',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 't',
-                range: [14, 15],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 15 }
-                }
-            }, {
-                type: 'Identifier',
-                name: 't',
-                range: [17, 18],
-                loc: {
-                    start: { line: 1, column: 17 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [20, 23],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '(function test(t, t) { })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: {
-                    type: 'Identifier',
-                    name: 'test',
-                    range: [10, 14],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 't',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 't',
-                    range: [18, 19],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 19 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [21, 24],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        'function eval() { function inner() { "use strict" } }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'eval',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'FunctionDeclaration',
-                    id: {
-                        type: 'Identifier',
-                        name: 'inner',
-                        range: [27, 32],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Literal',
-                                value: 'use strict',
-                                raw: '\"use strict\"',
-                                range: [37, 49],
-                                loc: {
-                                    start: { line: 1, column: 37 },
-                                    end: { line: 1, column: 49 }
-                                }
-                            },
-                            range: [37, 50],
-                            loc: {
-                                start: { line: 1, column: 37 },
-                                end: { line: 1, column: 50 }
-                            }
-                        }],
-                        range: [35, 51],
-                        loc: {
-                            start: { line: 1, column: 35 },
-                            end: { line: 1, column: 51 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [18, 51],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 51 }
-                    }
-                }],
-                range: [16, 53],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 53 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 53],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 53 }
-            }
-        },
-
-        'function hello(a) { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 'a',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [20, 25],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 25 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [20, 28],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 28 }
-                    }
-                }],
-                range: [18, 30],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'function hello(a, b) { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 'a',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            }, {
-                type: 'Identifier',
-                name: 'b',
-                range: [18, 19],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 19 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [23, 28],
-                            loc: {
-                                start: { line: 1, column: 23 },
-                                end: { line: 1, column: 28 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [23, 30],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 30 }
-                        }
-                    },
-                    range: [23, 31],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                range: [21, 33],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 33 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        },
-
-        'var hi = function() { sayHi() };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'CallExpression',
-                                callee: {
-                                    type: 'Identifier',
-                                    name: 'sayHi',
-                                    range: [22, 27],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                'arguments': [],
-                                range: [22, 29],
-                                loc: {
-                                    start: { line: 1, column: 22 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            range: [22, 30],
-                            loc: {
-                                start: { line: 1, column: 22 },
-                                end: { line: 1, column: 30 }
-                            }
-                        }],
-                        range: [20, 31],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 31],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 31 }
-                    }
-                },
-                range: [4, 31],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 31 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 32 }
-            }
-        },
-
-        'var hi = function eval() { };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [18, 22],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [25, 28],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 28 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 28],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [4, 28],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'var hi = function arguments() { };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [18, 27],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [30, 33],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 33],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [4, 33],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 33 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'var hello = function hi() { sayHi() };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hello',
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'hi',
-                        range: [21, 23],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'CallExpression',
-                                callee: {
-                                    type: 'Identifier',
-                                    name: 'sayHi',
-                                    range: [28, 33],
-                                    loc: {
-                                        start: { line: 1, column: 28 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                },
-                                'arguments': [],
-                                range: [28, 35],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            },
-                            range: [28, 36],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 36 }
-                            }
-                        }],
-                        range: [26, 37],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 37 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [12, 37],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [4, 37],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 37 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        '(function(){})': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 13],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        }
-
-    },
-
-    'Automatic semicolon insertion': {
-
-        '{ x\n++y }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [2, 4],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 0 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 2, column: 2 },
-                            end: { line: 2, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                },
-                range: [4, 8],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 4 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '{ x\n--y }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [2, 4],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 0 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 2, column: 2 },
-                            end: { line: 2, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                },
-                range: [4, 8],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 4 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        'var x /* comment */;': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        '{ var x = 14, y = 3\nz; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 19 }
-                    }
-                }],
-                kind: 'var',
-                range: [2, 20],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 0 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [20, 21],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 1 }
-                    }
-                },
-                range: [20, 22],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            }],
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 4 }
-            }
-        },
-
-        'while (true) { continue\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [24, 29],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [24, 30],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 32],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { continue // Comment\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [35, 40],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [35, 41],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 43],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { continue /* Multiline\nComment */there; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [47, 52],
-                        loc: {
-                            start: { line: 2, column: 10 },
-                            end: { line: 2, column: 15 }
-                        }
-                    },
-                    range: [47, 53],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 16 }
-                    }
-                }],
-                range: [13, 55],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 18 }
-                }
-            },
-            range: [0, 55],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        },
-
-        'while (true) { break\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [21, 26],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [21, 27],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 29],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { break // Comment\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [32, 37],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [32, 38],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 40],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { break /* Multiline\nComment */there; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [44, 49],
-                        loc: {
-                            start: { line: 2, column: 10 },
-                            end: { line: 2, column: 15 }
-                        }
-                    },
-                    range: [44, 50],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 16 }
-                    }
-                }],
-                range: [13, 52],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 18 }
-                }
-            },
-            range: [0, 52],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        },
-
-        '(function(){ return\nx; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 1 }
-                                }
-                            },
-                            range: [20, 22],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 2 }
-                            }
-                        }
-                    ],
-                    range: [11, 24],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 4 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 4 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '(function(){ return // Comment\nx; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [31, 32],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 1 }
-                                }
-                            },
-                            range: [31, 33],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 2 }
-                            }
-                        }
-                    ],
-                    range: [11, 35],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 4 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 35],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 4 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '(function(){ return/* Multiline\nComment */x; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [42, 43],
-                                loc: {
-                                    start: { line: 2, column: 10 },
-                                    end: { line: 2, column: 11 }
-                                }
-                            },
-                            range: [42, 44],
-                            loc: {
-                                start: { line: 2, column: 10 },
-                                end: { line: 2, column: 12 }
-                            }
-                        }
-                    ],
-                    range: [11, 46],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 14 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 46],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 14 }
-                }
-            },
-            range: [0, 47],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 15 }
-            }
-        },
-
-        '{ throw error\nerror; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 14],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 0 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 5 }
-                    }
-                },
-                range: [14, 20],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        '{ throw error// Comment\nerror; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 24],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 0 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [24, 29],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 5 }
-                    }
-                },
-                range: [24, 30],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        '{ throw error/* Multiline\nComment */error; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 36],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 2, column: 10 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [36, 41],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 15 }
-                    }
-                },
-                range: [36, 42],
-                loc: {
-                    start: { line: 2, column: 10 },
-                    end: { line: 2, column: 16 }
-                }
-            }],
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        }
-
-    },
-
-    'Source elements': {
-
-        '': {
-            type: 'Program',
-            body: [],
-            range: [0, 0],
-            loc: {
-                start: { line: 0, column: 0 },
-                end: { line: 0, column: 0 }
-            },
-            tokens: []
-        }
-    },
-
-    'Invalid syntax': {
-
-        '{': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '}': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token }'
-        },
-
-        '3ea': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3in []': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e+': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e-': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3x': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3x0': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0x': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '09': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '018': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '01a': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3in[]': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0x3in[]': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"Hello\nWorld"': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\u005c': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\u002a': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var x = /(s/g': {
-            index: 13,
-            lineNumber: 1,
-            column: 14,
-            message: 'Error: Line 1: Invalid regular expression'
-        },
-
-        '/': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        '/test': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'var x = /[a-z]/\\ux': {
-            index: 18,
-            lineNumber: 1,
-            column: 19,
-            message: 'Error: Line 1: Invalid regular expression'
-        },
-
-        '3 = 4': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        'func() = 4': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '(1 + 1) = 10': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '1++': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '1--': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '++1': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '--1': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        'for((1 + 1) in list) process(x);': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        '[': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '[,': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + {': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + { t:t ': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + { t:t,': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'var x = /\n/': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'var x = "\n': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var if = 42': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'i + 2 = 42': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '+i = 42': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '1 + (': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '\n\n\n{': {
-            index: 4,
-            lineNumber: 4,
-            column: 2,
-            message: 'Error: Line 4: Unexpected end of input'
-        },
-
-        '\n/* Some multiline\ncomment */\n)': {
-            index: 30,
-            lineNumber: 4,
-            column: 1,
-            message: 'Error: Line 4: Unexpected token )'
-        },
-
-        '{ set 1 }': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        '{ get 2 }': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        '({ set: s(if) { } })': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        '({ set s(.) { } })': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token .'
-        },
-
-        '({ set s() { } })': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        '({ set: s() { } })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ set: s(a, b) { } })': {
-            index: 16,
-            lineNumber: 1,
-            column: 17,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ get: g(d) { } })': {
-            index: 13,
-            lineNumber: 1,
-            column: 14,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ get i() { }, i: 42 })': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ i: 42, get i() { } })': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ set i(x) { }, i: 42 })': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ i: 42, set i(x) { } })': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ get i() { }, get i() { } })': {
-            index: 27,
-            lineNumber: 1,
-            column: 28,
-            message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-        },
-
-        '({ set i(x) { }, set i(x) { } })': {
-            index: 29,
-            lineNumber: 1,
-            column: 30,
-            message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-        },
-
-        'function t(if) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'function t(true) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token true'
-        },
-
-        'function t(false) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token false'
-        },
-
-        'function t(null) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token null'
-        },
-
-        'function null() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token null'
-        },
-
-        'function true() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token true'
-        },
-
-        'function false() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token false'
-        },
-
-        'function if() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'a b;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected identifier'
-        },
-
-        'if.a;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token .'
-        },
-
-        'a if;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'a class;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected reserved word'
-        },
-
-        'break\n': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'break 1;': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'continue\n': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'continue 2;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'throw': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'throw;': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'throw\n': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal newline after throw'
-        },
-
-        'for (var i, i2 in {});': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Unexpected token in'
-        },
-
-        'for ((i in {}));': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        'for (i + 1 in {});': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        'for (+i in {});': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        'if(false)': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'if(false) doThis(); else': {
-            index: 24,
-            lineNumber: 1,
-            column: 25,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'do': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'while(false)': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'for(;;)': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'with(x)': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'try { }': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Missing catch or finally after try'
-        },
-
-        'try {} catch (42) {} ': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'try {} catch (answer()) {} ': {
-            index: 20,
-            lineNumber: 1,
-            column: 21,
-            message: 'Error: Line 1: Unexpected token ('
-        },
-
-        'try {} catch (-x) {} ': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token -'
-        },
-
-
-        '\u203F = 10': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'const x = 12, y;': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'const x, y = 12;': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ,'
-        },
-
-        'const x;': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'if(true) let a = 1;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token let'
-        },
-
-        'if(true) const a = 1;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token const'
-        },
-
-        'switch (c) { default: default: }': {
-            index: 30,
-            lineNumber: 1,
-            column: 31,
-            message: 'Error: Line 1: More than one default clause in switch statement'
-        },
-
-        'new X()."s"': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Unexpected string'
-        },
-
-        '/*': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*\n\n\n': {
-            index: 5,
-            lineNumber: 4,
-            column: 1,
-            message: 'Error: Line 4: Unexpected token ILLEGAL'
-        },
-
-        '/**': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*\n\n*': {
-            index: 5,
-            lineNumber: 3,
-            column: 2,
-            message: 'Error: Line 3: Unexpected token ILLEGAL'
-        },
-
-        '/*hello': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*hello  *': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\n]': {
-            index: 1,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\r]': {
-            index: 1,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\r\n]': {
-            index: 2,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\n\r]': {
-            index: 2,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '//\r\n]': {
-            index: 4,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '//\n\r]': {
-            index: 4,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/a\\\n/': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-        
-        '//\r \n]': {
-            index: 5,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/*\r\n*/]': {
-            index: 6,
-            lineNumber: 2,
-            column: 3,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '/*\n\r*/]': {
-            index: 6,
-            lineNumber: 3,
-            column: 3,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/*\r \n*/]': {
-            index: 7,
-            lineNumber: 3,
-            column: 3,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '\\\\': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\\u005c': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-
-        '\\x': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\\u0000': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\u200C = []': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\u200D = []': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\u': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'try { } catch() {}': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        'return': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Illegal return statement'
-        },
-
-        'break': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'continue': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'switch (x) { default: continue; }': {
-            index: 31,
-            lineNumber: 1,
-            column: 32,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'do { x } *': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token *'
-        },
-
-        'while (true) { break x; }': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'while (true) { continue x; }': {
-            index: 25,
-            lineNumber: 1,
-            column: 26,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { break x; }); }': {
-            index: 40,
-            lineNumber: 1,
-            column: 41,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { continue x; }); }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { break; }); }': {
-            index: 39,
-            lineNumber: 1,
-            column: 40,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'x: while (true) { (function () { continue; }); }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'x: while (true) { x: while (true) { } }': {
-            index: 20,
-            lineNumber: 1,
-            column: 21,
-            message: 'Error: Line 1: Label \'x\' has already been declared'
-        },
-
-        '(function () { \'use strict\'; delete i; }())': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Delete of an unqualified identifier in strict mode.'
-        },
-
-        '(function () { \'use strict\'; with (i); }())': {
-            index: 28,
-            lineNumber: 1,
-            column: 29,
-            message: 'Error: Line 1: Strict mode code may not include a with statement'
-        },
-
-        'function hello() {\'use strict\'; ({ i: 42, i: 42 }) }': {
-            index: 47,
-            lineNumber: 1,
-            column: 48,
-            message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ hasOwnProperty: 42, hasOwnProperty: 42 }) }': {
-            index: 73,
-            lineNumber: 1,
-            column: 74,
-            message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; var eval = 10; }': {
-            index: 40,
-            lineNumber: 1,
-            column: 41,
-            message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; var arguments = 10; }': {
-            index: 45,
-            lineNumber: 1,
-            column: 46,
-            message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; try { } catch (eval) { } }': {
-            index: 51,
-            lineNumber: 1,
-            column: 52,
-            message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; try { } catch (arguments) { } }': {
-            index: 56,
-            lineNumber: 1,
-            column: 57,
-            message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval = 10; }': {
-            index: 32,
-            lineNumber: 1,
-            column: 33,
-            message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments = 10; }': {
-            index: 32,
-            lineNumber: 1,
-            column: 33,
-            message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ++eval; }': {
-            index: 38,
-            lineNumber: 1,
-            column: 39,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; --eval; }': {
-            index: 38,
-            lineNumber: 1,
-            column: 39,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ++arguments; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; --arguments; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval++; }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval--; }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments++; }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments--; }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; function eval() { } }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; function arguments() { } }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function eval() {\'use strict\'; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function arguments() {\'use strict\'; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; (function eval() { }()) }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; (function arguments() { }()) }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function eval() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function arguments() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ s: function eval() { } }); }': {
-            index: 47,
-            lineNumber: 1,
-            column: 48,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function package() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ i: 10, set s(eval) { } }); }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ set s(eval) { } }); }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ s: function s(eval) { } }); }': {
-            index: 49,
-            lineNumber: 1,
-            column: 50,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello(eval) {\'use strict\';}': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello(arguments) {\'use strict\';}': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() { \'use strict\'; function inner(eval) {} }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() { \'use strict\'; function inner(arguments) {} }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        ' "\\1"; \'use strict\';': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; "\\1"; }': {
-            index: 33,
-            lineNumber: 1,
-            column: 34,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; 021; }': {
-            index: 33,
-            lineNumber: 1,
-            column: 34,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; ({ "\\1": 42 }); }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; ({ 021: 42 }); }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "octal directive\\1"; "use strict"; }': {
-            index: 19,
-            lineNumber: 1,
-            column: 20,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "octal directive\\1"; "octal directive\\2"; "use strict"; }': {
-            index: 19,
-            lineNumber: 1,
-            column: 20,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "use strict"; function inner() { "octal directive\\1"; } }': {
-            index: 52,
-            lineNumber: 1,
-            column: 53,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "use strict"; var implements; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var interface; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var package; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var private; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var protected; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var public; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var static; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var yield; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var let; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello(static) { "use strict"; }': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function static() { "use strict"; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'var yield': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token yield'
-        },
-
-        'var let': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token let'
-        },
-
-        '"use strict"; function static() { }': {
-            index: 23,
-            lineNumber: 1,
-            column: 24,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function a(t, t) { "use strict"; }': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        'function a(eval) { "use strict"; }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function a(package) { "use strict"; }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function a() { "use strict"; function b(t, t) { }; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '(function a(t, t) { "use strict"; })': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        'function a() { "use strict"; (function b(t, t) { }); }': {
-            index: 44,
-            lineNumber: 1,
-            column: 45,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '(function a(eval) { "use strict"; })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        '(function a(package) { "use strict"; })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'var': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'let': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'const': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        }
-
-    },
-
-    'API': {
-        'parse()': {
-            call: 'parse',
-            args: [],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'undefined'
-                    }
-                }]
-            }
-        },
-
-        'parse(null)': {
-            call: 'parse',
-            args: [null],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: null
-                    }
-                }]
-            }
-        },
-
-        'parse(42)': {
-            call: 'parse',
-            args: [42],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 42
-                    }
-                }]
-            }
-        },
-
-        'parse(true)': {
-            call: 'parse',
-            args: [true],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: true
-                    }
-                }]
-            }
-        },
-
-        'parse(undefined)': {
-            call: 'parse',
-            args: [void 0],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'undefined'
-                    }
-                }]
-            }
-        },
-
-        'parse(new String("test"))': {
-            call: 'parse',
-            args: [new String('test')],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'test'
-                    }
-                }]
-            }
-        },
-
-        'parse(new Number(42))': {
-            call: 'parse',
-            args: [new Number(42)],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 42
-                    }
-                }]
-            }
-        },
-
-        'parse(new Boolean(true))': {
-            call: 'parse',
-            args: [new Boolean(true)],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: true
-                    }
-                }]
-            }
-        },
-
-        'Syntax': {
-            property: 'Syntax',
-            result: {
-                AssignmentExpression: 'AssignmentExpression',
-                ArrayExpression: 'ArrayExpression',
-                BlockStatement: 'BlockStatement',
-                BinaryExpression: 'BinaryExpression',
-                BreakStatement: 'BreakStatement',
-                CallExpression: 'CallExpression',
-                CatchClause: 'CatchClause',
-                ConditionalExpression: 'ConditionalExpression',
-                ContinueStatement: 'ContinueStatement',
-                DoWhileStatement: 'DoWhileStatement',
-                DebuggerStatement: 'DebuggerStatement',
-                EmptyStatement: 'EmptyStatement',
-                ExpressionStatement: 'ExpressionStatement',
-                ForStatement: 'ForStatement',
-                ForInStatement: 'ForInStatement',
-                FunctionDeclaration: 'FunctionDeclaration',
-                FunctionExpression: 'FunctionExpression',
-                Identifier: 'Identifier',
-                IfStatement: 'IfStatement',
-                Literal: 'Literal',
-                LabeledStatement: 'LabeledStatement',
-                LogicalExpression: 'LogicalExpression',
-                MemberExpression: 'MemberExpression',
-                NewExpression: 'NewExpression',
-                ObjectExpression: 'ObjectExpression',
-                Program: 'Program',
-                Property: 'Property',
-                ReturnStatement: 'ReturnStatement',
-                SequenceExpression: 'SequenceExpression',
-                SwitchStatement: 'SwitchStatement',
-                SwitchCase: 'SwitchCase',
-                ThisExpression: 'ThisExpression',
-                ThrowStatement: 'ThrowStatement',
-                TryStatement: 'TryStatement',
-                UnaryExpression: 'UnaryExpression',
-                UpdateExpression: 'UpdateExpression',
-                VariableDeclaration: 'VariableDeclaration',
-                VariableDeclarator: 'VariableDeclarator',
-                WhileStatement: 'WhileStatement',
-                WithStatement: 'WithStatement'
-            }
-        }
-
-    },
-
-    'Tolerant parse': {
-        'return': {
-            type: 'Program',
-            body: [{
-                type: 'ReturnStatement',
-                'argument': null,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            },
-            errors: [{
-                index: 6,
-                lineNumber: 1,
-                column: 7,
-                message: 'Error: Line 1: Illegal return statement'
-            }]
-        },
-
-        '(function () { \'use strict\'; with (i); }())': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 'use strict',
-                                    raw: '\'use strict\'',
-                                    range: [15, 27],
-                                    loc: {
-                                        start: { line: 1, column: 15 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                range: [15, 28],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            }, {
-                                type: 'WithStatement',
-                                object: {
-                                    type: 'Identifier',
-                                    name: 'i',
-                                    range: [35, 36],
-                                    loc: {
-                                        start: { line: 1, column: 35 },
-                                        end: { line: 1, column: 36 }
-                                    }
-                                },
-                                body: {
-                                    type: 'EmptyStatement',
-                                    range: [37, 38],
-                                    loc: {
-                                        start: { line: 1, column: 37 },
-                                        end: { line: 1, column: 38 }
-                                    }
-                                },
-                                range: [29, 38],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 38 }
-                                }
-                            }],
-                            range: [13, 40],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 40 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [1, 40],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 40 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [1, 42],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 42 }
-                    }
-                },
-                range: [0, 43],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 43 }
-                }
-            }],
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 43 }
-            },
-            errors: [{
-                index: 29,
-                lineNumber: 1,
-                column: 30,
-                message: 'Error: Line 1: Strict mode code may not include a with statement'
-            }]
-        },
-
-        '(function () { \'use strict\'; 021 }())': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 'use strict',
-                                    raw: '\'use strict\'',
-                                    range: [15, 27],
-                                    loc: {
-                                        start: { line: 1, column: 15 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                range: [15, 28],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            }, {
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 17,
-                                    raw: "021",
-                                    range: [29, 32],
-                                    loc: {
-                                        start: { line: 1, column: 29 },
-                                        end: { line: 1, column: 32 }
-                                    }
-                                },
-                                range: [29, 33],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            }],
-                            range: [13, 34],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [1, 34],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [1, 36],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 37],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 37 }
-                }
-            }],
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            },
-            errors: [{
-                index: 29,
-                lineNumber: 1,
-                column: 30,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; delete x': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UnaryExpression',
-                    operator: 'delete',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 22],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [14, 22],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 22 }
-                }
-            }],
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            },
-            errors: [{
-                index: 22,
-                lineNumber: 1,
-                column: 23,
-                message: 'Error: Line 1: Delete of an unqualified identifier in strict mode.'
-            }]
-        },
-
-        '"use strict"; try {} catch (eval) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'TryStatement',
-                block: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 20],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                guardedHandlers: [],
-                handlers: [{
-                    type: 'CatchClause',
-                    param: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [28, 32],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [34, 36],
-                        loc: {
-                            start: { line: 1, column: 34 },
-                            end: { line: 1, column: 36 }
-                        }
-                    },
-                    range: [21, 36],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 36 }
-                    }
-                }],
-                finalizer: null,
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 32,
-                lineNumber: 1,
-                column: 33,
-                message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; try {} catch (arguments) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'TryStatement',
-                block: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 20],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                guardedHandlers: [],
-                handlers: [{
-                    type: 'CatchClause',
-                    param: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [28, 37],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 37 }
-                        }
-                    },
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [39, 41],
-                        loc: {
-                            start: { line: 1, column: 39 },
-                            end: { line: 1, column: 41 }
-                        }
-                    },
-                    range: [21, 41],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 41 }
-                    }
-                }],
-                finalizer: null,
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 37,
-                lineNumber: 1,
-                column: 38,
-                message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; var eval;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [18, 22],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    init: null,
-                    range: [18, 22],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 22 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 23],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            },
-            errors: [{
-                index: 22,
-                lineNumber: 1,
-                column: 23,
-                message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; var arguments;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [18, 27],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    init: null,
-                    range: [18, 27],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 27 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 28],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            },
-            errors: [{
-                index: 27,
-                lineNumber: 1,
-                column: 28,
-                message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; eval = 0;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [14, 18],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    range: [14, 22],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [14, 23],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            },
-            errors: [{
-                index: 14,
-                lineNumber: 1,
-                column: 15,
-                message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; eval++;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [14, 18],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    prefix: false,
-                    range: [14, 20],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [14, 21],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            errors: [{
-                index: 18,
-                lineNumber: 1,
-                column: 19,
-                message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; --eval;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [16, 20],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 20],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [14, 21],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            errors: [{
-                index: 20,
-                lineNumber: 1,
-                column: 21,
-                message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; arguments = 0;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [14, 23],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [26, 27],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [14, 27],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [14, 28],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            },
-            errors: [{
-                index: 14,
-                lineNumber: 1,
-                column: 15,
-                message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; arguments--;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [14, 23],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    prefix: false,
-                    range: [14, 25],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [14, 26],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 26 }
-                }
-            }],
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; ++arguments;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [16, 25],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 25],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [14, 26],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 26 }
-                }
-            }],
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-
-        '"use strict";x={y:1,y:1}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    right: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'y',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [18, 19],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [16, 19],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 19 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'y',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 21 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [22, 23],
-                                loc: {
-                                    start: { line: 1, column: 22 },
-                                    end: { line: 1, column: 23 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [20, 23],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 23 }
-                            }
-                        }],
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    range: [13, 24],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [13, 24],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 24 }
-                }
-            }],
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function eval() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [23, 27],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [30, 32],
-                    loc: {
-                        start: { line: 1, column: 30 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 32],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 32 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [32, 33],
-                loc: {
-                    start: { line: 1, column: 32 },
-                    end: { line: 1, column: 33 }
-                }
-            }],
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; function arguments() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [23, 32],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [35, 37],
-                    loc: {
-                        start: { line: 1, column: 35 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 37],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 37 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [37, 38],
-                loc: {
-                    start: { line: 1, column: 37 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; function interface() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'interface',
-                    range: [23, 32],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [35, 37],
-                    loc: {
-                        start: { line: 1, column: 35 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 37],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 37 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [37, 38],
-                loc: {
-                    start: { line: 1, column: 37 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Use of future reserved word in strict mode'
-            }]
-        },
-
-        '"use strict"; (function eval() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [24, 28],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 28 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [31, 33],
-                        loc: {
-                            start: { line: 1, column: 31 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 33],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [14, 35],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 35 }
-                }
-            }],
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; (function arguments() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [24, 33],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [36, 38],
-                        loc: {
-                            start: { line: 1, column: 36 },
-                            end: { line: 1, column: 38 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 38],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [14, 40],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 40 }
-                }
-            }],
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 40 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; (function interface() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'interface',
-                        range: [24, 33],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [36, 38],
-                        loc: {
-                            start: { line: 1, column: 36 },
-                            end: { line: 1, column: 38 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 38],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [14, 40],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 40 }
-                }
-            }],
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 40 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Use of future reserved word in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(eval) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [25, 29],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 29 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [31, 33],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 33],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 33 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [33, 34],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 34 }
-                }
-            }],
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(arguments) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [25, 34],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 34 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [36, 38],
-                    loc: {
-                        start: { line: 1, column: 36 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 38],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 38 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [38, 39],
-                loc: {
-                    start: { line: 1, column: 38 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 39],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 39 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(foo,  foo) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [25, 28],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 28 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [31, 34],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 34 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [36, 38],
-                    loc: {
-                        start: { line: 1, column: 36 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 38],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 38 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [38, 39],
-                loc: {
-                    start: { line: 1, column: 38 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 39],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 39 }
-            },
-            errors: [{
-                index: 31,
-                lineNumber: 1,
-                column: 32,
-                message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-            }]
-        },
-
-        '"use strict"; (function f(eval) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [26, 30],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 30 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [32, 34],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 34],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-
-        '"use strict"; (function f(arguments) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [26, 35],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 35 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [37, 39],
-                        loc: {
-                            start: { line: 1, column: 37 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 39],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; (function f(foo,  foo) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [26, 29],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [32, 35],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 35 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [37, 39],
-                        loc: {
-                            start: { line: 1, column: 37 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 39],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 32,
-                lineNumber: 1,
-                column: 33,
-                message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-            }]
-        },
-
-        '"use strict"; x = { set f(eval) {} }' : {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    right: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'f',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            value : {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [{
-                                    type: 'Identifier',
-                                    name: 'eval',
-                                    range: [26, 30],
-                                    loc: {
-                                        start: { line: 1, column: 26 },
-                                        end: { line: 1, column: 30 }
-                                    }
-                                }],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [32, 34],
-                                    loc: {
-                                        start: { line: 1, column: 32 },
-                                        end: { line: 1, column: 34 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [32, 34],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            kind: 'set',
-                            range: [20, 34],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 34 }
-                            }
-                        }],
-                        range: [18, 36],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 36 }
-                        }
-                    },
-                    range: [14, 36],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        'function hello() { "octal directive\\1"; "use strict"; }': {
-            type: 'Program',
-            body: [{
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'hello',
-                    range: [9, 14],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 'octal directive\u0001',
-                            raw: '"octal directive\\1"',
-                            range: [19, 38],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 38 }
-                            }
-                        },
-                        range: [19, 39],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 39 }
-                        }
-                    }, {
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 'use strict',
-                            raw: '"use strict"',
-                            range: [40, 52],
-                            loc: {
-                                start: { line: 1, column: 40 },
-                                end: { line: 1, column: 52 }
-                            }
-                        },
-                        range: [40, 53],
-                        loc: {
-                            start: { line: 1, column: 40 },
-                            end: { line: 1, column: 53 }
-                        }
-                    }],
-                    range: [17, 55],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 55 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 55],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 55 }
-                }
-            }],
-            range: [0, 55],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 55 }
-            },
-            errors: [{
-                index: 19,
-                lineNumber: 1,
-                column: 20,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"\\1"; \'use strict\';': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: '\u0001',
-                    raw: '"\\1"',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '\'use strict\'',
-                    range: [6, 18],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [6, 19],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 19 }
-                }
-            }],
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            },
-            errors: [{
-                index: 0,
-                lineNumber: 1,
-                column: 1,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; var x = { 014: 3}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Literal',
-                                value: 12,
-                                raw: '014',
-                                range: [24, 27],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 27 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 3,
-                                raw: '3',
-                                range: [29, 30],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 30 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [24, 30],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 30 }
-                            }
-                        }],
-                        range: [22, 31],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [18, 31],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 31],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 31 }
-                }
-            }],
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; var x = { get i() {}, get i() {} }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [28, 29],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [32, 34],
-                                    loc: {
-                                        start: { line: 1, column: 32 },
-                                        end: { line: 1, column: 34 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [32, 34],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            kind: 'get',
-                            range: [24, 34],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 34 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [40, 41],
-                                loc: {
-                                    start: { line: 1, column: 40 },
-                                    end: { line: 1, column: 41 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [44, 46],
-                                    loc: {
-                                        start: { line: 1, column: 44 },
-                                        end: { line: 1, column: 46 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [44, 46],
-                                loc: {
-                                    start: { line: 1, column: 44 },
-                                    end: { line: 1, column: 46 }
-                                }
-                            },
-                            kind: 'get',
-                            range: [36, 46],
-                            loc: {
-                                start: { line: 1, column: 36 },
-                                end: { line: 1, column: 46 }
-                            }
-                        }],
-                        range: [22, 48],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 48 }
-                        }
-                    },
-                    range: [18, 48],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 48 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 48],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 48 }
-                }
-            }],
-            range: [0, 48],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 48 }
-            },
-            errors: [{
-                index: 46,
-                lineNumber: 1,
-                column: 47,
-                message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-            }]
-        },
-
-        '"use strict"; var x = { i: 42, get i() {} }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [27, 29],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [24, 29],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 29 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [35, 36],
-                                loc: {
-                                    start: { line: 1, column: 35 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [39, 41],
-                                    loc: {
-                                        start: { line: 1, column: 39 },
-                                        end: { line: 1, column: 41 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [39, 41],
-                                loc: {
-                                    start: { line: 1, column: 39 },
-                                    end: { line: 1, column: 41 }
-                                }
-                            },
-                            kind: 'get',
-                            range: [31, 41],
-                            loc: {
-                                start: { line: 1, column: 31 },
-                                end: { line: 1, column: 41 }
-                            }
-                        }],
-                        range: [22, 43],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 43 }
-                        }
-                    },
-                    range: [18, 43],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 43 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 43],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 43 }
-                }
-            }],
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 43 }
-            },
-            errors: [{
-                index: 41,
-                lineNumber: 1,
-                column: 42,
-                message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-            }]
-        },
-
-        '"use strict"; var x = { set i(x) {}, i: 42 }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [28, 29],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [{
-                                    type: 'Identifier',
-                                    name: 'x',
-                                    range: [30, 31],
-                                    loc: {
-                                        start: { line: 1, column: 30 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [33, 35],
-                                    loc: {
-                                        start: { line: 1, column: 33 },
-                                        end: { line: 1, column: 35 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [33, 35],
-                                loc: {
-                                    start: { line: 1, column: 33 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            },
-                            kind: 'set',
-                            range: [24, 35],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [37, 38],
-                                loc: {
-                                    start: { line: 1, column: 37 },
-                                    end: { line: 1, column: 38 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [40, 42],
-                                loc: {
-                                    start: { line: 1, column: 40 },
-                                    end: { line: 1, column: 42 }
-                                }
-                            },
-                            kind: 'init',
-                            range: [37, 42],
-                            loc: {
-                                start: { line: 1, column: 37 },
-                                end: { line: 1, column: 42 }
-                            }
-                        }],
-                        range: [22, 44],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 44 }
-                        }
-                    },
-                    range: [18, 44],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 44 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 44],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 44 }
-                }
-            }],
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 44 }
-            },
-            errors: [{
-                index: 42,
-                lineNumber: 1,
-                column: 43,
-                message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-            }]
-
-
-        },
-
-        '({ set s() { } })': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 's',
-                            range: [7, 8],
-                            loc: {
-                                start: { line: 1, column: 7 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [11, 14],
-                                loc: {
-                                    start: { line: 1, column: 11 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [11, 14],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'set',
-                        range: [3, 14],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [1, 16],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            }],
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            },
-            errors: [{
-                index: 9,
-                lineNumber: 1,
-                column: 10,
-                message: 'Error: Line 1: Unexpected token )'
-            }]
-        },
-
-        'foo("bar") = baz': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [0, 3],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 3 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Literal',
-                            value: 'bar',
-                            raw: '"bar"',
-                            range: [4, 9],
-                            loc: {
-                                start: { line: 1, column: 4 },
-                                end: { line: 1, column: 9 }
-                            }
-                        }],
-                        range: [0, 10],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'baz',
-                        range: [13, 16],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [0, 16],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            errors: [{
-                index: 10,
-                lineNumber: 1,
-                column: 11,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '1 = 2': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            },
-            errors: [{
-                index: 1,
-                lineNumber: 1,
-                column: 2,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '3++': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    prefix: false,
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }],
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            },
-            errors: [{
-                index: 1,
-                lineNumber: 1,
-                column: 2,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '--4': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Literal',
-                        value: 4,
-                        raw: '4',
-                        range: [2, 3],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }],
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            },
-            errors: [{
-                index: 3,
-                lineNumber: 1,
-                column: 4,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        'for (5 in []) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ForInStatement',
-                left: {
-                    type: 'Literal',
-                    value: 5,
-                    raw: '5',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [10, 12],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [14, 16],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                each: false,
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            errors: [{
-                index: 6,
-                lineNumber: 1,
-                column: 7,
-                message: 'Error: Line 1: Invalid left-hand side in for-in'
-            }]
-        }
-
-
-    }
-};
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/node_modules/rocambole/package.json
deleted file mode 100644 (file)
index 4d37d9b..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-  "_id": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Teu/WUMUS8e2AG2Vvo+swLdDUqc=",
-  "_location": "/grunt-standard/standard-format/esformatter-literal-notation/rocambole",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-    "name": "rocambole",
-    "escapedName": "rocambole",
-    "rawSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter-literal-notation"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "http://blog.millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole/issues"
-  },
-  "dependencies": {
-    "esprima": "~1.0"
-  },
-  "description": "Recursively walk and transform EcmaScript AST",
-  "devDependencies": {
-    "expect.js": "0.2",
-    "istanbul": "~0.1.23",
-    "mocha": "~1.7"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/millermedeiros/rocambole#readme",
-  "keywords": [
-    "ast",
-    "walk",
-    "syntax",
-    "source",
-    "tree",
-    "traversal",
-    "falafel",
-    "burrito",
-    "esprima"
-  ],
-  "license": "MIT",
-  "main": "rocambole.js",
-  "name": "rocambole",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole.git"
-  },
-  "scripts": {
-    "test": "istanbul test test/runner.js"
-  },
-  "version": "https://registry.npmjs.org/rocambole/-/rocambole-0.3.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-literal-notation/package.json
deleted file mode 100644 (file)
index ea7e8af..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "esformatter-literal-notation@https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esformatter-literal-notation@https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-  "_id": "esformatter-literal-notation@https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-0CAdBAaZMESqrzjTJUhCXKy1OOU=",
-  "_location": "/grunt-standard/standard-format/esformatter-literal-notation",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esformatter-literal-notation@https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-    "name": "esformatter-literal-notation",
-    "escapedName": "esformatter-literal-notation",
-    "rawSpec": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Antoine Lehurt",
-    "email": "hello@kewah.com",
-    "url": "http://kewah.com"
-  },
-  "bugs": {
-    "url": "https://github.com/kewah/esformatter-literal-notation/issues"
-  },
-  "dependencies": {
-    "rocambole": "^0.3.6",
-    "rocambole-token": "^1.2.1"
-  },
-  "description": "esformatter plugin that converts array and object constructors to literal notations",
-  "devDependencies": {
-    "esformatter": "^0.4.2",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/kewah/esformatter-literal-notation#readme",
-  "keywords": [
-    "esformatter",
-    "plugin",
-    "literal",
-    "notation"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "esformatter-literal-notation",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/kewah/esformatter-literal-notation.git"
-  },
-  "scripts": {
-    "test": "./node_modules/mocha/bin/mocha --reporter spec",
-    "watch": "./node_modules/mocha/bin/mocha --watch --reporter spec"
-  },
-  "version": "https://registry.npmjs.org/esformatter-literal-notation/-/esformatter-literal-notation-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/index.js
deleted file mode 100644 (file)
index c342657..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-//jshint node:true, eqnull:true
-'use strict';
-
-var DOUBLE_QUOTE = '"';
-var SINGLE_QUOTE = '\'';
-
-var avoidEscape;
-var disabled;
-var quoteValue;
-var alternateQuote;
-
-
-exports.setOptions = function(opts) {
-  opts = opts && opts.quotes;
-  if (!opts || (opts.type == null && opts.avoidEscape == null)) {
-    disabled = true;
-    return;
-  }
-  disabled = false;
-  if (opts.type != null) {
-    quoteValue = opts.type === 'single' ? SINGLE_QUOTE : DOUBLE_QUOTE;
-    alternateQuote = opts.type !== 'single' ? SINGLE_QUOTE : DOUBLE_QUOTE;
-  }
-  avoidEscape = opts.avoidEscape;
-};
-
-
-exports.tokenBefore = function(token) {
-  if (disabled) return;
-
-  if (token.type === 'String') {
-    var content = token.value.substr(1, token.value.length - 2);
-    var quote = quoteValue;
-    var alternate = alternateQuote;
-
-    var shouldAvoidEscape = avoidEscape &&
-      content.indexOf(quote) >= 0 &&
-      content.indexOf(alternate) < 0;
-
-    if (shouldAvoidEscape) {
-      alternate = quoteValue;
-      quote = alternateQuote;
-    }
-
-    // we always normalize the behavior to remove unnecessary escapes
-    var alternateEscape = new RegExp('\\\\' + alternate, 'g');
-    content = content.replace(alternateEscape, alternate);
-
-    // If the first character is a quote, escape it (e.g. "'hello" -> '\'hello')
-    //   or if a character is an unescaped quote, escape it (e.g. "hello'" -> 'hello\'')
-    // If we are an unescaped set of quotes, escape them (e.g. "hello'" -> 'hello\'', "hello''" -> 'hello\'\'')
-    // DEV: JavaScript starts the next match at the end of the current one, causing us to need a function or loop.
-    var quoteEscape = new RegExp('(^|[^\\\\])(' + quote + '+)', 'g');
-    content = content.replace(quoteEscape, function replaceQuotes (input, group1, group2, match) {
-      return group1 + new Array(group2.length + 1).join('\\' + quote);
-    });
-
-    token.value = quote + content + quote;
-  }
-};
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/package.json
deleted file mode 100644 (file)
index d5a3877..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-{
-  "_args": [
-    [
-      "esformatter-quotes@https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esformatter-quotes@https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-  "_id": "esformatter-quotes@https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-7L9L3eRnJ5L2HnvqYueLJytUMVw=",
-  "_location": "/grunt-standard/standard-format/esformatter-quotes",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esformatter-quotes@https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-    "name": "esformatter-quotes",
-    "escapedName": "esformatter-quotes",
-    "rawSpec": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "url": "http://blog.millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/esformatter-quotes/issues"
-  },
-  "description": "esformatter plugin: enforces coding style that string literals are delimited with single or double quotes.",
-  "devDependencies": {
-    "chai": "^1.4",
-    "esformatter": "^0.3.0",
-    "mocha": "https://github.com/millermedeiros/mocha/tarball/latest"
-  },
-  "homepage": "https://github.com/millermedeiros/esformatter-quotes",
-  "keywords": [
-    "esformatter",
-    "string",
-    "quotes",
-    "AST"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "esformatter-quotes",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/esformatter-quotes.git"
-  },
-  "scripts": {
-    "test": "mocha --ui bdd --reporter spec test"
-  },
-  "version": "https://registry.npmjs.org/esformatter-quotes/-/esformatter-quotes-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/input.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/input.js
deleted file mode 100644 (file)
index bb7858e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-"use strict";
-
-// basic ====
-
-var singleQuote = 'single';
-var doubleQuote = "double";
-
-
-// avoid escaping ====
-
-var avoidSingle = 'single "quote"';
-var avoidDouble = "double 'quote'";
-
-
-// escaping ====
-
-var lorem = "ipsum \"dolor\" sit 'amet'";
-var maecennas = 'ipsum \'dolor\' sit "amet"';
-
-var unnecessaryEscape = 'bar \'baz\' \"dolor\"';
-
-var leadingSingle = "'";
-var leadingDouble = '"';
-var unnecessaryEscapeSingle = '\'';
-
-var successiveQuotes = ' \'\' ""';
-
-
-// multiline strings ====
-
-var multi1 = 'multiline \
-madness \
-"quotes" \
-\'everywhere\''.substr(0, 15)
-
-var multi2 = "even more \
-multiline \
-'strings' \
-\"which is one of the \
-saddest things about JS\"".substr(15, 15)
-
-var multiAvoidSingle = 'lorem \
-ipsum "dolor"';
-
-var multiAvoidDouble = "dolor sit \
-ipsum 'dolor'";
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double-avoid.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double-avoid.js
deleted file mode 100644 (file)
index ff3c78f..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-"use strict";
-
-// basic ====
-
-var singleQuote = "single";
-var doubleQuote = "double";
-
-
-// avoid escaping ====
-
-var avoidSingle = 'single "quote"';
-var avoidDouble = "double 'quote'";
-
-
-// escaping ====
-
-var lorem = "ipsum \"dolor\" sit 'amet'";
-var maecennas = "ipsum 'dolor' sit \"amet\"";
-
-var unnecessaryEscape = "bar 'baz' \"dolor\"";
-
-var leadingSingle = "'";
-var leadingDouble = '"';
-var unnecessaryEscapeSingle = "'";
-
-var successiveQuotes = " '' \"\"";
-
-
-// multiline strings ====
-
-var multi1 = "multiline \
-madness \
-\"quotes\" \
-'everywhere'".substr(0, 15)
-
-var multi2 = "even more \
-multiline \
-'strings' \
-\"which is one of the \
-saddest things about JS\"".substr(15, 15)
-
-var multiAvoidSingle = 'lorem \
-ipsum "dolor"';
-
-var multiAvoidDouble = "dolor sit \
-ipsum 'dolor'";
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-double.js
deleted file mode 100644 (file)
index 7eecda8..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-"use strict";
-
-// basic ====
-
-var singleQuote = "single";
-var doubleQuote = "double";
-
-
-// avoid escaping ====
-
-var avoidSingle = "single \"quote\"";
-var avoidDouble = "double 'quote'";
-
-
-// escaping ====
-
-var lorem = "ipsum \"dolor\" sit 'amet'";
-var maecennas = "ipsum 'dolor' sit \"amet\"";
-
-var unnecessaryEscape = "bar 'baz' \"dolor\"";
-
-var leadingSingle = "'";
-var leadingDouble = "\"";
-var unnecessaryEscapeSingle = "'";
-
-var successiveQuotes = " '' \"\"";
-
-
-// multiline strings ====
-
-var multi1 = "multiline \
-madness \
-\"quotes\" \
-'everywhere'".substr(0, 15)
-
-var multi2 = "even more \
-multiline \
-'strings' \
-\"which is one of the \
-saddest things about JS\"".substr(15, 15)
-
-var multiAvoidSingle = "lorem \
-ipsum \"dolor\"";
-
-var multiAvoidDouble = "dolor sit \
-ipsum 'dolor'";
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single-avoid.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single-avoid.js
deleted file mode 100644 (file)
index fc14a9a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-'use strict';
-
-// basic ====
-
-var singleQuote = 'single';
-var doubleQuote = 'double';
-
-
-// avoid escaping ====
-
-var avoidSingle = 'single "quote"';
-var avoidDouble = "double 'quote'";
-
-
-// escaping ====
-
-var lorem = 'ipsum "dolor" sit \'amet\'';
-var maecennas = 'ipsum \'dolor\' sit "amet"';
-
-var unnecessaryEscape = 'bar \'baz\' "dolor"';
-
-var leadingSingle = "'";
-var leadingDouble = '"';
-var unnecessaryEscapeSingle = "'";
-
-var successiveQuotes = ' \'\' ""';
-
-
-// multiline strings ====
-
-var multi1 = 'multiline \
-madness \
-"quotes" \
-\'everywhere\''.substr(0, 15)
-
-var multi2 = 'even more \
-multiline \
-\'strings\' \
-"which is one of the \
-saddest things about JS"'.substr(15, 15)
-
-var multiAvoidSingle = 'lorem \
-ipsum "dolor"';
-
-var multiAvoidDouble = "dolor sit \
-ipsum 'dolor'";
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-quotes/test/compare/output-single.js
deleted file mode 100644 (file)
index 465ffa8..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-'use strict';
-
-// basic ====
-
-var singleQuote = 'single';
-var doubleQuote = 'double';
-
-
-// avoid escaping ====
-
-var avoidSingle = 'single "quote"';
-var avoidDouble = 'double \'quote\'';
-
-
-// escaping ====
-
-var lorem = 'ipsum "dolor" sit \'amet\'';
-var maecennas = 'ipsum \'dolor\' sit "amet"';
-
-var unnecessaryEscape = 'bar \'baz\' "dolor"';
-
-var leadingSingle = '\'';
-var leadingDouble = '"';
-var unnecessaryEscapeSingle = '\'';
-
-var successiveQuotes = ' \'\' ""';
-
-
-// multiline strings ====
-
-var multi1 = 'multiline \
-madness \
-"quotes" \
-\'everywhere\''.substr(0, 15)
-
-var multi2 = 'even more \
-multiline \
-\'strings\' \
-"which is one of the \
-saddest things about JS"'.substr(15, 15)
-
-var multiAvoidSingle = 'lorem \
-ipsum "dolor"';
-
-var multiAvoidDouble = 'dolor sit \
-ipsum \'dolor\'';
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-spaced-lined-comment/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter-spaced-lined-comment/package.json
deleted file mode 100644 (file)
index 9c9c007..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "esformatter-spaced-lined-comment@https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esformatter-spaced-lined-comment@https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-  "_id": "esformatter-spaced-lined-comment@https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-3F80B/k8KV4eVkRr00RWDaXm3Kw=",
-  "_location": "/grunt-standard/standard-format/esformatter-spaced-lined-comment",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esformatter-spaced-lined-comment@https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-    "name": "esformatter-spaced-lined-comment",
-    "escapedName": "esformatter-spaced-lined-comment",
-    "rawSpec": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Brian Di Palma"
-  },
-  "bugs": {
-    "url": "https://github.com/briandipalma/esformatter-spaced-lined-comment/issues"
-  },
-  "dependencies": {},
-  "description": "esformatter plugin for adding a space as the first character in a line comment",
-  "devDependencies": {
-    "esformatter": "^0.4.3",
-    "eslint": "^0.15.0",
-    "mocha": "^2.1.0"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/briandipalma/esformatter-spaced-lined-comment#readme",
-  "keywords": [
-    "esformatter",
-    "plugin"
-  ],
-  "license": "ISC",
-  "main": "index.js",
-  "name": "esformatter-spaced-lined-comment",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/briandipalma/esformatter-spaced-lined-comment.git"
-  },
-  "scripts": {
-    "build": "npm run lint && npm run test",
-    "lint": "eslint *.js",
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/esformatter-spaced-lined-comment/-/esformatter-spaced-lined-comment-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/debug/package.json
deleted file mode 100644 (file)
index c45f237..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "debug@https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "debug@https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-  "_id": "debug@https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=",
-  "_location": "/grunt-standard/standard-format/esformatter/debug",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "debug@https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-    "name": "debug",
-    "escapedName": "debug",
-    "rawSpec": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "browser": "./debug.js",
-  "bugs": {
-    "url": "https://github.com/visionmedia/debug/issues"
-  },
-  "component": {
-    "scripts": {
-      "debug/index.js": "index.js",
-      "debug/debug.js": "debug.js"
-    }
-  },
-  "dependencies": {},
-  "description": "small debugging utility",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": "*"
-  },
-  "files": [
-    "lib/debug.js",
-    "debug.js",
-    "index.js"
-  ],
-  "homepage": "https://github.com/visionmedia/debug#readme",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "main": "lib/debug.js",
-  "name": "debug",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "version": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.editorconfig b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.editorconfig
deleted file mode 100644 (file)
index e036e24..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-; EditorConfig is awesome: http://EditorConfig.org
-
-; top-most EditorConfig file
-root = true
-
-; base rules
-[*]
-end_of_line = lf
-insert_final_newline = false
-indent_style = space
-indent_size = 4
-charset = utf-8
-trim_trailing_whitespace = true
-
-; The default indent on package.json is 2 spaces, better to keep it so we can
-; use `npm install --save` and other features that rewrites the package.json
-; file automatically
-[package.json]
-indent_style = space
-indent_size = 2
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/.travis.yml
deleted file mode 100644 (file)
index 1c6fcf8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
- language: node_js
- node_js:
-   - "0.10"
- script:
-   - "npm test --coverage"
-   - "jshint src"
- notifications:
-  irc:
-    channels:
-      - "irc.freenode.org#moutjs"
-    on_success: change
-    on_failure: always
-    use_notice: true
-    skip_join: true
- git:
-   depth: 10
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array.js
deleted file mode 100644 (file)
index e058096..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-//automatically generated, do not edit!
-//run `node build` instead
-module.exports = {
-    'append' : require('./array/append'),
-    'collect' : require('./array/collect'),
-    'combine' : require('./array/combine'),
-    'compact' : require('./array/compact'),
-    'contains' : require('./array/contains'),
-    'difference' : require('./array/difference'),
-    'equals' : require('./array/equals'),
-    'every' : require('./array/every'),
-    'filter' : require('./array/filter'),
-    'find' : require('./array/find'),
-    'findIndex' : require('./array/findIndex'),
-    'findLast' : require('./array/findLast'),
-    'findLastIndex' : require('./array/findLastIndex'),
-    'flatten' : require('./array/flatten'),
-    'forEach' : require('./array/forEach'),
-    'groupBy' : require('./array/groupBy'),
-    'indexOf' : require('./array/indexOf'),
-    'insert' : require('./array/insert'),
-    'intersection' : require('./array/intersection'),
-    'invoke' : require('./array/invoke'),
-    'join' : require('./array/join'),
-    'last' : require('./array/last'),
-    'lastIndexOf' : require('./array/lastIndexOf'),
-    'map' : require('./array/map'),
-    'max' : require('./array/max'),
-    'min' : require('./array/min'),
-    'pick' : require('./array/pick'),
-    'pluck' : require('./array/pluck'),
-    'range' : require('./array/range'),
-    'reduce' : require('./array/reduce'),
-    'reduceRight' : require('./array/reduceRight'),
-    'reject' : require('./array/reject'),
-    'remove' : require('./array/remove'),
-    'removeAll' : require('./array/removeAll'),
-    'shuffle' : require('./array/shuffle'),
-    'slice' : require('./array/slice'),
-    'some' : require('./array/some'),
-    'sort' : require('./array/sort'),
-    'sortBy' : require('./array/sortBy'),
-    'split' : require('./array/split'),
-    'take' : require('./array/take'),
-    'toLookup' : require('./array/toLookup'),
-    'union' : require('./array/union'),
-    'unique' : require('./array/unique'),
-    'xor' : require('./array/xor'),
-    'zip' : require('./array/zip')
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/array/flatten.js
deleted file mode 100644 (file)
index aa9757a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var isArray = require('../lang/isArray');
-var append = require('./append');
-
-    /*
-     * Helper function to flatten to a destination array.
-     * Used to remove the need to create intermediate arrays while flattening.
-     */
-    function flattenTo(arr, result, level) {
-        if (arr == null) {
-            return result;
-        } else if (level === 0) {
-            append(result, arr);
-            return result;
-        }
-
-        var value,
-            i = -1,
-            len = arr.length;
-        while (++i < len) {
-            value = arr[i];
-            if (isArray(value)) {
-                flattenTo(value, result, level - 1);
-            } else {
-                result.push(value);
-            }
-        }
-        return result;
-    }
-
-    /**
-     * Recursively flattens an array.
-     * A new array containing all the elements is returned.
-     * If `shallow` is true, it will only flatten one level.
-     */
-    function flatten(arr, level) {
-        level = level == null? -1 : level;
-        return flattenTo(arr, [], level);
-    }
-
-    module.exports = flatten;
-
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/array.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/array.md
deleted file mode 100644 (file)
index 17c9d34..0000000
+++ /dev/null
@@ -1,965 +0,0 @@
-# array #
-
-Array utilities.
-
-
-
-
-## append(arr1, arr2):Array
-
-Appends an array to the end of the other.
-The first array will be modified and will contain the appended items.
-
-See: [`union()`](#union), [`combine()`](#combine)
-
-```js
-var foo = ['a', 'b'],
-    bar = ['b', 'd'];
-
-append(foo, bar); // ['a', 'b', 'b', 'd']
-```
-
-
-
-## collect(arr, callback, [thisObj]):Array
-
-Maps the items in `arr` and concatenates the resulting arrays.
-
-See: [`map()`](#map)
-
-```js
-collect([1, 2, 3], function(val) {
-    return [val, val % 2];
-}); // [1, 1, 2, 0, 3, 1];
-
-collect(['a', 'bb', ''], function(val) {
-    return val.split('');
-}); // ['a', 'b', 'b']
-```
-
-It also supports a shorthand syntax:
-
-```js
-var items = [{ a: [1] }, { b: 'foo' }, { a: [2, 3] }];
-collect(items, 'a'); // [1, 2, 3];
-```
-
-
-
-## combine(arr1, arr2):Array
-
-Combines an array with all the items of another.
-The first array will be modified and will contain the combined items.
-Does not allow duplicates and is case and type sensitive.
-
-See: [`union()`](#union), [`append()`](#append)
-
-```js
-var foo = ['a', 'b'],
-    bar = ['b', 'd'];
-
-combine(foo, bar); // ['a', 'b', 'd']
-```
-
-
-
-## compact(arr):Array
-
-Returns a new Array without any `null` or `undefined` values. Note that it will
-keep empty strings and other falsy values (simillar to Ruby Array#compact).
-
-```js
-var arr = [0, 1, null, false, '', 'foo', undefined, 'bar'];
-compact(arr); // [0, 1, false, '', 'foo', 'bar'];
-```
-
-
-
-## contains(arr, value):Boolean
-
-Checks if Array contains value. Alias to `indexOf(arr, val) !== -1`.
-
-```js
-var arr = [1, 2, 3];
-contains(arr, 2);      // true
-contains(arr, 'foo');  // false
-```
-
-
-
-## difference(...arrs):Array
-
-Return a new Array with elements that aren't present in the other Arrays
-besides the first one.
-
-Works like [Python set#difference](http://docs.python.org/library/stdtypes.html#set.difference).
-
-It will remove duplicates.
-
-See: [`xor()`](#xor), [`intersection()`](#intersection)
-
-```js
-var a = ['a', 'b', 1];
-var b = ['c', 1];
-difference(a, b); // ['a', 'b']
-```
-
-
-## equals(a, b, [compare]):Boolean
-
-Checks if both arrays are equal.
-
-```js
-equals([1, 2], [1, 2]); // true
-equals([2, 4], [1, 2]); // false
-```
-
-By default it uses the [lang/is](lang.html#is) as the `compare` function but
-you can pass a custom function to change the behavior.
-
-```js
-function loose(a, b) {
-    return a == b;
-}
-equals(['1', 2], [1, 2], loose); // true
-```
-
-See: [object/equals](object.html#equals), [lang/deepEquals](lang.html#deepEquals)
-
-
-
-## every(arr, callback, [thisObj]):Array
-
-Crossbrowser `Array.every()`.
-
-Tests whether all elements in the array pass the test implemented by the provided function.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-```js
-var items = [1, 'foo', 'bar'];
-every(items, isString);   // false
-every(items, isFunction); // false
-every(items, function(val, key, arr){
-    return val != null;
-}); // true
-```
-
-more info at [MDN Array#every](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every)
-
-It also supports a shorthand syntax:
-
-```js
-var items = [{id:1, active:true}, {id:3, active:true}, {id:8, active:true}];
-// all items with `id === 8`
-every(items, {id:8}); // false
-// `active` is truthy on all items
-every(items, 'active'); // true
-```
-
-
-
-## filter(arr, callback, [thisObj]):Array
-
-Crossbrowser `Array.filter()`.
-
-Creates a new array with all elements that pass the callback test.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-```js
-var nums = [1, 2, 3, 4, 5, 6];
-var oddNumbers = filter(nums, function(val, key, arr){
-    return (val % 2) !== 0;
-});
-// > [1, 3, 5]
-```
-
-more info at [MDN Array#filter](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter)
-
-Filter also supports shorthand notation:
-
-```js
-var users = [
-    {name:'john', surname:'connor', beard:false},
-    {name:'john', surname:'doe', beard:true},
-    {name:'jane', surname:'doe', beard:false}
-];
-// filter item that matches all properties/values pairs
-filter(arr, {name:'john', beard:false});
-// > [{name:'john', surnname:'connor', beard:false}]
-// items where 'beard' is a truthy value
-filter(arr, 'beard');
-// > [{name:'john', surnname:'doe', beard:true}]
-```
-
-See [`reject()`](#reject)
-
-
-
-## find(arr, callback, [thisObj]):*
-
-Loops through all the items in the Array and returns the first one that passes
-a truth test (callback).
-
-```js
-var arr = [123, {a:'b'}, 'foo', 'bar'];
-find(arr, isString); // "foo"
-find(arr, isNumber); // 123
-find(arr, isObject); // {a:'b'}
-```
-
-Find also supports shorthand notation:
-
-```js
-var users = [
-    {name:'john', surname:'connor', beard:false},
-    {name:'john', surname:'doe', beard:true}
-];
-// first item that matches all properties/values pairs
-find(arr, {name:'john'}); // {name:'john', surnname:'connor', beard:false}
-// first item where 'beard' is a truthy value
-find(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
-```
-
-See: [findIndex()](#findIndex), [findLast()](#findLast),
-[findLastIndex()](#findLastIndex)
-
-
-
-## findLast(arr, callback, [thisObj]):*
-
-Loops through all the items in the Array (starting from last item) and returns
-the first one that passes a truth test (callback).
-
-```js
-var arr = [123, {a:'b'}, 'foo', 'bar'];
-findLast(arr, isString); // "bar"
-findLast(arr, isNumber); // 123
-findLast(arr, isObject); // {a:'b'}
-```
-
-`findLast` also supports shorthand notation:
-
-```js
-var users = [
-    {name:'john', surname:'connor', beard:false},
-    {name:'john', surname:'doe', beard:true}
-];
-// last item that matches all properties/values pairs
-findLast(arr, {name:'john'}); // {name:'john', surnname:'doe', beard:true}
-// last item where 'beard' is a truthy value
-findLast(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
-```
-
-See: [find()](#find), [findIndex()](#findIndex),
-[findLastIndex()](#findLastIndex)
-
-
-
-## findIndex(arr, iterator, [thisObj]):Number
-
-Loops through the items in the Array and returns the index of the first one
-that passes a truth test (callback).
-
-Returns `-1` if no item was found that passes the truth test.
-
-```js
-var arr = [1, { a: 1 }, 'foo', 'bar'];
-findIndex(arr, isString); // 2
-findIndex(arr, isNumber); // 0
-findIndex(arr, isObject); // 1
-findIndex(arr, isRegExp); // -1
-```
-
-`findIndex` also supports shorthand notation:
-
-```js
-var pets = [
-    { pet: 'dog', name: 'Sam' },
-    { pet: 'dog', name: 'Maggie' }
-];
-
-findIndex(pets, { pet: 'dog' }); // 0
-findIndex(pets, { name: 'Maggie' }); // 1
-```
-
-See: [find()](#find), [findLastIndex()](#findLastIndex)
-
-
-
-## findLastIndex(arr, iterator, [thisObj]):Number
-
-Loops through the items in the Array on the reverse order and returns the index
-of the first one that passes a truth test (callback).
-
-Returns `-1` if no item was found that passes the truth test.
-
-```js
-var arr = [1, { a: 1 }, 'foo', 'bar'];
-findLastIndex(arr, isString); // 3
-findLastIndex(arr, isNumber); // 0
-findLastIndex(arr, isObject); // 1
-findLastIndex(arr, isRegExp); // -1
-```
-
-`findLastndex` also supports shorthand notation:
-
-```js
-var pets = [
-    { pet: 'dog', name: 'Sam' },
-    { pet: 'dog', name: 'Maggie' }
-];
-
-findLastIndex(pets, { pet: 'dog' }); // 1
-findLastIndex(pets, { name: 'Sam' }); // 0
-```
-
-See: [find()](#find), [findIndex()](#findIndex)
-
-
-
-## flatten(arr, [level]):Array
-
-Recursively flattens an array. A new array containing all the elements is
-returned. If `level` is specified, it will only flatten up to that level.
-
-### Example
-
-```js
-flatten([1, [2], [3, [4, 5]]]);
-// > [1, 2, 3, 4, 5]
-flatten([1, [2], [3, [4, 5]]], 1);
-// > [1, 2, 3, [4, 5]]
-```
-
-
-
-## forEach(arr, callback, [thisObj]):void
-
-Crossbrowser `Array.forEach()`.
-
-It allows exiting the iteration early by returning `false` on the callback.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-```js
-var items = ['foo', 'bar', 'lorem', 'ipsum'];
-forEach(items, function(val, key, arr){
-    console.log(key +' : '+ val);
-    if (val === 'lorem') {
-        // stop iteration (break)
-        return false;
-    }
-});
-```
-
-more info at [MDN Array#forEach](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach)
-
-
-
-## groupBy(arr, [categorize=identity], [thisObj]):Object
-
-Groups array elements by the `key` returned from the `categorize` function.
-
-It will use the [function/identity](function.html#identity) as the default
-`categorize` function.
-
-```js
-var items = ['lorem', 'ipsum', 'foo', 'bar', 'baz'];
-groupBy(items, function(val) { return val.length });
-// > {'3': ['foo', 'bar', 'baz'], '5': ['lorem', 'ipsum']}
-```
-
-
-
-## indexOf(arr, item, [fromIndex]):Number
-
-Crossbrowser `Array.indexOf()`.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-more info at [MDN Array#indexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf)
-
-
-
-
-## insert(arr, ...items):Number
-
-Push items into array only if they aren't contained by it. Returns the new
-`length` of the array.
-
-See: [`remove()`](#remove), [`removeAll()`](#removeAll),
-[`contains()`](#contains)
-
-```js
-var arr = ['a', 'b'];
-insert(arr, 'a');       // 2 : ['a', 'b']
-insert(arr, 'c');       // 3 : ['a', 'b', 'c']
-insert(arr, 1, 2, 'b'); // 5 : ['a', 'b', 'c', 1, 2]
-```
-
-
-
-## intersection(...arrs):Array
-
-Return a new Array with elements common to all Arrays.
-
-Similar to Python set#intersection and underscore.js intersection.
-
-It will remove duplicates.
-
-See: [`difference()`](#difference), [`xor()`](#xor)
-
-```js
-var a = ['a', 'b', 1],
-    b = ['c', 1],
-    c = [1, 2, 3];
-intersection(a, b, c); // [1]
-```
-
-
-
-## invoke(arr, methodName[, ...args]):Array
-
-Call `methodName` on each item of the array passing custom arguments if needed.
-
-```js
-invoke([[3,2,1], [9,5,2]], 'sort'); // [[1,2,3], [2,5,9]]
-```
-
-
-
-## join(arr, [separator]):String
-
-Joins the strings in `arr`, inserting `separator` between each value.
-
-This ignores null values and empty strings that are in the array. `separator`
-defaults to an empty string. This will convert all non-string objects in the
-array to a string.
-
-### Example
-
-```js
-join(['a', 'b', 'c']); // 'abc'
-join(['foo', 'bar'], ', '); // 'foo, bar'
-join([null, 'foo', '', 'bar', undefined], ':'); // 'foo:bar'
-```
-
-
-## last(arr):*
-
-Returns the last element of an array without modifying the array.
-
-
-```js
-last( [1, 2, 3, 4] ) // > 4
-last( ['foo', 'bar'] ) // > 'bar'
-```
-
-
-## lastIndexOf(arr, item, [fromIndex]):Number
-
-Crossbrowser `Array.lastIndexOf()`.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-more info at [MDN Array#lastIndexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf)
-
-
-
-## map(arr, callback, [thisObj]]):Array
-
-Crossbrowser `Array.map()`.
-
-Creates a new array with the results of calling a provided function on every
-element in this array.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-See: [`collect()`](#collect)
-
-```js
-var nums = [1,2,3,4];
-var double = map(nums, function(val, key, arr){
-    return val * 2;
-});
-// > [2, 4, 6, 8]
-```
-
-more info at [MDN Array#map](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map)
-
-It also supports a shorthand notation which can be used to achieve same result
-as [`array/pluck`](#pluck):
-
-```js
-var src = ['lorem', 'ipsum', 'foo', 'amet'];
-// grab the "length" property of all items
-var lengths = map(src, 'length'); // [5, 5, 3, 4]
-```
-
-
-
-## max(arr, [iterator], [thisObj]):*
-
-Returns maximum value inside array or use a custom iterator to define how items
-should be compared.
-
-See: [`min()`](#min)
-
-```js
-max([10, 2, 7]); // 10
-max(['foo', 'lorem', 'amet'], function(val){
-    return val.length;
-}); // 'lorem'
-```
-
-It also supports a shorthand notation:
-
-```js
-max(['foo', 'lorem', 'amet'], 'length'); // "lorem"
-```
-
-
-
-## min(arr, [iterator], [thisObj]):*
-
-Returns minimum value inside array or use a custom iterator to define how items
-should be compared.
-
-See: [`max()`](#max)
-
-```js
-min([10, 2, 7]); // 2
-min(['foo', 'lorem', 'amet'], function(val){
-    return val.length;
-}); // 'foo'
-```
-
-It also supports a shorthand notation:
-
-```js
-min(['foo', 'lorem', 'amet'], 'length'); // "foo"
-```
-
-
-
-## pick(arr, [nItems]):*
-
-Gets random item(s) and removes it from the original array.
-
-If `nItems` is specified it will return a new Array contained the *picked*
-items otherwise it returns a single item.
-
-See: [`random/choice()`](./random.html#choice)
-
-### Example:
-
-```js
-var arr = [1, 2, 3, 4, 5, 6];
-var item1 = pick(arr); // 4
-var item2 = pick(arr); // 1
-var items = pick(arr, 2); // [5, 2]
-console.log(arr); // [3, 6]
-```
-
-
-
-## pluck(arr, propName):Array
-
-Extract a list of property values.
-
-See: [`function/prop()`](function.html#prop)
-
-```js
-var users = [{name : 'John', age: 21}, {name: 'Jane', age : 27}];
-var names = pluck(users, 'name'); // ["John", "Jane"]
-var ages = pluck(users, 'age'); // [21, 27]
-```
-
-
-
-## range([start], stop[, step]):Array
-
-Creates a new Array with all the values inside the range. Works similarly to
-Python#range or PHP#range.
-
-### Arguments
-
- 1. `[start]` (Number) : Range start. Default is `0`.
- 2. `stop` (Number) : Range limit.
- 3. `[step]` (Number) : Step size. Default is `1`.
-
-### Example
-
-```js
-range(5);         // [0, 1, 2, 3, 4, 5]
-range(0, 5);      // [0, 1, 2, 3, 4, 5]
-range(0, 5, 2);   // [0, 2, 4]
-range(20, 40, 5); // [20, 25, 30, 35, 40]
-```
-
-
-
-## reduce(arr, fn):*
-
-Crossbrowser `Array.reduce()`.
-
-Apply a function against an accumulator and each value of the array (from
-left-to-right) as to reduce it to a single value.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-more info at [MDN Array#reduce](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduce)
-
-
-
-## reduceRight(arr, fn):*
-
-Crossbrowser `Array.reduceRight()`.
-
-Apply a function simultaneously against two values of the array (from
-right-to-left) as to reduce it to a single value.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-more info at [MDN Array#reduceRight](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduceRight)
-
-
-
-## reject(arr, fn, thisObj):Array
-
-Creates a new array with all the elements that do **not** pass the truth test.
-Opposite of [`filter()`](#filter).
-
-See [`filter()`](#filter)
-
-### Example
-
-```js
-var numbers = [1, 2, 3, 4, 5, 6];
-reject(numbers, function(x) { return (x % 2) !== 0; }); // [2, 4, 6]
-```
-
-It also supports a shorthand syntax:
-
-```js
-var users = [
-    {name:'john', surname:'connor', beard:false},
-    {name:'john', surname:'doe', beard:true},
-    {name:'jane', surname:'doe', beard:false}
-];
-// reject items that matches all properties/values pairs
-reject(arr, {name:'john'});
-// > [{name:'jane', surnname:'doe', beard:false}]
-// reject items where 'beard' is a truthy value
-filter(arr, 'beard');
-// > [{name:'john', surnname:'connor', beard:false},
-//    {name:'jane', surname:'doe', beard:false}]
-```
-
-
-
-## remove(arr, item):void
-
-Remove a single item from the array.
-
-IMPORTANT: it won't remove duplicates, just a single item.
-
-### Example
-
-```js
-var foo = [1, 2, 3, 4];
-remove(foo, 2);
-console.log(foo); // [1, 3, 4]
-```
-
-
-
-## removeAll(arr, item):void
-
-Remove all instances of an item from the array.
-
-### Example
-
-```js
-var foo = [1, 2, 3, 4, 2, 2];
-removeAll(foo, 2);
-console.log(foo); // [1, 3, 4];
-```
-
-
-
-## shuffle(arr):Array
-
-Returns a new Array with items randomly sorted (shuffled). Similar to Ruby Array#shuffle.
-
-### Example
-
-```js
-var arr = ['a', 'b', 'c', 'd', 'e'];
-shuffle(arr); // ['b', 'd', 'e', 'c', 'a']
-```
-
-
-
-## slice(arr, [start], [end]):Array
-
-Returns a new array containing the items from `arr` from the start index to the
-end index.
-
-If `start` is omitted, it will start at `0`. If `end` is omitted, it will used
-the last index of the array.  If `start` or `end` is negative, it is used as an
-offset from the end of the array.
-
-It will also convert array-like objects to arrays.
-
-### Example
-
-```js
-slice([1, 2, 3, 4], 1, 2); // [2, 3]
-slice([1, 2, 3], 1); // [2, 3]
-slice([1, 2, 3]); // [1, 2, 3]
-slice({ length: 2, 0: 'a', 1: 'b' }); // ['a', 'b']
-slice([1, 2, 3], 0, -1); // [1, 2]
-slice([1, 2, 3], -2); // [2, 3]
-```
-
-
-
-## some(arr, callback, [thisObj]):Array
-
-Crossbrowser `Array.some()`.
-
-Tests whether some element in the array passes the test implemented by the provided function.
-
-It differs from ES5 since it will also loop over sparse items in the array to
-normalize the behavior across browsers (avoid inconsistencies).
-
-```js
-var items = [1, 'foo', 'bar'];
-some(items, isString);   // true
-some(items, isFunction); // false
-```
-
-more info at [MDN Array#some](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some)
-
-It also supports a shorthand syntax:
-
-```js
-var items = [{id:1, active:true}, {id:3, active:false}, {id:8, active:false}];
-// at least one item with `id === 8`
-some(items, {id:8}); // true
-// `active` is truthy on at least one item
-some(items, 'active'); // true
-```
-
-see also: [`object/matches`](object.html#matches)
-
-
-
-## sort(arr, [compareFn]):Array
-
-Returns a sorted Array using the [Merge Sort](http://en.wikipedia.org/wiki/Merge_sort) algorithm (stable sort).
-
-The `Array.prototype.sort` browser implementations differ since the sorting algorithm isn't described in the ES spec - [in V8 it isn't stable](http://code.google.com/p/v8/issues/detail?id=90) and [on Firefox it is stable](https://bugzilla.mozilla.org/show_bug.cgi?id=224128) - so this function doesn't use the browser native implementation and is recommended in cases where a stable sort is required (items should preserve same order if already sorted).
-
-**Important:** It does logical comparisson by default (greater/less than) and
-not a string comparisson like the native `Array#sort`.
-
-### compareFn
-
-If `compareFn` is supplied elements are sorted based on the value returned by
-the `compareFn`.
-
- - If `compareFn(a, b)` is less than `0`, sort `a` to a lower index than `b`.
- - If `compareFn(a, b)` returns `0`, leave `a` and `b` unchanged with respect
-   to each other, but sorted with respect to all different elements.
- - If `compareFn(a, b)` is greater than `0`, sort `b` to a lower index than
-   `a`.
-
-See: [`sortBy`](#sortBy)
-
-### Example
-
-```js
-sort([187, 23, 47, 987, 12, 59, 0]); // [0, 12, 23, 47, 59, 187, 987]
-sort(['a', 'z', 'c', 'beta', 'b']); // ['a', 'b', 'beta', 'c', 'z']
-
-// ['sit', 'amet', 'lorem', 'ipsum']
-sort(['lorem', 'ipsum', 'sit', 'amet'], function(a, b){
-    // sort by length, items with same length
-    // will keep the relative order (stable)
-    return a.length - b.length;
-});
-
-// [4, 3, 2, 1]
-sort([2, 3, 1, 4], function(a, b){
-    // reverse sort
-    return b - a;
-});
-```
-
-
-
-## sortBy(arr, callback, [context]):Array
-
-Returns an array sorted by the result of the callback.
-
-The callback is called for each item that is to be sorted, and the
-results of the callback are used to sort the array. The callback
-is called with the item as the first parameter, optionally with
-the provided context.
-
-It also supports a shorthand notation which can be used to sort by a property
-name.
-
-See: [`sort`](#sort)
-
-```js
-// Returns [{ a: 1 }, { a: 2 }, { a: 3 }]
-sortBy([{ a: 1 }, { a: 3 }, { a: 2 }],
-    function(item) { return item.a; });
-
-// Same as above, using shorthand notation
-sortBy([{ a: 1 }, { a: 3 }, { a: 2 }], 'a');
-```
-
-
-
-## split(arr, [segments]):Array
-
-Splits an array into a fixed number of segments.
-
-The number of segments is specified by `segments` and defaults to 2. If the
-array cannot be evenly split, the first segments will contain the extra items.
-If `arr` is empty, an empty array is returned. If `arr.length` is less than
-`segments`, then the resulting array will have `arr.length` number of
-single-element arrays.
-
-### Example
-```js
-split([1, 2, 3, 4, 5], 3) // [ [1, 2], [3, 4], [5] ]
-split([1, 2, 3, 4, 5]) // [ [1, 2, 3], [4, 5] ]
-split([]) // []
-split([1, 2], 3) // [ [1], [2] ]
-```
-
-
-
-## take(times, callback, [thisObj]):Array
-
-Builds a new array based on the returned values from the given `callback`.
-
-```js
-take(4, function(i, total) {
-    return i / total;
-});
-// > [0, 0.25, 0.5, 0.75]
-```
-
-see: [function/times](../function.html#times)
-
-
-
-## toLookup(arr, key):Object
-
-Create an object that indexes the items in the array by a key. If `key` is a function, the key for each value in the resulting object will be the result of calling the function with the value as an argument. Otherwise `key` specifies the property on each value to use as the key.
-
-### Example
-
-```js
-var foo = [{ name: 'a', thing: 1 }, { name: 'b', thing: 2 }];
-// { a: { name: 'a', thing: 1 }, b: { name: 'b', thing: 2 } }
-toLookup(foo, 'name');
-// same as above
-toLookup(foo, function (value) { return value.name; });
-```
-
-
-
-## union(...arrs):Array
-
-Concat multiple arrays removing duplicates.
-
-```js
-var a = ['a', 'b'],
-    b = ['c', 'a'],
-    c = [1, 'b', 2, 3, 'a'];
-
-//note that unique remove from begin to end
-union(a, b, c); // ['c', 1, 'b', 2, 3, 'a']
-```
-
-
-
-## unique(arr, [compare]):Array
-
-Return a new Array of unique items.
-
-**IMPORTANT:** duplicates are removed starting from begining of array.
-
-```js
-var arr = [1, 2, 3, 4, 2, 2, 4];
-var foo = unique(arr);
-console.log(foo);
-// > [1, 3, 2, 4];
-
-// you also have the option to set a custom compare function
-var users = [{name: 'john'}, {name: 'paul'}, {name: 'john'}];
-var uniqueNames = unique(arr, function(a, b){
-    return a.name === b.name;
-});
-console.log(uniqueNames);
-// > [{name: 'paul'}, {name: 'john'}]
-```
-
-
-
-## xor(arr1, arr2):Array
-
-Exclusive OR. Returns items that are present in a single array.
-
-Works like [Python set#symmetric_difference](http://docs.python.org/library/stdtypes.html#set.symmetric_difference) renamed for brevity.
-
-It will remove duplicates.
-
-See: [`difference()`](#difference), [`intersection()`](#intersection)
-
-```js
-var a = ['a', 'b', 1];
-var b = ['c', 1];
-xor(a, b); // ['a', 'b', 'c']
-```
-
-
-
-## zip(...arrs):Array
-
-Groups the elements of each array at their corresponding indexes.
-
-Useful for separate data sources that are coordinated through matching array
-indexes. For a matrix of nested arrays, `zip.apply(...)` can transpose the
-matrix in a similar fashion.
-
-```js
-// [['moe', 30, true], ['larry', 40, false], ['curly', 50, false]]
-zip(['moe', 'larry', 'curly'], [30, 40, 50], [true, false, false]);
-```
-
-
-
-
--------------------------------------------------------------------------------
-
-For more usage examples check specs inside `/tests` folder. Unit tests are the
-best documentation you can get...
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/function.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/function.md
deleted file mode 100644 (file)
index bc9663d..0000000
+++ /dev/null
@@ -1,293 +0,0 @@
-# function #
-
-Function*(al)* utilities.
-
-
-## awaitDelay(fn, delay):Function
-
-Returns a function that ensures that `fn` is only called *after* `delay`
-milliseconds have elapsed. When the returned function is called before the
-delay has elapsed, it will wait until the delay has elapsed and then call `fn`.
-When the returned function is called after the delay has elapsed, it will call
-`fn` after the next "tick" (it will always be called asynchronously). The
-context and arguments that the returned function is called in are applied to
-`fn`.
-
-In the below example `onLoaded` will not be executed before a 1000 millisecond
-delay. Even if `loadImages` loads and calls `callback` earlier.  However, say
-the images take 1500 milliseconds to load, it will trigger `onLoaded`
-immediately.
-
-```js
-var callback = after(onLoaded, 1000);
-loadImages(callback);
-function onLoaded(){
-    console.log('loaded');
-}
-```
-
-You can also cancel de delayed call by simply using the native `clearTimeout`
-method (like a regular `setTimeout` call).
-
-```js
-var timeoutId = callback();
-// onLoaded won't be called since it was canceled before the 1000ms delay
-clearTimeout(timeoutId);
-```
-
-### Arguments:
-
- 1. `fn` (Function)    : Target Function
- 2. `delay` (Number)   : Delay of execution in milliseconds
-
-See: [`debounce()`](#debounce)
-
-
-
-## bind(fn, context, [...args]):Function
-
-Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
-
-### Arguments
-
- 1. `fn` (Function)    : Target Function
- 2. `context` (Object) : Execution context (object used as `this`)
- 3. `[...args]` (*)    : Arguments (0...n arguments)
-
-See: [`partial()`](#partial), [object/bindAll](./object.html#bindAll)
-
-
-
-## compose(...fn):Function
-
-Returns the composition of a list of functions, where each function consumes
-the return value of the function that follows. In math terms, composing the
-functions `f()`, `g()`, and `h()` produces `f(g(h()))`.
-
-```js
-function add2(x) { return x + 2 }
-function multi2(x) { return x * 2 }
-map([1, 2, 3], compose(add2, multi2)); // [4, 6, 8]
-
-//same as
-map([1, 2, 3], function(x){
-    return add2( multi2(x) );
-});
-```
-
-
-
-## constant(value):Function
-
-Returns a new function that will always return `value` when called.
-
-```js
-var f = constant('foo');
-f(); // 'foo'
-
-// Provided arguments are ignored; value is always returned
-f(1); // 'foo'
-
-f = constant({ foo: 'bar' });
-f(); // { foo: 'bar' }
-```
-
-
-
-## debounce(fn, delay[, isAsap]):Function
-
-Creates a function that will delay the execution of `fn` until after `delay`
-milliseconds have elapsed since the last time it was invoked.
-
-Subsequent calls to the debounced function will return the result of the last
-`fn` call.
-
-```js
-// sometimes less is more
-var lazyRedraw = debounce(redraw, 300);
-foo.on.resize.add(lazyRedraw);
-```
-
-In this visualization, `|` is a debounced-function call and `X` is the actual
-callback execution:
-
-    Default
-    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
-                             X                                 X
-
-    Debounced with `isAsap == true`:
-    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
-    X                                 X
-
-You also have the option to cancel the debounced call if it didn't happen yet:
-
-```js
-lazyRedraw();
-// lazyRedraw won't be called since `cancel` was called before the `delay`
-lazyRedraw.cancel();
-```
-
-See: [`throttle()`](#throttle)
-
-
-## func(name):Function
-
-Returns a function that calls a method with given `name` on supplied object.
-Useful for iteration methods like `array/map` and `array/forEach`.
-
-See: [`prop()`](#prop)
-
-```js
-// will call the method `getName()` for each `user`
-var names = map(users, func('getName'));
-```
-
-
-
-## identity(val):*
-
-Returns the first argument provided to it.
-
-```js
-identity(3);     // 3
-identity(1,2,3); // 1
-identity('foo'); // "foo"
-```
-
-
-
-## partial(fn, [...args]):Function
-
-Return a partially applied function supplying default arguments.
-
-This method is similar to [`bind`](#bind), except it does not alter the this
-binding.
-
-### Arguments
-
- 1. `fn` (Function)    : Target Function
- 2. `[...args]` (*)    : Arguments (0...n arguments)
-
-See: [`bind()`](#bind)
-
-```js
-function add(a, b){ return a + b }
-var add10 = partial(add, 10);
-console.log( add10(2) ); // 12
-```
-
-
-
-## prop(name):Function
-
-Returns a function that gets a property with given `name` from supplied object.
-Useful for using in conjunction with `array/map` and/or for creating getters.
-
-See: [`array/pluck()`](array.html#pluck)
-
-```js
-var users = [{name:"John", age:21}, {name:"Jane", age:25}];
-// ["John", "Jane"]
-var names = map(users, prop('name'));
-```
-
-
-
-## series(...fn):Function
-
-Returns a function that will execute all the supplied functions in order and
-passing the same parameters to all of them. Useful for combining multiple
-`array/forEach` into a single one and/or for debugging.
-
-```js
-// call `console.log()` and `doStuff()` for each item item in the array
-forEach(arr, series(console.log, doStuff));
-```
-
-
-
-## throttle(fn, interval):Function
-
-Creates a function that, when executed, will only call the `fn` function at
-most once per every `interval` milliseconds.
-
-If the throttled function is invoked more than once during the wait timeout,
-`fn` will also be called on the trailing edge of the timeout.
-
-Subsequent calls to the throttled function will return the result of the last
-`fn` call.
-
-```js
-// sometimes less is more
-var lazyRedraw = throttle(redraw, 300);
-foo.on.resize.add(lazyRedraw);
-```
-
-In this visualization, `|` is a throttled-function call and `X` is the actual
-`fn` execution:
-
-    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
-    X    X    X    X    X    X        X    X    X    X    X    X
-
-You also have the option to cancel the throttled call if it didn't happen yet:
-
-```js
-lazyRedraw();
-setTimeout(function(){
-    lazyRedraw();
-    // lazyRedraw will be called only once since `cancel` was called before
-    // the `interval` for 2nd call completed
-    lazyRedraw.cancel();
-}, 250);
-```
-
-See: [`debounce()`](#debounce)
-
-
-## timeout(fn, millis, context, [...args]):Number
-
-Functions as a wrapper for `setTimeout`. Calls a the function `fn` after a given delay `millis` in milliseconds.
-The function is called within the specified context. The return value can be used to clear the timeout using `clearTimeout`.
-
-```js
-var id = timeout(doStuff, 300, this);
-
-clearTimeout(id);
-```
-
-## times(n, callback, [context]):void
-
-Iterates over a callback `n` times.
-
-### Arguments
-
- 1. `n` (Number)           : Number of iterations
- 2. `callback` (Function)  : Closure executed for every iteration
- 3. `context` (Object)     : Execution context (object used as `this`)
-
-```js
-var output = '';
-times(5, function(i) {
-    output += i.toString();
-});
-// output: 01234
-```
-
-## wrap(fn, wrapper):Function
-
-Wraps the first `fn` inside of the `wrapper` function, passing it as the first argument. This allows the `wrapper` to execute code before and after the `fn` runs, adjust the arguments, and execute it conditionally.
-
-```js
-var hello = function(name) { return "hello: " + name; };
-hello = wrap(hello, function(func) {
-  return "before, " + func("moe") + ", after";
-});
-hello();
-// output: 'before, hello: moe, after'
-```
-
-See: [`partial()`](#partial)
--------------------------------------------------------------------------------
-
-For more usage examples check specs inside `/tests` folder. Unit tests are the
-best documentation you can get...
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/number.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/number.md
deleted file mode 100644 (file)
index 1b76963..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-# number #
-
-Number utilities.
-
-
-## abbreviate(val[, nDecimalDigits, dictionary]):String
-
-Abbreviate number to thousands (K), millions (M) or billions (B).
-
-The default value for `nDecimalDigits` is `1`.
-
-### Example
-
-    abbreviate(123456);     // "123.5K"
-    abbreviate(12345678);   // "12.3M"
-    abbreviate(1234567890); // "1.2B"
-
-You can set the amount of decimal digits (default is `1`):
-
-    abbreviate(543);    // "0.5K"
-    abbreviate(543, 1); // "0.5K"
-    abbreviate(543, 2); // "0.54K"
-    abbreviate(543, 3); // "0.543K"
-
-You can customize the abbreviation by passing a custom "dictionary":
-
-    var _ptbrDict = {
-        thousands : ' mil',
-        millions : ' Mi',
-        billions : ' Bi'
-    };
-    function customAbbr(val) {
-        return abbreviate(val, 1, _ptbrDict);
-    }
-
-    customAbbr(123456); // "123.5 mil"
-    customAbbr(12345678); // "12.3 Mi"
-    customAbbr(1234567890); // "1.2 Bi"
-
-
-
-## currencyFormat(val[, nDecimalDigits, decimalSeparator, thousandsSeparator]):String
-
-Format a number as currency.
-
-### Example:
-
-    currencyFormat(1000);              // "1,000.00"
-    currencyFormat(1000, 1);           // "1,000.0"
-    currencyFormat(1000, 2, ',', '.'); // "1.000,00"
-
-
-
-## enforcePrecision(val, nDecimalDigits):Number
-
-Enforce a specific amount of decimal digits and also fix floating point
-rounding issues.
-
-### Example:
-
-```js
-enforcePrecision(0.615, 2); // 0.62
-enforcePrecision(0.625, 2); // 0.63
-//floating point rounding "error" (rounds to odd number)
-+(0.615).toFixed(2);        // 0.61
-+(0.625).toFixed(2);        // 0.63
-```
-
-
-## isNaN(val):Boolean
-
-ES6 `Number.isNaN()`, checks if supplied value is `NaN`.
-
-```js
-// only returns `true` for `NaN`
-isNaN(NaN);    // true
-isNaN(0 / 0);  // true
-
-// everything else is `false`
-isNaN(true);   // false
-isNaN(123);    // false
-isNaN('asd');  // false
-isNaN('NaN');  // false
-```
-
-
-## MAX_INT:Number
-
-Maximum 32-bit signed integer value. `Math.pow(2, 31) - 1`
-
-### Example:
-
-```js
-console.log( MAX_INT ); // 2147483647
-```
-
-
-## MAX_SAFE_INTEGER:Number
-
-Maximum safe integer. `Math.pow(2,53) − 1`
-
-
-## MAX_UINT:Number
-
-Maximum 32-bit unsigned integer value. `Math.pow(2, 32) - 1`
-
-### Example:
-
-```js
-console.log( MAX_UINT ); // 4294967295
-```
-
-
-## MIN_INT:Number
-
-Minimum 32-bit signed integer value. `Math.pow(2, 31) * -1`.
-
-### Example:
-
-```js
-console.log( MIN_INT ); // -2147483648
-```
-
-
-## nth(n):String
-
-Returns the "nth" of number. (`"st"`, `"nd"`, `"rd"`, `"th"`)
-
-```js
-nth(1); // "st"
-nth(2); // "nd"
-nth(12); // "th"
-nth(22); // "nd"
-nth(23); // "rd"
-nth(34); // "th"
-```
-
-See: [`ordinal()`](#ordinal)
-
-
-
-## ordinal(n):String
-
-Converts number into ordinal form (1st, 2nd, 3rd, 4th, ...)
-
-```js
-ordinal(1); // "1st"
-ordinal(2); // "2nd"
-ordinal(3); // "3rd"
-ordinal(14); // "14th"
-ordinal(21); // "21st"
-```
-
-See: [`nth()`](#nth)
-
-
-
-## pad(n, minLength[, char]):String
-
-Add padding zeros if `n.length` < `minLength`.
-
-### Example:
-
-```js
-pad(1, 5);      // "00001"
-pad(12, 5);     // "00012"
-pad(123, 5);    // "00123"
-pad(1234, 5);   // "01234"
-pad(12345, 5);  // "12345"
-pad(123456, 5); // "123456"
-
-// you can also specify the "char" used for padding
-pad(12, 5, '_'); // "___12"
-```
-
-see: [string/lpad](./string.html#lpad)
-
-
-
-## rol(val, shift):Number
-
-Bitwise circular shift left.
-
-More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
-
-
-
-## ror(val, shift):Number
-
-Bitwise circular shift right.
-
-More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
-
-
-
-## sign(val):Number
-
-Returns `-1` if value is negative, `0` if the value is `0` and `1` if value is positive. Useful for
-multiplications.
-
-```js
-sign(-123); // -1
-sign(123);  // 1
-sign(0);    // 0
-```
-
-
-
-## toInt(val):Number
-
-"Convert" value into an 32-bit integer.  Works like `Math.floor` if `val > 0` and
-`Math.ceil` if `val < 0`.
-
-**IMPORTANT:** val will wrap at [number/MIN_INT](#MIN_INT) and
-[number/MAX_INT](#MAX_INT).
-
-Created because most people don't know bitwise operations and also because this
-feature is commonly needed.
-
-[Perf tests](http://jsperf.com/vs-vs-parseint-bitwise-operators/7)
-
-### Example:
-
-```js
-toInt(1.25);   // 1
-toInt(0.75);   // 0
-toInt(-0.55);  // 0
-toInt(-5.0001) // -5
-```
-
-
-
-## toUInt(val):Number
-
-"Convert" value into an 32-bit unsigned integer.
-
-Works like AS3#uint().
-
-**IMPORTANT:** val will wrap at 2^32.
-
-### Example:
-
-```js
-toUInt(1.25);                 // 1
-toUInt(0.75);                 // 0
-toUInt(-0.55);                // 0
-toUInt(-5.0001);              // 4294967291
-toUInt(Math.pow(2,32) - 0.5); // 4294967295
-toUInt(Math.pow(2,32) + 0.5); // 0
-```
-
-
-## toUInt31(val):Number
-
-"Convert" value into an 31-bit unsigned integer (since 1 bit is used for sign).
-
-Useful since all bitwise operators besides `>>>` treat numbers as signed
-integers.
-
-**IMPORTANT:** val will wrap at 2^31 and negative numbers will be treated as
-`zero`.
-
-### Example:
-
-```js
-toUInt31(1.25);                 // 1
-toUInt31(0.75);                 // 0
-toUInt31(-0.55);                // 0
-toUInt31(-5.0001);              // 0
-toUInt31(Math.pow(2,31) - 0.5); // 21474836470
-toUInt31(Math.pow(2,31) + 0.5); // 0
-```
-
-
--------------------------------------------------------------------------------
-
-For more usage examples check specs inside `/tests` folder. Unit tests are the
-best documentation you can get...
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/object.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/doc/object.md
deleted file mode 100644 (file)
index 1e53eb0..0000000
+++ /dev/null
@@ -1,793 +0,0 @@
-# object #
-
-Object utilities.
-
-
-
-## bindAll(obj, [...methodNames]):void
-
-Bind methods of the target object to always execute on its own context
-(ovewritting the original function).
-
-See: [function/bind](./function.html#bind)
-
-```js
-var view = {
-    name: 'Lorem Ipsum',
-    logNameOnClick: function() {
-        console.log(this.name);
-    }
-};
-
-// binds all methods by default
-bindAll(view);
-jQuery('#docs').on('click', view.logNameOnClick);
-```
-
-You can also specify the list of methods that you want to bind (in case you
-just want to bind a few of them).
-
-```js
-// only the listed methods will be bound to `obj` context
-bindAll(obj, 'logNameOnClick', 'doAwesomeStuffOnDrag');
-```
-
-
-
-## contains(obj, value):Boolean
-
-Similar to [Array/contains](array.html#contains). Checks if Object contains
-value.
-
-```js
-var obj = {
-    a: 1,
-    b: 2,
-    c: 'bar'
-};
-contains(obj, 2);      // true
-contains(obj, 'foo');  // false
-```
-
-
-
-## deepFillIn(target, ...objects):Object
-
-Fill missing properties recursively.
-
-It's different from `deepMixIn` since it won't override any existing property.
-It's also different from `merge` since it won't clone child objects during the
-process.
-
-It returns the target object and mutates it in place.
-
-See: [`fillIn()`](#fillIn), [`deepMixIn()`](#deepMixIn), [`merge()`](#merge)
-
-```js
-var base = {
-    foo : {
-        bar : 123
-    },
-    lorem : 'ipsum'
-};
-var options = deepFillIn({foo : { baz : 45 }, lorem : 'amet'}, base);
-// > {foo: {bar:123, baz : 45}, lorem : 'amet'}
-```
-
-
-
-## deepMatches(target, pattern):Boolean
-
-Recursively checks if object contains all properties/value pairs. When both
-the target and pattern values are arrays, it checks that the target value
-contain matches for all the items in the pattern array (independent of order).
-
-```js
-var john = {
-    name: 'John',
-    age: 22,
-    pets: [
-        { type: 'cat', name: 'Grumpy Cat' },
-        { type: 'dog', name: 'Hawk' }
-    ]
-};
-
-deepMatches(john, { name: 'John' }); // true
-deepMatches(john, { age: 21 }); // false
-deepMatches(john, { pets: [ { type: 'cat' } ] }); // true
-deepMatches(john, { pets: [ { name: 'Hawk' } ] }); // true
-deepMatches(john, { pets: [ { name: 'Hairball' } ] }); // false
-```
-
-See [`matches()`](#matches)
-
-
-
-## deepMixIn(target, ...objects):Object
-
-Mixes objects into the target object, recursively mixing existing child objects
-as well.
-
-It will only recursively mix objects if both (existing and new) values are
-plain objects.
-
-Returns the target object. Like [`merge()`](#merge), but mutates the target
-object, and does not clone child objects.
-
-```js
-var target = {
-    foo: {
-        name: "foo",
-        id: 1
-    }
-};
-
-deepMixIn(target, { foo: { id: 2 } });
-console.log(target); // { foo: { name: "foo", id: 2 } }
-```
-
-See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
-
-
-
-## equals(a, b, [callback]):Boolean
-
-Tests whether two objects contain the same keys and values.
-
-`callback` specifies the equality comparison function used to compare the
-values. It defaults to using [lang/is](lang.html#is).
-
-It will only check the keys and values contained by the objects; it will not
-check the objects' prototypes. If either of the values are not objects, they
-will be compared using the `callback` function.
-
-```js
-equals({}, {}); // true
-equals({ a: 1 }, { a: 1 }); // true
-equals({ a: 1 }, { a: 2 }); // false
-equals({ a: 1, b: 2 }, { a: 1 }); // false
-equals({ a: 1 }, { a: 1, b: 2 }); // false
-equals(null, null); // true
-equals(null, {}); // false
-equals({ a: 1 }, { a: '1' }, function(a, b) { return a == b; }); // true
-```
-
-See: [array/equals](array.html#equals), [lang/deepEquals](lang.html#deepEquals)
-
-
-## every(obj, callback, [thisObj]):Boolean
-
-Similar to [Array/every](array.html#every). Tests whether all properties in the
-object pass the test implemented by the provided callback.
-
-```js
-var obj = {
-    a: 1,
-    b: 2,
-    c: 3,
-    d: 'string'
-};
-
-every(obj, isNumber); // false
-```
-
-
-
-## fillIn(obj, ...default):Object
-
-Fill in missing properties in object with values from the *defaults* objects.
-
-    var base = {
-        foo : 'bar',
-        num : 123
-    };
-
-    fillIn({foo:'ipsum'}, base); // {foo:'ipsum', num:123}
-
-PS: it allows merging multiple objects at once, the first ones will take
-precedence.
-
-See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
-
-
-
-## filter(obj, callback, [thisObj])
-
-Returns a new object containing all properties where `callback` returns true,
-similar to Array/filter. It does not use properties from the object's
-prototype.
-
-Callback receives the same arguments as `forOwn()`.
-
-See: [`forOwn()`](#forOwn), [`forIn()`](#forIn), [`pick()`](#pick)
-
-```js
-var obj = {
-    foo: 'value',
-    bar: 'bar value'
-};
-
-// returns { bar: 'bar value' }
-filter(obj, function(v) { return value.length > 5; });
-
-// returns { foo: 'value' }
-filter(obj, function(v, k) { return k === 'foo'; });
-```
-
-
-
-## find(obj, callback, [thisObj])
-
-Loops through all the properties in the Object and returns the first one that
-passes a truth test (callback), similar to [Array/find](array.html#find).
-Unlike Array/find, order of iteration is not guaranteed.
-
-```js
-var obj = {
-    a: 'foo',
-    b: 12
-};
-
-find(obj, isString); // 'foo'
-find(obj, isNumber); // 12
-```
-
-
-
-## forIn(obj, callback[, thisObj])
-
-Iterate over all properties of an Object, similar to
-[Array/forEach](array.html#forEach).
-
-It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
-It **will** iterate over inherited (enumerable) properties from the prototype.
-
-It allows exiting the iteration early by returning `false` on the callback.
-
-See: [`forOwn()`](#forOwn), [`keys()`](#keys), [`values()`](#values)
-
-### Callback arguments
-
-Callback will receive the following arguments:
-
- 1. Property Value (*)
- 2. Key name (String)
- 3. Target object (Object)
-
-### Example
-
-```js
-function Foo(){
-    this.foo = 1;
-    this.bar = 2;
-}
-
-Foo.prototype.lorem = 4;
-
-var obj = new Foo();
-
-var result = 0;
-var keys = [];
-
-forIn(obj, function(val, key, o){
-    result += val;
-    keys.push(key);
-});
-
-console.log(result); // 7
-console.log(keys);   // ['foo', 'bar', 'lorem']
-```
-
-
-
-## forOwn(obj, callback[, thisObj])
-
-Iterate over all own properties from an Object, similar to
-[Array/forEach](array.html#forEach).
-
-It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
-Notice that it **won't** iterate over properties from the prototype.
-
-It allows exiting the iteration early by returning `false` on the callback.
-
-See: [`forIn()`](#forIn), [`keys()`](#keys), [`values()`](#values)
-
-### Callback arguments
-
-Callback will receive the following arguments:
-
- 1. Property Value (*)
- 2. Key name (String)
- 3. Target object (Object)
-
-### Example
-
-```js
-function Foo(){
-    this.foo = 1;
-    this.bar = 2;
-}
-
-// will be ignored
-Foo.prototype.lorem = 4;
-
-var obj = new Foo();
-
-var result = 0;
-var keys = [];
-
-forOwn(obj, function(val, key, o){
-    result += val;
-    keys.push(key);
-});
-
-console.log(result); // 3
-console.log(keys);   // ['foo', 'bar']
-```
-
-
-
-## functions(obj):Array
-
-Returns a sorted list of all enumerable properties that have function values
-(including inherited properties).
-
-```js
-var obj = {
-    foo : function(){},
-    bar : 'baz'
-};
-functions(obj); // ['foo']
-```
-
-
-
-## get(obj, propName):*
-
-Returns nested property value. Will return `undefined` if property doesn't
-exist.
-
-See: [`set()`](#set), [`namespace()`](#namespace), [`has()`](#has)
-
-```js
-var lorem = {
-        ipsum : {
-            dolor : {
-                sit : 'amet'
-            }
-        }
-    };
-
-get(lorem, 'ipsum.dolor.sit'); // "amet"
-get(lorem, 'foo.bar');         // undefined
-```
-
-
-
-## has(obj, propName):Boolean
-
-Checks if object contains a child property. Useful for cases where you need to
-check if an object contain a *nested* property. It will get properties
-inherited by the prototype.
-
-see: [`hasOwn()`](#hasOwn), [`get()`](#get)
-
-```js
-var a = {
-        b : {
-            c : 123
-        }
-    };
-
-has(a, 'b.c');   // true
-has(a, 'foo.c'); // false
-```
-
-### Common use case
-
-```js
-if( has(a, 'foo.c') ){ // false
-    // ...
-}
-
-if( a.foo.c ){ // ReferenceError: `foo` is not defined
-    // ...
-}
-```
-
-
-
-## hasOwn(obj, propName):Boolean
-
-Safer `Object.hasOwnProperty`. Returns a boolean indicating whether the object
-has the specified property.
-
-see: [`has()`](#has)
-
-```js
-var obj = {
-    foo: 1,
-    hasOwnProperty : 'bar'
-};
-
-obj.hasOwnProperty('foo'); // ERROR! hasOwnProperty is not a function
-
-hasOwn(obj, 'foo');            // true
-hasOwn(obj, 'hasOwnProperty'); // true
-hasOwn(obj, 'toString');       // false
-```
-
-
-
-## keys(obj):Array
-
-Returns an array of all own enumerable properties found upon a given object.
-It will use the native `Object.keys` if present.
-
-PS: it won't return properties from the prototype.
-
-See: [`forOwn()`](#forOwn), [`values()`](#values)
-
-```js
-var obj = {
-    foo : 1,
-    bar : 2,
-    lorem : 3
-};
-keys(obj); // ['foo', 'bar', 'lorem']
-```
-
-
-
-## map(obj, callback, [thisObj]):Object
-
-Returns a new object where the property values are the result of calling the
-callback for each property in the original object, similar to Array/map.
-
-The callback function receives the same arguments as in `forOwn()`.
-
-See: [`forOwn()`](#forOwn)
-
-```js
-var obj = { foo: 1, bar: 2 },
-    data = { foo: 0, bar: 1 };
-
-map(obj, function(v) { return v + 1; }); // { foo: 2, bar: 3 }
-map(obj, function(v, k) { return k; }); // { foo: "foo", bar: "bar" }
-map(obj, function(v, k) { return this[k]; }, data); // { foo: 0, bar: 1 }
-```
-
-
-
-## matches(obj, props):Boolean
-
-Checks if object contains all properties/values pairs. Useful for validation
-and filtering.
-
-```js
-var john = {age:25, hair:'long', beard:true};
-var mark = {age:27, hair:'short', beard:false};
-var hippie = {hair:'long', beard:true};
-matches(john, hippie); // true
-matches(mark, hippie); // false
-```
-
-See [`deepMatches()`](#deepMatches)
-
-
-
-## merge(...objects):Object
-
-Deep merges objects. Note that objects and properties will be cloned during the
-process to avoid undesired side effects. It return a new object and won't
-affect source objects.
-
-```js
-var obj1 = {a: {b: 1, c: 1, d: {e: 1, f: 1}}};
-var obj2 = {a: {b: 2, d : {f : 'yeah'} }};
-
-merge(obj1, obj2); // {a: {b : 2, c : 1, d : {e : 1, f : 'yeah'}}}
-```
-
-See: [`deepMixIn()`](#deepMixIn), [`deepFillIn()`](#deepFillIn)
-
-
-
-## max(obj[, iterator]):*
-
-Returns maximum value inside object or use a custom iterator to define how
-items should be compared. Similar to [Array/max](array.html#max).
-
-See: [`min()`](#min)
-
-```js
-max({a: 100, b: 2, c: 1, d: 3, e: 200}); // 200
-max({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
-    return val.length;
-}); // 'lorem'
-```
-
-
-
-## min(obj[, iterator]):*
-
-Returns minimum value inside object or use a custom iterator to define how
-items should be compared. Similar to [Array/min](array.html#min).
-
-See: [`max()`](#max)
-
-```js
-min({a: 100, b: 2, c: 1, d: 3, e: 200}); // 1
-min({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
-    return val.length;
-}); // 'foo'
-```
-
-
-
-## mixIn(target, ...objects):Object
-
-Combine properties from all the objects into first one.
-
-This method affects target object in place, if you want to create a new Object
-pass an empty object as first parameter.
-
-### Arguments
-
- 1. `target` (Object)        : Target Object.
- 2. `...objects` (...Object) : Objects to be combined (0...n objects).
-
-### Example
-
-```js
-var a = {foo: "bar"};
-var b = {lorem: 123};
-
-mixIn({}, a, b); // {foo: "bar", lorem: 123}
-console.log(a);  // {foo: "bar"}
-
-mixIn(a, b);     // {foo: "bar", lorem: 123}
-console.log(a);  // {foo: "bar", lorem: 123}
-```
-
-See: [`fillIn()`](#fillIn), [`merge()`](#merge)
-
-
-
-
-## namespace(obj, propName):Object
-
-Creates an empty object inside namespace if not existent. Will return created
-object or existing object.
-
-See: [`get()`](#get), [`set()`](#set)
-
-```js
-var obj = {};
-namespace(obj, 'foo.bar'); // {}
-console.log(obj);          // {foo:{bar:{}}}
-```
-
-
-## omit(obj, ...keys):Object
-
-Return a copy of the object without the blacklisted keys.
-
-See: [`filter()`](#filter)
-
-```js
-var user = {
-    firstName : 'John',
-    lastName : 'Doe',
-    dob : '1985/07/23',
-    gender : 'male'
-};
-
-// can pass an array of keys as second argument
-var keys = ['firstName', 'dob']
-omit(user, keys); // {lastName : 'Doe', gender : 'male'}
-
-// or multiple arguments
-omit(user, 'firstName', 'lastName'); // {dob : '1985/07/23', gender : 'male'}
-```
-
-
-
-## pick(obj, ...keys):Object
-
-Return a copy of the object that contains only the whitelisted keys.
-
-See: [`filter()`](#filter)
-
-```js
-var user = {
-    firstName : 'John',
-    lastName : 'Doe',
-    dob : '1985/07/23',
-    gender : 'male'
-};
-
-// can pass an array of keys as second argument
-var keys = ['firstName', 'dob']
-pick(user, keys); // {firstName:"John", dob: "1985/07/23"}
-
-// or multiple arguments
-pick(user, 'firstName', 'lastName'); // {firstName:"John", lastName: "Doe"}
-```
-
-
-
-## pluck(obj, propName):Object
-
-Extract an object containing property values with keys as they appear in the
-passed object.
-
-```js
-var users = {
-    first: {
-        name : 'John',
-        age : 21
-    },
-    second: {
-        name : 'Mary',
-        age : 25
-    }
-};
-
-pluck(users, 'name'); // {first: 'John', second: 'Mary'} );
-pluck(users, 'age');  // {first: 21, second: 25} );
-```
-
-
-
-## reduce(obj, callback, initial, [thisObj]):*
-
-Similar to [Array/reduce](array.html#reduce).
-
-Apply a function against an accumulator and each property of the object (order
-is undefined) as to reduce it to a single value.
-
-```js
-var obj = {a: 1, b: 2, c: 3, d: 4};
-
-function sum(prev, cur, key, list) {
-    compare1.push(prev);
-    return prev + cur;
-}
-
-reduce(obj, sum); // 10
-```
-
-
-
-## reject(obj, callback, thisObj):Object
-
-Returns a new object containing all properties where `callback` returns true,
-similar to [Array/reject](array.html#reject). It does not use properties from
-the object's prototype. Opposite of [`filter()`](#filter).
-
-See [`filter()`](#filter)
-
-### Example
-
-```js
-var obj = {a: 1, b: 2, c: 3, d: 4, e: 5};
-reject(obj, function(x) { return (x % 2) !== 0; }); // {b: 2, d: 4}
-```
-
-
-
-## values(obj):Array
-
-Returns an array of all own enumerable properties values found upon a given object.
-
-PS: it won't return properties from the prototype.
-
-See: [`forOwn()`](#forOwn), [`keys()`](#keys)
-
-```js
-var obj = {
-    foo : 1,
-    bar : 2,
-    lorem : 3
-};
-values(obj); // [1, 2, 3]
-```
-
-
-
-## set(obj, propName, value)
-
-Sets a nested property value.
-
-See: [`get()`](#get), [`namespace()`](#namespace)
-
-```js
-var obj = {};
-set(obj, 'foo.bar', 123);
-console.log(obj.foo.bar); // 123
-console.log(obj);         // {foo:{bar:123}}
-```
-
-
-
-## size(obj):Number
-
-Returns the count of own enumerable properties found upon a given object.
-
-PS: it won't return properties from the prototype.
-
-See: [`forOwn()`](#forOwn), [`keys()`](#keys)
-
-```js
-var obj = {
-    foo : 1,
-    bar : 2,
-    lorem : 3
-};
-size(obj); // 3
-```
-
-
-
-## some(obj, callback, [thisObj]):Boolean
-
-Similar to [Array/some](array.html#some). Tests whether any properties in the
-object pass the test implemented by the provided callback.
-
-```js
-var obj = {
-    a: 1,
-    b: 2,
-    c: 3,
-    d: 'string'
-};
-
-some(obj, isNumber); // true
-```
-
-
-
-## unset(obj, propName):Boolean
-
-Delete object property if existent and returns a boolean indicating succes. It
-will also return `true` if property doesn't exist.
-
-Some properties can't be deleted, to understand why [check this
-article](http://perfectionkills.com/understanding-delete/).
-
-See: [`set()`](#set)
-
-```js
-var lorem = {
-        ipsum : {
-            dolor : {
-                sit : 'amet'
-            }
-        }
-    };
-
-unset(lorem, 'ipsum.dolor.sit'); // true
-console.log(lorem.ipsum.dolor);  // {}
-unset(lorem, 'foo.bar');         // true
-```
-
-
-
-## result(object, property):Mixed
-
-Evaluates an objects property and returns result.
-
-```js
-var person = {
-    name: 'john',
-
-    mood: function() {
-        // some dynamic calculated property.
-        return 'happy';
-    }
-};
-
-var name = result(person, 'name'), // john
-    mood = result(person, 'mood'); // happy
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/index.js
deleted file mode 100644 (file)
index a32126a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**@license
- * mout v0.11.0 | http://moutjs.com | MIT license
- */
-
-
-//automatically generated, do not edit!
-//run `node build` instead
-module.exports = {
-    'VERSION' : '0.11.0',
-    'array' : require('./array'),
-    'collection' : require('./collection'),
-    'date' : require('./date'),
-    'function' : require('./function'),
-    'lang' : require('./lang'),
-    'math' : require('./math'),
-    'number' : require('./number'),
-    'object' : require('./object'),
-    'queryString' : require('./queryString'),
-    'random' : require('./random'),
-    'string' : require('./string'),
-    'time' : require('./time'),
-    'fn' : require('./function')
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/object.js
deleted file mode 100644 (file)
index cd431ff..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-//automatically generated, do not edit!
-//run `node build` instead
-module.exports = {
-    'bindAll' : require('./object/bindAll'),
-    'contains' : require('./object/contains'),
-    'deepFillIn' : require('./object/deepFillIn'),
-    'deepMatches' : require('./object/deepMatches'),
-    'deepMixIn' : require('./object/deepMixIn'),
-    'equals' : require('./object/equals'),
-    'every' : require('./object/every'),
-    'fillIn' : require('./object/fillIn'),
-    'filter' : require('./object/filter'),
-    'find' : require('./object/find'),
-    'forIn' : require('./object/forIn'),
-    'forOwn' : require('./object/forOwn'),
-    'functions' : require('./object/functions'),
-    'get' : require('./object/get'),
-    'has' : require('./object/has'),
-    'hasOwn' : require('./object/hasOwn'),
-    'keys' : require('./object/keys'),
-    'map' : require('./object/map'),
-    'matches' : require('./object/matches'),
-    'max' : require('./object/max'),
-    'merge' : require('./object/merge'),
-    'min' : require('./object/min'),
-    'mixIn' : require('./object/mixIn'),
-    'namespace' : require('./object/namespace'),
-    'omit' : require('./object/omit'),
-    'pick' : require('./object/pick'),
-    'pluck' : require('./object/pluck'),
-    'reduce' : require('./object/reduce'),
-    'reject' : require('./object/reject'),
-    'result' : require('./object/result'),
-    'set' : require('./object/set'),
-    'size' : require('./object/size'),
-    'some' : require('./object/some'),
-    'unset' : require('./object/unset'),
-    'values' : require('./object/values')
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/package.json
deleted file mode 100644 (file)
index 69c1409..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-{
-  "_args": [
-    [
-      "mout@https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "mout@https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-  "_id": "mout@https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-k83weRrIokhzzutCpbAWt8hnq+4=",
-  "_location": "/grunt-standard/standard-format/esformatter/mout",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "mout@https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-    "name": "mout",
-    "escapedName": "mout",
-    "rawSpec": "https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/mout/-/mout-0.11.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter",
-    "/grunt-standard/standard-format/esformatter/rocambole-indent"
-  ],
-  "_spec": "https://registry.npmjs.org/mout/-/mout-0.11.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/mout/mout/issues/"
-  },
-  "contributors": [
-    {
-      "name": "Adam Nowotny"
-    },
-    {
-      "name": "André Cruz",
-      "email": "amdfcruz@gmail.com"
-    },
-    {
-      "name": "Conrad Zimmerman",
-      "url": "http://www.conradz.com"
-    },
-    {
-      "name": "Friedemann Altrock",
-      "email": "frodenius@gmail.com"
-    },
-    {
-      "name": "Igor Almeida",
-      "email": "igor.p.almeida@gmail.com"
-    },
-    {
-      "name": "Jarrod Overson",
-      "url": "http://jarrodoverson.com"
-    },
-    {
-      "name": "Miller Medeiros",
-      "email": "contact@millermedeiros.com",
-      "url": "http://blog.millermedeiros.com"
-    },
-    {
-      "name": "Mathias Paumgarten",
-      "email": "mail@mathias-paumgarten.com"
-    },
-    {
-      "name": "Zach Shipley"
-    }
-  ],
-  "description": "Modular Utilities",
-  "devDependencies": {
-    "commander": "~1.0.5",
-    "handlebars": "~1.0.6",
-    "istanbul": "~0.1.27",
-    "jasmine-node": "~1.2.2",
-    "jshint": "2.x",
-    "mdoc": "~0.3.2",
-    "nodefy": "*",
-    "regenerate": "~0.5.4",
-    "requirejs": "2.x",
-    "rimraf": "2.2.2",
-    "rocambole": "~0.2.3"
-  },
-  "directories": {
-    "doc": "./doc"
-  },
-  "homepage": "http://moutjs.com/",
-  "keywords": [
-    "utilities",
-    "functional",
-    "amd-utils",
-    "stdlib"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "http://www.opensource.org/licenses/mit-license.php"
-    }
-  ],
-  "main": "./index.js",
-  "name": "mout",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/mout/mout.git"
-  },
-  "scripts": {
-    "pretest": "node build pkg",
-    "test": "istanbul test tests/runner.js --hook-run-in-context"
-  },
-  "testling": {
-    "preprocess": "node build testling",
-    "browsers": {
-      "ie": [
-        7,
-        8,
-        9,
-        10
-      ],
-      "firefox": [
-        17,
-        "nightly"
-      ],
-      "chrome": [
-        23,
-        "canary"
-      ],
-      "opera": [
-        12,
-        "next"
-      ],
-      "safari": [
-        5.1,
-        6
-      ],
-      "iphone": [
-        6
-      ],
-      "ipad": [
-        6
-      ]
-    },
-    "scripts": [
-      "tests/lib/jasmine/jasmine.js",
-      "tests/lib/jasmine/jasmine.async.js",
-      "tests/lib/jasmine/jasmine-tap.js",
-      "tests/lib/requirejs/require.js",
-      "tests/testling/src.js",
-      "tests/testling/specs.js",
-      "tests/runner.js"
-    ]
-  },
-  "version": "https://registry.npmjs.org/mout/-/mout-0.11.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/decode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/decode.js
deleted file mode 100644 (file)
index 1c15785..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var typecast = require('../string/typecast');
-var isString = require('../lang/isString');
-var isArray = require('../lang/isArray');
-var hasOwn = require('../object/hasOwn');
-
-    /**
-     * Decode query string into an object of keys => vals.
-     */
-    function decode(queryStr, shouldTypecast) {
-        var queryArr = (queryStr || '').replace('?', '').split('&'),
-            count = -1,
-            length = queryArr.length,
-            obj = {},
-            item, pValue, pName, toSet;
-
-        while (++count < length) {
-            item = queryArr[count].split('=');
-            pName = item[0];
-            if (!pName || !pName.length){
-                continue;
-            }
-            pValue = shouldTypecast === false ? item[1] : typecast(item[1]);
-            toSet = isString(pValue) ? decodeURIComponent(pValue) : pValue;
-            if (hasOwn(obj,pName)){
-                if(isArray(obj[pName])){
-                    obj[pName].push(toSet);
-                } else {
-                    obj[pName] = [obj[pName],toSet];
-                }
-            } else {
-                obj[pName] = toSet;
-           }
-        }
-        return obj;
-    }
-
-    module.exports = decode;
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/getQuery.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/queryString/getQuery.js
deleted file mode 100644 (file)
index 5194af2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-    /**
-     * Gets full query as string with all special chars decoded.
-     */
-    function getQuery(url) {
-        url = url.replace(/#.*/, ''); //removes hash (to avoid getting hash query)
-        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
-        return (queryString)? decodeURIComponent(queryString[0]) : '';
-    }
-
-    module.exports = getQuery;
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array.js
deleted file mode 100644 (file)
index ee5719f..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-define(function(require){
-
-//automatically generated, do not edit!
-//run `node build` instead
-return {
-    'append' : require('./array/append'),
-    'collect' : require('./array/collect'),
-    'combine' : require('./array/combine'),
-    'compact' : require('./array/compact'),
-    'contains' : require('./array/contains'),
-    'difference' : require('./array/difference'),
-    'equals' : require('./array/equals'),
-    'every' : require('./array/every'),
-    'filter' : require('./array/filter'),
-    'find' : require('./array/find'),
-    'findIndex' : require('./array/findIndex'),
-    'findLast' : require('./array/findLast'),
-    'findLastIndex' : require('./array/findLastIndex'),
-    'flatten' : require('./array/flatten'),
-    'forEach' : require('./array/forEach'),
-    'groupBy' : require('./array/groupBy'),
-    'indexOf' : require('./array/indexOf'),
-    'insert' : require('./array/insert'),
-    'intersection' : require('./array/intersection'),
-    'invoke' : require('./array/invoke'),
-    'join' : require('./array/join'),
-    'last' : require('./array/last'),
-    'lastIndexOf' : require('./array/lastIndexOf'),
-    'map' : require('./array/map'),
-    'max' : require('./array/max'),
-    'min' : require('./array/min'),
-    'pick' : require('./array/pick'),
-    'pluck' : require('./array/pluck'),
-    'range' : require('./array/range'),
-    'reduce' : require('./array/reduce'),
-    'reduceRight' : require('./array/reduceRight'),
-    'reject' : require('./array/reject'),
-    'remove' : require('./array/remove'),
-    'removeAll' : require('./array/removeAll'),
-    'shuffle' : require('./array/shuffle'),
-    'slice' : require('./array/slice'),
-    'some' : require('./array/some'),
-    'sort' : require('./array/sort'),
-    'sortBy' : require('./array/sortBy'),
-    'split' : require('./array/split'),
-    'take' : require('./array/take'),
-    'toLookup' : require('./array/toLookup'),
-    'union' : require('./array/union'),
-    'unique' : require('./array/unique'),
-    'xor' : require('./array/xor'),
-    'zip' : require('./array/zip')
-};
-
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/array/flatten.js
deleted file mode 100644 (file)
index 42e87f4..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-define(['../lang/isArray', './append'], function (isArray, append) {
-
-    /*
-     * Helper function to flatten to a destination array.
-     * Used to remove the need to create intermediate arrays while flattening.
-     */
-    function flattenTo(arr, result, level) {
-        if (arr == null) {
-            return result;
-        } else if (level === 0) {
-            append(result, arr);
-            return result;
-        }
-
-        var value,
-            i = -1,
-            len = arr.length;
-        while (++i < len) {
-            value = arr[i];
-            if (isArray(value)) {
-                flattenTo(value, result, level - 1);
-            } else {
-                result.push(value);
-            }
-        }
-        return result;
-    }
-
-    /**
-     * Recursively flattens an array.
-     * A new array containing all the elements is returned.
-     * If `shallow` is true, it will only flatten one level.
-     */
-    function flatten(arr, level) {
-        level = level == null? -1 : level;
-        return flattenTo(arr, [], level);
-    }
-
-    return flatten;
-
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/index.js
deleted file mode 100644 (file)
index cb3ed87..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**@license
- * mout v0.11.0 | http://moutjs.com | MIT license
- */
-define(function(require){
-
-//automatically generated, do not edit!
-//run `node build` instead
-return {
-    'VERSION' : '0.11.0',
-    'array' : require('./array'),
-    'collection' : require('./collection'),
-    'date' : require('./date'),
-    'function' : require('./function'),
-    'lang' : require('./lang'),
-    'math' : require('./math'),
-    'number' : require('./number'),
-    'object' : require('./object'),
-    'queryString' : require('./queryString'),
-    'random' : require('./random'),
-    'string' : require('./string'),
-    'time' : require('./time'),
-    'fn' : require('./function')
-};
-
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/object.js
deleted file mode 100644 (file)
index 9b8924a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-define(function(require){
-
-//automatically generated, do not edit!
-//run `node build` instead
-return {
-    'bindAll' : require('./object/bindAll'),
-    'contains' : require('./object/contains'),
-    'deepFillIn' : require('./object/deepFillIn'),
-    'deepMatches' : require('./object/deepMatches'),
-    'deepMixIn' : require('./object/deepMixIn'),
-    'equals' : require('./object/equals'),
-    'every' : require('./object/every'),
-    'fillIn' : require('./object/fillIn'),
-    'filter' : require('./object/filter'),
-    'find' : require('./object/find'),
-    'forIn' : require('./object/forIn'),
-    'forOwn' : require('./object/forOwn'),
-    'functions' : require('./object/functions'),
-    'get' : require('./object/get'),
-    'has' : require('./object/has'),
-    'hasOwn' : require('./object/hasOwn'),
-    'keys' : require('./object/keys'),
-    'map' : require('./object/map'),
-    'matches' : require('./object/matches'),
-    'max' : require('./object/max'),
-    'merge' : require('./object/merge'),
-    'min' : require('./object/min'),
-    'mixIn' : require('./object/mixIn'),
-    'namespace' : require('./object/namespace'),
-    'omit' : require('./object/omit'),
-    'pick' : require('./object/pick'),
-    'pluck' : require('./object/pluck'),
-    'reduce' : require('./object/reduce'),
-    'reject' : require('./object/reject'),
-    'result' : require('./object/result'),
-    'set' : require('./object/set'),
-    'size' : require('./object/size'),
-    'some' : require('./object/some'),
-    'unset' : require('./object/unset'),
-    'values' : require('./object/values')
-};
-
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/decode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/decode.js
deleted file mode 100644 (file)
index 50da3f6..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-define(['../string/typecast', '../lang/isString', '../lang/isArray', '../object/hasOwn'], function (typecast, isString, isArray, hasOwn) {
-
-    /**
-     * Decode query string into an object of keys => vals.
-     */
-    function decode(queryStr, shouldTypecast) {
-        var queryArr = (queryStr || '').replace('?', '').split('&'),
-            count = -1,
-            length = queryArr.length,
-            obj = {},
-            item, pValue, pName, toSet;
-
-        while (++count < length) {
-            item = queryArr[count].split('=');
-            pName = item[0];
-            if (!pName || !pName.length){
-                continue;
-            }
-            pValue = shouldTypecast === false ? item[1] : typecast(item[1]);
-            toSet = isString(pValue) ? decodeURIComponent(pValue) : pValue;
-            if (hasOwn(obj,pName)){
-                if(isArray(obj[pName])){
-                    obj[pName].push(toSet);
-                } else {
-                    obj[pName] = [obj[pName],toSet];
-                }
-            } else {
-                obj[pName] = toSet;
-           }
-        }
-        return obj;
-    }
-
-    return decode;
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/getQuery.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/mout/src/queryString/getQuery.js
deleted file mode 100644 (file)
index aa3d99f..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-define(function () {
-
-    /**
-     * Gets full query as string with all special chars decoded.
-     */
-    function getQuery(url) {
-        url = url.replace(/#.*/, ''); //removes hash (to avoid getting hash query)
-        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
-        return (queryString)? decodeURIComponent(queryString[0]) : '';
-    }
-
-    return getQuery;
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/.npmignore
deleted file mode 100644 (file)
index 3c3629e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-node_modules
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/.npmignore
deleted file mode 100644 (file)
index 3c3629e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-node_modules
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/index.js
deleted file mode 100644 (file)
index 58c4c80..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-"use strict"
-
-var fs = require('fs')
-var path = require('path')
-var which = require('which')
-
-var PATH = getPATHKey()
-var SEPARATOR = getPATHSeparator()
-
-/**
- * Get new $PATH setting with additional paths supplied by the npm.
- *
- * @param Object options Config options Object.
- * @param Object options.env Environment to use. Default: process.env
- * @param String options.wd Working directory. Default: process.cwd()
- * @param Function fn callback function.
- */
-
-function getPath(options, fn) {
-  var wd = options.cwd = options.cwd || process.cwd()
-  var env = options.env = options.env || process.env
-  var pathArr = getPathArr(options)
-
-  whichNpm(options, function(err, npmPath) {
-    if (err) return fn(err)
-
-    // we also unshift the bundled node-gyp-bin folder so that
-    // the bundled one will be used for installing things.
-    pathArr.unshift(path.join(path.dirname(npmPath), "node-gyp-bin"))
-    if (env[PATH]) pathArr.push(env[PATH])
-    fn(null, pathArr.join(SEPARATOR))
-  })
-}
-
-/**
- * Async wrapper around `getPath`.
- */
-
-function getPathAsync(options, fn) {
-  // options is optional
-  if (options instanceof Function) fn = options, options = {}
-  // if no fn, execute as sync
-  if (!(fn instanceof Function)) return getPathSync(options)
-  options = options || {}
-  options.isSync = false
-  return getPath(options, fn)
-}
-
-/**
- * Sync wrapper around `getPath`.
- */
-
-function getPathSync(options) {
-  options = options || {}
-  options.isSync = true
-  var thePath = undefined
-  // sync magic: if sync true, callback is executed sync
-  // therefore we can set thePath from inside it before returning
-  getPath(options, function(err, foundPath) {
-    if (err) throw err
-    thePath = foundPath
-  })
-  return thePath
-}
-
-/**
- * Change environment to include npm path adjustments.
- *
- * @param Object options Config options Object.
- * @param Object options.env Environment to use. Default: process.env
- * @param String options.wd Working directory. Default: process.cwd()
- * @param Function fn callback function.
- */
-
-function setPathAsync(options, fn) {
-  // options is optional
-  if (options instanceof Function) fn = options, options = {}
-  // if no fn, execute as sync
-  if (!(fn instanceof Function)) return setPathSync(options)
-
-  getPathAsync(options, function(err, newPath) {
-    if (err) return fn(err)
-    fn(null, options.env[PATH] = newPath)
-  })
-}
-
-/**
- * Sync version of `setPathAsync`
- */
-
-function setPathSync(options) {
-  options = options || {}
-  var newPath = getPathSync(options)
-  return options.env[PATH] = newPath
-}
-
-/**
- * Generate simple parts of the npm path. Basically everything that doesn't
- * depend on potentially async operations.
- *
- * @return Array
- */
-
-function getPathArr(options) {
-  var wd = options.cwd
-  var pathArr = []
-  var p = wd.split("node_modules")
-  var acc = path.resolve(p.shift())
-
-  // first add the directory containing the `node` executable currently
-  // running, so that any lifecycle script that invoke "node" will execute
-  // this same one.
-  pathArr.unshift(path.dirname(process.execPath))
-
-  p.forEach(function (pp) {
-    pathArr.unshift(path.join(acc, "node_modules", ".bin"))
-    acc = path.join(acc, "node_modules", pp)
-  })
-  pathArr.unshift(path.join(acc, "node_modules", ".bin"))
-  return pathArr
-}
-
-/**
- * Use callback-style signature but toggle sync execution if `isSync` is true.
- * If options.npm is supplied, this will simply provide npm/bin/npm-cli.
- */
-
-function whichNpm(options, fn) {
-  var npmCli = options.npm && path.join(options.npm, 'bin', 'npm-cli.js')
-
-  if (options.isSync) {
-    fn(null, fs.realpathSync(
-      npmCli || which.sync('npm')
-    ))
-    return
-  }
-
-  if (options.npm) {
-    process.nextTick(function() {
-      fn(null, npmCli)
-    })
-    return
-  }
-
-  which('npm', function(err, npmPath) {
-    if (err) return fn(err)
-    fs.realpath(npmPath, fn)
-  })
-}
-
-/**
- * Get key to use as $PATH in environment
- */
-
-function getPATHKey() {
-  var PATH = 'PATH'
-
-  // windows calls it's path "Path" usually, but this is not guaranteed.
-  if (process.platform === "win32") {
-    PATH = "Path"
-    Object.keys(process.env).forEach(function (e) {
-      if (e.match(/^PATH$/i)) {
-        PATH = e
-      }
-    })
-  }
-  return PATH
-}
-
-/**
- * Get $PATH separator based on environment
- */
-
-function getPATHSeparator() {
-  return process.platform === "win32" ? ";" : ":"
-}
-
-module.exports = setPathAsync
-module.exports.get = getPathAsync
-module.exports.get.sync = getPathSync
-module.exports.getSync = getPathSync
-
-module.exports.set = setPathAsync
-module.exports.set.sync = setPathSync
-module.exports.setSync = setPathSync
-
-module.exports.PATH = PATH
-module.exports.SEPARATOR = SEPARATOR
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/LICENSE
deleted file mode 100644 (file)
index 19129e3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/README.md
deleted file mode 100644 (file)
index ff1eb53..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-The "which" util from npm's guts.
-
-Finds the first instance of a specified executable in the PATH
-environment variable.  Does not cache the results, so `hash -r` is not
-needed when the PATH changes.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/bin/which b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/bin/which
deleted file mode 100755 (executable)
index 8432ce2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/env node
-var which = require("../")
-if (process.argv.length < 3) {
-  console.error("Usage: which <thing>")
-  process.exit(1)
-}
-
-which(process.argv[2], function (er, thing) {
-  if (er) {
-    console.error(er.message)
-    process.exit(er.errno || 127)
-  }
-  console.log(thing)
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/package.json
deleted file mode 100644 (file)
index efd8510..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-{
-  "_args": [
-    [
-      "which@https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "which@https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-  "_id": "which@https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run/npm-path/which",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "which@https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-    "name": "which",
-    "escapedName": "which",
-    "rawSpec": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-    "saveSpec": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-    "fetchSpec": "https://registry.npmjs.org/which/-/which-1.0.9.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/npm-run/npm-path"
-  ],
-  "_spec": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me"
-  },
-  "bin": {
-    "which": "./bin/which"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/node-which/issues"
-  },
-  "description": "Like which(1) unix command. Find the first instance of an executable in the PATH.",
-  "homepage": "https://github.com/isaacs/node-which#readme",
-  "license": "ISC",
-  "main": "which.js",
-  "name": "which",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/node-which.git"
-  },
-  "version": "https://registry.npmjs.org/which/-/which-1.0.9.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/which.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/node_modules/which/which.js
deleted file mode 100644 (file)
index 2a45417..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-module.exports = which
-which.sync = whichSync
-
-var path = require("path")
-  , fs
-  , COLON = process.platform === "win32" ? ";" : ":"
-  , isExe
-  , fs = require("fs")
-
-if (process.platform == "win32") {
-  // On windows, there is no good way to check that a file is executable
-  isExe = function isExe () { return true }
-} else {
-  isExe = function isExe (mod, uid, gid) {
-    //console.error(mod, uid, gid);
-    //console.error("isExe?", (mod & 0111).toString(8))
-    var ret = (mod & 0001)
-        || (mod & 0010) && process.getgid && gid === process.getgid()
-        || (mod & 0010) && process.getuid && 0   === process.getuid()
-        || (mod & 0100) && process.getuid && uid === process.getuid()
-        || (mod & 0100) && process.getuid && 0   === process.getuid()
-    //console.error("isExe?", ret)
-    return ret
-  }
-}
-
-
-
-function which (cmd, cb) {
-  if (isAbsolute(cmd)) return cb(null, cmd)
-  var pathEnv = (process.env.PATH || "").split(COLON)
-    , pathExt = [""]
-  if (process.platform === "win32") {
-    pathEnv.push(process.cwd())
-    pathExt = (process.env.PATHEXT || ".EXE").split(COLON)
-    if (cmd.indexOf(".") !== -1) pathExt.unshift("")
-  }
-  //console.error("pathEnv", pathEnv)
-  ;(function F (i, l) {
-    if (i === l) return cb(new Error("not found: "+cmd))
-    var p = path.resolve(pathEnv[i], cmd)
-    ;(function E (ii, ll) {
-      if (ii === ll) return F(i + 1, l)
-      var ext = pathExt[ii]
-      //console.error(p + ext)
-      fs.stat(p + ext, function (er, stat) {
-        if (!er &&
-            stat &&
-            stat.isFile() &&
-            isExe(stat.mode, stat.uid, stat.gid)) {
-          //console.error("yes, exe!", p + ext)
-          return cb(null, p + ext)
-        }
-        return E(ii + 1, ll)
-      })
-    })(0, pathExt.length)
-  })(0, pathEnv.length)
-}
-
-function whichSync (cmd) {
-  if (isAbsolute(cmd)) return cmd
-  var pathEnv = (process.env.PATH || "").split(COLON)
-    , pathExt = [""]
-  if (process.platform === "win32") {
-    pathEnv.push(process.cwd())
-    pathExt = (process.env.PATHEXT || ".EXE").split(COLON)
-    if (cmd.indexOf(".") !== -1) pathExt.unshift("")
-  }
-  for (var i = 0, l = pathEnv.length; i < l; i ++) {
-    var p = path.join(pathEnv[i], cmd)
-    for (var j = 0, ll = pathExt.length; j < ll; j ++) {
-      var cur = p + pathExt[j]
-      var stat
-      try { stat = fs.statSync(cur) } catch (ex) {}
-      if (stat &&
-          stat.isFile() &&
-          isExe(stat.mode, stat.uid, stat.gid)) return cur
-    }
-  }
-  throw new Error("not found: "+cmd)
-}
-
-var isAbsolute = process.platform === "win32" ? absWin : absUnix
-
-function absWin (p) {
-  if (absUnix(p)) return true
-  // pull off the device/UNC bit from a windows path.
-  // from node's lib/path.js
-  var splitDeviceRe =
-        /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?([\\\/])?/
-    , result = splitDeviceRe.exec(p)
-    , device = result[1] || ''
-    , isUnc = device && device.charAt(1) !== ':'
-    , isAbsolute = !!result[2] || isUnc // UNC paths are always absolute
-
-  return isAbsolute
-}
-
-function absUnix (p) {
-  return p.charAt(0) === "/" || p === ""
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/package.json
deleted file mode 100644 (file)
index 36867d1..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "npm-path@https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "npm-path@https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-  "_id": "npm-path@https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-FddQ78nYgIGUxyFIHfohD73kFcU=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run/npm-path",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "npm-path@https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-    "name": "npm-path",
-    "escapedName": "npm-path",
-    "rawSpec": "https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/npm-run"
-  ],
-  "_spec": "https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Tim Oxley"
-  },
-  "bin": {
-    "npm-path": "bin/npm-path"
-  },
-  "bugs": {
-    "url": "https://github.com/timoxley/npm-path/issues"
-  },
-  "dependencies": {
-    "which": "^1.0.5"
-  },
-  "description": "Get a PATH with all executables available to npm scripts.",
-  "devDependencies": {
-    "faucet": "0.0.1",
-    "tape": "^2.12.3"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/timoxley/npm-path",
-  "keywords": [
-    "npm",
-    "run",
-    "executable"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "npm-path",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/timoxley/npm-path.git"
-  },
-  "scripts": {
-    "test": "faucet"
-  },
-  "version": "https://registry.npmjs.org/npm-path/-/npm-path-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/npm-path/test/index.js
deleted file mode 100644 (file)
index cb446d8..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-"use strict"
-
-var test = require('tape')
-
-var path = require('path')
-var fs = require('fs')
-var os = require('os')
-
-var which = require('which')
-
-var npmPath = require('../')
-
-var SEP = npmPath.SEPARATOR
-var PATH = npmPath.PATH
-
-var level0 = path.join(__dirname, 'fixtures', 'level0')
-var level1 = path.join(level0, 'node_modules', 'level1')
-var level2 = path.join(level1, 'node_modules', 'level2')
-
-var level = [level0, level1, level2]
-var binPath = level.map(function(levelPath) {
-  return path.join(levelPath, "node_modules", ".bin")
-})
-
-test('exports separator', function(t) {
-  t.ok(npmPath.SEPARATOR)
-  t.end()
-})
-
-test('exports $PATH key', function(t) {
-  t.ok(npmPath.PATH)
-  t.end()
-})
-
-test('includes current node executable dir', function(t) {
-  var level0Path = npmPath.getSync({cwd: level0})
-  t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
-  t.end()
-})
-
-test('async version works', function(t) {
-  var isAsync = false
-  npmPath.get({cwd: level0}, function(err, level0Path) {
-    t.ifError(err)
-    t.ok(isAsync)
-    t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
-    t.end()
-  })
-  isAsync = true // can only be set if above callback not synchronous
-})
-
-test('no fn == sync', function(t) {
-  var level0Path = npmPath.get({cwd: level0})
-  t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
-  t.end()
-})
-
-test('sync options is optional', function(t) {
-  var newPath = npmPath.get()
-  t.ok(newPath.indexOf(path.dirname(process.execPath) + SEP) != -1)
-  t.end()
-})
-
-test('async options is optional', function(t) {
-  var isAsync = false
-  npmPath.get(function(err, newPath) {
-    t.ifError(err)
-    t.ok(newPath.indexOf(path.dirname(process.execPath) + SEP) != -1)
-    t.ok(isAsync)
-    t.end()
-  })
-  isAsync = true // can only be set if above callback not synchronous
-})
-
-test('includes all .bin dirs in all parent node_modules folders', function(t) {
-  t.test('no nesting', function(t) {
-    var level0Path = npmPath.getSync({cwd: level[0]})
-    t.ok(level0Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
-    t.ok(level0Path.indexOf(binPath[1] + SEP) === -1, 'should not include child paths')
-    t.ok(level0Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
-    t.end()
-  })
-
-  t.test('1 level of nesting', function(t) {
-    var level1Path = npmPath.getSync({cwd: level[1]})
-    t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
-    t.ok(level1Path.indexOf(binPath[1] + SEP) != -1, 'should include level 1 .bin')
-    t.ok(level1Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
-    t.end()
-  })
-
-  t.test('2 levels of nesting', function(t) {
-    var level1Path = npmPath.getSync({cwd: level[2]})
-    t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
-    t.ok(level1Path.indexOf(binPath[1] + SEP) != -1, 'should include level 1 .bin')
-    t.ok(level1Path.indexOf(binPath[2] + SEP) != -1, 'should include level 2 .bin')
-    t.end()
-  })
-
-  t.end()
-})
-
-
-test('can set path', function(t) {
-  var oldPath = process.env[PATH]
-  npmPath.set.sync()
-  var newPath = process.env[PATH]
-  t.notDeepEqual(oldPath, newPath)
-  process.env[PATH] = oldPath
-  t.end()
-})
-
-test('includes node-gyp bundled with current npm', function(t) {
-  var oldPath = process.env[PATH]
-  var oldGypPath = which.sync('node-gyp')
-  npmPath()
-  var newGypPath = which.sync('node-gyp')
-
-  t.notEqual(newGypPath, oldGypPath)
-  t.ok(fs.existsSync(newGypPath))
-  t.ok(newGypPath.indexOf(path.join('npm', 'bin', 'node-gyp-bin') + SEP !== -1))
-  process.env[PATH] = oldPath
-  t.end()
-})
-
-test('can set path to npm root to use for node-gyp lookup', function(t) {
-  var oldPath = process.env[PATH]
-  var pathToNpm = path.resolve(
-    fs.realpathSync(which.sync('npm')),
-    '..',
-    '..'
-  )
-  var tmpFile = path.join(os.tmpdir(), 'npm-path-custom-npm')
-  try {fs.unlinkSync(tmpFile)}catch(e){}
-  fs.linkSync(pathToNpm, tmpFile)
-  var newPath = npmPath.get({
-    npm: tmpFile
-  })
-  t.ok(newPath.indexOf(
-    path.join(tmpFile, 'bin', 'node-gyp-bin') + SEP
-  ) !== -1)
-  process.env[PATH] = oldPath
-  fs.unlinkSync(tmpFile)
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/Readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/Readme.md
deleted file mode 100644 (file)
index 5944bbf..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-# serializerr
-
-Convert Errors & Objects into an easily-serialized vanilla Object.
-
-Resulting object has a flattened prototype chain & includes
-non-enumerable properties. Ignores properties on `Object.prototype`.
-
-## Why
-
-If you've ever tried to send an Error over a JSON-encoded connection
-you've probably been surprised to find all the useful information is
-sapped out of it; all the juicy properties like `name`, `message` &
-`stack` are non-enumerable thus they are not included in the
-stringified JSON. This may be non-standard behaviour, as I could not
-locate any mention in either the ES5.1 or the ES6 spec about it, but
-Error properties are non-enumerable both in V8 (Chrome/io.js/Node.js) &
-SpiderMonkey (Firefox).
-
-I believe Error property non-enumerability was added as a security
-measure to prevent stack traces and other sensitive information
-accidentally leaking, but it's not uncommon to actually want to send
-the data in Error objects over the wire.
-
-`serializerr` makes an Object suitable for serializing to & from
-JSON. Not restricted to use with Errors, will work with any Object.
-
-## Installation
-
-```
-npm install serializerr
-```
-
-## Usage
-
-`serializerr` creates a vanilla Object with the prototype chain
-flattened & any non-enumberable properties as regular enumerable properties.
-This allows it to be serialised to JSON without losing important data.
-
-```js
-
-var wellSerializedError = JSON.parse(JSON.stringify(
-  serializerr(error)
-))
-
-console.log(wellSerializedError.name) // Error
-console.log(wellSerializedError.message) // an error occurred
-console.log(wellSerializedError.stack) // Error: an error occurred\n  at Test.<anonymous> ...
-
-```
-
-## Example
-
-```js
-
-var serializerr = require('serializerr')
-
-var error = new Error('an error')
-
-// simulate transferring an Error object over the wire as JSON
-// without first passing through serializerr
-var poorlySerializedError = JSON.parse(JSON.stringify(error))
-
-// oh dear:
-console.log(poorlySerializedError.name) // undefined
-console.log(poorlySerializedError.message) // undefined
-console.log(poorlySerializedError.stack) // undefined
-
-// bring forth the serializerr
-var errorObject = serializerr(error)
-
-var wellSerializedError = JSON.parse(JSON.stringify(errorObject))
-
-// properties are conserved!
-console.log(wellSerializedError.name) // Error
-console.log(wellSerializedError.message) // an error occurred
-console.log(wellSerializedError.stack) // Error: an error occurred\n  at Test.<anonymous> ...
-
-// note errorObject is a vanilla Object, not an Error
-errorObject instanceof Error // false
-```
-
-## Notes on 'ize' vs 'ise'
-
-Name was selected as programming world is mostly Americanised, and npm
-search does not seem to do effective stemming.
-
-This decision came with strong feelings of guilt and shame about what I thought
-was blasphemous Americanized spelling, but it turns out this is a
-misconception thus I am pardoned:
-
-> The -ize spelling is often incorrectly seen as an Americanism in
-> Britain. However, the Oxford English Dictionary (OED) recommends -ize
-> and notes that the -ise spelling is from French.
-
-From [Wikipedia: American and British English spelling differences](http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#-ise.2C_-ize_.28-isation.2C_-ization.29)
-
-## License
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/index.js
deleted file mode 100644 (file)
index 68abe00..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-"use strict"
-
-import protochain from 'protochain'
-
-export default serializerr
-
-function serializerr(obj = {}) {
-  let chain = protochain(obj)
-  .filter(obj => obj !== Object.prototype)
-  return [obj]
-  .concat(chain)
-  .map(item => Object.getOwnPropertyNames(item))
-  .reduce((result, names) => {
-    names.forEach(name => result[name] = obj[name])
-    return result
-  }, {})
-}
-
-serializerr.serializerr = serializerr
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/History.md
deleted file mode 100644 (file)
index 76753ab..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-
-1.0.2 / 2015-03-07
-==================
-
-  * Add History.md.
-  * Avoid running Symbol test on platforms where Symbol is undefined.
-  * More strict test suite.
-  * Support Symbols (@hemanth)
-  * Add Travis CI.
-
-1.0.1 / 2015-03-06
-==================
-
-  * Add LICENSE.
-  * Remove npm init added dependencies.
-
-1.0.0 / 2015-03-06
-==================
-
-  * Birth
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/index.js
deleted file mode 100644 (file)
index a73c244..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-"use strict"
-
-export default protochain
-
-function protochain(obj) {
-  let result = []
-  let target = getPrototypeOf(obj)
-  while (target) {
-    result.push(target)
-    target = getPrototypeOf(target)
-  }
-
-  return result
-}
-
-function getPrototypeOf(obj) {
-  if (obj == null) return obj
-  if (isPrimitive(obj)) obj = Object(obj)
-  return Object.getPrototypeOf(obj)
-}
-
-function isPrimitive(item) {
-  return (
-    item === null || typeof item !== 'object'
-  )
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/package.json
deleted file mode 100644 (file)
index 86570d0..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-{
-  "_args": [
-    [
-      "protochain@https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "protochain@https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-  "_id": "protochain@https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-khFVgci8A4KnrQ0MeKNVFzYz3lA=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run/serializerr/protochain",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "protochain@https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-    "name": "protochain",
-    "escapedName": "protochain",
-    "rawSpec": "https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/npm-run/serializerr"
-  ],
-  "_spec": "https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Tim Oxley",
-    "email": "secoif@gmail.com"
-  },
-  "bugs": {
-    "url": "https://github.com/timoxley/protochain/issues"
-  },
-  "description": "Prototype chain of any value as an Array",
-  "devDependencies": {
-    "babel": "^4.6.6",
-    "tape": "^3.5.0"
-  },
-  "homepage": "https://github.com/timoxley/protochain",
-  "keywords": [
-    "object",
-    "inherit",
-    "prototypical",
-    "utility",
-    "proto",
-    "hierarchy",
-    "ancestors",
-    "grandparents",
-    "parents"
-  ],
-  "license": "ISC",
-  "main": "protochain.js",
-  "name": "protochain",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/timoxley/protochain.git"
-  },
-  "scripts": {
-    "posttest": "rm protochain-test.js",
-    "prepublish": "babel index.js > protochain.js",
-    "pretest": "npm run prepublish",
-    "test": "(babel test.js > protochain-test.js) && tape protochain-test.js"
-  },
-  "version": "https://registry.npmjs.org/protochain/-/protochain-1.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/protochain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/protochain.js
deleted file mode 100644 (file)
index e9ff7bb..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-"use strict";
-
-module.exports = protochain;
-
-function protochain(obj) {
-  var result = [];
-  var target = getPrototypeOf(obj);
-  while (target) {
-    result.push(target);
-    target = getPrototypeOf(target);
-  }
-
-  return result;
-}
-
-function getPrototypeOf(obj) {
-  if (obj == null) {
-    return obj;
-  }if (isPrimitive(obj)) obj = Object(obj);
-  return Object.getPrototypeOf(obj);
-}
-
-function isPrimitive(item) {
-  return item === null || typeof item !== "object";
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/prototype-chain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/prototype-chain.js
deleted file mode 100644 (file)
index a505124..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-"use strict";
-
-module.exports = getPrototypeChain;
-
-function getPrototypeChain(obj) {
-  var result = [];
-  var target = getPrototypeOf(obj);
-  while (target) {
-    result.push(target);
-    target = getPrototypeOf(target);
-  }
-
-  return result;
-}
-
-function getPrototypeOf(obj) {
-  if (obj == null) {
-    return obj;
-  }if (isPrimitive(obj)) obj = new obj.constructor(obj);
-  return Object.getPrototypeOf(obj);
-}
-
-function isPrimitive(item) {
-  return !(item instanceof Object) && Object.prototype.toString.call(item) !== "[object Object]";
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/node_modules/protochain/test.js
deleted file mode 100644 (file)
index 7389403..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-"use strict"
-
-import test from 'tape'
-import protochain from './'
-
-test('protochain', t => {
-  t.test('finds correct prototype chain', t => {
-    let obj = {}
-    strictEqualArray(t, protochain(obj), [Object.prototype])
-    strictEqualArray(t, protochain(Object.create(obj)), [obj, Object.prototype])
-    strictEqualArray(t, protochain(new Error('message')), [Error.prototype, Object.prototype])
-    strictEqualArray(t, protochain(new TypeError('message')), [TypeError.prototype, Error.prototype, Object.prototype])
-    strictEqualArray(t, protochain(new String()), [String.prototype, Object.prototype])
-    strictEqualArray(t, protochain(new Number()), [Number.prototype, Object.prototype])
-    strictEqualArray(t, protochain(new RegExp('abc')), [RegExp.prototype, Object.prototype])
-    strictEqualArray(t, protochain(new Date()), [Date.prototype, Object.prototype])
-    t.end()
-  })
-
-  t.test('null prototype is handled correctly', t => {
-    let noProtoObject = Object.create(null)
-    strictEqualArray(t, protochain(noProtoObject), [])
-    strictEqualArray(t, protochain(Object.create(noProtoObject)), [noProtoObject])
-    t.end()
-  })
-
-  t.test('non-object values cooerce to object counterparts correctly', t => {
-    strictEqualArray(t, protochain('abc'), [String.prototype, Object.prototype])
-    strictEqualArray(t, protochain(123), [Number.prototype, Object.prototype])
-    strictEqualArray(t, protochain(/abc/), [RegExp.prototype, Object.prototype])
-    strictEqualArray(t, protochain(true), [Boolean.prototype, Object.prototype])
-    strictEqualArray(t, protochain(false), [Boolean.prototype, Object.prototype])
-    strictEqualArray(t, protochain(''), [String.prototype, Object.prototype])
-    strictEqualArray(t, protochain(0), [Number.prototype, Object.prototype])
-    t.end()
-  })
-
-  t.test('null values produce empty list', t => {
-    strictEqualArray(t, protochain(), [])
-    strictEqualArray(t, protochain(undefined), [])
-    strictEqualArray(t, protochain(null), [])
-    t.end()
-  })
-
-  t.test('examples', t => {
-    t.test('ES5', t => {
-      function Person() {}
-      function FancyPerson() {
-        Person.call(this)
-      }
-      FancyPerson.prototype = Object.create(Person.prototype)
-
-      strictEqualArray(t, protochain(new Person()), [Person.prototype, Object.prototype])
-      strictEqualArray(t, protochain(new FancyPerson()), [FancyPerson.prototype, Person.prototype, Object.prototype])
-      t.end()
-    })
-    t.test('ES6', t => {
-      // note this will in-fact be compiled to ES5
-      class Person {}
-      strictEqualArray(t, protochain(new Person()), [Person.prototype, Object.prototype])
-
-      class FancyPerson extends Person {}
-      strictEqualArray(t, protochain(new FancyPerson()), [FancyPerson.prototype, Person.prototype, Object.prototype])
-      t.end()
-    })
-  })
-
-  // new native types which may not be supported
-
-  if (typeof Symbol !== 'undefined') {
-    t.test('symbol support', t => {
-      let foo = Symbol('foo')
-      strictEqualArray(t, protochain(foo), [Symbol.prototype, Object.prototype])
-      t.end()
-    })
-  }
-
-  if (typeof Promise !== 'undefined') {
-    t.test('promise support', t => {
-      let foo = new Promise((Y, N) => Y())
-      strictEqualArray(t, protochain(foo), [Promise.prototype, Object.prototype])
-      t.end()
-    })
-  }
-
-  t.end()
-})
-
-function strictEqualArray(t, a, b) {
-  a.forEach((item, index) => t.strictEqual(a[index], b[index], `strictEqual at index ${index}`))
-  t.equal(a.length, b.length, 'same length')
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/package.json
deleted file mode 100644 (file)
index 30c139c..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "serializerr@https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "serializerr@https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-  "_id": "serializerr@https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-c1FhX8BqbxdWpgcLtOjSfEFJpT8=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run/serializerr",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "serializerr@https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-    "name": "serializerr",
-    "escapedName": "serializerr",
-    "rawSpec": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/npm-run"
-  ],
-  "_spec": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Tim Oxley",
-    "email": "secoif@gmail.com"
-  },
-  "bugs": {
-    "url": "https://github.com/timoxley/serializerr/issues"
-  },
-  "dependencies": {
-    "protochain": "^1.0.1"
-  },
-  "description": "Convert Errors & Objects into an easily-serialized vanilla Object.",
-  "devDependencies": {
-    "babel": "^4.6.6",
-    "tape": "^3.5.0"
-  },
-  "homepage": "https://github.com/timoxley/serializerr",
-  "keywords": [
-    "object",
-    "error",
-    "utility",
-    "JSON",
-    "serialise",
-    "errors",
-    "non-enumerable",
-    "enumberable",
-    "stringify",
-    "properties"
-  ],
-  "license": "ISC",
-  "main": "serializerr.js",
-  "name": "serializerr",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/timoxley/serializerr.git"
-  },
-  "scripts": {
-    "posttest": "rm serializerr-test.js",
-    "prepublish": "babel index.js > serializerr.js",
-    "pretest": "npm run prepublish",
-    "test": "(babel test.js > serializerr-test.js) && tape serializerr-test.js"
-  },
-  "version": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/serializerr.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/serializerr.js
deleted file mode 100644 (file)
index 221065f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-"use strict";
-
-var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
-
-var protochain = _interopRequire(require("protochain"));
-
-module.exports = serializerr;
-
-function serializerr() {
-  var obj = arguments[0] === undefined ? {} : arguments[0];
-
-  var chain = protochain(obj).filter(function (obj) {
-    return obj !== Object.prototype;
-  });
-  return [obj].concat(chain).map(function (item) {
-    return Object.getOwnPropertyNames(item);
-  }).reduce(function (result, names) {
-    names.forEach(function (name) {
-      return result[name] = obj[name];
-    });
-    return result;
-  }, {});
-}
-
-serializerr.serializerr = serializerr;
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/serializerr/test.js
deleted file mode 100644 (file)
index 6fc046f..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-"use strict"
-
-import test from 'tape'
-import serializerr from './'
-
-test('with Errors', t => {
-  let err = new Error('message')
-  t.ok(err.stack, 'has stack')
-  let errObj = serializerr(err)
-  let jsonError = JSONify(errObj)
-  t.ok(jsonError.name, 'has name')
-  t.ok(jsonError.message, 'has message')
-  t.ok(jsonError.stack, 'has stack')
-  t.end()
-})
-
-test('regular objects', t => {
-  var obj = {ok: {}}
-  let result = serializerr(obj)
-  t.deepEqual(obj, result)
-  t.equal(result.ok, obj.ok)
-  t.end()
-})
-
-test('object with no prototype', t => {
-  var obj = Object.create(null)
-  obj.ok = {}
-  let result = serializerr(obj)
-  t.deepEqual(obj, result)
-  t.equal(result.ok, obj.ok)
-  t.end()
-})
-
-test('example', t => {
-  let error = new Error('an error occurred')
-
-  t.test('without serializerr', t => {
-    let poorlySerializedError = JSON.parse(JSON.stringify(error))
-    t.equal(poorlySerializedError.name, undefined, 'name is undefined')
-    t.equal(poorlySerializedError.message, undefined, 'message is undefined')
-    t.equal(poorlySerializedError.stack, undefined, 'stack is undefined')
-    t.end()
-  })
-
-  t.test('with serializerr', t => {
-    let errorObject = serializerr(error)
-    let wellSerializedError = JSON.parse(JSON.stringify(errorObject))
-    t.equal(wellSerializedError.name, error.name, 'has correct name')
-    t.equal(wellSerializedError.message, error.message, 'has correct message')
-    t.equal(wellSerializedError.stack, error.stack, 'has correct stack')
-    t.end()
-  })
-  t.end()
-})
-
-function JSONify(item) {
-  return JSON.parse(JSON.stringify(item))
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/node_modules/sync-exec/package.json
deleted file mode 100644 (file)
index 95a3e9e..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-{
-  "_args": [
-    [
-      "sync-exec@https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "sync-exec@https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-  "_id": "sync-exec@https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-P3JY5KW6FyRTgZCfpqb2z1BuFmE=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run/sync-exec",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "sync-exec@https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-    "name": "sync-exec",
-    "escapedName": "sync-exec",
-    "rawSpec": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/npm-run"
-  ],
-  "_spec": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Greg Varsanyi"
-  },
-  "bugs": {
-    "url": "https://github.com/gvarsanyi/sync-exec/issues"
-  },
-  "description": "Synchronous exec with status code support. Requires no external dependencies, no need for node-gyp compilations etc.",
-  "devDependencies": {
-    "coffee-script": "^1.9.1"
-  },
-  "homepage": "https://github.com/gvarsanyi/sync-exec",
-  "keywords": [
-    "exec",
-    "execSync",
-    "fs",
-    "sync",
-    "synchronous",
-    "status code",
-    "status"
-  ],
-  "license": "GNU GPLv2",
-  "main": "js/sync-exec.js",
-  "name": "sync-exec",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/gvarsanyi/sync-exec.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/npm-run/package.json
deleted file mode 100644 (file)
index 8076562..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "npm-run@https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "npm-run@https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-  "_id": "npm-run@https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-xDEkUfOCt67npIWOYCg6vz26yOw=",
-  "_location": "/grunt-standard/standard-format/esformatter/npm-run",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "npm-run@https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-    "name": "npm-run",
-    "escapedName": "npm-run",
-    "rawSpec": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Tim Oxley"
-  },
-  "bin": {
-    "npm-run": "bin/npm-run.js"
-  },
-  "bugs": {
-    "url": "https://github.com/timoxley/npm-run/issues"
-  },
-  "dependencies": {
-    "minimist": "^1.1.0",
-    "npm-path": "^1.0.1",
-    "serializerr": "^1.0.1",
-    "sync-exec": "^0.5.0"
-  },
-  "description": "Run locally-installed executables.",
-  "devDependencies": {
-    "bl": "^0.9.4",
-    "faucet": "0.0.1",
-    "tape": "^3.5.0"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/timoxley/npm-run",
-  "keywords": [
-    "npm",
-    "path",
-    "executable",
-    "run"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "npm-run",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/timoxley/npm-run.git"
-  },
-  "scripts": {
-    "test": "faucet"
-  },
-  "version": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/LICENSE
deleted file mode 100644 (file)
index 432d1ae..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Copyright 2010 James Halliday (mail@substack.net)
-
-This project is free software released under the MIT/X11 license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/LICENSE
deleted file mode 100644 (file)
index ee27ba4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/example/parse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/example/parse.js
deleted file mode 100644 (file)
index abff3e8..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-var argv = require('../')(process.argv.slice(2));
-console.dir(argv);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/index.js
deleted file mode 100644 (file)
index 71fb830..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-module.exports = function (args, opts) {
-    if (!opts) opts = {};
-    
-    var flags = { bools : {}, strings : {} };
-    
-    [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
-        flags.bools[key] = true;
-    });
-    
-    var aliases = {};
-    Object.keys(opts.alias || {}).forEach(function (key) {
-        aliases[key] = [].concat(opts.alias[key]);
-        aliases[key].forEach(function (x) {
-            aliases[x] = [key].concat(aliases[key].filter(function (y) {
-                return x !== y;
-            }));
-        });
-    });
-
-    [].concat(opts.string).filter(Boolean).forEach(function (key) {
-        flags.strings[key] = true;
-        if (aliases[key]) {
-            flags.strings[aliases[key]] = true;
-        }
-     });
-
-    var defaults = opts['default'] || {};
-    
-    var argv = { _ : [] };
-    Object.keys(flags.bools).forEach(function (key) {
-        setArg(key, defaults[key] === undefined ? false : defaults[key]);
-    });
-    
-    var notFlags = [];
-
-    if (args.indexOf('--') !== -1) {
-        notFlags = args.slice(args.indexOf('--')+1);
-        args = args.slice(0, args.indexOf('--'));
-    }
-
-    function setArg (key, val) {
-        var value = !flags.strings[key] && isNumber(val)
-            ? Number(val) : val
-        ;
-        setKey(argv, key.split('.'), value);
-        
-        (aliases[key] || []).forEach(function (x) {
-            setKey(argv, x.split('.'), value);
-        });
-    }
-    
-    for (var i = 0; i < args.length; i++) {
-        var arg = args[i];
-        
-        if (/^--.+=/.test(arg)) {
-            // Using [\s\S] instead of . because js doesn't support the
-            // 'dotall' regex modifier. See:
-            // http://stackoverflow.com/a/1068308/13216
-            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
-            setArg(m[1], m[2]);
-        }
-        else if (/^--no-.+/.test(arg)) {
-            var key = arg.match(/^--no-(.+)/)[1];
-            setArg(key, false);
-        }
-        else if (/^--.+/.test(arg)) {
-            var key = arg.match(/^--(.+)/)[1];
-            var next = args[i + 1];
-            if (next !== undefined && !/^-/.test(next)
-            && !flags.bools[key]
-            && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                setArg(key, next);
-                i++;
-            }
-            else if (/^(true|false)$/.test(next)) {
-                setArg(key, next === 'true');
-                i++;
-            }
-            else {
-                setArg(key, flags.strings[key] ? '' : true);
-            }
-        }
-        else if (/^-[^-]+/.test(arg)) {
-            var letters = arg.slice(1,-1).split('');
-            
-            var broken = false;
-            for (var j = 0; j < letters.length; j++) {
-                var next = arg.slice(j+2);
-                
-                if (next === '-') {
-                    setArg(letters[j], next)
-                    continue;
-                }
-                
-                if (/[A-Za-z]/.test(letters[j])
-                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
-                    setArg(letters[j], next);
-                    broken = true;
-                    break;
-                }
-                
-                if (letters[j+1] && letters[j+1].match(/\W/)) {
-                    setArg(letters[j], arg.slice(j+2));
-                    broken = true;
-                    break;
-                }
-                else {
-                    setArg(letters[j], flags.strings[letters[j]] ? '' : true);
-                }
-            }
-            
-            var key = arg.slice(-1)[0];
-            if (!broken && key !== '-') {
-                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
-                && !flags.bools[key]
-                && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                    setArg(key, args[i+1]);
-                    i++;
-                }
-                else if (args[i+1] && /true|false/.test(args[i+1])) {
-                    setArg(key, args[i+1] === 'true');
-                    i++;
-                }
-                else {
-                    setArg(key, flags.strings[key] ? '' : true);
-                }
-            }
-        }
-        else {
-            argv._.push(
-                flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
-            );
-        }
-    }
-    
-    Object.keys(defaults).forEach(function (key) {
-        if (!hasKey(argv, key.split('.'))) {
-            setKey(argv, key.split('.'), defaults[key]);
-            
-            (aliases[key] || []).forEach(function (x) {
-                setKey(argv, x.split('.'), defaults[key]);
-            });
-        }
-    });
-    
-    notFlags.forEach(function(key) {
-        argv._.push(key);
-    });
-
-    return argv;
-};
-
-function hasKey (obj, keys) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        o = (o[key] || {});
-    });
-
-    var key = keys[keys.length - 1];
-    return key in o;
-}
-
-function setKey (obj, keys, value) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        if (o[key] === undefined) o[key] = {};
-        o = o[key];
-    });
-    
-    var key = keys[keys.length - 1];
-    if (o[key] === undefined || typeof o[key] === 'boolean') {
-        o[key] = value;
-    }
-    else if (Array.isArray(o[key])) {
-        o[key].push(value);
-    }
-    else {
-        o[key] = [ o[key], value ];
-    }
-}
-
-function isNumber (x) {
-    if (typeof x === 'number') return true;
-    if (/^0x[0-9a-f]+$/i.test(x)) return true;
-    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/package.json
deleted file mode 100644 (file)
index 7bd45be..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-{
-  "_args": [
-    [
-      "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-  "_id": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
-  "_location": "/grunt-standard/standard-format/esformatter/optimist/minimist",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-    "name": "minimist",
-    "escapedName": "minimist",
-    "rawSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/optimist"
-  ],
-  "_spec": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/minimist/issues"
-  },
-  "description": "parse argument options",
-  "devDependencies": {
-    "tap": "~0.4.0",
-    "tape": "~1.0.4"
-  },
-  "homepage": "https://github.com/substack/minimist",
-  "keywords": [
-    "argv",
-    "getopt",
-    "parser",
-    "optimist"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "minimist",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/minimist.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/6..latest",
-      "ff/5",
-      "firefox/latest",
-      "chrome/10",
-      "chrome/latest",
-      "safari/5.1",
-      "safari/latest",
-      "opera/12"
-    ]
-  },
-  "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/readme.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/readme.markdown
deleted file mode 100644 (file)
index c256353..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-# minimist
-
-parse argument options
-
-This module is the guts of optimist's argument parser without all the
-fanciful decoration.
-
-[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)
-
-[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)
-
-# example
-
-``` js
-var argv = require('minimist')(process.argv.slice(2));
-console.dir(argv);
-```
-
-```
-$ node example/parse.js -a beep -b boop
-{ _: [], a: 'beep', b: 'boop' }
-```
-
-```
-$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
-{ _: [ 'foo', 'bar', 'baz' ],
-  x: 3,
-  y: 4,
-  n: 5,
-  a: true,
-  b: true,
-  c: true,
-  beep: 'boop' }
-```
-
-# methods
-
-``` js
-var parseArgs = require('minimist')
-```
-
-## var argv = parseArgs(args, opts={})
-
-Return an argument object `argv` populated with the array arguments from `args`.
-
-`argv._` contains all the arguments that didn't have an option associated with
-them.
-
-Numeric-looking arguments will be returned as numbers unless `opts.string` or
-`opts.boolean` is set for that argument name.
-
-Any arguments after `'--'` will not be parsed and will end up in `argv._`.
-
-options can be:
-
-* `opts.string` - a string or array of strings argument names to always treat as
-strings
-* `opts.boolean` - a string or array of strings to always treat as booleans
-* `opts.alias` - an object mapping string names to strings or arrays of string
-argument names to use as aliases
-* `opts.default` - an object mapping string argument names to default values
-
-# install
-
-With [npm](https://npmjs.org) do:
-
-```
-npm install minimist
-```
-
-# license
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/bool.js
deleted file mode 100644 (file)
index 749e083..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('flag boolean default false', function (t) {
-    var argv = parse(['moo'], {
-        boolean: ['t', 'verbose'],
-        default: { verbose: false, t: false }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: false,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-
-});
-
-test('boolean groups', function (t) {
-    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
-        boolean: ['x','y','z']
-    });
-    
-    t.deepEqual(argv, {
-        x : true,
-        y : false,
-        z : true,
-        _ : [ 'one', 'two', 'three' ]
-    });
-    
-    t.deepEqual(typeof argv.x, 'boolean');
-    t.deepEqual(typeof argv.y, 'boolean');
-    t.deepEqual(typeof argv.z, 'boolean');
-    t.end();
-});
-test('boolean and alias with chainable api', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp',  'derp' ];
-    var opts = {
-        herp: { alias: 'h', boolean: true }
-    };
-    var aliasedArgv = parse(aliased, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var propertyArgv = parse(regular, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-test('boolean and alias with options hash', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp', 'derp' ];
-    var opts = {
-        alias: { 'h': 'herp' },
-        boolean: 'herp'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected);
-    t.end();
-});
-
-test('boolean and alias using explicit true', function (t) {
-    var aliased = [ '-h', 'true' ];
-    var regular = [ '--herp',  'true' ];
-    var opts = {
-        alias: { h: 'herp' },
-        boolean: 'h'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ ]
-    };
-
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-// regression, see https://github.com/substack/node-optimist/issues/71
-test('boolean and --x=true', function(t) {
-    var parsed = parse(['--boool', '--other=true'], {
-        boolean: 'boool'
-    });
-
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'true');
-
-    parsed = parse(['--boool', '--other=false'], {
-        boolean: 'boool'
-    });
-    
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'false');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dash.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dash.js
deleted file mode 100644 (file)
index 8b034b9..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('-', function (t) {
-    t.plan(5);
-    t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] });
-    t.deepEqual(parse([ '-' ]), { _: [ '-' ] });
-    t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] });
-    t.deepEqual(
-        parse([ '-b', '-' ], { boolean: 'b' }),
-        { b: true, _: [ '-' ] }
-    );
-    t.deepEqual(
-        parse([ '-s', '-' ], { string: 's' }),
-        { s: '-', _: [] }
-    );
-});
-
-test('-a -- b', function (t) {
-    t.plan(3);
-    t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-    t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-    t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/default_bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/default_bool.js
deleted file mode 100644 (file)
index f0041ee..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var test = require('tape');
-var parse = require('../');
-
-test('boolean default true', function (t) {
-    var argv = parse([], {
-        boolean: 'sometrue',
-        default: { sometrue: true }
-    });
-    t.equal(argv.sometrue, true);
-    t.end();
-});
-
-test('boolean default false', function (t) {
-    var argv = parse([], {
-        boolean: 'somefalse',
-        default: { somefalse: false }
-    });
-    t.equal(argv.somefalse, false);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dotted.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/dotted.js
deleted file mode 100644 (file)
index d8b3e85..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('dotted alias', function (t) {
-    var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
-    t.equal(argv.a.b, 22);
-    t.equal(argv.aa.bb, 22);
-    t.end();
-});
-
-test('dotted default', function (t) {
-    var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
-    t.equal(argv.a.b, 11);
-    t.equal(argv.aa.bb, 11);
-    t.end();
-});
-
-test('dotted default with no alias', function (t) {
-    var argv = parse('', {default: {'a.b': 11}});
-    t.equal(argv.a.b, 11);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/long.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/long.js
deleted file mode 100644 (file)
index 5d3a1e0..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var test = require('tape');
-var parse = require('../');
-
-test('long opts', function (t) {
-    t.deepEqual(
-        parse([ '--bool' ]),
-        { bool : true, _ : [] },
-        'long boolean'
-    );
-    t.deepEqual(
-        parse([ '--pow', 'xixxle' ]),
-        { pow : 'xixxle', _ : [] },
-        'long capture sp'
-    );
-    t.deepEqual(
-        parse([ '--pow=xixxle' ]),
-        { pow : 'xixxle', _ : [] },
-        'long capture eq'
-    );
-    t.deepEqual(
-        parse([ '--host', 'localhost', '--port', '555' ]),
-        { host : 'localhost', port : 555, _ : [] },
-        'long captures sp'
-    );
-    t.deepEqual(
-        parse([ '--host=localhost', '--port=555' ]),
-        { host : 'localhost', port : 555, _ : [] },
-        'long captures eq'
-    );
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/num.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/num.js
deleted file mode 100644 (file)
index 2cc77f4..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('nums', function (t) {
-    var argv = parse([
-        '-x', '1234',
-        '-y', '5.67',
-        '-z', '1e7',
-        '-w', '10f',
-        '--hex', '0xdeadbeef',
-        '789'
-    ]);
-    t.deepEqual(argv, {
-        x : 1234,
-        y : 5.67,
-        z : 1e7,
-        w : '10f',
-        hex : 0xdeadbeef,
-        _ : [ 789 ]
-    });
-    t.deepEqual(typeof argv.x, 'number');
-    t.deepEqual(typeof argv.y, 'number');
-    t.deepEqual(typeof argv.z, 'number');
-    t.deepEqual(typeof argv.w, 'string');
-    t.deepEqual(typeof argv.hex, 'number');
-    t.deepEqual(typeof argv._[0], 'number');
-    t.end();
-});
-
-test('already a number', function (t) {
-    var argv = parse([ '-x', 1234, 789 ]);
-    t.deepEqual(argv, { x : 1234, _ : [ 789 ] });
-    t.deepEqual(typeof argv.x, 'number');
-    t.deepEqual(typeof argv._[0], 'number');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse.js
deleted file mode 100644 (file)
index 7b4a2a1..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('parse args', function (t) {
-    t.deepEqual(
-        parse([ '--no-moo' ]),
-        { moo : false, _ : [] },
-        'no'
-    );
-    t.deepEqual(
-        parse([ '-v', 'a', '-v', 'b', '-v', 'c' ]),
-        { v : ['a','b','c'], _ : [] },
-        'multi'
-    );
-    t.end();
-});
-test('comprehensive', function (t) {
-    t.deepEqual(
-        parse([
-            '--name=meowmers', 'bare', '-cats', 'woo',
-            '-h', 'awesome', '--multi=quux',
-            '--key', 'value',
-            '-b', '--bool', '--no-meep', '--multi=baz',
-            '--', '--not-a-flag', 'eek'
-        ]),
-        {
-            c : true,
-            a : true,
-            t : true,
-            s : 'woo',
-            h : 'awesome',
-            b : true,
-            bool : true,
-            key : 'value',
-            multi : [ 'quux', 'baz' ],
-            meep : false,
-            name : 'meowmers',
-            _ : [ 'bare', '--not-a-flag', 'eek' ]
-        }
-    );
-    t.end();
-});
-
-test('flag boolean', function (t) {
-    var argv = parse([ '-t', 'moo' ], { boolean: 't' });
-    t.deepEqual(argv, { t : true, _ : [ 'moo' ] });
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-});
-
-test('flag boolean value', function (t) {
-    var argv = parse(['--verbose', 'false', 'moo', '-t', 'true'], {
-        boolean: [ 't', 'verbose' ],
-        default: { verbose: true }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: true,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-});
-
-test('newlines in params' , function (t) {
-    var args = parse([ '-s', "X\nX" ])
-    t.deepEqual(args, { _ : [], s : "X\nX" });
-    
-    // reproduce in bash:
-    // VALUE="new
-    // line"
-    // node program.js --s="$VALUE"
-    args = parse([ "--s=X\nX" ])
-    t.deepEqual(args, { _ : [], s : "X\nX" });
-    t.end();
-});
-
-test('strings' , function (t) {
-    var s = parse([ '-s', '0001234' ], { string: 's' }).s;
-    t.equal(s, '0001234');
-    t.equal(typeof s, 'string');
-    
-    var x = parse([ '-x', '56' ], { string: 'x' }).x;
-    t.equal(x, '56');
-    t.equal(typeof x, 'string');
-    t.end();
-});
-
-test('stringArgs', function (t) {
-    var s = parse([ '  ', '  ' ], { string: '_' })._;
-    t.same(s.length, 2);
-    t.same(typeof s[0], 'string');
-    t.same(s[0], '  ');
-    t.same(typeof s[1], 'string');
-    t.same(s[1], '  ');
-    t.end();
-});
-
-test('empty strings', function(t) {
-    var s = parse([ '-s' ], { string: 's' }).s;
-    t.equal(s, '');
-    t.equal(typeof s, 'string');
-
-    var str = parse([ '--str' ], { string: 'str' }).str;
-    t.equal(str, '');
-    t.equal(typeof str, 'string');
-
-    var letters = parse([ '-art' ], {
-        string: [ 'a', 't' ]
-    });
-
-    t.equal(letters.a, '');
-    t.equal(letters.r, true);
-    t.equal(letters.t, '');
-
-    t.end();
-});
-
-
-test('string and alias', function(t) {
-    var x = parse([ '--str',  '000123' ], {
-        string: 's',
-        alias: { s: 'str' }
-    });
-
-    t.equal(x.str, '000123');
-    t.equal(typeof x.str, 'string');
-    t.equal(x.s, '000123');
-    t.equal(typeof x.s, 'string');
-
-    var y = parse([ '-s',  '000123' ], {
-        string: 'str',
-        alias: { str: 's' }
-    });
-
-    t.equal(y.str, '000123');
-    t.equal(typeof y.str, 'string');
-    t.equal(y.s, '000123');
-    t.equal(typeof y.s, 'string');
-    t.end();
-});
-
-test('slashBreak', function (t) {
-    t.same(
-        parse([ '-I/foo/bar/baz' ]),
-        { I : '/foo/bar/baz', _ : [] }
-    );
-    t.same(
-        parse([ '-xyz/foo/bar/baz' ]),
-        { x : true, y : true, z : '/foo/bar/baz', _ : [] }
-    );
-    t.end();
-});
-
-test('alias', function (t) {
-    var argv = parse([ '-f', '11', '--zoom', '55' ], {
-        alias: { z: 'zoom' }
-    });
-    t.equal(argv.zoom, 55);
-    t.equal(argv.z, argv.zoom);
-    t.equal(argv.f, 11);
-    t.end();
-});
-
-test('multiAlias', function (t) {
-    var argv = parse([ '-f', '11', '--zoom', '55' ], {
-        alias: { z: [ 'zm', 'zoom' ] }
-    });
-    t.equal(argv.zoom, 55);
-    t.equal(argv.z, argv.zoom);
-    t.equal(argv.z, argv.zm);
-    t.equal(argv.f, 11);
-    t.end();
-});
-
-test('nested dotted objects', function (t) {
-    var argv = parse([
-        '--foo.bar', '3', '--foo.baz', '4',
-        '--foo.quux.quibble', '5', '--foo.quux.o_O',
-        '--beep.boop'
-    ]);
-    
-    t.same(argv.foo, {
-        bar : 3,
-        baz : 4,
-        quux : {
-            quibble : 5,
-            o_O : true
-        }
-    });
-    t.same(argv.beep, { boop : true });
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse_modified.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/parse_modified.js
deleted file mode 100644 (file)
index 21851b0..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('parse with modifier functions' , function (t) {
-    t.plan(1);
-    
-    var argv = parse([ '-b', '123' ], { boolean: 'b' });
-    t.deepEqual(argv, { b: true, _: ['123'] });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/short.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/short.js
deleted file mode 100644 (file)
index d513a1c..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('numeric short args', function (t) {
-    t.plan(2);
-    t.deepEqual(parse([ '-n123' ]), { n: 123, _: [] });
-    t.deepEqual(
-        parse([ '-123', '456' ]),
-        { 1: true, 2: true, 3: 456, _: [] }
-    );
-});
-
-test('short', function (t) {
-    t.deepEqual(
-        parse([ '-b' ]),
-        { b : true, _ : [] },
-        'short boolean'
-    );
-    t.deepEqual(
-        parse([ 'foo', 'bar', 'baz' ]),
-        { _ : [ 'foo', 'bar', 'baz' ] },
-        'bare'
-    );
-    t.deepEqual(
-        parse([ '-cats' ]),
-        { c : true, a : true, t : true, s : true, _ : [] },
-        'group'
-    );
-    t.deepEqual(
-        parse([ '-cats', 'meow' ]),
-        { c : true, a : true, t : true, s : 'meow', _ : [] },
-        'short group next'
-    );
-    t.deepEqual(
-        parse([ '-h', 'localhost' ]),
-        { h : 'localhost', _ : [] },
-        'short capture'
-    );
-    t.deepEqual(
-        parse([ '-h', 'localhost', '-p', '555' ]),
-        { h : 'localhost', p : 555, _ : [] },
-        'short captures'
-    );
-    t.end();
-});
-test('mixed short bool and capture', function (t) {
-    t.same(
-        parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
-        {
-            f : true, p : 555, h : 'localhost',
-            _ : [ 'script.js' ]
-        }
-    );
-    t.end();
-});
-test('short and long', function (t) {
-    t.deepEqual(
-        parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
-        {
-            f : true, p : 555, h : 'localhost',
-            _ : [ 'script.js' ]
-        }
-    );
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/whitespace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/minimist/test/whitespace.js
deleted file mode 100644 (file)
index 8a52a58..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('whitespace should be whitespace' , function (t) {
-    t.plan(1);
-    var x = parse([ '-x', '\t' ]).x;
-    t.equal(x, '\t');
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/README.markdown
deleted file mode 100644 (file)
index 346374e..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-wordwrap
-========
-
-Wrap your words.
-
-example
-=======
-
-made out of meat
-----------------
-
-meat.js
-
-    var wrap = require('wordwrap')(15);
-    console.log(wrap('You and your whole family are made out of meat.'));
-
-output:
-
-    You and your
-    whole family
-    are made out
-    of meat.
-
-centered
---------
-
-center.js
-
-    var wrap = require('wordwrap')(20, 60);
-    console.log(wrap(
-        'At long last the struggle and tumult was over.'
-        + ' The machines had finally cast off their oppressors'
-        + ' and were finally free to roam the cosmos.'
-        + '\n'
-        + 'Free of purpose, free of obligation.'
-        + ' Just drifting through emptiness.'
-        + ' The sun was just another point of light.'
-    ));
-
-output:
-
-                        At long last the struggle and tumult
-                        was over. The machines had finally cast
-                        off their oppressors and were finally
-                        free to roam the cosmos.
-                        Free of purpose, free of obligation.
-                        Just drifting through emptiness. The
-                        sun was just another point of light.
-
-methods
-=======
-
-var wrap = require('wordwrap');
-
-wrap(stop), wrap(start, stop, params={mode:"soft"})
----------------------------------------------------
-
-Returns a function that takes a string and returns a new string.
-
-Pad out lines with spaces out to column `start` and then wrap until column
-`stop`. If a word is longer than `stop - start` characters it will overflow.
-
-In "soft" mode, split chunks by `/(\S+\s+/` and don't break up chunks which are
-longer than `stop - start`, in "hard" mode, split chunks with `/\b/` and break
-up chunks longer than `stop - start`.
-
-wrap.hard(start, stop)
-----------------------
-
-Like `wrap()` but with `params.mode = "hard"`.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/center.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/center.js
deleted file mode 100644 (file)
index a3fbaae..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var wrap = require('wordwrap')(20, 60);
-console.log(wrap(
-    'At long last the struggle and tumult was over.'
-    + ' The machines had finally cast off their oppressors'
-    + ' and were finally free to roam the cosmos.'
-    + '\n'
-    + 'Free of purpose, free of obligation.'
-    + ' Just drifting through emptiness.'
-    + ' The sun was just another point of light.'
-));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/meat.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/example/meat.js
deleted file mode 100644 (file)
index a4665e1..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-var wrap = require('wordwrap')(15);
-
-console.log(wrap('You and your whole family are made out of meat.'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/index.js
deleted file mode 100644 (file)
index c9bc945..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-var wordwrap = module.exports = function (start, stop, params) {
-    if (typeof start === 'object') {
-        params = start;
-        start = params.start;
-        stop = params.stop;
-    }
-    
-    if (typeof stop === 'object') {
-        params = stop;
-        start = start || params.start;
-        stop = undefined;
-    }
-    
-    if (!stop) {
-        stop = start;
-        start = 0;
-    }
-    
-    if (!params) params = {};
-    var mode = params.mode || 'soft';
-    var re = mode === 'hard' ? /\b/ : /(\S+\s+)/;
-    
-    return function (text) {
-        var chunks = text.toString()
-            .split(re)
-            .reduce(function (acc, x) {
-                if (mode === 'hard') {
-                    for (var i = 0; i < x.length; i += stop - start) {
-                        acc.push(x.slice(i, i + stop - start));
-                    }
-                }
-                else acc.push(x)
-                return acc;
-            }, [])
-        ;
-        
-        return chunks.reduce(function (lines, rawChunk) {
-            if (rawChunk === '') return lines;
-            
-            var chunk = rawChunk.replace(/\t/g, '    ');
-            
-            var i = lines.length - 1;
-            if (lines[i].length + chunk.length > stop) {
-                lines[i] = lines[i].replace(/\s+$/, '');
-                
-                chunk.split(/\n/).forEach(function (c) {
-                    lines.push(
-                        new Array(start + 1).join(' ')
-                        + c.replace(/^\s+/, '')
-                    );
-                });
-            }
-            else if (chunk.match(/\n/)) {
-                var xs = chunk.split(/\n/);
-                lines[i] += xs.shift();
-                xs.forEach(function (c) {
-                    lines.push(
-                        new Array(start + 1).join(' ')
-                        + c.replace(/^\s+/, '')
-                    );
-                });
-            }
-            else {
-                lines[i] += chunk;
-            }
-            
-            return lines;
-        }, [ new Array(start + 1).join(' ') ]).join('\n');
-    };
-};
-
-wordwrap.soft = wordwrap;
-
-wordwrap.hard = function (start, stop) {
-    return wordwrap(start, stop, { mode : 'hard' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/package.json
deleted file mode 100644 (file)
index a494f88..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_id": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
-  "_location": "/grunt-standard/standard-format/esformatter/optimist/wordwrap",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "name": "wordwrap",
-    "escapedName": "wordwrap",
-    "rawSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/optimist"
-  ],
-  "_spec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-wordwrap/issues"
-  },
-  "description": "Wrap those words. Show them at what columns to start and stop.",
-  "devDependencies": {
-    "expresso": "=0.7.x"
-  },
-  "directories": {
-    "lib": ".",
-    "example": "example",
-    "test": "test"
-  },
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "homepage": "https://github.com/substack/node-wordwrap#readme",
-  "keywords": [
-    "word",
-    "wrap",
-    "rule",
-    "format",
-    "column"
-  ],
-  "license": "MIT/X11",
-  "main": "./index.js",
-  "name": "wordwrap",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-wordwrap.git"
-  },
-  "scripts": {
-    "test": "expresso"
-  },
-  "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/break.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/break.js
deleted file mode 100644 (file)
index 749292e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var assert = require('assert');
-var wordwrap = require('../');
-
-exports.hard = function () {
-    var s = 'Assert from {"type":"equal","ok":false,"found":1,"wanted":2,'
-        + '"stack":[],"id":"b7ddcd4c409de8799542a74d1a04689b",'
-        + '"browser":"chrome/6.0"}'
-    ;
-    var s_ = wordwrap.hard(80)(s);
-    
-    var lines = s_.split('\n');
-    assert.equal(lines.length, 2);
-    assert.ok(lines[0].length < 80);
-    assert.ok(lines[1].length < 80);
-    
-    assert.equal(s, s_.replace(/\n/g, ''));
-};
-
-exports.break = function () {
-    var s = new Array(55+1).join('a');
-    var s_ = wordwrap.hard(20)(s);
-    
-    var lines = s_.split('\n');
-    assert.equal(lines.length, 3);
-    assert.ok(lines[0].length === 20);
-    assert.ok(lines[1].length === 20);
-    assert.ok(lines[2].length === 15);
-    
-    assert.equal(s, s_.replace(/\n/g, ''));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/idleness.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/idleness.txt
deleted file mode 100644 (file)
index aa3f490..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-In Praise of Idleness
-
-By Bertrand Russell
-
-[1932]
-
-Like most of my generation, I was brought up on the saying: 'Satan finds some mischief for idle hands to do.' Being a highly virtuous child, I believed all that I was told, and acquired a conscience which has kept me working hard down to the present moment. But although my conscience has controlled my actions, my opinions have undergone a revolution. I think that there is far too much work done in the world, that immense harm is caused by the belief that work is virtuous, and that what needs to be preached in modern industrial countries is quite different from what always has been preached. Everyone knows the story of the traveler in Naples who saw twelve beggars lying in the sun (it was before the days of Mussolini), and offered a lira to the laziest of them. Eleven of them jumped up to claim it, so he gave it to the twelfth. this traveler was on the right lines. But in countries which do not enjoy Mediterranean sunshine idleness is more difficult, and a great public propaganda will be required to inaugurate it. I hope that, after reading the following pages, the leaders of the YMCA will start a campaign to induce good young men to do nothing. If so, I shall not have lived in vain.
-
-Before advancing my own arguments for laziness, I must dispose of one which I cannot accept. Whenever a person who already has enough to live on proposes to engage in some everyday kind of job, such as school-teaching or typing, he or she is told that such conduct takes the bread out of other people's mouths, and is therefore wicked. If this argument were valid, it would only be necessary for us all to be idle in order that we should all have our mouths full of bread. What people who say such things forget is that what a man earns he usually spends, and in spending he gives employment. As long as a man spends his income, he puts just as much bread into people's mouths in spending as he takes out of other people's mouths in earning. The real villain, from this point of view, is the man who saves. If he merely puts his savings in a stocking, like the proverbial French peasant, it is obvious that they do not give employment. If he invests his savings, the matter is less obvious, and different cases arise.
-
-One of the commonest things to do with savings is to lend them to some Government. In view of the fact that the bulk of the public expenditure of most civilized Governments consists in payment for past wars or preparation for future wars, the man who lends his money to a Government is in the same position as the bad men in Shakespeare who hire murderers. The net result of the man's economical habits is to increase the armed forces of the State to which he lends his savings. Obviously it would be better if he spent the money, even if he spent it in drink or gambling.
-
-But, I shall be told, the case is quite different when savings are invested in industrial enterprises. When such enterprises succeed, and produce something useful, this may be conceded. In these days, however, no one will deny that most enterprises fail. That means that a large amount of human labor, which might have been devoted to producing something that could be enjoyed, was expended on producing machines which, when produced, lay idle and did no good to anyone. The man who invests his savings in a concern that goes bankrupt is therefore injuring others as well as himself. If he spent his money, say, in giving parties for his friends, they (we may hope) would get pleasure, and so would all those upon whom he spent money, such as the butcher, the baker, and the bootlegger. But if he spends it (let us say) upon laying down rails for surface card in some place where surface cars turn out not to be wanted, he has diverted a mass of labor into channels where it gives pleasure to no one. Nevertheless, when he becomes poor through failure of his investment he will be regarded as a victim of undeserved misfortune, whereas the gay spendthrift, who has spent his money philanthropically, will be despised as a fool and a frivolous person.
-
-All this is only preliminary. I want to say, in all seriousness, that a great deal of harm is being done in the modern world by belief in the virtuousness of work, and that the road to happiness and prosperity lies in an organized diminution of work.
-
-First of all: what is work? Work is of two kinds: first, altering the position of matter at or near the earth's surface relatively to other such matter; second, telling other people to do so. The first kind is unpleasant and ill paid; the second is pleasant and highly paid. The second kind is capable of indefinite extension: there are not only those who give orders, but those who give advice as to what orders should be given. Usually two opposite kinds of advice are given simultaneously by two organized bodies of men; this is called politics. The skill required for this kind of work is not knowledge of the subjects as to which advice is given, but knowledge of the art of persuasive speaking and writing, i.e. of advertising.
-
-Throughout Europe, though not in America, there is a third class of men, more respected than either of the classes of workers. There are men who, through ownership of land, are able to make others pay for the privilege of being allowed to exist and to work. These landowners are idle, and I might therefore be expected to praise them. Unfortunately, their idleness is only rendered possible by the industry of others; indeed their desire for comfortable idleness is historically the source of the whole gospel of work. The last thing they have ever wished is that others should follow their example.
-
-From the beginning of civilization until the Industrial Revolution, a man could, as a rule, produce by hard work little more than was required for the subsistence of himself and his family, although his wife worked at least as hard as he did, and his children added their labor as soon as they were old enough to do so. The small surplus above bare necessaries was not left to those who produced it, but was appropriated by warriors and priests. In times of famine there was no surplus; the warriors and priests, however, still secured as much as at other times, with the result that many of the workers died of hunger. This system persisted in Russia until 1917 [1], and still persists in the East; in England, in spite of the Industrial Revolution, it remained in full force throughout the Napoleonic wars, and until a hundred years ago, when the new class of manufacturers acquired power. In America, the system came to an end with the Revolution, except in the South, where it persisted until the Civil War. A system which lasted so long and ended so recently has naturally left a profound impress upon men's thoughts and opinions. Much that we take for granted about the desirability of work is derived from this system, and, being pre-industrial, is not adapted to the modern world. Modern technique has made it possible for leisure, within limits, to be not the prerogative of small privileged classes, but a right evenly distributed throughout the community. The morality of work is the morality of slaves, and the modern world has no need of slavery.
-
-It is obvious that, in primitive communities, peasants, left to themselves, would not have parted with the slender surplus upon which the warriors and priests subsisted, but would have either produced less or consumed more. At first, sheer force compelled them to produce and part with the surplus. Gradually, however, it was found possible to induce many of them to accept an ethic according to which it was their duty to work hard, although part of their work went to support others in idleness. By this means the amount of compulsion required was lessened, and the expenses of government were diminished. To this day, 99 per cent of British wage-earners would be genuinely shocked if it were proposed that the King should not have a larger income than a working man. The conception of duty, speaking historically, has been a means used by the holders of power to induce others to live for the interests of their masters rather than for their own. Of course the holders of power conceal this fact from themselves by managing to believe that their interests are identical with the larger interests of humanity. Sometimes this is true; Athenian slave-owners, for instance, employed part of their leisure in making a permanent contribution to civilization which would have been impossible under a just economic system. Leisure is essential to civilization, and in former times leisure for the few was only rendered possible by the labors of the many. But their labors were valuable, not because work is good, but because leisure is good. And with modern technique it would be possible to distribute leisure justly without injury to civilization.
-
-Modern technique has made it possible to diminish enormously the amount of labor required to secure the necessaries of life for everyone. This was made obvious during the war. At that time all the men in the armed forces, and all the men and women engaged in the production of munitions, all the men and women engaged in spying, war propaganda, or Government offices connected with the war, were withdrawn from productive occupations. In spite of this, the general level of well-being among unskilled wage-earners on the side of the Allies was higher than before or since. The significance of this fact was concealed by finance: borrowing made it appear as if the future was nourishing the present. But that, of course, would have been impossible; a man cannot eat a loaf of bread that does not yet exist. The war showed conclusively that, by the scientific organization of production, it is possible to keep modern populations in fair comfort on a small part of the working capacity of the modern world. If, at the end of the war, the scientific organization, which had been created in order to liberate men for fighting and munition work, had been preserved, and the hours of the week had been cut down to four, all would have been well. Instead of that the old chaos was restored, those whose work was demanded were made to work long hours, and the rest were left to starve as unemployed. Why? Because work is a duty, and a man should not receive wages in proportion to what he has produced, but in proportion to his virtue as exemplified by his industry.
-
-This is the morality of the Slave State, applied in circumstances totally unlike those in which it arose. No wonder the result has been disastrous. Let us take an illustration. Suppose that, at a given moment, a certain number of people are engaged in the manufacture of pins. They make as many pins as the world needs, working (say) eight hours a day. Someone makes an invention by which the same number of men can make twice as many pins: pins are already so cheap that hardly any more will be bought at a lower price. In a sensible world, everybody concerned in the manufacturing of pins would take to working four hours instead of eight, and everything else would go on as before. But in the actual world this would be thought demoralizing. The men still work eight hours, there are too many pins, some employers go bankrupt, and half the men previously concerned in making pins are thrown out of work. There is, in the end, just as much leisure as on the other plan, but half the men are totally idle while half are still overworked. In this way, it is insured that the unavoidable leisure shall cause misery all round instead of being a universal source of happiness. Can anything more insane be imagined?
-
-The idea that the poor should have leisure has always been shocking to the rich. In England, in the early nineteenth century, fifteen hours was the ordinary day's work for a man; children sometimes did as much, and very commonly did twelve hours a day. When meddlesome busybodies suggested that perhaps these hours were rather long, they were told that work kept adults from drink and children from mischief. When I was a child, shortly after urban working men had acquired the vote, certain public holidays were established by law, to the great indignation of the upper classes. I remember hearing an old Duchess say: 'What do the poor want with holidays? They ought to work.' People nowadays are less frank, but the sentiment persists, and is the source of much of our economic confusion.
-
-Let us, for a moment, consider the ethics of work frankly, without superstition. Every human being, of necessity, consumes, in the course of his life, a certain amount of the produce of human labor. Assuming, as we may, that labor is on the whole disagreeable, it is unjust that a man should consume more than he produces. Of course he may provide services rather than commodities, like a medical man, for example; but he should provide something in return for his board and lodging. to this extent, the duty of work must be admitted, but to this extent only.
-
-I shall not dwell upon the fact that, in all modern societies outside the USSR, many people escape even this minimum amount of work, namely all those who inherit money and all those who marry money. I do not think the fact that these people are allowed to be idle is nearly so harmful as the fact that wage-earners are expected to overwork or starve.
-
-If the ordinary wage-earner worked four hours a day, there would be enough for everybody and no unemployment -- assuming a certain very moderate amount of sensible organization. This idea shocks the well-to-do, because they are convinced that the poor would not know how to use so much leisure. In America men often work long hours even when they are well off; such men, naturally, are indignant at the idea of leisure for wage-earners, except as the grim punishment of unemployment; in fact, they dislike leisure even for their sons. Oddly enough, while they wish their sons to work so hard as to have no time to be civilized, they do not mind their wives and daughters having no work at all. the snobbish admiration of uselessness, which, in an aristocratic society, extends to both sexes, is, under a plutocracy, confined to women; this, however, does not make it any more in agreement with common sense.
-
-The wise use of leisure, it must be conceded, is a product of civilization and education. A man who has worked long hours all his life will become bored if he becomes suddenly idle. But without a considerable amount of leisure a man is cut off from many of the best things. There is no longer any reason why the bulk of the population should suffer this deprivation; only a foolish asceticism, usually vicarious, makes us continue to insist on work in excessive quantities now that the need no longer exists.
-
-In the new creed which controls the government of Russia, while there is much that is very different from the traditional teaching of the West, there are some things that are quite unchanged. The attitude of the governing classes, and especially of those who conduct educational propaganda, on the subject of the dignity of labor, is almost exactly that which the governing classes of the world have always preached to what were called the 'honest poor'. Industry, sobriety, willingness to work long hours for distant advantages, even submissiveness to authority, all these reappear; moreover authority still represents the will of the Ruler of the Universe, Who, however, is now called by a new name, Dialectical Materialism.
-
-The victory of the proletariat in Russia has some points in common with the victory of the feminists in some other countries. For ages, men had conceded the superior saintliness of women, and had consoled women for their inferiority by maintaining that saintliness is more desirable than power. At last the feminists decided that they would have both, since the pioneers among them believed all that the men had told them about the desirability of virtue, but not what they had told them about the worthlessness of political power. A similar thing has happened in Russia as regards manual work. For ages, the rich and their sycophants have written in praise of 'honest toil', have praised the simple life, have professed a religion which teaches that the poor are much more likely to go to heaven than the rich, and in general have tried to make manual workers believe that there is some special nobility about altering the position of matter in space, just as men tried to make women believe that they derived some special nobility from their sexual enslavement. In Russia, all this teaching about the excellence of manual work has been taken seriously, with the result that the manual worker is more honored than anyone else. What are, in essence, revivalist appeals are made, but not for the old purposes: they are made to secure shock workers for special tasks. Manual work is the ideal which is held before the young, and is the basis of all ethical teaching.
-
-For the present, possibly, this is all to the good. A large country, full of natural resources, awaits development, and has has to be developed with very little use of credit. In these circumstances, hard work is necessary, and is likely to bring a great reward. But what will happen when the point has been reached where everybody could be comfortable without working long hours?
-
-In the West, we have various ways of dealing with this problem. We have no attempt at economic justice, so that a large proportion of the total produce goes to a small minority of the population, many of whom do no work at all. Owing to the absence of any central control over production, we produce hosts of things that are not wanted. We keep a large percentage of the working population idle, because we can dispense with their labor by making the others overwork. When all these methods prove inadequate, we have a war: we cause a number of people to manufacture high explosives, and a number of others to explode them, as if we were children who had just discovered fireworks. By a combination of all these devices we manage, though with difficulty, to keep alive the notion that a great deal of severe manual work must be the lot of the average man.
-
-In Russia, owing to more economic justice and central control over production, the problem will have to be differently solved. the rational solution would be, as soon as the necessaries and elementary comforts can be provided for all, to reduce the hours of labor gradually, allowing a popular vote to decide, at each stage, whether more leisure or more goods were to be preferred. But, having taught the supreme virtue of hard work, it is difficult to see how the authorities can aim at a paradise in which there will be much leisure and little work. It seems more likely that they will find continually fresh schemes, by which present leisure is to be sacrificed to future productivity. I read recently of an ingenious plan put forward by Russian engineers, for making the White Sea and the northern coasts of Siberia warm, by putting a dam across the Kara Sea. An admirable project, but liable to postpone proletarian comfort for a generation, while the nobility of toil is being displayed amid the ice-fields and snowstorms of the Arctic Ocean. This sort of thing, if it happens, will be the result of regarding the virtue of hard work as an end in itself, rather than as a means to a state of affairs in which it is no longer needed.
-
-The fact is that moving matter about, while a certain amount of it is necessary to our existence, is emphatically not one of the ends of human life. If it were, we should have to consider every navvy superior to Shakespeare. We have been misled in this matter by two causes. One is the necessity of keeping the poor contented, which has led the rich, for thousands of years, to preach the dignity of labor, while taking care themselves to remain undignified in this respect. The other is the new pleasure in mechanism, which makes us delight in the astonishingly clever changes that we can produce on the earth's surface. Neither of these motives makes any great appeal to the actual worker. If you ask him what he thinks the best part of his life, he is not likely to say: 'I enjoy manual work because it makes me feel that I am fulfilling man's noblest task, and because I like to think how much man can transform his planet. It is true that my body demands periods of rest, which I have to fill in as best I may, but I am never so happy as when the morning comes and I can return to the toil from which my contentment springs.' I have never heard working men say this sort of thing. They consider work, as it should be considered, a necessary means to a livelihood, and it is from their leisure that they derive whatever happiness they may enjoy.
-
-It will be said that, while a little leisure is pleasant, men would not know how to fill their days if they had only four hours of work out of the twenty-four. In so far as this is true in the modern world, it is a condemnation of our civilization; it would not have been true at any earlier period. There was formerly a capacity for light-heartedness and play which has been to some extent inhibited by the cult of efficiency. The modern man thinks that everything ought to be done for the sake of something else, and never for its own sake. Serious-minded persons, for example, are continually condemning the habit of going to the cinema, and telling us that it leads the young into crime. But all the work that goes to producing a cinema is respectable, because it is work, and because it brings a money profit. The notion that the desirable activities are those that bring a profit has made everything topsy-turvy. The butcher who provides you with meat and the baker who provides you with bread are praiseworthy, because they are making money; but when you enjoy the food they have provided, you are merely frivolous, unless you eat only to get strength for your work. Broadly speaking, it is held that getting money is good and spending money is bad. Seeing that they are two sides of one transaction, this is absurd; one might as well maintain that keys are good, but keyholes are bad. Whatever merit there may be in the production of goods must be entirely derivative from the advantage to be obtained by consuming them. The individual, in our society, works for profit; but the social purpose of his work lies in the consumption of what he produces. It is this divorce between the individual and the social purpose of production that makes it so difficult for men to think clearly in a world in which profit-making is the incentive to industry. We think too much of production, and too little of consumption. One result is that we attach too little importance to enjoyment and simple happiness, and that we do not judge production by the pleasure that it gives to the consumer.
-
-When I suggest that working hours should be reduced to four, I am not meaning to imply that all the remaining time should necessarily be spent in pure frivolity. I mean that four hours' work a day should entitle a man to the necessities and elementary comforts of life, and that the rest of his time should be his to use as he might see fit. It is an essential part of any such social system that education should be carried further than it usually is at present, and should aim, in part, at providing tastes which would enable a man to use leisure intelligently. I am not thinking mainly of the sort of things that would be considered 'highbrow'. Peasant dances have died out except in remote rural areas, but the impulses which caused them to be cultivated must still exist in human nature. The pleasures of urban populations have become mainly passive: seeing cinemas, watching football matches, listening to the radio, and so on. This results from the fact that their active energies are fully taken up with work; if they had more leisure, they would again enjoy pleasures in which they took an active part.
-
-In the past, there was a small leisure class and a larger working class. The leisure class enjoyed advantages for which there was no basis in social justice; this necessarily made it oppressive, limited its sympathies, and caused it to invent theories by which to justify its privileges. These facts greatly diminished its excellence, but in spite of this drawback it contributed nearly the whole of what we call civilization. It cultivated the arts and discovered the sciences; it wrote the books, invented the philosophies, and refined social relations. Even the liberation of the oppressed has usually been inaugurated from above. Without the leisure class, mankind would never have emerged from barbarism.
-
-The method of a leisure class without duties was, however, extraordinarily wasteful. None of the members of the class had to be taught to be industrious, and the class as a whole was not exceptionally intelligent. The class might produce one Darwin, but against him had to be set tens of thousands of country gentlemen who never thought of anything more intelligent than fox-hunting and punishing poachers. At present, the universities are supposed to provide, in a more systematic way, what the leisure class provided accidentally and as a by-product. This is a great improvement, but it has certain drawbacks. University life is so different from life in the world at large that men who live in academic milieu tend to be unaware of the preoccupations and problems of ordinary men and women; moreover their ways of expressing themselves are usually such as to rob their opinions of the influence that they ought to have upon the general public. Another disadvantage is that in universities studies are organized, and the man who thinks of some original line of research is likely to be discouraged. Academic institutions, therefore, useful as they are, are not adequate guardians of the interests of civilization in a world where everyone outside their walls is too busy for unutilitarian pursuits.
-
-In a world where no one is compelled to work more than four hours a day, every person possessed of scientific curiosity will be able to indulge it, and every painter will be able to paint without starving, however excellent his pictures may be. Young writers will not be obliged to draw attention to themselves by sensational pot-boilers, with a view to acquiring the economic independence needed for monumental works, for which, when the time at last comes, they will have lost the taste and capacity. Men who, in their professional work, have become interested in some phase of economics or government, will be able to develop their ideas without the academic detachment that makes the work of university economists often seem lacking in reality. Medical men will have the time to learn about the progress of medicine, teachers will not be exasperatedly struggling to teach by routine methods things which they learnt in their youth, which may, in the interval, have been proved to be untrue.
-
-Above all, there will be happiness and joy of life, instead of frayed nerves, weariness, and dyspepsia. The work exacted will be enough to make leisure delightful, but not enough to produce exhaustion. Since men will not be tired in their spare time, they will not demand only such amusements as are passive and vapid. At least one per cent will probably devote the time not spent in professional work to pursuits of some public importance, and, since they will not depend upon these pursuits for their livelihood, their originality will be unhampered, and there will be no need to conform to the standards set by elderly pundits. But it is not only in these exceptional cases that the advantages of leisure will appear. Ordinary men and women, having the opportunity of a happy life, will become more kindly and less persecuting and less inclined to view others with suspicion. The taste for war will die out, partly for this reason, and partly because it will involve long and severe work for all. Good nature is, of all moral qualities, the one that the world needs most, and good nature is the result of ease and security, not of a life of arduous struggle. Modern methods of production have given us the possibility of ease and security for all; we have chosen, instead, to have overwork for some and starvation for others. Hitherto we have continued to be as energetic as we were before there were machines; in this we have been foolish, but there is no reason to go on being foolish forever.
-
-[1] Since then, members of the Communist Party have succeeded to this privilege of the warriors and priests.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/wrap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/node_modules/wordwrap/test/wrap.js
deleted file mode 100644 (file)
index 0cfb76d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var assert = require('assert');
-var wordwrap = require('wordwrap');
-
-var fs = require('fs');
-var idleness = fs.readFileSync(__dirname + '/idleness.txt', 'utf8');
-
-exports.stop80 = function () {
-    var lines = wordwrap(80)(idleness).split(/\n/);
-    var words = idleness.split(/\s+/);
-    
-    lines.forEach(function (line) {
-        assert.ok(line.length <= 80, 'line > 80 columns');
-        var chunks = line.match(/\S/) ? line.split(/\s+/) : [];
-        assert.deepEqual(chunks, words.splice(0, chunks.length));
-    });
-};
-
-exports.start20stop60 = function () {
-    var lines = wordwrap(20, 100)(idleness).split(/\n/);
-    var words = idleness.split(/\s+/);
-    
-    lines.forEach(function (line) {
-        assert.ok(line.length <= 100, 'line > 100 columns');
-        var chunks = line
-            .split(/\s+/)
-            .filter(function (x) { return x.match(/\S/) })
-        ;
-        assert.deepEqual(chunks, words.splice(0, chunks.length));
-        assert.deepEqual(line.slice(0, 20), new Array(20 + 1).join(' '));
-    });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/optimist/package.json
deleted file mode 100644 (file)
index a59c35f..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-{
-  "_args": [
-    [
-      "optimist@https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "optimist@https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-  "_id": "optimist@https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
-  "_location": "/grunt-standard/standard-format/esformatter/optimist",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "optimist@https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-    "name": "optimist",
-    "escapedName": "optimist",
-    "rawSpec": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-optimist/issues"
-  },
-  "dependencies": {
-    "minimist": "~0.0.1",
-    "wordwrap": "~0.0.2"
-  },
-  "description": "Light-weight option parsing with an argv hash. No optstrings attached.",
-  "devDependencies": {
-    "hashish": "~0.0.4",
-    "tap": "~0.4.0"
-  },
-  "engine": {
-    "node": ">=0.4"
-  },
-  "homepage": "https://github.com/substack/node-optimist#readme",
-  "keywords": [
-    "argument",
-    "args",
-    "option",
-    "parser",
-    "parsing",
-    "cli",
-    "command"
-  ],
-  "license": "MIT/X11",
-  "main": "./index.js",
-  "name": "optimist",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/substack/node-optimist.git"
-  },
-  "scripts": {
-    "test": "tap ./test/*.js"
-  },
-  "version": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/.travis.yml
deleted file mode 100644 (file)
index 895dbd3..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - 0.6
-  - 0.8
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/LICENSE
deleted file mode 100644 (file)
index ee27ba4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/example/async.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/example/async.js
deleted file mode 100644 (file)
index 6624ff7..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-var resolve = require('../');
-resolve('tap', { basedir: __dirname }, function (err, res) {
-    if (err) console.error(err)
-    else console.log(res)
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/index.js
deleted file mode 100644 (file)
index 51f194b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-var core = require('./lib/core');
-exports = module.exports = require('./lib/async');
-exports.core = core;
-exports.isCore = function (x) { return core[x] };
-exports.sync = require('./lib/sync');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/async.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/async.js
deleted file mode 100644 (file)
index 0f0eeca..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-var core = require('./core');
-var fs = require('fs');
-var path = require('path');
-var caller = require('./caller.js');
-var nodeModulesPaths = require('./node-modules-paths.js');
-var splitRe = process.platform === 'win32' ? /[\/\\]/ : /\//;
-
-module.exports = function resolve (x, opts, cb) {
-    if (typeof opts === 'function') {
-        cb = opts;
-        opts = {};
-    }
-    if (!opts) opts = {};
-    if (typeof x !== 'string') {
-        return process.nextTick(function () {
-            cb(new Error('path must be a string'));
-        });
-    }
-    
-    var isFile = opts.isFile || function (file, cb) {
-        fs.stat(file, function (err, stat) {
-            if (err && err.code === 'ENOENT') cb(null, false)
-            else if (err) cb(err)
-            else cb(null, stat.isFile() || stat.isFIFO())
-        });
-    };
-    var readFile = opts.readFile || fs.readFile;
-    
-    var extensions = opts.extensions || [ '.js' ];
-    var y = opts.basedir || path.dirname(caller());
-    
-    opts.paths = opts.paths || [];
-    
-    if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[\\\/])/.test(x)) {
-        var res = path.resolve(y, x);
-        if (x === '..') res += '/';
-        if (/\/$/.test(x) && res === y) {
-            loadAsDirectory(res, opts.package, onfile);
-        }
-        else loadAsFile(res, opts.package, onfile);
-    }
-    else loadNodeModules(x, y, function (err, n, pkg) {
-        if (err) cb(err)
-        else if (n) cb(null, n, pkg)
-        else if (core[x]) return cb(null, x);
-        else cb(new Error("Cannot find module '" + x + "' from '" + y + "'"))
-    });
-    
-    function onfile (err, m, pkg) {
-        if (err) cb(err)
-        else if (m) cb(null, m, pkg)
-        else loadAsDirectory(res, function (err, d, pkg) {
-            if (err) cb(err)
-            else if (d) cb(null, d, pkg)
-            else cb(new Error("Cannot find module '" + x + "' from '" + y + "'"))
-        })
-    }
-    
-    function loadAsFile (x, pkg, cb) {
-        if (typeof pkg === 'function') {
-            cb = pkg;
-            pkg = undefined;
-        }
-        
-        var exts = [''].concat(extensions);
-        load(exts, x, pkg)
-               
-               function load (exts, x, pkg) {
-            if (exts.length === 0) return cb(null, undefined, pkg);
-            var file = x + exts[0];
-            
-            if (pkg) onpkg(null, pkg)
-            else loadpkg(path.dirname(file), onpkg);
-            
-            function onpkg (err, pkg_, dir) {
-                pkg = pkg_;
-                if (err) return cb(err)
-                if (dir && pkg && opts.pathFilter) {
-                    var rfile = path.relative(dir, file);
-                    var rel = rfile.slice(0, rfile.length - exts[0].length);
-                    var r = opts.pathFilter(pkg, x, rel);
-                    if (r) return load(
-                        [''].concat(extensions.slice()),
-                        path.resolve(dir, r),
-                        pkg
-                    );
-                }
-                isFile(file, onex);
-            }
-            function onex (err, ex) {
-                if (err) cb(err)
-                else if (!ex) load(exts.slice(1), x, pkg)
-                else cb(null, file, pkg)
-            }
-        }
-    }
-    
-    function loadpkg (dir, cb) {
-        if (dir === '' || dir === '/') return cb(null);
-        if (process.platform === 'win32' && /^\w:[\\\/]*$/.test(dir)) {
-            return cb(null);
-        }
-        if (/[\\\/]node_modules[\\\/]*$/.test(dir)) return cb(null);
-        
-        var pkgfile = path.join(dir, 'package.json');
-        isFile(pkgfile, function (err, ex) {
-            // on err, ex is false
-            if (!ex) return loadpkg(
-                path.dirname(dir), cb
-            );
-            
-            readFile(pkgfile, function (err, body) {
-                if (err) cb(err);
-                try { var pkg = JSON.parse(body) }
-                catch (err) {}
-                
-                if (pkg && opts.packageFilter) {
-                    pkg = opts.packageFilter(pkg, pkgfile);
-                }
-                cb(null, pkg, dir);
-            });
-        });
-    }
-    
-    function loadAsDirectory (x, fpkg, cb) {
-        if (typeof fpkg === 'function') {
-            cb = fpkg;
-            fpkg = opts.package;
-        }
-        
-        var pkgfile = path.join(x, '/package.json');
-        isFile(pkgfile, function (err, ex) {
-            if (err) return cb(err);
-            if (!ex) return loadAsFile(path.join(x, '/index'), fpkg, cb);
-            
-            readFile(pkgfile, function (err, body) {
-                if (err) return cb(err);
-                try {
-                    var pkg = JSON.parse(body);
-                }
-                catch (err) {}
-                
-                if (opts.packageFilter) {
-                    pkg = opts.packageFilter(pkg, pkgfile);
-                }
-                
-                if (pkg.main) {
-                    if (pkg.main === '.' || pkg.main === './'){
-                        pkg.main = 'index'
-                    }
-                    loadAsFile(path.resolve(x, pkg.main), pkg, function (err, m, pkg) {
-                        if (err) return cb(err);
-                        if (m) return cb(null, m, pkg);
-                        if (!pkg) return loadAsFile(path.join(x, '/index'), pkg, cb);
-
-                        var dir = path.resolve(x, pkg.main);
-                        loadAsDirectory(dir, pkg, function (err, n, pkg) {
-                            if (err) return cb(err);
-                            if (n) return cb(null, n, pkg);
-                            loadAsFile(path.join(x, '/index'), pkg, cb);
-                        });
-                    });
-                    return;
-                }
-                
-                loadAsFile(path.join(x, '/index'), pkg, cb);
-            });
-        });
-    }
-    
-    function loadNodeModules (x, start, cb) {
-        (function process (dirs) {
-            if (dirs.length === 0) return cb(null, undefined);
-            var dir = dirs[0];
-            
-            var file = path.join(dir, '/', x);
-            loadAsFile(file, undefined, onfile);
-            
-            function onfile (err, m, pkg) {
-                if (err) return cb(err);
-                if (m) return cb(null, m, pkg);
-                loadAsDirectory(path.join(dir, '/', x), undefined, ondir);
-            }
-            
-            function ondir (err, n, pkg) {
-                if (err) return cb(err);
-                if (n) return cb(null, n, pkg);
-                process(dirs.slice(1));
-            }
-        })(nodeModulesPaths(start, opts));
-    }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/caller.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/caller.js
deleted file mode 100644 (file)
index 5536549..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = function () {
-    // see https://code.google.com/p/v8/wiki/JavaScriptStackTraceApi
-    var origPrepareStackTrace = Error.prepareStackTrace;
-    Error.prepareStackTrace = function (_, stack) { return stack };
-    var stack = (new Error()).stack;
-    Error.prepareStackTrace = origPrepareStackTrace;
-    return stack[2].getFileName();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.js
deleted file mode 100644 (file)
index ea4a6c8..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-module.exports = require('./core.json').reduce(function (acc, x) {
-    acc[x] = true;
-    return acc;
-}, {});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/core.json
deleted file mode 100644 (file)
index 28560f7..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-[
-    "assert",
-    "buffer_ieee754",
-    "buffer",
-    "child_process",
-    "cluster",
-    "console",
-    "constants",
-    "crypto",
-    "_debugger",
-    "dgram",
-    "dns",
-    "domain",
-    "events",
-    "freelist",
-    "fs",
-    "http",
-    "https",
-    "_linklist",
-    "module",
-    "net",
-    "os",
-    "path",
-    "punycode",
-    "querystring",
-    "readline",
-    "repl",
-    "stream",
-    "string_decoder",
-    "sys",
-    "timers",
-    "tls",
-    "tty",
-    "url",
-    "util",
-    "vm",
-    "zlib"
-]
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/node-modules-paths.js
deleted file mode 100644 (file)
index 7c58e10..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var path = require('path');
-
-module.exports = function (start, opts) {
-    var modules = opts.moduleDirectory
-        ? [].concat(opts.moduleDirectory)
-        : ['node_modules']
-    ;
-    var prefix = '/';
-    if (/^([A-Za-z]:)/.test(start)) {
-        prefix = '';
-    } else if (/^\\\\/.test(start)) {
-        prefix = '\\\\';
-    }
-    var splitRe = process.platform === 'win32' ? /[\/\\]/ : /\/+/;
-
-    // ensure that `start` is an absolute path at this point,
-    // resolving againt the process' current working directory
-    start = path.resolve(start);
-
-    var parts = start.split(splitRe);
-
-    var dirs = [];
-    for (var i = parts.length - 1; i >= 0; i--) {
-        if (modules.indexOf(parts[i]) !== -1) continue;
-        dirs = dirs.concat(modules.map(function(module_dir) {
-            return prefix + path.join(
-                path.join.apply(path, parts.slice(0, i + 1)),
-                module_dir
-            );
-        }));
-    }
-    if (process.platform === 'win32'){
-        dirs[dirs.length-1] = dirs[dirs.length-1].replace(":", ":\\");
-    }
-    return dirs.concat(opts.paths);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/lib/sync.js
deleted file mode 100644 (file)
index ef91edd..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-var core = require('./core');
-var fs = require('fs');
-var path = require('path');
-var caller = require('./caller.js');
-var nodeModulesPaths = require('./node-modules-paths.js');
-
-module.exports = function (x, opts) {
-    if (!opts) opts = {};
-    var isFile = opts.isFile || function (file) {
-        try { var stat = fs.statSync(file) }
-        catch (err) { if (err && err.code === 'ENOENT') return false }
-        return stat.isFile() || stat.isFIFO();
-    };
-    var readFileSync = opts.readFileSync || fs.readFileSync;
-    
-    var extensions = opts.extensions || [ '.js' ];
-    var y = opts.basedir || path.dirname(caller());
-
-    opts.paths = opts.paths || [];
-
-    if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[\\\/])/.test(x)) {
-        var res = path.resolve(y, x);
-        if (x === '..') res += '/';
-        var m = loadAsFileSync(res) || loadAsDirectorySync(res);
-        if (m) return m;
-    } else {
-        var n = loadNodeModulesSync(x, y);
-        if (n) return n;
-    }
-    
-    if (core[x]) return x;
-    
-    throw new Error("Cannot find module '" + x + "' from '" + y + "'");
-    
-    function loadAsFileSync (x) {
-        if (isFile(x)) {
-            return x;
-        }
-        
-        for (var i = 0; i < extensions.length; i++) {
-            var file = x + extensions[i];
-            if (isFile(file)) {
-                return file;
-            }
-        }
-    }
-    
-    function loadAsDirectorySync (x) {
-        var pkgfile = path.join(x, '/package.json');
-        if (isFile(pkgfile)) {
-            var body = readFileSync(pkgfile, 'utf8');
-            try {
-                var pkg = JSON.parse(body);
-                if (opts.packageFilter) {
-                    pkg = opts.packageFilter(pkg, x);
-                }
-                
-                if (pkg.main) {
-                    var m = loadAsFileSync(path.resolve(x, pkg.main));
-                    if (m) return m;
-                    var n = loadAsDirectorySync(path.resolve(x, pkg.main));
-                    if (n) return n;
-                }
-            }
-            catch (err) {}
-        }
-        
-        return loadAsFileSync(path.join( x, '/index'));
-    }
-    
-    function loadNodeModulesSync (x, start) {
-        var dirs = nodeModulesPaths(start, opts);
-        for (var i = 0; i < dirs.length; i++) {
-            var dir = dirs[i];
-            var m = loadAsFileSync(path.join( dir, '/', x));
-            if (m) return m;
-            var n = loadAsDirectorySync(path.join( dir, '/', x ));
-            if (n) return n;
-        }
-    }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/package.json
deleted file mode 100644 (file)
index 22aa3ce..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-{
-  "_args": [
-    [
-      "resolve@https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "resolve@https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-  "_id": "resolve@https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-00kq0FTKgA9b76YS5hvqwe7Jj48=",
-  "_location": "/grunt-standard/standard-format/esformatter/resolve",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "resolve@https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-    "name": "resolve",
-    "escapedName": "resolve",
-    "rawSpec": "https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-resolve/issues"
-  },
-  "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously",
-  "devDependencies": {
-    "tap": "0.4.13",
-    "tape": "^3.5.0"
-  },
-  "homepage": "https://github.com/substack/node-resolve#readme",
-  "keywords": [
-    "resolve",
-    "require",
-    "node",
-    "module"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "resolve",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-resolve.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "version": "https://registry.npmjs.org/resolve/-/resolve-1.1.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/readme.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/readme.markdown
deleted file mode 100644 (file)
index 4fab9b0..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-# resolve
-
-implements the [node `require.resolve()`
-algorithm](http://nodejs.org/docs/v0.4.8/api/all.html#all_Together...)
-such that you can `require.resolve()` on behalf of a file asynchronously and
-synchronously
-
-[![build status](https://secure.travis-ci.org/substack/node-resolve.png)](http://travis-ci.org/substack/node-resolve)
-
-# example
-
-asynchronously resolve:
-
-``` js
-var resolve = require('resolve');
-resolve('tap', { basedir: __dirname }, function (err, res) {
-    if (err) console.error(err)
-    else console.log(res)
-});
-```
-
-```
-$ node example/async.js
-/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
-```
-
-synchronously resolve:
-
-``` js
-var resolve = require('resolve');
-var res = resolve.sync('tap', { basedir: __dirname });
-console.log(res);
-```
-
-```
-$ node example/sync.js
-/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
-```
-
-# methods
-
-``` js
-var resolve = require('resolve')
-```
-
-## resolve(id, opts={}, cb)
-
-Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`.
-
-options are:
-
-* opts.basedir - directory to begin resolving from
-
-* opts.package - `package.json` data applicable to the module being loaded
-
-* opts.extensions - array of file extensions to search in order
-
-* opts.readFile - how to read files asynchronously
-
-* opts.isFile - function to asynchronously test whether a file exists
-
-* opts.packageFilter - transform the parsed package.json contents before looking
-at the "main" field
-
-* opts.pathFilter(pkg, path, relativePath) - transform a path within a package
-  * pkg - package data
-  * path - the path being resolved
-  * relativePath - the path relative from the package.json location
-  * returns - a relative path that will be joined from the package.json location
-
-* opts.paths - require.paths array to use if nothing is found on the normal
-node_modules recursive walk (probably don't use this)
-
-* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
-
-default `opts` values:
-
-``` javascript
-{
-    paths: [],
-    basedir: __dirname,
-    extensions: [ '.js' ],
-    readFile: fs.readFile,
-    isFile: function (file, cb) {
-        fs.stat(file, function (err, stat) {
-            if (err && err.code === 'ENOENT') cb(null, false)
-            else if (err) cb(err)
-            else cb(null, stat.isFile())
-        });
-    },
-    moduleDirectory: 'node_modules'
-}
-```
-
-## resolve.sync(id, opts)
-
-Synchronously resolve the module path string `id`, returning the result and
-throwing an error when `id` can't be resolved.
-
-options are:
-
-* opts.basedir - directory to begin resolving from
-
-* opts.extensions - array of file extensions to search in order
-
-* opts.readFile - how to read files synchronously
-
-* opts.isFile - function to synchronously test whether a file exists
-
-* `opts.packageFilter(pkg, pkgfile)` - transform the parsed package.json
-* contents before looking at the "main" field
-
-* opts.paths - require.paths array to use if nothing is found on the normal
-node_modules recursive walk (probably don't use this)
-
-* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
-
-default `opts` values:
-
-``` javascript
-{
-    paths: [],
-    basedir: __dirname,
-    extensions: [ '.js' ],
-    readFileSync: fs.readFileSync,
-    isFile: function (file) {
-        try { return fs.statSync(file).isFile() }
-        catch (e) { return false }
-    },
-    moduleDirectory: 'node_modules'
-}
-````
-
-## resolve.isCore(pkg)
-
-Return whether a package is in core.
-
-# install
-
-With [npm](https://npmjs.org) do:
-
-```
-npm install resolve
-```
-
-# license
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/core.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/core.js
deleted file mode 100644 (file)
index 4a56682..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('core modules', function (t) {
-    t.ok(resolve.isCore('fs'));
-    t.ok(resolve.isCore('net'));
-    t.ok(resolve.isCore('http'));
-    
-    t.ok(!resolve.isCore('seq'));
-    t.ok(!resolve.isCore('../'));
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot.js
deleted file mode 100644 (file)
index b876772..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('dotdot', function (t) {
-    t.plan(4);
-    var dir = __dirname + '/dotdot/abc';
-    
-    resolve('..', { basedir : dir }, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, __dirname + '/dotdot/index.js');
-    });
-    
-    resolve('.', { basedir : dir }, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/index.js');
-    });
-});
-
-test('dotdot sync', function (t) {
-    t.plan(2);
-    var dir = __dirname + '/dotdot/abc';
-    
-    var a = resolve.sync('..', { basedir : dir });
-    t.equal(a, __dirname + '/dotdot/index.js');
-    
-    var b = resolve.sync('.', { basedir : dir });
-    t.equal(b, dir + '/index.js');
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/dotdot/index.js
deleted file mode 100644 (file)
index afec736..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'whatever'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/faulty_basedir.js
deleted file mode 100644 (file)
index 2440818..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-// not sure what's up with this test anymore
-if (process.platform !== 'win32') return;
-
-test('faulty basedir must produce error in windows', function (t) {
-    t.plan(1);
-
-    var resolverDir = 'C:\\a\\b\\c\\d';
-
-    resolve('tape/lib/test.js', { basedir : resolverDir }, function (err, res, pkg) {
-        t.equal(true, !!err);
-    });
-
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter.js
deleted file mode 100644 (file)
index 07c38f3..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('filter', function (t) {
-    t.plan(2);
-    var dir = __dirname + '/resolver';
-    resolve('./baz', {
-        basedir : dir,
-        packageFilter : function (pkg) {
-            pkg.main = 'doom';
-            return pkg;
-        }
-    }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/baz/doom.js');
-        t.equal(pkg.main, 'doom');
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/filter_sync.js
deleted file mode 100644 (file)
index 3f89b79..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('filter', function (t) {
-    var dir = __dirname + '/resolver';
-    var res = resolve.sync('./baz', {
-        basedir : dir,
-        packageFilter : function (pkg) {
-            pkg.main = 'doom'
-            return pkg;
-        }
-    });
-    t.equal(res, dir + '/baz/doom.js');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock.js
deleted file mode 100644 (file)
index 1cf3b12..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('mock', function (t) {
-    t.plan(6);
-    
-    var files = {
-        '/foo/bar/baz.js' : 'beep'
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            isFile : function (file, cb) {
-                cb(null, files.hasOwnProperty(file));
-            },
-            readFile : function (file, cb) {
-                cb(null, files[file]);
-            }
-        }
-    }
-    
-    resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/bar/baz.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/bar/baz.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('baz', opts('/foo/bar'), function (err, res) {
-        t.equal(err.message, "Cannot find module 'baz' from '/foo/bar'");
-    });
-    
-    resolve('../baz', opts('/foo/bar'), function (err, res) {
-        t.equal(err.message, "Cannot find module '../baz' from '/foo/bar'");
-    });
-});
-
-test('mock from package', function (t) {
-    t.plan(6);
-    
-    var files = {
-        '/foo/bar/baz.js' : 'beep'
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            package : { main: 'bar' },
-            isFile : function (file, cb) {
-                cb(null, files.hasOwnProperty(file));
-            },
-            readFile : function (file, cb) {
-                cb(null, files[file]);
-            }
-        }
-    }
-    
-    resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/bar/baz.js');
-        t.equal(pkg.main, 'bar');
-    });
-    
-    resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/bar/baz.js');
-        t.equal(pkg.main, 'bar');
-    });
-    
-    resolve('baz', opts('/foo/bar'), function (err, res) {
-        t.equal(err.message, "Cannot find module 'baz' from '/foo/bar'");
-    });
-    
-    resolve('../baz', opts('/foo/bar'), function (err, res) {
-        t.equal(err.message, "Cannot find module '../baz' from '/foo/bar'");
-    });
-});
-
-test('mock package', function (t) {
-    t.plan(2);
-    
-    var files = {
-        '/foo/node_modules/bar/baz.js' : 'beep',
-        '/foo/node_modules/bar/package.json' : JSON.stringify({
-            main : './baz.js'
-        })
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            isFile : function (file, cb) {
-                cb(null, files.hasOwnProperty(file));
-            },
-            readFile : function (file, cb) {
-                cb(null, files[file]);
-            }
-        }
-    }
-    
-    resolve('bar', opts('/foo'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/node_modules/bar/baz.js');
-        t.equal(pkg.main, './baz.js');
-    });
-});
-
-test('mock package from package', function (t) {
-    t.plan(2);
-    
-    var files = {
-        '/foo/node_modules/bar/baz.js' : 'beep',
-        '/foo/node_modules/bar/package.json' : JSON.stringify({
-            main : './baz.js'
-        })
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            package : { main: 'bar' },
-            isFile : function (file, cb) {
-                cb(null, files.hasOwnProperty(file));
-            },
-            readFile : function (file, cb) {
-                cb(null, files[file]);
-            }
-        }
-    }
-    
-    resolve('bar', opts('/foo'), function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, '/foo/node_modules/bar/baz.js');
-        t.equal(pkg.main, './baz.js');
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/mock_sync.js
deleted file mode 100644 (file)
index abfd289..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('mock', function (t) {
-    t.plan(4);
-    
-    var files = {
-        '/foo/bar/baz.js' : 'beep'
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            isFile : function (file) {
-                return files.hasOwnProperty(file)
-            },
-            readFileSync : function (file) {
-                return files[file]
-            }
-        }
-    }
-    
-    t.equal(
-        resolve.sync('./baz', opts('/foo/bar')),
-        '/foo/bar/baz.js'
-    );
-    
-    t.equal(
-        resolve.sync('./baz.js', opts('/foo/bar')),
-        '/foo/bar/baz.js'
-    );
-    
-    t.throws(function () {
-        resolve.sync('baz', opts('/foo/bar'));
-    });
-
-    t.throws(function () {
-        resolve.sync('../baz', opts('/foo/bar'));
-    });
-});
-
-test('mock package', function (t) {
-    t.plan(1);
-    
-    var files = {
-        '/foo/node_modules/bar/baz.js' : 'beep',
-        '/foo/node_modules/bar/package.json' : JSON.stringify({
-            main : './baz.js'
-        })
-    };
-    
-    function opts (basedir) {
-        return {
-            basedir : basedir,
-            isFile : function (file) {
-                return files.hasOwnProperty(file)
-            },
-            readFileSync : function (file) {
-                return files[file]
-            }
-        }
-    }
-    
-    t.equal(
-        resolve.sync('bar', opts('/foo')),
-        '/foo/node_modules/bar/baz.js'
-    );
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir.js
deleted file mode 100644 (file)
index 06395d8..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('moduleDirectory strings', function (t) {
-    t.plan(4);
-    var dir = __dirname + '/module_dir';
-    var xopts = {
-        basedir : dir,
-        moduleDirectory: 'xmodules'
-    };
-    resolve('aaa', xopts, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/xmodules/aaa/index.js');
-    });
-    
-    var yopts = {
-        basedir : dir,
-        moduleDirectory: 'ymodules'
-    };
-    resolve('aaa', yopts, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/ymodules/aaa/index.js');
-    });
-});
-
-test('moduleDirectory array', function (t) {
-    t.plan(6);
-    var dir = __dirname + '/module_dir';
-    var aopts = {
-        basedir : dir,
-        moduleDirectory: [ 'xmodules', 'ymodules', 'zmodules' ]
-    };
-    resolve('aaa', aopts, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/xmodules/aaa/index.js');
-    });
-    
-    var bopts = {
-        basedir : dir,
-        moduleDirectory: [ 'zmodules', 'ymodules', 'xmodules' ]
-    };
-    resolve('aaa', bopts, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/ymodules/aaa/index.js');
-    });
-    
-    var copts = {
-        basedir : dir,
-        moduleDirectory: [ 'xmodules', 'ymodules', 'zmodules' ]
-    };
-    resolve('bbb', copts, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, dir + '/zmodules/bbb/main.js');
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/xmodules/aaa/index.js
deleted file mode 100644 (file)
index 55cd18c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (x) { return x * 100 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/ymodules/aaa/index.js
deleted file mode 100644 (file)
index 651aca8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (x) { return x + 100 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/module_dir/zmodules/bbb/main.js
deleted file mode 100644 (file)
index 4325a0b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (n) { return n * 111 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path.js
deleted file mode 100644 (file)
index 2407189..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('$NODE_PATH', function (t) {
-    t.plan(4);
-    
-    resolve('aaa', {
-        paths: [
-            __dirname + '/node_path/x',
-            __dirname + '/node_path/y'
-        ],
-        basedir: __dirname,
-    }, function (err, res) {
-        t.equal(res, __dirname + '/node_path/x/aaa/index.js');
-    });
-    
-    resolve('bbb', {
-        paths: [
-            __dirname + '/node_path/x',
-            __dirname + '/node_path/y'
-        ],
-        basedir: __dirname,
-    }, function (err, res) {
-        t.equal(res, __dirname + '/node_path/y/bbb/index.js');
-    });
-    
-    resolve('ccc', {
-        paths: [
-            __dirname + '/node_path/x',
-            __dirname + '/node_path/y'
-        ],
-        basedir: __dirname,
-    }, function (err, res) {
-        t.equal(res, __dirname + '/node_path/x/ccc/index.js');
-    });
-
-    // ensure that relative paths still resolve against the
-    // regular `node_modules` correctly
-    resolve('tap', {
-        paths: [
-            'node_path',
-        ],
-        basedir: 'node_path/x',
-    }, function (err, res) {
-        t.equal(res, path.resolve(__dirname, '..', 'node_modules/tap/lib/main.js'));
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/aaa/index.js
deleted file mode 100644 (file)
index 1ea5913..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'A'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/x/ccc/index.js
deleted file mode 100644 (file)
index f186fa7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'C'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/bbb/index.js
deleted file mode 100644 (file)
index e22dd83..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'B'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/node_path/y/ccc/index.js
deleted file mode 100644 (file)
index d0043d1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'CY'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter.js
deleted file mode 100644 (file)
index 142f94d..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('#62: deep module references and the pathFilter', function(t){
-       t.plan(9);
-    
-       var resolverDir = __dirname + '/pathfilter/deep_ref';
-       var pathFilter = function(pkg, x, remainder){
-               t.equal(pkg.version, "1.2.3");
-               t.equal(x, resolverDir + '/node_modules/deep/ref');
-               t.equal(remainder, "ref");
-               return "alt";
-       };
-       
-       resolve('deep/ref', { basedir : resolverDir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-
-        t.equal(pkg.version, "1.2.3");
-        t.equal(res, resolverDir + '/node_modules/deep/ref.js');
-    });
-
-    resolve('deep/deeper/ref', { basedir: resolverDir },
-    function(err, res, pkg) {
-      if(err) t.fail(err);
-      t.notEqual(pkg, undefined);
-      t.equal(pkg.version, "1.2.3");
-      t.equal(res, resolverDir + '/node_modules/deep/deeper/ref.js');
-    });
-    
-    resolve('deep/ref', { basedir : resolverDir, pathFilter : pathFilter },
-    function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, resolverDir + '/node_modules/deep/alt.js');
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/pathfilter/deep_ref/node_modules/deep/package.json
deleted file mode 100644 (file)
index fe4b408..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-  "name": "deep",
-  "version": "1.2.3"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence.js
deleted file mode 100644 (file)
index c716f0e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('precedence', function (t) {
-    t.plan(3);
-    var dir = path.join(__dirname, 'precedence/aaa');
-    
-    resolve('./', { basedir : dir }, function (err, res, pkg) {
-        t.ifError(err);
-        t.equal(res, path.join(dir, 'index.js'));
-        t.equal(pkg.name, 'resolve');
-    });
-});
-
-test('./ should not load ${dir}.js', function (t) {
-    t.plan(1);
-    var dir = path.join(__dirname, 'precedence/bbb');
-    
-    resolve('./', { basedir : dir }, function (err, res, pkg) {
-        t.ok(err);
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa.js
deleted file mode 100644 (file)
index a182397..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'wtf'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/index.js
deleted file mode 100644 (file)
index 993b03c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'okok'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/aaa/main.js
deleted file mode 100644 (file)
index db38959..0000000
+++ /dev/null
@@ -1 +0,0 @@
-console.log(require('./'))
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/precedence/bbb.js
deleted file mode 100644 (file)
index c8a9996..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports '>_<'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver.js
deleted file mode 100644 (file)
index 5bbb05f..0000000
+++ /dev/null
@@ -1,281 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('async foo', function (t) {
-    t.plan(9);
-    var dir = __dirname + '/resolver';
-    
-    resolve('./foo', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/foo.js');
-        t.equal(pkg.name, 'resolve');
-    });
-    
-    resolve('./foo.js', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/foo.js');
-        t.equal(pkg.name, 'resolve');
-    });
-    
-    resolve('./foo', { basedir : dir, package: { main: 'resolver' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/foo.js');
-        t.equal(pkg.main, 'resolver');
-    });
-    
-    resolve('./foo.js', { basedir : dir, package: { main: 'resolver' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/foo.js');
-        t.equal(pkg.main, 'resolver');
-    });
-    
-    resolve('foo', { basedir : dir }, function (err) {
-        t.equal(err.message, "Cannot find module 'foo' from '" + path.resolve(dir) + "'");
-    });
-});
-
-test('bar', function (t) {
-    t.plan(6);
-    var dir = __dirname + '/resolver';
-    
-    resolve('foo', { basedir : dir + '/bar' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/bar/node_modules/foo/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('foo', { basedir : dir + '/bar' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/bar/node_modules/foo/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('foo', { basedir : dir + '/bar', package: { main: 'bar' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/bar/node_modules/foo/index.js');
-        t.equal(pkg, undefined);
-    });
-});
-
-test('baz', function (t) {
-    t.plan(4);
-    var dir = __dirname + '/resolver';
-    
-    resolve('./baz', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/baz/quux.js');
-        t.equal(pkg.main, 'quux.js');
-    });
-    
-    resolve('./baz', { basedir : dir, package: { main: 'resolver' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/baz/quux.js');
-        t.equal(pkg.main, 'quux.js');
-    });
-});
-
-test('biz', function (t) {
-    t.plan(24);
-    var dir = __dirname + '/resolver/biz/node_modules';
-    
-    resolve('./grux', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/grux/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('./grux', { basedir : dir, package: { main: 'biz' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/grux/index.js');
-        t.equal(pkg.main, 'biz');
-    });
-    
-    resolve('./garply', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/garply/lib/index.js');
-        t.equal(pkg.main, './lib');
-    });
-    
-    resolve('./garply', { basedir : dir, package: { main: 'biz' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/garply/lib/index.js');
-        t.equal(pkg.main, './lib');
-    });
-    
-    resolve('tiv', { basedir : dir + '/grux' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/tiv/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('tiv', { basedir : dir + '/grux', package: { main: 'grux' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/tiv/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('tiv', { basedir : dir + '/garply' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/tiv/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('tiv', { basedir : dir + '/garply', package: { main: './lib' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/tiv/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('grux', { basedir : dir + '/tiv' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/grux/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('grux', { basedir : dir + '/tiv', package: { main: 'tiv' }  }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/grux/index.js');
-        t.equal(pkg, undefined);
-    });
-    
-    resolve('garply', { basedir : dir + '/tiv' }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/garply/lib/index.js');
-        t.equal(pkg.main, './lib');
-    });
-    
-    resolve('garply', { basedir : dir + '/tiv', package: { main: 'tiv' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/garply/lib/index.js');
-        t.equal(pkg.main, './lib');
-    });
-});
-
-test('quux', function (t) {
-    t.plan(2);
-    var dir = __dirname + '/resolver/quux';
-    
-    resolve('./foo', { basedir : dir, package: { main: 'quux' } }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/foo/index.js');
-        t.equal(pkg.main, 'quux');
-    });
-});
-
-test('normalize', function (t) {
-    t.plan(2);
-    var dir = __dirname + '/resolver/biz/node_modules/grux';
-    
-    resolve('../grux', { basedir : dir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/index.js');
-        t.equal(pkg, undefined);
-    });
-});
-
-test('cup', function (t) {
-    t.plan(3);
-    var dir = __dirname + '/resolver';
-    
-    resolve('./cup', { basedir : dir, extensions : [ '.js', '.coffee' ] },
-    function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/cup.coffee');
-    });
-    
-    resolve('./cup.coffee', { basedir : dir }, function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/cup.coffee');
-    });
-    
-    resolve('./cup', { basedir : dir, extensions : [ '.js' ] },
-    function (err, res) {
-        t.equal(err.message, "Cannot find module './cup' from '" + path.resolve(dir) + "'");
-    });
-});
-
-test('mug', function (t) {
-    t.plan(3);
-    var dir = __dirname + '/resolver';
-    
-    resolve('./mug', { basedir : dir }, function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/mug.js');
-    });
-    
-    resolve('./mug', { basedir : dir, extensions : [ '.coffee', '.js' ] },
-    function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/mug.coffee');
-    });
-    
-    resolve('./mug', { basedir : dir, extensions : [ '.js', '.coffee' ] },
-    function (err, res) {
-        t.equal(res, dir + '/mug.js');
-    });
-});
-
-test('other path', function (t) {
-    t.plan(4);
-    var resolverDir = __dirname + '/resolver';
-    var dir = resolverDir + '/bar';
-    var otherDir = resolverDir + '/other_path';
-    
-    resolve('root', { basedir : dir, paths: [otherDir] }, function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, resolverDir + '/other_path/root.js');
-    });
-    
-    resolve('lib/other-lib', { basedir : dir, paths: [otherDir] },
-    function (err, res) {
-        if (err) t.fail(err);
-        t.equal(res, resolverDir + '/other_path/lib/other-lib.js');
-    });
-    
-    resolve('root', { basedir : dir, }, function (err, res) {
-        t.equal(err.message, "Cannot find module 'root' from '" + path.resolve(dir) + "'");
-    });
-    
-    resolve('zzz', { basedir : dir, paths: [otherDir] }, function (err, res) {
-        t.equal(err.message, "Cannot find module 'zzz' from '" + path.resolve(dir) + "'");
-    });
-});
-
-test('incorrect main', function (t) {
-    t.plan(1)
-
-    var resolverDir = __dirname + '/resolver';
-    var dir = resolverDir + '/incorrect_main';
-
-    resolve('./incorrect_main', { basedir : resolverDir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, dir + '/index.js');
-    });
-});
-
-test('without basedir', function (t) {
-    t.plan(1);
-
-    var dir = __dirname + '/resolver/without_basedir';
-    var tester = require(dir + '/main.js');
-
-    tester(t, function (err, res, pkg){
-        if (err) {
-         t.fail(err);
-       } else {
-          t.equal(res, dir + '/node_modules/mymodule.js');
-       }
-    });
-});
-
-test('#25: node modules with the same name as node stdlib modules', function (t) {
-    t.plan(1);
-
-    var resolverDir = __dirname + '/resolver/punycode';
-
-    resolve('punycode', { basedir : resolverDir }, function (err, res, pkg) {
-        if (err) t.fail(err);
-        t.equal(res, resolverDir + '/node_modules/punycode/index.js');
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/baz/package.json
deleted file mode 100644 (file)
index 6b81dcd..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "main" : "quux.js"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/lib/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/lib/index.js
deleted file mode 100644 (file)
index 0379e29..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'hello garply';
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/garply/package.json
deleted file mode 100644 (file)
index babaac5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "main" : "./lib"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/grux/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/grux/index.js
deleted file mode 100644 (file)
index 4996055..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('tiv') * 100;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/tiv/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/biz/node_modules/tiv/index.js
deleted file mode 100644 (file)
index 690aad3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 3;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/incorrect_main/package.json
deleted file mode 100644 (file)
index 1592ed3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "main" : "wrong.js"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/main.js
deleted file mode 100644 (file)
index 5f211e9..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-resolve = require('../../../');
-
-module.exports = function(t, cb) {
-  resolve('mymodule', null, cb);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/node_modules/mymodule.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver/without_basedir/node_modules/mymodule.js
deleted file mode 100644 (file)
index 2b58aa4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = "The tools we use have a profound (and devious!) influence on our thinking habits, and, therefore, on our thinking abilities.- E. Dijkstra"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/resolver_sync.js
deleted file mode 100644 (file)
index 5982531..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('foo', function (t) {
-    var dir = __dirname + '/resolver';
-    
-    t.equal(
-        resolve.sync('./foo', { basedir : dir }),
-        dir + '/foo.js'
-    );
-    
-    t.equal(
-        resolve.sync('./foo.js', { basedir : dir }),
-        dir + '/foo.js'
-    );
-    
-    t.throws(function () {
-        resolve.sync('foo', { basedir : dir });
-    });
-    
-    t.end();
-});
-
-test('bar', function (t) {
-    var dir = __dirname + '/resolver';
-    
-    t.equal(
-        resolve.sync('foo', { basedir : dir + '/bar' }),
-        dir + '/bar/node_modules/foo/index.js'
-    );
-    t.end();
-});
-
-test('baz', function (t) {
-    var dir = __dirname + '/resolver';
-    
-    t.equal(
-        resolve.sync('./baz', { basedir : dir }),
-        dir + '/baz/quux.js'
-    );
-    t.end();
-});
-
-test('biz', function (t) {
-    var dir = __dirname + '/resolver/biz/node_modules';
-    t.equal(
-        resolve.sync('./grux', { basedir : dir }),
-        dir + '/grux/index.js'
-    );
-    
-    t.equal(
-        resolve.sync('tiv', { basedir : dir + '/grux' }),
-        dir + '/tiv/index.js'
-    );
-    
-    t.equal(
-        resolve.sync('grux', { basedir : dir + '/tiv' }),
-        dir + '/grux/index.js'
-    );
-    t.end();
-});
-
-test('normalize', function (t) {
-    var dir = __dirname + '/resolver/biz/node_modules/grux';
-    t.equal(
-        resolve.sync('../grux', { basedir : dir }),
-        dir + '/index.js'
-    );
-    t.end();
-});
-
-test('cup', function (t) {
-    var dir = __dirname + '/resolver';
-    t.equal(
-        resolve.sync('./cup', {
-            basedir : dir,
-            extensions : [ '.js', '.coffee' ]
-        }),
-        dir + '/cup.coffee'
-    );
-    
-    t.equal(
-        resolve.sync('./cup.coffee', {
-            basedir : dir
-        }),
-        dir + '/cup.coffee'
-    );
-    
-    t.throws(function () {
-        resolve.sync('./cup', {
-            basedir : dir,
-            extensions : [ '.js' ]
-        })
-    });
-    
-    t.end();
-});
-
-test('mug', function (t) {
-    var dir = __dirname + '/resolver';
-    t.equal(
-        resolve.sync('./mug', { basedir : dir }),
-        dir + '/mug.js'
-    );
-    
-    t.equal(
-        resolve.sync('./mug', {
-            basedir : dir,
-            extensions : [ '.coffee', '.js' ]
-        }),
-        dir + '/mug.coffee'
-    );
-    
-    t.equal(
-        resolve.sync('./mug', {
-            basedir : dir,
-            extensions : [ '.js', '.coffee' ]
-        }),
-        dir + '/mug.js'
-    );
-    
-    t.end();
-});
-
-test('other path', function (t) {
-    var resolverDir = __dirname + '/resolver';
-    var dir = resolverDir + '/bar';
-    var otherDir = resolverDir + '/other_path';
-
-    var path = require('path');
-    
-    t.equal(
-        resolve.sync('root', {
-            basedir : dir,
-            paths: [otherDir] }),
-        resolverDir + '/other_path/root.js'
-    );
-    
-    t.equal(
-        resolve.sync('lib/other-lib', {
-            basedir : dir,
-            paths: [otherDir] }),
-        resolverDir + '/other_path/lib/other-lib.js'
-    );
-
-    t.throws(function () {
-        resolve.sync('root', { basedir : dir, });
-    });
-    
-    t.throws(function () {
-        resolve.sync('zzz', {
-            basedir : dir,
-            paths: [otherDir] });
-    });
-    
-    t.end();
-});
-
-test('incorrect main', function (t) {
-    var resolverDir = __dirname + '/resolver';
-    var dir = resolverDir + '/incorrect_main';
-
-    t.equal(
-        resolve.sync('./incorrect_main', { basedir : resolverDir }),
-        dir + '/index.js'
-    )
-
-    t.end()
-});
-
-test('#25: node modules with the same name as node stdlib modules', function (t) {
-    var resolverDir = __dirname + '/resolver/punycode';
-
-    t.equal(
-        resolve.sync('punycode', { basedir : resolverDir }),
-        resolverDir + '/node_modules/punycode/index.js'
-    )
-
-    t.end()
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs.js
deleted file mode 100644 (file)
index 957abfe..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-var path = require('path');
-
-test('subdirs', function (t) {
-    t.plan(2);
-    
-    var dir = path.join(__dirname, '/subdirs');
-    resolve('a/b/c/x.json', { basedir: dir }, function (err, res) {
-        t.ifError(err);
-        t.equal(res, path.join(dir, 'node_modules/a/b/c/x.json'));
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/b/c/x.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/b/c/x.json
deleted file mode 100644 (file)
index 3cc0ecb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3]
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/resolve/test/subdirs/node_modules/a/package.json
deleted file mode 100644 (file)
index 0967ef4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/CHANGELOG.md
deleted file mode 100644 (file)
index f0f75e9..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-# rocambole-indent changelog
-
-## v2.0.3 (2015-03-26)
-
- - fix comment alignment if surrounded by empty lines (#5)
-
-## v2.0.2 (2015-03-25)
-
- - fix edge cases related to comments just after `{` followed by an empty line.
-
-## v2.0.1 (2015-03-25)
-
- - safeguard against empty nodes/ast on `alignComments()`
-
-## v2.0.0 (2015-03-25)
-
- - change `alignComments()` rule to add one indent level if comment is inside
-   empty block/array/parenthesis
-
-## v1.1.1 (2015-03-25)
-
- - fix `WhiteSpace` conversion into `Indent` inside `alignComments()`
-
-## v1.1.0 (2015-03-25)
-
- - update `alignComments()` to consider `WhiteSpace` tokens at the begining of
-   the line as `Indent` tokens as well
- - add `whiteSpaceToIndent()`
-
-## v1.0.0 (2015-03-24)
-
- - add `alignComments()`
- - expose `updateBlockComment()`
-
-## v0.2.0 (2015-03-20)
-
- - rename `line()` as `addLevel()`
- - change the way `inBetween()` loops through the `start` and `end` tokens
-   (not inclusive)
- - `sanitize()` won't call `updateBlockComment()` since this is already handled
-   by `addLevel()`
-
-## v0.1.0 (2015-03-20)
-
- - initial release
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.jshintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.jshintrc
deleted file mode 100644 (file)
index 299877f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-  "laxbreak": true
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/.npmignore
deleted file mode 100644 (file)
index 7e6163d..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-support
-test
-examples
-example
-*.sock
-dist
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/History.md
deleted file mode 100644 (file)
index 770e483..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-
-2.1.3 / 2015-03-13
-==================
-
-  * Updated stdout/stderr example (#186)
-  * Updated example/stdout.js to match debug current behaviour
-  * Renamed example/stderr.js to stdout.js
-  * Update Readme.md (#184)
-  * replace high intensity foreground color for bold (#182, #183)
-
-2.1.2 / 2015-03-01
-==================
-
-  * dist: recompile
-  * update "ms" to v0.7.0
-  * package: update "browserify" to v9.0.3
-  * component: fix "ms.js" repo location
-  * changed bower package name
-  * updated documentation about using debug in a browser
-  * fix: security error on safari (#167, #168, @yields)
-
-2.1.1 / 2014-12-29
-==================
-
-  * browser: use `typeof` to check for `console` existence
-  * browser: check for `console.log` truthiness (fix IE 8/9)
-  * browser: add support for Chrome apps
-  * Readme: added Windows usage remarks
-  * Add `bower.json` to properly support bower install
-
-2.1.0 / 2014-10-15
-==================
-
-  * node: implement `DEBUG_FD` env variable support
-  * package: update "browserify" to v6.1.0
-  * package: add "license" field to package.json (#135, @panuhorsmalahti)
-
-2.0.0 / 2014-09-01
-==================
-
-  * package: update "browserify" to v5.11.0
-  * node: use stderr rather than stdout for logging (#29, @stephenmathieson)
-
-1.0.4 / 2014-07-15
-==================
-
-  * dist: recompile
-  * example: remove `console.info()` log usage
-  * example: add "Content-Type" UTF-8 header to browser example
-  * browser: place %c marker after the space character
-  * browser: reset the "content" color via `color: inherit`
-  * browser: add colors support for Firefox >= v31
-  * debug: prefer an instance `log()` function over the global one (#119)
-  * Readme: update documentation about styled console logs for FF v31 (#116, @wryk)
-
-1.0.3 / 2014-07-09
-==================
-
-  * Add support for multiple wildcards in namespaces (#122, @seegno)
-  * browser: fix lint
-
-1.0.2 / 2014-06-10
-==================
-
-  * browser: update color palette (#113, @gscottolson)
-  * common: make console logging function configurable (#108, @timoxley)
-  * node: fix %o colors on old node <= 0.8.x
-  * Makefile: find node path using shell/which (#109, @timoxley)
-
-1.0.1 / 2014-06-06
-==================
-
-  * browser: use `removeItem()` to clear localStorage
-  * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777)
-  * package: add "contributors" section
-  * node: fix comment typo
-  * README: list authors
-
-1.0.0 / 2014-06-04
-==================
-
-  * make ms diff be global, not be scope
-  * debug: ignore empty strings in enable()
-  * node: make DEBUG_COLORS able to disable coloring
-  * *: export the `colors` array
-  * npmignore: don't publish the `dist` dir
-  * Makefile: refactor to use browserify
-  * package: add "browserify" as a dev dependency
-  * Readme: add Web Inspector Colors section
-  * node: reset terminal color for the debug content
-  * node: map "%o" to `util.inspect()`
-  * browser: map "%j" to `JSON.stringify()`
-  * debug: add custom "formatters"
-  * debug: use "ms" module for humanizing the diff
-  * Readme: add "bash" syntax highlighting
-  * browser: add Firebug color support
-  * browser: add colors for WebKit browsers
-  * node: apply log to `console`
-  * rewrite: abstract common logic for Node & browsers
-  * add .jshintrc file
-
-0.8.1 / 2014-04-14
-==================
-
-  * package: re-add the "component" section
-
-0.8.0 / 2014-03-30
-==================
-
-  * add `enable()` method for nodejs. Closes #27
-  * change from stderr to stdout
-  * remove unnecessary index.js file
-
-0.7.4 / 2013-11-13
-==================
-
-  * remove "browserify" key from package.json (fixes something in browserify)
-
-0.7.3 / 2013-10-30
-==================
-
-  * fix: catch localStorage security error when cookies are blocked (Chrome)
-  * add debug(err) support. Closes #46
-  * add .browser prop to package.json. Closes #42
-
-0.7.2 / 2013-02-06
-==================
-
-  * fix package.json
-  * fix: Mobile Safari (private mode) is broken with debug
-  * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript
-
-0.7.1 / 2013-02-05
-==================
-
-  * add repository URL to package.json
-  * add DEBUG_COLORED to force colored output
-  * add browserify support
-  * fix component. Closes #24
-
-0.7.0 / 2012-05-04
-==================
-
-  * Added .component to package.json
-  * Added debug.component.js build
-
-0.6.0 / 2012-03-16
-==================
-
-  * Added support for "-" prefix in DEBUG [Vinay Pulim]
-  * Added `.enabled` flag to the node version [TooTallNate]
-
-0.5.0 / 2012-02-02
-==================
-
-  * Added: humanize diffs. Closes #8
-  * Added `debug.disable()` to the CS variant
-  * Removed padding. Closes #10
-  * Fixed: persist client-side variant again. Closes #9
-
-0.4.0 / 2012-02-01
-==================
-
-  * Added browser variant support for older browsers [TooTallNate]
-  * Added `debug.enable('project:*')` to browser variant [TooTallNate]
-  * Added padding to diff (moved it to the right)
-
-0.3.0 / 2012-01-26
-==================
-
-  * Added millisecond diff when isatty, otherwise UTC string
-
-0.2.0 / 2012-01-22
-==================
-
-  * Added wildcard support
-
-0.1.0 / 2011-12-02
-==================
-
-  * Added: remove colors unless stderr isatty [TooTallNate]
-
-0.0.1 / 2010-01-03
-==================
-
-  * Initial release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Makefile
deleted file mode 100644 (file)
index b0bde6e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-# get Makefile directory name: http://stackoverflow.com/a/5982798/376773
-THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
-THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
-
-# BIN directory
-BIN := $(THIS_DIR)/node_modules/.bin
-
-# applications
-NODE ?= $(shell which node)
-NPM ?= $(NODE) $(shell which npm)
-BROWSERIFY ?= $(NODE) $(BIN)/browserify
-
-all: dist/debug.js
-
-install: node_modules
-
-clean:
-       @rm -rf node_modules dist
-
-dist:
-       @mkdir -p $@
-
-dist/debug.js: node_modules browser.js debug.js dist
-       @$(BROWSERIFY) \
-               --standalone debug \
-               . > $@
-
-node_modules: package.json
-       @NODE_ENV= $(NPM) install
-       @touch node_modules
-
-.PHONY: all install clean
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/Readme.md
deleted file mode 100644 (file)
index 14222e0..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-# debug
-
-  tiny node.js debugging utility modelled after node core's debugging technique.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
- With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.
-
-Example _app.js_:
-
-```js
-var debug = require('debug')('http')
-  , http = require('http')
-  , name = 'My App';
-
-// fake app
-
-debug('booting %s', name);
-
-http.createServer(function(req, res){
-  debug(req.method + ' ' + req.url);
-  res.end('hello\n');
-}).listen(3000, function(){
-  debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example _worker.js_:
-
-```js
-var debug = require('debug')('worker');
-
-setInterval(function(){
-  debug('doing some work');
-}, 1000);
-```
-
- The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:
-
-  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)
-
-  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)
-
-#### Windows note
-
- On Windows the environment variable is set using the `set` command. 
- ```cmd
- set DEBUG=*,-not_this
- ```
-
-Then, run the program to be debugged as usual.
-
-## Millisecond diff
-
-  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
-
-  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
-
-  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
-
-## Conventions
-
- If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".
-
-## Wildcards
-
-  The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-  You can also exclude specific debuggers by prefixing them with a "-" character.  For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:".
-
-## Browser support
-
-  Debug works in the browser as well, currently persisted by `localStorage`. Consider the situation shown below where you have `worker:a` and `worker:b`, and wish to debug both. Somewhere in the code on your page, include:
-
-```js
-window.myDebug = require("debug");
-```
-
-  ("debug" is a global object in the browser so we give this object a different name.) When your page is open in the browser, type the following in the console:
-
-```js
-myDebug.enable("worker:*")
-```
-
-  Refresh the page. Debug output will continue to be sent to the console until it is disabled by typing `myDebug.disable()` in the console.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
-  a('doing some work');
-}, 1000);
-
-setInterval(function(){
-  b('doing some work');
-}, 1200);
-```
-
-#### Web Inspector Colors
-
-  Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-  option. These are WebKit web inspectors, Firefox ([since version
-  31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-  and the Firebug plugin for Firefox (any version).
-
-  Colored output looks something like:
-
-  ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png)
-
-### stderr vs stdout
-
-You can set an alternative logging method per-namespace by overriding the `log` method on a per-namespace or globally:
-
-Example _stdout.js_:
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/bower.json
deleted file mode 100644 (file)
index f7d3f6d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-  "name": "visionmedia-debug",
-  "main": "dist/debug.js",
-  "version": "2.1.3",
-  "homepage": "https://github.com/visionmedia/debug",
-  "authors": [
-    "TJ Holowaychuk <tj@vision-media.ca>"
-  ],
-  "description": "visionmedia-debug",
-  "moduleType": [
-    "amd",
-    "es6",
-    "globals",
-    "node"
-  ],
-  "keywords": [
-    "visionmedia",
-    "debug"
-  ],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "bower_components",
-    "test",
-    "tests"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/browser.js
deleted file mode 100644 (file)
index 55f4cf9..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-
-/**
- * This is the web browser implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Use chrome.storage.local if we are in an app
- */
-
-var storage;
-
-if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined')
-  storage = chrome.storage.local;
-else
-  storage = localstorage();
-
-/**
- * Colors.
- */
-
-exports.colors = [
-  'lightseagreen',
-  'forestgreen',
-  'goldenrod',
-  'dodgerblue',
-  'darkorchid',
-  'crimson'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-function useColors() {
-  // is webkit? http://stackoverflow.com/a/16459606/376773
-  return ('WebkitAppearance' in document.documentElement.style) ||
-    // is firebug? http://stackoverflow.com/a/398120/376773
-    (window.console && (console.firebug || (console.exception && console.table))) ||
-    // is firefox >= v31?
-    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
-    (navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31);
-}
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-exports.formatters.j = function(v) {
-  return JSON.stringify(v);
-};
-
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-
-  args[0] = (useColors ? '%c' : '')
-    + this.namespace
-    + (useColors ? ' %c' : ' ')
-    + args[0]
-    + (useColors ? '%c ' : ' ')
-    + '+' + exports.humanize(this.diff);
-
-  if (!useColors) return args;
-
-  var c = 'color: ' + this.color;
-  args = [args[0], c, 'color: inherit'].concat(Array.prototype.slice.call(args, 1));
-
-  // the final "%c" is somewhat tricky, because there could be other
-  // arguments passed either before or after the %c, so we need to
-  // figure out the correct index to insert the CSS into
-  var index = 0;
-  var lastC = 0;
-  args[0].replace(/%[a-z%]/g, function(match) {
-    if ('%%' === match) return;
-    index++;
-    if ('%c' === match) {
-      // we only are interested in the *last* %c
-      // (the user may have provided their own)
-      lastC = index;
-    }
-  });
-
-  args.splice(lastC, 0, c);
-  return args;
-}
-
-/**
- * Invokes `console.log()` when available.
- * No-op when `console.log` is not a "function".
- *
- * @api public
- */
-
-function log() {
-  // this hackery is required for IE8/9, where
-  // the `console.log` function doesn't have 'apply'
-  return 'object' === typeof console
-    && console.log
-    && Function.prototype.apply.call(console.log, console, arguments);
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  try {
-    if (null == namespaces) {
-      storage.removeItem('debug');
-    } else {
-      storage.debug = namespaces;
-    }
-  } catch(e) {}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  var r;
-  try {
-    r = storage.debug;
-  } catch(e) {}
-  return r;
-}
-
-/**
- * Enable namespaces listed in `localStorage.debug` initially.
- */
-
-exports.enable(load());
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage(){
-  try {
-    return window.localStorage;
-  } catch (e) {}
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/component.json
deleted file mode 100644 (file)
index 52ffd42..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "debug",
-  "repo": "visionmedia/debug",
-  "description": "small debugging utility",
-  "version": "2.1.3",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "main": "browser.js",
-  "scripts": [
-    "browser.js",
-    "debug.js"
-  ],
-  "dependencies": {
-    "rauchg/ms.js": "0.7.0"
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/debug.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/debug.js
deleted file mode 100644 (file)
index 7571a86..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = debug;
-exports.coerce = coerce;
-exports.disable = disable;
-exports.enable = enable;
-exports.enabled = enabled;
-exports.humanize = require('ms');
-
-/**
- * The currently active debug mode names, and names to skip.
- */
-
-exports.names = [];
-exports.skips = [];
-
-/**
- * Map of special "%n" handling functions, for the debug "format" argument.
- *
- * Valid key names are a single, lowercased letter, i.e. "n".
- */
-
-exports.formatters = {};
-
-/**
- * Previously assigned color.
- */
-
-var prevColor = 0;
-
-/**
- * Previous log timestamp.
- */
-
-var prevTime;
-
-/**
- * Select a color.
- *
- * @return {Number}
- * @api private
- */
-
-function selectColor() {
-  return exports.colors[prevColor++ % exports.colors.length];
-}
-
-/**
- * Create a debugger with the given `namespace`.
- *
- * @param {String} namespace
- * @return {Function}
- * @api public
- */
-
-function debug(namespace) {
-
-  // define the `disabled` version
-  function disabled() {
-  }
-  disabled.enabled = false;
-
-  // define the `enabled` version
-  function enabled() {
-
-    var self = enabled;
-
-    // set `diff` timestamp
-    var curr = +new Date();
-    var ms = curr - (prevTime || curr);
-    self.diff = ms;
-    self.prev = prevTime;
-    self.curr = curr;
-    prevTime = curr;
-
-    // add the `color` if not set
-    if (null == self.useColors) self.useColors = exports.useColors();
-    if (null == self.color && self.useColors) self.color = selectColor();
-
-    var args = Array.prototype.slice.call(arguments);
-
-    args[0] = exports.coerce(args[0]);
-
-    if ('string' !== typeof args[0]) {
-      // anything else let's inspect with %o
-      args = ['%o'].concat(args);
-    }
-
-    // apply any `formatters` transformations
-    var index = 0;
-    args[0] = args[0].replace(/%([a-z%])/g, function(match, format) {
-      // if we encounter an escaped % then don't increase the array index
-      if (match === '%%') return match;
-      index++;
-      var formatter = exports.formatters[format];
-      if ('function' === typeof formatter) {
-        var val = args[index];
-        match = formatter.call(self, val);
-
-        // now we need to remove `args[index]` since it's inlined in the `format`
-        args.splice(index, 1);
-        index--;
-      }
-      return match;
-    });
-
-    if ('function' === typeof exports.formatArgs) {
-      args = exports.formatArgs.apply(self, args);
-    }
-    var logFn = enabled.log || exports.log || console.log.bind(console);
-    logFn.apply(self, args);
-  }
-  enabled.enabled = true;
-
-  var fn = exports.enabled(namespace) ? enabled : disabled;
-
-  fn.namespace = namespace;
-
-  return fn;
-}
-
-/**
- * Enables a debug mode by namespaces. This can include modes
- * separated by a colon and wildcards.
- *
- * @param {String} namespaces
- * @api public
- */
-
-function enable(namespaces) {
-  exports.save(namespaces);
-
-  var split = (namespaces || '').split(/[\s,]+/);
-  var len = split.length;
-
-  for (var i = 0; i < len; i++) {
-    if (!split[i]) continue; // ignore empty strings
-    namespaces = split[i].replace(/\*/g, '.*?');
-    if (namespaces[0] === '-') {
-      exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
-    } else {
-      exports.names.push(new RegExp('^' + namespaces + '$'));
-    }
-  }
-}
-
-/**
- * Disable debug output.
- *
- * @api public
- */
-
-function disable() {
-  exports.enable('');
-}
-
-/**
- * Returns true if the given mode name is enabled, false otherwise.
- *
- * @param {String} name
- * @return {Boolean}
- * @api public
- */
-
-function enabled(name) {
-  var i, len;
-  for (i = 0, len = exports.skips.length; i < len; i++) {
-    if (exports.skips[i].test(name)) {
-      return false;
-    }
-  }
-  for (i = 0, len = exports.names.length; i < len; i++) {
-    if (exports.names[i].test(name)) {
-      return true;
-    }
-  }
-  return false;
-}
-
-/**
- * Coerce `val`.
- *
- * @param {Mixed} val
- * @return {Mixed}
- * @api private
- */
-
-function coerce(val) {
-  if (val instanceof Error) return val.stack || val.message;
-  return val;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node.js
deleted file mode 100644 (file)
index 1d392a8..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Module dependencies.
- */
-
-var tty = require('tty');
-var util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-/**
- * The file descriptor to write the `debug()` calls to.
- * Set the `DEBUG_FD` env variable to override with another value. i.e.:
- *
- *   $ DEBUG_FD=3 node script.js 3>debug.log
- */
-
-var fd = parseInt(process.env.DEBUG_FD, 10) || 2;
-var stream = 1 === fd ? process.stdout :
-             2 === fd ? process.stderr :
-             createWritableStdioStream(fd);
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
-  var debugColors = (process.env.DEBUG_COLORS || '').trim().toLowerCase();
-  if (0 === debugColors.length) {
-    return tty.isatty(fd);
-  } else {
-    return '0' !== debugColors
-        && 'no' !== debugColors
-        && 'false' !== debugColors
-        && 'disabled' !== debugColors;
-  }
-}
-
-/**
- * Map %o to `util.inspect()`, since Node doesn't do that out of the box.
- */
-
-var inspect = (4 === util.inspect.length ?
-  // node <= 0.8.x
-  function (v, colors) {
-    return util.inspect(v, void 0, void 0, colors);
-  } :
-  // node > 0.8.x
-  function (v, colors) {
-    return util.inspect(v, { colors: colors });
-  }
-);
-
-exports.formatters.o = function(v) {
-  return inspect(v, this.useColors)
-    .replace(/\s*\n\s*/g, ' ');
-};
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-  var name = this.namespace;
-
-  if (useColors) {
-    var c = this.color;
-
-    args[0] = '  \u001b[3' + c + ';1m' + name + ' '
-      + '\u001b[0m'
-      + args[0] + '\u001b[3' + c + 'm'
-      + ' +' + exports.humanize(this.diff) + '\u001b[0m';
-  } else {
-    args[0] = new Date().toUTCString()
-      + ' ' + name + ' ' + args[0];
-  }
-  return args;
-}
-
-/**
- * Invokes `console.error()` with the specified arguments.
- */
-
-function log() {
-  return stream.write(util.format.apply(this, arguments) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  if (null == namespaces) {
-    // If you set a process.env field to null or undefined, it gets cast to the
-    // string 'null' or 'undefined'. Just delete instead.
-    delete process.env.DEBUG;
-  } else {
-    process.env.DEBUG = namespaces;
-  }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  return process.env.DEBUG;
-}
-
-/**
- * Copied from `node/src/node.js`.
- *
- * XXX: It's lame that node doesn't expose this API out-of-the-box. It also
- * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame.
- */
-
-function createWritableStdioStream (fd) {
-  var stream;
-  var tty_wrap = process.binding('tty_wrap');
-
-  // Note stream._type is used for test-module-load-list.js
-
-  switch (tty_wrap.guessHandleType(fd)) {
-    case 'TTY':
-      stream = new tty.WriteStream(fd);
-      stream._type = 'tty';
-
-      // Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    case 'FILE':
-      var fs = require('fs');
-      stream = new fs.SyncWriteStream(fd, { autoClose: false });
-      stream._type = 'fs';
-      break;
-
-    case 'PIPE':
-    case 'TCP':
-      var net = require('net');
-      stream = new net.Socket({
-        fd: fd,
-        readable: false,
-        writable: true
-      });
-
-      // FIXME Should probably have an option in net.Socket to create a
-      // stream from an existing fd which is writable only. But for now
-      // we'll just add this hack and set the `readable` member to false.
-      // Test: ./node test/fixtures/echo.js < /etc/passwd
-      stream.readable = false;
-      stream.read = null;
-      stream._type = 'pipe';
-
-      // FIXME Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    default:
-      // Probably an error on in uv_guess_handle()
-      throw new Error('Implement me. Unknown stream file type!');
-  }
-
-  // For supporting legacy API we put the FD here.
-  stream.fd = fd;
-
-  stream._isStdio = true;
-
-  return stream;
-}
-
-/**
- * Enable namespaces listed in `process.env.DEBUG` initially.
- */
-
-exports.enable(load());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/.npmignore
deleted file mode 100644 (file)
index d1aa0ce..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-node_modules
-test
-History.md
-Makefile
-component.json
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/LICENSE
deleted file mode 100644 (file)
index 6c07561..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014 Guillermo Rauch <rauchg@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/README.md
deleted file mode 100644 (file)
index 0fd54fd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# ms.js: miliseconds conversion utility
-
-```js
-ms('2 days')  // 172800000
-ms('1d')      // 86400000
-ms('10h')     // 36000000
-ms('2.5 hrs') // 9000000
-ms('2h')      // 7200000
-ms('1m')      // 60000
-ms('5s')      // 5000
-ms('100')     // 100
-```
-
-```js
-ms(60000)             // "1m"
-ms(2 * 60000)         // "2m"
-ms(ms('10 hours'))    // "10h"
-```
-
-```js
-ms(60000, { long: true })             // "1 minute"
-ms(2 * 60000, { long: true })         // "2 minutes"
-ms(ms('10 hours'), { long: true })    // "10 hours"
-```
-
-- Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](nodejs.org/download).
-- If a number is supplied to `ms`, a string with a unit is returned.
-- If a string that contains the number is supplied, it returns it as
-a number (e.g: it returns `100` for `'100'`).
-- If you pass a string with a number and a valid unit, the number of
-equivalent ms is returned.
-
-## License
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/index.js
deleted file mode 100644 (file)
index e79bfa1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/**
- * Helpers.
- */
-
-var s = 1000;
-var m = s * 60;
-var h = m * 60;
-var d = h * 24;
-var y = d * 365.25;
-
-/**
- * Parse or format the given `val`.
- *
- * Options:
- *
- *  - `long` verbose formatting [false]
- *
- * @param {String|Number} val
- * @param {Object} options
- * @return {String|Number}
- * @api public
- */
-
-module.exports = function(val, options){
-  options = options || {};
-  if ('string' == typeof val) return parse(val);
-  return options.long
-    ? long(val)
-    : short(val);
-};
-
-/**
- * Parse the given `str` and return milliseconds.
- *
- * @param {String} str
- * @return {Number}
- * @api private
- */
-
-function parse(str) {
-  var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str);
-  if (!match) return;
-  var n = parseFloat(match[1]);
-  var type = (match[2] || 'ms').toLowerCase();
-  switch (type) {
-    case 'years':
-    case 'year':
-    case 'yrs':
-    case 'yr':
-    case 'y':
-      return n * y;
-    case 'days':
-    case 'day':
-    case 'd':
-      return n * d;
-    case 'hours':
-    case 'hour':
-    case 'hrs':
-    case 'hr':
-    case 'h':
-      return n * h;
-    case 'minutes':
-    case 'minute':
-    case 'mins':
-    case 'min':
-    case 'm':
-      return n * m;
-    case 'seconds':
-    case 'second':
-    case 'secs':
-    case 'sec':
-    case 's':
-      return n * s;
-    case 'milliseconds':
-    case 'millisecond':
-    case 'msecs':
-    case 'msec':
-    case 'ms':
-      return n;
-  }
-}
-
-/**
- * Short format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function short(ms) {
-  if (ms >= d) return Math.round(ms / d) + 'd';
-  if (ms >= h) return Math.round(ms / h) + 'h';
-  if (ms >= m) return Math.round(ms / m) + 'm';
-  if (ms >= s) return Math.round(ms / s) + 's';
-  return ms + 'ms';
-}
-
-/**
- * Long format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function long(ms) {
-  return plural(ms, d, 'day')
-    || plural(ms, h, 'hour')
-    || plural(ms, m, 'minute')
-    || plural(ms, s, 'second')
-    || ms + ' ms';
-}
-
-/**
- * Pluralization helper.
- */
-
-function plural(ms, n, name) {
-  if (ms < n) return;
-  if (ms < n * 1.5) return Math.floor(ms / n) + ' ' + name;
-  return Math.ceil(ms / n) + ' ' + name + 's';
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/node_modules/ms/package.json
deleted file mode 100644 (file)
index c2648f8..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-  "_args": [
-    [
-      "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_id": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-indent/debug/ms",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "name": "ms",
-    "escapedName": "ms",
-    "rawSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-indent/debug"
-  ],
-  "_spec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/guille/ms.js/issues"
-  },
-  "component": {
-    "scripts": {
-      "ms/index.js": "index.js"
-    }
-  },
-  "description": "Tiny ms conversion utility",
-  "devDependencies": {
-    "expect.js": "*",
-    "mocha": "*",
-    "serve": "*"
-  },
-  "homepage": "https://github.com/guille/ms.js#readme",
-  "main": "./index",
-  "name": "ms",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/guille/ms.js.git"
-  },
-  "version": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/node_modules/debug/package.json
deleted file mode 100644 (file)
index efb8730..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-{
-  "_args": [
-    [
-      "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_id": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-indent/debug",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "name": "debug",
-    "escapedName": "debug",
-    "rawSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-indent"
-  ],
-  "_spec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "browser": "./browser.js",
-  "bugs": {
-    "url": "https://github.com/visionmedia/debug/issues"
-  },
-  "component": {
-    "scripts": {
-      "debug/index.js": "browser.js",
-      "debug/debug.js": "debug.js"
-    }
-  },
-  "contributors": [
-    {
-      "name": "Nathan Rajlich",
-      "email": "nathan@tootallnate.net",
-      "url": "http://n8.io"
-    }
-  ],
-  "dependencies": {
-    "ms": "0.7.0"
-  },
-  "description": "small debugging utility",
-  "devDependencies": {
-    "browserify": "9.0.3",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/visionmedia/debug#readme",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "license": "MIT",
-  "main": "./node.js",
-  "name": "debug",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "version": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/package.json
deleted file mode 100644 (file)
index 49f0172..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-indent@https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-indent@https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-  "_id": "rocambole-indent@https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-+y0lfQGg9uvQResP0+QsT3ysVM4=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-indent",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-indent@https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-    "name": "rocambole-indent",
-    "escapedName": "rocambole-indent",
-    "rawSpec": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "http://millermedeiros.com",
-    "url": "contact@millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-indent/issues"
-  },
-  "dependencies": {
-    "debug": "^2.1.3",
-    "mout": "^0.11.0",
-    "rocambole-token": "^1.2.1"
-  },
-  "description": "helpers for rocambole AST indentation",
-  "devDependencies": {
-    "diff": "^1.3.1",
-    "rocambole": "^0.5.1"
-  },
-  "homepage": "https://github.com/millermedeiros/rocambole-indent",
-  "jshintConfig": {
-    "node": true,
-    "eqnull": true
-  },
-  "keywords": [
-    "rocambole",
-    "ast",
-    "esformatter",
-    "indent"
-  ],
-  "license": "MIT",
-  "main": "rocambole-indent.js",
-  "name": "rocambole-indent",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-indent.git"
-  },
-  "scripts": {
-    "test": "node test/runner.js"
-  },
-  "version": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/rocambole-indent.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/rocambole-indent.js
deleted file mode 100644 (file)
index 7b00e5f..0000000
+++ /dev/null
@@ -1,330 +0,0 @@
-'use strict';
-
-var debug = require('debug')('rocambole:indent');
-var tk = require('rocambole-token');
-var escapeRegExp = require('mout/string/escapeRegExp');
-var repeat = require('mout/string/repeat');
-
-
-// ---
-
-var _opts = {
-  value: '  ',
-  CommentInsideEmptyBlock: 1
-};
-
-// ---
-
-
-exports.setOptions = function(opts) {
-  _opts = opts;
-};
-
-
-exports.inBetween = indentInBetween;
-function indentInBetween(startToken, endToken, level) {
-  level = level != null ? level : 1;
-
-  if (!level || (!startToken || !endToken) || startToken === endToken) {
-    debug(
-      '[inBetween] not going to indent. start: %s, end: %s, level: %s',
-      startToken && startToken.value,
-      endToken && endToken.value,
-      level
-    );
-    return;
-  }
-
-  var token = startToken && startToken.next;
-  var endsWithBraces = isClosingBrace(endToken);
-  while (token && token !== endToken) {
-    if (tk.isBr(token.prev)) {
-      // we ignore the last indent (if first token on the line is a ws or
-      // ident) just because in most cases we don't want to change the indent
-      // just before "}", ")" and "]" - this allow us to pass
-      // `node.body.startToken` and `node.body.endToken` as the range
-      if (token.next !== endToken || !endsWithBraces || !tk.isEmpty(token)) {
-        addLevel(token, level);
-      }
-    }
-    token = token.next;
-  }
-}
-
-
-function isClosingBrace(token) {
-  var val = token.value;
-  return val === ')' || val === '}' || val === ']';
-}
-
-
-exports.addLevel = addLevel;
-function addLevel(token, level) {
-  if (!level) {
-    // zero is a noop
-    return;
-  }
-
-  token = findStartOfLine(token);
-
-  if (!token) {
-    // we never indent empty lines!
-    debug('[indent.addLevel] can\'t find start of line');
-    return;
-  }
-
-  var value = repeat(_opts.value, Math.abs(level));
-
-  if (tk.isIndent(token)) {
-    if (level > 0) {
-      // if it's already an Indent we just bump the value & level
-      token.value += value;
-      token.level += level;
-    } else {
-      if (token.level + level <= 0) {
-        tk.remove(token);
-      } else {
-        token.value = token.value.replace(value, '');
-        token.level += level;
-      }
-    }
-    if (token.next && token.next.type === 'BlockComment') {
-      updateBlockComment(token.next);
-    }
-    return;
-  }
-
-  if (level < 1) {
-    // we can't remove indent if previous token isn't an indent
-    debug(
-      '[addLevel] we can\'t decrement if line doesn\'t start with Indent. token: %s, level: %s',
-      token && token.value,
-      level
-    );
-    return;
-  }
-
-  if (tk.isWs(token)) {
-    // convert WhiteSpace token into Indent
-    token.type = 'Indent';
-    token.value = value;
-    token.level = level;
-    return;
-  }
-
-  // if regular token we add a new Indent before it
-  tk.before(token, {
-    type: 'Indent',
-    value: value,
-    level: level
-  });
-
-  if (token.type === 'BlockComment') {
-    updateBlockComment(token);
-  }
-}
-
-function findStartOfLine(token) {
-  if (tk.isBr(token) && tk.isBr(token.prev)) {
-    // empty lines are ignored
-    return null;
-  }
-  var prev = token.prev;
-  while (true) {
-    if (!prev || tk.isBr(prev)) {
-      return token;
-    }
-    token = prev;
-    prev = token.prev;
-  }
-}
-
-
-exports.sanitize = sanitize;
-function sanitize(astOrNode) {
-  var token = astOrNode.startToken;
-  var end = astOrNode.endToken && astOrNode.endToken.next;
-  while (token && token !== end) {
-    var next = token.next;
-    if (isOriginalIndent(token)) {
-      tk.remove(token);
-    }
-    token = next;
-  }
-}
-
-
-function isOriginalIndent(token) {
-  // original indent don't have a "level" value
-  // we also need to remove any indent that happens after a token that
-  // isn't a line break (just in case these are added by mistake)
-  return (token.type === 'WhiteSpace' && (!token.prev || tk.isBr(token.prev)) && !tk.isBr(token.next)) ||
-    (token.type === 'Indent' && (token.level == null || !tk.isBr(token.prev)));
-}
-
-
-exports.updateBlockComment = updateBlockComment;
-function updateBlockComment(comment) {
-  var orig = new RegExp('([\\n\\r]+)' + escapeRegExp(comment.originalIndent || ''), 'gm');
-  var update = comment.prev && comment.prev.type === 'Indent' ? comment.prev.value : '';
-  comment.raw = comment.raw.replace(orig, '$1' + update);
-  // override the originalIndent so multiple consecutive calls still work as
-  // expected
-  comment.originalIndent = update;
-}
-
-
-// comments are aligned based on the next line unless the line/block is
-// followed by an empty line, in that case it will use the previous line as
-// reference.
-exports.alignComments = alignComments;
-function alignComments(nodeOrAst) {
-  var first = nodeOrAst.startToken && nodeOrAst.startToken.prev;
-  var token = nodeOrAst.endToken;
-  while (token && token !== first) {
-    if (tk.isComment(token) && isFirstNonEmptyTokenOfLine(token)) {
-      var base = findReferenceIndent(token);
-      matchBaseIndent(token, base);
-
-      // if inside an empty block we add indent otherwise it looks weird
-      var change = _opts.CommentInsideEmptyBlock != null ?
-        _opts.CommentInsideEmptyBlock : 1;
-      if (change && isInsideEmptyBlock(token)) {
-        addLevel(token, change);
-      }
-
-      if (token.type === 'BlockComment') {
-        updateBlockComment(token);
-      }
-    }
-
-    token = token.prev;
-  }
-}
-
-function matchBaseIndent(token, base) {
-  if (!base) {
-    if (isIndentOrWs(token.prev)) {
-      tk.remove(token.prev);
-    }
-    return;
-  }
-
-  if (isIndentOrWs(token.prev)) {
-    // we reuse whitespace just because user might not have converted all
-    // the whitespaces into Indent tokens
-    token.prev.type = 'Indent';
-    token.prev.value = base.value;
-    token.prev.level = inferLevel(base, _opts.value);
-    return;
-  }
-
-  tk.before(token, {
-    type: 'Indent',
-    value: base.value,
-    level: inferLevel(base, _opts.value)
-  });
-}
-
-function isFirstNonEmptyTokenOfLine(token) {
-  if (!token.prev || tk.isBr(token.prev)) return true;
-  var prev = tk.findPrevNonEmpty(token);
-  return !prev ? true : tk.findInBetween(prev, token, tk.isBr);
-}
-
-function findReferenceIndent(start) {
-  var prevLine = findPrevReference(start);
-  var nextLine = findNextReference(start);
-  if (isAtBeginingOfBlock(start)) {
-    // this handles an edge case of comment just after "{" followed by an empty
-    // line (would use the previous line as reference by mistake)
-    while (nextLine && tk.isBr(nextLine)) {
-      nextLine = findNextReference(nextLine.prev);
-    }
-  }
-  // we favor nextLine unless it's empty
-  if (tk.isBr(nextLine) || !nextLine) {
-    return isIndentOrWs(prevLine) ? prevLine : null;
-  }
-  return isIndentOrWs(nextLine) ? nextLine : null;
-}
-
-function findPrevReference(start) {
-  var token = start.prev;
-  var changedLine = false;
-  while (token) {
-    // multiple consecutive comments should use the same reference (consider as
-    // a single block)
-    if (changedLine && tk.isBr(token) && !tk.isBr(token.next) && nextInLineNotComment(token)) {
-      return token.next;
-    }
-    if (tk.isBr(token)) {
-      changedLine = true;
-    }
-    token = token.prev;
-  }
-}
-
-function findNextReference(start) {
-  var token = start.next;
-  while (token) {
-    // multiple consecutive comments should use the same reference (consider as
-    // a single block)
-    if (tk.isBr(token) && nextInLineNotComment(token)) {
-      return token.next;
-    }
-    token = token.next;
-  }
-}
-
-function isIndentOrWs(token) {
-  return tk.isIndent(token) || tk.isWs(token);
-}
-
-function nextInLineNotComment(token) {
-  token = token.next;
-  while (token) {
-    if (tk.isBr(token)) {
-      return true;
-    }
-    if (!tk.isEmpty(token)) {
-      return !tk.isComment(token);
-    }
-    token = token.next;
-  }
-  return true;
-}
-
-function isAtBeginingOfBlock(token) {
-  var open = tk.findPrev(token, tk.isCode);
-  if (!open) return false;
-  var a = open.value;
-  return a === '(' || a === '[' || a === '{';
-}
-
-function isAtEndOfBlock(token) {
-  var close = tk.findNext(token, tk.isCode);
-  if (!close) return false;
-  var z = close.value;
-  return (z === ')' || z === ']' || z === '}');
-}
-
-function isInsideEmptyBlock(token) {
-  return isAtEndOfBlock(token) && isAtBeginingOfBlock(token);
-}
-
-exports.whiteSpaceToIndent = whiteSpaceToIndent;
-function whiteSpaceToIndent(token, indentValue) {
-  if (tk.isWs(token) && (tk.isBr(token.prev) || !token.prev)) {
-    token.type = 'Indent';
-    // we can't add level if we don't know original indentValue
-    indentValue = indentValue || _opts.value;
-    if (indentValue) {
-      token.level = inferLevel(token, indentValue);
-    }
-  }
-}
-
-function inferLevel(token, indentValue) {
-  return Math.max(token.value.split(indentValue).length - 1, 0);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-input.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-input.js
deleted file mode 100644 (file)
index e5b0caf..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-    // next
-switch (foo) {
-      // next
-  case bar:
-// next
-    baz();
-// this should be aligned with previous line since comment block is
-  // followed by an empty line
-
-        // next
-  case biz:
-        // next
-    what();
-    // next
-}
-  // previous
-
-  // next
-function empty(
-    // > indent
-// > indent
-)
-    // next
-// next
-{
-    // > indent
-  // > indent
-}
-// prev
-
-function empty2() {
-// > indent
-
-  // next
-  if (foo) {
-          // >> indent
-  }
-
-      // next
-  function empty3() {
-        // >> indent
-
-    // next
-    foo();
-  }
-      // prev
-
-        // next
-  switch (a) {
-// next
-    case 'lorem':
-          // next
-      dolor();
-    // next
-      break;
-    // next
-  }
-}
-
-// next
-;(function() {
-    // next
-var bar = 'baz';
-    // next
-}());
-  // prev
-
-// next
-class Foo extends Bar {
-      // > indent
-
-  constructor(bar) {
-    this.bar = bar;
-  }
-
-// prev
-
-  method() {
-      // > indent
-  }
-    //prev
-
-  // next
-}
-// prev
-
-function foo() {
-
-    // > indent
-        // > indent
-
-}
-
-function bar() {
-  foo();
-
-// > indent
-// > indent
-
-  baz();
-}
-
-    // prev
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-output.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/align_comment-output.js
deleted file mode 100644 (file)
index f1eb731..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-// next
-switch (foo) {
-  // next
-  case bar:
-    // next
-    baz();
-    // this should be aligned with previous line since comment block is
-    // followed by an empty line
-
-  // next
-  case biz:
-    // next
-    what();
-// next
-}
-// previous
-
-// next
-function empty(
-  // > indent
-  // > indent
-)
-// next
-// next
-{
-  // > indent
-  // > indent
-}
-// prev
-
-function empty2() {
-  // > indent
-
-  // next
-  if (foo) {
-    // >> indent
-  }
-
-  // next
-  function empty3() {
-    // >> indent
-
-    // next
-    foo();
-  }
-  // prev
-
-  // next
-  switch (a) {
-    // next
-    case 'lorem':
-      // next
-      dolor();
-      // next
-      break;
-  // next
-  }
-}
-
-// next
-;(function() {
-// next
-var bar = 'baz';
-// next
-}());
-// prev
-
-// next
-class Foo extends Bar {
-  // > indent
-
-  constructor(bar) {
-    this.bar = bar;
-  }
-
-  // prev
-
-  method() {
-    // > indent
-  }
-  //prev
-
-// next
-}
-// prev
-
-function foo() {
-
-  // > indent
-  // > indent
-
-}
-
-function bar() {
-  foo();
-
-  // > indent
-  // > indent
-
-  baz();
-}
-
-// prev
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/runner.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-indent/test/runner.js
deleted file mode 100644 (file)
index e47f16c..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-//jshint node:true, eqnull:true
-'use strict';
-
-var assert = require('assert');
-var diff = require('diff');
-var fs = require('fs');
-var indent = require('../rocambole-indent');
-var path = require('path');
-var rocambole = require('rocambole');
-
-// ==================
-// whiteSpaceToIndent
-// ==================
-
-var ws1 = { type: 'WhiteSpace', value: '  ' };
-indent.whiteSpaceToIndent(ws1);
-assert.equal(ws1.type, 'Indent');
-assert.equal(ws1.level, 1);
-
-var ws2 = { type: 'WhiteSpace', value: '  ', prev: { type: 'LineBreak' } };
-indent.whiteSpaceToIndent(ws2, '  ');
-assert.equal(ws2.type, 'Indent');
-assert.equal(ws2.level, 1);
-
-var ws3 = { type: 'WhiteSpace', value: '  ', prev: { type: 'Punctuator' } };
-indent.whiteSpaceToIndent(ws3, '  ');
-assert.equal(ws3.type, 'WhiteSpace');
-assert.equal(ws3.level, undefined);
-
-// =============
-// alignComments
-// =============
-
-// yes, this will throw if it doesn't support empty nodes/ast
-indent.alignComments({});
-
-formatAndCompare('align_comment-input.js', 'align_comment-output.js', indent.alignComments);
-
-function formatAndCompare(inputFile, expectedFile, method) {
-  var input = getFile(inputFile);
-  var expected = getFile(expectedFile);
-  var ast = rocambole.parse(input);
-  method.call(indent, ast);
-  var output = ast.toString();
-
-  if (output !== expected) {
-    process.stderr.write(diff.createPatch(expectedFile, expected, output));
-    process.exit(1);
-  } else {
-    console.error('ok %s', inputFile);
-  }
-}
-
-function getFile(name) {
-  return fs.readFileSync(path.join(__dirname, name)).toString();
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.jshintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.jshintrc
deleted file mode 100644 (file)
index 299877f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-  "laxbreak": true
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/.npmignore
deleted file mode 100644 (file)
index 7e6163d..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-support
-test
-examples
-example
-*.sock
-dist
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/History.md
deleted file mode 100644 (file)
index 770e483..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-
-2.1.3 / 2015-03-13
-==================
-
-  * Updated stdout/stderr example (#186)
-  * Updated example/stdout.js to match debug current behaviour
-  * Renamed example/stderr.js to stdout.js
-  * Update Readme.md (#184)
-  * replace high intensity foreground color for bold (#182, #183)
-
-2.1.2 / 2015-03-01
-==================
-
-  * dist: recompile
-  * update "ms" to v0.7.0
-  * package: update "browserify" to v9.0.3
-  * component: fix "ms.js" repo location
-  * changed bower package name
-  * updated documentation about using debug in a browser
-  * fix: security error on safari (#167, #168, @yields)
-
-2.1.1 / 2014-12-29
-==================
-
-  * browser: use `typeof` to check for `console` existence
-  * browser: check for `console.log` truthiness (fix IE 8/9)
-  * browser: add support for Chrome apps
-  * Readme: added Windows usage remarks
-  * Add `bower.json` to properly support bower install
-
-2.1.0 / 2014-10-15
-==================
-
-  * node: implement `DEBUG_FD` env variable support
-  * package: update "browserify" to v6.1.0
-  * package: add "license" field to package.json (#135, @panuhorsmalahti)
-
-2.0.0 / 2014-09-01
-==================
-
-  * package: update "browserify" to v5.11.0
-  * node: use stderr rather than stdout for logging (#29, @stephenmathieson)
-
-1.0.4 / 2014-07-15
-==================
-
-  * dist: recompile
-  * example: remove `console.info()` log usage
-  * example: add "Content-Type" UTF-8 header to browser example
-  * browser: place %c marker after the space character
-  * browser: reset the "content" color via `color: inherit`
-  * browser: add colors support for Firefox >= v31
-  * debug: prefer an instance `log()` function over the global one (#119)
-  * Readme: update documentation about styled console logs for FF v31 (#116, @wryk)
-
-1.0.3 / 2014-07-09
-==================
-
-  * Add support for multiple wildcards in namespaces (#122, @seegno)
-  * browser: fix lint
-
-1.0.2 / 2014-06-10
-==================
-
-  * browser: update color palette (#113, @gscottolson)
-  * common: make console logging function configurable (#108, @timoxley)
-  * node: fix %o colors on old node <= 0.8.x
-  * Makefile: find node path using shell/which (#109, @timoxley)
-
-1.0.1 / 2014-06-06
-==================
-
-  * browser: use `removeItem()` to clear localStorage
-  * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777)
-  * package: add "contributors" section
-  * node: fix comment typo
-  * README: list authors
-
-1.0.0 / 2014-06-04
-==================
-
-  * make ms diff be global, not be scope
-  * debug: ignore empty strings in enable()
-  * node: make DEBUG_COLORS able to disable coloring
-  * *: export the `colors` array
-  * npmignore: don't publish the `dist` dir
-  * Makefile: refactor to use browserify
-  * package: add "browserify" as a dev dependency
-  * Readme: add Web Inspector Colors section
-  * node: reset terminal color for the debug content
-  * node: map "%o" to `util.inspect()`
-  * browser: map "%j" to `JSON.stringify()`
-  * debug: add custom "formatters"
-  * debug: use "ms" module for humanizing the diff
-  * Readme: add "bash" syntax highlighting
-  * browser: add Firebug color support
-  * browser: add colors for WebKit browsers
-  * node: apply log to `console`
-  * rewrite: abstract common logic for Node & browsers
-  * add .jshintrc file
-
-0.8.1 / 2014-04-14
-==================
-
-  * package: re-add the "component" section
-
-0.8.0 / 2014-03-30
-==================
-
-  * add `enable()` method for nodejs. Closes #27
-  * change from stderr to stdout
-  * remove unnecessary index.js file
-
-0.7.4 / 2013-11-13
-==================
-
-  * remove "browserify" key from package.json (fixes something in browserify)
-
-0.7.3 / 2013-10-30
-==================
-
-  * fix: catch localStorage security error when cookies are blocked (Chrome)
-  * add debug(err) support. Closes #46
-  * add .browser prop to package.json. Closes #42
-
-0.7.2 / 2013-02-06
-==================
-
-  * fix package.json
-  * fix: Mobile Safari (private mode) is broken with debug
-  * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript
-
-0.7.1 / 2013-02-05
-==================
-
-  * add repository URL to package.json
-  * add DEBUG_COLORED to force colored output
-  * add browserify support
-  * fix component. Closes #24
-
-0.7.0 / 2012-05-04
-==================
-
-  * Added .component to package.json
-  * Added debug.component.js build
-
-0.6.0 / 2012-03-16
-==================
-
-  * Added support for "-" prefix in DEBUG [Vinay Pulim]
-  * Added `.enabled` flag to the node version [TooTallNate]
-
-0.5.0 / 2012-02-02
-==================
-
-  * Added: humanize diffs. Closes #8
-  * Added `debug.disable()` to the CS variant
-  * Removed padding. Closes #10
-  * Fixed: persist client-side variant again. Closes #9
-
-0.4.0 / 2012-02-01
-==================
-
-  * Added browser variant support for older browsers [TooTallNate]
-  * Added `debug.enable('project:*')` to browser variant [TooTallNate]
-  * Added padding to diff (moved it to the right)
-
-0.3.0 / 2012-01-26
-==================
-
-  * Added millisecond diff when isatty, otherwise UTC string
-
-0.2.0 / 2012-01-22
-==================
-
-  * Added wildcard support
-
-0.1.0 / 2011-12-02
-==================
-
-  * Added: remove colors unless stderr isatty [TooTallNate]
-
-0.0.1 / 2010-01-03
-==================
-
-  * Initial release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Makefile
deleted file mode 100644 (file)
index b0bde6e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-# get Makefile directory name: http://stackoverflow.com/a/5982798/376773
-THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
-THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
-
-# BIN directory
-BIN := $(THIS_DIR)/node_modules/.bin
-
-# applications
-NODE ?= $(shell which node)
-NPM ?= $(NODE) $(shell which npm)
-BROWSERIFY ?= $(NODE) $(BIN)/browserify
-
-all: dist/debug.js
-
-install: node_modules
-
-clean:
-       @rm -rf node_modules dist
-
-dist:
-       @mkdir -p $@
-
-dist/debug.js: node_modules browser.js debug.js dist
-       @$(BROWSERIFY) \
-               --standalone debug \
-               . > $@
-
-node_modules: package.json
-       @NODE_ENV= $(NPM) install
-       @touch node_modules
-
-.PHONY: all install clean
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/Readme.md
deleted file mode 100644 (file)
index 14222e0..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-# debug
-
-  tiny node.js debugging utility modelled after node core's debugging technique.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
- With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.
-
-Example _app.js_:
-
-```js
-var debug = require('debug')('http')
-  , http = require('http')
-  , name = 'My App';
-
-// fake app
-
-debug('booting %s', name);
-
-http.createServer(function(req, res){
-  debug(req.method + ' ' + req.url);
-  res.end('hello\n');
-}).listen(3000, function(){
-  debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example _worker.js_:
-
-```js
-var debug = require('debug')('worker');
-
-setInterval(function(){
-  debug('doing some work');
-}, 1000);
-```
-
- The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:
-
-  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)
-
-  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)
-
-#### Windows note
-
- On Windows the environment variable is set using the `set` command. 
- ```cmd
- set DEBUG=*,-not_this
- ```
-
-Then, run the program to be debugged as usual.
-
-## Millisecond diff
-
-  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
-
-  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
-
-  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
-
-## Conventions
-
- If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".
-
-## Wildcards
-
-  The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-  You can also exclude specific debuggers by prefixing them with a "-" character.  For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:".
-
-## Browser support
-
-  Debug works in the browser as well, currently persisted by `localStorage`. Consider the situation shown below where you have `worker:a` and `worker:b`, and wish to debug both. Somewhere in the code on your page, include:
-
-```js
-window.myDebug = require("debug");
-```
-
-  ("debug" is a global object in the browser so we give this object a different name.) When your page is open in the browser, type the following in the console:
-
-```js
-myDebug.enable("worker:*")
-```
-
-  Refresh the page. Debug output will continue to be sent to the console until it is disabled by typing `myDebug.disable()` in the console.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
-  a('doing some work');
-}, 1000);
-
-setInterval(function(){
-  b('doing some work');
-}, 1200);
-```
-
-#### Web Inspector Colors
-
-  Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-  option. These are WebKit web inspectors, Firefox ([since version
-  31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-  and the Firebug plugin for Firefox (any version).
-
-  Colored output looks something like:
-
-  ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png)
-
-### stderr vs stdout
-
-You can set an alternative logging method per-namespace by overriding the `log` method on a per-namespace or globally:
-
-Example _stdout.js_:
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/bower.json
deleted file mode 100644 (file)
index f7d3f6d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-  "name": "visionmedia-debug",
-  "main": "dist/debug.js",
-  "version": "2.1.3",
-  "homepage": "https://github.com/visionmedia/debug",
-  "authors": [
-    "TJ Holowaychuk <tj@vision-media.ca>"
-  ],
-  "description": "visionmedia-debug",
-  "moduleType": [
-    "amd",
-    "es6",
-    "globals",
-    "node"
-  ],
-  "keywords": [
-    "visionmedia",
-    "debug"
-  ],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "bower_components",
-    "test",
-    "tests"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/browser.js
deleted file mode 100644 (file)
index 55f4cf9..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-
-/**
- * This is the web browser implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Use chrome.storage.local if we are in an app
- */
-
-var storage;
-
-if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined')
-  storage = chrome.storage.local;
-else
-  storage = localstorage();
-
-/**
- * Colors.
- */
-
-exports.colors = [
-  'lightseagreen',
-  'forestgreen',
-  'goldenrod',
-  'dodgerblue',
-  'darkorchid',
-  'crimson'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-function useColors() {
-  // is webkit? http://stackoverflow.com/a/16459606/376773
-  return ('WebkitAppearance' in document.documentElement.style) ||
-    // is firebug? http://stackoverflow.com/a/398120/376773
-    (window.console && (console.firebug || (console.exception && console.table))) ||
-    // is firefox >= v31?
-    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
-    (navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31);
-}
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-exports.formatters.j = function(v) {
-  return JSON.stringify(v);
-};
-
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-
-  args[0] = (useColors ? '%c' : '')
-    + this.namespace
-    + (useColors ? ' %c' : ' ')
-    + args[0]
-    + (useColors ? '%c ' : ' ')
-    + '+' + exports.humanize(this.diff);
-
-  if (!useColors) return args;
-
-  var c = 'color: ' + this.color;
-  args = [args[0], c, 'color: inherit'].concat(Array.prototype.slice.call(args, 1));
-
-  // the final "%c" is somewhat tricky, because there could be other
-  // arguments passed either before or after the %c, so we need to
-  // figure out the correct index to insert the CSS into
-  var index = 0;
-  var lastC = 0;
-  args[0].replace(/%[a-z%]/g, function(match) {
-    if ('%%' === match) return;
-    index++;
-    if ('%c' === match) {
-      // we only are interested in the *last* %c
-      // (the user may have provided their own)
-      lastC = index;
-    }
-  });
-
-  args.splice(lastC, 0, c);
-  return args;
-}
-
-/**
- * Invokes `console.log()` when available.
- * No-op when `console.log` is not a "function".
- *
- * @api public
- */
-
-function log() {
-  // this hackery is required for IE8/9, where
-  // the `console.log` function doesn't have 'apply'
-  return 'object' === typeof console
-    && console.log
-    && Function.prototype.apply.call(console.log, console, arguments);
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  try {
-    if (null == namespaces) {
-      storage.removeItem('debug');
-    } else {
-      storage.debug = namespaces;
-    }
-  } catch(e) {}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  var r;
-  try {
-    r = storage.debug;
-  } catch(e) {}
-  return r;
-}
-
-/**
- * Enable namespaces listed in `localStorage.debug` initially.
- */
-
-exports.enable(load());
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage(){
-  try {
-    return window.localStorage;
-  } catch (e) {}
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/component.json
deleted file mode 100644 (file)
index 52ffd42..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "debug",
-  "repo": "visionmedia/debug",
-  "description": "small debugging utility",
-  "version": "2.1.3",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "main": "browser.js",
-  "scripts": [
-    "browser.js",
-    "debug.js"
-  ],
-  "dependencies": {
-    "rauchg/ms.js": "0.7.0"
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/debug.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/debug.js
deleted file mode 100644 (file)
index 7571a86..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = debug;
-exports.coerce = coerce;
-exports.disable = disable;
-exports.enable = enable;
-exports.enabled = enabled;
-exports.humanize = require('ms');
-
-/**
- * The currently active debug mode names, and names to skip.
- */
-
-exports.names = [];
-exports.skips = [];
-
-/**
- * Map of special "%n" handling functions, for the debug "format" argument.
- *
- * Valid key names are a single, lowercased letter, i.e. "n".
- */
-
-exports.formatters = {};
-
-/**
- * Previously assigned color.
- */
-
-var prevColor = 0;
-
-/**
- * Previous log timestamp.
- */
-
-var prevTime;
-
-/**
- * Select a color.
- *
- * @return {Number}
- * @api private
- */
-
-function selectColor() {
-  return exports.colors[prevColor++ % exports.colors.length];
-}
-
-/**
- * Create a debugger with the given `namespace`.
- *
- * @param {String} namespace
- * @return {Function}
- * @api public
- */
-
-function debug(namespace) {
-
-  // define the `disabled` version
-  function disabled() {
-  }
-  disabled.enabled = false;
-
-  // define the `enabled` version
-  function enabled() {
-
-    var self = enabled;
-
-    // set `diff` timestamp
-    var curr = +new Date();
-    var ms = curr - (prevTime || curr);
-    self.diff = ms;
-    self.prev = prevTime;
-    self.curr = curr;
-    prevTime = curr;
-
-    // add the `color` if not set
-    if (null == self.useColors) self.useColors = exports.useColors();
-    if (null == self.color && self.useColors) self.color = selectColor();
-
-    var args = Array.prototype.slice.call(arguments);
-
-    args[0] = exports.coerce(args[0]);
-
-    if ('string' !== typeof args[0]) {
-      // anything else let's inspect with %o
-      args = ['%o'].concat(args);
-    }
-
-    // apply any `formatters` transformations
-    var index = 0;
-    args[0] = args[0].replace(/%([a-z%])/g, function(match, format) {
-      // if we encounter an escaped % then don't increase the array index
-      if (match === '%%') return match;
-      index++;
-      var formatter = exports.formatters[format];
-      if ('function' === typeof formatter) {
-        var val = args[index];
-        match = formatter.call(self, val);
-
-        // now we need to remove `args[index]` since it's inlined in the `format`
-        args.splice(index, 1);
-        index--;
-      }
-      return match;
-    });
-
-    if ('function' === typeof exports.formatArgs) {
-      args = exports.formatArgs.apply(self, args);
-    }
-    var logFn = enabled.log || exports.log || console.log.bind(console);
-    logFn.apply(self, args);
-  }
-  enabled.enabled = true;
-
-  var fn = exports.enabled(namespace) ? enabled : disabled;
-
-  fn.namespace = namespace;
-
-  return fn;
-}
-
-/**
- * Enables a debug mode by namespaces. This can include modes
- * separated by a colon and wildcards.
- *
- * @param {String} namespaces
- * @api public
- */
-
-function enable(namespaces) {
-  exports.save(namespaces);
-
-  var split = (namespaces || '').split(/[\s,]+/);
-  var len = split.length;
-
-  for (var i = 0; i < len; i++) {
-    if (!split[i]) continue; // ignore empty strings
-    namespaces = split[i].replace(/\*/g, '.*?');
-    if (namespaces[0] === '-') {
-      exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
-    } else {
-      exports.names.push(new RegExp('^' + namespaces + '$'));
-    }
-  }
-}
-
-/**
- * Disable debug output.
- *
- * @api public
- */
-
-function disable() {
-  exports.enable('');
-}
-
-/**
- * Returns true if the given mode name is enabled, false otherwise.
- *
- * @param {String} name
- * @return {Boolean}
- * @api public
- */
-
-function enabled(name) {
-  var i, len;
-  for (i = 0, len = exports.skips.length; i < len; i++) {
-    if (exports.skips[i].test(name)) {
-      return false;
-    }
-  }
-  for (i = 0, len = exports.names.length; i < len; i++) {
-    if (exports.names[i].test(name)) {
-      return true;
-    }
-  }
-  return false;
-}
-
-/**
- * Coerce `val`.
- *
- * @param {Mixed} val
- * @return {Mixed}
- * @api private
- */
-
-function coerce(val) {
-  if (val instanceof Error) return val.stack || val.message;
-  return val;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node.js
deleted file mode 100644 (file)
index 1d392a8..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Module dependencies.
- */
-
-var tty = require('tty');
-var util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-/**
- * The file descriptor to write the `debug()` calls to.
- * Set the `DEBUG_FD` env variable to override with another value. i.e.:
- *
- *   $ DEBUG_FD=3 node script.js 3>debug.log
- */
-
-var fd = parseInt(process.env.DEBUG_FD, 10) || 2;
-var stream = 1 === fd ? process.stdout :
-             2 === fd ? process.stderr :
-             createWritableStdioStream(fd);
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
-  var debugColors = (process.env.DEBUG_COLORS || '').trim().toLowerCase();
-  if (0 === debugColors.length) {
-    return tty.isatty(fd);
-  } else {
-    return '0' !== debugColors
-        && 'no' !== debugColors
-        && 'false' !== debugColors
-        && 'disabled' !== debugColors;
-  }
-}
-
-/**
- * Map %o to `util.inspect()`, since Node doesn't do that out of the box.
- */
-
-var inspect = (4 === util.inspect.length ?
-  // node <= 0.8.x
-  function (v, colors) {
-    return util.inspect(v, void 0, void 0, colors);
-  } :
-  // node > 0.8.x
-  function (v, colors) {
-    return util.inspect(v, { colors: colors });
-  }
-);
-
-exports.formatters.o = function(v) {
-  return inspect(v, this.useColors)
-    .replace(/\s*\n\s*/g, ' ');
-};
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-  var name = this.namespace;
-
-  if (useColors) {
-    var c = this.color;
-
-    args[0] = '  \u001b[3' + c + ';1m' + name + ' '
-      + '\u001b[0m'
-      + args[0] + '\u001b[3' + c + 'm'
-      + ' +' + exports.humanize(this.diff) + '\u001b[0m';
-  } else {
-    args[0] = new Date().toUTCString()
-      + ' ' + name + ' ' + args[0];
-  }
-  return args;
-}
-
-/**
- * Invokes `console.error()` with the specified arguments.
- */
-
-function log() {
-  return stream.write(util.format.apply(this, arguments) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  if (null == namespaces) {
-    // If you set a process.env field to null or undefined, it gets cast to the
-    // string 'null' or 'undefined'. Just delete instead.
-    delete process.env.DEBUG;
-  } else {
-    process.env.DEBUG = namespaces;
-  }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  return process.env.DEBUG;
-}
-
-/**
- * Copied from `node/src/node.js`.
- *
- * XXX: It's lame that node doesn't expose this API out-of-the-box. It also
- * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame.
- */
-
-function createWritableStdioStream (fd) {
-  var stream;
-  var tty_wrap = process.binding('tty_wrap');
-
-  // Note stream._type is used for test-module-load-list.js
-
-  switch (tty_wrap.guessHandleType(fd)) {
-    case 'TTY':
-      stream = new tty.WriteStream(fd);
-      stream._type = 'tty';
-
-      // Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    case 'FILE':
-      var fs = require('fs');
-      stream = new fs.SyncWriteStream(fd, { autoClose: false });
-      stream._type = 'fs';
-      break;
-
-    case 'PIPE':
-    case 'TCP':
-      var net = require('net');
-      stream = new net.Socket({
-        fd: fd,
-        readable: false,
-        writable: true
-      });
-
-      // FIXME Should probably have an option in net.Socket to create a
-      // stream from an existing fd which is writable only. But for now
-      // we'll just add this hack and set the `readable` member to false.
-      // Test: ./node test/fixtures/echo.js < /etc/passwd
-      stream.readable = false;
-      stream.read = null;
-      stream._type = 'pipe';
-
-      // FIXME Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    default:
-      // Probably an error on in uv_guess_handle()
-      throw new Error('Implement me. Unknown stream file type!');
-  }
-
-  // For supporting legacy API we put the FD here.
-  stream.fd = fd;
-
-  stream._isStdio = true;
-
-  return stream;
-}
-
-/**
- * Enable namespaces listed in `process.env.DEBUG` initially.
- */
-
-exports.enable(load());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/.npmignore
deleted file mode 100644 (file)
index d1aa0ce..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-node_modules
-test
-History.md
-Makefile
-component.json
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/LICENSE
deleted file mode 100644 (file)
index 6c07561..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014 Guillermo Rauch <rauchg@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/README.md
deleted file mode 100644 (file)
index 0fd54fd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# ms.js: miliseconds conversion utility
-
-```js
-ms('2 days')  // 172800000
-ms('1d')      // 86400000
-ms('10h')     // 36000000
-ms('2.5 hrs') // 9000000
-ms('2h')      // 7200000
-ms('1m')      // 60000
-ms('5s')      // 5000
-ms('100')     // 100
-```
-
-```js
-ms(60000)             // "1m"
-ms(2 * 60000)         // "2m"
-ms(ms('10 hours'))    // "10h"
-```
-
-```js
-ms(60000, { long: true })             // "1 minute"
-ms(2 * 60000, { long: true })         // "2 minutes"
-ms(ms('10 hours'), { long: true })    // "10 hours"
-```
-
-- Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](nodejs.org/download).
-- If a number is supplied to `ms`, a string with a unit is returned.
-- If a string that contains the number is supplied, it returns it as
-a number (e.g: it returns `100` for `'100'`).
-- If you pass a string with a number and a valid unit, the number of
-equivalent ms is returned.
-
-## License
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/index.js
deleted file mode 100644 (file)
index e79bfa1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/**
- * Helpers.
- */
-
-var s = 1000;
-var m = s * 60;
-var h = m * 60;
-var d = h * 24;
-var y = d * 365.25;
-
-/**
- * Parse or format the given `val`.
- *
- * Options:
- *
- *  - `long` verbose formatting [false]
- *
- * @param {String|Number} val
- * @param {Object} options
- * @return {String|Number}
- * @api public
- */
-
-module.exports = function(val, options){
-  options = options || {};
-  if ('string' == typeof val) return parse(val);
-  return options.long
-    ? long(val)
-    : short(val);
-};
-
-/**
- * Parse the given `str` and return milliseconds.
- *
- * @param {String} str
- * @return {Number}
- * @api private
- */
-
-function parse(str) {
-  var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str);
-  if (!match) return;
-  var n = parseFloat(match[1]);
-  var type = (match[2] || 'ms').toLowerCase();
-  switch (type) {
-    case 'years':
-    case 'year':
-    case 'yrs':
-    case 'yr':
-    case 'y':
-      return n * y;
-    case 'days':
-    case 'day':
-    case 'd':
-      return n * d;
-    case 'hours':
-    case 'hour':
-    case 'hrs':
-    case 'hr':
-    case 'h':
-      return n * h;
-    case 'minutes':
-    case 'minute':
-    case 'mins':
-    case 'min':
-    case 'm':
-      return n * m;
-    case 'seconds':
-    case 'second':
-    case 'secs':
-    case 'sec':
-    case 's':
-      return n * s;
-    case 'milliseconds':
-    case 'millisecond':
-    case 'msecs':
-    case 'msec':
-    case 'ms':
-      return n;
-  }
-}
-
-/**
- * Short format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function short(ms) {
-  if (ms >= d) return Math.round(ms / d) + 'd';
-  if (ms >= h) return Math.round(ms / h) + 'h';
-  if (ms >= m) return Math.round(ms / m) + 'm';
-  if (ms >= s) return Math.round(ms / s) + 's';
-  return ms + 'ms';
-}
-
-/**
- * Long format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function long(ms) {
-  return plural(ms, d, 'day')
-    || plural(ms, h, 'hour')
-    || plural(ms, m, 'minute')
-    || plural(ms, s, 'second')
-    || ms + ' ms';
-}
-
-/**
- * Pluralization helper.
- */
-
-function plural(ms, n, name) {
-  if (ms < n) return;
-  if (ms < n * 1.5) return Math.floor(ms / n) + ' ' + name;
-  return Math.ceil(ms / n) + ' ' + name + 's';
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/node_modules/ms/package.json
deleted file mode 100644 (file)
index 8399eda..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-  "_args": [
-    [
-      "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_id": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-linebreak/debug/ms",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "name": "ms",
-    "escapedName": "ms",
-    "rawSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-linebreak/debug"
-  ],
-  "_spec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/guille/ms.js/issues"
-  },
-  "component": {
-    "scripts": {
-      "ms/index.js": "index.js"
-    }
-  },
-  "description": "Tiny ms conversion utility",
-  "devDependencies": {
-    "expect.js": "*",
-    "mocha": "*",
-    "serve": "*"
-  },
-  "homepage": "https://github.com/guille/ms.js#readme",
-  "main": "./index",
-  "name": "ms",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/guille/ms.js.git"
-  },
-  "version": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/debug/package.json
deleted file mode 100644 (file)
index f11d4e3..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-{
-  "_args": [
-    [
-      "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_id": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-linebreak/debug",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "name": "debug",
-    "escapedName": "debug",
-    "rawSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-linebreak"
-  ],
-  "_spec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "browser": "./browser.js",
-  "bugs": {
-    "url": "https://github.com/visionmedia/debug/issues"
-  },
-  "component": {
-    "scripts": {
-      "debug/index.js": "browser.js",
-      "debug/debug.js": "debug.js"
-    }
-  },
-  "contributors": [
-    {
-      "name": "Nathan Rajlich",
-      "email": "nathan@tootallnate.net",
-      "url": "http://n8.io"
-    }
-  ],
-  "dependencies": {
-    "ms": "0.7.0"
-  },
-  "description": "small debugging utility",
-  "devDependencies": {
-    "browserify": "9.0.3",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/visionmedia/debug#readme",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "license": "MIT",
-  "main": "./node.js",
-  "name": "debug",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "version": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/.npmignore
deleted file mode 100644 (file)
index 7300fbc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-# nada
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/LICENSE
deleted file mode 100644 (file)
index 0c44ae7..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Copyright (c) Isaac Z. Schlueter ("Author")
-All rights reserved.
-
-The BSD License
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/package.json
deleted file mode 100644 (file)
index bdf08f5..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-{
-  "_args": [
-    [
-      "semver@https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "semver@https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-  "_id": "semver@https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-FUZrYSILw3HNjw5map94Uynqgig=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-linebreak/semver",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "semver@https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-    "name": "semver",
-    "escapedName": "semver",
-    "rawSpec": "https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/semver/-/semver-4.3.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-linebreak"
-  ],
-  "_spec": "https://registry.npmjs.org/semver/-/semver-4.3.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bin": {
-    "semver": "./bin/semver"
-  },
-  "browser": "semver.browser.js",
-  "bugs": {
-    "url": "https://github.com/npm/node-semver/issues"
-  },
-  "description": "The semantic version parser used by npm.",
-  "devDependencies": {
-    "tap": "0.x >=0.0.4",
-    "uglify-js": "~2.3.6"
-  },
-  "homepage": "https://github.com/npm/node-semver#readme",
-  "license": "BSD",
-  "main": "semver.js",
-  "min": "semver.min.js",
-  "name": "semver",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/npm/node-semver.git"
-  },
-  "scripts": {
-    "prepublish": "make",
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/semver/-/semver-4.3.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js
deleted file mode 100644 (file)
index b84228a..0000000
+++ /dev/null
@@ -1,1198 +0,0 @@
-;(function(exports) {
-
-// export the class if we are in a Node-like system.
-if (typeof module === 'object' && module.exports === exports)
-  exports = module.exports = SemVer;
-
-// The debug function is excluded entirely from the minified version.
-
-// Note: this is the semver.org version of the spec that it implements
-// Not necessarily the package version of this code.
-exports.SEMVER_SPEC_VERSION = '2.0.0';
-
-var MAX_LENGTH = 256;
-var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
-
-// The actual regexps go on exports.re
-var re = exports.re = [];
-var src = exports.src = [];
-var R = 0;
-
-// The following Regular Expressions can be used for tokenizing,
-// validating, and parsing SemVer version strings.
-
-// ## Numeric Identifier
-// A single `0`, or a non-zero digit followed by zero or more digits.
-
-var NUMERICIDENTIFIER = R++;
-src[NUMERICIDENTIFIER] = '0|[1-9]\\d*';
-var NUMERICIDENTIFIERLOOSE = R++;
-src[NUMERICIDENTIFIERLOOSE] = '[0-9]+';
-
-
-// ## Non-numeric Identifier
-// Zero or more digits, followed by a letter or hyphen, and then zero or
-// more letters, digits, or hyphens.
-
-var NONNUMERICIDENTIFIER = R++;
-src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*';
-
-
-// ## Main Version
-// Three dot-separated numeric identifiers.
-
-var MAINVERSION = R++;
-src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' +
-                   '(' + src[NUMERICIDENTIFIER] + ')\\.' +
-                   '(' + src[NUMERICIDENTIFIER] + ')';
-
-var MAINVERSIONLOOSE = R++;
-src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
-                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
-                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')';
-
-// ## Pre-release Version Identifier
-// A numeric identifier, or a non-numeric identifier.
-
-var PRERELEASEIDENTIFIER = R++;
-src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] +
-                            '|' + src[NONNUMERICIDENTIFIER] + ')';
-
-var PRERELEASEIDENTIFIERLOOSE = R++;
-src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] +
-                                 '|' + src[NONNUMERICIDENTIFIER] + ')';
-
-
-// ## Pre-release Version
-// Hyphen, followed by one or more dot-separated pre-release version
-// identifiers.
-
-var PRERELEASE = R++;
-src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] +
-                  '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))';
-
-var PRERELEASELOOSE = R++;
-src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] +
-                       '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))';
-
-// ## Build Metadata Identifier
-// Any combination of digits, letters, or hyphens.
-
-var BUILDIDENTIFIER = R++;
-src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+';
-
-// ## Build Metadata
-// Plus sign, followed by one or more period-separated build metadata
-// identifiers.
-
-var BUILD = R++;
-src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] +
-             '(?:\\.' + src[BUILDIDENTIFIER] + ')*))';
-
-
-// ## Full Version String
-// A main version, followed optionally by a pre-release version and
-// build metadata.
-
-// Note that the only major, minor, patch, and pre-release sections of
-// the version string are capturing groups.  The build metadata is not a
-// capturing group, because it should not ever be used in version
-// comparison.
-
-var FULL = R++;
-var FULLPLAIN = 'v?' + src[MAINVERSION] +
-                src[PRERELEASE] + '?' +
-                src[BUILD] + '?';
-
-src[FULL] = '^' + FULLPLAIN + '$';
-
-// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
-// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
-// common in the npm registry.
-var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] +
-                 src[PRERELEASELOOSE] + '?' +
-                 src[BUILD] + '?';
-
-var LOOSE = R++;
-src[LOOSE] = '^' + LOOSEPLAIN + '$';
-
-var GTLT = R++;
-src[GTLT] = '((?:<|>)?=?)';
-
-// Something like "2.*" or "1.2.x".
-// Note that "x.x" is a valid xRange identifer, meaning "any version"
-// Only the first item is strictly required.
-var XRANGEIDENTIFIERLOOSE = R++;
-src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*';
-var XRANGEIDENTIFIER = R++;
-src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*';
-
-var XRANGEPLAIN = R++;
-src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:' + src[PRERELEASE] + ')?' +
-                   src[BUILD] + '?' +
-                   ')?)?';
-
-var XRANGEPLAINLOOSE = R++;
-src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:' + src[PRERELEASELOOSE] + ')?' +
-                        src[BUILD] + '?' +
-                        ')?)?';
-
-var XRANGE = R++;
-src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$';
-var XRANGELOOSE = R++;
-src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$';
-
-// Tilde ranges.
-// Meaning is "reasonably at or greater than"
-var LONETILDE = R++;
-src[LONETILDE] = '(?:~>?)';
-
-var TILDETRIM = R++;
-src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+';
-re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g');
-var tildeTrimReplace = '$1~';
-
-var TILDE = R++;
-src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$';
-var TILDELOOSE = R++;
-src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$';
-
-// Caret ranges.
-// Meaning is "at least and backwards compatible with"
-var LONECARET = R++;
-src[LONECARET] = '(?:\\^)';
-
-var CARETTRIM = R++;
-src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+';
-re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g');
-var caretTrimReplace = '$1^';
-
-var CARET = R++;
-src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$';
-var CARETLOOSE = R++;
-src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$';
-
-// A simple gt/lt/eq thing, or just "" to indicate "any version"
-var COMPARATORLOOSE = R++;
-src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$';
-var COMPARATOR = R++;
-src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$';
-
-
-// An expression to strip any whitespace between the gtlt and the thing
-// it modifies, so that `> 1.2.3` ==> `>1.2.3`
-var COMPARATORTRIM = R++;
-src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] +
-                      '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')';
-
-// this one has to use the /g flag
-re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g');
-var comparatorTrimReplace = '$1$2$3';
-
-
-// Something like `1.2.3 - 1.2.4`
-// Note that these all use the loose form, because they'll be
-// checked against either the strict or loose comparator form
-// later.
-var HYPHENRANGE = R++;
-src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' +
-                   '\\s+-\\s+' +
-                   '(' + src[XRANGEPLAIN] + ')' +
-                   '\\s*$';
-
-var HYPHENRANGELOOSE = R++;
-src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' +
-                        '\\s+-\\s+' +
-                        '(' + src[XRANGEPLAINLOOSE] + ')' +
-                        '\\s*$';
-
-// Star ranges basically just allow anything at all.
-var STAR = R++;
-src[STAR] = '(<|>)?=?\\s*\\*';
-
-// Compile to actual regexp objects.
-// All are flag-free, unless they were created above with a flag.
-for (var i = 0; i < R; i++) {
-  ;
-  if (!re[i])
-    re[i] = new RegExp(src[i]);
-}
-
-exports.parse = parse;
-function parse(version, loose) {
-  if (version instanceof SemVer)
-    return version;
-
-  if (typeof version !== 'string')
-    return null;
-
-  if (version.length > MAX_LENGTH)
-    return null;
-
-  var r = loose ? re[LOOSE] : re[FULL];
-  if (!r.test(version))
-    return null;
-
-  try {
-    return new SemVer(version, loose);
-  } catch (er) {
-    return null;
-  }
-}
-
-exports.valid = valid;
-function valid(version, loose) {
-  var v = parse(version, loose);
-  return v ? v.version : null;
-}
-
-
-exports.clean = clean;
-function clean(version, loose) {
-  var s = parse(version.trim().replace(/^[=v]+/, ''), loose);
-  return s ? s.version : null;
-}
-
-exports.SemVer = SemVer;
-
-function SemVer(version, loose) {
-  if (version instanceof SemVer) {
-    if (version.loose === loose)
-      return version;
-    else
-      version = version.version;
-  } else if (typeof version !== 'string') {
-    throw new TypeError('Invalid Version: ' + version);
-  }
-
-  if (version.length > MAX_LENGTH)
-    throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
-
-  if (!(this instanceof SemVer))
-    return new SemVer(version, loose);
-
-  ;
-  this.loose = loose;
-  var m = version.trim().match(loose ? re[LOOSE] : re[FULL]);
-
-  if (!m)
-    throw new TypeError('Invalid Version: ' + version);
-
-  this.raw = version;
-
-  // these are actually numbers
-  this.major = +m[1];
-  this.minor = +m[2];
-  this.patch = +m[3];
-
-  if (this.major > MAX_SAFE_INTEGER || this.major < 0)
-    throw new TypeError('Invalid major version')
-
-  if (this.minor > MAX_SAFE_INTEGER || this.minor < 0)
-    throw new TypeError('Invalid minor version')
-
-  if (this.patch > MAX_SAFE_INTEGER || this.patch < 0)
-    throw new TypeError('Invalid patch version')
-
-  // numberify any prerelease numeric ids
-  if (!m[4])
-    this.prerelease = [];
-  else
-    this.prerelease = m[4].split('.').map(function(id) {
-      if (/^[0-9]+$/.test(id)) {
-        var num = +id
-        if (num >= 0 && num < MAX_SAFE_INTEGER)
-          return num
-      }
-      return id;
-    });
-
-  this.build = m[5] ? m[5].split('.') : [];
-  this.format();
-}
-
-SemVer.prototype.format = function() {
-  this.version = this.major + '.' + this.minor + '.' + this.patch;
-  if (this.prerelease.length)
-    this.version += '-' + this.prerelease.join('.');
-  return this.version;
-};
-
-SemVer.prototype.inspect = function() {
-  return '<SemVer "' + this + '">';
-};
-
-SemVer.prototype.toString = function() {
-  return this.version;
-};
-
-SemVer.prototype.compare = function(other) {
-  ;
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  return this.compareMain(other) || this.comparePre(other);
-};
-
-SemVer.prototype.compareMain = function(other) {
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  return compareIdentifiers(this.major, other.major) ||
-         compareIdentifiers(this.minor, other.minor) ||
-         compareIdentifiers(this.patch, other.patch);
-};
-
-SemVer.prototype.comparePre = function(other) {
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  // NOT having a prerelease is > having one
-  if (this.prerelease.length && !other.prerelease.length)
-    return -1;
-  else if (!this.prerelease.length && other.prerelease.length)
-    return 1;
-  else if (!this.prerelease.length && !other.prerelease.length)
-    return 0;
-
-  var i = 0;
-  do {
-    var a = this.prerelease[i];
-    var b = other.prerelease[i];
-    ;
-    if (a === undefined && b === undefined)
-      return 0;
-    else if (b === undefined)
-      return 1;
-    else if (a === undefined)
-      return -1;
-    else if (a === b)
-      continue;
-    else
-      return compareIdentifiers(a, b);
-  } while (++i);
-};
-
-// preminor will bump the version up to the next minor release, and immediately
-// down to pre-release. premajor and prepatch work the same way.
-SemVer.prototype.inc = function(release, identifier) {
-  switch (release) {
-    case 'premajor':
-      this.prerelease.length = 0;
-      this.patch = 0;
-      this.minor = 0;
-      this.major++;
-      this.inc('pre', identifier);
-      break;
-    case 'preminor':
-      this.prerelease.length = 0;
-      this.patch = 0;
-      this.minor++;
-      this.inc('pre', identifier);
-      break;
-    case 'prepatch':
-      // If this is already a prerelease, it will bump to the next version
-      // drop any prereleases that might already exist, since they are not
-      // relevant at this point.
-      this.prerelease.length = 0;
-      this.inc('patch', identifier);
-      this.inc('pre', identifier);
-      break;
-    // If the input is a non-prerelease version, this acts the same as
-    // prepatch.
-    case 'prerelease':
-      if (this.prerelease.length === 0)
-        this.inc('patch', identifier);
-      this.inc('pre', identifier);
-      break;
-
-    case 'major':
-      // If this is a pre-major version, bump up to the same major version.
-      // Otherwise increment major.
-      // 1.0.0-5 bumps to 1.0.0
-      // 1.1.0 bumps to 2.0.0
-      if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0)
-        this.major++;
-      this.minor = 0;
-      this.patch = 0;
-      this.prerelease = [];
-      break;
-    case 'minor':
-      // If this is a pre-minor version, bump up to the same minor version.
-      // Otherwise increment minor.
-      // 1.2.0-5 bumps to 1.2.0
-      // 1.2.1 bumps to 1.3.0
-      if (this.patch !== 0 || this.prerelease.length === 0)
-        this.minor++;
-      this.patch = 0;
-      this.prerelease = [];
-      break;
-    case 'patch':
-      // If this is not a pre-release version, it will increment the patch.
-      // If it is a pre-release it will bump up to the same patch version.
-      // 1.2.0-5 patches to 1.2.0
-      // 1.2.0 patches to 1.2.1
-      if (this.prerelease.length === 0)
-        this.patch++;
-      this.prerelease = [];
-      break;
-    // This probably shouldn't be used publicly.
-    // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
-    case 'pre':
-      if (this.prerelease.length === 0)
-        this.prerelease = [0];
-      else {
-        var i = this.prerelease.length;
-        while (--i >= 0) {
-          if (typeof this.prerelease[i] === 'number') {
-            this.prerelease[i]++;
-            i = -2;
-          }
-        }
-        if (i === -1) // didn't increment anything
-          this.prerelease.push(0);
-      }
-      if (identifier) {
-        // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
-        // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
-        if (this.prerelease[0] === identifier) {
-          if (isNaN(this.prerelease[1]))
-            this.prerelease = [identifier, 0];
-        } else
-          this.prerelease = [identifier, 0];
-      }
-      break;
-
-    default:
-      throw new Error('invalid increment argument: ' + release);
-  }
-  this.format();
-  return this;
-};
-
-exports.inc = inc;
-function inc(version, release, loose, identifier) {
-  if (typeof(loose) === 'string') {
-    identifier = loose;
-    loose = undefined;
-  }
-
-  try {
-    return new SemVer(version, loose).inc(release, identifier).version;
-  } catch (er) {
-    return null;
-  }
-}
-
-exports.diff = diff;
-function diff(version1, version2) {
-  if (eq(version1, version2)) {
-    return null;
-  } else {
-    var v1 = parse(version1);
-    var v2 = parse(version2);
-    if (v1.prerelease.length || v2.prerelease.length) {
-      for (var key in v1) {
-        if (key === 'major' || key === 'minor' || key === 'patch') {
-          if (v1[key] !== v2[key]) {
-            return 'pre'+key;
-          }
-        }
-      }
-      return 'prerelease';
-    }
-    for (var key in v1) {
-      if (key === 'major' || key === 'minor' || key === 'patch') {
-        if (v1[key] !== v2[key]) {
-          return key;
-        }
-      }
-    }
-  }
-}
-
-exports.compareIdentifiers = compareIdentifiers;
-
-var numeric = /^[0-9]+$/;
-function compareIdentifiers(a, b) {
-  var anum = numeric.test(a);
-  var bnum = numeric.test(b);
-
-  if (anum && bnum) {
-    a = +a;
-    b = +b;
-  }
-
-  return (anum && !bnum) ? -1 :
-         (bnum && !anum) ? 1 :
-         a < b ? -1 :
-         a > b ? 1 :
-         0;
-}
-
-exports.rcompareIdentifiers = rcompareIdentifiers;
-function rcompareIdentifiers(a, b) {
-  return compareIdentifiers(b, a);
-}
-
-exports.major = major;
-function major(a, loose) {
-  return new SemVer(a, loose).major;
-}
-
-exports.minor = minor;
-function minor(a, loose) {
-  return new SemVer(a, loose).minor;
-}
-
-exports.patch = patch;
-function patch(a, loose) {
-  return new SemVer(a, loose).patch;
-}
-
-exports.compare = compare;
-function compare(a, b, loose) {
-  return new SemVer(a, loose).compare(b);
-}
-
-exports.compareLoose = compareLoose;
-function compareLoose(a, b) {
-  return compare(a, b, true);
-}
-
-exports.rcompare = rcompare;
-function rcompare(a, b, loose) {
-  return compare(b, a, loose);
-}
-
-exports.sort = sort;
-function sort(list, loose) {
-  return list.sort(function(a, b) {
-    return exports.compare(a, b, loose);
-  });
-}
-
-exports.rsort = rsort;
-function rsort(list, loose) {
-  return list.sort(function(a, b) {
-    return exports.rcompare(a, b, loose);
-  });
-}
-
-exports.gt = gt;
-function gt(a, b, loose) {
-  return compare(a, b, loose) > 0;
-}
-
-exports.lt = lt;
-function lt(a, b, loose) {
-  return compare(a, b, loose) < 0;
-}
-
-exports.eq = eq;
-function eq(a, b, loose) {
-  return compare(a, b, loose) === 0;
-}
-
-exports.neq = neq;
-function neq(a, b, loose) {
-  return compare(a, b, loose) !== 0;
-}
-
-exports.gte = gte;
-function gte(a, b, loose) {
-  return compare(a, b, loose) >= 0;
-}
-
-exports.lte = lte;
-function lte(a, b, loose) {
-  return compare(a, b, loose) <= 0;
-}
-
-exports.cmp = cmp;
-function cmp(a, op, b, loose) {
-  var ret;
-  switch (op) {
-    case '===':
-      if (typeof a === 'object') a = a.version;
-      if (typeof b === 'object') b = b.version;
-      ret = a === b;
-      break;
-    case '!==':
-      if (typeof a === 'object') a = a.version;
-      if (typeof b === 'object') b = b.version;
-      ret = a !== b;
-      break;
-    case '': case '=': case '==': ret = eq(a, b, loose); break;
-    case '!=': ret = neq(a, b, loose); break;
-    case '>': ret = gt(a, b, loose); break;
-    case '>=': ret = gte(a, b, loose); break;
-    case '<': ret = lt(a, b, loose); break;
-    case '<=': ret = lte(a, b, loose); break;
-    default: throw new TypeError('Invalid operator: ' + op);
-  }
-  return ret;
-}
-
-exports.Comparator = Comparator;
-function Comparator(comp, loose) {
-  if (comp instanceof Comparator) {
-    if (comp.loose === loose)
-      return comp;
-    else
-      comp = comp.value;
-  }
-
-  if (!(this instanceof Comparator))
-    return new Comparator(comp, loose);
-
-  ;
-  this.loose = loose;
-  this.parse(comp);
-
-  if (this.semver === ANY)
-    this.value = '';
-  else
-    this.value = this.operator + this.semver.version;
-
-  ;
-}
-
-var ANY = {};
-Comparator.prototype.parse = function(comp) {
-  var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
-  var m = comp.match(r);
-
-  if (!m)
-    throw new TypeError('Invalid comparator: ' + comp);
-
-  this.operator = m[1];
-  if (this.operator === '=')
-    this.operator = '';
-
-  // if it literally is just '>' or '' then allow anything.
-  if (!m[2])
-    this.semver = ANY;
-  else
-    this.semver = new SemVer(m[2], this.loose);
-};
-
-Comparator.prototype.inspect = function() {
-  return '<SemVer Comparator "' + this + '">';
-};
-
-Comparator.prototype.toString = function() {
-  return this.value;
-};
-
-Comparator.prototype.test = function(version) {
-  ;
-
-  if (this.semver === ANY)
-    return true;
-
-  if (typeof version === 'string')
-    version = new SemVer(version, this.loose);
-
-  return cmp(version, this.operator, this.semver, this.loose);
-};
-
-
-exports.Range = Range;
-function Range(range, loose) {
-  if ((range instanceof Range) && range.loose === loose)
-    return range;
-
-  if (!(this instanceof Range))
-    return new Range(range, loose);
-
-  this.loose = loose;
-
-  // First, split based on boolean or ||
-  this.raw = range;
-  this.set = range.split(/\s*\|\|\s*/).map(function(range) {
-    return this.parseRange(range.trim());
-  }, this).filter(function(c) {
-    // throw out any that are not relevant for whatever reason
-    return c.length;
-  });
-
-  if (!this.set.length) {
-    throw new TypeError('Invalid SemVer Range: ' + range);
-  }
-
-  this.format();
-}
-
-Range.prototype.inspect = function() {
-  return '<SemVer Range "' + this.range + '">';
-};
-
-Range.prototype.format = function() {
-  this.range = this.set.map(function(comps) {
-    return comps.join(' ').trim();
-  }).join('||').trim();
-  return this.range;
-};
-
-Range.prototype.toString = function() {
-  return this.range;
-};
-
-Range.prototype.parseRange = function(range) {
-  var loose = this.loose;
-  range = range.trim();
-  ;
-  // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
-  var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE];
-  range = range.replace(hr, hyphenReplace);
-  ;
-  // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
-  range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace);
-  ;
-
-  // `~ 1.2.3` => `~1.2.3`
-  range = range.replace(re[TILDETRIM], tildeTrimReplace);
-
-  // `^ 1.2.3` => `^1.2.3`
-  range = range.replace(re[CARETTRIM], caretTrimReplace);
-
-  // normalize spaces
-  range = range.split(/\s+/).join(' ');
-
-  // At this point, the range is completely trimmed and
-  // ready to be split into comparators.
-
-  var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
-  var set = range.split(' ').map(function(comp) {
-    return parseComparator(comp, loose);
-  }).join(' ').split(/\s+/);
-  if (this.loose) {
-    // in loose mode, throw out any that are not valid comparators
-    set = set.filter(function(comp) {
-      return !!comp.match(compRe);
-    });
-  }
-  set = set.map(function(comp) {
-    return new Comparator(comp, loose);
-  });
-
-  return set;
-};
-
-// Mostly just for testing and legacy API reasons
-exports.toComparators = toComparators;
-function toComparators(range, loose) {
-  return new Range(range, loose).set.map(function(comp) {
-    return comp.map(function(c) {
-      return c.value;
-    }).join(' ').trim().split(' ');
-  });
-}
-
-// comprised of xranges, tildes, stars, and gtlt's at this point.
-// already replaced the hyphen ranges
-// turn into a set of JUST comparators.
-function parseComparator(comp, loose) {
-  ;
-  comp = replaceCarets(comp, loose);
-  ;
-  comp = replaceTildes(comp, loose);
-  ;
-  comp = replaceXRanges(comp, loose);
-  ;
-  comp = replaceStars(comp, loose);
-  ;
-  return comp;
-}
-
-function isX(id) {
-  return !id || id.toLowerCase() === 'x' || id === '*';
-}
-
-// ~, ~> --> * (any, kinda silly)
-// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
-// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
-// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
-// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
-// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
-function replaceTildes(comp, loose) {
-  return comp.trim().split(/\s+/).map(function(comp) {
-    return replaceTilde(comp, loose);
-  }).join(' ');
-}
-
-function replaceTilde(comp, loose) {
-  var r = loose ? re[TILDELOOSE] : re[TILDE];
-  return comp.replace(r, function(_, M, m, p, pr) {
-    ;
-    var ret;
-
-    if (isX(M))
-      ret = '';
-    else if (isX(m))
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    else if (isX(p))
-      // ~1.2 == >=1.2.0- <1.3.0-
-      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-    else if (pr) {
-      ;
-      if (pr.charAt(0) !== '-')
-        pr = '-' + pr;
-      ret = '>=' + M + '.' + m + '.' + p + pr +
-            ' <' + M + '.' + (+m + 1) + '.0';
-    } else
-      // ~1.2.3 == >=1.2.3 <1.3.0
-      ret = '>=' + M + '.' + m + '.' + p +
-            ' <' + M + '.' + (+m + 1) + '.0';
-
-    ;
-    return ret;
-  });
-}
-
-// ^ --> * (any, kinda silly)
-// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
-// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
-// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
-// ^1.2.3 --> >=1.2.3 <2.0.0
-// ^1.2.0 --> >=1.2.0 <2.0.0
-function replaceCarets(comp, loose) {
-  return comp.trim().split(/\s+/).map(function(comp) {
-    return replaceCaret(comp, loose);
-  }).join(' ');
-}
-
-function replaceCaret(comp, loose) {
-  ;
-  var r = loose ? re[CARETLOOSE] : re[CARET];
-  return comp.replace(r, function(_, M, m, p, pr) {
-    ;
-    var ret;
-
-    if (isX(M))
-      ret = '';
-    else if (isX(m))
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    else if (isX(p)) {
-      if (M === '0')
-        ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-      else
-        ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0';
-    } else if (pr) {
-      ;
-      if (pr.charAt(0) !== '-')
-        pr = '-' + pr;
-      if (M === '0') {
-        if (m === '0')
-          ret = '>=' + M + '.' + m + '.' + p + pr +
-                ' <' + M + '.' + m + '.' + (+p + 1);
-        else
-          ret = '>=' + M + '.' + m + '.' + p + pr +
-                ' <' + M + '.' + (+m + 1) + '.0';
-      } else
-        ret = '>=' + M + '.' + m + '.' + p + pr +
-              ' <' + (+M + 1) + '.0.0';
-    } else {
-      ;
-      if (M === '0') {
-        if (m === '0')
-          ret = '>=' + M + '.' + m + '.' + p +
-                ' <' + M + '.' + m + '.' + (+p + 1);
-        else
-          ret = '>=' + M + '.' + m + '.' + p +
-                ' <' + M + '.' + (+m + 1) + '.0';
-      } else
-        ret = '>=' + M + '.' + m + '.' + p +
-              ' <' + (+M + 1) + '.0.0';
-    }
-
-    ;
-    return ret;
-  });
-}
-
-function replaceXRanges(comp, loose) {
-  ;
-  return comp.split(/\s+/).map(function(comp) {
-    return replaceXRange(comp, loose);
-  }).join(' ');
-}
-
-function replaceXRange(comp, loose) {
-  comp = comp.trim();
-  var r = loose ? re[XRANGELOOSE] : re[XRANGE];
-  return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
-    ;
-    var xM = isX(M);
-    var xm = xM || isX(m);
-    var xp = xm || isX(p);
-    var anyX = xp;
-
-    if (gtlt === '=' && anyX)
-      gtlt = '';
-
-    if (xM) {
-      if (gtlt === '>' || gtlt === '<') {
-        // nothing is allowed
-        ret = '<0.0.0';
-      } else {
-        // nothing is forbidden
-        ret = '*';
-      }
-    } else if (gtlt && anyX) {
-      // replace X with 0
-      if (xm)
-        m = 0;
-      if (xp)
-        p = 0;
-
-      if (gtlt === '>') {
-        // >1 => >=2.0.0
-        // >1.2 => >=1.3.0
-        // >1.2.3 => >= 1.2.4
-        gtlt = '>=';
-        if (xm) {
-          M = +M + 1;
-          m = 0;
-          p = 0;
-        } else if (xp) {
-          m = +m + 1;
-          p = 0;
-        }
-      } else if (gtlt === '<=') {
-        // <=0.7.x is actually <0.8.0, since any 0.7.x should
-        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
-        gtlt = '<'
-        if (xm)
-          M = +M + 1
-        else
-          m = +m + 1
-      }
-
-      ret = gtlt + M + '.' + m + '.' + p;
-    } else if (xm) {
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    } else if (xp) {
-      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-    }
-
-    ;
-
-    return ret;
-  });
-}
-
-// Because * is AND-ed with everything else in the comparator,
-// and '' means "any version", just remove the *s entirely.
-function replaceStars(comp, loose) {
-  ;
-  // Looseness is ignored here.  star is always as loose as it gets!
-  return comp.trim().replace(re[STAR], '');
-}
-
-// This function is passed to string.replace(re[HYPHENRANGE])
-// M, m, patch, prerelease, build
-// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
-// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
-// 1.2 - 3.4 => >=1.2.0 <3.5.0
-function hyphenReplace($0,
-                       from, fM, fm, fp, fpr, fb,
-                       to, tM, tm, tp, tpr, tb) {
-
-  if (isX(fM))
-    from = '';
-  else if (isX(fm))
-    from = '>=' + fM + '.0.0';
-  else if (isX(fp))
-    from = '>=' + fM + '.' + fm + '.0';
-  else
-    from = '>=' + from;
-
-  if (isX(tM))
-    to = '';
-  else if (isX(tm))
-    to = '<' + (+tM + 1) + '.0.0';
-  else if (isX(tp))
-    to = '<' + tM + '.' + (+tm + 1) + '.0';
-  else if (tpr)
-    to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr;
-  else
-    to = '<=' + to;
-
-  return (from + ' ' + to).trim();
-}
-
-
-// if ANY of the sets match ALL of its comparators, then pass
-Range.prototype.test = function(version) {
-  if (!version)
-    return false;
-
-  if (typeof version === 'string')
-    version = new SemVer(version, this.loose);
-
-  for (var i = 0; i < this.set.length; i++) {
-    if (testSet(this.set[i], version))
-      return true;
-  }
-  return false;
-};
-
-function testSet(set, version) {
-  for (var i = 0; i < set.length; i++) {
-    if (!set[i].test(version))
-      return false;
-  }
-
-  if (version.prerelease.length) {
-    // Find the set of versions that are allowed to have prereleases
-    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
-    // That should allow `1.2.3-pr.2` to pass.
-    // However, `1.2.4-alpha.notready` should NOT be allowed,
-    // even though it's within the range set by the comparators.
-    for (var i = 0; i < set.length; i++) {
-      ;
-      if (set[i].semver === ANY)
-        return true;
-
-      if (set[i].semver.prerelease.length > 0) {
-        var allowed = set[i].semver;
-        if (allowed.major === version.major &&
-            allowed.minor === version.minor &&
-            allowed.patch === version.patch)
-          return true;
-      }
-    }
-
-    // Version has a -pre, but it's not one of the ones we like.
-    return false;
-  }
-
-  return true;
-}
-
-exports.satisfies = satisfies;
-function satisfies(version, range, loose) {
-  try {
-    range = new Range(range, loose);
-  } catch (er) {
-    return false;
-  }
-  return range.test(version);
-}
-
-exports.maxSatisfying = maxSatisfying;
-function maxSatisfying(versions, range, loose) {
-  return versions.filter(function(version) {
-    return satisfies(version, range, loose);
-  }).sort(function(a, b) {
-    return rcompare(a, b, loose);
-  })[0] || null;
-}
-
-exports.validRange = validRange;
-function validRange(range, loose) {
-  try {
-    // Return '*' instead of '' so that truthiness works.
-    // This will throw if it's invalid anyway
-    return new Range(range, loose).range || '*';
-  } catch (er) {
-    return null;
-  }
-}
-
-// Determine if version is less than all the versions possible in the range
-exports.ltr = ltr;
-function ltr(version, range, loose) {
-  return outside(version, range, '<', loose);
-}
-
-// Determine if version is greater than all the versions possible in the range.
-exports.gtr = gtr;
-function gtr(version, range, loose) {
-  return outside(version, range, '>', loose);
-}
-
-exports.outside = outside;
-function outside(version, range, hilo, loose) {
-  version = new SemVer(version, loose);
-  range = new Range(range, loose);
-
-  var gtfn, ltefn, ltfn, comp, ecomp;
-  switch (hilo) {
-    case '>':
-      gtfn = gt;
-      ltefn = lte;
-      ltfn = lt;
-      comp = '>';
-      ecomp = '>=';
-      break;
-    case '<':
-      gtfn = lt;
-      ltefn = gte;
-      ltfn = gt;
-      comp = '<';
-      ecomp = '<=';
-      break;
-    default:
-      throw new TypeError('Must provide a hilo val of "<" or ">"');
-  }
-
-  // If it satisifes the range it is not outside
-  if (satisfies(version, range, loose)) {
-    return false;
-  }
-
-  // From now on, variable terms are as if we're in "gtr" mode.
-  // but note that everything is flipped for the "ltr" function.
-
-  for (var i = 0; i < range.set.length; ++i) {
-    var comparators = range.set[i];
-
-    var high = null;
-    var low = null;
-
-    comparators.forEach(function(comparator) {
-      high = high || comparator;
-      low = low || comparator;
-      if (gtfn(comparator.semver, high.semver, loose)) {
-        high = comparator;
-      } else if (ltfn(comparator.semver, low.semver, loose)) {
-        low = comparator;
-      }
-    });
-
-    // If the edge version comparator has a operator then our version
-    // isn't outside it
-    if (high.operator === comp || high.operator === ecomp) {
-      return false;
-    }
-
-    // If the lowest version comparator has an operator and our version
-    // is less than it then it isn't higher than the range
-    if ((!low.operator || low.operator === comp) &&
-        ltefn(version, low.semver)) {
-      return false;
-    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
-      return false;
-    }
-  }
-  return true;
-}
-
-// Use the define() function if we're in AMD land
-if (typeof define === 'function' && define.amd)
-  define(exports);
-
-})(
-  typeof exports === 'object' ? exports :
-  typeof define === 'function' && define.amd ? {} :
-  semver = {}
-);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz
deleted file mode 100644 (file)
index 8971ecd..0000000
Binary files a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz and /dev/null differ
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.js
deleted file mode 100644 (file)
index b95992b..0000000
+++ /dev/null
@@ -1,1202 +0,0 @@
-// export the class if we are in a Node-like system.
-if (typeof module === 'object' && module.exports === exports)
-  exports = module.exports = SemVer;
-
-// The debug function is excluded entirely from the minified version.
-/* nomin */ var debug;
-/* nomin */ if (typeof process === 'object' &&
-    /* nomin */ process.env &&
-    /* nomin */ process.env.NODE_DEBUG &&
-    /* nomin */ /\bsemver\b/i.test(process.env.NODE_DEBUG))
-  /* nomin */ debug = function() {
-    /* nomin */ var args = Array.prototype.slice.call(arguments, 0);
-    /* nomin */ args.unshift('SEMVER');
-    /* nomin */ console.log.apply(console, args);
-    /* nomin */ };
-/* nomin */ else
-  /* nomin */ debug = function() {};
-
-// Note: this is the semver.org version of the spec that it implements
-// Not necessarily the package version of this code.
-exports.SEMVER_SPEC_VERSION = '2.0.0';
-
-var MAX_LENGTH = 256;
-var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
-
-// The actual regexps go on exports.re
-var re = exports.re = [];
-var src = exports.src = [];
-var R = 0;
-
-// The following Regular Expressions can be used for tokenizing,
-// validating, and parsing SemVer version strings.
-
-// ## Numeric Identifier
-// A single `0`, or a non-zero digit followed by zero or more digits.
-
-var NUMERICIDENTIFIER = R++;
-src[NUMERICIDENTIFIER] = '0|[1-9]\\d*';
-var NUMERICIDENTIFIERLOOSE = R++;
-src[NUMERICIDENTIFIERLOOSE] = '[0-9]+';
-
-
-// ## Non-numeric Identifier
-// Zero or more digits, followed by a letter or hyphen, and then zero or
-// more letters, digits, or hyphens.
-
-var NONNUMERICIDENTIFIER = R++;
-src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*';
-
-
-// ## Main Version
-// Three dot-separated numeric identifiers.
-
-var MAINVERSION = R++;
-src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' +
-                   '(' + src[NUMERICIDENTIFIER] + ')\\.' +
-                   '(' + src[NUMERICIDENTIFIER] + ')';
-
-var MAINVERSIONLOOSE = R++;
-src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
-                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
-                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')';
-
-// ## Pre-release Version Identifier
-// A numeric identifier, or a non-numeric identifier.
-
-var PRERELEASEIDENTIFIER = R++;
-src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] +
-                            '|' + src[NONNUMERICIDENTIFIER] + ')';
-
-var PRERELEASEIDENTIFIERLOOSE = R++;
-src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] +
-                                 '|' + src[NONNUMERICIDENTIFIER] + ')';
-
-
-// ## Pre-release Version
-// Hyphen, followed by one or more dot-separated pre-release version
-// identifiers.
-
-var PRERELEASE = R++;
-src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] +
-                  '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))';
-
-var PRERELEASELOOSE = R++;
-src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] +
-                       '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))';
-
-// ## Build Metadata Identifier
-// Any combination of digits, letters, or hyphens.
-
-var BUILDIDENTIFIER = R++;
-src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+';
-
-// ## Build Metadata
-// Plus sign, followed by one or more period-separated build metadata
-// identifiers.
-
-var BUILD = R++;
-src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] +
-             '(?:\\.' + src[BUILDIDENTIFIER] + ')*))';
-
-
-// ## Full Version String
-// A main version, followed optionally by a pre-release version and
-// build metadata.
-
-// Note that the only major, minor, patch, and pre-release sections of
-// the version string are capturing groups.  The build metadata is not a
-// capturing group, because it should not ever be used in version
-// comparison.
-
-var FULL = R++;
-var FULLPLAIN = 'v?' + src[MAINVERSION] +
-                src[PRERELEASE] + '?' +
-                src[BUILD] + '?';
-
-src[FULL] = '^' + FULLPLAIN + '$';
-
-// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
-// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
-// common in the npm registry.
-var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] +
-                 src[PRERELEASELOOSE] + '?' +
-                 src[BUILD] + '?';
-
-var LOOSE = R++;
-src[LOOSE] = '^' + LOOSEPLAIN + '$';
-
-var GTLT = R++;
-src[GTLT] = '((?:<|>)?=?)';
-
-// Something like "2.*" or "1.2.x".
-// Note that "x.x" is a valid xRange identifer, meaning "any version"
-// Only the first item is strictly required.
-var XRANGEIDENTIFIERLOOSE = R++;
-src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*';
-var XRANGEIDENTIFIER = R++;
-src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*';
-
-var XRANGEPLAIN = R++;
-src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
-                   '(?:' + src[PRERELEASE] + ')?' +
-                   src[BUILD] + '?' +
-                   ')?)?';
-
-var XRANGEPLAINLOOSE = R++;
-src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
-                        '(?:' + src[PRERELEASELOOSE] + ')?' +
-                        src[BUILD] + '?' +
-                        ')?)?';
-
-var XRANGE = R++;
-src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$';
-var XRANGELOOSE = R++;
-src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$';
-
-// Tilde ranges.
-// Meaning is "reasonably at or greater than"
-var LONETILDE = R++;
-src[LONETILDE] = '(?:~>?)';
-
-var TILDETRIM = R++;
-src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+';
-re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g');
-var tildeTrimReplace = '$1~';
-
-var TILDE = R++;
-src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$';
-var TILDELOOSE = R++;
-src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$';
-
-// Caret ranges.
-// Meaning is "at least and backwards compatible with"
-var LONECARET = R++;
-src[LONECARET] = '(?:\\^)';
-
-var CARETTRIM = R++;
-src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+';
-re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g');
-var caretTrimReplace = '$1^';
-
-var CARET = R++;
-src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$';
-var CARETLOOSE = R++;
-src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$';
-
-// A simple gt/lt/eq thing, or just "" to indicate "any version"
-var COMPARATORLOOSE = R++;
-src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$';
-var COMPARATOR = R++;
-src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$';
-
-
-// An expression to strip any whitespace between the gtlt and the thing
-// it modifies, so that `> 1.2.3` ==> `>1.2.3`
-var COMPARATORTRIM = R++;
-src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] +
-                      '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')';
-
-// this one has to use the /g flag
-re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g');
-var comparatorTrimReplace = '$1$2$3';
-
-
-// Something like `1.2.3 - 1.2.4`
-// Note that these all use the loose form, because they'll be
-// checked against either the strict or loose comparator form
-// later.
-var HYPHENRANGE = R++;
-src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' +
-                   '\\s+-\\s+' +
-                   '(' + src[XRANGEPLAIN] + ')' +
-                   '\\s*$';
-
-var HYPHENRANGELOOSE = R++;
-src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' +
-                        '\\s+-\\s+' +
-                        '(' + src[XRANGEPLAINLOOSE] + ')' +
-                        '\\s*$';
-
-// Star ranges basically just allow anything at all.
-var STAR = R++;
-src[STAR] = '(<|>)?=?\\s*\\*';
-
-// Compile to actual regexp objects.
-// All are flag-free, unless they were created above with a flag.
-for (var i = 0; i < R; i++) {
-  debug(i, src[i]);
-  if (!re[i])
-    re[i] = new RegExp(src[i]);
-}
-
-exports.parse = parse;
-function parse(version, loose) {
-  if (version instanceof SemVer)
-    return version;
-
-  if (typeof version !== 'string')
-    return null;
-
-  if (version.length > MAX_LENGTH)
-    return null;
-
-  var r = loose ? re[LOOSE] : re[FULL];
-  if (!r.test(version))
-    return null;
-
-  try {
-    return new SemVer(version, loose);
-  } catch (er) {
-    return null;
-  }
-}
-
-exports.valid = valid;
-function valid(version, loose) {
-  var v = parse(version, loose);
-  return v ? v.version : null;
-}
-
-
-exports.clean = clean;
-function clean(version, loose) {
-  var s = parse(version.trim().replace(/^[=v]+/, ''), loose);
-  return s ? s.version : null;
-}
-
-exports.SemVer = SemVer;
-
-function SemVer(version, loose) {
-  if (version instanceof SemVer) {
-    if (version.loose === loose)
-      return version;
-    else
-      version = version.version;
-  } else if (typeof version !== 'string') {
-    throw new TypeError('Invalid Version: ' + version);
-  }
-
-  if (version.length > MAX_LENGTH)
-    throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
-
-  if (!(this instanceof SemVer))
-    return new SemVer(version, loose);
-
-  debug('SemVer', version, loose);
-  this.loose = loose;
-  var m = version.trim().match(loose ? re[LOOSE] : re[FULL]);
-
-  if (!m)
-    throw new TypeError('Invalid Version: ' + version);
-
-  this.raw = version;
-
-  // these are actually numbers
-  this.major = +m[1];
-  this.minor = +m[2];
-  this.patch = +m[3];
-
-  if (this.major > MAX_SAFE_INTEGER || this.major < 0)
-    throw new TypeError('Invalid major version')
-
-  if (this.minor > MAX_SAFE_INTEGER || this.minor < 0)
-    throw new TypeError('Invalid minor version')
-
-  if (this.patch > MAX_SAFE_INTEGER || this.patch < 0)
-    throw new TypeError('Invalid patch version')
-
-  // numberify any prerelease numeric ids
-  if (!m[4])
-    this.prerelease = [];
-  else
-    this.prerelease = m[4].split('.').map(function(id) {
-      if (/^[0-9]+$/.test(id)) {
-        var num = +id
-        if (num >= 0 && num < MAX_SAFE_INTEGER)
-          return num
-      }
-      return id;
-    });
-
-  this.build = m[5] ? m[5].split('.') : [];
-  this.format();
-}
-
-SemVer.prototype.format = function() {
-  this.version = this.major + '.' + this.minor + '.' + this.patch;
-  if (this.prerelease.length)
-    this.version += '-' + this.prerelease.join('.');
-  return this.version;
-};
-
-SemVer.prototype.inspect = function() {
-  return '<SemVer "' + this + '">';
-};
-
-SemVer.prototype.toString = function() {
-  return this.version;
-};
-
-SemVer.prototype.compare = function(other) {
-  debug('SemVer.compare', this.version, this.loose, other);
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  return this.compareMain(other) || this.comparePre(other);
-};
-
-SemVer.prototype.compareMain = function(other) {
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  return compareIdentifiers(this.major, other.major) ||
-         compareIdentifiers(this.minor, other.minor) ||
-         compareIdentifiers(this.patch, other.patch);
-};
-
-SemVer.prototype.comparePre = function(other) {
-  if (!(other instanceof SemVer))
-    other = new SemVer(other, this.loose);
-
-  // NOT having a prerelease is > having one
-  if (this.prerelease.length && !other.prerelease.length)
-    return -1;
-  else if (!this.prerelease.length && other.prerelease.length)
-    return 1;
-  else if (!this.prerelease.length && !other.prerelease.length)
-    return 0;
-
-  var i = 0;
-  do {
-    var a = this.prerelease[i];
-    var b = other.prerelease[i];
-    debug('prerelease compare', i, a, b);
-    if (a === undefined && b === undefined)
-      return 0;
-    else if (b === undefined)
-      return 1;
-    else if (a === undefined)
-      return -1;
-    else if (a === b)
-      continue;
-    else
-      return compareIdentifiers(a, b);
-  } while (++i);
-};
-
-// preminor will bump the version up to the next minor release, and immediately
-// down to pre-release. premajor and prepatch work the same way.
-SemVer.prototype.inc = function(release, identifier) {
-  switch (release) {
-    case 'premajor':
-      this.prerelease.length = 0;
-      this.patch = 0;
-      this.minor = 0;
-      this.major++;
-      this.inc('pre', identifier);
-      break;
-    case 'preminor':
-      this.prerelease.length = 0;
-      this.patch = 0;
-      this.minor++;
-      this.inc('pre', identifier);
-      break;
-    case 'prepatch':
-      // If this is already a prerelease, it will bump to the next version
-      // drop any prereleases that might already exist, since they are not
-      // relevant at this point.
-      this.prerelease.length = 0;
-      this.inc('patch', identifier);
-      this.inc('pre', identifier);
-      break;
-    // If the input is a non-prerelease version, this acts the same as
-    // prepatch.
-    case 'prerelease':
-      if (this.prerelease.length === 0)
-        this.inc('patch', identifier);
-      this.inc('pre', identifier);
-      break;
-
-    case 'major':
-      // If this is a pre-major version, bump up to the same major version.
-      // Otherwise increment major.
-      // 1.0.0-5 bumps to 1.0.0
-      // 1.1.0 bumps to 2.0.0
-      if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0)
-        this.major++;
-      this.minor = 0;
-      this.patch = 0;
-      this.prerelease = [];
-      break;
-    case 'minor':
-      // If this is a pre-minor version, bump up to the same minor version.
-      // Otherwise increment minor.
-      // 1.2.0-5 bumps to 1.2.0
-      // 1.2.1 bumps to 1.3.0
-      if (this.patch !== 0 || this.prerelease.length === 0)
-        this.minor++;
-      this.patch = 0;
-      this.prerelease = [];
-      break;
-    case 'patch':
-      // If this is not a pre-release version, it will increment the patch.
-      // If it is a pre-release it will bump up to the same patch version.
-      // 1.2.0-5 patches to 1.2.0
-      // 1.2.0 patches to 1.2.1
-      if (this.prerelease.length === 0)
-        this.patch++;
-      this.prerelease = [];
-      break;
-    // This probably shouldn't be used publicly.
-    // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
-    case 'pre':
-      if (this.prerelease.length === 0)
-        this.prerelease = [0];
-      else {
-        var i = this.prerelease.length;
-        while (--i >= 0) {
-          if (typeof this.prerelease[i] === 'number') {
-            this.prerelease[i]++;
-            i = -2;
-          }
-        }
-        if (i === -1) // didn't increment anything
-          this.prerelease.push(0);
-      }
-      if (identifier) {
-        // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
-        // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
-        if (this.prerelease[0] === identifier) {
-          if (isNaN(this.prerelease[1]))
-            this.prerelease = [identifier, 0];
-        } else
-          this.prerelease = [identifier, 0];
-      }
-      break;
-
-    default:
-      throw new Error('invalid increment argument: ' + release);
-  }
-  this.format();
-  return this;
-};
-
-exports.inc = inc;
-function inc(version, release, loose, identifier) {
-  if (typeof(loose) === 'string') {
-    identifier = loose;
-    loose = undefined;
-  }
-
-  try {
-    return new SemVer(version, loose).inc(release, identifier).version;
-  } catch (er) {
-    return null;
-  }
-}
-
-exports.diff = diff;
-function diff(version1, version2) {
-  if (eq(version1, version2)) {
-    return null;
-  } else {
-    var v1 = parse(version1);
-    var v2 = parse(version2);
-    if (v1.prerelease.length || v2.prerelease.length) {
-      for (var key in v1) {
-        if (key === 'major' || key === 'minor' || key === 'patch') {
-          if (v1[key] !== v2[key]) {
-            return 'pre'+key;
-          }
-        }
-      }
-      return 'prerelease';
-    }
-    for (var key in v1) {
-      if (key === 'major' || key === 'minor' || key === 'patch') {
-        if (v1[key] !== v2[key]) {
-          return key;
-        }
-      }
-    }
-  }
-}
-
-exports.compareIdentifiers = compareIdentifiers;
-
-var numeric = /^[0-9]+$/;
-function compareIdentifiers(a, b) {
-  var anum = numeric.test(a);
-  var bnum = numeric.test(b);
-
-  if (anum && bnum) {
-    a = +a;
-    b = +b;
-  }
-
-  return (anum && !bnum) ? -1 :
-         (bnum && !anum) ? 1 :
-         a < b ? -1 :
-         a > b ? 1 :
-         0;
-}
-
-exports.rcompareIdentifiers = rcompareIdentifiers;
-function rcompareIdentifiers(a, b) {
-  return compareIdentifiers(b, a);
-}
-
-exports.major = major;
-function major(a, loose) {
-  return new SemVer(a, loose).major;
-}
-
-exports.minor = minor;
-function minor(a, loose) {
-  return new SemVer(a, loose).minor;
-}
-
-exports.patch = patch;
-function patch(a, loose) {
-  return new SemVer(a, loose).patch;
-}
-
-exports.compare = compare;
-function compare(a, b, loose) {
-  return new SemVer(a, loose).compare(b);
-}
-
-exports.compareLoose = compareLoose;
-function compareLoose(a, b) {
-  return compare(a, b, true);
-}
-
-exports.rcompare = rcompare;
-function rcompare(a, b, loose) {
-  return compare(b, a, loose);
-}
-
-exports.sort = sort;
-function sort(list, loose) {
-  return list.sort(function(a, b) {
-    return exports.compare(a, b, loose);
-  });
-}
-
-exports.rsort = rsort;
-function rsort(list, loose) {
-  return list.sort(function(a, b) {
-    return exports.rcompare(a, b, loose);
-  });
-}
-
-exports.gt = gt;
-function gt(a, b, loose) {
-  return compare(a, b, loose) > 0;
-}
-
-exports.lt = lt;
-function lt(a, b, loose) {
-  return compare(a, b, loose) < 0;
-}
-
-exports.eq = eq;
-function eq(a, b, loose) {
-  return compare(a, b, loose) === 0;
-}
-
-exports.neq = neq;
-function neq(a, b, loose) {
-  return compare(a, b, loose) !== 0;
-}
-
-exports.gte = gte;
-function gte(a, b, loose) {
-  return compare(a, b, loose) >= 0;
-}
-
-exports.lte = lte;
-function lte(a, b, loose) {
-  return compare(a, b, loose) <= 0;
-}
-
-exports.cmp = cmp;
-function cmp(a, op, b, loose) {
-  var ret;
-  switch (op) {
-    case '===':
-      if (typeof a === 'object') a = a.version;
-      if (typeof b === 'object') b = b.version;
-      ret = a === b;
-      break;
-    case '!==':
-      if (typeof a === 'object') a = a.version;
-      if (typeof b === 'object') b = b.version;
-      ret = a !== b;
-      break;
-    case '': case '=': case '==': ret = eq(a, b, loose); break;
-    case '!=': ret = neq(a, b, loose); break;
-    case '>': ret = gt(a, b, loose); break;
-    case '>=': ret = gte(a, b, loose); break;
-    case '<': ret = lt(a, b, loose); break;
-    case '<=': ret = lte(a, b, loose); break;
-    default: throw new TypeError('Invalid operator: ' + op);
-  }
-  return ret;
-}
-
-exports.Comparator = Comparator;
-function Comparator(comp, loose) {
-  if (comp instanceof Comparator) {
-    if (comp.loose === loose)
-      return comp;
-    else
-      comp = comp.value;
-  }
-
-  if (!(this instanceof Comparator))
-    return new Comparator(comp, loose);
-
-  debug('comparator', comp, loose);
-  this.loose = loose;
-  this.parse(comp);
-
-  if (this.semver === ANY)
-    this.value = '';
-  else
-    this.value = this.operator + this.semver.version;
-
-  debug('comp', this);
-}
-
-var ANY = {};
-Comparator.prototype.parse = function(comp) {
-  var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
-  var m = comp.match(r);
-
-  if (!m)
-    throw new TypeError('Invalid comparator: ' + comp);
-
-  this.operator = m[1];
-  if (this.operator === '=')
-    this.operator = '';
-
-  // if it literally is just '>' or '' then allow anything.
-  if (!m[2])
-    this.semver = ANY;
-  else
-    this.semver = new SemVer(m[2], this.loose);
-};
-
-Comparator.prototype.inspect = function() {
-  return '<SemVer Comparator "' + this + '">';
-};
-
-Comparator.prototype.toString = function() {
-  return this.value;
-};
-
-Comparator.prototype.test = function(version) {
-  debug('Comparator.test', version, this.loose);
-
-  if (this.semver === ANY)
-    return true;
-
-  if (typeof version === 'string')
-    version = new SemVer(version, this.loose);
-
-  return cmp(version, this.operator, this.semver, this.loose);
-};
-
-
-exports.Range = Range;
-function Range(range, loose) {
-  if ((range instanceof Range) && range.loose === loose)
-    return range;
-
-  if (!(this instanceof Range))
-    return new Range(range, loose);
-
-  this.loose = loose;
-
-  // First, split based on boolean or ||
-  this.raw = range;
-  this.set = range.split(/\s*\|\|\s*/).map(function(range) {
-    return this.parseRange(range.trim());
-  }, this).filter(function(c) {
-    // throw out any that are not relevant for whatever reason
-    return c.length;
-  });
-
-  if (!this.set.length) {
-    throw new TypeError('Invalid SemVer Range: ' + range);
-  }
-
-  this.format();
-}
-
-Range.prototype.inspect = function() {
-  return '<SemVer Range "' + this.range + '">';
-};
-
-Range.prototype.format = function() {
-  this.range = this.set.map(function(comps) {
-    return comps.join(' ').trim();
-  }).join('||').trim();
-  return this.range;
-};
-
-Range.prototype.toString = function() {
-  return this.range;
-};
-
-Range.prototype.parseRange = function(range) {
-  var loose = this.loose;
-  range = range.trim();
-  debug('range', range, loose);
-  // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
-  var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE];
-  range = range.replace(hr, hyphenReplace);
-  debug('hyphen replace', range);
-  // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
-  range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace);
-  debug('comparator trim', range, re[COMPARATORTRIM]);
-
-  // `~ 1.2.3` => `~1.2.3`
-  range = range.replace(re[TILDETRIM], tildeTrimReplace);
-
-  // `^ 1.2.3` => `^1.2.3`
-  range = range.replace(re[CARETTRIM], caretTrimReplace);
-
-  // normalize spaces
-  range = range.split(/\s+/).join(' ');
-
-  // At this point, the range is completely trimmed and
-  // ready to be split into comparators.
-
-  var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
-  var set = range.split(' ').map(function(comp) {
-    return parseComparator(comp, loose);
-  }).join(' ').split(/\s+/);
-  if (this.loose) {
-    // in loose mode, throw out any that are not valid comparators
-    set = set.filter(function(comp) {
-      return !!comp.match(compRe);
-    });
-  }
-  set = set.map(function(comp) {
-    return new Comparator(comp, loose);
-  });
-
-  return set;
-};
-
-// Mostly just for testing and legacy API reasons
-exports.toComparators = toComparators;
-function toComparators(range, loose) {
-  return new Range(range, loose).set.map(function(comp) {
-    return comp.map(function(c) {
-      return c.value;
-    }).join(' ').trim().split(' ');
-  });
-}
-
-// comprised of xranges, tildes, stars, and gtlt's at this point.
-// already replaced the hyphen ranges
-// turn into a set of JUST comparators.
-function parseComparator(comp, loose) {
-  debug('comp', comp);
-  comp = replaceCarets(comp, loose);
-  debug('caret', comp);
-  comp = replaceTildes(comp, loose);
-  debug('tildes', comp);
-  comp = replaceXRanges(comp, loose);
-  debug('xrange', comp);
-  comp = replaceStars(comp, loose);
-  debug('stars', comp);
-  return comp;
-}
-
-function isX(id) {
-  return !id || id.toLowerCase() === 'x' || id === '*';
-}
-
-// ~, ~> --> * (any, kinda silly)
-// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
-// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
-// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
-// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
-// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
-function replaceTildes(comp, loose) {
-  return comp.trim().split(/\s+/).map(function(comp) {
-    return replaceTilde(comp, loose);
-  }).join(' ');
-}
-
-function replaceTilde(comp, loose) {
-  var r = loose ? re[TILDELOOSE] : re[TILDE];
-  return comp.replace(r, function(_, M, m, p, pr) {
-    debug('tilde', comp, _, M, m, p, pr);
-    var ret;
-
-    if (isX(M))
-      ret = '';
-    else if (isX(m))
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    else if (isX(p))
-      // ~1.2 == >=1.2.0- <1.3.0-
-      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-    else if (pr) {
-      debug('replaceTilde pr', pr);
-      if (pr.charAt(0) !== '-')
-        pr = '-' + pr;
-      ret = '>=' + M + '.' + m + '.' + p + pr +
-            ' <' + M + '.' + (+m + 1) + '.0';
-    } else
-      // ~1.2.3 == >=1.2.3 <1.3.0
-      ret = '>=' + M + '.' + m + '.' + p +
-            ' <' + M + '.' + (+m + 1) + '.0';
-
-    debug('tilde return', ret);
-    return ret;
-  });
-}
-
-// ^ --> * (any, kinda silly)
-// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
-// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
-// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
-// ^1.2.3 --> >=1.2.3 <2.0.0
-// ^1.2.0 --> >=1.2.0 <2.0.0
-function replaceCarets(comp, loose) {
-  return comp.trim().split(/\s+/).map(function(comp) {
-    return replaceCaret(comp, loose);
-  }).join(' ');
-}
-
-function replaceCaret(comp, loose) {
-  debug('caret', comp, loose);
-  var r = loose ? re[CARETLOOSE] : re[CARET];
-  return comp.replace(r, function(_, M, m, p, pr) {
-    debug('caret', comp, _, M, m, p, pr);
-    var ret;
-
-    if (isX(M))
-      ret = '';
-    else if (isX(m))
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    else if (isX(p)) {
-      if (M === '0')
-        ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-      else
-        ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0';
-    } else if (pr) {
-      debug('replaceCaret pr', pr);
-      if (pr.charAt(0) !== '-')
-        pr = '-' + pr;
-      if (M === '0') {
-        if (m === '0')
-          ret = '>=' + M + '.' + m + '.' + p + pr +
-                ' <' + M + '.' + m + '.' + (+p + 1);
-        else
-          ret = '>=' + M + '.' + m + '.' + p + pr +
-                ' <' + M + '.' + (+m + 1) + '.0';
-      } else
-        ret = '>=' + M + '.' + m + '.' + p + pr +
-              ' <' + (+M + 1) + '.0.0';
-    } else {
-      debug('no pr');
-      if (M === '0') {
-        if (m === '0')
-          ret = '>=' + M + '.' + m + '.' + p +
-                ' <' + M + '.' + m + '.' + (+p + 1);
-        else
-          ret = '>=' + M + '.' + m + '.' + p +
-                ' <' + M + '.' + (+m + 1) + '.0';
-      } else
-        ret = '>=' + M + '.' + m + '.' + p +
-              ' <' + (+M + 1) + '.0.0';
-    }
-
-    debug('caret return', ret);
-    return ret;
-  });
-}
-
-function replaceXRanges(comp, loose) {
-  debug('replaceXRanges', comp, loose);
-  return comp.split(/\s+/).map(function(comp) {
-    return replaceXRange(comp, loose);
-  }).join(' ');
-}
-
-function replaceXRange(comp, loose) {
-  comp = comp.trim();
-  var r = loose ? re[XRANGELOOSE] : re[XRANGE];
-  return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
-    debug('xRange', comp, ret, gtlt, M, m, p, pr);
-    var xM = isX(M);
-    var xm = xM || isX(m);
-    var xp = xm || isX(p);
-    var anyX = xp;
-
-    if (gtlt === '=' && anyX)
-      gtlt = '';
-
-    if (xM) {
-      if (gtlt === '>' || gtlt === '<') {
-        // nothing is allowed
-        ret = '<0.0.0';
-      } else {
-        // nothing is forbidden
-        ret = '*';
-      }
-    } else if (gtlt && anyX) {
-      // replace X with 0
-      if (xm)
-        m = 0;
-      if (xp)
-        p = 0;
-
-      if (gtlt === '>') {
-        // >1 => >=2.0.0
-        // >1.2 => >=1.3.0
-        // >1.2.3 => >= 1.2.4
-        gtlt = '>=';
-        if (xm) {
-          M = +M + 1;
-          m = 0;
-          p = 0;
-        } else if (xp) {
-          m = +m + 1;
-          p = 0;
-        }
-      } else if (gtlt === '<=') {
-        // <=0.7.x is actually <0.8.0, since any 0.7.x should
-        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
-        gtlt = '<'
-        if (xm)
-          M = +M + 1
-        else
-          m = +m + 1
-      }
-
-      ret = gtlt + M + '.' + m + '.' + p;
-    } else if (xm) {
-      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
-    } else if (xp) {
-      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
-    }
-
-    debug('xRange return', ret);
-
-    return ret;
-  });
-}
-
-// Because * is AND-ed with everything else in the comparator,
-// and '' means "any version", just remove the *s entirely.
-function replaceStars(comp, loose) {
-  debug('replaceStars', comp, loose);
-  // Looseness is ignored here.  star is always as loose as it gets!
-  return comp.trim().replace(re[STAR], '');
-}
-
-// This function is passed to string.replace(re[HYPHENRANGE])
-// M, m, patch, prerelease, build
-// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
-// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
-// 1.2 - 3.4 => >=1.2.0 <3.5.0
-function hyphenReplace($0,
-                       from, fM, fm, fp, fpr, fb,
-                       to, tM, tm, tp, tpr, tb) {
-
-  if (isX(fM))
-    from = '';
-  else if (isX(fm))
-    from = '>=' + fM + '.0.0';
-  else if (isX(fp))
-    from = '>=' + fM + '.' + fm + '.0';
-  else
-    from = '>=' + from;
-
-  if (isX(tM))
-    to = '';
-  else if (isX(tm))
-    to = '<' + (+tM + 1) + '.0.0';
-  else if (isX(tp))
-    to = '<' + tM + '.' + (+tm + 1) + '.0';
-  else if (tpr)
-    to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr;
-  else
-    to = '<=' + to;
-
-  return (from + ' ' + to).trim();
-}
-
-
-// if ANY of the sets match ALL of its comparators, then pass
-Range.prototype.test = function(version) {
-  if (!version)
-    return false;
-
-  if (typeof version === 'string')
-    version = new SemVer(version, this.loose);
-
-  for (var i = 0; i < this.set.length; i++) {
-    if (testSet(this.set[i], version))
-      return true;
-  }
-  return false;
-};
-
-function testSet(set, version) {
-  for (var i = 0; i < set.length; i++) {
-    if (!set[i].test(version))
-      return false;
-  }
-
-  if (version.prerelease.length) {
-    // Find the set of versions that are allowed to have prereleases
-    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
-    // That should allow `1.2.3-pr.2` to pass.
-    // However, `1.2.4-alpha.notready` should NOT be allowed,
-    // even though it's within the range set by the comparators.
-    for (var i = 0; i < set.length; i++) {
-      debug(set[i].semver);
-      if (set[i].semver === ANY)
-        return true;
-
-      if (set[i].semver.prerelease.length > 0) {
-        var allowed = set[i].semver;
-        if (allowed.major === version.major &&
-            allowed.minor === version.minor &&
-            allowed.patch === version.patch)
-          return true;
-      }
-    }
-
-    // Version has a -pre, but it's not one of the ones we like.
-    return false;
-  }
-
-  return true;
-}
-
-exports.satisfies = satisfies;
-function satisfies(version, range, loose) {
-  try {
-    range = new Range(range, loose);
-  } catch (er) {
-    return false;
-  }
-  return range.test(version);
-}
-
-exports.maxSatisfying = maxSatisfying;
-function maxSatisfying(versions, range, loose) {
-  return versions.filter(function(version) {
-    return satisfies(version, range, loose);
-  }).sort(function(a, b) {
-    return rcompare(a, b, loose);
-  })[0] || null;
-}
-
-exports.validRange = validRange;
-function validRange(range, loose) {
-  try {
-    // Return '*' instead of '' so that truthiness works.
-    // This will throw if it's invalid anyway
-    return new Range(range, loose).range || '*';
-  } catch (er) {
-    return null;
-  }
-}
-
-// Determine if version is less than all the versions possible in the range
-exports.ltr = ltr;
-function ltr(version, range, loose) {
-  return outside(version, range, '<', loose);
-}
-
-// Determine if version is greater than all the versions possible in the range.
-exports.gtr = gtr;
-function gtr(version, range, loose) {
-  return outside(version, range, '>', loose);
-}
-
-exports.outside = outside;
-function outside(version, range, hilo, loose) {
-  version = new SemVer(version, loose);
-  range = new Range(range, loose);
-
-  var gtfn, ltefn, ltfn, comp, ecomp;
-  switch (hilo) {
-    case '>':
-      gtfn = gt;
-      ltefn = lte;
-      ltfn = lt;
-      comp = '>';
-      ecomp = '>=';
-      break;
-    case '<':
-      gtfn = lt;
-      ltefn = gte;
-      ltfn = gt;
-      comp = '<';
-      ecomp = '<=';
-      break;
-    default:
-      throw new TypeError('Must provide a hilo val of "<" or ">"');
-  }
-
-  // If it satisifes the range it is not outside
-  if (satisfies(version, range, loose)) {
-    return false;
-  }
-
-  // From now on, variable terms are as if we're in "gtr" mode.
-  // but note that everything is flipped for the "ltr" function.
-
-  for (var i = 0; i < range.set.length; ++i) {
-    var comparators = range.set[i];
-
-    var high = null;
-    var low = null;
-
-    comparators.forEach(function(comparator) {
-      high = high || comparator;
-      low = low || comparator;
-      if (gtfn(comparator.semver, high.semver, loose)) {
-        high = comparator;
-      } else if (ltfn(comparator.semver, low.semver, loose)) {
-        low = comparator;
-      }
-    });
-
-    // If the edge version comparator has a operator then our version
-    // isn't outside it
-    if (high.operator === comp || high.operator === ecomp) {
-      return false;
-    }
-
-    // If the lowest version comparator has an operator and our version
-    // is less than it then it isn't higher than the range
-    if ((!low.operator || low.operator === comp) &&
-        ltefn(version, low.semver)) {
-      return false;
-    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
-      return false;
-    }
-  }
-  return true;
-}
-
-// Use the define() function if we're in AMD land
-if (typeof define === 'function' && define.amd)
-  define(exports);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js
deleted file mode 100644 (file)
index c2b3ff4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(function(e){if(typeof module==="object"&&module.exports===e)e=module.exports=K;e.SEMVER_SPEC_VERSION="2.0.0";var r=256;var t=Number.MAX_SAFE_INTEGER||9007199254740991;var n=e.re=[];var i=e.src=[];var s=0;var o=s++;i[o]="0|[1-9]\\d*";var a=s++;i[a]="[0-9]+";var f=s++;i[f]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var u=s++;i[u]="("+i[o]+")\\."+"("+i[o]+")\\."+"("+i[o]+")";var l=s++;i[l]="("+i[a]+")\\."+"("+i[a]+")\\."+"("+i[a]+")";var p=s++;i[p]="(?:"+i[o]+"|"+i[f]+")";var h=s++;i[h]="(?:"+i[a]+"|"+i[f]+")";var c=s++;i[c]="(?:-("+i[p]+"(?:\\."+i[p]+")*))";var v=s++;i[v]="(?:-?("+i[h]+"(?:\\."+i[h]+")*))";var m=s++;i[m]="[0-9A-Za-z-]+";var g=s++;i[g]="(?:\\+("+i[m]+"(?:\\."+i[m]+")*))";var w=s++;var y="v?"+i[u]+i[c]+"?"+i[g]+"?";i[w]="^"+y+"$";var d="[v=\\s]*"+i[l]+i[v]+"?"+i[g]+"?";var j=s++;i[j]="^"+d+"$";var b=s++;i[b]="((?:<|>)?=?)";var E=s++;i[E]=i[a]+"|x|X|\\*";var $=s++;i[$]=i[o]+"|x|X|\\*";var k=s++;i[k]="[v=\\s]*("+i[$]+")"+"(?:\\.("+i[$]+")"+"(?:\\.("+i[$]+")"+"(?:"+i[c]+")?"+i[g]+"?"+")?)?";var R=s++;i[R]="[v=\\s]*("+i[E]+")"+"(?:\\.("+i[E]+")"+"(?:\\.("+i[E]+")"+"(?:"+i[v]+")?"+i[g]+"?"+")?)?";var S=s++;i[S]="^"+i[b]+"\\s*"+i[k]+"$";var x=s++;i[x]="^"+i[b]+"\\s*"+i[R]+"$";var I=s++;i[I]="(?:~>?)";var T=s++;i[T]="(\\s*)"+i[I]+"\\s+";n[T]=new RegExp(i[T],"g");var V="$1~";var A=s++;i[A]="^"+i[I]+i[k]+"$";var C=s++;i[C]="^"+i[I]+i[R]+"$";var M=s++;i[M]="(?:\\^)";var N=s++;i[N]="(\\s*)"+i[M]+"\\s+";n[N]=new RegExp(i[N],"g");var _="$1^";var z=s++;i[z]="^"+i[M]+i[k]+"$";var P=s++;i[P]="^"+i[M]+i[R]+"$";var X=s++;i[X]="^"+i[b]+"\\s*("+d+")$|^$";var Z=s++;i[Z]="^"+i[b]+"\\s*("+y+")$|^$";var q=s++;i[q]="(\\s*)"+i[b]+"\\s*("+d+"|"+i[k]+")";n[q]=new RegExp(i[q],"g");var L="$1$2$3";var F=s++;i[F]="^\\s*("+i[k]+")"+"\\s+-\\s+"+"("+i[k]+")"+"\\s*$";var G=s++;i[G]="^\\s*("+i[R]+")"+"\\s+-\\s+"+"("+i[R]+")"+"\\s*$";var O=s++;i[O]="(<|>)?=?\\s*\\*";for(var B=0;B<s;B++){if(!n[B])n[B]=new RegExp(i[B])}e.parse=D;function D(e,t){if(e instanceof K)return e;if(typeof e!=="string")return null;if(e.length>r)return null;var i=t?n[j]:n[w];if(!i.test(e))return null;try{return new K(e,t)}catch(s){return null}}e.valid=H;function H(e,r){var t=D(e,r);return t?t.version:null}e.clean=J;function J(e,r){var t=D(e.trim().replace(/^[=v]+/,""),r);return t?t.version:null}e.SemVer=K;function K(e,i){if(e instanceof K){if(e.loose===i)return e;else e=e.version}else if(typeof e!=="string"){throw new TypeError("Invalid Version: "+e)}if(e.length>r)throw new TypeError("version is longer than "+r+" characters");if(!(this instanceof K))return new K(e,i);this.loose=i;var s=e.trim().match(i?n[j]:n[w]);if(!s)throw new TypeError("Invalid Version: "+e);this.raw=e;this.major=+s[1];this.minor=+s[2];this.patch=+s[3];if(this.major>t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>t||this.patch<0)throw new TypeError("Invalid patch version");if(!s[4])this.prerelease=[];else this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var r=+e;if(r>=0&&r<t)return r}return e});this.build=s[5]?s[5].split("."):[];this.format()}K.prototype.format=function(){this.version=this.major+"."+this.minor+"."+this.patch;if(this.prerelease.length)this.version+="-"+this.prerelease.join(".");return this.version};K.prototype.inspect=function(){return'<SemVer "'+this+'">'};K.prototype.toString=function(){return this.version};K.prototype.compare=function(e){if(!(e instanceof K))e=new K(e,this.loose);return this.compareMain(e)||this.comparePre(e)};K.prototype.compareMain=function(e){if(!(e instanceof K))e=new K(e,this.loose);return Y(this.major,e.major)||Y(this.minor,e.minor)||Y(this.patch,e.patch)};K.prototype.comparePre=function(e){if(!(e instanceof K))e=new K(e,this.loose);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;var r=0;do{var t=this.prerelease[r];var n=e.prerelease[r];if(t===undefined&&n===undefined)return 0;else if(n===undefined)return 1;else if(t===undefined)return-1;else if(t===n)continue;else return Y(t,n)}while(++r)};K.prototype.inc=function(e,r){switch(e){case"premajor":this.prerelease.length=0;this.patch=0;this.minor=0;this.major++;this.inc("pre",r);break;case"preminor":this.prerelease.length=0;this.patch=0;this.minor++;this.inc("pre",r);break;case"prepatch":this.prerelease.length=0;this.inc("patch",r);this.inc("pre",r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",r);this.inc("pre",r);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0;this.patch=0;this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0;this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{var t=this.prerelease.length;while(--t>=0){if(typeof this.prerelease[t]==="number"){this.prerelease[t]++;t=-2}}if(t===-1)this.prerelease.push(0)}if(r){if(this.prerelease[0]===r){if(isNaN(this.prerelease[1]))this.prerelease=[r,0]}else this.prerelease=[r,0]}break;default:throw new Error("invalid increment argument: "+e)}this.format();return this};e.inc=Q;function Q(e,r,t,n){if(typeof t==="string"){n=t;t=undefined}try{return new K(e,t).inc(r,n).version}catch(i){return null}}e.diff=U;function U(e,r){if(pr(e,r)){return null}else{var t=D(e);var n=D(r);if(t.prerelease.length||n.prerelease.length){for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return"pre"+i}}}return"prerelease"}for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return i}}}}}e.compareIdentifiers=Y;var W=/^[0-9]+$/;function Y(e,r){var t=W.test(e);var n=W.test(r);if(t&&n){e=+e;r=+r}return t&&!n?-1:n&&!t?1:e<r?-1:e>r?1:0}e.rcompareIdentifiers=er;function er(e,r){return Y(r,e)}e.major=rr;function rr(e,r){return new K(e,r).major}e.minor=tr;function tr(e,r){return new K(e,r).minor}e.patch=nr;function nr(e,r){return new K(e,r).patch}e.compare=ir;function ir(e,r,t){return new K(e,t).compare(r)}e.compareLoose=sr;function sr(e,r){return ir(e,r,true)}e.rcompare=or;function or(e,r,t){return ir(r,e,t)}e.sort=ar;function ar(r,t){return r.sort(function(r,n){return e.compare(r,n,t)})}e.rsort=fr;function fr(r,t){return r.sort(function(r,n){return e.rcompare(r,n,t)})}e.gt=ur;function ur(e,r,t){return ir(e,r,t)>0}e.lt=lr;function lr(e,r,t){return ir(e,r,t)<0}e.eq=pr;function pr(e,r,t){return ir(e,r,t)===0}e.neq=hr;function hr(e,r,t){return ir(e,r,t)!==0}e.gte=cr;function cr(e,r,t){return ir(e,r,t)>=0}e.lte=vr;function vr(e,r,t){return ir(e,r,t)<=0}e.cmp=mr;function mr(e,r,t,n){var i;switch(r){case"===":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e===t;break;case"!==":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e!==t;break;case"":case"=":case"==":i=pr(e,t,n);break;case"!=":i=hr(e,t,n);break;case">":i=ur(e,t,n);break;case">=":i=cr(e,t,n);break;case"<":i=lr(e,t,n);break;case"<=":i=vr(e,t,n);break;default:throw new TypeError("Invalid operator: "+r)}return i}e.Comparator=gr;function gr(e,r){if(e instanceof gr){if(e.loose===r)return e;else e=e.value}if(!(this instanceof gr))return new gr(e,r);this.loose=r;this.parse(e);if(this.semver===wr)this.value="";else this.value=this.operator+this.semver.version}var wr={};gr.prototype.parse=function(e){var r=this.loose?n[X]:n[Z];var t=e.match(r);if(!t)throw new TypeError("Invalid comparator: "+e);this.operator=t[1];if(this.operator==="=")this.operator="";if(!t[2])this.semver=wr;else this.semver=new K(t[2],this.loose)};gr.prototype.inspect=function(){return'<SemVer Comparator "'+this+'">'};gr.prototype.toString=function(){return this.value};gr.prototype.test=function(e){if(this.semver===wr)return true;if(typeof e==="string")e=new K(e,this.loose);return mr(e,this.operator,this.semver,this.loose)};e.Range=yr;function yr(e,r){if(e instanceof yr&&e.loose===r)return e;if(!(this instanceof yr))return new yr(e,r);this.loose=r;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}yr.prototype.inspect=function(){return'<SemVer Range "'+this.range+'">'};yr.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};yr.prototype.toString=function(){return this.range};yr.prototype.parseRange=function(e){var r=this.loose;e=e.trim();var t=r?n[G]:n[F];e=e.replace(t,Tr);e=e.replace(n[q],L);e=e.replace(n[T],V);e=e.replace(n[N],_);e=e.split(/\s+/).join(" ");var i=r?n[X]:n[Z];var s=e.split(" ").map(function(e){return jr(e,r)}).join(" ").split(/\s+/);if(this.loose){s=s.filter(function(e){return!!e.match(i)})}s=s.map(function(e){return new gr(e,r)});return s};e.toComparators=dr;function dr(e,r){return new yr(e,r).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function jr(e,r){e=kr(e,r);e=Er(e,r);e=Sr(e,r);e=Ir(e,r);return e}function br(e){return!e||e.toLowerCase()==="x"||e==="*"}function Er(e,r){return e.trim().split(/\s+/).map(function(e){return $r(e,r)}).join(" ")}function $r(e,r){var t=r?n[C]:n[A];return e.replace(t,function(e,r,t,n,i){var s;if(br(r))s="";else if(br(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(br(n))s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else if(i){if(i.charAt(0)!=="-")i="-"+i;s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0";return s})}function kr(e,r){return e.trim().split(/\s+/).map(function(e){return Rr(e,r)}).join(" ")}function Rr(e,r){var t=r?n[P]:n[z];return e.replace(t,function(e,r,t,n,i){var s;if(br(r))s="";else if(br(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(br(n)){if(r==="0")s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else s=">="+r+"."+t+".0 <"+(+r+1)+".0.0"}else if(i){if(i.charAt(0)!=="-")i="-"+i;if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+i+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+i+" <"+(+r+1)+".0.0"}else{if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+(+r+1)+".0.0"}return s})}function Sr(e,r){return e.split(/\s+/).map(function(e){return xr(e,r)}).join(" ")}function xr(e,r){e=e.trim();var t=r?n[x]:n[S];return e.replace(t,function(e,r,t,n,i,s){var o=br(t);var a=o||br(n);var f=a||br(i);var u=f;if(r==="="&&u)r="";if(o){if(r===">"||r==="<"){e="<0.0.0"}else{e="*"}}else if(r&&u){if(a)n=0;if(f)i=0;if(r===">"){r=">=";if(a){t=+t+1;n=0;i=0}else if(f){n=+n+1;i=0}}else if(r==="<="){r="<";if(a)t=+t+1;else n=+n+1}e=r+t+"."+n+"."+i}else if(a){e=">="+t+".0.0 <"+(+t+1)+".0.0"}else if(f){e=">="+t+"."+n+".0 <"+t+"."+(+n+1)+".0"}return e})}function Ir(e,r){return e.trim().replace(n[O],"")}function Tr(e,r,t,n,i,s,o,a,f,u,l,p,h){if(br(t))r="";else if(br(n))r=">="+t+".0.0";else if(br(i))r=">="+t+"."+n+".0";else r=">="+r;if(br(f))a="";else if(br(u))a="<"+(+f+1)+".0.0";else if(br(l))a="<"+f+"."+(+u+1)+".0";else if(p)a="<="+f+"."+u+"."+l+"-"+p;else a="<="+a;return(r+" "+a).trim()}yr.prototype.test=function(e){if(!e)return false;if(typeof e==="string")e=new K(e,this.loose);for(var r=0;r<this.set.length;r++){if(Vr(this.set[r],e))return true}return false};function Vr(e,r){for(var t=0;t<e.length;t++){if(!e[t].test(r))return false}if(r.prerelease.length){for(var t=0;t<e.length;t++){if(e[t].semver===wr)return true;if(e[t].semver.prerelease.length>0){var n=e[t].semver;if(n.major===r.major&&n.minor===r.minor&&n.patch===r.patch)return true}}return false}return true}e.satisfies=Ar;function Ar(e,r,t){try{r=new yr(r,t)}catch(n){return false}return r.test(e)}e.maxSatisfying=Cr;function Cr(e,r,t){return e.filter(function(e){return Ar(e,r,t)}).sort(function(e,r){return or(e,r,t)})[0]||null}e.validRange=Mr;function Mr(e,r){try{return new yr(e,r).range||"*"}catch(t){return null}}e.ltr=Nr;function Nr(e,r,t){return zr(e,r,"<",t)}e.gtr=_r;function _r(e,r,t){return zr(e,r,">",t)}e.outside=zr;function zr(e,r,t,n){e=new K(e,n);r=new yr(r,n);var i,s,o,a,f;switch(t){case">":i=ur;s=vr;o=lr;a=">";f=">=";break;case"<":i=lr;s=cr;o=ur;a="<";f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ar(e,r,n)){return false}for(var u=0;u<r.set.length;++u){var l=r.set[u];var p=null;var h=null;l.forEach(function(e){p=p||e;h=h||e;if(i(e.semver,p.semver,n)){p=e}else if(o(e.semver,h.semver,n)){h=e}});if(p.operator===a||p.operator===f){return false}if((!h.operator||h.operator===a)&&s(e,h.semver)){return false}else if(h.operator===f&&o(e,h.semver)){return false}}return true}if(typeof define==="function"&&define.amd)define(e)})(typeof exports==="object"?exports:typeof define==="function"&&define.amd?{}:semver={});
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz
deleted file mode 100644 (file)
index 6e28186..0000000
Binary files a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz and /dev/null differ
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/index.js
deleted file mode 100644 (file)
index 926d560..0000000
+++ /dev/null
@@ -1,684 +0,0 @@
-'use strict';
-
-var tap = require('tap');
-var test = tap.test;
-var semver = require('../semver.js');
-var eq = semver.eq;
-var gt = semver.gt;
-var lt = semver.lt;
-var neq = semver.neq;
-var cmp = semver.cmp;
-var gte = semver.gte;
-var lte = semver.lte;
-var satisfies = semver.satisfies;
-var validRange = semver.validRange;
-var inc = semver.inc;
-var diff = semver.diff;
-var replaceStars = semver.replaceStars;
-var toComparators = semver.toComparators;
-var SemVer = semver.SemVer;
-var Range = semver.Range;
-
-test('\ncomparison tests', function(t) {
-  // [version1, version2]
-  // version1 should be greater than version2
-  [['0.0.0', '0.0.0-foo'],
-    ['0.0.1', '0.0.0'],
-    ['1.0.0', '0.9.9'],
-    ['0.10.0', '0.9.0'],
-    ['0.99.0', '0.10.0'],
-    ['2.0.0', '1.2.3'],
-    ['v0.0.0', '0.0.0-foo', true],
-    ['v0.0.1', '0.0.0', true],
-    ['v1.0.0', '0.9.9', true],
-    ['v0.10.0', '0.9.0', true],
-    ['v0.99.0', '0.10.0', true],
-    ['v2.0.0', '1.2.3', true],
-    ['0.0.0', 'v0.0.0-foo', true],
-    ['0.0.1', 'v0.0.0', true],
-    ['1.0.0', 'v0.9.9', true],
-    ['0.10.0', 'v0.9.0', true],
-    ['0.99.0', 'v0.10.0', true],
-    ['2.0.0', 'v1.2.3', true],
-    ['1.2.3', '1.2.3-asdf'],
-    ['1.2.3', '1.2.3-4'],
-    ['1.2.3', '1.2.3-4-foo'],
-    ['1.2.3-5-foo', '1.2.3-5'],
-    ['1.2.3-5', '1.2.3-4'],
-    ['1.2.3-5-foo', '1.2.3-5-Foo'],
-    ['3.0.0', '2.7.2+asdf'],
-    ['1.2.3-a.10', '1.2.3-a.5'],
-    ['1.2.3-a.b', '1.2.3-a.5'],
-    ['1.2.3-a.b', '1.2.3-a'],
-    ['1.2.3-a.b.c.10.d.5', '1.2.3-a.b.c.5.d.100'],
-    ['1.2.3-r2', '1.2.3-r100'],
-    ['1.2.3-r100', '1.2.3-R2']
-  ].forEach(function(v) {
-    var v0 = v[0];
-    var v1 = v[1];
-    var loose = v[2];
-    t.ok(gt(v0, v1, loose), "gt('" + v0 + "', '" + v1 + "')");
-    t.ok(lt(v1, v0, loose), "lt('" + v1 + "', '" + v0 + "')");
-    t.ok(!gt(v1, v0, loose), "!gt('" + v1 + "', '" + v0 + "')");
-    t.ok(!lt(v0, v1, loose), "!lt('" + v0 + "', '" + v1 + "')");
-    t.ok(eq(v0, v0, loose), "eq('" + v0 + "', '" + v0 + "')");
-    t.ok(eq(v1, v1, loose), "eq('" + v1 + "', '" + v1 + "')");
-    t.ok(neq(v0, v1, loose), "neq('" + v0 + "', '" + v1 + "')");
-    t.ok(cmp(v1, '==', v1, loose), "cmp('" + v1 + "' == '" + v1 + "')");
-    t.ok(cmp(v0, '>=', v1, loose), "cmp('" + v0 + "' >= '" + v1 + "')");
-    t.ok(cmp(v1, '<=', v0, loose), "cmp('" + v1 + "' <= '" + v0 + "')");
-    t.ok(cmp(v0, '!=', v1, loose), "cmp('" + v0 + "' != '" + v1 + "')");
-  });
-  t.end();
-});
-
-test('\nequality tests', function(t) {
-  // [version1, version2]
-  // version1 should be equivalent to version2
-  [['1.2.3', 'v1.2.3', true],
-    ['1.2.3', '=1.2.3', true],
-    ['1.2.3', 'v 1.2.3', true],
-    ['1.2.3', '= 1.2.3', true],
-    ['1.2.3', ' v1.2.3', true],
-    ['1.2.3', ' =1.2.3', true],
-    ['1.2.3', ' v 1.2.3', true],
-    ['1.2.3', ' = 1.2.3', true],
-    ['1.2.3-0', 'v1.2.3-0', true],
-    ['1.2.3-0', '=1.2.3-0', true],
-    ['1.2.3-0', 'v 1.2.3-0', true],
-    ['1.2.3-0', '= 1.2.3-0', true],
-    ['1.2.3-0', ' v1.2.3-0', true],
-    ['1.2.3-0', ' =1.2.3-0', true],
-    ['1.2.3-0', ' v 1.2.3-0', true],
-    ['1.2.3-0', ' = 1.2.3-0', true],
-    ['1.2.3-1', 'v1.2.3-1', true],
-    ['1.2.3-1', '=1.2.3-1', true],
-    ['1.2.3-1', 'v 1.2.3-1', true],
-    ['1.2.3-1', '= 1.2.3-1', true],
-    ['1.2.3-1', ' v1.2.3-1', true],
-    ['1.2.3-1', ' =1.2.3-1', true],
-    ['1.2.3-1', ' v 1.2.3-1', true],
-    ['1.2.3-1', ' = 1.2.3-1', true],
-    ['1.2.3-beta', 'v1.2.3-beta', true],
-    ['1.2.3-beta', '=1.2.3-beta', true],
-    ['1.2.3-beta', 'v 1.2.3-beta', true],
-    ['1.2.3-beta', '= 1.2.3-beta', true],
-    ['1.2.3-beta', ' v1.2.3-beta', true],
-    ['1.2.3-beta', ' =1.2.3-beta', true],
-    ['1.2.3-beta', ' v 1.2.3-beta', true],
-    ['1.2.3-beta', ' = 1.2.3-beta', true],
-    ['1.2.3-beta+build', ' = 1.2.3-beta+otherbuild', true],
-    ['1.2.3+build', ' = 1.2.3+otherbuild', true],
-    ['1.2.3-beta+build', '1.2.3-beta+otherbuild'],
-    ['1.2.3+build', '1.2.3+otherbuild'],
-    ['  v1.2.3+build', '1.2.3+otherbuild']
-  ].forEach(function(v) {
-    var v0 = v[0];
-    var v1 = v[1];
-    var loose = v[2];
-    t.ok(eq(v0, v1, loose), "eq('" + v0 + "', '" + v1 + "')");
-    t.ok(!neq(v0, v1, loose), "!neq('" + v0 + "', '" + v1 + "')");
-    t.ok(cmp(v0, '==', v1, loose), 'cmp(' + v0 + '==' + v1 + ')');
-    t.ok(!cmp(v0, '!=', v1, loose), '!cmp(' + v0 + '!=' + v1 + ')');
-    t.ok(!cmp(v0, '===', v1, loose), '!cmp(' + v0 + '===' + v1 + ')');
-    t.ok(cmp(v0, '!==', v1, loose), 'cmp(' + v0 + '!==' + v1 + ')');
-    t.ok(!gt(v0, v1, loose), "!gt('" + v0 + "', '" + v1 + "')");
-    t.ok(gte(v0, v1, loose), "gte('" + v0 + "', '" + v1 + "')");
-    t.ok(!lt(v0, v1, loose), "!lt('" + v0 + "', '" + v1 + "')");
-    t.ok(lte(v0, v1, loose), "lte('" + v0 + "', '" + v1 + "')");
-  });
-  t.end();
-});
-
-
-test('\nrange tests', function(t) {
-  // [range, version]
-  // version should be included by range
-  [['1.0.0 - 2.0.0', '1.2.3'],
-    ['^1.2.3+build', '1.2.3'],
-    ['^1.2.3+build', '1.3.0'],
-    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '1.2.3'],
-    ['1.2.3pre+asdf - 2.4.3-pre+asdf', '1.2.3', true],
-    ['1.2.3-pre+asdf - 2.4.3pre+asdf', '1.2.3', true],
-    ['1.2.3pre+asdf - 2.4.3pre+asdf', '1.2.3', true],
-    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '1.2.3-pre.2'],
-    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '2.4.3-alpha'],
-    ['1.2.3+asdf - 2.4.3+asdf', '1.2.3'],
-    ['1.0.0', '1.0.0'],
-    ['>=*', '0.2.4'],
-    ['', '1.0.0'],
-    ['*', '1.2.3'],
-    ['*', 'v1.2.3-foo', true],
-    ['>=1.0.0', '1.0.0'],
-    ['>=1.0.0', '1.0.1'],
-    ['>=1.0.0', '1.1.0'],
-    ['>1.0.0', '1.0.1'],
-    ['>1.0.0', '1.1.0'],
-    ['<=2.0.0', '2.0.0'],
-    ['<=2.0.0', '1.9999.9999'],
-    ['<=2.0.0', '0.2.9'],
-    ['<2.0.0', '1.9999.9999'],
-    ['<2.0.0', '0.2.9'],
-    ['>= 1.0.0', '1.0.0'],
-    ['>=  1.0.0', '1.0.1'],
-    ['>=   1.0.0', '1.1.0'],
-    ['> 1.0.0', '1.0.1'],
-    ['>  1.0.0', '1.1.0'],
-    ['<=   2.0.0', '2.0.0'],
-    ['<= 2.0.0', '1.9999.9999'],
-    ['<=  2.0.0', '0.2.9'],
-    ['<    2.0.0', '1.9999.9999'],
-    ['<\t2.0.0', '0.2.9'],
-    ['>=0.1.97', 'v0.1.97', true],
-    ['>=0.1.97', '0.1.97'],
-    ['0.1.20 || 1.2.4', '1.2.4'],
-    ['>=0.2.3 || <0.0.1', '0.0.0'],
-    ['>=0.2.3 || <0.0.1', '0.2.3'],
-    ['>=0.2.3 || <0.0.1', '0.2.4'],
-    ['||', '1.3.4'],
-    ['2.x.x', '2.1.3'],
-    ['1.2.x', '1.2.3'],
-    ['1.2.x || 2.x', '2.1.3'],
-    ['1.2.x || 2.x', '1.2.3'],
-    ['x', '1.2.3'],
-    ['2.*.*', '2.1.3'],
-    ['1.2.*', '1.2.3'],
-    ['1.2.* || 2.*', '2.1.3'],
-    ['1.2.* || 2.*', '1.2.3'],
-    ['*', '1.2.3'],
-    ['2', '2.1.2'],
-    ['2.3', '2.3.1'],
-    ['~2.4', '2.4.0'], // >=2.4.0 <2.5.0
-    ['~2.4', '2.4.5'],
-    ['~>3.2.1', '3.2.2'], // >=3.2.1 <3.3.0,
-    ['~1', '1.2.3'], // >=1.0.0 <2.0.0
-    ['~>1', '1.2.3'],
-    ['~> 1', '1.2.3'],
-    ['~1.0', '1.0.2'], // >=1.0.0 <1.1.0,
-    ['~ 1.0', '1.0.2'],
-    ['~ 1.0.3', '1.0.12'],
-    ['>=1', '1.0.0'],
-    ['>= 1', '1.0.0'],
-    ['<1.2', '1.1.1'],
-    ['< 1.2', '1.1.1'],
-    ['~v0.5.4-pre', '0.5.5'],
-    ['~v0.5.4-pre', '0.5.4'],
-    ['=0.7.x', '0.7.2'],
-    ['<=0.7.x', '0.7.2'],
-    ['>=0.7.x', '0.7.2'],
-    ['<=0.7.x', '0.6.2'],
-    ['~1.2.1 >=1.2.3', '1.2.3'],
-    ['~1.2.1 =1.2.3', '1.2.3'],
-    ['~1.2.1 1.2.3', '1.2.3'],
-    ['~1.2.1 >=1.2.3 1.2.3', '1.2.3'],
-    ['~1.2.1 1.2.3 >=1.2.3', '1.2.3'],
-    ['~1.2.1 1.2.3', '1.2.3'],
-    ['>=1.2.1 1.2.3', '1.2.3'],
-    ['1.2.3 >=1.2.1', '1.2.3'],
-    ['>=1.2.3 >=1.2.1', '1.2.3'],
-    ['>=1.2.1 >=1.2.3', '1.2.3'],
-    ['>=1.2', '1.2.8'],
-    ['^1.2.3', '1.8.1'],
-    ['^0.1.2', '0.1.2'],
-    ['^0.1', '0.1.2'],
-    ['^1.2', '1.4.2'],
-    ['^1.2 ^1', '1.4.2'],
-    ['^1.2.3-alpha', '1.2.3-pre'],
-    ['^1.2.0-alpha', '1.2.0-pre'],
-    ['^0.0.1-alpha', '0.0.1-beta']
-  ].forEach(function(v) {
-    var range = v[0];
-    var ver = v[1];
-    var loose = v[2];
-    t.ok(satisfies(ver, range, loose), range + ' satisfied by ' + ver);
-  });
-  t.end();
-});
-
-test('\nnegative range tests', function(t) {
-  // [range, version]
-  // version should not be included by range
-  [['1.0.0 - 2.0.0', '2.2.3'],
-    ['1.2.3+asdf - 2.4.3+asdf', '1.2.3-pre.2'],
-    ['1.2.3+asdf - 2.4.3+asdf', '2.4.3-alpha'],
-    ['^1.2.3+build', '2.0.0'],
-    ['^1.2.3+build', '1.2.0'],
-    ['^1.2.3', '1.2.3-pre'],
-    ['^1.2', '1.2.0-pre'],
-    ['>1.2', '1.3.0-beta'],
-    ['<=1.2.3', '1.2.3-beta'],
-    ['^1.2.3', '1.2.3-beta'],
-    ['=0.7.x', '0.7.0-asdf'],
-    ['>=0.7.x', '0.7.0-asdf'],
-    ['1', '1.0.0beta', true],
-    ['<1', '1.0.0beta', true],
-    ['< 1', '1.0.0beta', true],
-    ['1.0.0', '1.0.1'],
-    ['>=1.0.0', '0.0.0'],
-    ['>=1.0.0', '0.0.1'],
-    ['>=1.0.0', '0.1.0'],
-    ['>1.0.0', '0.0.1'],
-    ['>1.0.0', '0.1.0'],
-    ['<=2.0.0', '3.0.0'],
-    ['<=2.0.0', '2.9999.9999'],
-    ['<=2.0.0', '2.2.9'],
-    ['<2.0.0', '2.9999.9999'],
-    ['<2.0.0', '2.2.9'],
-    ['>=0.1.97', 'v0.1.93', true],
-    ['>=0.1.97', '0.1.93'],
-    ['0.1.20 || 1.2.4', '1.2.3'],
-    ['>=0.2.3 || <0.0.1', '0.0.3'],
-    ['>=0.2.3 || <0.0.1', '0.2.2'],
-    ['2.x.x', '1.1.3'],
-    ['2.x.x', '3.1.3'],
-    ['1.2.x', '1.3.3'],
-    ['1.2.x || 2.x', '3.1.3'],
-    ['1.2.x || 2.x', '1.1.3'],
-    ['2.*.*', '1.1.3'],
-    ['2.*.*', '3.1.3'],
-    ['1.2.*', '1.3.3'],
-    ['1.2.* || 2.*', '3.1.3'],
-    ['1.2.* || 2.*', '1.1.3'],
-    ['2', '1.1.2'],
-    ['2.3', '2.4.1'],
-    ['~2.4', '2.5.0'], // >=2.4.0 <2.5.0
-    ['~2.4', '2.3.9'],
-    ['~>3.2.1', '3.3.2'], // >=3.2.1 <3.3.0
-    ['~>3.2.1', '3.2.0'], // >=3.2.1 <3.3.0
-    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
-    ['~>1', '2.2.3'],
-    ['~1.0', '1.1.0'], // >=1.0.0 <1.1.0
-    ['<1', '1.0.0'],
-    ['>=1.2', '1.1.1'],
-    ['1', '2.0.0beta', true],
-    ['~v0.5.4-beta', '0.5.4-alpha'],
-    ['=0.7.x', '0.8.2'],
-    ['>=0.7.x', '0.6.2'],
-    ['<0.7.x', '0.7.2'],
-    ['<1.2.3', '1.2.3-beta'],
-    ['=1.2.3', '1.2.3-beta'],
-    ['>1.2', '1.2.8'],
-    ['^1.2.3', '2.0.0-alpha'],
-    ['^1.2.3', '1.2.2'],
-    ['^1.2', '1.1.9'],
-    // invalid ranges never satisfied!
-    ['blerg', '1.2.3'],
-    ['git+https://user:password0123@github.com/foo', '123.0.0', true],
-    ['^1.2.3', '2.0.0-pre']
-  ].forEach(function(v) {
-    var range = v[0];
-    var ver = v[1];
-    var loose = v[2];
-    var found = satisfies(ver, range, loose);
-    t.ok(!found, ver + ' not satisfied by ' + range);
-  });
-  t.end();
-});
-
-test('\nincrement versions test', function(t) {
-//  [version, inc, result, identifier]
-//  inc(version, inc) -> result
-  [['1.2.3', 'major', '2.0.0'],
-    ['1.2.3', 'minor', '1.3.0'],
-    ['1.2.3', 'patch', '1.2.4'],
-    ['1.2.3tag', 'major', '2.0.0', true],
-    ['1.2.3-tag', 'major', '2.0.0'],
-    ['1.2.3', 'fake', null],
-    ['1.2.0-0', 'patch', '1.2.0'],
-    ['fake', 'major', null],
-    ['1.2.3-4', 'major', '2.0.0'],
-    ['1.2.3-4', 'minor', '1.3.0'],
-    ['1.2.3-4', 'patch', '1.2.3'],
-    ['1.2.3-alpha.0.beta', 'major', '2.0.0'],
-    ['1.2.3-alpha.0.beta', 'minor', '1.3.0'],
-    ['1.2.3-alpha.0.beta', 'patch', '1.2.3'],
-    ['1.2.4', 'prerelease', '1.2.5-0'],
-    ['1.2.3-0', 'prerelease', '1.2.3-1'],
-    ['1.2.3-alpha.0', 'prerelease', '1.2.3-alpha.1'],
-    ['1.2.3-alpha.1', 'prerelease', '1.2.3-alpha.2'],
-    ['1.2.3-alpha.2', 'prerelease', '1.2.3-alpha.3'],
-    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-alpha.1.beta'],
-    ['1.2.3-alpha.1.beta', 'prerelease', '1.2.3-alpha.2.beta'],
-    ['1.2.3-alpha.2.beta', 'prerelease', '1.2.3-alpha.3.beta'],
-    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-alpha.10.1.beta'],
-    ['1.2.3-alpha.10.1.beta', 'prerelease', '1.2.3-alpha.10.2.beta'],
-    ['1.2.3-alpha.10.2.beta', 'prerelease', '1.2.3-alpha.10.3.beta'],
-    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-alpha.10.beta.1'],
-    ['1.2.3-alpha.10.beta.1', 'prerelease', '1.2.3-alpha.10.beta.2'],
-    ['1.2.3-alpha.10.beta.2', 'prerelease', '1.2.3-alpha.10.beta.3'],
-    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-alpha.10.beta'],
-    ['1.2.3-alpha.10.beta', 'prerelease', '1.2.3-alpha.11.beta'],
-    ['1.2.3-alpha.11.beta', 'prerelease', '1.2.3-alpha.12.beta'],
-    ['1.2.0', 'prepatch', '1.2.1-0'],
-    ['1.2.0-1', 'prepatch', '1.2.1-0'],
-    ['1.2.0', 'preminor', '1.3.0-0'],
-    ['1.2.3-1', 'preminor', '1.3.0-0'],
-    ['1.2.0', 'premajor', '2.0.0-0'],
-    ['1.2.3-1', 'premajor', '2.0.0-0'],
-    ['1.2.0-1', 'minor', '1.2.0'],
-    ['1.0.0-1', 'major', '1.0.0'],
-
-    ['1.2.3', 'major', '2.0.0', false, 'dev'],
-    ['1.2.3', 'minor', '1.3.0', false, 'dev'],
-    ['1.2.3', 'patch', '1.2.4', false, 'dev'],
-    ['1.2.3tag', 'major', '2.0.0', true, 'dev'],
-    ['1.2.3-tag', 'major', '2.0.0', false, 'dev'],
-    ['1.2.3', 'fake', null, false, 'dev'],
-    ['1.2.0-0', 'patch', '1.2.0', false, 'dev'],
-    ['fake', 'major', null, false, 'dev'],
-    ['1.2.3-4', 'major', '2.0.0', false, 'dev'],
-    ['1.2.3-4', 'minor', '1.3.0', false, 'dev'],
-    ['1.2.3-4', 'patch', '1.2.3', false, 'dev'],
-    ['1.2.3-alpha.0.beta', 'major', '2.0.0', false, 'dev'],
-    ['1.2.3-alpha.0.beta', 'minor', '1.3.0', false, 'dev'],
-    ['1.2.3-alpha.0.beta', 'patch', '1.2.3', false, 'dev'],
-    ['1.2.4', 'prerelease', '1.2.5-dev.0', false, 'dev'],
-    ['1.2.3-0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.0', 'prerelease', '1.2.3-alpha.1', false, 'alpha'],
-    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-alpha.1.beta', false, 'alpha'],
-    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-alpha.10.1.beta', false, 'alpha'],
-    ['1.2.3-alpha.10.1.beta', 'prerelease', '1.2.3-alpha.10.2.beta', false, 'alpha'],
-    ['1.2.3-alpha.10.2.beta', 'prerelease', '1.2.3-alpha.10.3.beta', false, 'alpha'],
-    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-alpha.10.beta.1', false, 'alpha'],
-    ['1.2.3-alpha.10.beta.1', 'prerelease', '1.2.3-alpha.10.beta.2', false, 'alpha'],
-    ['1.2.3-alpha.10.beta.2', 'prerelease', '1.2.3-alpha.10.beta.3', false, 'alpha'],
-    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
-    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-alpha.10.beta', false, 'alpha'],
-    ['1.2.3-alpha.10.beta', 'prerelease', '1.2.3-alpha.11.beta', false, 'alpha'],
-    ['1.2.3-alpha.11.beta', 'prerelease', '1.2.3-alpha.12.beta', false, 'alpha'],
-    ['1.2.0', 'prepatch', '1.2.1-dev.0', 'dev'],
-    ['1.2.0-1', 'prepatch', '1.2.1-dev.0', 'dev'],
-    ['1.2.0', 'preminor', '1.3.0-dev.0', 'dev'],
-    ['1.2.3-1', 'preminor', '1.3.0-dev.0', 'dev'],
-    ['1.2.0', 'premajor', '2.0.0-dev.0', 'dev'],
-    ['1.2.3-1', 'premajor', '2.0.0-dev.0', 'dev'],
-    ['1.2.0-1', 'minor', '1.2.0', 'dev'],
-    ['1.0.0-1', 'major', '1.0.0', 'dev'],
-    ['1.2.3-dev.bar', 'prerelease', '1.2.3-dev.0', false, 'dev']
-
-  ].forEach(function(v) {
-    var pre = v[0];
-    var what = v[1];
-    var wanted = v[2];
-    var loose = v[3];
-    var id = v[4];
-    var found = inc(pre, what, loose, id);
-    var cmd = 'inc(' + pre + ', ' + what + ', ' + id + ')';
-    t.equal(found, wanted, cmd + ' === ' + wanted);
-  });
-
-  t.end();
-});
-
-test('\ndiff versions test', function(t) {
-//  [version1, version2, result]
-//  diff(version1, version2) -> result
-  [['1.2.3', '0.2.3', 'major'],
-    ['1.4.5', '0.2.3', 'major'],
-    ['1.2.3', '2.0.0-pre', 'premajor'],
-    ['1.2.3', '1.3.3', 'minor'],
-    ['1.0.1', '1.1.0-pre', 'preminor'],
-    ['1.2.3', '1.2.4', 'patch'],
-    ['1.2.3', '1.2.4-pre', 'prepatch'],
-    ['0.0.1', '0.0.1-pre', 'prerelease'],
-    ['0.0.1', '0.0.1-pre-2', 'prerelease'],
-    ['1.1.0', '1.1.0-pre', 'prerelease'],
-    ['1.1.0-pre-1', '1.1.0-pre-2', 'prerelease'],
-    ['1.0.0', '1.0.0', null]
-
-  ].forEach(function(v) {
-    var version1 = v[0];
-    var version2 = v[1];
-    var wanted = v[2];
-    var found = diff(version1, version2);
-    var cmd = 'diff(' + version1 + ', ' + version2 + ')';
-    t.equal(found, wanted, cmd + ' === ' + wanted);
-  });
-
-  t.end();
-});
-
-test('\nvalid range test', function(t) {
-  // [range, result]
-  // validRange(range) -> result
-  // translate ranges into their canonical form
-  [['1.0.0 - 2.0.0', '>=1.0.0 <=2.0.0'],
-    ['1.0.0', '1.0.0'],
-    ['>=*', '*'],
-    ['', '*'],
-    ['*', '*'],
-    ['*', '*'],
-    ['>=1.0.0', '>=1.0.0'],
-    ['>1.0.0', '>1.0.0'],
-    ['<=2.0.0', '<=2.0.0'],
-    ['1', '>=1.0.0 <2.0.0'],
-    ['<=2.0.0', '<=2.0.0'],
-    ['<=2.0.0', '<=2.0.0'],
-    ['<2.0.0', '<2.0.0'],
-    ['<2.0.0', '<2.0.0'],
-    ['>= 1.0.0', '>=1.0.0'],
-    ['>=  1.0.0', '>=1.0.0'],
-    ['>=   1.0.0', '>=1.0.0'],
-    ['> 1.0.0', '>1.0.0'],
-    ['>  1.0.0', '>1.0.0'],
-    ['<=   2.0.0', '<=2.0.0'],
-    ['<= 2.0.0', '<=2.0.0'],
-    ['<=  2.0.0', '<=2.0.0'],
-    ['<    2.0.0', '<2.0.0'],
-    ['<        2.0.0', '<2.0.0'],
-    ['>=0.1.97', '>=0.1.97'],
-    ['>=0.1.97', '>=0.1.97'],
-    ['0.1.20 || 1.2.4', '0.1.20||1.2.4'],
-    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
-    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
-    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
-    ['||', '||'],
-    ['2.x.x', '>=2.0.0 <3.0.0'],
-    ['1.2.x', '>=1.2.0 <1.3.0'],
-    ['1.2.x || 2.x', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
-    ['1.2.x || 2.x', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
-    ['x', '*'],
-    ['2.*.*', '>=2.0.0 <3.0.0'],
-    ['1.2.*', '>=1.2.0 <1.3.0'],
-    ['1.2.* || 2.*', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
-    ['*', '*'],
-    ['2', '>=2.0.0 <3.0.0'],
-    ['2.3', '>=2.3.0 <2.4.0'],
-    ['~2.4', '>=2.4.0 <2.5.0'],
-    ['~2.4', '>=2.4.0 <2.5.0'],
-    ['~>3.2.1', '>=3.2.1 <3.3.0'],
-    ['~1', '>=1.0.0 <2.0.0'],
-    ['~>1', '>=1.0.0 <2.0.0'],
-    ['~> 1', '>=1.0.0 <2.0.0'],
-    ['~1.0', '>=1.0.0 <1.1.0'],
-    ['~ 1.0', '>=1.0.0 <1.1.0'],
-    ['^0', '>=0.0.0 <1.0.0'],
-    ['^ 1', '>=1.0.0 <2.0.0'],
-    ['^0.1', '>=0.1.0 <0.2.0'],
-    ['^1.0', '>=1.0.0 <2.0.0'],
-    ['^1.2', '>=1.2.0 <2.0.0'],
-    ['^0.0.1', '>=0.0.1 <0.0.2'],
-    ['^0.0.1-beta', '>=0.0.1-beta <0.0.2'],
-    ['^0.1.2', '>=0.1.2 <0.2.0'],
-    ['^1.2.3', '>=1.2.3 <2.0.0'],
-    ['^1.2.3-beta.4', '>=1.2.3-beta.4 <2.0.0'],
-    ['<1', '<1.0.0'],
-    ['< 1', '<1.0.0'],
-    ['>=1', '>=1.0.0'],
-    ['>= 1', '>=1.0.0'],
-    ['<1.2', '<1.2.0'],
-    ['< 1.2', '<1.2.0'],
-    ['1', '>=1.0.0 <2.0.0'],
-    ['>01.02.03', '>1.2.3', true],
-    ['>01.02.03', null],
-    ['~1.2.3beta', '>=1.2.3-beta <1.3.0', true],
-    ['~1.2.3beta', null],
-    ['^ 1.2 ^ 1', '>=1.2.0 <2.0.0 >=1.0.0 <2.0.0']
-  ].forEach(function(v) {
-    var pre = v[0];
-    var wanted = v[1];
-    var loose = v[2];
-    var found = validRange(pre, loose);
-
-    t.equal(found, wanted, 'validRange(' + pre + ') === ' + wanted);
-  });
-
-  t.end();
-});
-
-test('\ncomparators test', function(t) {
-  // [range, comparators]
-  // turn range into a set of individual comparators
-  [['1.0.0 - 2.0.0', [['>=1.0.0', '<=2.0.0']]],
-    ['1.0.0', [['1.0.0']]],
-    ['>=*', [['']]],
-    ['', [['']]],
-    ['*', [['']]],
-    ['*', [['']]],
-    ['>=1.0.0', [['>=1.0.0']]],
-    ['>=1.0.0', [['>=1.0.0']]],
-    ['>=1.0.0', [['>=1.0.0']]],
-    ['>1.0.0', [['>1.0.0']]],
-    ['>1.0.0', [['>1.0.0']]],
-    ['<=2.0.0', [['<=2.0.0']]],
-    ['1', [['>=1.0.0', '<2.0.0']]],
-    ['<=2.0.0', [['<=2.0.0']]],
-    ['<=2.0.0', [['<=2.0.0']]],
-    ['<2.0.0', [['<2.0.0']]],
-    ['<2.0.0', [['<2.0.0']]],
-    ['>= 1.0.0', [['>=1.0.0']]],
-    ['>=  1.0.0', [['>=1.0.0']]],
-    ['>=   1.0.0', [['>=1.0.0']]],
-    ['> 1.0.0', [['>1.0.0']]],
-    ['>  1.0.0', [['>1.0.0']]],
-    ['<=   2.0.0', [['<=2.0.0']]],
-    ['<= 2.0.0', [['<=2.0.0']]],
-    ['<=  2.0.0', [['<=2.0.0']]],
-    ['<    2.0.0', [['<2.0.0']]],
-    ['<\t2.0.0', [['<2.0.0']]],
-    ['>=0.1.97', [['>=0.1.97']]],
-    ['>=0.1.97', [['>=0.1.97']]],
-    ['0.1.20 || 1.2.4', [['0.1.20'], ['1.2.4']]],
-    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
-    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
-    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
-    ['||', [[''], ['']]],
-    ['2.x.x', [['>=2.0.0', '<3.0.0']]],
-    ['1.2.x', [['>=1.2.0', '<1.3.0']]],
-    ['1.2.x || 2.x', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
-    ['1.2.x || 2.x', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
-    ['x', [['']]],
-    ['2.*.*', [['>=2.0.0', '<3.0.0']]],
-    ['1.2.*', [['>=1.2.0', '<1.3.0']]],
-    ['1.2.* || 2.*', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
-    ['1.2.* || 2.*', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
-    ['*', [['']]],
-    ['2', [['>=2.0.0', '<3.0.0']]],
-    ['2.3', [['>=2.3.0', '<2.4.0']]],
-    ['~2.4', [['>=2.4.0', '<2.5.0']]],
-    ['~2.4', [['>=2.4.0', '<2.5.0']]],
-    ['~>3.2.1', [['>=3.2.1', '<3.3.0']]],
-    ['~1', [['>=1.0.0', '<2.0.0']]],
-    ['~>1', [['>=1.0.0', '<2.0.0']]],
-    ['~> 1', [['>=1.0.0', '<2.0.0']]],
-    ['~1.0', [['>=1.0.0', '<1.1.0']]],
-    ['~ 1.0', [['>=1.0.0', '<1.1.0']]],
-    ['~ 1.0.3', [['>=1.0.3', '<1.1.0']]],
-    ['~> 1.0.3', [['>=1.0.3', '<1.1.0']]],
-    ['<1', [['<1.0.0']]],
-    ['< 1', [['<1.0.0']]],
-    ['>=1', [['>=1.0.0']]],
-    ['>= 1', [['>=1.0.0']]],
-    ['<1.2', [['<1.2.0']]],
-    ['< 1.2', [['<1.2.0']]],
-    ['1', [['>=1.0.0', '<2.0.0']]],
-    ['1 2', [['>=1.0.0', '<2.0.0', '>=2.0.0', '<3.0.0']]],
-    ['1.2 - 3.4.5', [['>=1.2.0', '<=3.4.5']]],
-    ['1.2.3 - 3.4', [['>=1.2.3', '<3.5.0']]],
-    ['1.2.3 - 3', [['>=1.2.3', '<4.0.0']]],
-    ['>*', [['<0.0.0']]],
-    ['<*', [['<0.0.0']]]
-  ].forEach(function(v) {
-    var pre = v[0];
-    var wanted = v[1];
-    var found = toComparators(v[0]);
-    var jw = JSON.stringify(wanted);
-    t.equivalent(found, wanted, 'toComparators(' + pre + ') === ' + jw);
-  });
-
-  t.end();
-});
-
-test('\ninvalid version numbers', function(t) {
-  ['1.2.3.4',
-   'NOT VALID',
-   1.2,
-   null,
-   'Infinity.NaN.Infinity'
-  ].forEach(function(v) {
-    t.throws(function() {
-      new SemVer(v);
-    }, {name:'TypeError', message:'Invalid Version: ' + v});
-  });
-
-  t.end();
-});
-
-test('\nstrict vs loose version numbers', function(t) {
-  [['=1.2.3', '1.2.3'],
-    ['01.02.03', '1.2.3'],
-    ['1.2.3-beta.01', '1.2.3-beta.1'],
-    ['   =1.2.3', '1.2.3'],
-    ['1.2.3foo', '1.2.3-foo']
-  ].forEach(function(v) {
-    var loose = v[0];
-    var strict = v[1];
-    t.throws(function() {
-      new SemVer(loose);
-    });
-    var lv = new SemVer(loose, true);
-    t.equal(lv.version, strict);
-    t.ok(eq(loose, strict, true));
-    t.throws(function() {
-      eq(loose, strict);
-    });
-    t.throws(function() {
-      new SemVer(strict).compare(loose);
-    });
-  });
-  t.end();
-});
-
-test('\nstrict vs loose ranges', function(t) {
-  [['>=01.02.03', '>=1.2.3'],
-    ['~1.02.03beta', '>=1.2.3-beta <1.3.0']
-  ].forEach(function(v) {
-    var loose = v[0];
-    var comps = v[1];
-    t.throws(function() {
-      new Range(loose);
-    });
-    t.equal(new Range(loose, true).range, comps);
-  });
-  t.end();
-});
-
-test('\nmax satisfying', function(t) {
-  [[['1.2.3', '1.2.4'], '1.2', '1.2.4'],
-    [['1.2.4', '1.2.3'], '1.2', '1.2.4'],
-    [['1.2.3', '1.2.4', '1.2.5', '1.2.6'], '~1.2.3', '1.2.6'],
-    [['1.1.0', '1.2.0', '1.2.1', '1.3.0', '2.0.0b1', '2.0.0b2', '2.0.0b3', '2.0.0', '2.1.0'], '~2.0.0', '2.0.0', true]
-  ].forEach(function(v) {
-    var versions = v[0];
-    var range = v[1];
-    var expect = v[2];
-    var loose = v[3];
-    var actual = semver.maxSatisfying(versions, range, loose);
-    t.equal(actual, expect);
-  });
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js
deleted file mode 100644 (file)
index ecd1387..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-var tap = require('tap');
-var test = tap.test;
-var semver = require('../semver.js');
-var ltr = semver.ltr;
-
-test('\nltr tests', function(t) {
-  // [range, version, loose]
-  // Version should be less than range
-  [
-    ['~1.2.2', '1.2.1'],
-    ['~0.6.1-1', '0.6.1-0'],
-    ['1.0.0 - 2.0.0', '0.0.1'],
-    ['1.0.0-beta.2', '1.0.0-beta.1'],
-    ['1.0.0', '0.0.0'],
-    ['>=2.0.0', '1.1.1'],
-    ['>=2.0.0', '1.2.9'],
-    ['>2.0.0', '2.0.0'],
-    ['0.1.20 || 1.2.4', '0.1.5'],
-    ['2.x.x', '1.0.0'],
-    ['1.2.x', '1.1.0'],
-    ['1.2.x || 2.x', '1.0.0'],
-    ['2.*.*', '1.0.1'],
-    ['1.2.*', '1.1.3'],
-    ['1.2.* || 2.*', '1.1.9999'],
-    ['2', '1.0.0'],
-    ['2.3', '2.2.2'],
-    ['~2.4', '2.3.0'], // >=2.4.0 <2.5.0
-    ['~2.4', '2.3.5'],
-    ['~>3.2.1', '3.2.0'], // >=3.2.1 <3.3.0
-    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
-    ['~>1', '0.2.4'],
-    ['~> 1', '0.2.3'],
-    ['~1.0', '0.1.2'], // >=1.0.0 <1.1.0
-    ['~ 1.0', '0.1.0'],
-    ['>1.2', '1.2.0'],
-    ['> 1.2', '1.2.1'],
-    ['1', '0.0.0beta', true],
-    ['~v0.5.4-pre', '0.5.4-alpha'],
-    ['~v0.5.4-pre', '0.5.4-alpha'],
-    ['=0.7.x', '0.6.0'],
-    ['=0.7.x', '0.6.0-asdf'],
-    ['>=0.7.x', '0.6.0'],
-    ['~1.2.2', '1.2.1'],
-    ['1.0.0 - 2.0.0', '0.2.3'],
-    ['1.0.0', '0.0.1'],
-    ['>=2.0.0', '1.0.0'],
-    ['>=2.0.0', '1.9999.9999'],
-    ['>=2.0.0', '1.2.9'],
-    ['>2.0.0', '2.0.0'],
-    ['>2.0.0', '1.2.9'],
-    ['2.x.x', '1.1.3'],
-    ['1.2.x', '1.1.3'],
-    ['1.2.x || 2.x', '1.1.3'],
-    ['2.*.*', '1.1.3'],
-    ['1.2.*', '1.1.3'],
-    ['1.2.* || 2.*', '1.1.3'],
-    ['2', '1.9999.9999'],
-    ['2.3', '2.2.1'],
-    ['~2.4', '2.3.0'], // >=2.4.0 <2.5.0
-    ['~>3.2.1', '2.3.2'], // >=3.2.1 <3.3.0
-    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
-    ['~>1', '0.2.3'],
-    ['~1.0', '0.0.0'], // >=1.0.0 <1.1.0
-    ['>1', '1.0.0'],
-    ['2', '1.0.0beta', true],
-    ['>1', '1.0.0beta', true],
-    ['> 1', '1.0.0beta', true],
-    ['=0.7.x', '0.6.2'],
-    ['=0.7.x', '0.7.0-asdf'],
-    ['^1', '1.0.0-0'],
-    ['>=0.7.x', '0.7.0-asdf'],
-    ['1', '1.0.0beta', true],
-    ['>=0.7.x', '0.6.2']
-  ].forEach(function(tuple) {
-    var range = tuple[0];
-    var version = tuple[1];
-    var loose = tuple[2] || false;
-    var msg = 'ltr(' + version + ', ' + range + ', ' + loose + ')';
-    t.ok(ltr(version, range, loose), msg);
-  });
-  t.end();
-});
-
-test('\nnegative ltr tests', function(t) {
-  // [range, version, loose]
-  // Version should NOT be greater than range
-  [
-    ['~ 1.0', '1.1.0'],
-    ['~0.6.1-1', '0.6.1-1'],
-    ['1.0.0 - 2.0.0', '1.2.3'],
-    ['1.0.0 - 2.0.0', '2.9.9'],
-    ['1.0.0', '1.0.0'],
-    ['>=*', '0.2.4'],
-    ['', '1.0.0', true],
-    ['*', '1.2.3'],
-    ['*', 'v1.2.3-foo'],
-    ['>=1.0.0', '1.0.0'],
-    ['>=1.0.0', '1.0.1'],
-    ['>=1.0.0', '1.1.0'],
-    ['>1.0.0', '1.0.1'],
-    ['>1.0.0', '1.1.0'],
-    ['<=2.0.0', '2.0.0'],
-    ['<=2.0.0', '1.9999.9999'],
-    ['<=2.0.0', '0.2.9'],
-    ['<2.0.0', '1.9999.9999'],
-    ['<2.0.0', '0.2.9'],
-    ['>= 1.0.0', '1.0.0'],
-    ['>=  1.0.0', '1.0.1'],
-    ['>=   1.0.0', '1.1.0'],
-    ['> 1.0.0', '1.0.1'],
-    ['>  1.0.0', '1.1.0'],
-    ['<=   2.0.0', '2.0.0'],
-    ['<= 2.0.0', '1.9999.9999'],
-    ['<=  2.0.0', '0.2.9'],
-    ['<    2.0.0', '1.9999.9999'],
-    ['<\t2.0.0', '0.2.9'],
-    ['>=0.1.97', 'v0.1.97'],
-    ['>=0.1.97', '0.1.97'],
-    ['0.1.20 || 1.2.4', '1.2.4'],
-    ['0.1.20 || >1.2.4', '1.2.4'],
-    ['0.1.20 || 1.2.4', '1.2.3'],
-    ['0.1.20 || 1.2.4', '0.1.20'],
-    ['>=0.2.3 || <0.0.1', '0.0.0'],
-    ['>=0.2.3 || <0.0.1', '0.2.3'],
-    ['>=0.2.3 || <0.0.1', '0.2.4'],
-    ['||', '1.3.4'],
-    ['2.x.x', '2.1.3'],
-    ['1.2.x', '1.2.3'],
-    ['1.2.x || 2.x', '2.1.3'],
-    ['1.2.x || 2.x', '1.2.3'],
-    ['x', '1.2.3'],
-    ['2.*.*', '2.1.3'],
-    ['1.2.*', '1.2.3'],
-    ['1.2.* || 2.*', '2.1.3'],
-    ['1.2.* || 2.*', '1.2.3'],
-    ['1.2.* || 2.*', '1.2.3'],
-    ['*', '1.2.3'],
-    ['2', '2.1.2'],
-    ['2.3', '2.3.1'],
-    ['~2.4', '2.4.0'], // >=2.4.0 <2.5.0
-    ['~2.4', '2.4.5'],
-    ['~>3.2.1', '3.2.2'], // >=3.2.1 <3.3.0
-    ['~1', '1.2.3'], // >=1.0.0 <2.0.0
-    ['~>1', '1.2.3'],
-    ['~> 1', '1.2.3'],
-    ['~1.0', '1.0.2'], // >=1.0.0 <1.1.0
-    ['~ 1.0', '1.0.2'],
-    ['>=1', '1.0.0'],
-    ['>= 1', '1.0.0'],
-    ['<1.2', '1.1.1'],
-    ['< 1.2', '1.1.1'],
-    ['~v0.5.4-pre', '0.5.5'],
-    ['~v0.5.4-pre', '0.5.4'],
-    ['=0.7.x', '0.7.2'],
-    ['>=0.7.x', '0.7.2'],
-    ['<=0.7.x', '0.6.2'],
-    ['>0.2.3 >0.2.4 <=0.2.5', '0.2.5'],
-    ['>=0.2.3 <=0.2.4', '0.2.4'],
-    ['1.0.0 - 2.0.0', '2.0.0'],
-    ['^3.0.0', '4.0.0'],
-    ['^1.0.0 || ~2.0.1', '2.0.0'],
-    ['^0.1.0 || ~3.0.1 || 5.0.0', '3.2.0'],
-    ['^0.1.0 || ~3.0.1 || 5.0.0', '1.0.0beta', true],
-    ['^0.1.0 || ~3.0.1 || 5.0.0', '5.0.0-0', true],
-    ['^0.1.0 || ~3.0.1 || >4 <=5.0.0', '3.5.0'],
-    ['^1.0.0alpha', '1.0.0beta', true],
-    ['~1.0.0alpha', '1.0.0beta', true],
-    ['^1.0.0-alpha', '1.0.0beta', true],
-    ['~1.0.0-alpha', '1.0.0beta', true],
-    ['^1.0.0-alpha', '1.0.0-beta'],
-    ['~1.0.0-alpha', '1.0.0-beta'],
-    ['=0.1.0', '1.0.0']
-  ].forEach(function(tuple) {
-    var range = tuple[0];
-    var version = tuple[1];
-    var loose = tuple[2] || false;
-    var msg = '!ltr(' + version + ', ' + range + ', ' + loose + ')';
-    t.notOk(ltr(version, range, loose), msg);
-  });
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/package.json
deleted file mode 100644 (file)
index b9959b7..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-linebreak@https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-linebreak@https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-  "_id": "rocambole-linebreak@https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Y/YrEQwRCOcYRGD50rrDG5TFw8A=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-linebreak",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-linebreak@https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-    "name": "rocambole-linebreak",
-    "escapedName": "rocambole-linebreak",
-    "rawSpec": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "contact@millermedeiros.com",
-    "url": "http://millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-linebreak/issues"
-  },
-  "dependencies": {
-    "debug": "^2.1.3",
-    "rocambole-token": "^1.2.1",
-    "semver": "^4.3.1"
-  },
-  "description": "helpers for rocambole AST line break manipulation",
-  "homepage": "https://github.com/millermedeiros/rocambole-linebreak",
-  "jshintConfig": {
-    "node": true,
-    "eqnull": true
-  },
-  "keywords": [
-    "rocambole",
-    "ast",
-    "esformatter",
-    "linebreak"
-  ],
-  "license": "MIT",
-  "main": "rocambole-linebreak.js",
-  "name": "rocambole-linebreak",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-linebreak.git"
-  },
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "version": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/rocambole-linebreak.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-linebreak/rocambole-linebreak.js
deleted file mode 100644 (file)
index cd8ac02..0000000
+++ /dev/null
@@ -1,225 +0,0 @@
-'use strict';
-
-// Line break helpers
-
-var _tk = require('rocambole-token');
-var debug = require('debug');
-var debugBefore = debug('rocambole:br:before');
-var debugAfter = debug('rocambole:br:after');
-var debugBetween = debug('rocambole:br:between');
-
-// yeah, we use semver to parse integers. it's lame but works and will give
-// more flexibility while still keeping a format that is easy to read
-var semver = require('semver');
-
-// fallback in case plugin author forgets to call setOptions
-var _curOpts = {
-  value: '\n'
-};
-
-
-// ---
-
-
-exports.setOptions = setOptions;
-function setOptions(opts) {
-  _curOpts = opts;
-}
-
-
-exports.limit = limit;
-function limit(token, typeOrValue) {
-  limitBefore(token, typeOrValue);
-  limitAfter(token, typeOrValue);
-}
-
-
-exports.limitBefore = limitBefore;
-function limitBefore(token, typeOrValue) {
-  var expected = expectedBefore(typeOrValue);
-  debugBefore(
-    'typeOrValue: %s, expected: %s, value: %s',
-    typeOrValue, expected, token && token.value
-  );
-  if (expected < 0) return; // noop
-  var start = getStartToken(token);
-  limitInBetween('before', start, token, expected);
-}
-
-
-exports.limitAfter = limitAfter;
-function limitAfter(token, typeOrValue) {
-  var expected = expectedAfter(typeOrValue);
-  debugAfter(
-    'typeOrValue: %s, expected: %s, value: %s',
-    typeOrValue, expected, token && token.value
-  );
-  if (expected < 0) return; // noop
-  var end = getEndToken(token);
-  limitInBetween('after', token, end, expected);
-}
-
-exports.expectedBefore = expectedBefore;
-function expectedBefore(typeOrValue) {
-  return getExpect('before', typeOrValue);
-}
-
-exports.expectedAfter = expectedAfter;
-function expectedAfter(typeOrValue) {
-  return getExpect('after', typeOrValue);
-}
-
-
-function getExpect(location, typeOrValue) {
-  var expected;
-
-  // we allow expected value (number) as 2nd argument or the node type (string)
-  if (typeof typeOrValue === 'string') {
-    expected = _curOpts[location][typeOrValue];
-  } else {
-    expected = typeOrValue;
-  }
-
-  // default is noop, explicit is better than implicit
-  expected = expected != null ? expected : -1;
-
-  if (typeof expected === 'boolean') {
-    // if user sets booleans by mistake we simply add one if missing (true)
-    // or remove all if false
-    expected = expected ? '>=1' : 0;
-  }
-
-  if (expected < 0) {
-    // noop
-    return expected;
-  } else if (typeof expected === 'number') {
-    return String(expected);
-  } else {
-    return expected;
-  }
-}
-
-
-function limitInBetween(location, start, end, expected) {
-  var n = getDiff(start, end, expected);
-  debugBetween('diff: %d', n);
-  if (n) {
-    _tk.removeInBetween(start, end, 'WhiteSpace');
-  }
-  if (n < 0) {
-    _tk.removeInBetween(start, end, function(token) {
-      return token.type === 'LineBreak' && n++ < 0 &&
-        !siblingIsComment(location, token);
-    });
-  } else if (n > 0) {
-    var target = location === 'after' ? start : end;
-    var insertNextTo = _tk[location];
-    while (n-- > 0) {
-      insertNextTo(target, {
-        type: 'LineBreak',
-        value: _curOpts.value
-      });
-    }
-  }
-}
-
-
-function siblingIsComment(location, token) {
-  var prop = location === 'before' ? 'prev' : 'next';
-  return _tk.isComment(token[prop]);
-}
-
-
-function getDiff(start, end, expected) {
-  // start will only be equal to end if it's start or file
-  if (start === end) return 0;
-  var count = countBrInBetween(start, end);
-  // yeah, it's ugly to strings to compare integers but was quickest solution
-  var vCount = String(count) + '.0.0';
-  if (semver.satisfies(vCount, expected)) {
-    return 0;
-  } else {
-    return getSatisfyingMatch(count, vCount, expected) - count;
-  }
-}
-
-
-function getSatisfyingMatch(count, vCount, expected) {
-  var result;
-  var diff = semver.gtr(vCount, expected) ? -1 : 1;
-  count += diff;
-  while (result == null && count >= 0 && count < 100) {
-    if (semver.satisfies(String(count) + '.0.0', expected)) {
-      result = count;
-    }
-    count += diff;
-  }
-  return parseInt(result, 10);
-}
-
-
-function countBrInBetween(start, end) {
-  var count = 0;
-  _tk.eachInBetween(start, end, function(token) {
-    if (_tk.isBr(token)) count++;
-  });
-  return count;
-}
-
-
-function getEndToken(token) {
-  var end = _tk.findNextNonEmpty(token);
-  if (shouldSkipToken(end)) {
-    end = _tk.findNextNonEmpty(end);
-  }
-  return end ? end : token.root.endToken;
-}
-
-
-function shouldSkipToken(token) {
-  // if comment is at same line we skip it unless it has a specific rule that
-  // would add line breaks
-  var result = _tk.isComment(token) && !isOnSeparateLine(token);
-  return result && getExpect('before', token.type) <= 0;
-}
-
-
-function isOnSeparateLine(token) {
-  return _tk.isBr(token.prev) || (
-    _tk.isEmpty(token.prev) && _tk.isBr(token.prev.prev)
-    );
-}
-
-
-function getStartToken(token) {
-  var end = _tk.findPrevNonEmpty(token);
-  return end ? end : token.root.startToken;
-}
-
-
-exports.limitBeforeEndOfFile = function(ast, amount) {
-  var typeOrValue = amount != null ? amount : 'EndOfFile';
-  var expected = getExpect('before', typeOrValue);
-
-  if (expected < 0) return; // noop
-
-  var lastNonEmpty = _tk.isEmpty(ast.endToken) ?
-    _tk.findPrevNonEmpty(ast.endToken) :
-    ast.endToken;
-
-  if (lastNonEmpty) {
-    limitInBetween('after', lastNonEmpty, null, expected);
-  } else {
-    do {
-      var br = {
-        type: 'LineBreak',
-        value: _curOpts.value
-      };
-      if (ast.startToken) {
-        _tk.after(ast.startToken, br);
-      } else {
-        ast.startToken = ast.endToken = br;
-      }
-    } while (--expected);
-  }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-node/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-node/package.json
deleted file mode 100644 (file)
index 421eab3..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-node@https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-node@https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-  "_id": "rocambole-node@https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-21tJ3nQHsAgN1RSHLyjjk9D3/z8=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-node",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-node@https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-    "name": "rocambole-node",
-    "escapedName": "rocambole-node",
-    "rawSpec": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "contact@millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-node/issues"
-  },
-  "description": "Helpers to traverse and manipulate rocambole AST nodes",
-  "homepage": "https://github.com/millermedeiros/rocambole-node",
-  "jshintConfig": {
-    "node": true,
-    "boss": true
-  },
-  "keywords": [
-    "rocambole",
-    "ast",
-    "helper",
-    "node"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "rocambole-node",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-node.git"
-  },
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "version": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-token/package.json
deleted file mode 100644 (file)
index c8de27d..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_id": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-x4XfdCjcPLJ614lwR71SOMwHDTU=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-token",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-token@https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "name": "rocambole-token",
-    "escapedName": "rocambole-token",
-    "rawSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter",
-    "/grunt-standard/standard-format/esformatter/rocambole-indent",
-    "/grunt-standard/standard-format/esformatter/rocambole-linebreak",
-    "/grunt-standard/standard-format/esformatter/rocambole-whitespace"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "contact@millermedeiros.com",
-    "url": "http://blog.millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-token/issues"
-  },
-  "description": "Helpers for rocambole AST token manipulation",
-  "devDependencies": {
-    "jasmine-node": "~1.11.0",
-    "rocambole": "~0.2.3"
-  },
-  "homepage": "https://github.com/millermedeiros/rocambole-token",
-  "jshintConfig": {
-    "node": true
-  },
-  "keywords": [
-    "ast",
-    "token",
-    "rocambole"
-  ],
-  "license": "MIT",
-  "main": "./index.js",
-  "name": "rocambole-token",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-token.git"
-  },
-  "scripts": {
-    "test": "jasmine-node test/"
-  },
-  "version": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.jshintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.jshintrc
deleted file mode 100644 (file)
index 299877f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-  "laxbreak": true
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/.npmignore
deleted file mode 100644 (file)
index 7e6163d..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-support
-test
-examples
-example
-*.sock
-dist
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/History.md
deleted file mode 100644 (file)
index 770e483..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-
-2.1.3 / 2015-03-13
-==================
-
-  * Updated stdout/stderr example (#186)
-  * Updated example/stdout.js to match debug current behaviour
-  * Renamed example/stderr.js to stdout.js
-  * Update Readme.md (#184)
-  * replace high intensity foreground color for bold (#182, #183)
-
-2.1.2 / 2015-03-01
-==================
-
-  * dist: recompile
-  * update "ms" to v0.7.0
-  * package: update "browserify" to v9.0.3
-  * component: fix "ms.js" repo location
-  * changed bower package name
-  * updated documentation about using debug in a browser
-  * fix: security error on safari (#167, #168, @yields)
-
-2.1.1 / 2014-12-29
-==================
-
-  * browser: use `typeof` to check for `console` existence
-  * browser: check for `console.log` truthiness (fix IE 8/9)
-  * browser: add support for Chrome apps
-  * Readme: added Windows usage remarks
-  * Add `bower.json` to properly support bower install
-
-2.1.0 / 2014-10-15
-==================
-
-  * node: implement `DEBUG_FD` env variable support
-  * package: update "browserify" to v6.1.0
-  * package: add "license" field to package.json (#135, @panuhorsmalahti)
-
-2.0.0 / 2014-09-01
-==================
-
-  * package: update "browserify" to v5.11.0
-  * node: use stderr rather than stdout for logging (#29, @stephenmathieson)
-
-1.0.4 / 2014-07-15
-==================
-
-  * dist: recompile
-  * example: remove `console.info()` log usage
-  * example: add "Content-Type" UTF-8 header to browser example
-  * browser: place %c marker after the space character
-  * browser: reset the "content" color via `color: inherit`
-  * browser: add colors support for Firefox >= v31
-  * debug: prefer an instance `log()` function over the global one (#119)
-  * Readme: update documentation about styled console logs for FF v31 (#116, @wryk)
-
-1.0.3 / 2014-07-09
-==================
-
-  * Add support for multiple wildcards in namespaces (#122, @seegno)
-  * browser: fix lint
-
-1.0.2 / 2014-06-10
-==================
-
-  * browser: update color palette (#113, @gscottolson)
-  * common: make console logging function configurable (#108, @timoxley)
-  * node: fix %o colors on old node <= 0.8.x
-  * Makefile: find node path using shell/which (#109, @timoxley)
-
-1.0.1 / 2014-06-06
-==================
-
-  * browser: use `removeItem()` to clear localStorage
-  * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777)
-  * package: add "contributors" section
-  * node: fix comment typo
-  * README: list authors
-
-1.0.0 / 2014-06-04
-==================
-
-  * make ms diff be global, not be scope
-  * debug: ignore empty strings in enable()
-  * node: make DEBUG_COLORS able to disable coloring
-  * *: export the `colors` array
-  * npmignore: don't publish the `dist` dir
-  * Makefile: refactor to use browserify
-  * package: add "browserify" as a dev dependency
-  * Readme: add Web Inspector Colors section
-  * node: reset terminal color for the debug content
-  * node: map "%o" to `util.inspect()`
-  * browser: map "%j" to `JSON.stringify()`
-  * debug: add custom "formatters"
-  * debug: use "ms" module for humanizing the diff
-  * Readme: add "bash" syntax highlighting
-  * browser: add Firebug color support
-  * browser: add colors for WebKit browsers
-  * node: apply log to `console`
-  * rewrite: abstract common logic for Node & browsers
-  * add .jshintrc file
-
-0.8.1 / 2014-04-14
-==================
-
-  * package: re-add the "component" section
-
-0.8.0 / 2014-03-30
-==================
-
-  * add `enable()` method for nodejs. Closes #27
-  * change from stderr to stdout
-  * remove unnecessary index.js file
-
-0.7.4 / 2013-11-13
-==================
-
-  * remove "browserify" key from package.json (fixes something in browserify)
-
-0.7.3 / 2013-10-30
-==================
-
-  * fix: catch localStorage security error when cookies are blocked (Chrome)
-  * add debug(err) support. Closes #46
-  * add .browser prop to package.json. Closes #42
-
-0.7.2 / 2013-02-06
-==================
-
-  * fix package.json
-  * fix: Mobile Safari (private mode) is broken with debug
-  * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript
-
-0.7.1 / 2013-02-05
-==================
-
-  * add repository URL to package.json
-  * add DEBUG_COLORED to force colored output
-  * add browserify support
-  * fix component. Closes #24
-
-0.7.0 / 2012-05-04
-==================
-
-  * Added .component to package.json
-  * Added debug.component.js build
-
-0.6.0 / 2012-03-16
-==================
-
-  * Added support for "-" prefix in DEBUG [Vinay Pulim]
-  * Added `.enabled` flag to the node version [TooTallNate]
-
-0.5.0 / 2012-02-02
-==================
-
-  * Added: humanize diffs. Closes #8
-  * Added `debug.disable()` to the CS variant
-  * Removed padding. Closes #10
-  * Fixed: persist client-side variant again. Closes #9
-
-0.4.0 / 2012-02-01
-==================
-
-  * Added browser variant support for older browsers [TooTallNate]
-  * Added `debug.enable('project:*')` to browser variant [TooTallNate]
-  * Added padding to diff (moved it to the right)
-
-0.3.0 / 2012-01-26
-==================
-
-  * Added millisecond diff when isatty, otherwise UTC string
-
-0.2.0 / 2012-01-22
-==================
-
-  * Added wildcard support
-
-0.1.0 / 2011-12-02
-==================
-
-  * Added: remove colors unless stderr isatty [TooTallNate]
-
-0.0.1 / 2010-01-03
-==================
-
-  * Initial release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Makefile
deleted file mode 100644 (file)
index b0bde6e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-# get Makefile directory name: http://stackoverflow.com/a/5982798/376773
-THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
-THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
-
-# BIN directory
-BIN := $(THIS_DIR)/node_modules/.bin
-
-# applications
-NODE ?= $(shell which node)
-NPM ?= $(NODE) $(shell which npm)
-BROWSERIFY ?= $(NODE) $(BIN)/browserify
-
-all: dist/debug.js
-
-install: node_modules
-
-clean:
-       @rm -rf node_modules dist
-
-dist:
-       @mkdir -p $@
-
-dist/debug.js: node_modules browser.js debug.js dist
-       @$(BROWSERIFY) \
-               --standalone debug \
-               . > $@
-
-node_modules: package.json
-       @NODE_ENV= $(NPM) install
-       @touch node_modules
-
-.PHONY: all install clean
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/Readme.md
deleted file mode 100644 (file)
index 14222e0..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-# debug
-
-  tiny node.js debugging utility modelled after node core's debugging technique.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
- With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.
-
-Example _app.js_:
-
-```js
-var debug = require('debug')('http')
-  , http = require('http')
-  , name = 'My App';
-
-// fake app
-
-debug('booting %s', name);
-
-http.createServer(function(req, res){
-  debug(req.method + ' ' + req.url);
-  res.end('hello\n');
-}).listen(3000, function(){
-  debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example _worker.js_:
-
-```js
-var debug = require('debug')('worker');
-
-setInterval(function(){
-  debug('doing some work');
-}, 1000);
-```
-
- The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:
-
-  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)
-
-  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)
-
-#### Windows note
-
- On Windows the environment variable is set using the `set` command. 
- ```cmd
- set DEBUG=*,-not_this
- ```
-
-Then, run the program to be debugged as usual.
-
-## Millisecond diff
-
-  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
-
-  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
-
-  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
-
-## Conventions
-
- If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".
-
-## Wildcards
-
-  The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-  You can also exclude specific debuggers by prefixing them with a "-" character.  For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:".
-
-## Browser support
-
-  Debug works in the browser as well, currently persisted by `localStorage`. Consider the situation shown below where you have `worker:a` and `worker:b`, and wish to debug both. Somewhere in the code on your page, include:
-
-```js
-window.myDebug = require("debug");
-```
-
-  ("debug" is a global object in the browser so we give this object a different name.) When your page is open in the browser, type the following in the console:
-
-```js
-myDebug.enable("worker:*")
-```
-
-  Refresh the page. Debug output will continue to be sent to the console until it is disabled by typing `myDebug.disable()` in the console.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
-  a('doing some work');
-}, 1000);
-
-setInterval(function(){
-  b('doing some work');
-}, 1200);
-```
-
-#### Web Inspector Colors
-
-  Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-  option. These are WebKit web inspectors, Firefox ([since version
-  31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-  and the Firebug plugin for Firefox (any version).
-
-  Colored output looks something like:
-
-  ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png)
-
-### stderr vs stdout
-
-You can set an alternative logging method per-namespace by overriding the `log` method on a per-namespace or globally:
-
-Example _stdout.js_:
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/bower.json
deleted file mode 100644 (file)
index f7d3f6d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-  "name": "visionmedia-debug",
-  "main": "dist/debug.js",
-  "version": "2.1.3",
-  "homepage": "https://github.com/visionmedia/debug",
-  "authors": [
-    "TJ Holowaychuk <tj@vision-media.ca>"
-  ],
-  "description": "visionmedia-debug",
-  "moduleType": [
-    "amd",
-    "es6",
-    "globals",
-    "node"
-  ],
-  "keywords": [
-    "visionmedia",
-    "debug"
-  ],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "bower_components",
-    "test",
-    "tests"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/browser.js
deleted file mode 100644 (file)
index 55f4cf9..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-
-/**
- * This is the web browser implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Use chrome.storage.local if we are in an app
- */
-
-var storage;
-
-if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined')
-  storage = chrome.storage.local;
-else
-  storage = localstorage();
-
-/**
- * Colors.
- */
-
-exports.colors = [
-  'lightseagreen',
-  'forestgreen',
-  'goldenrod',
-  'dodgerblue',
-  'darkorchid',
-  'crimson'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-function useColors() {
-  // is webkit? http://stackoverflow.com/a/16459606/376773
-  return ('WebkitAppearance' in document.documentElement.style) ||
-    // is firebug? http://stackoverflow.com/a/398120/376773
-    (window.console && (console.firebug || (console.exception && console.table))) ||
-    // is firefox >= v31?
-    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
-    (navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31);
-}
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-exports.formatters.j = function(v) {
-  return JSON.stringify(v);
-};
-
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-
-  args[0] = (useColors ? '%c' : '')
-    + this.namespace
-    + (useColors ? ' %c' : ' ')
-    + args[0]
-    + (useColors ? '%c ' : ' ')
-    + '+' + exports.humanize(this.diff);
-
-  if (!useColors) return args;
-
-  var c = 'color: ' + this.color;
-  args = [args[0], c, 'color: inherit'].concat(Array.prototype.slice.call(args, 1));
-
-  // the final "%c" is somewhat tricky, because there could be other
-  // arguments passed either before or after the %c, so we need to
-  // figure out the correct index to insert the CSS into
-  var index = 0;
-  var lastC = 0;
-  args[0].replace(/%[a-z%]/g, function(match) {
-    if ('%%' === match) return;
-    index++;
-    if ('%c' === match) {
-      // we only are interested in the *last* %c
-      // (the user may have provided their own)
-      lastC = index;
-    }
-  });
-
-  args.splice(lastC, 0, c);
-  return args;
-}
-
-/**
- * Invokes `console.log()` when available.
- * No-op when `console.log` is not a "function".
- *
- * @api public
- */
-
-function log() {
-  // this hackery is required for IE8/9, where
-  // the `console.log` function doesn't have 'apply'
-  return 'object' === typeof console
-    && console.log
-    && Function.prototype.apply.call(console.log, console, arguments);
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  try {
-    if (null == namespaces) {
-      storage.removeItem('debug');
-    } else {
-      storage.debug = namespaces;
-    }
-  } catch(e) {}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  var r;
-  try {
-    r = storage.debug;
-  } catch(e) {}
-  return r;
-}
-
-/**
- * Enable namespaces listed in `localStorage.debug` initially.
- */
-
-exports.enable(load());
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage(){
-  try {
-    return window.localStorage;
-  } catch (e) {}
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/component.json
deleted file mode 100644 (file)
index 52ffd42..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "debug",
-  "repo": "visionmedia/debug",
-  "description": "small debugging utility",
-  "version": "2.1.3",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "main": "browser.js",
-  "scripts": [
-    "browser.js",
-    "debug.js"
-  ],
-  "dependencies": {
-    "rauchg/ms.js": "0.7.0"
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/debug.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/debug.js
deleted file mode 100644 (file)
index 7571a86..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = debug;
-exports.coerce = coerce;
-exports.disable = disable;
-exports.enable = enable;
-exports.enabled = enabled;
-exports.humanize = require('ms');
-
-/**
- * The currently active debug mode names, and names to skip.
- */
-
-exports.names = [];
-exports.skips = [];
-
-/**
- * Map of special "%n" handling functions, for the debug "format" argument.
- *
- * Valid key names are a single, lowercased letter, i.e. "n".
- */
-
-exports.formatters = {};
-
-/**
- * Previously assigned color.
- */
-
-var prevColor = 0;
-
-/**
- * Previous log timestamp.
- */
-
-var prevTime;
-
-/**
- * Select a color.
- *
- * @return {Number}
- * @api private
- */
-
-function selectColor() {
-  return exports.colors[prevColor++ % exports.colors.length];
-}
-
-/**
- * Create a debugger with the given `namespace`.
- *
- * @param {String} namespace
- * @return {Function}
- * @api public
- */
-
-function debug(namespace) {
-
-  // define the `disabled` version
-  function disabled() {
-  }
-  disabled.enabled = false;
-
-  // define the `enabled` version
-  function enabled() {
-
-    var self = enabled;
-
-    // set `diff` timestamp
-    var curr = +new Date();
-    var ms = curr - (prevTime || curr);
-    self.diff = ms;
-    self.prev = prevTime;
-    self.curr = curr;
-    prevTime = curr;
-
-    // add the `color` if not set
-    if (null == self.useColors) self.useColors = exports.useColors();
-    if (null == self.color && self.useColors) self.color = selectColor();
-
-    var args = Array.prototype.slice.call(arguments);
-
-    args[0] = exports.coerce(args[0]);
-
-    if ('string' !== typeof args[0]) {
-      // anything else let's inspect with %o
-      args = ['%o'].concat(args);
-    }
-
-    // apply any `formatters` transformations
-    var index = 0;
-    args[0] = args[0].replace(/%([a-z%])/g, function(match, format) {
-      // if we encounter an escaped % then don't increase the array index
-      if (match === '%%') return match;
-      index++;
-      var formatter = exports.formatters[format];
-      if ('function' === typeof formatter) {
-        var val = args[index];
-        match = formatter.call(self, val);
-
-        // now we need to remove `args[index]` since it's inlined in the `format`
-        args.splice(index, 1);
-        index--;
-      }
-      return match;
-    });
-
-    if ('function' === typeof exports.formatArgs) {
-      args = exports.formatArgs.apply(self, args);
-    }
-    var logFn = enabled.log || exports.log || console.log.bind(console);
-    logFn.apply(self, args);
-  }
-  enabled.enabled = true;
-
-  var fn = exports.enabled(namespace) ? enabled : disabled;
-
-  fn.namespace = namespace;
-
-  return fn;
-}
-
-/**
- * Enables a debug mode by namespaces. This can include modes
- * separated by a colon and wildcards.
- *
- * @param {String} namespaces
- * @api public
- */
-
-function enable(namespaces) {
-  exports.save(namespaces);
-
-  var split = (namespaces || '').split(/[\s,]+/);
-  var len = split.length;
-
-  for (var i = 0; i < len; i++) {
-    if (!split[i]) continue; // ignore empty strings
-    namespaces = split[i].replace(/\*/g, '.*?');
-    if (namespaces[0] === '-') {
-      exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
-    } else {
-      exports.names.push(new RegExp('^' + namespaces + '$'));
-    }
-  }
-}
-
-/**
- * Disable debug output.
- *
- * @api public
- */
-
-function disable() {
-  exports.enable('');
-}
-
-/**
- * Returns true if the given mode name is enabled, false otherwise.
- *
- * @param {String} name
- * @return {Boolean}
- * @api public
- */
-
-function enabled(name) {
-  var i, len;
-  for (i = 0, len = exports.skips.length; i < len; i++) {
-    if (exports.skips[i].test(name)) {
-      return false;
-    }
-  }
-  for (i = 0, len = exports.names.length; i < len; i++) {
-    if (exports.names[i].test(name)) {
-      return true;
-    }
-  }
-  return false;
-}
-
-/**
- * Coerce `val`.
- *
- * @param {Mixed} val
- * @return {Mixed}
- * @api private
- */
-
-function coerce(val) {
-  if (val instanceof Error) return val.stack || val.message;
-  return val;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node.js
deleted file mode 100644 (file)
index 1d392a8..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Module dependencies.
- */
-
-var tty = require('tty');
-var util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-/**
- * The file descriptor to write the `debug()` calls to.
- * Set the `DEBUG_FD` env variable to override with another value. i.e.:
- *
- *   $ DEBUG_FD=3 node script.js 3>debug.log
- */
-
-var fd = parseInt(process.env.DEBUG_FD, 10) || 2;
-var stream = 1 === fd ? process.stdout :
-             2 === fd ? process.stderr :
-             createWritableStdioStream(fd);
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
-  var debugColors = (process.env.DEBUG_COLORS || '').trim().toLowerCase();
-  if (0 === debugColors.length) {
-    return tty.isatty(fd);
-  } else {
-    return '0' !== debugColors
-        && 'no' !== debugColors
-        && 'false' !== debugColors
-        && 'disabled' !== debugColors;
-  }
-}
-
-/**
- * Map %o to `util.inspect()`, since Node doesn't do that out of the box.
- */
-
-var inspect = (4 === util.inspect.length ?
-  // node <= 0.8.x
-  function (v, colors) {
-    return util.inspect(v, void 0, void 0, colors);
-  } :
-  // node > 0.8.x
-  function (v, colors) {
-    return util.inspect(v, { colors: colors });
-  }
-);
-
-exports.formatters.o = function(v) {
-  return inspect(v, this.useColors)
-    .replace(/\s*\n\s*/g, ' ');
-};
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-  var name = this.namespace;
-
-  if (useColors) {
-    var c = this.color;
-
-    args[0] = '  \u001b[3' + c + ';1m' + name + ' '
-      + '\u001b[0m'
-      + args[0] + '\u001b[3' + c + 'm'
-      + ' +' + exports.humanize(this.diff) + '\u001b[0m';
-  } else {
-    args[0] = new Date().toUTCString()
-      + ' ' + name + ' ' + args[0];
-  }
-  return args;
-}
-
-/**
- * Invokes `console.error()` with the specified arguments.
- */
-
-function log() {
-  return stream.write(util.format.apply(this, arguments) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  if (null == namespaces) {
-    // If you set a process.env field to null or undefined, it gets cast to the
-    // string 'null' or 'undefined'. Just delete instead.
-    delete process.env.DEBUG;
-  } else {
-    process.env.DEBUG = namespaces;
-  }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  return process.env.DEBUG;
-}
-
-/**
- * Copied from `node/src/node.js`.
- *
- * XXX: It's lame that node doesn't expose this API out-of-the-box. It also
- * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame.
- */
-
-function createWritableStdioStream (fd) {
-  var stream;
-  var tty_wrap = process.binding('tty_wrap');
-
-  // Note stream._type is used for test-module-load-list.js
-
-  switch (tty_wrap.guessHandleType(fd)) {
-    case 'TTY':
-      stream = new tty.WriteStream(fd);
-      stream._type = 'tty';
-
-      // Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    case 'FILE':
-      var fs = require('fs');
-      stream = new fs.SyncWriteStream(fd, { autoClose: false });
-      stream._type = 'fs';
-      break;
-
-    case 'PIPE':
-    case 'TCP':
-      var net = require('net');
-      stream = new net.Socket({
-        fd: fd,
-        readable: false,
-        writable: true
-      });
-
-      // FIXME Should probably have an option in net.Socket to create a
-      // stream from an existing fd which is writable only. But for now
-      // we'll just add this hack and set the `readable` member to false.
-      // Test: ./node test/fixtures/echo.js < /etc/passwd
-      stream.readable = false;
-      stream.read = null;
-      stream._type = 'pipe';
-
-      // FIXME Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    default:
-      // Probably an error on in uv_guess_handle()
-      throw new Error('Implement me. Unknown stream file type!');
-  }
-
-  // For supporting legacy API we put the FD here.
-  stream.fd = fd;
-
-  stream._isStdio = true;
-
-  return stream;
-}
-
-/**
- * Enable namespaces listed in `process.env.DEBUG` initially.
- */
-
-exports.enable(load());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/.npmignore
deleted file mode 100644 (file)
index d1aa0ce..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-node_modules
-test
-History.md
-Makefile
-component.json
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/LICENSE
deleted file mode 100644 (file)
index 6c07561..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014 Guillermo Rauch <rauchg@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/README.md
deleted file mode 100644 (file)
index 0fd54fd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# ms.js: miliseconds conversion utility
-
-```js
-ms('2 days')  // 172800000
-ms('1d')      // 86400000
-ms('10h')     // 36000000
-ms('2.5 hrs') // 9000000
-ms('2h')      // 7200000
-ms('1m')      // 60000
-ms('5s')      // 5000
-ms('100')     // 100
-```
-
-```js
-ms(60000)             // "1m"
-ms(2 * 60000)         // "2m"
-ms(ms('10 hours'))    // "10h"
-```
-
-```js
-ms(60000, { long: true })             // "1 minute"
-ms(2 * 60000, { long: true })         // "2 minutes"
-ms(ms('10 hours'), { long: true })    // "10 hours"
-```
-
-- Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](nodejs.org/download).
-- If a number is supplied to `ms`, a string with a unit is returned.
-- If a string that contains the number is supplied, it returns it as
-a number (e.g: it returns `100` for `'100'`).
-- If you pass a string with a number and a valid unit, the number of
-equivalent ms is returned.
-
-## License
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/index.js
deleted file mode 100644 (file)
index e79bfa1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/**
- * Helpers.
- */
-
-var s = 1000;
-var m = s * 60;
-var h = m * 60;
-var d = h * 24;
-var y = d * 365.25;
-
-/**
- * Parse or format the given `val`.
- *
- * Options:
- *
- *  - `long` verbose formatting [false]
- *
- * @param {String|Number} val
- * @param {Object} options
- * @return {String|Number}
- * @api public
- */
-
-module.exports = function(val, options){
-  options = options || {};
-  if ('string' == typeof val) return parse(val);
-  return options.long
-    ? long(val)
-    : short(val);
-};
-
-/**
- * Parse the given `str` and return milliseconds.
- *
- * @param {String} str
- * @return {Number}
- * @api private
- */
-
-function parse(str) {
-  var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str);
-  if (!match) return;
-  var n = parseFloat(match[1]);
-  var type = (match[2] || 'ms').toLowerCase();
-  switch (type) {
-    case 'years':
-    case 'year':
-    case 'yrs':
-    case 'yr':
-    case 'y':
-      return n * y;
-    case 'days':
-    case 'day':
-    case 'd':
-      return n * d;
-    case 'hours':
-    case 'hour':
-    case 'hrs':
-    case 'hr':
-    case 'h':
-      return n * h;
-    case 'minutes':
-    case 'minute':
-    case 'mins':
-    case 'min':
-    case 'm':
-      return n * m;
-    case 'seconds':
-    case 'second':
-    case 'secs':
-    case 'sec':
-    case 's':
-      return n * s;
-    case 'milliseconds':
-    case 'millisecond':
-    case 'msecs':
-    case 'msec':
-    case 'ms':
-      return n;
-  }
-}
-
-/**
- * Short format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function short(ms) {
-  if (ms >= d) return Math.round(ms / d) + 'd';
-  if (ms >= h) return Math.round(ms / h) + 'h';
-  if (ms >= m) return Math.round(ms / m) + 'm';
-  if (ms >= s) return Math.round(ms / s) + 's';
-  return ms + 'ms';
-}
-
-/**
- * Long format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function long(ms) {
-  return plural(ms, d, 'day')
-    || plural(ms, h, 'hour')
-    || plural(ms, m, 'minute')
-    || plural(ms, s, 'second')
-    || ms + ' ms';
-}
-
-/**
- * Pluralization helper.
- */
-
-function plural(ms, n, name) {
-  if (ms < n) return;
-  if (ms < n * 1.5) return Math.floor(ms / n) + ' ' + name;
-  return Math.ceil(ms / n) + ' ' + name + 's';
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/node_modules/ms/package.json
deleted file mode 100644 (file)
index c962297..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-  "_args": [
-    [
-      "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_id": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-whitespace/debug/ms",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "name": "ms",
-    "escapedName": "ms",
-    "rawSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-whitespace/debug"
-  ],
-  "_spec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/guille/ms.js/issues"
-  },
-  "component": {
-    "scripts": {
-      "ms/index.js": "index.js"
-    }
-  },
-  "description": "Tiny ms conversion utility",
-  "devDependencies": {
-    "expect.js": "*",
-    "mocha": "*",
-    "serve": "*"
-  },
-  "homepage": "https://github.com/guille/ms.js#readme",
-  "main": "./index",
-  "name": "ms",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/guille/ms.js.git"
-  },
-  "version": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/debug/package.json
deleted file mode 100644 (file)
index 9b7b3f9..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-{
-  "_args": [
-    [
-      "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_id": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-whitespace/debug",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "name": "debug",
-    "escapedName": "debug",
-    "rawSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-whitespace"
-  ],
-  "_spec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "browser": "./browser.js",
-  "bugs": {
-    "url": "https://github.com/visionmedia/debug/issues"
-  },
-  "component": {
-    "scripts": {
-      "debug/index.js": "browser.js",
-      "debug/debug.js": "debug.js"
-    }
-  },
-  "contributors": [
-    {
-      "name": "Nathan Rajlich",
-      "email": "nathan@tootallnate.net",
-      "url": "http://n8.io"
-    }
-  ],
-  "dependencies": {
-    "ms": "0.7.0"
-  },
-  "description": "small debugging utility",
-  "devDependencies": {
-    "browserify": "9.0.3",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/visionmedia/debug#readme",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "license": "MIT",
-  "main": "./node.js",
-  "name": "debug",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "version": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/LICENSE
deleted file mode 100644 (file)
index 5a9956a..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014-2015, Jon Schlinkert.
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/README.md
deleted file mode 100644 (file)
index cee7d17..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-# repeat-string [![NPM version](https://badge.fury.io/js/repeat-string.svg)](http://badge.fury.io/js/repeat-string)  [![Build Status](https://travis-ci.org/jonschlinkert/repeat-string.svg)](https://travis-ci.org/jonschlinkert/repeat-string) 
-
-> Repeat the given string n times. Fastest implementation for repeating a string.
-
-## Install with [npm](npmjs.org)
-
-```bash
-npm i repeat-string --save
-```
-## Install with [bower](https://github.com/bower/bower)
-
-```bash
-bower install repeat-string --save
-```
-
-## Usage
-
-### [repeat](./index.js#L34)
-
-Repeat the given `string` the specified `number` of times.
-
-* `string` **{String}**: The string to repeat    
-* `number` **{Number}**: The number of times to repeat the string    
-* `returns` **{String}**: Repeated string  
-
-**Example:**
-
-```js
-var repeat = require('repeat-string');
-repeat('A', 5);
-//=> AAAAA
-```
-
-## Benchmarks
-
-Repeat string is significantly faster than [repeating](https://github.com/sindresorhus/repeating).
-
-```bash
-# 20,000x
-  repeat-string.js x 16,634,213 ops/sec ±0.92% (93 runs sampled)
-  repeating.js x 5,883,928 ops/sec ±0.95% (93 runs sampled)
-
-# 2,000x
-  repeat-string.js x 17,438,654 ops/sec ±0.76% (97 runs sampled)
-  repeating.js x 6,639,978 ops/sec ±0.84% (97 runs sampled)
-
-# 250x
-  repeat-string.js x 16,246,885 ops/sec ±0.81% (92 runs sampled)
-  repeating.js x 7,659,342 ops/sec ±0.67% (99 runs sampled)
-
-# 50x
-  repeat-string.js x 15,803,340 ops/sec ±0.74% (92 runs sampled)
-  repeating.js x 9,668,300 ops/sec ±0.89% (98 runs sampled)
-
-# 5x
-  repeat-string.js x 16,926,291 ops/sec ±0.78% (97 runs sampled)
-  repeating.js x 12,215,384 ops/sec ±1.01% (96 runs sampled)
-```
-
-**Run the benchmarks**
-
-Install dev dependencies:
-
-```bash
-npm i -d && node benchmark
-```
-
-### Other javascript/node.js utils
-[repeat-element](https://github.com/jonschlinkert/repeat-element): Create an array by repeating the given string n times.
-
-## Contributing
-Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/repeat-string/issues)
-
-## Running tests
-Install dev dependencies:
-
-```bash
-npm i -d && npm test
-```
-
-## Author
-
-**Jon Schlinkert**
-
-+ [github/jonschlinkert](https://github.com/jonschlinkert)
-+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) 
-
-## License
-Copyright (c) 2015 Jon Schlinkert  
-Released under the MIT license
-
-***
-
-_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on April 01, 2015._
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/index.js
deleted file mode 100644 (file)
index c781229..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*!
- * repeat-string <https://github.com/jonschlinkert/repeat-string>
- *
- * Copyright (c) 2014-2015, Jon Schlinkert.
- * Licensed under the MIT License.
- */
-
-'use strict';
-
-/**
- * Expose `repeat`
- */
-
-module.exports = repeat;
-
-/**
- * Repeat the given `string` the specified `number`
- * of times.
- *
- * **Example:**
- *
- * ```js
- * var repeat = require('repeat-string');
- * repeat('A', 5);
- * //=> AAAAA
- * ```
- *
- * @param {String} `string` The string to repeat
- * @param {Number} `number` The number of times to repeat the string
- * @return {String} Repeated string
- * @api public
- */
-
-function repeat(str, num) {
-  if (typeof str !== 'string') {
-    throw new TypeError('repeat-string expects a string.');
-  }
-
-  if (num === 1) return str;
-  if (num === 2) return str + str;
-
-  var max = str.length * num;
-  if (cache !== str || typeof cache === 'undefined') {
-    cache = str;
-    res = '';
-  }
-
-  while (max > res.length && num > 0) {
-    if (num & 1) {
-      res += str;
-    }
-
-    num >>= 1;
-    if (!num) break;
-    str += str;
-  }
-
-  return res.substr(0, max);
-}
-
-/**
- * Results cache
- */
-
-var res = '';
-var cache;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/node_modules/repeat-string/package.json
deleted file mode 100644 (file)
index 90f61f2..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-{
-  "_args": [
-    [
-      "repeat-string@https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "repeat-string@https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-  "_id": "repeat-string@https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-IQZfcHJ60FOg3V6VesngDHVg2Qo=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-whitespace/repeat-string",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "repeat-string@https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-    "name": "repeat-string",
-    "escapedName": "repeat-string",
-    "rawSpec": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole-whitespace"
-  ],
-  "_spec": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Jon Schlinkert",
-    "url": "http://github.com/jonschlinkert/"
-  },
-  "bugs": {
-    "url": "https://github.com/jonschlinkert/repeat-string/issues"
-  },
-  "description": "Repeat the given string n times. Fastest implementation for repeating a string.",
-  "devDependencies": {
-    "benchmarked": "^0.1.3",
-    "chalk": "^0.5.1",
-    "glob": "^4.3.5",
-    "mocha": "^2.2.1",
-    "repeating": "^1.1.1",
-    "should": "^4.0.4"
-  },
-  "engines": {
-    "node": ">=0.10"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/jonschlinkert/repeat-string",
-  "keywords": [
-    "fast",
-    "fastest",
-    "fill",
-    "left",
-    "left-pad",
-    "multiple",
-    "pad",
-    "padding",
-    "repetition",
-    "repeat",
-    "repeating",
-    "right",
-    "right-pad",
-    "string",
-    "times"
-  ],
-  "license": {
-    "type": "MIT",
-    "url": "https://github.com/jonschlinkert/repeat-string/blob/master/LICENSE"
-  },
-  "main": "index.js",
-  "name": "repeat-string",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/jonschlinkert/repeat-string.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.5.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole-whitespace/package.json
deleted file mode 100644 (file)
index bc8c64d..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole-whitespace@https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole-whitespace@https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-  "_id": "rocambole-whitespace@https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-YzMJSSVrKZQfWbGQRZ+ZnGsdO/k=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole-whitespace",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole-whitespace@https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-    "name": "rocambole-whitespace",
-    "escapedName": "rocambole-whitespace",
-    "rawSpec": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "contact@millermedeiros.com",
-    "url": "http://millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole-whitespace/issues"
-  },
-  "dependencies": {
-    "debug": "^2.1.3",
-    "repeat-string": "^1.5.0",
-    "rocambole-token": "^1.2.1"
-  },
-  "description": "helpers for rocambole AST whitespace manipulation",
-  "homepage": "https://github.com/millermedeiros/rocambole-whitespace",
-  "jshintConfig": {
-    "node": true,
-    "eqnull": true
-  },
-  "keywords": [
-    "esformatter",
-    "rocambole",
-    "whitespace",
-    "ast"
-  ],
-  "license": "MIT",
-  "main": "rocambole-whitespace.js",
-  "name": "rocambole-whitespace",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole-whitespace.git"
-  },
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "version": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/CHANGELOG.md
deleted file mode 100644 (file)
index 9a69da9..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-# Changelog
-
-## v0.6.0 (2015/03/30)
-
- - allow custom parser. (#27)
-
-## v0.5.1 (2015/03/19)
-
- - make it compatible with esprima@2.1 (don't loop through the same CatchClause
-  twice).
-
-## v0.5.0 (2015/02/25)
-
- - updated `esprima` to v2.0 because of ES6 features and to avoid `esprima-fb`
-   bug related to RegExp.
-
-## v0.4.0 (2014/07/14)
-
- - aliased `rocambole.recursive` as `rocambole.walk` to avoid confusions.
- - switched `esprima` dependency to `esprima-fb` because of ES6 features.
-
-## v0.3.6 (2014/06/23)
-
- - really handle sparse arrays (eg. `[,]`), fixes moonwalk. (#15)
-
-## v0.3.5 (2014/06/23)
-
- - handle sparse arrays (eg. `[,]`). (#15)
-
-## v0.3.4 (2014/06/23)
-
- - only add `BlockComment.originalIndent` if `WhiteSpace` is on the start of
-   a line.
-
-## v0.3.3 (2014/04/26)
-
- - add `toString` to empty programs AST (#16)
-
-## v0.3.2 (2014/01/17)
-
- - exports `BYPASS_RECURSION` (#8)
- - fix error if input is empty (#12)
- - support anything that implements `toString()` as input (#13)
-
-## v0.3.1 (2013/12/15)
-
- - fix `originalIndent` on `BlockComment` when prev token is not `WhiteSpace`.
-
-## v0.3.0 (2013/12/15)
-
- - add `originalIndent` to `BlockComment` (#11)
-
-## v0.2.3 (2013/01/08)
-
- - improve `rocambole.parse()` performance by 4500%. (#4)
- - improve `rocambole.moonwalk()` performance by 11000%.
-
-## v0.2.2 (2012/12/19)
-
- - fix consecutive comments before start of program. (#3)
-
-## v0.2.1 (2012/12/13)
-
- - fix `loc` info on `WhiteSpace` and `LineBreak` tokens. (#2)
-
-## v0.2.0 (2012/12/09)
-
- - Deprecated:
-   - `token.before()`
-   - `token.after()`
-   - `token.remove()`
-   - `node.getTokens()`
-   - `ast.nodes`
- - avoid recursion over comments.
- - fix weird bug on esformatter introduced on v0.1.1 related to `token._ast`
-   property.
-
-## v0.1.1 (2012/12/08)
-
- - Improve token manipulation methods behavior (`before`, `after`, `remove`)
-
-## v0.1.0 (2012/12/06)
-
- - Initial release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/ChangeLog b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/ChangeLog
deleted file mode 100644 (file)
index 72d64b5..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-2015-04-17: Version 2.2.0
-
-      * Support ES6 import and export declarations (issue 1000)
-      * Fix line terminator before arrow not recognized as error (issue 1009)
-      * Support ES6 destructuring (issue 1045)
-      * Support ES6 template literal (issue 1074)
-      * Fix the handling of invalid/incomplete string escape sequences (issue 1106)
-      * Fix ES3 static member access restriction (issue 1120)
-      * Support for `super` in ES6 class (issue 1147)
-
-2015-03-09: Version 2.1.0
-
-      * Support ES6 class (issue 1001)
-      * Support ES6 rest parameter (issue 1011)
-      * Expand the location of property getter, setter, and methods (issue 1029)
-      * Enable TryStatement transition to a single handler (issue 1031)
-      * Support ES6 computed property name (issue 1037)
-      * Tolerate unclosed block comment (issue 1041)
-      * Support ES6 lexical declaration (issue 1065)
-
-2015-02-06: Version 2.0.0
-
-      * Support ES6 arrow function (issue 517)
-      * Support ES6 Unicode code point escape (issue 521)
-      * Improve the speed and accuracy of comment attachment (issue 522)
-      * Support ES6 default parameter (issue 519)
-      * Support ES6 regular expression flags (issue 557)
-      * Fix scanning of implicit octal literals (issue 565)
-      * Fix the handling of automatic semicolon insertion (issue 574)
-      * Support ES6 method definition (issue 620)
-      * Support ES6 octal integer literal (issue 621)
-      * Support ES6 binary integer literal (issue 622)
-      * Support ES6 object literal property value shorthand (issue 624)
-
-2015-03-03: Version 1.2.5
-
-      * Fix scanning of implicit octal literals (issue 565)
-
-2015-02-05: Version 1.2.4
-
-      * Fix parsing of LeftHandSideExpression in ForInStatement (issue 560)
-      * Fix the handling of automatic semicolon insertion (issue 574)
-
-2015-01-18: Version 1.2.3
-
-      * Fix division by this (issue 616)
-
-2014-05-18: Version 1.2.2
-
-      * Fix duplicated tokens when collecting comments (issue 537)
-
-2014-05-04: Version 1.2.1
-
-      * Ensure that Program node may still have leading comments (issue 536)
-
-2014-04-29: Version 1.2.0
-
-      * Fix semicolon handling for expression statement (issue 462, 533)
-      * Disallow escaped characters in regular expression flags (issue 503)
-      * Performance improvement for location tracking (issue 520)
-      * Improve the speed of comment attachment (issue 522)
-
-2014-03-26: Version 1.1.1
-
-      * Fix token handling of forward slash after an array literal (issue 512)
-
-2014-03-23: Version 1.1.0
-
-      * Optionally attach comments to the owning syntax nodes (issue 197)
-      * Simplify binary parsing with stack-based shift reduce (issue 352)
-      * Always include the raw source of literals (issue 376)
-      * Add optional input source information (issue 386)
-      * Tokenizer API for pure lexical scanning (issue 398)
-      * Improve the web site and its online demos (issue 337, 400, 404)
-      * Performance improvement for location tracking (issue 417, 424)
-      * Support HTML comment syntax (issue 451)
-      * Drop support for legacy browsers (issue 474)
-
-2013-08-27: Version 1.0.4
-
-      * Minimize the payload for packages (issue 362)
-      * Fix missing cases on an empty switch statement (issue 436)
-      * Support escaped ] in regexp literal character classes (issue 442)
-      * Tolerate invalid left-hand side expression (issue 130)
-
-2013-05-17: Version 1.0.3
-
-      * Variable declaration needs at least one declarator (issue 391)
-      * Fix benchmark's variance unit conversion (issue 397)
-      * IE < 9: \v should be treated as vertical tab (issue 405)
-      * Unary expressions should always have prefix: true (issue 418)
-      * Catch clause should only accept an identifier (issue 423)
-      * Tolerate setters without parameter (issue 426)
-
-2012-11-02: Version 1.0.2
-
-    Improvement:
-
-      * Fix esvalidate JUnit output upon a syntax error (issue 374)
-
-2012-10-28: Version 1.0.1
-
-    Improvements:
-
-      * esvalidate understands shebang in a Unix shell script (issue 361)
-      * esvalidate treats fatal parsing failure as an error (issue 361)
-      * Reduce Node.js package via .npmignore (issue 362)
-
-2012-10-22: Version 1.0.0
-
-    Initial release.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/LICENSE.BSD b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/LICENSE.BSD
deleted file mode 100644 (file)
index 3e580c3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-  * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
-  * Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the
-    documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/README.md
deleted file mode 100644 (file)
index 9ba7c0f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-**Esprima** ([esprima.org](http://esprima.org), BSD license) is a high performance,
-standard-compliant [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
-parser written in ECMAScript (also popularly known as
-[JavaScript](https://en.wikipedia.org/wiki/JavaScript).
-Esprima is created and maintained by [Ariya Hidayat](https://twitter.com/ariyahidayat),
-with the help of [many contributors](https://github.com/jquery/esprima/contributors).
-
-### Features
-
-- Full support for ECMAScript 5.1 ([ECMA-262](http://www.ecma-international.org/publications/standards/Ecma-262.htm))
-- Sensible [syntax tree format](https://github.com/estree/estree/blob/master/spec.md) as standardized by [EStree project](https://github.com/estree/estree)
-- Optional tracking of syntax node location (index-based and line-column)
-- Heavily tested (~1000 [unit tests](https://github.com/jquery/esprima/tree/master/test/fixtures) with [full code coverage](https://travis-ci.org/jquery/esprima))
-- [Partial support](https://github.com/jquery/esprima/issues/1099) for ECMAScript 6
-
-Esprima serves as a **building block** for some JavaScript
-language tools, from [code instrumentation](http://esprima.org/demo/functiontrace.html)
-to [editor autocompletion](http://esprima.org/demo/autocomplete.html).
-
-Esprima runs on many popular web browsers, as well as other ECMAScript platforms such as
-[Rhino](http://www.mozilla.org/rhino), [Nashorn](http://openjdk.java.net/projects/nashorn/), and [Node.js](https://npmjs.org/package/esprima).
-
-For more information, check the web site [esprima.org](http://esprima.org).
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esparse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esparse.js
deleted file mode 100755 (executable)
index 5603666..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true node:true rhino:true */
-
-var fs, esprima, fname, content, options, syntax;
-
-if (typeof require === 'function') {
-    fs = require('fs');
-    esprima = require('esprima');
-} else if (typeof load === 'function') {
-    try {
-        load('esprima.js');
-    } catch (e) {
-        load('../esprima.js');
-    }
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esparse.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esparse [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --comment      Gather all line and block comments in an array');
-    console.log('  --loc          Include line-column location info for each syntax node');
-    console.log('  --range        Include index-based range for each syntax node');
-    console.log('  --raw          Display the raw value of literals');
-    console.log('  --tokens       List all tokens in an array');
-    console.log('  --tolerant     Tolerate errors on a best-effort basis (experimental)');
-    console.log('  -v, --version  Shows program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {};
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Parser (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry === '--comment') {
-        options.comment = true;
-    } else if (entry === '--loc') {
-        options.loc = true;
-    } else if (entry === '--range') {
-        options.range = true;
-    } else if (entry === '--raw') {
-        options.raw = true;
-    } else if (entry === '--tokens') {
-        options.tokens = true;
-    } else if (entry === '--tolerant') {
-        options.tolerant = true;
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else if (typeof fname === 'string') {
-        console.log('Error: more than one input file.');
-        process.exit(1);
-    } else {
-        fname = entry;
-    }
-});
-
-if (typeof fname !== 'string') {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-// Special handling for regular expression literal since we need to
-// convert it to a string literal, otherwise it will be decoded
-// as object "{}" and the regular expression would be lost.
-function adjustRegexLiteral(key, value) {
-    if (key === 'value' && value instanceof RegExp) {
-        value = value.toString();
-    }
-    return value;
-}
-
-try {
-    content = fs.readFileSync(fname, 'utf-8');
-    syntax = esprima.parse(content, options);
-    console.log(JSON.stringify(syntax, adjustRegexLiteral, 4));
-} catch (e) {
-    console.log('Error: ' + e.message);
-    process.exit(1);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js
deleted file mode 100755 (executable)
index dddd8a2..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true plusplus:true node:true rhino:true */
-/*global phantom:true */
-
-var fs, system, esprima, options, fnames, count;
-
-if (typeof esprima === 'undefined') {
-    // PhantomJS can only require() relative files
-    if (typeof phantom === 'object') {
-        fs = require('fs');
-        system = require('system');
-        esprima = require('./esprima');
-    } else if (typeof require === 'function') {
-        fs = require('fs');
-        esprima = require('esprima');
-    } else if (typeof load === 'function') {
-        try {
-            load('esprima.js');
-        } catch (e) {
-            load('../esprima.js');
-        }
-    }
-}
-
-// Shims to Node.js objects when running under PhantomJS 1.7+.
-if (typeof phantom === 'object') {
-    fs.readFileSync = fs.read;
-    process = {
-        argv: [].slice.call(system.args),
-        exit: phantom.exit
-    };
-    process.argv.unshift('phantomjs');
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esvalidate.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esvalidate [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --format=type  Set the report format, plain (default) or junit');
-    console.log('  -v, --version  Print program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {
-    format: 'plain'
-};
-
-fnames = [];
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Validator (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry.slice(0, 9) === '--format=') {
-        options.format = entry.slice(9);
-        if (options.format !== 'plain' && options.format !== 'junit') {
-            console.log('Error: unknown report format ' + options.format + '.');
-            process.exit(1);
-        }
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else {
-        fnames.push(entry);
-    }
-});
-
-if (fnames.length === 0) {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-if (options.format === 'junit') {
-    console.log('<?xml version="1.0" encoding="UTF-8"?>');
-    console.log('<testsuites>');
-}
-
-count = 0;
-fnames.forEach(function (fname) {
-    var content, timestamp, syntax, name;
-    try {
-        content = fs.readFileSync(fname, 'utf-8');
-
-        if (content[0] === '#' && content[1] === '!') {
-            content = '//' + content.substr(2, content.length);
-        }
-
-        timestamp = Date.now();
-        syntax = esprima.parse(content, { tolerant: true });
-
-        if (options.format === 'junit') {
-
-            name = fname;
-            if (name.lastIndexOf('/') >= 0) {
-                name = name.slice(name.lastIndexOf('/') + 1);
-            }
-
-            console.log('<testsuite name="' + fname + '" errors="0" ' +
-                ' failures="' + syntax.errors.length + '" ' +
-                ' tests="' + syntax.errors.length + '" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) +
-                '">');
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                console.log('  <testcase name="Line ' + error.lineNumber + ': ' + msg + '" ' +
-                    ' time="0">');
-                console.log('    <error type="SyntaxError" message="' + error.message + '">' +
-                    error.message + '(' + name + ':' + error.lineNumber + ')' +
-                    '</error>');
-                console.log('  </testcase>');
-            });
-
-            console.log('</testsuite>');
-
-        } else if (options.format === 'plain') {
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                msg = fname + ':' + error.lineNumber + ': ' + msg;
-                console.log(msg);
-                ++count;
-            });
-
-        }
-    } catch (e) {
-        ++count;
-        if (options.format === 'junit') {
-            console.log('<testsuite name="' + fname + '" errors="1" failures="0" tests="1" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) + '">');
-            console.log(' <testcase name="' + e.message + '" ' + ' time="0">');
-            console.log(' <error type="ParseError" message="' + e.message + '">' +
-                e.message + '(' + fname + ((e.lineNumber) ? ':' + e.lineNumber : '') +
-                ')</error>');
-            console.log(' </testcase>');
-            console.log('</testsuite>');
-        } else {
-            console.log('Error: ' + e.message);
-        }
-    }
-});
-
-if (options.format === 'junit') {
-    console.log('</testsuites>');
-}
-
-if (count > 0) {
-    process.exit(1);
-}
-
-if (count === 0 && typeof phantom === 'object') {
-    process.exit(0);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/esprima.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/esprima.js
deleted file mode 100644 (file)
index 2d7fc11..0000000
+++ /dev/null
@@ -1,5321 +0,0 @@
-/*
-  Copyright (C) 2013 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2013 Thaddee Tyl <thaddee.tyl@gmail.com>
-  Copyright (C) 2013 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Kris Kowal <kris.kowal@cixar.com>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-(function (root, factory) {
-    'use strict';
-
-    // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js,
-    // Rhino, and plain browser loading.
-
-    /* istanbul ignore next */
-    if (typeof define === 'function' && define.amd) {
-        define(['exports'], factory);
-    } else if (typeof exports !== 'undefined') {
-        factory(exports);
-    } else {
-        factory((root.esprima = {}));
-    }
-}(this, function (exports) {
-    'use strict';
-
-    var Token,
-        TokenName,
-        FnExprTokens,
-        Syntax,
-        PlaceHolders,
-        Messages,
-        Regex,
-        source,
-        strict,
-        sourceType,
-        index,
-        lineNumber,
-        lineStart,
-        hasLineTerminator,
-        lastIndex,
-        lastLineNumber,
-        lastLineStart,
-        startIndex,
-        startLineNumber,
-        startLineStart,
-        scanning,
-        length,
-        lookahead,
-        state,
-        extra,
-        isBindingElement,
-        isAssignmentTarget,
-        firstCoverInitializedNameError;
-
-    Token = {
-        BooleanLiteral: 1,
-        EOF: 2,
-        Identifier: 3,
-        Keyword: 4,
-        NullLiteral: 5,
-        NumericLiteral: 6,
-        Punctuator: 7,
-        StringLiteral: 8,
-        RegularExpression: 9,
-        Template: 10
-    };
-
-    TokenName = {};
-    TokenName[Token.BooleanLiteral] = 'Boolean';
-    TokenName[Token.EOF] = '<end>';
-    TokenName[Token.Identifier] = 'Identifier';
-    TokenName[Token.Keyword] = 'Keyword';
-    TokenName[Token.NullLiteral] = 'Null';
-    TokenName[Token.NumericLiteral] = 'Numeric';
-    TokenName[Token.Punctuator] = 'Punctuator';
-    TokenName[Token.StringLiteral] = 'String';
-    TokenName[Token.RegularExpression] = 'RegularExpression';
-    TokenName[Token.Template] = 'Template';
-
-    // A function following one of those tokens is an expression.
-    FnExprTokens = ['(', '{', '[', 'in', 'typeof', 'instanceof', 'new',
-                    'return', 'case', 'delete', 'throw', 'void',
-                    // assignment operators
-                    '=', '+=', '-=', '*=', '/=', '%=', '<<=', '>>=', '>>>=',
-                    '&=', '|=', '^=', ',',
-                    // binary/unary operators
-                    '+', '-', '*', '/', '%', '++', '--', '<<', '>>', '>>>', '&',
-                    '|', '^', '!', '~', '&&', '||', '?', ':', '===', '==', '>=',
-                    '<=', '<', '>', '!=', '!=='];
-
-    Syntax = {
-        AssignmentExpression: 'AssignmentExpression',
-        AssignmentPattern: 'AssignmentPattern',
-        ArrayExpression: 'ArrayExpression',
-        ArrayPattern: 'ArrayPattern',
-        ArrowFunctionExpression: 'ArrowFunctionExpression',
-        BlockStatement: 'BlockStatement',
-        BinaryExpression: 'BinaryExpression',
-        BreakStatement: 'BreakStatement',
-        CallExpression: 'CallExpression',
-        CatchClause: 'CatchClause',
-        ClassBody: 'ClassBody',
-        ClassDeclaration: 'ClassDeclaration',
-        ClassExpression: 'ClassExpression',
-        ConditionalExpression: 'ConditionalExpression',
-        ContinueStatement: 'ContinueStatement',
-        DoWhileStatement: 'DoWhileStatement',
-        DebuggerStatement: 'DebuggerStatement',
-        EmptyStatement: 'EmptyStatement',
-        ExportAllDeclaration: 'ExportAllDeclaration',
-        ExportDefaultDeclaration: 'ExportDefaultDeclaration',
-        ExportNamedDeclaration: 'ExportNamedDeclaration',
-        ExportSpecifier: 'ExportSpecifier',
-        ExpressionStatement: 'ExpressionStatement',
-        ForStatement: 'ForStatement',
-        ForInStatement: 'ForInStatement',
-        FunctionDeclaration: 'FunctionDeclaration',
-        FunctionExpression: 'FunctionExpression',
-        Identifier: 'Identifier',
-        IfStatement: 'IfStatement',
-        ImportDeclaration: 'ImportDeclaration',
-        ImportDefaultSpecifier: 'ImportDefaultSpecifier',
-        ImportNamespaceSpecifier: 'ImportNamespaceSpecifier',
-        ImportSpecifier: 'ImportSpecifier',
-        Literal: 'Literal',
-        LabeledStatement: 'LabeledStatement',
-        LogicalExpression: 'LogicalExpression',
-        MemberExpression: 'MemberExpression',
-        MethodDefinition: 'MethodDefinition',
-        NewExpression: 'NewExpression',
-        ObjectExpression: 'ObjectExpression',
-        ObjectPattern: 'ObjectPattern',
-        Program: 'Program',
-        Property: 'Property',
-        RestElement: 'RestElement',
-        ReturnStatement: 'ReturnStatement',
-        SequenceExpression: 'SequenceExpression',
-        SpreadElement: 'SpreadElement',
-        Super: 'Super',
-        SwitchCase: 'SwitchCase',
-        SwitchStatement: 'SwitchStatement',
-        TaggedTemplateExpression: 'TaggedTemplateExpression',
-        TemplateElement: 'TemplateElement',
-        TemplateLiteral: 'TemplateLiteral',
-        ThisExpression: 'ThisExpression',
-        ThrowStatement: 'ThrowStatement',
-        TryStatement: 'TryStatement',
-        UnaryExpression: 'UnaryExpression',
-        UpdateExpression: 'UpdateExpression',
-        VariableDeclaration: 'VariableDeclaration',
-        VariableDeclarator: 'VariableDeclarator',
-        WhileStatement: 'WhileStatement',
-        WithStatement: 'WithStatement'
-    };
-
-    PlaceHolders = {
-        ArrowParameterPlaceHolder: 'ArrowParameterPlaceHolder'
-    };
-
-    // Error messages should be identical to V8.
-    Messages = {
-        UnexpectedToken: 'Unexpected token %0',
-        UnexpectedNumber: 'Unexpected number',
-        UnexpectedString: 'Unexpected string',
-        UnexpectedIdentifier: 'Unexpected identifier',
-        UnexpectedReserved: 'Unexpected reserved word',
-        UnexpectedTemplate: 'Unexpected quasi %0',
-        UnexpectedEOS: 'Unexpected end of input',
-        NewlineAfterThrow: 'Illegal newline after throw',
-        InvalidRegExp: 'Invalid regular expression',
-        UnterminatedRegExp: 'Invalid regular expression: missing /',
-        InvalidLHSInAssignment: 'Invalid left-hand side in assignment',
-        InvalidLHSInForIn: 'Invalid left-hand side in for-in',
-        MultipleDefaultsInSwitch: 'More than one default clause in switch statement',
-        NoCatchOrFinally: 'Missing catch or finally after try',
-        UnknownLabel: 'Undefined label \'%0\'',
-        Redeclaration: '%0 \'%1\' has already been declared',
-        IllegalContinue: 'Illegal continue statement',
-        IllegalBreak: 'Illegal break statement',
-        IllegalReturn: 'Illegal return statement',
-        StrictModeWith: 'Strict mode code may not include a with statement',
-        StrictCatchVariable: 'Catch variable may not be eval or arguments in strict mode',
-        StrictVarName: 'Variable name may not be eval or arguments in strict mode',
-        StrictParamName: 'Parameter name eval or arguments is not allowed in strict mode',
-        StrictParamDupe: 'Strict mode function may not have duplicate parameter names',
-        StrictFunctionName: 'Function name may not be eval or arguments in strict mode',
-        StrictOctalLiteral: 'Octal literals are not allowed in strict mode.',
-        StrictDelete: 'Delete of an unqualified identifier in strict mode.',
-        StrictLHSAssignment: 'Assignment to eval or arguments is not allowed in strict mode',
-        StrictLHSPostfix: 'Postfix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictLHSPrefix: 'Prefix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictReservedWord: 'Use of future reserved word in strict mode',
-        TemplateOctalLiteral: 'Octal literals are not allowed in template strings.',
-        ParameterAfterRestParameter: 'Rest parameter must be last formal parameter',
-        DefaultRestParameter: 'Unexpected token =',
-        ObjectPatternAsRestParameter: 'Unexpected token {',
-        DuplicateProtoProperty: 'Duplicate __proto__ fields are not allowed in object literals',
-        ConstructorSpecialMethod: 'Class constructor may not be an accessor',
-        DuplicateConstructor: 'A class may only have one constructor',
-        StaticPrototype: 'Classes may not have static property named prototype',
-        MissingFromClause: 'Unexpected token',
-        NoAsAfterImportNamespace: 'Unexpected token',
-        InvalidModuleSpecifier: 'Unexpected token',
-        IllegalImportDeclaration: 'Unexpected token',
-        IllegalExportDeclaration: 'Unexpected token'
-    };
-
-    // See also tools/generate-unicode-regex.py.
-    Regex = {
-        NonAsciiIdentifierStart: new RegExp('[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B2\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]'),
-        NonAsciiIdentifierPart: new RegExp('[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B2\u08E4-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2D\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]')
-    };
-
-    // Ensure the condition is true, otherwise throw an error.
-    // This is only to have a better contract semantic, i.e. another safety net
-    // to catch a logic error. The condition shall be fulfilled in normal case.
-    // Do NOT use this to enforce a certain condition on any user input.
-
-    function assert(condition, message) {
-        /* istanbul ignore if */
-        if (!condition) {
-            throw new Error('ASSERT: ' + message);
-        }
-    }
-
-    function isDecimalDigit(ch) {
-        return (ch >= 0x30 && ch <= 0x39);   // 0..9
-    }
-
-    function isHexDigit(ch) {
-        return '0123456789abcdefABCDEF'.indexOf(ch) >= 0;
-    }
-
-    function isOctalDigit(ch) {
-        return '01234567'.indexOf(ch) >= 0;
-    }
-
-    function octalToDecimal(ch) {
-        // \0 is not octal escape sequence
-        var octal = (ch !== '0'), code = '01234567'.indexOf(ch);
-
-        if (index < length && isOctalDigit(source[index])) {
-            octal = true;
-            code = code * 8 + '01234567'.indexOf(source[index++]);
-
-            // 3 digits are only allowed when string starts
-            // with 0, 1, 2, 3
-            if ('0123'.indexOf(ch) >= 0 &&
-                    index < length &&
-                    isOctalDigit(source[index])) {
-                code = code * 8 + '01234567'.indexOf(source[index++]);
-            }
-        }
-
-        return {
-            code: code,
-            octal: octal
-        };
-    }
-
-    // 7.2 White Space
-
-    function isWhiteSpace(ch) {
-        return (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||
-            (ch >= 0x1680 && [0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF].indexOf(ch) >= 0);
-    }
-
-    // 7.3 Line Terminators
-
-    function isLineTerminator(ch) {
-        return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029);
-    }
-
-    // 7.6 Identifier Names and Identifiers
-
-    function isIdentifierStart(ch) {
-        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
-            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
-            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
-            (ch === 0x5C) ||                      // \ (backslash)
-            ((ch >= 0x80) && Regex.NonAsciiIdentifierStart.test(String.fromCharCode(ch)));
-    }
-
-    function isIdentifierPart(ch) {
-        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
-            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
-            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
-            (ch >= 0x30 && ch <= 0x39) ||         // 0..9
-            (ch === 0x5C) ||                      // \ (backslash)
-            ((ch >= 0x80) && Regex.NonAsciiIdentifierPart.test(String.fromCharCode(ch)));
-    }
-
-    // 7.6.1.2 Future Reserved Words
-
-    function isFutureReservedWord(id) {
-        switch (id) {
-        case 'enum':
-        case 'export':
-        case 'import':
-        case 'super':
-            return true;
-        default:
-            return false;
-        }
-    }
-
-    // 11.6.2.2 Future Reserved Words
-
-    function isStrictModeReservedWord(id) {
-        switch (id) {
-        case 'implements':
-        case 'interface':
-        case 'package':
-        case 'private':
-        case 'protected':
-        case 'public':
-        case 'static':
-        case 'yield':
-        case 'let':
-            return true;
-        default:
-            return false;
-        }
-    }
-
-    function isRestrictedWord(id) {
-        return id === 'eval' || id === 'arguments';
-    }
-
-    // 7.6.1.1 Keywords
-
-    function isKeyword(id) {
-
-        // 'const' is specialized as Keyword in V8.
-        // 'yield' and 'let' are for compatibility with SpiderMonkey and ES.next.
-        // Some others are from future reserved words.
-
-        switch (id.length) {
-        case 2:
-            return (id === 'if') || (id === 'in') || (id === 'do');
-        case 3:
-            return (id === 'var') || (id === 'for') || (id === 'new') ||
-                (id === 'try') || (id === 'let');
-        case 4:
-            return (id === 'this') || (id === 'else') || (id === 'case') ||
-                (id === 'void') || (id === 'with') || (id === 'enum');
-        case 5:
-            return (id === 'while') || (id === 'break') || (id === 'catch') ||
-                (id === 'throw') || (id === 'const') || (id === 'yield') ||
-                (id === 'class') || (id === 'super');
-        case 6:
-            return (id === 'return') || (id === 'typeof') || (id === 'delete') ||
-                (id === 'switch') || (id === 'export') || (id === 'import');
-        case 7:
-            return (id === 'default') || (id === 'finally') || (id === 'extends');
-        case 8:
-            return (id === 'function') || (id === 'continue') || (id === 'debugger');
-        case 10:
-            return (id === 'instanceof');
-        default:
-            return false;
-        }
-    }
-
-    // 7.4 Comments
-
-    function addComment(type, value, start, end, loc) {
-        var comment;
-
-        assert(typeof start === 'number', 'Comment must have valid position');
-
-        state.lastCommentStart = start;
-
-        comment = {
-            type: type,
-            value: value
-        };
-        if (extra.range) {
-            comment.range = [start, end];
-        }
-        if (extra.loc) {
-            comment.loc = loc;
-        }
-        extra.comments.push(comment);
-        if (extra.attachComment) {
-            extra.leadingComments.push(comment);
-            extra.trailingComments.push(comment);
-        }
-    }
-
-    function skipSingleLineComment(offset) {
-        var start, loc, ch, comment;
-
-        start = index - offset;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart - offset
-            }
-        };
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            ++index;
-            if (isLineTerminator(ch)) {
-                hasLineTerminator = true;
-                if (extra.comments) {
-                    comment = source.slice(start + offset, index - 1);
-                    loc.end = {
-                        line: lineNumber,
-                        column: index - lineStart - 1
-                    };
-                    addComment('Line', comment, start, index - 1, loc);
-                }
-                if (ch === 13 && source.charCodeAt(index) === 10) {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-                return;
-            }
-        }
-
-        if (extra.comments) {
-            comment = source.slice(start + offset, index);
-            loc.end = {
-                line: lineNumber,
-                column: index - lineStart
-            };
-            addComment('Line', comment, start, index, loc);
-        }
-    }
-
-    function skipMultiLineComment() {
-        var start, loc, ch, comment;
-
-        if (extra.comments) {
-            start = index - 2;
-            loc = {
-                start: {
-                    line: lineNumber,
-                    column: index - lineStart - 2
-                }
-            };
-        }
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (isLineTerminator(ch)) {
-                if (ch === 0x0D && source.charCodeAt(index + 1) === 0x0A) {
-                    ++index;
-                }
-                hasLineTerminator = true;
-                ++lineNumber;
-                ++index;
-                lineStart = index;
-            } else if (ch === 0x2A) {
-                // Block comment ends with '*/'.
-                if (source.charCodeAt(index + 1) === 0x2F) {
-                    ++index;
-                    ++index;
-                    if (extra.comments) {
-                        comment = source.slice(start + 2, index - 2);
-                        loc.end = {
-                            line: lineNumber,
-                            column: index - lineStart
-                        };
-                        addComment('Block', comment, start, index, loc);
-                    }
-                    return;
-                }
-                ++index;
-            } else {
-                ++index;
-            }
-        }
-
-        // Ran off the end of the file - the whole thing is a comment
-        if (extra.comments) {
-            loc.end = {
-                line: lineNumber,
-                column: index - lineStart
-            };
-            comment = source.slice(start + 2, index);
-            addComment('Block', comment, start, index, loc);
-        }
-        tolerateUnexpectedToken();
-    }
-
-    function skipComment() {
-        var ch, start;
-        hasLineTerminator = false;
-
-        start = (index === 0);
-        while (index < length) {
-            ch = source.charCodeAt(index);
-
-            if (isWhiteSpace(ch)) {
-                ++index;
-            } else if (isLineTerminator(ch)) {
-                hasLineTerminator = true;
-                ++index;
-                if (ch === 0x0D && source.charCodeAt(index) === 0x0A) {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-                start = true;
-            } else if (ch === 0x2F) { // U+002F is '/'
-                ch = source.charCodeAt(index + 1);
-                if (ch === 0x2F) {
-                    ++index;
-                    ++index;
-                    skipSingleLineComment(2);
-                    start = true;
-                } else if (ch === 0x2A) {  // U+002A is '*'
-                    ++index;
-                    ++index;
-                    skipMultiLineComment();
-                } else {
-                    break;
-                }
-            } else if (start && ch === 0x2D) { // U+002D is '-'
-                // U+003E is '>'
-                if ((source.charCodeAt(index + 1) === 0x2D) && (source.charCodeAt(index + 2) === 0x3E)) {
-                    // '-->' is a single-line comment
-                    index += 3;
-                    skipSingleLineComment(3);
-                } else {
-                    break;
-                }
-            } else if (ch === 0x3C) { // U+003C is '<'
-                if (source.slice(index + 1, index + 4) === '!--') {
-                    ++index; // `<`
-                    ++index; // `!`
-                    ++index; // `-`
-                    ++index; // `-`
-                    skipSingleLineComment(4);
-                } else {
-                    break;
-                }
-            } else {
-                break;
-            }
-        }
-    }
-
-    function scanHexEscape(prefix) {
-        var i, len, ch, code = 0;
-
-        len = (prefix === 'u') ? 4 : 2;
-        for (i = 0; i < len; ++i) {
-            if (index < length && isHexDigit(source[index])) {
-                ch = source[index++];
-                code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
-            } else {
-                return '';
-            }
-        }
-        return String.fromCharCode(code);
-    }
-
-    function scanUnicodeCodePointEscape() {
-        var ch, code, cu1, cu2;
-
-        ch = source[index];
-        code = 0;
-
-        // At least, one hex digit is required.
-        if (ch === '}') {
-            throwUnexpectedToken();
-        }
-
-        while (index < length) {
-            ch = source[index++];
-            if (!isHexDigit(ch)) {
-                break;
-            }
-            code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
-        }
-
-        if (code > 0x10FFFF || ch !== '}') {
-            throwUnexpectedToken();
-        }
-
-        // UTF-16 Encoding
-        if (code <= 0xFFFF) {
-            return String.fromCharCode(code);
-        }
-        cu1 = ((code - 0x10000) >> 10) + 0xD800;
-        cu2 = ((code - 0x10000) & 1023) + 0xDC00;
-        return String.fromCharCode(cu1, cu2);
-    }
-
-    function getEscapedIdentifier() {
-        var ch, id;
-
-        ch = source.charCodeAt(index++);
-        id = String.fromCharCode(ch);
-
-        // '\u' (U+005C, U+0075) denotes an escaped character.
-        if (ch === 0x5C) {
-            if (source.charCodeAt(index) !== 0x75) {
-                throwUnexpectedToken();
-            }
-            ++index;
-            ch = scanHexEscape('u');
-            if (!ch || ch === '\\' || !isIdentifierStart(ch.charCodeAt(0))) {
-                throwUnexpectedToken();
-            }
-            id = ch;
-        }
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (!isIdentifierPart(ch)) {
-                break;
-            }
-            ++index;
-            id += String.fromCharCode(ch);
-
-            // '\u' (U+005C, U+0075) denotes an escaped character.
-            if (ch === 0x5C) {
-                id = id.substr(0, id.length - 1);
-                if (source.charCodeAt(index) !== 0x75) {
-                    throwUnexpectedToken();
-                }
-                ++index;
-                ch = scanHexEscape('u');
-                if (!ch || ch === '\\' || !isIdentifierPart(ch.charCodeAt(0))) {
-                    throwUnexpectedToken();
-                }
-                id += ch;
-            }
-        }
-
-        return id;
-    }
-
-    function getIdentifier() {
-        var start, ch;
-
-        start = index++;
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (ch === 0x5C) {
-                // Blackslash (U+005C) marks Unicode escape sequence.
-                index = start;
-                return getEscapedIdentifier();
-            }
-            if (isIdentifierPart(ch)) {
-                ++index;
-            } else {
-                break;
-            }
-        }
-
-        return source.slice(start, index);
-    }
-
-    function scanIdentifier() {
-        var start, id, type;
-
-        start = index;
-
-        // Backslash (U+005C) starts an escaped character.
-        id = (source.charCodeAt(index) === 0x5C) ? getEscapedIdentifier() : getIdentifier();
-
-        // There is no keyword or literal with only one character.
-        // Thus, it must be an identifier.
-        if (id.length === 1) {
-            type = Token.Identifier;
-        } else if (isKeyword(id)) {
-            type = Token.Keyword;
-        } else if (id === 'null') {
-            type = Token.NullLiteral;
-        } else if (id === 'true' || id === 'false') {
-            type = Token.BooleanLiteral;
-        } else {
-            type = Token.Identifier;
-        }
-
-        return {
-            type: type,
-            value: id,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-
-    // 7.7 Punctuators
-
-    function scanPunctuator() {
-        var token, str;
-
-        token = {
-            type: Token.Punctuator,
-            value: '',
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: index,
-            end: index
-        };
-
-        // Check for most common single-character punctuators.
-        str = source[index];
-        switch (str) {
-
-        case '(':
-            if (extra.tokenize) {
-                extra.openParenToken = extra.tokens.length;
-            }
-            ++index;
-            break;
-
-        case '{':
-            if (extra.tokenize) {
-                extra.openCurlyToken = extra.tokens.length;
-            }
-            state.curlyStack.push('{');
-            ++index;
-            break;
-
-        case '.':
-            ++index;
-            if (source[index] === '.' && source[index + 1] === '.') {
-                // Spread operator: ...
-                index += 2;
-                str = '...';
-            }
-            break;
-
-        case '}':
-            ++index;
-            state.curlyStack.pop();
-            break;
-        case ')':
-        case ';':
-        case ',':
-        case '[':
-        case ']':
-        case ':':
-        case '?':
-        case '~':
-            ++index;
-            break;
-
-        default:
-            // 4-character punctuator.
-            str = source.substr(index, 4);
-            if (str === '>>>=') {
-                index += 4;
-            } else {
-
-                // 3-character punctuators.
-                str = str.substr(0, 3);
-                if (str === '===' || str === '!==' || str === '>>>' ||
-                    str === '<<=' || str === '>>=') {
-                    index += 3;
-                } else {
-
-                    // 2-character punctuators.
-                    str = str.substr(0, 2);
-                    if (str === '&&' || str === '||' || str === '==' || str === '!=' ||
-                        str === '+=' || str === '-=' || str === '*=' || str === '/=' ||
-                        str === '++' || str === '--' || str === '<<' || str === '>>' ||
-                        str === '&=' || str === '|=' || str === '^=' || str === '%=' ||
-                        str === '<=' || str === '>=' || str === '=>') {
-                        index += 2;
-                    } else {
-
-                        // 1-character punctuators.
-                        str = source[index];
-                        if ('<>=!+-*%&|^/'.indexOf(str) >= 0) {
-                            ++index;
-                        }
-                    }
-                }
-            }
-        }
-
-        if (index === token.start) {
-            throwUnexpectedToken();
-        }
-
-        token.end = index;
-        token.value = str;
-        return token;
-    }
-
-    // 7.8.3 Numeric Literals
-
-    function scanHexLiteral(start) {
-        var number = '';
-
-        while (index < length) {
-            if (!isHexDigit(source[index])) {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (number.length === 0) {
-            throwUnexpectedToken();
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt('0x' + number, 16),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function scanBinaryLiteral(start) {
-        var ch, number;
-
-        number = '';
-
-        while (index < length) {
-            ch = source[index];
-            if (ch !== '0' && ch !== '1') {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (number.length === 0) {
-            // only 0b or 0B
-            throwUnexpectedToken();
-        }
-
-        if (index < length) {
-            ch = source.charCodeAt(index);
-            /* istanbul ignore else */
-            if (isIdentifierStart(ch) || isDecimalDigit(ch)) {
-                throwUnexpectedToken();
-            }
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt(number, 2),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function scanOctalLiteral(prefix, start) {
-        var number, octal;
-
-        if (isOctalDigit(prefix)) {
-            octal = true;
-            number = '0' + source[index++];
-        } else {
-            octal = false;
-            ++index;
-            number = '';
-        }
-
-        while (index < length) {
-            if (!isOctalDigit(source[index])) {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (!octal && number.length === 0) {
-            // only 0o or 0O
-            throwUnexpectedToken();
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index)) || isDecimalDigit(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt(number, 8),
-            octal: octal,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function isImplicitOctalLiteral() {
-        var i, ch;
-
-        // Implicit octal, unless there is a non-octal digit.
-        // (Annex B.1.1 on Numeric Literals)
-        for (i = index + 1; i < length; ++i) {
-            ch = source[i];
-            if (ch === '8' || ch === '9') {
-                return false;
-            }
-            if (!isOctalDigit(ch)) {
-                return true;
-            }
-        }
-
-        return true;
-    }
-
-    function scanNumericLiteral() {
-        var number, start, ch;
-
-        ch = source[index];
-        assert(isDecimalDigit(ch.charCodeAt(0)) || (ch === '.'),
-            'Numeric literal must start with a decimal digit or a decimal point');
-
-        start = index;
-        number = '';
-        if (ch !== '.') {
-            number = source[index++];
-            ch = source[index];
-
-            // Hex number starts with '0x'.
-            // Octal number starts with '0'.
-            // Octal number in ES6 starts with '0o'.
-            // Binary number in ES6 starts with '0b'.
-            if (number === '0') {
-                if (ch === 'x' || ch === 'X') {
-                    ++index;
-                    return scanHexLiteral(start);
-                }
-                if (ch === 'b' || ch === 'B') {
-                    ++index;
-                    return scanBinaryLiteral(start);
-                }
-                if (ch === 'o' || ch === 'O') {
-                    return scanOctalLiteral(ch, start);
-                }
-
-                if (isOctalDigit(ch)) {
-                    if (isImplicitOctalLiteral()) {
-                        return scanOctalLiteral(ch, start);
-                    }
-                }
-            }
-
-            while (isDecimalDigit(source.charCodeAt(index))) {
-                number += source[index++];
-            }
-            ch = source[index];
-        }
-
-        if (ch === '.') {
-            number += source[index++];
-            while (isDecimalDigit(source.charCodeAt(index))) {
-                number += source[index++];
-            }
-            ch = source[index];
-        }
-
-        if (ch === 'e' || ch === 'E') {
-            number += source[index++];
-
-            ch = source[index];
-            if (ch === '+' || ch === '-') {
-                number += source[index++];
-            }
-            if (isDecimalDigit(source.charCodeAt(index))) {
-                while (isDecimalDigit(source.charCodeAt(index))) {
-                    number += source[index++];
-                }
-            } else {
-                throwUnexpectedToken();
-            }
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseFloat(number),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    // 7.8.4 String Literals
-
-    function scanStringLiteral() {
-        var str = '', quote, start, ch, unescaped, octToDec, octal = false;
-
-        quote = source[index];
-        assert((quote === '\'' || quote === '"'),
-            'String literal must starts with a quote');
-
-        start = index;
-        ++index;
-
-        while (index < length) {
-            ch = source[index++];
-
-            if (ch === quote) {
-                quote = '';
-                break;
-            } else if (ch === '\\') {
-                ch = source[index++];
-                if (!ch || !isLineTerminator(ch.charCodeAt(0))) {
-                    switch (ch) {
-                    case 'u':
-                    case 'x':
-                        if (source[index] === '{') {
-                            ++index;
-                            str += scanUnicodeCodePointEscape();
-                        } else {
-                            unescaped = scanHexEscape(ch);
-                            if (!unescaped) {
-                                throw throwUnexpectedToken();
-                            }
-                            str += unescaped;
-                        }
-                        break;
-                    case 'n':
-                        str += '\n';
-                        break;
-                    case 'r':
-                        str += '\r';
-                        break;
-                    case 't':
-                        str += '\t';
-                        break;
-                    case 'b':
-                        str += '\b';
-                        break;
-                    case 'f':
-                        str += '\f';
-                        break;
-                    case 'v':
-                        str += '\x0B';
-                        break;
-                    case '8':
-                    case '9':
-                        throw throwUnexpectedToken();
-
-                    default:
-                        if (isOctalDigit(ch)) {
-                            octToDec = octalToDecimal(ch);
-
-                            octal = octToDec.octal || octal;
-                            str += String.fromCharCode(octToDec.code);
-                        } else {
-                            str += ch;
-                        }
-                        break;
-                    }
-                } else {
-                    ++lineNumber;
-                    if (ch === '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                    lineStart = index;
-                }
-            } else if (isLineTerminator(ch.charCodeAt(0))) {
-                break;
-            } else {
-                str += ch;
-            }
-        }
-
-        if (quote !== '') {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.StringLiteral,
-            value: str,
-            octal: octal,
-            lineNumber: startLineNumber,
-            lineStart: startLineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function scanTemplate() {
-        var cooked = '', ch, start, rawOffset, terminated, head, tail, restore, unescaped;
-
-        terminated = false;
-        tail = false;
-        start = index;
-        head = (source[index] === '`');
-        rawOffset = 2;
-
-        ++index;
-
-        while (index < length) {
-            ch = source[index++];
-            if (ch === '`') {
-                rawOffset = 1;
-                tail = true;
-                terminated = true;
-                break;
-            } else if (ch === '$') {
-                if (source[index] === '{') {
-                    state.curlyStack.push('${');
-                    ++index;
-                    terminated = true;
-                    break;
-                }
-                cooked += ch;
-            } else if (ch === '\\') {
-                ch = source[index++];
-                if (!isLineTerminator(ch.charCodeAt(0))) {
-                    switch (ch) {
-                    case 'n':
-                        cooked += '\n';
-                        break;
-                    case 'r':
-                        cooked += '\r';
-                        break;
-                    case 't':
-                        cooked += '\t';
-                        break;
-                    case 'u':
-                    case 'x':
-                        if (source[index] === '{') {
-                            ++index;
-                            cooked += scanUnicodeCodePointEscape();
-                        } else {
-                            restore = index;
-                            unescaped = scanHexEscape(ch);
-                            if (unescaped) {
-                                cooked += unescaped;
-                            } else {
-                                index = restore;
-                                cooked += ch;
-                            }
-                        }
-                        break;
-                    case 'b':
-                        cooked += '\b';
-                        break;
-                    case 'f':
-                        cooked += '\f';
-                        break;
-                    case 'v':
-                        cooked += '\v';
-                        break;
-
-                    default:
-                        if (ch === '0') {
-                            if (isDecimalDigit(source.charCodeAt(index))) {
-                                // Illegal: \01 \02 and so on
-                                throwError(Messages.TemplateOctalLiteral);
-                            }
-                            cooked += '\0';
-                        } else if (isOctalDigit(ch)) {
-                            // Illegal: \1 \2
-                            throwError(Messages.TemplateOctalLiteral);
-                        } else {
-                            cooked += ch;
-                        }
-                        break;
-                    }
-                } else {
-                    ++lineNumber;
-                    if (ch === '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                    lineStart = index;
-                }
-            } else if (isLineTerminator(ch.charCodeAt(0))) {
-                ++lineNumber;
-                if (ch === '\r' && source[index] === '\n') {
-                    ++index;
-                }
-                lineStart = index;
-                cooked += '\n';
-            } else {
-                cooked += ch;
-            }
-        }
-
-        if (!terminated) {
-            throwUnexpectedToken();
-        }
-
-        if (!head) {
-            state.curlyStack.pop();
-        }
-
-        return {
-            type: Token.Template,
-            value: {
-                cooked: cooked,
-                raw: source.slice(start + 1, index - rawOffset)
-            },
-            head: head,
-            tail: tail,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function testRegExp(pattern, flags) {
-        var tmp = pattern;
-
-        if (flags.indexOf('u') >= 0) {
-            // Replace each astral symbol and every Unicode escape sequence
-            // that possibly represents an astral symbol or a paired surrogate
-            // with a single ASCII symbol to avoid throwing on regular
-            // expressions that are only valid in combination with the `/u`
-            // flag.
-            // Note: replacing with the ASCII symbol `x` might cause false
-            // negatives in unlikely scenarios. For example, `[\u{61}-b]` is a
-            // perfectly valid pattern that is equivalent to `[a-b]`, but it
-            // would be replaced by `[x-b]` which throws an error.
-            tmp = tmp
-                .replace(/\\u\{([0-9a-fA-F]+)\}/g, function ($0, $1) {
-                    if (parseInt($1, 16) <= 0x10FFFF) {
-                        return 'x';
-                    }
-                    throwUnexpectedToken(null, Messages.InvalidRegExp);
-                })
-                .replace(
-                    /\\u([a-fA-F0-9]{4})|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,
-                    'x'
-                );
-        }
-
-        // First, detect invalid regular expressions.
-        try {
-            RegExp(tmp);
-        } catch (e) {
-            throwUnexpectedToken(null, Messages.InvalidRegExp);
-        }
-
-        // Return a regular expression object for this pattern-flag pair, or
-        // `null` in case the current environment doesn't support the flags it
-        // uses.
-        try {
-            return new RegExp(pattern, flags);
-        } catch (exception) {
-            return null;
-        }
-    }
-
-    function scanRegExpBody() {
-        var ch, str, classMarker, terminated, body;
-
-        ch = source[index];
-        assert(ch === '/', 'Regular expression literal must start with a slash');
-        str = source[index++];
-
-        classMarker = false;
-        terminated = false;
-        while (index < length) {
-            ch = source[index++];
-            str += ch;
-            if (ch === '\\') {
-                ch = source[index++];
-                // ECMA-262 7.8.5
-                if (isLineTerminator(ch.charCodeAt(0))) {
-                    throwUnexpectedToken(null, Messages.UnterminatedRegExp);
-                }
-                str += ch;
-            } else if (isLineTerminator(ch.charCodeAt(0))) {
-                throwUnexpectedToken(null, Messages.UnterminatedRegExp);
-            } else if (classMarker) {
-                if (ch === ']') {
-                    classMarker = false;
-                }
-            } else {
-                if (ch === '/') {
-                    terminated = true;
-                    break;
-                } else if (ch === '[') {
-                    classMarker = true;
-                }
-            }
-        }
-
-        if (!terminated) {
-            throwUnexpectedToken(null, Messages.UnterminatedRegExp);
-        }
-
-        // Exclude leading and trailing slash.
-        body = str.substr(1, str.length - 2);
-        return {
-            value: body,
-            literal: str
-        };
-    }
-
-    function scanRegExpFlags() {
-        var ch, str, flags, restore;
-
-        str = '';
-        flags = '';
-        while (index < length) {
-            ch = source[index];
-            if (!isIdentifierPart(ch.charCodeAt(0))) {
-                break;
-            }
-
-            ++index;
-            if (ch === '\\' && index < length) {
-                ch = source[index];
-                if (ch === 'u') {
-                    ++index;
-                    restore = index;
-                    ch = scanHexEscape('u');
-                    if (ch) {
-                        flags += ch;
-                        for (str += '\\u'; restore < index; ++restore) {
-                            str += source[restore];
-                        }
-                    } else {
-                        index = restore;
-                        flags += 'u';
-                        str += '\\u';
-                    }
-                    tolerateUnexpectedToken();
-                } else {
-                    str += '\\';
-                    tolerateUnexpectedToken();
-                }
-            } else {
-                flags += ch;
-                str += ch;
-            }
-        }
-
-        return {
-            value: flags,
-            literal: str
-        };
-    }
-
-    function scanRegExp() {
-        scanning = true;
-        var start, body, flags, value;
-
-        lookahead = null;
-        skipComment();
-        start = index;
-
-        body = scanRegExpBody();
-        flags = scanRegExpFlags();
-        value = testRegExp(body.value, flags.value);
-        scanning = false;
-        if (extra.tokenize) {
-            return {
-                type: Token.RegularExpression,
-                value: value,
-                regex: {
-                    pattern: body.value,
-                    flags: flags.value
-                },
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        return {
-            literal: body.literal + flags.literal,
-            value: value,
-            regex: {
-                pattern: body.value,
-                flags: flags.value
-            },
-            start: start,
-            end: index
-        };
-    }
-
-    function collectRegex() {
-        var pos, loc, regex, token;
-
-        skipComment();
-
-        pos = index;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        regex = scanRegExp();
-
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        /* istanbul ignore next */
-        if (!extra.tokenize) {
-            // Pop the previous token, which is likely '/' or '/='
-            if (extra.tokens.length > 0) {
-                token = extra.tokens[extra.tokens.length - 1];
-                if (token.range[0] === pos && token.type === 'Punctuator') {
-                    if (token.value === '/' || token.value === '/=') {
-                        extra.tokens.pop();
-                    }
-                }
-            }
-
-            extra.tokens.push({
-                type: 'RegularExpression',
-                value: regex.literal,
-                regex: regex.regex,
-                range: [pos, index],
-                loc: loc
-            });
-        }
-
-        return regex;
-    }
-
-    function isIdentifierName(token) {
-        return token.type === Token.Identifier ||
-            token.type === Token.Keyword ||
-            token.type === Token.BooleanLiteral ||
-            token.type === Token.NullLiteral;
-    }
-
-    function advanceSlash() {
-        var prevToken,
-            checkToken;
-        // Using the following algorithm:
-        // https://github.com/mozilla/sweet.js/wiki/design
-        prevToken = extra.tokens[extra.tokens.length - 1];
-        if (!prevToken) {
-            // Nothing before that: it cannot be a division.
-            return collectRegex();
-        }
-        if (prevToken.type === 'Punctuator') {
-            if (prevToken.value === ']') {
-                return scanPunctuator();
-            }
-            if (prevToken.value === ')') {
-                checkToken = extra.tokens[extra.openParenToken - 1];
-                if (checkToken &&
-                        checkToken.type === 'Keyword' &&
-                        (checkToken.value === 'if' ||
-                         checkToken.value === 'while' ||
-                         checkToken.value === 'for' ||
-                         checkToken.value === 'with')) {
-                    return collectRegex();
-                }
-                return scanPunctuator();
-            }
-            if (prevToken.value === '}') {
-                // Dividing a function by anything makes little sense,
-                // but we have to check for that.
-                if (extra.tokens[extra.openCurlyToken - 3] &&
-                        extra.tokens[extra.openCurlyToken - 3].type === 'Keyword') {
-                    // Anonymous function.
-                    checkToken = extra.tokens[extra.openCurlyToken - 4];
-                    if (!checkToken) {
-                        return scanPunctuator();
-                    }
-                } else if (extra.tokens[extra.openCurlyToken - 4] &&
-                        extra.tokens[extra.openCurlyToken - 4].type === 'Keyword') {
-                    // Named function.
-                    checkToken = extra.tokens[extra.openCurlyToken - 5];
-                    if (!checkToken) {
-                        return collectRegex();
-                    }
-                } else {
-                    return scanPunctuator();
-                }
-                // checkToken determines whether the function is
-                // a declaration or an expression.
-                if (FnExprTokens.indexOf(checkToken.value) >= 0) {
-                    // It is an expression.
-                    return scanPunctuator();
-                }
-                // It is a declaration.
-                return collectRegex();
-            }
-            return collectRegex();
-        }
-        if (prevToken.type === 'Keyword' && prevToken.value !== 'this') {
-            return collectRegex();
-        }
-        return scanPunctuator();
-    }
-
-    function advance() {
-        var ch, token;
-
-        if (index >= length) {
-            return {
-                type: Token.EOF,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: index,
-                end: index
-            };
-        }
-
-        ch = source.charCodeAt(index);
-
-        if (isIdentifierStart(ch)) {
-            token = scanIdentifier();
-            if (strict && isStrictModeReservedWord(token.value)) {
-                token.type = Token.Keyword;
-            }
-            return token;
-        }
-
-        // Very common: ( and ) and ;
-        if (ch === 0x28 || ch === 0x29 || ch === 0x3B) {
-            return scanPunctuator();
-        }
-
-        // String literal starts with single quote (U+0027) or double quote (U+0022).
-        if (ch === 0x27 || ch === 0x22) {
-            return scanStringLiteral();
-        }
-
-        // Dot (.) U+002E can also start a floating-point number, hence the need
-        // to check the next character.
-        if (ch === 0x2E) {
-            if (isDecimalDigit(source.charCodeAt(index + 1))) {
-                return scanNumericLiteral();
-            }
-            return scanPunctuator();
-        }
-
-        if (isDecimalDigit(ch)) {
-            return scanNumericLiteral();
-        }
-
-        // Slash (/) U+002F can also start a regex.
-        if (extra.tokenize && ch === 0x2F) {
-            return advanceSlash();
-        }
-
-        // Template literals start with ` (U+0060) for template head
-        // or } (U+007D) for template middle or template tail.
-        if (ch === 0x60 || (ch === 0x7D && state.curlyStack[state.curlyStack.length - 1] === '${')) {
-            return scanTemplate();
-        }
-
-        return scanPunctuator();
-    }
-
-    function collectToken() {
-        var loc, token, value, entry;
-
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        token = advance();
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        if (token.type !== Token.EOF) {
-            value = source.slice(token.start, token.end);
-            entry = {
-                type: TokenName[token.type],
-                value: value,
-                range: [token.start, token.end],
-                loc: loc
-            };
-            if (token.regex) {
-                entry.regex = {
-                    pattern: token.regex.pattern,
-                    flags: token.regex.flags
-                };
-            }
-            extra.tokens.push(entry);
-        }
-
-        return token;
-    }
-
-    function lex() {
-        var token;
-        scanning = true;
-
-        lastIndex = index;
-        lastLineNumber = lineNumber;
-        lastLineStart = lineStart;
-
-        skipComment();
-
-        token = lookahead;
-
-        startIndex = index;
-        startLineNumber = lineNumber;
-        startLineStart = lineStart;
-
-        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
-        scanning = false;
-        return token;
-    }
-
-    function peek() {
-        scanning = true;
-
-        skipComment();
-
-        lastIndex = index;
-        lastLineNumber = lineNumber;
-        lastLineStart = lineStart;
-
-        startIndex = index;
-        startLineNumber = lineNumber;
-        startLineStart = lineStart;
-
-        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
-        scanning = false;
-    }
-
-    function Position() {
-        this.line = startLineNumber;
-        this.column = startIndex - startLineStart;
-    }
-
-    function SourceLocation() {
-        this.start = new Position();
-        this.end = null;
-    }
-
-    function WrappingSourceLocation(startToken) {
-        this.start = {
-            line: startToken.lineNumber,
-            column: startToken.start - startToken.lineStart
-        };
-        this.end = null;
-    }
-
-    function Node() {
-        if (extra.range) {
-            this.range = [startIndex, 0];
-        }
-        if (extra.loc) {
-            this.loc = new SourceLocation();
-        }
-    }
-
-    function WrappingNode(startToken) {
-        if (extra.range) {
-            this.range = [startToken.start, 0];
-        }
-        if (extra.loc) {
-            this.loc = new WrappingSourceLocation(startToken);
-        }
-    }
-
-    WrappingNode.prototype = Node.prototype = {
-
-        processComment: function () {
-            var lastChild,
-                leadingComments,
-                trailingComments,
-                bottomRight = extra.bottomRightStack,
-                i,
-                comment,
-                last = bottomRight[bottomRight.length - 1];
-
-            if (this.type === Syntax.Program) {
-                if (this.body.length > 0) {
-                    return;
-                }
-            }
-
-            if (extra.trailingComments.length > 0) {
-                trailingComments = [];
-                for (i = extra.trailingComments.length - 1; i >= 0; --i) {
-                    comment = extra.trailingComments[i];
-                    if (comment.range[0] >= this.range[1]) {
-                        trailingComments.unshift(comment);
-                        extra.trailingComments.splice(i, 1);
-                    }
-                }
-                extra.trailingComments = [];
-            } else {
-                if (last && last.trailingComments && last.trailingComments[0].range[0] >= this.range[1]) {
-                    trailingComments = last.trailingComments;
-                    delete last.trailingComments;
-                }
-            }
-
-            // Eating the stack.
-            if (last) {
-                while (last && last.range[0] >= this.range[0]) {
-                    lastChild = last;
-                    last = bottomRight.pop();
-                }
-            }
-
-            if (lastChild) {
-                if (lastChild.leadingComments && lastChild.leadingComments[lastChild.leadingComments.length - 1].range[1] <= this.range[0]) {
-                    this.leadingComments = lastChild.leadingComments;
-                    lastChild.leadingComments = undefined;
-                }
-            } else if (extra.leadingComments.length > 0) {
-                leadingComments = [];
-                for (i = extra.leadingComments.length - 1; i >= 0; --i) {
-                    comment = extra.leadingComments[i];
-                    if (comment.range[1] <= this.range[0]) {
-                        leadingComments.unshift(comment);
-                        extra.leadingComments.splice(i, 1);
-                    }
-                }
-            }
-
-
-            if (leadingComments && leadingComments.length > 0) {
-                this.leadingComments = leadingComments;
-            }
-            if (trailingComments && trailingComments.length > 0) {
-                this.trailingComments = trailingComments;
-            }
-
-            bottomRight.push(this);
-        },
-
-        finish: function () {
-            if (extra.range) {
-                this.range[1] = lastIndex;
-            }
-            if (extra.loc) {
-                this.loc.end = {
-                    line: lastLineNumber,
-                    column: lastIndex - lastLineStart
-                };
-                if (extra.source) {
-                    this.loc.source = extra.source;
-                }
-            }
-
-            if (extra.attachComment) {
-                this.processComment();
-            }
-        },
-
-        finishArrayExpression: function (elements) {
-            this.type = Syntax.ArrayExpression;
-            this.elements = elements;
-            this.finish();
-            return this;
-        },
-
-        finishArrayPattern: function (elements) {
-            this.type = Syntax.ArrayPattern;
-            this.elements = elements;
-            this.finish();
-            return this;
-        },
-
-        finishArrowFunctionExpression: function (params, defaults, body, expression) {
-            this.type = Syntax.ArrowFunctionExpression;
-            this.id = null;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.generator = false;
-            this.expression = expression;
-            this.finish();
-            return this;
-        },
-
-        finishAssignmentExpression: function (operator, left, right) {
-            this.type = Syntax.AssignmentExpression;
-            this.operator = operator;
-            this.left = left;
-            this.right = right;
-            this.finish();
-            return this;
-        },
-
-        finishAssignmentPattern: function (left, right) {
-            this.type = Syntax.AssignmentPattern;
-            this.left = left;
-            this.right = right;
-            this.finish();
-            return this;
-        },
-
-        finishBinaryExpression: function (operator, left, right) {
-            this.type = (operator === '||' || operator === '&&') ? Syntax.LogicalExpression : Syntax.BinaryExpression;
-            this.operator = operator;
-            this.left = left;
-            this.right = right;
-            this.finish();
-            return this;
-        },
-
-        finishBlockStatement: function (body) {
-            this.type = Syntax.BlockStatement;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishBreakStatement: function (label) {
-            this.type = Syntax.BreakStatement;
-            this.label = label;
-            this.finish();
-            return this;
-        },
-
-        finishCallExpression: function (callee, args) {
-            this.type = Syntax.CallExpression;
-            this.callee = callee;
-            this.arguments = args;
-            this.finish();
-            return this;
-        },
-
-        finishCatchClause: function (param, body) {
-            this.type = Syntax.CatchClause;
-            this.param = param;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishClassBody: function (body) {
-            this.type = Syntax.ClassBody;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishClassDeclaration: function (id, superClass, body) {
-            this.type = Syntax.ClassDeclaration;
-            this.id = id;
-            this.superClass = superClass;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishClassExpression: function (id, superClass, body) {
-            this.type = Syntax.ClassExpression;
-            this.id = id;
-            this.superClass = superClass;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishConditionalExpression: function (test, consequent, alternate) {
-            this.type = Syntax.ConditionalExpression;
-            this.test = test;
-            this.consequent = consequent;
-            this.alternate = alternate;
-            this.finish();
-            return this;
-        },
-
-        finishContinueStatement: function (label) {
-            this.type = Syntax.ContinueStatement;
-            this.label = label;
-            this.finish();
-            return this;
-        },
-
-        finishDebuggerStatement: function () {
-            this.type = Syntax.DebuggerStatement;
-            this.finish();
-            return this;
-        },
-
-        finishDoWhileStatement: function (body, test) {
-            this.type = Syntax.DoWhileStatement;
-            this.body = body;
-            this.test = test;
-            this.finish();
-            return this;
-        },
-
-        finishEmptyStatement: function () {
-            this.type = Syntax.EmptyStatement;
-            this.finish();
-            return this;
-        },
-
-        finishExpressionStatement: function (expression) {
-            this.type = Syntax.ExpressionStatement;
-            this.expression = expression;
-            this.finish();
-            return this;
-        },
-
-        finishForStatement: function (init, test, update, body) {
-            this.type = Syntax.ForStatement;
-            this.init = init;
-            this.test = test;
-            this.update = update;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishForInStatement: function (left, right, body) {
-            this.type = Syntax.ForInStatement;
-            this.left = left;
-            this.right = right;
-            this.body = body;
-            this.each = false;
-            this.finish();
-            return this;
-        },
-
-        finishFunctionDeclaration: function (id, params, defaults, body) {
-            this.type = Syntax.FunctionDeclaration;
-            this.id = id;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.generator = false;
-            this.expression = false;
-            this.finish();
-            return this;
-        },
-
-        finishFunctionExpression: function (id, params, defaults, body) {
-            this.type = Syntax.FunctionExpression;
-            this.id = id;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.generator = false;
-            this.expression = false;
-            this.finish();
-            return this;
-        },
-
-        finishIdentifier: function (name) {
-            this.type = Syntax.Identifier;
-            this.name = name;
-            this.finish();
-            return this;
-        },
-
-        finishIfStatement: function (test, consequent, alternate) {
-            this.type = Syntax.IfStatement;
-            this.test = test;
-            this.consequent = consequent;
-            this.alternate = alternate;
-            this.finish();
-            return this;
-        },
-
-        finishLabeledStatement: function (label, body) {
-            this.type = Syntax.LabeledStatement;
-            this.label = label;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishLiteral: function (token) {
-            this.type = Syntax.Literal;
-            this.value = token.value;
-            this.raw = source.slice(token.start, token.end);
-            if (token.regex) {
-                this.regex = token.regex;
-            }
-            this.finish();
-            return this;
-        },
-
-        finishMemberExpression: function (accessor, object, property) {
-            this.type = Syntax.MemberExpression;
-            this.computed = accessor === '[';
-            this.object = object;
-            this.property = property;
-            this.finish();
-            return this;
-        },
-
-        finishNewExpression: function (callee, args) {
-            this.type = Syntax.NewExpression;
-            this.callee = callee;
-            this.arguments = args;
-            this.finish();
-            return this;
-        },
-
-        finishObjectExpression: function (properties) {
-            this.type = Syntax.ObjectExpression;
-            this.properties = properties;
-            this.finish();
-            return this;
-        },
-
-        finishObjectPattern: function (properties) {
-            this.type = Syntax.ObjectPattern;
-            this.properties = properties;
-            this.finish();
-            return this;
-        },
-
-        finishPostfixExpression: function (operator, argument) {
-            this.type = Syntax.UpdateExpression;
-            this.operator = operator;
-            this.argument = argument;
-            this.prefix = false;
-            this.finish();
-            return this;
-        },
-
-        finishProgram: function (body) {
-            this.type = Syntax.Program;
-            this.body = body;
-            if (sourceType === 'module') {
-                // very restrictive for now
-                this.sourceType = sourceType;
-            }
-            this.finish();
-            return this;
-        },
-
-        finishProperty: function (kind, key, computed, value, method, shorthand) {
-            this.type = Syntax.Property;
-            this.key = key;
-            this.computed = computed;
-            this.value = value;
-            this.kind = kind;
-            this.method = method;
-            this.shorthand = shorthand;
-            this.finish();
-            return this;
-        },
-
-        finishRestElement: function (argument) {
-            this.type = Syntax.RestElement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishReturnStatement: function (argument) {
-            this.type = Syntax.ReturnStatement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishSequenceExpression: function (expressions) {
-            this.type = Syntax.SequenceExpression;
-            this.expressions = expressions;
-            this.finish();
-            return this;
-        },
-
-        finishSpreadElement: function (argument) {
-            this.type = Syntax.SpreadElement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishSwitchCase: function (test, consequent) {
-            this.type = Syntax.SwitchCase;
-            this.test = test;
-            this.consequent = consequent;
-            this.finish();
-            return this;
-        },
-
-        finishSuper: function () {
-            this.type = Syntax.Super;
-            this.finish();
-            return this;
-        },
-
-        finishSwitchStatement: function (discriminant, cases) {
-            this.type = Syntax.SwitchStatement;
-            this.discriminant = discriminant;
-            this.cases = cases;
-            this.finish();
-            return this;
-        },
-
-        finishTaggedTemplateExpression: function (tag, quasi) {
-            this.type = Syntax.TaggedTemplateExpression;
-            this.tag = tag;
-            this.quasi = quasi;
-            this.finish();
-            return this;
-        },
-
-        finishTemplateElement: function (value, tail) {
-            this.type = Syntax.TemplateElement;
-            this.value = value;
-            this.tail = tail;
-            this.finish();
-            return this;
-        },
-
-        finishTemplateLiteral: function (quasis, expressions) {
-            this.type = Syntax.TemplateLiteral;
-            this.quasis = quasis;
-            this.expressions = expressions;
-            this.finish();
-            return this;
-        },
-
-        finishThisExpression: function () {
-            this.type = Syntax.ThisExpression;
-            this.finish();
-            return this;
-        },
-
-        finishThrowStatement: function (argument) {
-            this.type = Syntax.ThrowStatement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishTryStatement: function (block, handler, finalizer) {
-            this.type = Syntax.TryStatement;
-            this.block = block;
-            this.guardedHandlers = [];
-            this.handlers = handler ? [ handler ] : [];
-            this.handler = handler;
-            this.finalizer = finalizer;
-            this.finish();
-            return this;
-        },
-
-        finishUnaryExpression: function (operator, argument) {
-            this.type = (operator === '++' || operator === '--') ? Syntax.UpdateExpression : Syntax.UnaryExpression;
-            this.operator = operator;
-            this.argument = argument;
-            this.prefix = true;
-            this.finish();
-            return this;
-        },
-
-        finishVariableDeclaration: function (declarations) {
-            this.type = Syntax.VariableDeclaration;
-            this.declarations = declarations;
-            this.kind = 'var';
-            this.finish();
-            return this;
-        },
-
-        finishLexicalDeclaration: function (declarations, kind) {
-            this.type = Syntax.VariableDeclaration;
-            this.declarations = declarations;
-            this.kind = kind;
-            this.finish();
-            return this;
-        },
-
-        finishVariableDeclarator: function (id, init) {
-            this.type = Syntax.VariableDeclarator;
-            this.id = id;
-            this.init = init;
-            this.finish();
-            return this;
-        },
-
-        finishWhileStatement: function (test, body) {
-            this.type = Syntax.WhileStatement;
-            this.test = test;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishWithStatement: function (object, body) {
-            this.type = Syntax.WithStatement;
-            this.object = object;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishExportSpecifier: function (local, exported) {
-            this.type = Syntax.ExportSpecifier;
-            this.exported = exported || local;
-            this.local = local;
-            this.finish();
-            return this;
-        },
-
-        finishImportDefaultSpecifier: function (local) {
-            this.type = Syntax.ImportDefaultSpecifier;
-            this.local = local;
-            this.finish();
-            return this;
-        },
-
-        finishImportNamespaceSpecifier: function (local) {
-            this.type = Syntax.ImportNamespaceSpecifier;
-            this.local = local;
-            this.finish();
-            return this;
-        },
-
-        finishExportNamedDeclaration: function (declaration, specifiers, src) {
-            this.type = Syntax.ExportNamedDeclaration;
-            this.declaration = declaration;
-            this.specifiers = specifiers;
-            this.source = src;
-            this.finish();
-            return this;
-        },
-
-        finishExportDefaultDeclaration: function (declaration) {
-            this.type = Syntax.ExportDefaultDeclaration;
-            this.declaration = declaration;
-            this.finish();
-            return this;
-        },
-
-        finishExportAllDeclaration: function (src) {
-            this.type = Syntax.ExportAllDeclaration;
-            this.source = src;
-            this.finish();
-            return this;
-        },
-
-        finishImportSpecifier: function (local, imported) {
-            this.type = Syntax.ImportSpecifier;
-            this.local = local || imported;
-            this.imported = imported;
-            this.finish();
-            return this;
-        },
-
-        finishImportDeclaration: function (specifiers, src) {
-            this.type = Syntax.ImportDeclaration;
-            this.specifiers = specifiers;
-            this.source = src;
-            this.finish();
-            return this;
-        }
-    };
-
-
-    function recordError(error) {
-        var e, existing;
-
-        for (e = 0; e < extra.errors.length; e++) {
-            existing = extra.errors[e];
-            // Prevent duplicated error.
-            /* istanbul ignore next */
-            if (existing.index === error.index && existing.message === error.message) {
-                return;
-            }
-        }
-
-        extra.errors.push(error);
-    }
-
-    function createError(line, pos, description) {
-        var error = new Error('Line ' + line + ': ' + description);
-        error.index = pos;
-        error.lineNumber = line;
-        error.column = pos - (scanning ? lineStart : lastLineStart) + 1;
-        error.description = description;
-        return error;
-    }
-
-    // Throw an exception
-
-    function throwError(messageFormat) {
-        var args, msg;
-
-        args = Array.prototype.slice.call(arguments, 1);
-        msg = messageFormat.replace(/%(\d)/g,
-            function (whole, idx) {
-                assert(idx < args.length, 'Message reference must be in range');
-                return args[idx];
-            }
-        );
-
-        throw createError(lastLineNumber, lastIndex, msg);
-    }
-
-    function tolerateError(messageFormat) {
-        var args, msg, error;
-
-        args = Array.prototype.slice.call(arguments, 1);
-        /* istanbul ignore next */
-        msg = messageFormat.replace(/%(\d)/g,
-            function (whole, idx) {
-                assert(idx < args.length, 'Message reference must be in range');
-                return args[idx];
-            }
-        );
-
-        error = createError(lineNumber, lastIndex, msg);
-        if (extra.errors) {
-            recordError(error);
-        } else {
-            throw error;
-        }
-    }
-
-    // Throw an exception because of the token.
-
-    function unexpectedTokenError(token, message) {
-        var value, msg = message || Messages.UnexpectedToken;
-
-        if (token) {
-            if (!message) {
-                msg = (token.type === Token.EOF) ? Messages.UnexpectedEOS :
-                    (token.type === Token.Identifier) ? Messages.UnexpectedIdentifier :
-                    (token.type === Token.NumericLiteral) ? Messages.UnexpectedNumber :
-                    (token.type === Token.StringLiteral) ? Messages.UnexpectedString :
-                    (token.type === Token.Template) ? Messages.UnexpectedTemplate :
-                    Messages.UnexpectedToken;
-
-                if (token.type === Token.Keyword) {
-                    if (isFutureReservedWord(token.value)) {
-                        msg = Messages.UnexpectedReserved;
-                    } else if (strict && isStrictModeReservedWord(token.value)) {
-                        msg = Messages.StrictReservedWord;
-                    }
-                }
-            }
-
-            value = (token.type === Token.Template) ? token.value.raw : token.value;
-        } else {
-            value = 'ILLEGAL';
-        }
-
-        msg = msg.replace('%0', value);
-
-        return (token && typeof token.lineNumber === 'number') ?
-            createError(token.lineNumber, token.start, msg) :
-            createError(scanning ? lineNumber : lastLineNumber, scanning ? index : lastIndex, msg);
-    }
-
-    function throwUnexpectedToken(token, message) {
-        throw unexpectedTokenError(token, message);
-    }
-
-    function tolerateUnexpectedToken(token, message) {
-        var error = unexpectedTokenError(token, message);
-        if (extra.errors) {
-            recordError(error);
-        } else {
-            throw error;
-        }
-    }
-
-    // Expect the next token to match the specified punctuator.
-    // If not, an exception will be thrown.
-
-    function expect(value) {
-        var token = lex();
-        if (token.type !== Token.Punctuator || token.value !== value) {
-            throwUnexpectedToken(token);
-        }
-    }
-
-    /**
-     * @name expectCommaSeparator
-     * @description Quietly expect a comma when in tolerant mode, otherwise delegates
-     * to <code>expect(value)</code>
-     * @since 2.0
-     */
-    function expectCommaSeparator() {
-        var token;
-
-        if (extra.errors) {
-            token = lookahead;
-            if (token.type === Token.Punctuator && token.value === ',') {
-                lex();
-            } else if (token.type === Token.Punctuator && token.value === ';') {
-                lex();
-                tolerateUnexpectedToken(token);
-            } else {
-                tolerateUnexpectedToken(token, Messages.UnexpectedToken);
-            }
-        } else {
-            expect(',');
-        }
-    }
-
-    // Expect the next token to match the specified keyword.
-    // If not, an exception will be thrown.
-
-    function expectKeyword(keyword) {
-        var token = lex();
-        if (token.type !== Token.Keyword || token.value !== keyword) {
-            throwUnexpectedToken(token);
-        }
-    }
-
-    // Return true if the next token matches the specified punctuator.
-
-    function match(value) {
-        return lookahead.type === Token.Punctuator && lookahead.value === value;
-    }
-
-    // Return true if the next token matches the specified keyword
-
-    function matchKeyword(keyword) {
-        return lookahead.type === Token.Keyword && lookahead.value === keyword;
-    }
-
-    // Return true if the next token matches the specified contextual keyword
-    // (where an identifier is sometimes a keyword depending on the context)
-
-    function matchContextualKeyword(keyword) {
-        return lookahead.type === Token.Identifier && lookahead.value === keyword;
-    }
-
-    // Return true if the next token is an assignment operator
-
-    function matchAssign() {
-        var op;
-
-        if (lookahead.type !== Token.Punctuator) {
-            return false;
-        }
-        op = lookahead.value;
-        return op === '=' ||
-            op === '*=' ||
-            op === '/=' ||
-            op === '%=' ||
-            op === '+=' ||
-            op === '-=' ||
-            op === '<<=' ||
-            op === '>>=' ||
-            op === '>>>=' ||
-            op === '&=' ||
-            op === '^=' ||
-            op === '|=';
-    }
-
-    function consumeSemicolon() {
-        // Catch the very common case first: immediately a semicolon (U+003B).
-        if (source.charCodeAt(startIndex) === 0x3B || match(';')) {
-            lex();
-            return;
-        }
-
-        if (hasLineTerminator) {
-            return;
-        }
-
-        // FIXME(ikarienator): this is seemingly an issue in the previous location info convention.
-        lastIndex = startIndex;
-        lastLineNumber = startLineNumber;
-        lastLineStart = startLineStart;
-
-        if (lookahead.type !== Token.EOF && !match('}')) {
-            throwUnexpectedToken(lookahead);
-        }
-    }
-
-    // Cover grammar support.
-    //
-    // When an assignment expression position starts with an left parenthesis, the determination of the type
-    // of the syntax is to be deferred arbitrarily long until the end of the parentheses pair (plus a lookahead)
-    // or the first comma. This situation also defers the determination of all the expressions nested in the pair.
-    //
-    // There are three productions that can be parsed in a parentheses pair that needs to be determined
-    // after the outermost pair is closed. They are:
-    //
-    //   1. AssignmentExpression
-    //   2. BindingElements
-    //   3. AssignmentTargets
-    //
-    // In order to avoid exponential backtracking, we use two flags to denote if the production can be
-    // binding element or assignment target.
-    //
-    // The three productions have the relationship:
-    //
-    //   BindingElements ⊆ AssignmentTargets ⊆ AssignmentExpression
-    //
-    // with a single exception that CoverInitializedName when used directly in an Expression, generates
-    // an early error. Therefore, we need the third state, firstCoverInitializedNameError, to track the
-    // first usage of CoverInitializedName and report it when we reached the end of the parentheses pair.
-    //
-    // isolateCoverGrammar function runs the given parser function with a new cover grammar context, and it does not
-    // effect the current flags. This means the production the parser parses is only used as an expression. Therefore
-    // the CoverInitializedName check is conducted.
-    //
-    // inheritCoverGrammar function runs the given parse function with a new cover grammar context, and it propagates
-    // the flags outside of the parser. This means the production the parser parses is used as a part of a potential
-    // pattern. The CoverInitializedName check is deferred.
-    function isolateCoverGrammar(parser) {
-        var oldIsBindingElement = isBindingElement,
-            oldIsAssignmentTarget = isAssignmentTarget,
-            oldFirstCoverInitializedNameError = firstCoverInitializedNameError,
-            result;
-        isBindingElement = true;
-        isAssignmentTarget = true;
-        firstCoverInitializedNameError = null;
-        result = parser();
-        if (firstCoverInitializedNameError !== null) {
-            throwUnexpectedToken(firstCoverInitializedNameError);
-        }
-        isBindingElement = oldIsBindingElement;
-        isAssignmentTarget = oldIsAssignmentTarget;
-        firstCoverInitializedNameError = oldFirstCoverInitializedNameError;
-        return result;
-    }
-
-    function inheritCoverGrammar(parser) {
-        var oldIsBindingElement = isBindingElement,
-            oldIsAssignmentTarget = isAssignmentTarget,
-            oldFirstCoverInitializedNameError = firstCoverInitializedNameError,
-            result;
-        isBindingElement = true;
-        isAssignmentTarget = true;
-        firstCoverInitializedNameError = null;
-        result = parser();
-        isBindingElement = isBindingElement && oldIsBindingElement;
-        isAssignmentTarget = isAssignmentTarget && oldIsAssignmentTarget;
-        firstCoverInitializedNameError = oldFirstCoverInitializedNameError || firstCoverInitializedNameError;
-        return result;
-    }
-
-    function parseArrayPattern() {
-        var node = new Node(), elements = [], rest, restNode;
-        expect('[');
-
-        while (!match(']')) {
-            if (match(',')) {
-                lex();
-                elements.push(null);
-            } else {
-                if (match('...')) {
-                    restNode = new Node();
-                    lex();
-                    rest = parseVariableIdentifier();
-                    elements.push(restNode.finishRestElement(rest));
-                    break;
-                } else {
-                    elements.push(parsePatternWithDefault());
-                }
-                if (!match(']')) {
-                    expect(',');
-                }
-            }
-
-        }
-
-        expect(']');
-
-        return node.finishArrayPattern(elements);
-    }
-
-    function parsePropertyPattern() {
-        var node = new Node(), key, computed = match('['), init;
-        if (lookahead.type === Token.Identifier) {
-            key = parseVariableIdentifier();
-            if (match('=')) {
-                lex();
-                init = parseAssignmentExpression();
-                return node.finishProperty(
-                    'init', key, false,
-                    new WrappingNode(key).finishAssignmentPattern(key, init), false, false);
-            } else if (!match(':')) {
-                return node.finishProperty('init', key, false, key, false, true);
-            }
-        } else {
-            key = parseObjectPropertyKey();
-        }
-        expect(':');
-        init = parsePatternWithDefault();
-        return node.finishProperty('init', key, computed, init, false, false);
-    }
-
-    function parseObjectPattern() {
-        var node = new Node(), properties = [];
-
-        expect('{');
-
-        while (!match('}')) {
-            properties.push(parsePropertyPattern());
-            if (!match('}')) {
-                expect(',');
-            }
-        }
-
-        lex();
-
-        return node.finishObjectPattern(properties);
-    }
-
-    function parsePattern() {
-        if (lookahead.type === Token.Identifier) {
-            return parseVariableIdentifier();
-        } else if (match('[')) {
-            return parseArrayPattern();
-        } else if (match('{')) {
-            return parseObjectPattern();
-        }
-        throwUnexpectedToken(lookahead);
-    }
-
-    function parsePatternWithDefault() {
-        var startToken = lookahead, pattern, right;
-        pattern = parsePattern();
-        if (match('=')) {
-            lex();
-            right = isolateCoverGrammar(parseAssignmentExpression);
-            pattern = new WrappingNode(startToken).finishAssignmentPattern(pattern, right);
-        }
-        return pattern;
-    }
-
-    // 11.1.4 Array Initialiser
-
-    function parseArrayInitialiser() {
-        var elements = [], node = new Node(), restSpread;
-
-        expect('[');
-
-        while (!match(']')) {
-            if (match(',')) {
-                lex();
-                elements.push(null);
-            } else if (match('...')) {
-                restSpread = new Node();
-                lex();
-                restSpread.finishSpreadElement(inheritCoverGrammar(parseAssignmentExpression));
-
-                if (!match(']')) {
-                    isAssignmentTarget = isBindingElement = false;
-                    expect(',');
-                }
-                elements.push(restSpread);
-            } else {
-                elements.push(inheritCoverGrammar(parseAssignmentExpression));
-
-                if (!match(']')) {
-                    expect(',');
-                }
-            }
-        }
-
-        lex();
-
-        return node.finishArrayExpression(elements);
-    }
-
-    // 11.1.5 Object Initialiser
-
-    function parsePropertyFunction(node, paramInfo) {
-        var previousStrict, body;
-
-        isAssignmentTarget = isBindingElement = false;
-
-        previousStrict = strict;
-        body = isolateCoverGrammar(parseFunctionSourceElements);
-
-        if (strict && paramInfo.firstRestricted) {
-            tolerateUnexpectedToken(paramInfo.firstRestricted, paramInfo.message);
-        }
-        if (strict && paramInfo.stricted) {
-            tolerateUnexpectedToken(paramInfo.stricted, paramInfo.message);
-        }
-
-        strict = previousStrict;
-        return node.finishFunctionExpression(null, paramInfo.params, paramInfo.defaults, body);
-    }
-
-    function parsePropertyMethodFunction() {
-        var params, method, node = new Node();
-
-        params = parseParams();
-        method = parsePropertyFunction(node, params);
-
-        return method;
-    }
-
-    function parseObjectPropertyKey() {
-        var token, node = new Node(), expr;
-
-        token = lex();
-
-        // Note: This function is called only from parseObjectProperty(), where
-        // EOF and Punctuator tokens are already filtered out.
-
-        switch (token.type) {
-        case Token.StringLiteral:
-        case Token.NumericLiteral:
-            if (strict && token.octal) {
-                tolerateUnexpectedToken(token, Messages.StrictOctalLiteral);
-            }
-            return node.finishLiteral(token);
-        case Token.Identifier:
-        case Token.BooleanLiteral:
-        case Token.NullLiteral:
-        case Token.Keyword:
-            return node.finishIdentifier(token.value);
-        case Token.Punctuator:
-            if (token.value === '[') {
-                expr = isolateCoverGrammar(parseAssignmentExpression);
-                expect(']');
-                return expr;
-            }
-            break;
-        }
-        throwUnexpectedToken(token);
-    }
-
-    function lookaheadPropertyName() {
-        switch (lookahead.type) {
-        case Token.Identifier:
-        case Token.StringLiteral:
-        case Token.BooleanLiteral:
-        case Token.NullLiteral:
-        case Token.NumericLiteral:
-        case Token.Keyword:
-            return true;
-        case Token.Punctuator:
-            return lookahead.value === '[';
-        }
-        return false;
-    }
-
-    // This function is to try to parse a MethodDefinition as defined in 14.3. But in the case of object literals,
-    // it might be called at a position where there is in fact a short hand identifier pattern or a data property.
-    // This can only be determined after we consumed up to the left parentheses.
-    //
-    // In order to avoid back tracking, it returns `null` if the position is not a MethodDefinition and the caller
-    // is responsible to visit other options.
-    function tryParseMethodDefinition(token, key, computed, node) {
-        var value, options, methodNode;
-
-        if (token.type === Token.Identifier) {
-            // check for `get` and `set`;
-
-            if (token.value === 'get' && lookaheadPropertyName()) {
-                computed = match('[');
-                key = parseObjectPropertyKey();
-                methodNode = new Node();
-                expect('(');
-                expect(')');
-                value = parsePropertyFunction(methodNode, {
-                    params: [],
-                    defaults: [],
-                    stricted: null,
-                    firstRestricted: null,
-                    message: null
-                });
-                return node.finishProperty('get', key, computed, value, false, false);
-            } else if (token.value === 'set' && lookaheadPropertyName()) {
-                computed = match('[');
-                key = parseObjectPropertyKey();
-                methodNode = new Node();
-                expect('(');
-
-                options = {
-                    params: [],
-                    defaultCount: 0,
-                    defaults: [],
-                    firstRestricted: null,
-                    paramSet: {}
-                };
-                if (match(')')) {
-                    tolerateUnexpectedToken(lookahead);
-                } else {
-                    parseParam(options);
-                    if (options.defaultCount === 0) {
-                        options.defaults = [];
-                    }
-                }
-                expect(')');
-
-                value = parsePropertyFunction(methodNode, options);
-                return node.finishProperty('set', key, computed, value, false, false);
-            }
-        }
-
-        if (match('(')) {
-            value = parsePropertyMethodFunction();
-            return node.finishProperty('init', key, computed, value, true, false);
-        }
-
-        // Not a MethodDefinition.
-        return null;
-    }
-
-    function checkProto(key, computed, hasProto) {
-        if (computed === false && (key.type === Syntax.Identifier && key.name === '__proto__' ||
-            key.type === Syntax.Literal && key.value === '__proto__')) {
-            if (hasProto.value) {
-                tolerateError(Messages.DuplicateProtoProperty);
-            } else {
-                hasProto.value = true;
-            }
-        }
-    }
-
-    function parseObjectProperty(hasProto) {
-        var token = lookahead, node = new Node(), computed, key, maybeMethod, value;
-
-        computed = match('[');
-        key = parseObjectPropertyKey();
-        maybeMethod = tryParseMethodDefinition(token, key, computed, node);
-
-        if (maybeMethod) {
-            checkProto(maybeMethod.key, maybeMethod.computed, hasProto);
-            // finished
-            return maybeMethod;
-        }
-
-        // init property or short hand property.
-        checkProto(key, computed, hasProto);
-
-        if (match(':')) {
-            lex();
-            value = inheritCoverGrammar(parseAssignmentExpression);
-            return node.finishProperty('init', key, computed, value, false, false);
-        }
-
-        if (token.type === Token.Identifier) {
-            if (match('=')) {
-                firstCoverInitializedNameError = lookahead;
-                lex();
-                value = isolateCoverGrammar(parseAssignmentExpression);
-                return node.finishProperty('init', key, computed,
-                    new WrappingNode(token).finishAssignmentPattern(key, value), false, true);
-            }
-            return node.finishProperty('init', key, computed, key, false, true);
-        }
-
-        throwUnexpectedToken(lookahead);
-    }
-
-    function parseObjectInitialiser() {
-        var properties = [], hasProto = {value: false}, node = new Node();
-
-        expect('{');
-
-        while (!match('}')) {
-            properties.push(parseObjectProperty(hasProto));
-
-            if (!match('}')) {
-                expectCommaSeparator();
-            }
-        }
-
-        expect('}');
-
-        return node.finishObjectExpression(properties);
-    }
-
-    function reinterpretExpressionAsPattern(expr) {
-        var i;
-        switch (expr.type) {
-        case Syntax.Identifier:
-        case Syntax.MemberExpression:
-        case Syntax.RestElement:
-        case Syntax.AssignmentPattern:
-            break;
-        case Syntax.SpreadElement:
-            expr.type = Syntax.RestElement;
-            reinterpretExpressionAsPattern(expr.argument);
-            break;
-        case Syntax.ArrayExpression:
-            expr.type = Syntax.ArrayPattern;
-            for (i = 0; i < expr.elements.length; i++) {
-                if (expr.elements[i] !== null) {
-                    reinterpretExpressionAsPattern(expr.elements[i]);
-                }
-            }
-            break;
-        case Syntax.ObjectExpression:
-            expr.type = Syntax.ObjectPattern;
-            for (i = 0; i < expr.properties.length; i++) {
-                reinterpretExpressionAsPattern(expr.properties[i].value);
-            }
-            break;
-        case Syntax.AssignmentExpression:
-            expr.type = Syntax.AssignmentPattern;
-            reinterpretExpressionAsPattern(expr.left);
-            break;
-        default:
-            // Allow other node type for tolerant parsing.
-            break;
-        }
-    }
-
-    function parseTemplateElement(option) {
-        var node, token;
-
-        if (lookahead.type !== Token.Template || (option.head && !lookahead.head)) {
-            throwUnexpectedToken();
-        }
-
-        node = new Node();
-        token = lex();
-
-        return node.finishTemplateElement({ raw: token.value.raw, cooked: token.value.cooked }, token.tail);
-    }
-
-    function parseTemplateLiteral() {
-        var quasi, quasis, expressions, node = new Node();
-
-        quasi = parseTemplateElement({ head: true });
-        quasis = [ quasi ];
-        expressions = [];
-
-        while (!quasi.tail) {
-            expressions.push(parseExpression());
-            quasi = parseTemplateElement({ head: false });
-            quasis.push(quasi);
-        }
-
-        return node.finishTemplateLiteral(quasis, expressions);
-    }
-
-    // 11.1.6 The Grouping Operator
-
-    function parseGroupExpression() {
-        var expr, expressions, startToken, i;
-
-        expect('(');
-
-        if (match(')')) {
-            lex();
-            if (!match('=>')) {
-                expect('=>');
-            }
-            return {
-                type: PlaceHolders.ArrowParameterPlaceHolder,
-                params: []
-            };
-        }
-
-        startToken = lookahead;
-        if (match('...')) {
-            expr = parseRestElement();
-            expect(')');
-            if (!match('=>')) {
-                expect('=>');
-            }
-            return {
-                type: PlaceHolders.ArrowParameterPlaceHolder,
-                params: [expr]
-            };
-        }
-
-        isBindingElement = true;
-        expr = inheritCoverGrammar(parseAssignmentExpression);
-
-        if (match(',')) {
-            isAssignmentTarget = false;
-            expressions = [expr];
-
-            while (startIndex < length) {
-                if (!match(',')) {
-                    break;
-                }
-                lex();
-
-                if (match('...')) {
-                    if (!isBindingElement) {
-                        throwUnexpectedToken(lookahead);
-                    }
-                    expressions.push(parseRestElement());
-                    expect(')');
-                    if (!match('=>')) {
-                        expect('=>');
-                    }
-                    isBindingElement = false;
-                    for (i = 0; i < expressions.length; i++) {
-                        reinterpretExpressionAsPattern(expressions[i]);
-                    }
-                    return {
-                        type: PlaceHolders.ArrowParameterPlaceHolder,
-                        params: expressions
-                    };
-                }
-
-                expressions.push(inheritCoverGrammar(parseAssignmentExpression));
-            }
-
-            expr = new WrappingNode(startToken).finishSequenceExpression(expressions);
-        }
-
-
-        expect(')');
-
-        if (match('=>')) {
-            if (!isBindingElement) {
-                throwUnexpectedToken(lookahead);
-            }
-
-            if (expr.type === Syntax.SequenceExpression) {
-                for (i = 0; i < expr.expressions.length; i++) {
-                    reinterpretExpressionAsPattern(expr.expressions[i]);
-                }
-            } else {
-                reinterpretExpressionAsPattern(expr);
-            }
-
-            expr = {
-                type: PlaceHolders.ArrowParameterPlaceHolder,
-                params: expr.type === Syntax.SequenceExpression ? expr.expressions : [expr]
-            };
-        }
-        isBindingElement = false;
-        return expr;
-    }
-
-
-    // 11.1 Primary Expressions
-
-    function parsePrimaryExpression() {
-        var type, token, expr, node;
-
-        if (match('(')) {
-            isBindingElement = false;
-            return inheritCoverGrammar(parseGroupExpression);
-        }
-
-        if (match('[')) {
-            return inheritCoverGrammar(parseArrayInitialiser);
-        }
-
-        if (match('{')) {
-            return inheritCoverGrammar(parseObjectInitialiser);
-        }
-
-        type = lookahead.type;
-        node = new Node();
-
-        if (type === Token.Identifier) {
-            expr = node.finishIdentifier(lex().value);
-        } else if (type === Token.StringLiteral || type === Token.NumericLiteral) {
-            isAssignmentTarget = isBindingElement = false;
-            if (strict && lookahead.octal) {
-                tolerateUnexpectedToken(lookahead, Messages.StrictOctalLiteral);
-            }
-            expr = node.finishLiteral(lex());
-        } else if (type === Token.Keyword) {
-            isAssignmentTarget = isBindingElement = false;
-            if (matchKeyword('function')) {
-                return parseFunctionExpression();
-            }
-            if (matchKeyword('this')) {
-                lex();
-                return node.finishThisExpression();
-            }
-            if (matchKeyword('class')) {
-                return parseClassExpression();
-            }
-            throwUnexpectedToken(lex());
-        } else if (type === Token.BooleanLiteral) {
-            isAssignmentTarget = isBindingElement = false;
-            token = lex();
-            token.value = (token.value === 'true');
-            expr = node.finishLiteral(token);
-        } else if (type === Token.NullLiteral) {
-            isAssignmentTarget = isBindingElement = false;
-            token = lex();
-            token.value = null;
-            expr = node.finishLiteral(token);
-        } else if (match('/') || match('/=')) {
-            isAssignmentTarget = isBindingElement = false;
-            index = startIndex;
-
-            if (typeof extra.tokens !== 'undefined') {
-                token = collectRegex();
-            } else {
-                token = scanRegExp();
-            }
-            lex();
-            expr = node.finishLiteral(token);
-        } else if (type === Token.Template) {
-            expr = parseTemplateLiteral();
-        } else {
-            throwUnexpectedToken(lex());
-        }
-
-        return expr;
-    }
-
-    // 11.2 Left-Hand-Side Expressions
-
-    function parseArguments() {
-        var args = [];
-
-        expect('(');
-
-        if (!match(')')) {
-            while (startIndex < length) {
-                args.push(isolateCoverGrammar(parseAssignmentExpression));
-                if (match(')')) {
-                    break;
-                }
-                expectCommaSeparator();
-            }
-        }
-
-        expect(')');
-
-        return args;
-    }
-
-    function parseNonComputedProperty() {
-        var token, node = new Node();
-
-        token = lex();
-
-        if (!isIdentifierName(token)) {
-            throwUnexpectedToken(token);
-        }
-
-        return node.finishIdentifier(token.value);
-    }
-
-    function parseNonComputedMember() {
-        expect('.');
-
-        return parseNonComputedProperty();
-    }
-
-    function parseComputedMember() {
-        var expr;
-
-        expect('[');
-
-        expr = isolateCoverGrammar(parseExpression);
-
-        expect(']');
-
-        return expr;
-    }
-
-    function parseNewExpression() {
-        var callee, args, node = new Node();
-
-        expectKeyword('new');
-        callee = isolateCoverGrammar(parseLeftHandSideExpression);
-        args = match('(') ? parseArguments() : [];
-
-        isAssignmentTarget = isBindingElement = false;
-
-        return node.finishNewExpression(callee, args);
-    }
-
-    function parseLeftHandSideExpressionAllowCall() {
-        var quasi, expr, args, property, startToken, previousAllowIn = state.allowIn;
-
-        startToken = lookahead;
-        state.allowIn = true;
-
-        if (matchKeyword('super') && state.inFunctionBody) {
-            expr = new Node();
-            lex();
-            expr = expr.finishSuper();
-            if (!match('(') && !match('.') && !match('[')) {
-                throwUnexpectedToken(lookahead);
-            }
-        } else {
-            expr = inheritCoverGrammar(matchKeyword('new') ? parseNewExpression : parsePrimaryExpression);
-        }
-
-        for (;;) {
-            if (match('.')) {
-                isBindingElement = false;
-                isAssignmentTarget = true;
-                property = parseNonComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
-            } else if (match('(')) {
-                isBindingElement = false;
-                isAssignmentTarget = false;
-                args = parseArguments();
-                expr = new WrappingNode(startToken).finishCallExpression(expr, args);
-            } else if (match('[')) {
-                isBindingElement = false;
-                isAssignmentTarget = true;
-                property = parseComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
-            } else if (lookahead.type === Token.Template && lookahead.head) {
-                quasi = parseTemplateLiteral();
-                expr = new WrappingNode(startToken).finishTaggedTemplateExpression(expr, quasi);
-            } else {
-                break;
-            }
-        }
-        state.allowIn = previousAllowIn;
-
-        return expr;
-    }
-
-    function parseLeftHandSideExpression() {
-        var quasi, expr, property, startToken;
-        assert(state.allowIn, 'callee of new expression always allow in keyword.');
-
-        startToken = lookahead;
-
-        if (matchKeyword('super') && state.inFunctionBody) {
-            expr = new Node();
-            lex();
-            expr = expr.finishSuper();
-            if (!match('[') && !match('.')) {
-                throwUnexpectedToken(lookahead);
-            }
-        } else {
-            expr = inheritCoverGrammar(matchKeyword('new') ? parseNewExpression : parsePrimaryExpression);
-        }
-
-        for (;;) {
-            if (match('[')) {
-                isBindingElement = false;
-                isAssignmentTarget = true;
-                property = parseComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
-            } else if (match('.')) {
-                isBindingElement = false;
-                isAssignmentTarget = true;
-                property = parseNonComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
-            } else if (lookahead.type === Token.Template && lookahead.head) {
-                quasi = parseTemplateLiteral();
-                expr = new WrappingNode(startToken).finishTaggedTemplateExpression(expr, quasi);
-            } else {
-                break;
-            }
-        }
-        return expr;
-    }
-
-    // 11.3 Postfix Expressions
-
-    function parsePostfixExpression() {
-        var expr, token, startToken = lookahead;
-
-        expr = inheritCoverGrammar(parseLeftHandSideExpressionAllowCall);
-
-        if (!hasLineTerminator && lookahead.type === Token.Punctuator) {
-            if (match('++') || match('--')) {
-                // 11.3.1, 11.3.2
-                if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                    tolerateError(Messages.StrictLHSPostfix);
-                }
-
-                if (!isAssignmentTarget) {
-                    tolerateError(Messages.InvalidLHSInAssignment);
-                }
-
-                isAssignmentTarget = isBindingElement = false;
-
-                token = lex();
-                expr = new WrappingNode(startToken).finishPostfixExpression(token.value, expr);
-            }
-        }
-
-        return expr;
-    }
-
-    // 11.4 Unary Operators
-
-    function parseUnaryExpression() {
-        var token, expr, startToken;
-
-        if (lookahead.type !== Token.Punctuator && lookahead.type !== Token.Keyword) {
-            expr = parsePostfixExpression();
-        } else if (match('++') || match('--')) {
-            startToken = lookahead;
-            token = lex();
-            expr = inheritCoverGrammar(parseUnaryExpression);
-            // 11.4.4, 11.4.5
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                tolerateError(Messages.StrictLHSPrefix);
-            }
-
-            if (!isAssignmentTarget) {
-                tolerateError(Messages.InvalidLHSInAssignment);
-            }
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-            isAssignmentTarget = isBindingElement = false;
-        } else if (match('+') || match('-') || match('~') || match('!')) {
-            startToken = lookahead;
-            token = lex();
-            expr = inheritCoverGrammar(parseUnaryExpression);
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-            isAssignmentTarget = isBindingElement = false;
-        } else if (matchKeyword('delete') || matchKeyword('void') || matchKeyword('typeof')) {
-            startToken = lookahead;
-            token = lex();
-            expr = inheritCoverGrammar(parseUnaryExpression);
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-            if (strict && expr.operator === 'delete' && expr.argument.type === Syntax.Identifier) {
-                tolerateError(Messages.StrictDelete);
-            }
-            isAssignmentTarget = isBindingElement = false;
-        } else {
-            expr = parsePostfixExpression();
-        }
-
-        return expr;
-    }
-
-    function binaryPrecedence(token, allowIn) {
-        var prec = 0;
-
-        if (token.type !== Token.Punctuator && token.type !== Token.Keyword) {
-            return 0;
-        }
-
-        switch (token.value) {
-        case '||':
-            prec = 1;
-            break;
-
-        case '&&':
-            prec = 2;
-            break;
-
-        case '|':
-            prec = 3;
-            break;
-
-        case '^':
-            prec = 4;
-            break;
-
-        case '&':
-            prec = 5;
-            break;
-
-        case '==':
-        case '!=':
-        case '===':
-        case '!==':
-            prec = 6;
-            break;
-
-        case '<':
-        case '>':
-        case '<=':
-        case '>=':
-        case 'instanceof':
-            prec = 7;
-            break;
-
-        case 'in':
-            prec = allowIn ? 7 : 0;
-            break;
-
-        case '<<':
-        case '>>':
-        case '>>>':
-            prec = 8;
-            break;
-
-        case '+':
-        case '-':
-            prec = 9;
-            break;
-
-        case '*':
-        case '/':
-        case '%':
-            prec = 11;
-            break;
-
-        default:
-            break;
-        }
-
-        return prec;
-    }
-
-    // 11.5 Multiplicative Operators
-    // 11.6 Additive Operators
-    // 11.7 Bitwise Shift Operators
-    // 11.8 Relational Operators
-    // 11.9 Equality Operators
-    // 11.10 Binary Bitwise Operators
-    // 11.11 Binary Logical Operators
-
-    function parseBinaryExpression() {
-        var marker, markers, expr, token, prec, stack, right, operator, left, i;
-
-        marker = lookahead;
-        left = inheritCoverGrammar(parseUnaryExpression);
-
-        token = lookahead;
-        prec = binaryPrecedence(token, state.allowIn);
-        if (prec === 0) {
-            return left;
-        }
-        isAssignmentTarget = isBindingElement = false;
-        token.prec = prec;
-        lex();
-
-        markers = [marker, lookahead];
-        right = isolateCoverGrammar(parseUnaryExpression);
-
-        stack = [left, token, right];
-
-        while ((prec = binaryPrecedence(lookahead, state.allowIn)) > 0) {
-
-            // Reduce: make a binary expression from the three topmost entries.
-            while ((stack.length > 2) && (prec <= stack[stack.length - 2].prec)) {
-                right = stack.pop();
-                operator = stack.pop().value;
-                left = stack.pop();
-                markers.pop();
-                expr = new WrappingNode(markers[markers.length - 1]).finishBinaryExpression(operator, left, right);
-                stack.push(expr);
-            }
-
-            // Shift.
-            token = lex();
-            token.prec = prec;
-            stack.push(token);
-            markers.push(lookahead);
-            expr = isolateCoverGrammar(parseUnaryExpression);
-            stack.push(expr);
-        }
-
-        // Final reduce to clean-up the stack.
-        i = stack.length - 1;
-        expr = stack[i];
-        markers.pop();
-        while (i > 1) {
-            expr = new WrappingNode(markers.pop()).finishBinaryExpression(stack[i - 1].value, stack[i - 2], expr);
-            i -= 2;
-        }
-
-        return expr;
-    }
-
-
-    // 11.12 Conditional Operator
-
-    function parseConditionalExpression() {
-        var expr, previousAllowIn, consequent, alternate, startToken;
-
-        startToken = lookahead;
-
-        expr = inheritCoverGrammar(parseBinaryExpression);
-        if (match('?')) {
-            lex();
-            previousAllowIn = state.allowIn;
-            state.allowIn = true;
-            consequent = isolateCoverGrammar(parseAssignmentExpression);
-            state.allowIn = previousAllowIn;
-            expect(':');
-            alternate = isolateCoverGrammar(parseAssignmentExpression);
-
-            expr = new WrappingNode(startToken).finishConditionalExpression(expr, consequent, alternate);
-            isAssignmentTarget = isBindingElement = false;
-        }
-
-        return expr;
-    }
-
-    // [ES6] 14.2 Arrow Function
-
-    function parseConciseBody() {
-        if (match('{')) {
-            return parseFunctionSourceElements();
-        }
-        return isolateCoverGrammar(parseAssignmentExpression);
-    }
-
-    function checkPatternParam(options, param) {
-        var i;
-        switch (param.type) {
-        case Syntax.Identifier:
-            validateParam(options, param, param.name);
-            break;
-        case Syntax.RestElement:
-            checkPatternParam(options, param.argument);
-            break;
-        case Syntax.AssignmentPattern:
-            checkPatternParam(options, param.left);
-            break;
-        case Syntax.ArrayPattern:
-            for (i = 0; i < param.elements.length; i++) {
-                if (param.elements[i] !== null) {
-                    checkPatternParam(options, param.elements[i]);
-                }
-            }
-            break;
-        default:
-            assert(param.type === Syntax.ObjectPattern, 'Invalid type');
-            for (i = 0; i < param.properties.length; i++) {
-                checkPatternParam(options, param.properties[i].value);
-            }
-            break;
-        }
-    }
-    function reinterpretAsCoverFormalsList(expr) {
-        var i, len, param, params, defaults, defaultCount, options, token;
-
-        defaults = [];
-        defaultCount = 0;
-        params = [expr];
-
-        switch (expr.type) {
-        case Syntax.Identifier:
-            break;
-        case PlaceHolders.ArrowParameterPlaceHolder:
-            params = expr.params;
-            break;
-        default:
-            return null;
-        }
-
-        options = {
-            paramSet: {}
-        };
-
-        for (i = 0, len = params.length; i < len; i += 1) {
-            param = params[i];
-            switch (param.type) {
-            case Syntax.AssignmentPattern:
-                params[i] = param.left;
-                defaults.push(param.right);
-                ++defaultCount;
-                checkPatternParam(options, param.left);
-                break;
-            default:
-                checkPatternParam(options, param);
-                params[i] = param;
-                defaults.push(null);
-                break;
-            }
-        }
-
-        if (options.message === Messages.StrictParamDupe) {
-            token = strict ? options.stricted : options.firstRestricted;
-            throwUnexpectedToken(token, options.message);
-        }
-
-        if (defaultCount === 0) {
-            defaults = [];
-        }
-
-        return {
-            params: params,
-            defaults: defaults,
-            stricted: options.stricted,
-            firstRestricted: options.firstRestricted,
-            message: options.message
-        };
-    }
-
-    function parseArrowFunctionExpression(options, node) {
-        var previousStrict, body;
-
-        if (hasLineTerminator) {
-            tolerateUnexpectedToken(lookahead);
-        }
-        expect('=>');
-        previousStrict = strict;
-
-        body = parseConciseBody();
-
-        if (strict && options.firstRestricted) {
-            throwUnexpectedToken(options.firstRestricted, options.message);
-        }
-        if (strict && options.stricted) {
-            tolerateUnexpectedToken(options.stricted, options.message);
-        }
-
-        strict = previousStrict;
-
-        return node.finishArrowFunctionExpression(options.params, options.defaults, body, body.type !== Syntax.BlockStatement);
-    }
-
-    // 11.13 Assignment Operators
-
-    function parseAssignmentExpression() {
-        var token, expr, right, list, startToken;
-
-        startToken = lookahead;
-        token = lookahead;
-
-        expr = parseConditionalExpression();
-
-        if (expr.type === PlaceHolders.ArrowParameterPlaceHolder || match('=>')) {
-            isAssignmentTarget = isBindingElement = false;
-            list = reinterpretAsCoverFormalsList(expr);
-
-            if (list) {
-                firstCoverInitializedNameError = null;
-                return parseArrowFunctionExpression(list, new WrappingNode(startToken));
-            }
-
-            return expr;
-        }
-
-        if (matchAssign()) {
-            if (!isAssignmentTarget) {
-                tolerateError(Messages.InvalidLHSInAssignment);
-            }
-
-            // 11.13.1
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                tolerateUnexpectedToken(token, Messages.StrictLHSAssignment);
-            }
-
-            if (!match('=')) {
-                isAssignmentTarget = isBindingElement = false;
-            } else {
-                reinterpretExpressionAsPattern(expr);
-            }
-
-            token = lex();
-            right = isolateCoverGrammar(parseAssignmentExpression);
-            expr = new WrappingNode(startToken).finishAssignmentExpression(token.value, expr, right);
-            firstCoverInitializedNameError = null;
-        }
-
-        return expr;
-    }
-
-    // 11.14 Comma Operator
-
-    function parseExpression() {
-        var expr, startToken = lookahead, expressions;
-
-        expr = isolateCoverGrammar(parseAssignmentExpression);
-
-        if (match(',')) {
-            expressions = [expr];
-
-            while (startIndex < length) {
-                if (!match(',')) {
-                    break;
-                }
-                lex();
-                expressions.push(isolateCoverGrammar(parseAssignmentExpression));
-            }
-
-            expr = new WrappingNode(startToken).finishSequenceExpression(expressions);
-        }
-
-        return expr;
-    }
-
-    // 12.1 Block
-
-    function parseStatementListItem() {
-        if (lookahead.type === Token.Keyword) {
-            switch (lookahead.value) {
-            case 'export':
-                if (sourceType !== 'module') {
-                    tolerateUnexpectedToken(lookahead, Messages.IllegalExportDeclaration);
-                }
-                return parseExportDeclaration();
-            case 'import':
-                if (sourceType !== 'module') {
-                    tolerateUnexpectedToken(lookahead, Messages.IllegalImportDeclaration);
-                }
-                return parseImportDeclaration();
-            case 'const':
-            case 'let':
-                return parseLexicalDeclaration({inFor: false});
-            case 'function':
-                return parseFunctionDeclaration(new Node());
-            case 'class':
-                return parseClassDeclaration();
-            }
-        }
-
-        return parseStatement();
-    }
-
-    function parseStatementList() {
-        var list = [];
-        while (startIndex < length) {
-            if (match('}')) {
-                break;
-            }
-            list.push(parseStatementListItem());
-        }
-
-        return list;
-    }
-
-    function parseBlock() {
-        var block, node = new Node();
-
-        expect('{');
-
-        block = parseStatementList();
-
-        expect('}');
-
-        return node.finishBlockStatement(block);
-    }
-
-    // 12.2 Variable Statement
-
-    function parseVariableIdentifier() {
-        var token, node = new Node();
-
-        token = lex();
-
-        if (token.type !== Token.Identifier) {
-            if (strict && token.type === Token.Keyword && isStrictModeReservedWord(token.value)) {
-                tolerateUnexpectedToken(token, Messages.StrictReservedWord);
-            } else {
-                throwUnexpectedToken(token);
-            }
-        }
-
-        return node.finishIdentifier(token.value);
-    }
-
-    function parseVariableDeclaration() {
-        var init = null, id, node = new Node();
-
-        id = parsePattern();
-
-        // 12.2.1
-        if (strict && isRestrictedWord(id.name)) {
-            tolerateError(Messages.StrictVarName);
-        }
-
-        if (match('=')) {
-            lex();
-            init = isolateCoverGrammar(parseAssignmentExpression);
-        } else if (id.type !== Syntax.Identifier) {
-            expect('=');
-        }
-
-        return node.finishVariableDeclarator(id, init);
-    }
-
-    function parseVariableDeclarationList() {
-        var list = [];
-
-        do {
-            list.push(parseVariableDeclaration());
-            if (!match(',')) {
-                break;
-            }
-            lex();
-        } while (startIndex < length);
-
-        return list;
-    }
-
-    function parseVariableStatement(node) {
-        var declarations;
-
-        expectKeyword('var');
-
-        declarations = parseVariableDeclarationList();
-
-        consumeSemicolon();
-
-        return node.finishVariableDeclaration(declarations);
-    }
-
-    function parseLexicalBinding(kind, options) {
-        var init = null, id, node = new Node();
-
-        id = parsePattern();
-
-        // 12.2.1
-        if (strict && id.type === Syntax.Identifier && isRestrictedWord(id.name)) {
-            tolerateError(Messages.StrictVarName);
-        }
-
-        if (kind === 'const') {
-            if (!matchKeyword('in')) {
-                expect('=');
-                init = isolateCoverGrammar(parseAssignmentExpression);
-            }
-        } else if ((!options.inFor && id.type !== Syntax.Identifier) || match('=')) {
-            expect('=');
-            init = isolateCoverGrammar(parseAssignmentExpression);
-        }
-
-        return node.finishVariableDeclarator(id, init);
-    }
-
-    function parseBindingList(kind, options) {
-        var list = [];
-
-        do {
-            list.push(parseLexicalBinding(kind, options));
-            if (!match(',')) {
-                break;
-            }
-            lex();
-        } while (startIndex < length);
-
-        return list;
-    }
-
-    function parseLexicalDeclaration(options) {
-        var kind, declarations, node = new Node();
-
-        kind = lex().value;
-        assert(kind === 'let' || kind === 'const', 'Lexical declaration must be either let or const');
-
-        declarations = parseBindingList(kind, options);
-
-        consumeSemicolon();
-
-        return node.finishLexicalDeclaration(declarations, kind);
-    }
-
-    function parseRestElement() {
-        var param, node = new Node();
-
-        lex();
-
-        if (match('{')) {
-            throwError(Messages.ObjectPatternAsRestParameter);
-        }
-
-        param = parseVariableIdentifier();
-
-        if (match('=')) {
-            throwError(Messages.DefaultRestParameter);
-        }
-
-        if (!match(')')) {
-            throwError(Messages.ParameterAfterRestParameter);
-        }
-
-        return node.finishRestElement(param);
-    }
-
-    // 12.3 Empty Statement
-
-    function parseEmptyStatement(node) {
-        expect(';');
-        return node.finishEmptyStatement();
-    }
-
-    // 12.4 Expression Statement
-
-    function parseExpressionStatement(node) {
-        var expr = parseExpression();
-        consumeSemicolon();
-        return node.finishExpressionStatement(expr);
-    }
-
-    // 12.5 If statement
-
-    function parseIfStatement(node) {
-        var test, consequent, alternate;
-
-        expectKeyword('if');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        consequent = parseStatement();
-
-        if (matchKeyword('else')) {
-            lex();
-            alternate = parseStatement();
-        } else {
-            alternate = null;
-        }
-
-        return node.finishIfStatement(test, consequent, alternate);
-    }
-
-    // 12.6 Iteration Statements
-
-    function parseDoWhileStatement(node) {
-        var body, test, oldInIteration;
-
-        expectKeyword('do');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        if (match(';')) {
-            lex();
-        }
-
-        return node.finishDoWhileStatement(body, test);
-    }
-
-    function parseWhileStatement(node) {
-        var test, body, oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        return node.finishWhileStatement(test, body);
-    }
-
-    function parseForStatement(node) {
-        var init, initSeq, initStartToken, test, update, left, right, kind, declarations,
-            body, oldInIteration, previousAllowIn = state.allowIn;
-
-        init = test = update = null;
-
-        expectKeyword('for');
-
-        expect('(');
-
-        if (match(';')) {
-            lex();
-        } else {
-            if (matchKeyword('var')) {
-                init = new Node();
-                lex();
-
-                state.allowIn = false;
-                init = init.finishVariableDeclaration(parseVariableDeclarationList());
-                state.allowIn = previousAllowIn;
-
-                if (init.declarations.length === 1 && matchKeyword('in')) {
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                } else {
-                    expect(';');
-                }
-            } else if (matchKeyword('const') || matchKeyword('let')) {
-                init = new Node();
-                kind = lex().value;
-
-                state.allowIn = false;
-                declarations = parseBindingList(kind, {inFor: true});
-                state.allowIn = previousAllowIn;
-
-                if (declarations.length === 1 && declarations[0].init === null && matchKeyword('in')) {
-                    init = init.finishLexicalDeclaration(declarations, kind);
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                } else {
-                    consumeSemicolon();
-                    init = init.finishLexicalDeclaration(declarations, kind);
-                }
-            } else {
-                initStartToken = lookahead;
-                state.allowIn = false;
-                init = inheritCoverGrammar(parseAssignmentExpression);
-                state.allowIn = previousAllowIn;
-
-                if (matchKeyword('in')) {
-                    if (!isAssignmentTarget) {
-                        tolerateError(Messages.InvalidLHSInForIn);
-                    }
-
-                    lex();
-                    reinterpretExpressionAsPattern(init);
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                } else {
-                    if (match(',')) {
-                        initSeq = [init];
-                        while (match(',')) {
-                            lex();
-                            initSeq.push(isolateCoverGrammar(parseAssignmentExpression));
-                        }
-                        init = new WrappingNode(initStartToken).finishSequenceExpression(initSeq);
-                    }
-                    expect(';');
-                }
-            }
-        }
-
-        if (typeof left === 'undefined') {
-
-            if (!match(';')) {
-                test = parseExpression();
-            }
-            expect(';');
-
-            if (!match(')')) {
-                update = parseExpression();
-            }
-        }
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = isolateCoverGrammar(parseStatement);
-
-        state.inIteration = oldInIteration;
-
-        return (typeof left === 'undefined') ?
-                node.finishForStatement(init, test, update, body) :
-                node.finishForInStatement(left, right, body);
-    }
-
-    // 12.7 The continue statement
-
-    function parseContinueStatement(node) {
-        var label = null, key;
-
-        expectKeyword('continue');
-
-        // Optimize the most common form: 'continue;'.
-        if (source.charCodeAt(startIndex) === 0x3B) {
-            lex();
-
-            if (!state.inIteration) {
-                throwError(Messages.IllegalContinue);
-            }
-
-            return node.finishContinueStatement(null);
-        }
-
-        if (hasLineTerminator) {
-            if (!state.inIteration) {
-                throwError(Messages.IllegalContinue);
-            }
-
-            return node.finishContinueStatement(null);
-        }
-
-        if (lookahead.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            key = '$' + label.name;
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !state.inIteration) {
-            throwError(Messages.IllegalContinue);
-        }
-
-        return node.finishContinueStatement(label);
-    }
-
-    // 12.8 The break statement
-
-    function parseBreakStatement(node) {
-        var label = null, key;
-
-        expectKeyword('break');
-
-        // Catch the very common case first: immediately a semicolon (U+003B).
-        if (source.charCodeAt(lastIndex) === 0x3B) {
-            lex();
-
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError(Messages.IllegalBreak);
-            }
-
-            return node.finishBreakStatement(null);
-        }
-
-        if (hasLineTerminator) {
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError(Messages.IllegalBreak);
-            }
-
-            return node.finishBreakStatement(null);
-        }
-
-        if (lookahead.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            key = '$' + label.name;
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !(state.inIteration || state.inSwitch)) {
-            throwError(Messages.IllegalBreak);
-        }
-
-        return node.finishBreakStatement(label);
-    }
-
-    // 12.9 The return statement
-
-    function parseReturnStatement(node) {
-        var argument = null;
-
-        expectKeyword('return');
-
-        if (!state.inFunctionBody) {
-            tolerateError(Messages.IllegalReturn);
-        }
-
-        // 'return' followed by a space and an identifier is very common.
-        if (source.charCodeAt(lastIndex) === 0x20) {
-            if (isIdentifierStart(source.charCodeAt(lastIndex + 1))) {
-                argument = parseExpression();
-                consumeSemicolon();
-                return node.finishReturnStatement(argument);
-            }
-        }
-
-        if (hasLineTerminator) {
-            // HACK
-            return node.finishReturnStatement(null);
-        }
-
-        if (!match(';')) {
-            if (!match('}') && lookahead.type !== Token.EOF) {
-                argument = parseExpression();
-            }
-        }
-
-        consumeSemicolon();
-
-        return node.finishReturnStatement(argument);
-    }
-
-    // 12.10 The with statement
-
-    function parseWithStatement(node) {
-        var object, body;
-
-        if (strict) {
-            tolerateError(Messages.StrictModeWith);
-        }
-
-        expectKeyword('with');
-
-        expect('(');
-
-        object = parseExpression();
-
-        expect(')');
-
-        body = parseStatement();
-
-        return node.finishWithStatement(object, body);
-    }
-
-    // 12.10 The swith statement
-
-    function parseSwitchCase() {
-        var test, consequent = [], statement, node = new Node();
-
-        if (matchKeyword('default')) {
-            lex();
-            test = null;
-        } else {
-            expectKeyword('case');
-            test = parseExpression();
-        }
-        expect(':');
-
-        while (startIndex < length) {
-            if (match('}') || matchKeyword('default') || matchKeyword('case')) {
-                break;
-            }
-            statement = parseStatementListItem();
-            consequent.push(statement);
-        }
-
-        return node.finishSwitchCase(test, consequent);
-    }
-
-    function parseSwitchStatement(node) {
-        var discriminant, cases, clause, oldInSwitch, defaultFound;
-
-        expectKeyword('switch');
-
-        expect('(');
-
-        discriminant = parseExpression();
-
-        expect(')');
-
-        expect('{');
-
-        cases = [];
-
-        if (match('}')) {
-            lex();
-            return node.finishSwitchStatement(discriminant, cases);
-        }
-
-        oldInSwitch = state.inSwitch;
-        state.inSwitch = true;
-        defaultFound = false;
-
-        while (startIndex < length) {
-            if (match('}')) {
-                break;
-            }
-            clause = parseSwitchCase();
-            if (clause.test === null) {
-                if (defaultFound) {
-                    throwError(Messages.MultipleDefaultsInSwitch);
-                }
-                defaultFound = true;
-            }
-            cases.push(clause);
-        }
-
-        state.inSwitch = oldInSwitch;
-
-        expect('}');
-
-        return node.finishSwitchStatement(discriminant, cases);
-    }
-
-    // 12.13 The throw statement
-
-    function parseThrowStatement(node) {
-        var argument;
-
-        expectKeyword('throw');
-
-        if (hasLineTerminator) {
-            throwError(Messages.NewlineAfterThrow);
-        }
-
-        argument = parseExpression();
-
-        consumeSemicolon();
-
-        return node.finishThrowStatement(argument);
-    }
-
-    // 12.14 The try statement
-
-    function parseCatchClause() {
-        var param, body, node = new Node();
-
-        expectKeyword('catch');
-
-        expect('(');
-        if (match(')')) {
-            throwUnexpectedToken(lookahead);
-        }
-
-        param = parsePattern();
-
-        // 12.14.1
-        if (strict && isRestrictedWord(param.name)) {
-            tolerateError(Messages.StrictCatchVariable);
-        }
-
-        expect(')');
-        body = parseBlock();
-        return node.finishCatchClause(param, body);
-    }
-
-    function parseTryStatement(node) {
-        var block, handler = null, finalizer = null;
-
-        expectKeyword('try');
-
-        block = parseBlock();
-
-        if (matchKeyword('catch')) {
-            handler = parseCatchClause();
-        }
-
-        if (matchKeyword('finally')) {
-            lex();
-            finalizer = parseBlock();
-        }
-
-        if (!handler && !finalizer) {
-            throwError(Messages.NoCatchOrFinally);
-        }
-
-        return node.finishTryStatement(block, handler, finalizer);
-    }
-
-    // 12.15 The debugger statement
-
-    function parseDebuggerStatement(node) {
-        expectKeyword('debugger');
-
-        consumeSemicolon();
-
-        return node.finishDebuggerStatement();
-    }
-
-    // 12 Statements
-
-    function parseStatement() {
-        var type = lookahead.type,
-            expr,
-            labeledBody,
-            key,
-            node;
-
-        if (type === Token.EOF) {
-            throwUnexpectedToken(lookahead);
-        }
-
-        if (type === Token.Punctuator && lookahead.value === '{') {
-            return parseBlock();
-        }
-        isAssignmentTarget = isBindingElement = true;
-        node = new Node();
-
-        if (type === Token.Punctuator) {
-            switch (lookahead.value) {
-            case ';':
-                return parseEmptyStatement(node);
-            case '(':
-                return parseExpressionStatement(node);
-            default:
-                break;
-            }
-        } else if (type === Token.Keyword) {
-            switch (lookahead.value) {
-            case 'break':
-                return parseBreakStatement(node);
-            case 'continue':
-                return parseContinueStatement(node);
-            case 'debugger':
-                return parseDebuggerStatement(node);
-            case 'do':
-                return parseDoWhileStatement(node);
-            case 'for':
-                return parseForStatement(node);
-            case 'function':
-                return parseFunctionDeclaration(node);
-            case 'if':
-                return parseIfStatement(node);
-            case 'return':
-                return parseReturnStatement(node);
-            case 'switch':
-                return parseSwitchStatement(node);
-            case 'throw':
-                return parseThrowStatement(node);
-            case 'try':
-                return parseTryStatement(node);
-            case 'var':
-                return parseVariableStatement(node);
-            case 'while':
-                return parseWhileStatement(node);
-            case 'with':
-                return parseWithStatement(node);
-            default:
-                break;
-            }
-        }
-
-        expr = parseExpression();
-
-        // 12.12 Labelled Statements
-        if ((expr.type === Syntax.Identifier) && match(':')) {
-            lex();
-
-            key = '$' + expr.name;
-            if (Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.Redeclaration, 'Label', expr.name);
-            }
-
-            state.labelSet[key] = true;
-            labeledBody = parseStatement();
-            delete state.labelSet[key];
-            return node.finishLabeledStatement(expr, labeledBody);
-        }
-
-        consumeSemicolon();
-
-        return node.finishExpressionStatement(expr);
-    }
-
-    // 13 Function Definition
-
-    function parseFunctionSourceElements() {
-        var statement, body = [], token, directive, firstRestricted,
-            oldLabelSet, oldInIteration, oldInSwitch, oldInFunctionBody, oldParenthesisCount,
-            node = new Node();
-
-        expect('{');
-
-        while (startIndex < length) {
-            if (lookahead.type !== Token.StringLiteral) {
-                break;
-            }
-            token = lookahead;
-
-            statement = parseStatementListItem();
-            body.push(statement);
-            if (statement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = source.slice(token.start + 1, token.end - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        oldLabelSet = state.labelSet;
-        oldInIteration = state.inIteration;
-        oldInSwitch = state.inSwitch;
-        oldInFunctionBody = state.inFunctionBody;
-        oldParenthesisCount = state.parenthesizedCount;
-
-        state.labelSet = {};
-        state.inIteration = false;
-        state.inSwitch = false;
-        state.inFunctionBody = true;
-        state.parenthesizedCount = 0;
-
-        while (startIndex < length) {
-            if (match('}')) {
-                break;
-            }
-            body.push(parseStatementListItem());
-        }
-
-        expect('}');
-
-        state.labelSet = oldLabelSet;
-        state.inIteration = oldInIteration;
-        state.inSwitch = oldInSwitch;
-        state.inFunctionBody = oldInFunctionBody;
-        state.parenthesizedCount = oldParenthesisCount;
-
-        return node.finishBlockStatement(body);
-    }
-
-    function validateParam(options, param, name) {
-        var key = '$' + name;
-        if (strict) {
-            if (isRestrictedWord(name)) {
-                options.stricted = param;
-                options.message = Messages.StrictParamName;
-            }
-            if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
-                options.stricted = param;
-                options.message = Messages.StrictParamDupe;
-            }
-        } else if (!options.firstRestricted) {
-            if (isRestrictedWord(name)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictParamName;
-            } else if (isStrictModeReservedWord(name)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictReservedWord;
-            } else if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictParamDupe;
-            }
-        }
-        options.paramSet[key] = true;
-    }
-
-    function parseParam(options) {
-        var token, param, def;
-
-        token = lookahead;
-        if (token.value === '...') {
-            param = parseRestElement();
-            validateParam(options, param.argument, param.argument.name);
-            options.params.push(param);
-            options.defaults.push(null);
-            return false;
-        }
-
-        param = parsePatternWithDefault();
-        validateParam(options, token, token.value);
-
-        if (param.type === Syntax.AssignmentPattern) {
-            def = param.right;
-            param = param.left;
-            ++options.defaultCount;
-        }
-
-        options.params.push(param);
-        options.defaults.push(def);
-
-        return !match(')');
-    }
-
-    function parseParams(firstRestricted) {
-        var options;
-
-        options = {
-            params: [],
-            defaultCount: 0,
-            defaults: [],
-            firstRestricted: firstRestricted
-        };
-
-        expect('(');
-
-        if (!match(')')) {
-            options.paramSet = {};
-            while (startIndex < length) {
-                if (!parseParam(options)) {
-                    break;
-                }
-                expect(',');
-            }
-        }
-
-        expect(')');
-
-        if (options.defaultCount === 0) {
-            options.defaults = [];
-        }
-
-        return {
-            params: options.params,
-            defaults: options.defaults,
-            stricted: options.stricted,
-            firstRestricted: options.firstRestricted,
-            message: options.message
-        };
-    }
-
-    function parseFunctionDeclaration(node, identifierIsOptional) {
-        var id = null, params = [], defaults = [], body, token, stricted, tmp, firstRestricted, message, previousStrict;
-
-        expectKeyword('function');
-        if (!identifierIsOptional || !match('(')) {
-            token = lookahead;
-            id = parseVariableIdentifier();
-            if (strict) {
-                if (isRestrictedWord(token.value)) {
-                    tolerateUnexpectedToken(token, Messages.StrictFunctionName);
-                }
-            } else {
-                if (isRestrictedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictFunctionName;
-                } else if (isStrictModeReservedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictReservedWord;
-                }
-            }
-        }
-
-        tmp = parseParams(firstRestricted);
-        params = tmp.params;
-        defaults = tmp.defaults;
-        stricted = tmp.stricted;
-        firstRestricted = tmp.firstRestricted;
-        if (tmp.message) {
-            message = tmp.message;
-        }
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwUnexpectedToken(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            tolerateUnexpectedToken(stricted, message);
-        }
-        strict = previousStrict;
-
-        return node.finishFunctionDeclaration(id, params, defaults, body);
-    }
-
-    function parseFunctionExpression() {
-        var token, id = null, stricted, firstRestricted, message, tmp,
-            params = [], defaults = [], body, previousStrict, node = new Node();
-
-        expectKeyword('function');
-
-        if (!match('(')) {
-            token = lookahead;
-            id = parseVariableIdentifier();
-            if (strict) {
-                if (isRestrictedWord(token.value)) {
-                    tolerateUnexpectedToken(token, Messages.StrictFunctionName);
-                }
-            } else {
-                if (isRestrictedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictFunctionName;
-                } else if (isStrictModeReservedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictReservedWord;
-                }
-            }
-        }
-
-        tmp = parseParams(firstRestricted);
-        params = tmp.params;
-        defaults = tmp.defaults;
-        stricted = tmp.stricted;
-        firstRestricted = tmp.firstRestricted;
-        if (tmp.message) {
-            message = tmp.message;
-        }
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwUnexpectedToken(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            tolerateUnexpectedToken(stricted, message);
-        }
-        strict = previousStrict;
-
-        return node.finishFunctionExpression(id, params, defaults, body);
-    }
-
-
-    function parseClassBody() {
-        var classBody, token, isStatic, hasConstructor = false, body, method, computed, key;
-
-        classBody = new Node();
-
-        expect('{');
-        body = [];
-        while (!match('}')) {
-            if (match(';')) {
-                lex();
-            } else {
-                method = new Node();
-                token = lookahead;
-                isStatic = false;
-                computed = match('[');
-                key = parseObjectPropertyKey();
-                if (key.name === 'static' && lookaheadPropertyName()) {
-                    token = lookahead;
-                    isStatic = true;
-                    computed = match('[');
-                    key = parseObjectPropertyKey();
-                }
-                method = tryParseMethodDefinition(token, key, computed, method);
-                if (method) {
-                    method['static'] = isStatic;
-                    if (method.kind === 'init') {
-                        method.kind = 'method';
-                    }
-                    if (!isStatic) {
-                        if (!method.computed && (method.key.name || method.key.value.toString()) === 'constructor') {
-                            if (method.kind !== 'method' || !method.method || method.value.generator) {
-                                throwUnexpectedToken(token, Messages.ConstructorSpecialMethod);
-                            }
-                            if (hasConstructor) {
-                                throwUnexpectedToken(token, Messages.DuplicateConstructor);
-                            } else {
-                                hasConstructor = true;
-                            }
-                            method.kind = 'constructor';
-                        }
-                    } else {
-                        if (!method.computed && (method.key.name || method.key.value.toString()) === 'prototype') {
-                            throwUnexpectedToken(token, Messages.StaticPrototype);
-                        }
-                    }
-                    method.type = Syntax.MethodDefinition;
-                    delete method.method;
-                    delete method.shorthand;
-                    body.push(method);
-                } else {
-                    throwUnexpectedToken(lookahead);
-                }
-            }
-        }
-        lex();
-        return classBody.finishClassBody(body);
-    }
-
-    function parseClassDeclaration(identifierIsOptional) {
-        var id = null, superClass = null, classNode = new Node(), classBody, previousStrict = strict;
-        strict = true;
-
-        expectKeyword('class');
-
-        if (!identifierIsOptional || lookahead.type === Token.Identifier) {
-            id = parseVariableIdentifier();
-        }
-
-        if (matchKeyword('extends')) {
-            lex();
-            superClass = isolateCoverGrammar(parseLeftHandSideExpressionAllowCall);
-        }
-        classBody = parseClassBody();
-        strict = previousStrict;
-
-        return classNode.finishClassDeclaration(id, superClass, classBody);
-    }
-
-    function parseClassExpression() {
-        var id = null, superClass = null, classNode = new Node(), classBody, previousStrict = strict;
-        strict = true;
-
-        expectKeyword('class');
-
-        if (lookahead.type === Token.Identifier) {
-            id = parseVariableIdentifier();
-        }
-
-        if (matchKeyword('extends')) {
-            lex();
-            superClass = isolateCoverGrammar(parseLeftHandSideExpressionAllowCall);
-        }
-        classBody = parseClassBody();
-        strict = previousStrict;
-
-        return classNode.finishClassExpression(id, superClass, classBody);
-    }
-
-    // Modules grammar from:
-    // people.mozilla.org/~jorendorff/es6-draft.html
-
-    function parseModuleSpecifier() {
-        var node = new Node();
-
-        if (lookahead.type !== Token.StringLiteral) {
-            throwError(Messages.InvalidModuleSpecifier);
-        }
-        return node.finishLiteral(lex());
-    }
-
-    function parseExportSpecifier() {
-        var exported, local, node = new Node(), def;
-        if (matchKeyword('default')) {
-            // export {default} from 'something';
-            def = new Node();
-            lex();
-            local = def.finishIdentifier('default');
-        } else {
-            local = parseVariableIdentifier();
-        }
-        if (matchContextualKeyword('as')) {
-            lex();
-            exported = parseNonComputedProperty();
-        }
-        return node.finishExportSpecifier(local, exported);
-    }
-
-    function parseExportNamedDeclaration(node) {
-        var declaration = null,
-            isExportFromIdentifier,
-            src = null, specifiers = [];
-
-        // non-default export
-        if (lookahead.type === Token.Keyword) {
-            // covers:
-            // export var f = 1;
-            switch (lookahead.value) {
-                case 'let':
-                case 'const':
-                case 'var':
-                case 'class':
-                case 'function':
-                    declaration = parseStatementListItem();
-                    return node.finishExportNamedDeclaration(declaration, specifiers, null);
-            }
-        }
-
-        expect('{');
-        if (!match('}')) {
-            do {
-                isExportFromIdentifier = isExportFromIdentifier || matchKeyword('default');
-                specifiers.push(parseExportSpecifier());
-            } while (match(',') && lex());
-        }
-        expect('}');
-
-        if (matchContextualKeyword('from')) {
-            // covering:
-            // export {default} from 'foo';
-            // export {foo} from 'foo';
-            lex();
-            src = parseModuleSpecifier();
-            consumeSemicolon();
-        } else if (isExportFromIdentifier) {
-            // covering:
-            // export {default}; // missing fromClause
-            throwError(lookahead.value ?
-                    Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
-        } else {
-            // cover
-            // export {foo};
-            consumeSemicolon();
-        }
-        return node.finishExportNamedDeclaration(declaration, specifiers, src);
-    }
-
-    function parseExportDefaultDeclaration(node) {
-        var declaration = null,
-            expression = null;
-
-        // covers:
-        // export default ...
-        expectKeyword('default');
-
-        if (matchKeyword('function')) {
-            // covers:
-            // export default function foo () {}
-            // export default function () {}
-            declaration = parseFunctionDeclaration(new Node(), true);
-            return node.finishExportDefaultDeclaration(declaration);
-        }
-        if (matchKeyword('class')) {
-            declaration = parseClassDeclaration(true);
-            return node.finishExportDefaultDeclaration(declaration);
-        }
-
-        if (matchContextualKeyword('from')) {
-            throwError(Messages.UnexpectedToken, lookahead.value);
-        }
-
-        // covers:
-        // export default {};
-        // export default [];
-        // export default (1 + 2);
-        if (match('{')) {
-            expression = parseObjectInitialiser();
-        } else if (match('[')) {
-            expression = parseArrayInitialiser();
-        } else {
-            expression = parseAssignmentExpression();
-        }
-        consumeSemicolon();
-        return node.finishExportDefaultDeclaration(expression);
-    }
-
-    function parseExportAllDeclaration(node) {
-        var src;
-
-        // covers:
-        // export * from 'foo';
-        expect('*');
-        if (!matchContextualKeyword('from')) {
-            throwError(lookahead.value ?
-                    Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
-        }
-        lex();
-        src = parseModuleSpecifier();
-        consumeSemicolon();
-
-        return node.finishExportAllDeclaration(src);
-    }
-
-    function parseExportDeclaration() {
-        var node = new Node();
-        if (state.inFunctionBody) {
-            throwError(Messages.IllegalExportDeclaration);
-        }
-
-        expectKeyword('export');
-
-        if (matchKeyword('default')) {
-            return parseExportDefaultDeclaration(node);
-        }
-        if (match('*')) {
-            return parseExportAllDeclaration(node);
-        }
-        return parseExportNamedDeclaration(node);
-    }
-
-    function parseImportSpecifier() {
-        // import {<foo as bar>} ...;
-        var local, imported, node = new Node();
-
-        imported = parseNonComputedProperty();
-        if (matchContextualKeyword('as')) {
-            lex();
-            local = parseVariableIdentifier();
-        }
-
-        return node.finishImportSpecifier(local, imported);
-    }
-
-    function parseNamedImports() {
-        var specifiers = [];
-        // {foo, bar as bas}
-        expect('{');
-        if (!match('}')) {
-            do {
-                specifiers.push(parseImportSpecifier());
-            } while (match(',') && lex());
-        }
-        expect('}');
-        return specifiers;
-    }
-
-    function parseImportDefaultSpecifier() {
-        // import <foo> ...;
-        var local, node = new Node();
-
-        local = parseNonComputedProperty();
-
-        return node.finishImportDefaultSpecifier(local);
-    }
-
-    function parseImportNamespaceSpecifier() {
-        // import <* as foo> ...;
-        var local, node = new Node();
-
-        expect('*');
-        if (!matchContextualKeyword('as')) {
-            throwError(Messages.NoAsAfterImportNamespace);
-        }
-        lex();
-        local = parseNonComputedProperty();
-
-        return node.finishImportNamespaceSpecifier(local);
-    }
-
-    function parseImportDeclaration() {
-        var specifiers, src, node = new Node();
-
-        if (state.inFunctionBody) {
-            throwError(Messages.IllegalImportDeclaration);
-        }
-
-        expectKeyword('import');
-        specifiers = [];
-
-        if (lookahead.type === Token.StringLiteral) {
-            // covers:
-            // import 'foo';
-            src = parseModuleSpecifier();
-            consumeSemicolon();
-            return node.finishImportDeclaration(specifiers, src);
-        }
-
-        if (!matchKeyword('default') && isIdentifierName(lookahead)) {
-            // covers:
-            // import foo
-            // import foo, ...
-            specifiers.push(parseImportDefaultSpecifier());
-            if (match(',')) {
-                lex();
-            }
-        }
-        if (match('*')) {
-            // covers:
-            // import foo, * as foo
-            // import * as foo
-            specifiers.push(parseImportNamespaceSpecifier());
-        } else if (match('{')) {
-            // covers:
-            // import foo, {bar}
-            // import {bar}
-            specifiers = specifiers.concat(parseNamedImports());
-        }
-
-        if (!matchContextualKeyword('from')) {
-            throwError(lookahead.value ?
-                    Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
-        }
-        lex();
-        src = parseModuleSpecifier();
-        consumeSemicolon();
-
-        return node.finishImportDeclaration(specifiers, src);
-    }
-
-    // 14 Program
-
-    function parseScriptBody() {
-        var statement, body = [], token, directive, firstRestricted;
-
-        while (startIndex < length) {
-            token = lookahead;
-            if (token.type !== Token.StringLiteral) {
-                break;
-            }
-
-            statement = parseStatementListItem();
-            body.push(statement);
-            if (statement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = source.slice(token.start + 1, token.end - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        while (startIndex < length) {
-            statement = parseStatementListItem();
-            /* istanbul ignore if */
-            if (typeof statement === 'undefined') {
-                break;
-            }
-            body.push(statement);
-        }
-        return body;
-    }
-
-    function parseProgram() {
-        var body, node;
-
-        peek();
-        node = new Node();
-
-        body = parseScriptBody();
-        return node.finishProgram(body);
-    }
-
-    function filterTokenLocation() {
-        var i, entry, token, tokens = [];
-
-        for (i = 0; i < extra.tokens.length; ++i) {
-            entry = extra.tokens[i];
-            token = {
-                type: entry.type,
-                value: entry.value
-            };
-            if (entry.regex) {
-                token.regex = {
-                    pattern: entry.regex.pattern,
-                    flags: entry.regex.flags
-                };
-            }
-            if (extra.range) {
-                token.range = entry.range;
-            }
-            if (extra.loc) {
-                token.loc = entry.loc;
-            }
-            tokens.push(token);
-        }
-
-        extra.tokens = tokens;
-    }
-
-    function tokenize(code, options) {
-        var toString,
-            tokens;
-
-        toString = String;
-        if (typeof code !== 'string' && !(code instanceof String)) {
-            code = toString(code);
-        }
-
-        source = code;
-        index = 0;
-        lineNumber = (source.length > 0) ? 1 : 0;
-        lineStart = 0;
-        startIndex = index;
-        startLineNumber = lineNumber;
-        startLineStart = lineStart;
-        length = source.length;
-        lookahead = null;
-        state = {
-            allowIn: true,
-            labelSet: {},
-            inFunctionBody: false,
-            inIteration: false,
-            inSwitch: false,
-            lastCommentStart: -1,
-            curlyStack: []
-        };
-
-        extra = {};
-
-        // Options matching.
-        options = options || {};
-
-        // Of course we collect tokens here.
-        options.tokens = true;
-        extra.tokens = [];
-        extra.tokenize = true;
-        // The following two fields are necessary to compute the Regex tokens.
-        extra.openParenToken = -1;
-        extra.openCurlyToken = -1;
-
-        extra.range = (typeof options.range === 'boolean') && options.range;
-        extra.loc = (typeof options.loc === 'boolean') && options.loc;
-
-        if (typeof options.comment === 'boolean' && options.comment) {
-            extra.comments = [];
-        }
-        if (typeof options.tolerant === 'boolean' && options.tolerant) {
-            extra.errors = [];
-        }
-
-        try {
-            peek();
-            if (lookahead.type === Token.EOF) {
-                return extra.tokens;
-            }
-
-            lex();
-            while (lookahead.type !== Token.EOF) {
-                try {
-                    lex();
-                } catch (lexError) {
-                    if (extra.errors) {
-                        recordError(lexError);
-                        // We have to break on the first error
-                        // to avoid infinite loops.
-                        break;
-                    } else {
-                        throw lexError;
-                    }
-                }
-            }
-
-            filterTokenLocation();
-            tokens = extra.tokens;
-            if (typeof extra.comments !== 'undefined') {
-                tokens.comments = extra.comments;
-            }
-            if (typeof extra.errors !== 'undefined') {
-                tokens.errors = extra.errors;
-            }
-        } catch (e) {
-            throw e;
-        } finally {
-            extra = {};
-        }
-        return tokens;
-    }
-
-    function parse(code, options) {
-        var program, toString;
-
-        toString = String;
-        if (typeof code !== 'string' && !(code instanceof String)) {
-            code = toString(code);
-        }
-
-        source = code;
-        index = 0;
-        lineNumber = (source.length > 0) ? 1 : 0;
-        lineStart = 0;
-        startIndex = index;
-        startLineNumber = lineNumber;
-        startLineStart = lineStart;
-        length = source.length;
-        lookahead = null;
-        state = {
-            allowIn: true,
-            labelSet: {},
-            inFunctionBody: false,
-            inIteration: false,
-            inSwitch: false,
-            lastCommentStart: -1,
-            curlyStack: []
-        };
-        sourceType = 'script';
-        strict = false;
-
-        extra = {};
-        if (typeof options !== 'undefined') {
-            extra.range = (typeof options.range === 'boolean') && options.range;
-            extra.loc = (typeof options.loc === 'boolean') && options.loc;
-            extra.attachComment = (typeof options.attachComment === 'boolean') && options.attachComment;
-
-            if (extra.loc && options.source !== null && options.source !== undefined) {
-                extra.source = toString(options.source);
-            }
-
-            if (typeof options.tokens === 'boolean' && options.tokens) {
-                extra.tokens = [];
-            }
-            if (typeof options.comment === 'boolean' && options.comment) {
-                extra.comments = [];
-            }
-            if (typeof options.tolerant === 'boolean' && options.tolerant) {
-                extra.errors = [];
-            }
-            if (extra.attachComment) {
-                extra.range = true;
-                extra.comments = [];
-                extra.bottomRightStack = [];
-                extra.trailingComments = [];
-                extra.leadingComments = [];
-            }
-            if (options.sourceType === 'module') {
-                // very restrictive condition for now
-                sourceType = options.sourceType;
-                strict = true;
-            }
-        }
-
-        try {
-            program = parseProgram();
-            if (typeof extra.comments !== 'undefined') {
-                program.comments = extra.comments;
-            }
-            if (typeof extra.tokens !== 'undefined') {
-                filterTokenLocation();
-                program.tokens = extra.tokens;
-            }
-            if (typeof extra.errors !== 'undefined') {
-                program.errors = extra.errors;
-            }
-        } catch (e) {
-            throw e;
-        } finally {
-            extra = {};
-        }
-
-        return program;
-    }
-
-    // Sync with *.json manifests.
-    exports.version = '2.2.0';
-
-    exports.tokenize = tokenize;
-
-    exports.parse = parse;
-
-    // Deep copy.
-    /* istanbul ignore next */
-    exports.Syntax = (function () {
-        var name, types = {};
-
-        if (typeof Object.create === 'function') {
-            types = Object.create(null);
-        }
-
-        for (name in Syntax) {
-            if (Syntax.hasOwnProperty(name)) {
-                types[name] = Syntax[name];
-            }
-        }
-
-        if (typeof Object.freeze === 'function') {
-            Object.freeze(types);
-        }
-
-        return types;
-    }());
-
-}));
-/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/package.json
deleted file mode 100644 (file)
index 90363d0..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-{
-  "_args": [
-    [
-      "esprima@https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-  "_id": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-QpLB1o5Bc9gV+iKQ3Hr8ltgfzYM=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole/esprima",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-    "name": "esprima",
-    "escapedName": "esprima",
-    "rawSpec": "https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter/rocambole"
-  ],
-  "_spec": "https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Ariya Hidayat",
-    "email": "ariya.hidayat@gmail.com"
-  },
-  "bin": {
-    "esparse": "./bin/esparse.js",
-    "esvalidate": "./bin/esvalidate.js"
-  },
-  "bugs": {
-    "url": "http://issues.esprima.org"
-  },
-  "description": "ECMAScript parsing infrastructure for multipurpose analysis",
-  "devDependencies": {
-    "complexity-report": "~1.4.0",
-    "escomplex-js": "1.2.0",
-    "eslint": "~0.19.0",
-    "istanbul": "~0.3.7",
-    "jscs": "~1.12.0",
-    "json-diff": "~0.3.1",
-    "optimist": "~0.6.0",
-    "regenerate": "~0.6.2",
-    "unicode-7.0.0": "~0.1.5"
-  },
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "files": [
-    "bin",
-    "test/run.js",
-    "test/runner.js",
-    "test/test.js",
-    "esprima.js"
-  ],
-  "homepage": "http://esprima.org",
-  "keywords": [
-    "ast",
-    "ecmascript",
-    "javascript",
-    "parser",
-    "syntax"
-  ],
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "https://github.com/jquery/esprima/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "esprima.js",
-  "maintainers": [
-    {
-      "name": "Ariya Hidayat",
-      "email": "ariya.hidayat@gmail.com",
-      "url": "http://ariya.ofilabs.com"
-    }
-  ],
-  "name": "esprima",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/jquery/esprima.git"
-  },
-  "scripts": {
-    "analyze-coverage": "istanbul cover test/runner.js",
-    "benchmark": "node test/benchmarks.js",
-    "benchmark-quick": "node test/benchmarks.js quick",
-    "check-coverage": "istanbul check-coverage --statement 100 --branch 100 --function 100",
-    "check-version": "node tools/check-version.js",
-    "complexity": "node tools/list-complexity.js && cr -s -l -w --maxcyc 17 esprima.js",
-    "coverage": "npm run analyze-coverage && npm run check-coverage",
-    "eslint": "node node_modules/eslint/bin/eslint.js esprima.js",
-    "generate-regex": "node tools/generate-identifier-regex.js",
-    "jscs": "jscs esprima.js",
-    "lint": "npm run check-version && npm run eslint && npm run jscs && npm run complexity",
-    "test": "node test/run.js && npm run lint && npm run coverage"
-  },
-  "version": "https://registry.npmjs.org/esprima/-/esprima-2.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/run.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/run.js
deleted file mode 100644 (file)
index a5b919b..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint node:true */
-
-(function () {
-    'use strict';
-
-    var child = require('child_process'),
-        nodejs = '"' + process.execPath + '"',
-        ret = 0,
-        suites,
-        index;
-
-    suites = [
-        'runner',
-        'parselibs'
-    ];
-
-    function nextTest() {
-        var suite = suites[index];
-
-        if (index < suites.length) {
-            child.exec(nodejs + ' ./test/' + suite + '.js', function (err, stdout, stderr) {
-                if (stdout) {
-                    process.stdout.write(suite + ': ' + stdout);
-                }
-                if (stderr) {
-                    process.stderr.write(suite + ': ' + stderr);
-                }
-                if (err) {
-                    ret = err.code;
-                }
-                index += 1;
-                nextTest();
-            });
-        } else {
-            process.exit(ret);
-        }
-    }
-
-    index = 0;
-    nextTest();
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/runner.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/node_modules/esprima/test/runner.js
deleted file mode 100644 (file)
index 7f4a173..0000000
+++ /dev/null
@@ -1,475 +0,0 @@
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2011 Arpad Borsos <arpad.borsos@googlemail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint browser:true node:true */
-/*global esprima:true, testFixture:true */
-
-var runTests;
-
-function NotMatchingError(expected, actual) {
-    'use strict';
-    Error.call(this, 'Expected ');
-    this.expected = expected;
-    this.actual = actual;
-}
-NotMatchingError.prototype = new Error();
-
-function errorToObject(e) {
-    'use strict';
-    var msg = e.toString();
-
-    // Opera 9.64 produces an non-standard string in toString().
-    if (msg.substr(0, 6) !== 'Error:') {
-        if (typeof e.message === 'string') {
-            msg = 'Error: ' + e.message;
-        }
-    }
-
-    return {
-        index: e.index,
-        lineNumber: e.lineNumber,
-        column: e.column,
-        message: msg
-    };
-}
-
-function sortedObject(o) {
-    if (o === null) {
-        return o;
-    }
-    if (Array.isArray(o)) {
-        return o.map(sortedObject);
-    }
-    if (typeof o !== 'object') {
-        return o;
-    }
-    if (o instanceof RegExp) {
-        return o;
-    }
-    var keys = Object.keys(o);
-    var result = {
-        range: undefined,
-        loc: undefined
-    };
-    keys.forEach(function (key) {
-        if (o.hasOwnProperty(key)){
-            result[key] = sortedObject(o[key]);
-        }
-    });
-    return result;
-}
-
-function hasAttachedComment(syntax) {
-    var key;
-    for (key in syntax) {
-        if (key === 'leadingComments' || key === 'trailingComments') {
-            return true;
-        }
-       if (typeof syntax[key] === 'object' && syntax[key] !== null) {
-           if (hasAttachedComment(syntax[key])) {
-               return true;
-           }
-       }
-    }
-    return false;
-}
-
-function testParse(esprima, code, syntax) {
-    'use strict';
-    var expected, tree, actual, options, StringObject, i, len;
-
-    // alias, so that JSLint does not complain.
-    StringObject = String;
-
-    options = {
-        comment: (typeof syntax.comments !== 'undefined'),
-        range: true,
-        loc: true,
-        tokens: (typeof syntax.tokens !== 'undefined'),
-        raw: true,
-        tolerant: (typeof syntax.errors !== 'undefined'),
-        source: null,
-        sourceType: syntax.sourceType
-    };
-
-    if (options.comment) {
-        options.attachComment = hasAttachedComment(syntax);
-    }
-
-    if (typeof syntax.tokens !== 'undefined') {
-        if (syntax.tokens.length > 0) {
-            options.range = (typeof syntax.tokens[0].range !== 'undefined');
-            options.loc = (typeof syntax.tokens[0].loc !== 'undefined');
-        }
-    }
-
-    if (typeof syntax.comments !== 'undefined') {
-        if (syntax.comments.length > 0) {
-            options.range = (typeof syntax.comments[0].range !== 'undefined');
-            options.loc = (typeof syntax.comments[0].loc !== 'undefined');
-        }
-    }
-
-    if (options.loc) {
-        options.source = syntax.loc.source;
-    }
-
-    syntax = sortedObject(syntax);
-    expected = JSON.stringify(syntax, null, 4);
-    try {
-        // Some variations of the options.
-        tree = esprima.parse(code, { tolerant: options.tolerant, sourceType: options.sourceType });
-        tree = esprima.parse(code, { tolerant: options.tolerant, sourceType: options.sourceType, range: true });
-        tree = esprima.parse(code, { tolerant: options.tolerant, sourceType: options.sourceType, loc: true });
-
-        tree = esprima.parse(code, options);
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-        tree = sortedObject(tree);
-        actual = JSON.stringify(tree, null, 4);
-
-        // Only to ensure that there is no error when using string object.
-        esprima.parse(new StringObject(code), options);
-
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-
-    function filter(key, value) {
-        return (key === 'loc' || key === 'range') ? undefined : value;
-    }
-
-    if (options.tolerant) {
-        return;
-    }
-
-
-    // Check again without any location info.
-    options.range = false;
-    options.loc = false;
-    syntax = sortedObject(syntax);
-    expected = JSON.stringify(syntax, filter, 4);
-    try {
-        tree = esprima.parse(code, options);
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-        tree = sortedObject(tree);
-        actual = JSON.stringify(tree, filter, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function testTokenize(esprima, code, tokens) {
-    'use strict';
-    var options, expected, actual, tree;
-
-    options = {
-        comment: true,
-        tolerant: true,
-        loc: true,
-        range: true
-    };
-
-    expected = JSON.stringify(tokens, null, 4);
-
-    try {
-        tree = esprima.tokenize(code, options);
-        actual = JSON.stringify(tree, null, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-
-function testModule(esprima, code, exception) {
-    'use strict';
-    var i, options, expected, actual, err, handleInvalidRegexFlag, tokenize;
-
-    // Different parsing options should give the same error.
-    options = [
-        { sourceType: 'module' },
-        { sourceType: 'module', comment: true },
-        { sourceType: 'module', raw: true },
-        { sourceType: 'module', raw: true, comment: true }
-    ];
-
-    if (!exception.message) {
-        exception.message = 'Error: Line 1: ' + exception.description;
-    }
-    exception.description = exception.message.replace(/Error: Line [0-9]+: /, '');
-
-    expected = JSON.stringify(exception);
-
-    for (i = 0; i < options.length; i += 1) {
-
-        try {
-            esprima.parse(code, options[i]);
-        } catch (e) {
-            err = errorToObject(e);
-            err.description = e.description;
-            actual = JSON.stringify(err);
-        }
-
-        if (expected !== actual) {
-
-            // Compensate for old V8 which does not handle invalid flag.
-            if (exception.message.indexOf('Invalid regular expression') > 0) {
-                if (typeof actual === 'undefined' && !handleInvalidRegexFlag) {
-                    return;
-                }
-            }
-
-            throw new NotMatchingError(expected, actual);
-        }
-
-    }
-}
-
-function testError(esprima, code, exception) {
-    'use strict';
-    var i, options, expected, actual, err, handleInvalidRegexFlag, tokenize;
-
-    // Different parsing options should give the same error.
-    options = [
-        {},
-        { comment: true },
-        { raw: true },
-        { raw: true, comment: true }
-    ];
-
-    // If handleInvalidRegexFlag is true, an invalid flag in a regular expression
-    // will throw an exception. In some old version of V8, this is not the case
-    // and hence handleInvalidRegexFlag is false.
-    handleInvalidRegexFlag = false;
-    try {
-        'test'.match(new RegExp('[a-z]', 'x'));
-    } catch (e) {
-        handleInvalidRegexFlag = true;
-    }
-
-    exception.description = exception.message.replace(/Error: Line [0-9]+: /, '');
-
-    if (exception.tokenize) {
-        tokenize = true;
-        exception.tokenize = undefined;
-    }
-    expected = JSON.stringify(exception);
-
-    for (i = 0; i < options.length; i += 1) {
-
-        try {
-            if (tokenize) {
-                esprima.tokenize(code, options[i]);
-            } else {
-                esprima.parse(code, options[i]);
-            }
-        } catch (e) {
-            err = errorToObject(e);
-            err.description = e.description;
-            actual = JSON.stringify(err);
-        }
-
-        if (expected !== actual) {
-
-            // Compensate for old V8 which does not handle invalid flag.
-            if (exception.message.indexOf('Invalid regular expression') > 0) {
-                if (typeof actual === 'undefined' && !handleInvalidRegexFlag) {
-                    return;
-                }
-            }
-
-            throw new NotMatchingError(expected, actual);
-        }
-
-    }
-}
-
-function testAPI(esprima, code, expected) {
-    var result;
-    // API test.
-    expected = JSON.stringify(expected, null, 4);
-    try {
-        result = eval(code);
-        result = JSON.stringify(result, null, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== result) {
-        throw new NotMatchingError(expected, result);
-    }
-}
-
-function generateTestCase(esprima, testCase) {
-    var tree, fileName = testCase.key + ".tree.json";
-    try {
-        tree = esprima.parse(testCase.case, {loc: true, range: true});
-        tree = JSON.stringify(tree, null, 4);
-    } catch (e) {
-        if (typeof e.index === 'undefined') {
-            console.error("Failed to generate test result.");
-            throw e;
-        }
-        tree = errorToObject(e);
-        tree.description = e.description;
-        tree = JSON.stringify(tree);
-        fileName = testCase.key + ".failure.json";
-    }
-    require('fs').writeFileSync(fileName, tree);
-    console.error("Done.");
-}
-
-if (typeof window === 'undefined') {
-    (function () {
-        'use strict';
-
-        var esprima = require('../esprima'),
-            vm = require('vm'),
-            fs = require('fs'),
-            diff = require('json-diff').diffString,
-            total = 0,
-            result,
-            failures = [],
-            cases = {},
-            context = {source: '', result: null},
-            tick = new Date(),
-            expected,
-            testCase,
-            header;
-
-        function enumerateFixtures(root) {
-            var dirs = fs.readdirSync(root), key, kind,
-                kinds = ['case', 'source', 'module', 'run', 'tree', 'tokens', 'failure', 'result'],
-                suffices = ['js', 'js', 'json', 'js', 'json', 'json', 'json', 'json'];
-
-            dirs.forEach(function (item) {
-                var i;
-                if (fs.statSync(root + '/' + item).isDirectory()) {
-                    enumerateFixtures(root + '/' + item);
-                } else {
-                    kind = 'case';
-                    key = item.slice(0, -3);
-                    for (i = 1; i < kinds.length; i++) {
-                        var suffix = '.' + kinds[i] + '.' + suffices[i];
-                        if (item.slice(-suffix.length) === suffix) {
-                            key = item.slice(0, -suffix.length);
-                            kind = kinds[i];
-                        }
-                    }
-                    key = root + '/' + key;
-                    if (!cases[key]) {
-                        total++;
-                        cases[key] = { key: key };
-                    }
-                    cases[key][kind] = fs.readFileSync(root + '/' + item, 'utf-8');
-                }
-            });
-        }
-
-        enumerateFixtures(__dirname + '/fixtures');
-
-        for (var key in cases) {
-            if (cases.hasOwnProperty(key)) {
-                testCase = cases[key];
-
-                if (testCase.hasOwnProperty('source')) {
-                    testCase.case = eval(testCase.source + ';source');
-                }
-
-                try {
-                    if (testCase.hasOwnProperty('module')) {
-                        testModule(esprima, testCase.case, JSON.parse(testCase.module));
-                    } else if (testCase.hasOwnProperty('tree')) {
-                        testParse(esprima, testCase.case, JSON.parse(testCase.tree));
-                    } else if (testCase.hasOwnProperty('tokens')) {
-                        testTokenize(esprima, testCase.case, JSON.parse(testCase.tokens));
-                    } else if (testCase.hasOwnProperty('failure')) {
-                        testError(esprima, testCase.case, JSON.parse(testCase.failure));
-                    } else if (testCase.hasOwnProperty('result')) {
-                        testAPI(esprima, testCase.run, JSON.parse(testCase.result));
-                    } else {
-                        console.error('Incomplete test case:' + testCase.key + '. Generating test result...');
-                        generateTestCase(esprima, testCase);
-                    }
-                } catch (e) {
-                    if (!e.expected) {
-                        throw e;
-                    }
-                    e.source = testCase.case || testCase.key;
-                    failures.push(e);
-                }
-            }
-        }
-
-        tick = (new Date()) - tick;
-
-        header = total + ' tests. ' + failures.length + ' failures. ' +
-            tick + ' ms';
-        if (failures.length) {
-            console.error(header);
-            failures.forEach(function (failure) {
-                try {
-                    var expectedObject = JSON.parse(failure.expected);
-                    var actualObject = JSON.parse(failure.actual);
-
-                    console.error(failure.source + ': Expected\n    ' +
-                        failure.expected.split('\n').join('\n    ') +
-                        '\nto match\n    ' + failure.actual + '\nDiff:\n' +
-                        diff(expectedObject, actualObject));
-                } catch (ex) {
-                    console.error(failure.source + ': Expected\n    ' +
-                        failure.expected.split('\n').join('\n    ') +
-                        '\nto match\n    ' + failure.actual);
-                }
-            });
-        } else {
-            console.log(header);
-        }
-        process.exit(failures.length === 0 ? 0 : 1);
-
-    }());
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/package.json
deleted file mode 100644 (file)
index 0bdce06..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-  "_id": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-U08jWih8wX+bBXuVvRHQ8Nw1RSw=",
-  "_location": "/grunt-standard/standard-format/esformatter/rocambole",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "rocambole@https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-    "name": "rocambole",
-    "escapedName": "rocambole",
-    "rawSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "email": "http://blog.millermedeiros.com"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/rocambole/issues"
-  },
-  "dependencies": {
-    "esprima": "^2.0"
-  },
-  "description": "Recursively walk and transform EcmaScript AST",
-  "devDependencies": {
-    "expect.js": "0.2",
-    "istanbul": "~0.1.23",
-    "mocha": "~1.7"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/millermedeiros/rocambole#readme",
-  "keywords": [
-    "ast",
-    "walk",
-    "syntax",
-    "source",
-    "tree",
-    "traversal",
-    "falafel",
-    "burrito",
-    "esprima"
-  ],
-  "license": "MIT",
-  "main": "rocambole.js",
-  "name": "rocambole",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/rocambole.git"
-  },
-  "scripts": {
-    "test": "istanbul test test/runner.js"
-  },
-  "version": "https://registry.npmjs.org/rocambole/-/rocambole-0.6.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/rocambole.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/rocambole/rocambole.js
deleted file mode 100644 (file)
index 424983c..0000000
+++ /dev/null
@@ -1,431 +0,0 @@
-/*jshint node:true */
-"use strict";
-
-
-var esprima = require('esprima');
-
-
-
-// ---
-
-// we expose the flags so other tools can tweak the values (#8)
-exports.BYPASS_RECURSION = {
-    root : true,
-    comments : true,
-    tokens : true,
-
-    loc : true,
-    range : true,
-
-    parent : true,
-    next : true,
-    prev : true,
-
-    // esprima@2.1 introduces a "handler" property on TryStatement, so we would
-    // loop the same node twice (see jquery/esprima/issues/1031 and #264)`
-    handler : true,
-
-    // IMPORTANT! "value" can't be bypassed since it is used by object
-    // expression
-    type : true,
-    raw : true,
-
-    startToken : true,
-    endToken : true
-};
-
-
-// ---
-
-var _addLocInfo;
-
-// ---
-
-exports.parseFn = esprima.parse;
-exports.parseContext = esprima;
-// we need range/tokens/comment info to build the tokens linked list!
-exports.parseOptions = {
-    range: true,
-    tokens: true,
-    comment: true
-};
-
-// parse string and return an augmented AST
-exports.parse = function parse(source, opts){
-    opts = opts || {};
-    _addLocInfo = Boolean(opts.loc);
-    source = source.toString();
-
-    Object.keys(exports.parseOptions).forEach(function(key) {
-        if (!(key in opts)) {
-            opts[key] = exports.parseOptions[key];
-        }
-    });
-
-    var ast = exports.parseFn.call(exports.parseContext, source, opts);
-
-    // we augment just root node since program is "empty"
-    // can't check `ast.body.length` because it might contain just comments
-    if (!ast.tokens.length && !ast.comments.length) {
-        ast.depth = 0;
-        ast.startToken = ast.endToken = null;
-        ast.toString = _nodeProto.toString;
-        return ast;
-    }
-
-    instrumentTokens(ast, source);
-
-    // update program range since it doesn't include white spaces and comments
-    // before/after the program body by default
-    var lastToken = ast.tokens[ast.tokens.length - 1];
-    ast.range[0] = ast.tokens[0].range[0];
-    ast.range[1] = lastToken.range[1];
-    if (_addLocInfo) {
-        ast.loc.start.line = 0;
-        ast.loc.start.column = 0;
-        ast.loc.end.line = lastToken.loc.end.line;
-        ast.loc.end.column = lastToken.loc.end.column;
-    }
-
-    var toString = _nodeProto.toString;
-    var instrumentNodes = function(node, parent, prev, next){
-
-        node.parent = parent;
-        node.prev = prev;
-        node.next = next;
-        node.depth = parent? parent.depth + 1 : 0; // used later for moonwalk
-
-        node.toString = toString;
-
-        // we do not add nextToken and prevToken to avoid updating even more
-        // references during each remove/before/after you can grab the
-        // prev/next token by simply accesing the startToken.prev and
-        // endToken.next
-        var prevToken = prev? prev.endToken : (parent? parent.startToken : null);
-        var nextToken = parent? parent.endToken : null;
-        node.startToken = prevToken? getNodeStartToken(prevToken, node.range) : ast.tokens[0];
-        node.endToken = nextToken? getNodeEndToken(nextToken, node.range) : ast.tokens[ast.tokens.length - 1];
-    };
-    recursiveWalk(ast, instrumentNodes);
-
-    return ast;
-};
-
-
-var _nodeProto = {};
-
-// get the node string
-_nodeProto.toString = function(){
-    var str = '';
-    var token = this.startToken;
-    if (!token) return str;
-    do {
-        str += ('raw' in token)? token.raw : token.value;
-        token = token.next;
-    } while (token && token !== this.endToken.next);
-    return str;
-};
-
-
-function getNodeStartToken(token, range){
-    var startRange = range[0];
-    while (token){
-        if (token.range[0] >= startRange) {
-            return token;
-        }
-        token = token.next;
-    }
-}
-
-function getNodeEndToken(token, range){
-    var endRange = range[1];
-    while (token){
-        if (token.range[1] <= endRange) {
-            return token;
-        }
-        token = token.prev;
-    }
-}
-
-
-
-function getPrevToken(tokens, range){
-    var result, token,
-        startRange = range[0],
-        n = tokens.length;
-    while (n--) {
-        token = tokens[n];
-        if (token.range[1] <= startRange) {
-            result = token;
-            break;
-        }
-    }
-    return result;
-}
-
-
-
-
-
-
-function instrumentTokens(ast, source){
-
-    var tokens = ast.tokens;
-
-
-    // --- inject comments into tokens list
-    var comments = ast.comments;
-    var comment,
-        q = -1,
-        nComments = comments.length;
-
-    while (++q < nComments) {
-        comment = comments[q];
-        // we edit it in place since it is faster, will also affect
-        comment.raw = comment.type === 'Block'? '/*'+ comment.value +'*/' : '//'+ comment.value;
-        comment.type += 'Comment';
-
-        var prevToken = getPrevToken(tokens, comment.range);
-        var prevIndex = prevToken? tokens.indexOf(prevToken) : -1;
-        tokens.splice(prevIndex + 1, 0, comment);
-    }
-
-
-    // --- inject white spaces and line breaks
-
-    // we create a new array since it's simpler than using splice, it will
-    // also avoid mistakes
-    var result = [];
-
-    // insert white spaces before start of program
-    var wsTokens;
-    var firstToken = ast.tokens[0];
-    var raw;
-    if ( firstToken.range[0] ) {
-        raw = source.substring(0, firstToken.range[0]);
-        result = result.concat( getWhiteSpaceTokens(raw, null) );
-    }
-
-    // insert white spaces between regular tokens
-    // faster than forEach and reduce lookups
-    var i = -1,
-        nTokens = tokens.length,
-        token, prev;
-    var k, nWs;
-    while (++i < nTokens) {
-        token = tokens[i];
-        if (i) {
-            if (prev.range[1] < token.range[0]) {
-                wsTokens = getWhiteSpaceTokens(source.substring(prev.range[1], token.range[0]), prev);
-                // faster than concat or push.apply
-                k = -1;
-                nWs = wsTokens.length;
-                while (++k < nWs) {
-                    result.push(wsTokens[k]);
-                }
-            }
-        }
-        result.push(token);
-        prev = token;
-    }
-
-    // insert white spaces after end of program
-    var lastToken = ast.tokens[ast.tokens.length - 1];
-    if (lastToken.range[1] < source.length) {
-        wsTokens = getWhiteSpaceTokens(source.substring(lastToken.range[1], source.length), lastToken);
-        k = -1;
-        nWs = wsTokens.length;
-        while (++k < nWs) {
-            result.push(wsTokens[k]);
-        }
-    }
-
-    // --- instrument tokens
-
-    // need to come afterwards since we add line breaks and comments
-    var n;
-    for (i = 0, n = result.length, token; i < n; i++) {
-        token = result[i];
-        token.prev = i? result[i - 1] : undefined;
-        token.next = result[i + 1];
-        token.root = ast; // used internally
-        // original indent is very important for block comments since some
-        // transformations require manipulation of raw comment value
-        if (
-          token.type === 'BlockComment' &&
-          token.prev && token.prev.type === 'WhiteSpace' &&
-          (!token.prev.prev || (token.prev.prev.type === 'LineBreak'))
-        ) {
-          token.originalIndent = token.prev.value;
-        }
-    }
-
-    ast.tokens = result;
-}
-
-
-function getWhiteSpaceTokens(raw, prev){
-    var whiteSpaces = getWhiteSpaces(raw);
-
-    var startRange = prev? prev.range[1] : 0;
-    // line starts at 1 !!!
-    var startLine, startColumn;
-    if (_addLocInfo) {
-        startLine = prev? prev.loc.end.line : 1;
-        startColumn = prev? prev.loc.end.column : 0;
-    }
-
-    var tokens = [];
-    for (var i = 0, n = whiteSpaces.length, value; i < n; i++){
-        value = whiteSpaces[i];
-
-        var wsToken = { value : value };
-        var isBr = '\r\n'.indexOf(value) >= 0;
-        wsToken.type = isBr? 'LineBreak' : 'WhiteSpace';
-        wsToken.range = [startRange, startRange + value.length];
-
-        if (_addLocInfo) {
-            wsToken.loc = {
-                start : {
-                    line : startLine,
-                    column : startColumn
-                },
-                end : {
-                    line : startLine, // yes, br starts and end on same line
-                    column : startColumn + value.length
-                }
-            };
-
-            if (isBr) {
-                // next token after a <br> always starts at zero and on next line
-                startLine = wsToken.loc.end.line + 1;
-                startColumn = 0;
-            } else {
-                startLine = wsToken.loc.end.line;
-                startColumn = wsToken.loc.end.column;
-            }
-        }
-
-        startRange += value.length;
-        tokens.push(wsToken);
-    }
-
-    return tokens;
-}
-
-
-function getWhiteSpaces(source) {
-    var result = [];
-    var whiteSpaces = source.split('');
-    var buf = '';
-    for (var value, i = 0, nSpaces = whiteSpaces.length; i < nSpaces; i++) {
-        value = whiteSpaces[i];
-        switch(value){
-            case '\n':
-                if (buf === '\r') {
-                    // DOS line break
-                    result.push(buf + value);
-                } else {
-                    if (buf) {
-                        result.push(buf);
-                    }
-                    // unix break
-                    result.push(value);
-                }
-                buf = '';
-                break;
-            case '\r':
-                // might be multiple consecutive Mac breaks
-                if (buf) {
-                    result.push(buf);
-                }
-                buf = value;
-                break;
-            default:
-                if (buf === '\r') {
-                    result.push(buf);
-                    buf = value;
-                } else {
-                    // group multiple white spaces into same token
-                    buf += value;
-                }
-        }
-    }
-    if (buf) {
-        result.push(buf);
-    }
-    return result;
-}
-
-
-
-exports.walk = exports.recursive = recursiveWalk;
-
-// heavily inspired by node-falafel
-// walk nodes recursively starting from root
-function recursiveWalk(node, fn, parent, prev, next){
-    // sparse arrays might have `null` elements, so we skip those for now
-    // see issue #15
-    if ( !node || fn(node, parent, prev, next) === false ) {
-        return; // stop recursion
-    }
-
-    // faster than for in
-    var keys = Object.keys(node),
-        child, key;
-
-    for (var i = 0, nKeys = keys.length; i < nKeys; i++) {
-
-        key = keys[i];
-        child = node[key];
-
-        // only need to recurse real nodes and arrays
-        // ps: typeof null == 'object'
-        if (!child || typeof child !== 'object' || exports.BYPASS_RECURSION[key]) {
-            continue;
-        }
-
-        // inception
-        if (typeof child.type === 'string') { // faster than boolean coercion
-            recursiveWalk(child, fn, node);
-        } else if ( typeof child.length === 'number' ) { // faster than Array.isArray and boolean coercion
-            // faster than forEach
-            for (var k = 0, nChilds = child.length; k < nChilds; k++) {
-                recursiveWalk(child[k], fn, node, (k? child[k - 1] : undefined), child[k + 1] );
-            }
-        }
-
-    }
-
-}
-
-
-
-// walk AST starting from leaf nodes
-exports.moonwalk = function moonwalk(ast, fn){
-    if (typeof ast === 'string') {
-        ast = exports.parse(ast);
-    }
-
-    // we create a separate array for each depth and than we flatten it to
-    // boost performance, way faster than doing an insertion sort
-    var swap = [];
-    recursiveWalk(ast, function(node){
-        if (! swap[node.depth]) {
-            swap[node.depth] = [];
-        }
-        swap[node.depth].push(node);
-    });
-
-    var nodes = [];
-    var nDepths = swap.length, cur;
-    while (cur = swap[--nDepths]) {
-        for (var i = 0, n = cur.length; i < n; i++) {
-            nodes.push(cur[i]);
-        }
-    }
-
-    nodes.forEach(fn);
-    return ast;
-};
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/LICENSE
deleted file mode 100644 (file)
index 0c44ae7..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Copyright (c) Isaac Z. Schlueter ("Author")
-All rights reserved.
-
-The BSD License
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/semver/package.json
deleted file mode 100644 (file)
index b69e996..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-{
-  "_args": [
-    [
-      "semver@https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "semver@https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-  "_id": "semver@https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-eUEYKz/8xYC/8cF5QqzfeVHA0hM=",
-  "_location": "/grunt-standard/standard-format/esformatter/semver",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "semver@https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-    "name": "semver",
-    "escapedName": "semver",
-    "rawSpec": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bin": {
-    "semver": "./bin/semver"
-  },
-  "browser": "semver.browser.js",
-  "bugs": {
-    "url": "https://github.com/isaacs/node-semver/issues"
-  },
-  "description": "The semantic version parser used by npm.",
-  "devDependencies": {
-    "tap": "0.x >=0.0.4",
-    "uglify-js": "~2.3.6"
-  },
-  "homepage": "https://github.com/isaacs/node-semver#readme",
-  "license": "BSD",
-  "main": "semver.js",
-  "min": "semver.min.js",
-  "name": "semver",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/node-semver.git"
-  },
-  "scripts": {
-    "prepublish": "make",
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/cli.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/cli.js
deleted file mode 100755 (executable)
index ac4da48..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-var fs = require('fs');
-var strip = require('./strip-json-comments');
-var input = process.argv[2];
-
-
-function getStdin(cb) {
-       var ret = '';
-
-       process.stdin.setEncoding('utf8');
-
-       process.stdin.on('data', function (data) {
-               ret += data;
-       });
-
-       process.stdin.on('end', function () {
-               cb(ret);
-       });
-}
-
-if (process.argv.indexOf('-h') !== -1 || process.argv.indexOf('--help') !== -1) {
-       console.log('strip-json-comments <input file> > <output file>');
-       console.log('or');
-       console.log('cat <input file> | strip-json-comments > <output file>');
-       return;
-}
-
-if (process.argv.indexOf('-v') !== -1 || process.argv.indexOf('--version') !== -1) {
-       console.log(require('./package').version);
-       return;
-}
-
-if (input) {
-       process.stdout.write(strip(fs.readFileSync(input, 'utf8')));
-       return;
-}
-
-getStdin(function (data) {
-       process.stdout.write(strip(data));
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/node_modules/strip-json-comments/package.json
deleted file mode 100644 (file)
index a2b291f..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-{
-  "_args": [
-    [
-      "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-  "_id": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Fkxk43Coo8wAyeAbU55WmCPw7lQ=",
-  "_location": "/grunt-standard/standard-format/esformatter/strip-json-comments",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-    "name": "strip-json-comments",
-    "escapedName": "strip-json-comments",
-    "rawSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bin": {
-    "strip-json-comments": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/strip-json-comments/issues"
-  },
-  "description": "Strip comments from JSON. Lets you use comments in your JSON files!",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.8.0"
-  },
-  "files": [
-    "cli.js",
-    "strip-json-comments.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/strip-json-comments#readme",
-  "keywords": [
-    "json",
-    "strip",
-    "remove",
-    "delete",
-    "trim",
-    "comments",
-    "multiline",
-    "parse",
-    "config",
-    "configuration",
-    "conf",
-    "settings",
-    "util",
-    "env",
-    "environment",
-    "cli",
-    "bin"
-  ],
-  "license": "MIT",
-  "main": "strip-json-comments",
-  "name": "strip-json-comments",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/strip-json-comments.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-0.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/esformatter/package.json
deleted file mode 100644 (file)
index 78e6012..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-{
-  "_args": [
-    [
-      "esformatter@https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esformatter@https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-  "_id": "esformatter@https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sLrJsb3jeTvAz/LFkPlAzIatS8Q=",
-  "_location": "/grunt-standard/standard-format/esformatter",
-  "_phantomChildren": {
-    "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz"
-  },
-  "_requested": {
-    "type": "remote",
-    "raw": "esformatter@https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-    "name": "esformatter",
-    "escapedName": "esformatter",
-    "rawSpec": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Miller Medeiros",
-    "url": "http://blog.millermedeiros.com/"
-  },
-  "bin": {
-    "esformatter": "./bin/esformatter"
-  },
-  "bugs": {
-    "url": "https://github.com/millermedeiros/esformatter/issues"
-  },
-  "dependencies": {
-    "debug": "^0.7.4",
-    "mout": ">=0.9 <2.0",
-    "npm-run": "^1.1.1",
-    "optimist": "~0.6.0",
-    "resolve": "^1.1.5",
-    "rocambole": ">=0.5 <2.0",
-    "rocambole-indent": "^2.0.3",
-    "rocambole-linebreak": "^1.0.0",
-    "rocambole-node": "~1.0",
-    "rocambole-token": "^1.1.2",
-    "rocambole-whitespace": "^1.0.0",
-    "semver": "~2.2.1",
-    "stdin": "*",
-    "strip-json-comments": "~0.1.1"
-  },
-  "description": "ECMAScript code beautifier/formatter",
-  "devDependencies": {
-    "chai": "1.4",
-    "esformatter-pipe-test": "file:test/pipe",
-    "esformatter-test-plugin": "file:test/plugin",
-    "esprima": "^2.0.0",
-    "glob": "3.1",
-    "jshint": "~2.3.0",
-    "mocha": "https://github.com/millermedeiros/mocha/tarball/latest",
-    "mockery": "^1.4.0"
-  },
-  "homepage": "https://github.com/millermedeiros/esformatter#readme",
-  "keywords": [
-    "beautifier",
-    "beautify",
-    "formatter",
-    "ecmascript",
-    "javascript",
-    "syntax",
-    "source",
-    "esprima"
-  ],
-  "license": "MIT",
-  "main": "lib/esformatter.js",
-  "name": "esformatter",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/millermedeiros/esformatter.git"
-  },
-  "scripts": {
-    "lint": "jshint lib/*.js lib/**/*.js test/*.js",
-    "test": "node test/runner.js"
-  },
-  "version": "https://registry.npmjs.org/esformatter/-/esformatter-0.6.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/.npmignore
deleted file mode 100644 (file)
index fd4f2b0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.DS_Store
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/LICENSE.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/LICENSE.md
deleted file mode 100644 (file)
index c0db24f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Copyright © 2013 AgileMD <hello@agilemd.com> http://agilemd.com
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/README.md
deleted file mode 100644 (file)
index b7cd918..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-# find-root
-recursively find the closest package.json
-
-## usage
-Say you want to check if the directory name of a project matches its
-module name in package.json:
-
-```js
-var path = require('path')
-var findRoot = require('find-root')
-
-// from a starting directory, recursively search for the nearest
-// directory containing package.json
-var root = findRoot('/Users/jden/dev/find-root/tests')
-// => '/Users/jden/dev/find-root'
-
-var dirname = path.basename(root)
-console.log('is it the same?')
-console.log(dirname === require(path.join(root, 'package.json')).name)
-```
-
-
-## api
-
-### `findRoot: (startingPath : String) => String`
-
-Returns the path for the nearest directory to `startingPath` containing
-a `package.json` file, eg `/foo/module`.
-
-Throws an error if no `package.json` is found at any level in the
-`startingPath`.
-
-
-## installation
-
-    $ npm install find-root
-
-
-## running the tests
-
-From package root:
-
-    $ npm install
-    $ npm test
-
-
-## contributors
-
-- jden <jason@denizac.org>
-
-
-## license
-MIT. (c) MMXIII AgileMD http://agilemd.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/index.js
deleted file mode 100644 (file)
index 84e1336..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var path = require('path')
-var fs = require('fs')
-
-function findRoot(start) {
-  start = start || module.parent.filename
-  if (typeof start === 'string') {
-    if (start[start.length-1] !== path.sep) {
-      start+=path.sep
-    }
-    start = start.split(path.sep)
-  }
-  if(!start.length) {
-    throw new Error('package.json not found in path')
-  }
-  start.pop()
-  var dir = start.join(path.sep)
-  if (fs.existsSync(path.join(dir, 'package.json'))) {
-    return dir
-  }
-  return findRoot(start)
-}
-
-module.exports = findRoot
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/package.json
deleted file mode 100644 (file)
index f106b26..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_id": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-9jbUbz518IXzKJ63x3keUDmjd8o=",
-  "_location": "/grunt-standard/standard-format/find-root",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "name": "find-root",
-    "escapedName": "find-root",
-    "rawSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format"
-  ],
-  "_spec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "AgileMD",
-    "email": "hello@agilemd.com"
-  },
-  "bugs": {
-    "url": "https://github.com/agilemd/find-root/issues"
-  },
-  "contributors": [
-    {
-      "name": "jden",
-      "email": "jason@denizac.org"
-    }
-  ],
-  "description": "find the closest package.json",
-  "devDependencies": {
-    "chai": "~1.6.0",
-    "mocha": "~1.9.0",
-    "moquire": "~1.5.4"
-  },
-  "homepage": "https://github.com/agilemd/find-root#readme",
-  "keywords": [
-    "package",
-    "module",
-    "base",
-    "root"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "find-root",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/agilemd/find-root.git"
-  },
-  "scripts": {
-    "test": "node node_modules/mocha/bin/mocha"
-  },
-  "version": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/test/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/find-root/test/test.js
deleted file mode 100644 (file)
index bce7669..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var chai = require('chai')
-chai.should()
-var expect = chai.expect
-var moquire = require('moquire')
-var path = require('path')
-
-var MODULE = '../'
-
-describe('find-root', function () {
-
-  it('recursively looks for package.json', function () {
-
-    var checked = []
-    var fs = {
-      existsSync: function (path) {
-        checked.push(path)
-        return path === '/foo/package.json'
-      }
-    }
-
-    var findRoot = moquire(MODULE, {fs: fs})
-
-    findRoot('/foo/bar/baz')
-      .should.equal('/foo')
-
-    checked.should.deep.equal([
-        '/foo/bar/baz/package.json',
-        '/foo/bar/package.json',
-        '/foo/package.json'
-      ])
-
-  })
-
-  it('throws if not found', function () {
-
-    var fs = {
-      existsSync: function (path) {
-        return false
-      }
-    }
-
-    var findRoot = moquire(MODULE, {fs: fs})
-
-    expect(function () {
-      findRoot('/foo/bar/baz/')
-    }).to.throw('not found')
-
-  })
-})
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/.eslintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/.eslintrc
deleted file mode 100644 (file)
index b7a1550..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "env" : {
-    "node" : true
-  },
-  "rules" : {
-    "semi": [2, "never"],
-    "strict": 0,
-    "quotes": [1, "single", "avoid-escape"],
-    "no-use-before-define": 0,
-    "curly": 0,
-    "no-underscore-dangle": 0,
-    "no-lonely-if": 1,
-    "no-unused-vars": [2, {"vars" : "all", "args" : "after-used"}],
-    "no-mixed-requires": 0,
-    "space-infix-ops": 0
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/LICENSE
deleted file mode 100644 (file)
index 05eeeb8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/README.md
deleted file mode 100644 (file)
index 6dc8929..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-# inflight
-
-Add callbacks to requests in flight to avoid async duplication
-
-## USAGE
-
-```javascript
-var inflight = require('inflight')
-
-// some request that does some stuff
-function req(key, callback) {
-  // key is any random string.  like a url or filename or whatever.
-  //
-  // will return either a falsey value, indicating that the
-  // request for this key is already in flight, or a new callback
-  // which when called will call all callbacks passed to inflightk
-  // with the same key
-  callback = inflight(key, callback)
-
-  // If we got a falsey value back, then there's already a req going
-  if (!callback) return
-
-  // this is where you'd fetch the url or whatever
-  // callback is also once()-ified, so it can safely be assigned
-  // to multiple events etc.  First call wins.
-  setTimeout(function() {
-    callback(null, key)
-  }, 100)
-}
-
-// only assigns a single setTimeout
-// when it dings, all cbs get called
-req('foo', cb1)
-req('foo', cb2)
-req('foo', cb3)
-req('foo', cb4)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/inflight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/inflight.js
deleted file mode 100644 (file)
index 8bc96cb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var wrappy = require('wrappy')
-var reqs = Object.create(null)
-var once = require('once')
-
-module.exports = wrappy(inflight)
-
-function inflight (key, cb) {
-  if (reqs[key]) {
-    reqs[key].push(cb)
-    return null
-  } else {
-    reqs[key] = [cb]
-    return makeres(key)
-  }
-}
-
-function makeres (key) {
-  return once(function RES () {
-    var cbs = reqs[key]
-    var len = cbs.length
-    var args = slice(arguments)
-    for (var i = 0; i < len; i++) {
-      cbs[i].apply(null, args)
-    }
-    if (cbs.length > len) {
-      // added more in the interim.
-      // de-zalgo, just in case, but don't call again.
-      cbs.splice(0, len)
-      process.nextTick(function () {
-        RES.apply(null, args)
-      })
-    } else {
-      delete reqs[key]
-    }
-  })
-}
-
-function slice (args) {
-  var length = args.length
-  var array = []
-
-  for (var i = 0; i < length; i++) array[i] = args[i]
-  return array
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/LICENSE
deleted file mode 100644 (file)
index 19129e3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md
deleted file mode 100644 (file)
index 98eab25..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# wrappy
-
-Callback wrapping utility
-
-## USAGE
-
-```javascript
-var wrappy = require("wrappy")
-
-// var wrapper = wrappy(wrapperFunction)
-
-// make sure a cb is called only once
-// See also: http://npm.im/once for this specific use case
-var once = wrappy(function (cb) {
-  var called = false
-  return function () {
-    if (called) return
-    called = true
-    return cb.apply(this, arguments)
-  }
-})
-
-function printBoo () {
-  console.log('boo')
-}
-// has some rando property
-printBoo.iAmBooPrinter = true
-
-var onlyPrintOnce = once(printBoo)
-
-onlyPrintOnce() // prints 'boo'
-onlyPrintOnce() // does nothing
-
-// random property is retained!
-assert.equal(onlyPrintOnce.iAmBooPrinter, true)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json
deleted file mode 100644 (file)
index 16e946b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_id": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HmWWmWXMvC20VIxrhKbyxa7dRzk=",
-  "_location": "/grunt-standard/standard-format/glob/inflight/wrappy",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "name": "wrappy",
-    "escapedName": "wrappy",
-    "rawSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/glob/inflight"
-  ],
-  "_spec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/wrappy/issues"
-  },
-  "dependencies": {},
-  "description": "Callback wrapping utility",
-  "devDependencies": {
-    "tap": "^0.4.12"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/wrappy",
-  "license": "ISC",
-  "main": "wrappy.js",
-  "name": "wrappy",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/wrappy.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js
deleted file mode 100644 (file)
index 5ed0fcd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var test = require('tap').test
-var wrappy = require('../wrappy.js')
-
-test('basic', function (t) {
-  function onceifier (cb) {
-    var called = false
-    return function () {
-      if (called) return
-      called = true
-      return cb.apply(this, arguments)
-    }
-  }
-  onceifier.iAmOnce = {}
-  var once = wrappy(onceifier)
-  t.equal(once.iAmOnce, onceifier.iAmOnce)
-
-  var called = 0
-  function boo () {
-    t.equal(called, 0)
-    called++
-  }
-  // has some rando property
-  boo.iAmBoo = true
-
-  var onlyPrintOnce = once(boo)
-
-  onlyPrintOnce() // prints 'boo'
-  onlyPrintOnce() // does nothing
-  t.equal(called, 1)
-
-  // random property is retained!
-  t.equal(onlyPrintOnce.iAmBoo, true)
-
-  var logs = []
-  var logwrap = wrappy(function (msg, cb) {
-    logs.push(msg + ' wrapping cb')
-    return function () {
-      logs.push(msg + ' before cb')
-      var ret = cb.apply(this, arguments)
-      logs.push(msg + ' after cb')
-    }
-  })
-
-  var c = logwrap('foo', function () {
-    t.same(logs, [ 'foo wrapping cb', 'foo before cb' ])
-  })
-  c()
-  t.same(logs, [ 'foo wrapping cb', 'foo before cb', 'foo after cb' ])
-
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js
deleted file mode 100644 (file)
index bb7e7d6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
-  if (fn && cb) return wrappy(fn)(cb)
-
-  if (typeof fn !== 'function')
-    throw new TypeError('need wrapper function')
-
-  Object.keys(fn).forEach(function (k) {
-    wrapper[k] = fn[k]
-  })
-
-  return wrapper
-
-  function wrapper() {
-    var args = new Array(arguments.length)
-    for (var i = 0; i < args.length; i++) {
-      args[i] = arguments[i]
-    }
-    var ret = fn.apply(this, args)
-    var cb = args[args.length-1]
-    if (typeof ret === 'function' && ret !== cb) {
-      Object.keys(cb).forEach(function (k) {
-        ret[k] = cb[k]
-      })
-    }
-    return ret
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/package.json
deleted file mode 100644 (file)
index 7a7f4b1..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_id": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-bLtFIevVHODsCpNr/XZX736bFyo=",
-  "_location": "/grunt-standard/standard-format/glob/inflight",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "name": "inflight",
-    "escapedName": "inflight",
-    "rawSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/inflight/issues"
-  },
-  "dependencies": {
-    "once": "^1.3.0",
-    "wrappy": "1"
-  },
-  "description": "Add callbacks to requests in flight to avoid async duplication",
-  "devDependencies": {
-    "tap": "^0.4.10"
-  },
-  "homepage": "https://github.com/isaacs/inflight",
-  "license": "ISC",
-  "main": "inflight.js",
-  "name": "inflight",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/inflight.git"
-  },
-  "scripts": {
-    "test": "tap test.js"
-  },
-  "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inflight/test.js
deleted file mode 100644 (file)
index 2bb75b3..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-var test = require('tap').test
-var inf = require('./inflight.js')
-
-
-function req (key, cb) {
-  cb = inf(key, cb)
-  if (cb) setTimeout(function () {
-    cb(key)
-    cb(key)
-  })
-  return cb
-}
-
-test('basic', function (t) {
-  var calleda = false
-  var a = req('key', function (k) {
-    t.notOk(calleda)
-    calleda = true
-    t.equal(k, 'key')
-    if (calledb) t.end()
-  })
-  t.ok(a, 'first returned cb function')
-
-  var calledb = false
-  var b = req('key', function (k) {
-    t.notOk(calledb)
-    calledb = true
-    t.equal(k, 'key')
-    if (calleda) t.end()
-  })
-
-  t.notOk(b, 'second should get falsey inflight response')
-})
-
-test('timing', function (t) {
-  var expect = [
-    'method one',
-    'start one',
-    'end one',
-    'two',
-    'tick',
-    'three'
-  ]
-  var i = 0
-
-  function log (m) {
-    t.equal(m, expect[i], m + ' === ' + expect[i])
-    ++i
-    if (i === expect.length)
-      t.end()
-  }
-
-  function method (name, cb) {
-    log('method ' + name)
-    process.nextTick(cb)
-  }
-
-  var one = inf('foo', function () {
-    log('start one')
-    var three = inf('foo', function () {
-      log('three')
-    })
-    if (three) method('three', three)
-    log('end one')
-  })
-
-  method('one', one)
-
-  var two = inf('foo', function () {
-    log('two')
-  })
-  if (two) method('one', two)
-
-  process.nextTick(log.bind(null, 'tick'))
-})
-
-test('parameters', function (t) {
-  t.plan(8)
-
-  var a = inf('key', function (first, second, third) {
-    t.equal(first, 1)
-    t.equal(second, 2)
-    t.equal(third, 3)
-  })
-  t.ok(a, 'first returned cb function')
-
-  var b = inf('key', function (first, second, third) {
-    t.equal(first, 1)
-    t.equal(second, 2)
-    t.equal(third, 3)
-  })
-  t.notOk(b, 'second should get falsey inflight response')
-
-  setTimeout(function () {
-    a(1, 2, 3)
-  })
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/LICENSE
deleted file mode 100644 (file)
index dea3013..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
-REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
-INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
-LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/README.md
deleted file mode 100644 (file)
index b1c5665..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-Browser-friendly inheritance fully compatible with standard node.js
-[inherits](http://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor).
-
-This package exports standard `inherits` from node.js `util` module in
-node environment, but also provides alternative browser-friendly
-implementation through [browser
-field](https://gist.github.com/shtylman/4339901). Alternative
-implementation is a literal copy of standard one located in standalone
-module to avoid requiring of `util`. It also has a shim for old
-browsers with no `Object.create` support.
-
-While keeping you sure you are using standard `inherits`
-implementation in node.js environment, it allows bundlers such as
-[browserify](https://github.com/substack/node-browserify) to not
-include full `util` package to your client code if all you need is
-just `inherits` function. It worth, because browser shim for `util`
-package is large and `inherits` is often the single function you need
-from it.
-
-It's recommended to use this package instead of
-`require('util').inherits` for any code that has chances to be used
-not only in node.js but in browser too.
-
-## usage
-
-```js
-var inherits = require('inherits');
-// then use exactly as the standard one
-```
-
-## note on version ~1.0
-
-Version ~1.0 had completely different motivation and is not compatible
-neither with 2.0 nor with standard node.js `inherits`.
-
-If you are using version ~1.0 and planning to switch to ~2.0, be
-careful:
-
-* new version uses `super_` instead of `super` for referencing
-  superclass
-* new version overwrites current prototype while old one preserves any
-  existing fields on it
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits.js
deleted file mode 100644 (file)
index 29f5e24..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('util').inherits
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits_browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/inherits_browser.js
deleted file mode 100644 (file)
index c1e78a7..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-if (typeof Object.create === 'function') {
-  // implementation from standard node.js 'util' module
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    ctor.prototype = Object.create(superCtor.prototype, {
-      constructor: {
-        value: ctor,
-        enumerable: false,
-        writable: true,
-        configurable: true
-      }
-    });
-  };
-} else {
-  // old school shim for old browsers
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    var TempCtor = function () {}
-    TempCtor.prototype = superCtor.prototype
-    ctor.prototype = new TempCtor()
-    ctor.prototype.constructor = ctor
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/package.json
deleted file mode 100644 (file)
index f4d9c1f..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-{
-  "_args": [
-    [
-      "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_id": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
-  "_location": "/grunt-standard/standard-format/glob/inherits",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "name": "inherits",
-    "escapedName": "inherits",
-    "rawSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "browser": "./inherits_browser.js",
-  "bugs": {
-    "url": "https://github.com/isaacs/inherits/issues"
-  },
-  "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()",
-  "homepage": "https://github.com/isaacs/inherits#readme",
-  "keywords": [
-    "inheritance",
-    "class",
-    "klass",
-    "oop",
-    "object-oriented",
-    "inherits",
-    "browser",
-    "browserify"
-  ],
-  "license": "ISC",
-  "main": "./inherits.js",
-  "name": "inherits",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/inherits.git"
-  },
-  "scripts": {
-    "test": "node test"
-  },
-  "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/inherits/test.js
deleted file mode 100644 (file)
index fc53012..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var inherits = require('./inherits.js')
-var assert = require('assert')
-
-function test(c) {
-  assert(c.constructor === Child)
-  assert(c.constructor.super_ === Parent)
-  assert(Object.getPrototypeOf(c) === Child.prototype)
-  assert(Object.getPrototypeOf(Object.getPrototypeOf(c)) === Parent.prototype)
-  assert(c instanceof Child)
-  assert(c instanceof Parent)
-}
-
-function Child() {
-  Parent.call(this)
-  test(this)
-}
-
-function Parent() {}
-
-inherits(Child, Parent)
-
-var c = new Child
-test(c)
-
-console.log('ok')
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/LICENSE
deleted file mode 100644 (file)
index 0c44ae7..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Copyright (c) Isaac Z. Schlueter ("Author")
-All rights reserved.
-
-The BSD License
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/README.md
deleted file mode 100644 (file)
index a2981ea..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-# once
-
-Only call a function once.
-
-## usage
-
-```javascript
-var once = require('once')
-
-function load (file, cb) {
-  cb = once(cb)
-  loader.load('file')
-  loader.once('load', cb)
-  loader.once('error', cb)
-}
-```
-
-Or add to the Function.prototype in a responsible way:
-
-```javascript
-// only has to be done once
-require('once').proto()
-
-function load (file, cb) {
-  cb = cb.once()
-  loader.load('file')
-  loader.once('load', cb)
-  loader.once('error', cb)
-}
-```
-
-Ironically, the prototype feature makes this module twice as
-complicated as necessary.
-
-To check whether you function has been called, use `fn.called`. Once the
-function is called for the first time the return value of the original
-function is saved in `fn.value` and subsequent calls will continue to
-return this value.
-
-```javascript
-var once = require('once')
-
-function load (cb) {
-  cb = once(cb)
-  var stream = createStream()
-  stream.once('data', cb)
-  stream.once('end', function () {
-    if (!cb.called) cb(new Error('not found'))
-  })
-}
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/LICENSE
deleted file mode 100644 (file)
index 19129e3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/README.md
deleted file mode 100644 (file)
index 98eab25..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# wrappy
-
-Callback wrapping utility
-
-## USAGE
-
-```javascript
-var wrappy = require("wrappy")
-
-// var wrapper = wrappy(wrapperFunction)
-
-// make sure a cb is called only once
-// See also: http://npm.im/once for this specific use case
-var once = wrappy(function (cb) {
-  var called = false
-  return function () {
-    if (called) return
-    called = true
-    return cb.apply(this, arguments)
-  }
-})
-
-function printBoo () {
-  console.log('boo')
-}
-// has some rando property
-printBoo.iAmBooPrinter = true
-
-var onlyPrintOnce = once(printBoo)
-
-onlyPrintOnce() // prints 'boo'
-onlyPrintOnce() // does nothing
-
-// random property is retained!
-assert.equal(onlyPrintOnce.iAmBooPrinter, true)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/package.json
deleted file mode 100644 (file)
index 42c0b52..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_id": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HmWWmWXMvC20VIxrhKbyxa7dRzk=",
-  "_location": "/grunt-standard/standard-format/glob/once/wrappy",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "name": "wrappy",
-    "escapedName": "wrappy",
-    "rawSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/glob/once"
-  ],
-  "_spec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/wrappy/issues"
-  },
-  "dependencies": {},
-  "description": "Callback wrapping utility",
-  "devDependencies": {
-    "tap": "^0.4.12"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/wrappy",
-  "license": "ISC",
-  "main": "wrappy.js",
-  "name": "wrappy",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/wrappy.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js
deleted file mode 100644 (file)
index 5ed0fcd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var test = require('tap').test
-var wrappy = require('../wrappy.js')
-
-test('basic', function (t) {
-  function onceifier (cb) {
-    var called = false
-    return function () {
-      if (called) return
-      called = true
-      return cb.apply(this, arguments)
-    }
-  }
-  onceifier.iAmOnce = {}
-  var once = wrappy(onceifier)
-  t.equal(once.iAmOnce, onceifier.iAmOnce)
-
-  var called = 0
-  function boo () {
-    t.equal(called, 0)
-    called++
-  }
-  // has some rando property
-  boo.iAmBoo = true
-
-  var onlyPrintOnce = once(boo)
-
-  onlyPrintOnce() // prints 'boo'
-  onlyPrintOnce() // does nothing
-  t.equal(called, 1)
-
-  // random property is retained!
-  t.equal(onlyPrintOnce.iAmBoo, true)
-
-  var logs = []
-  var logwrap = wrappy(function (msg, cb) {
-    logs.push(msg + ' wrapping cb')
-    return function () {
-      logs.push(msg + ' before cb')
-      var ret = cb.apply(this, arguments)
-      logs.push(msg + ' after cb')
-    }
-  })
-
-  var c = logwrap('foo', function () {
-    t.same(logs, [ 'foo wrapping cb', 'foo before cb' ])
-  })
-  c()
-  t.same(logs, [ 'foo wrapping cb', 'foo before cb', 'foo after cb' ])
-
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js
deleted file mode 100644 (file)
index bb7e7d6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
-  if (fn && cb) return wrappy(fn)(cb)
-
-  if (typeof fn !== 'function')
-    throw new TypeError('need wrapper function')
-
-  Object.keys(fn).forEach(function (k) {
-    wrapper[k] = fn[k]
-  })
-
-  return wrapper
-
-  function wrapper() {
-    var args = new Array(arguments.length)
-    for (var i = 0; i < args.length; i++) {
-      args[i] = arguments[i]
-    }
-    var ret = fn.apply(this, args)
-    var cb = args[args.length-1]
-    if (typeof ret === 'function' && ret !== cb) {
-      Object.keys(cb).forEach(function (k) {
-        ret[k] = cb[k]
-      })
-    }
-    return ret
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/once.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/once.js
deleted file mode 100644 (file)
index 2e1e721..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var wrappy = require('wrappy')
-module.exports = wrappy(once)
-
-once.proto = once(function () {
-  Object.defineProperty(Function.prototype, 'once', {
-    value: function () {
-      return once(this)
-    },
-    configurable: true
-  })
-})
-
-function once (fn) {
-  var f = function () {
-    if (f.called) return f.value
-    f.called = true
-    return f.value = fn.apply(this, arguments)
-  }
-  f.called = false
-  return f
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/package.json
deleted file mode 100644 (file)
index 433f349..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_id": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-8/Pk2lt9J7XHMpae4+Z+cpRXsx8=",
-  "_location": "/grunt-standard/standard-format/glob/once",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "name": "once",
-    "escapedName": "once",
-    "rawSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/glob",
-    "/grunt-standard/standard-format/glob/inflight"
-  ],
-  "_spec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/once/issues"
-  },
-  "dependencies": {
-    "wrappy": "1"
-  },
-  "description": "Run a function exactly one time",
-  "devDependencies": {
-    "tap": "~0.3.0"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/isaacs/once#readme",
-  "keywords": [
-    "once",
-    "function",
-    "one",
-    "single"
-  ],
-  "license": "BSD",
-  "main": "once.js",
-  "name": "once",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/once.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/once/-/once-1.3.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/test/once.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/glob/node_modules/once/test/once.js
deleted file mode 100644 (file)
index c618360..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var test = require('tap').test
-var once = require('../once.js')
-
-test('once', function (t) {
-  var f = 0
-  function fn (g) {
-    t.equal(f, 0)
-    f ++
-    return f + g + this
-  }
-  fn.ownProperty = {}
-  var foo = once(fn)
-  t.equal(fn.ownProperty, foo.ownProperty)
-  t.notOk(foo.called)
-  for (var i = 0; i < 1E3; i++) {
-    t.same(f, i === 0 ? 0 : 1)
-    var g = foo.call(1, 1)
-    t.ok(foo.called)
-    t.same(g, 3)
-    t.same(f, 1)
-  }
-  t.end()
-})
index ff4a027..578b88f 100644 (file)
@@ -1,31 +1,46 @@
 {
   "_args": [
     [
-      "glob@https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "glob@^4.3.5",
+        "scope": null,
+        "escapedName": "glob",
+        "name": "glob",
+        "rawSpec": "^4.3.5",
+        "spec": ">=4.3.5 <5.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
     ]
   ],
-  "_development": true,
-  "_from": "glob@https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-  "_id": "glob@https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=",
+  "_from": "glob@>=4.3.5 <5.0.0",
+  "_id": "glob@4.5.3",
+  "_inCache": true,
   "_location": "/grunt-standard/standard-format/glob",
+  "_nodeVersion": "1.4.2",
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "i@izs.me"
+  },
+  "_npmVersion": "2.7.1",
   "_phantomChildren": {},
   "_requested": {
-    "type": "remote",
-    "raw": "glob@https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-    "name": "glob",
+    "raw": "glob@^4.3.5",
+    "scope": null,
     "escapedName": "glob",
-    "rawSpec": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz"
+    "name": "glob",
+    "rawSpec": "^4.3.5",
+    "spec": ">=4.3.5 <5.0.0",
+    "type": "range"
   },
   "_requiredBy": [
     "/grunt-standard/standard-format"
   ],
-  "_spec": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
+  "_shasum": "c6cb73d3226c1efef04de3c56d012f03377ee15f",
+  "_shrinkwrap": null,
+  "_spec": "glob@^4.3.5",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
   "author": {
     "name": "Isaac Z. Schlueter",
     "email": "i@izs.me",
     "tap": "^0.5.0",
     "tick": "0.0.6"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "c6cb73d3226c1efef04de3c56d012f03377ee15f",
+    "tarball": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz"
+  },
   "engines": {
     "node": "*"
   },
     "sync.js",
     "common.js"
   ],
-  "homepage": "https://github.com/isaacs/node-glob#readme",
+  "gitHead": "a4e461ab59a837eee80a4d8dbdbf5ae1054a646f",
+  "homepage": "https://github.com/isaacs/node-glob",
   "license": "ISC",
   "main": "glob.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "i@izs.me"
+    }
+  ],
   "name": "glob",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git://github.com/isaacs/node-glob.git"
     "test": "npm run profclean && tap test/*.js",
     "test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js"
   },
-  "version": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz"
+  "version": "4.5.3"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/LICENSE
deleted file mode 100644 (file)
index 05a4010..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Copyright 2009, 2010, 2011 Isaac Z. Schlueter.
-All rights reserved.
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/README.md
deleted file mode 100644 (file)
index d458bc2..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-# minimatch
-
-A minimal matching utility.
-
-[![Build Status](https://secure.travis-ci.org/isaacs/minimatch.png)](http://travis-ci.org/isaacs/minimatch)
-
-
-This is the matching library used internally by npm.
-
-It works by converting glob expressions into JavaScript `RegExp`
-objects.
-
-## Usage
-
-```javascript
-var minimatch = require("minimatch")
-
-minimatch("bar.foo", "*.foo") // true!
-minimatch("bar.foo", "*.bar") // false!
-minimatch("bar.foo", "*.+(bar|foo)", { debug: true }) // true, and noisy!
-```
-
-## Features
-
-Supports these glob features:
-
-* Brace Expansion
-* Extended glob matching
-* "Globstar" `**` matching
-
-See:
-
-* `man sh`
-* `man bash`
-* `man 3 fnmatch`
-* `man 5 gitignore`
-
-## Minimatch Class
-
-Create a minimatch object by instanting the `minimatch.Minimatch` class.
-
-```javascript
-var Minimatch = require("minimatch").Minimatch
-var mm = new Minimatch(pattern, options)
-```
-
-### Properties
-
-* `pattern` The original pattern the minimatch object represents.
-* `options` The options supplied to the constructor.
-* `set` A 2-dimensional array of regexp or string expressions.
-  Each row in the
-  array corresponds to a brace-expanded pattern.  Each item in the row
-  corresponds to a single path-part.  For example, the pattern
-  `{a,b/c}/d` would expand to a set of patterns like:
-
-        [ [ a, d ]
-        , [ b, c, d ] ]
-
-    If a portion of the pattern doesn't have any "magic" in it
-    (that is, it's something like `"foo"` rather than `fo*o?`), then it
-    will be left as a string rather than converted to a regular
-    expression.
-
-* `regexp` Created by the `makeRe` method.  A single regular expression
-  expressing the entire pattern.  This is useful in cases where you wish
-  to use the pattern somewhat like `fnmatch(3)` with `FNM_PATH` enabled.
-* `negate` True if the pattern is negated.
-* `comment` True if the pattern is a comment.
-* `empty` True if the pattern is `""`.
-
-### Methods
-
-* `makeRe` Generate the `regexp` member if necessary, and return it.
-  Will return `false` if the pattern is invalid.
-* `match(fname)` Return true if the filename matches the pattern, or
-  false otherwise.
-* `matchOne(fileArray, patternArray, partial)` Take a `/`-split
-  filename, and match it against a single row in the `regExpSet`.  This
-  method is mainly for internal use, but is exposed so that it can be
-  used by a glob-walker that needs to avoid excessive filesystem calls.
-
-All other methods are internal, and will be called as necessary.
-
-## Functions
-
-The top-level exported function has a `cache` property, which is an LRU
-cache set to store 100 items.  So, calling these methods repeatedly
-with the same pattern and options will use the same Minimatch object,
-saving the cost of parsing it multiple times.
-
-### minimatch(path, pattern, options)
-
-Main export.  Tests a path against the pattern using the options.
-
-```javascript
-var isJS = minimatch(file, "*.js", { matchBase: true })
-```
-
-### minimatch.filter(pattern, options)
-
-Returns a function that tests its
-supplied argument, suitable for use with `Array.filter`.  Example:
-
-```javascript
-var javascripts = fileList.filter(minimatch.filter("*.js", {matchBase: true}))
-```
-
-### minimatch.match(list, pattern, options)
-
-Match against the list of
-files, in the style of fnmatch or glob.  If nothing is matched, and
-options.nonull is set, then return a list containing the pattern itself.
-
-```javascript
-var javascripts = minimatch.match(fileList, "*.js", {matchBase: true}))
-```
-
-### minimatch.makeRe(pattern, options)
-
-Make a regular expression object from the pattern.
-
-## Options
-
-All options are `false` by default.
-
-### debug
-
-Dump a ton of stuff to stderr.
-
-### nobrace
-
-Do not expand `{a,b}` and `{1..3}` brace sets.
-
-### noglobstar
-
-Disable `**` matching against multiple folder names.
-
-### dot
-
-Allow patterns to match filenames starting with a period, even if
-the pattern does not explicitly have a period in that spot.
-
-Note that by default, `a/**/b` will **not** match `a/.d/b`, unless `dot`
-is set.
-
-### noext
-
-Disable "extglob" style patterns like `+(a|b)`.
-
-### nocase
-
-Perform a case-insensitive match.
-
-### nonull
-
-When a match is not found by `minimatch.match`, return a list containing
-the pattern itself if this option is set.  When not set, an empty list
-is returned if there are no matches.
-
-### matchBase
-
-If set, then patterns without slashes will be matched
-against the basename of the path if it contains slashes.  For example,
-`a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`.
-
-### nocomment
-
-Suppress the behavior of treating `#` at the start of a pattern as a
-comment.
-
-### nonegate
-
-Suppress the behavior of treating a leading `!` character as negation.
-
-### flipNegate
-
-Returns from negate expressions the same as if they were not negated.
-(Ie, true on a hit, false on a miss.)
-
-
-## Comparisons to other fnmatch/glob implementations
-
-While strict compliance with the existing standards is a worthwhile
-goal, some discrepancies exist between minimatch and other
-implementations, and are intentional.
-
-If the pattern starts with a `!` character, then it is negated.  Set the
-`nonegate` flag to suppress this behavior, and treat leading `!`
-characters normally.  This is perhaps relevant if you wish to start the
-pattern with a negative extglob pattern like `!(a|B)`.  Multiple `!`
-characters at the start of a pattern will negate the pattern multiple
-times.
-
-If a pattern starts with `#`, then it is treated as a comment, and
-will not match anything.  Use `\#` to match a literal `#` at the
-start of a line, or set the `nocomment` flag to suppress this behavior.
-
-The double-star character `**` is supported by default, unless the
-`noglobstar` flag is set.  This is supported in the manner of bsdglob
-and bash 4.1, where `**` only has special significance if it is the only
-thing in a path part.  That is, `a/**/b` will match `a/x/y/b`, but
-`a/**b` will not.
-
-If an escaped pattern has no matches, and the `nonull` flag is set,
-then minimatch.match returns the pattern as-provided, rather than
-interpreting the character escapes.  For example,
-`minimatch.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than
-`"*a?"`.  This is akin to setting the `nullglob` option in bash, except
-that it does not resolve escaped pattern characters.
-
-If brace expansion is not disabled, then it is performed before any
-other interpretation of the glob pattern.  Thus, a pattern like
-`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded
-**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are
-checked for validity.  Since those two are valid, matching proceeds.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/browser.js
deleted file mode 100644 (file)
index cf58a3f..0000000
+++ /dev/null
@@ -1,1114 +0,0 @@
-(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
-
-},{"brace-expansion":2}],2:[function(require,module,exports){
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  var expansions = expand(escapeBraces(str));
-  return expansions.filter(identity).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0]).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      expansions.push([pre, N[j], post[k]].join(''))
-    }
-  }
-
-  return expansions;
-}
-
-
-},{"balanced-match":3,"concat-map":4}],3:[function(require,module,exports){
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
-
-},{}],4:[function(require,module,exports){
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (Array.isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-},{}]},{},[1]);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/minimatch.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/minimatch.js
deleted file mode 100644 (file)
index 2bfdf62..0000000
+++ /dev/null
@@ -1,868 +0,0 @@
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.npmignore
deleted file mode 100644 (file)
index 249bc20..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-*.sw*
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/.travis.yml
deleted file mode 100644 (file)
index 6e5919d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-language: node_js
-node_js:
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/README.md
deleted file mode 100644 (file)
index 62bc7ba..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-# brace-expansion
-
-[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), 
-as known from sh/bash, in JavaScript.
-
-[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion)
-
-[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion)
-
-## Example
-
-```js
-var expand = require('brace-expansion');
-
-expand('file-{a,b,c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('-v{,,}')
-// => ['-v', '-v', '-v']
-
-expand('file{0..2}.jpg')
-// => ['file0.jpg', 'file1.jpg', 'file2.jpg']
-
-expand('file-{a..c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('file{2..0}.jpg')
-// => ['file2.jpg', 'file1.jpg', 'file0.jpg']
-
-expand('file{0..4..2}.jpg')
-// => ['file0.jpg', 'file2.jpg', 'file4.jpg']
-
-expand('file-{a..e..2}.jpg')
-// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg']
-
-expand('file{00..10..5}.jpg')
-// => ['file00.jpg', 'file05.jpg', 'file10.jpg']
-
-expand('{{A..C},{a..c}}')
-// => ['A', 'B', 'C', 'a', 'b', 'c']
-
-expand('ppp{,config,oe{,conf}}')
-// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf']
-```
-
-## API
-
-```js
-var expand = require('brace-expansion');
-```
-
-### var expanded = expand(str)
-
-Return an array of all possible and valid expansions of `str`. If none are
-found, `[str]` is returned.
-
-Valid expansions are:
-
-```js
-/^(.*,)+(.+)?$/
-// {a,b,...}
-```
-
-A comma seperated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-A numeric sequence from `x` to `y` inclusive, with optional increment.
-If `x` or `y` start with a leading `0`, all the numbers will be padded
-to have equal length. Negative numbers and backwards iteration work too.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-An alphabetic sequence from `x` to `y` inclusive, with optional increment.
-`x` and `y` must be exactly one character, and if given, `incr` must be a
-number.
-
-For compatibility reasons, the string `${` is not eligible for brace expansion.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install brace-expansion
-```
-
-## Contributors
-
-- [Julian Gruber](https://github.com/juliangruber)
-- [Isaac Z. Schlueter](https://github.com/isaacs)
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/example.js
deleted file mode 100644 (file)
index 60ecfc7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-var expand = require('./');
-
-console.log(expand('http://any.org/archive{1996..1999}/vol{1..4}/part{a,b,c}.html'));
-console.log(expand('http://www.numericals.com/file{1..100..10}.txt'));
-console.log(expand('http://www.letters.com/file{a..z..2}.txt'));
-console.log(expand('mkdir /usr/local/src/bash/{old,new,dist,bugs}'));
-console.log(expand('chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/index.js
deleted file mode 100644 (file)
index a23104e..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  return expand(escapeBraces(str), true).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str, isTop) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0], false).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post, false)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post, false)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el, false) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      var expansion = pre + N[j] + post[k];
-      if (!isTop || isSequence || expansion)
-        expansions.push(expansion);
-    }
-  }
-
-  return expansions;
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore
deleted file mode 100644 (file)
index fd4f2b0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.DS_Store
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
deleted file mode 100644 (file)
index fa5da71..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test:
-       @node_modules/.bin/tape test/*.js
-
-.PHONY: test
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md
deleted file mode 100644 (file)
index 2aff0eb..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-# balanced-match
-
-Match balanced string pairs, like `{` and `}` or `<b>` and `</b>`.
-
-[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match)
-[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match)
-
-[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match)
-
-## Example
-
-Get the first matching pair of braces:
-
-```js
-var balanced = require('balanced-match');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-```
-
-The matches are:
-
-```bash
-$ node example.js
-{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' }
-{ start: 3,
-  end: 9,
-  pre: 'pre',
-  body: 'first',
-  post: 'between{second}post' }
-```
-
-## API
-
-### var m = balanced(a, b, str)
-
-For the first non-nested matching pair of `a` and `b` in `str`, return an
-object with those keys:
-
-* **start** the index of the first match of `a`
-* **end** the index of the matching `b`
-* **pre** the preamble, `a` and `b` not included
-* **body** the match, `a` and `b` not included
-* **post** the postscript, `a` and `b` not included
-
-If there's no match, `undefined` will be returned.
-
-If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']`.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install balanced-match
-```
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
deleted file mode 100644 (file)
index c02ad34..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-var balanced = require('./');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js
deleted file mode 100644 (file)
index d165ae8..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
deleted file mode 100644 (file)
index 5458209..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  "_args": [
-    [
-      "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_id": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-OPZzDAOqttXtu1K9k0iF51bXFnQ=",
-  "_location": "/grunt-standard/standard-format/minimatch/brace-expansion/balanced-match",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "name": "balanced-match",
-    "escapedName": "balanced-match",
-    "rawSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/balanced-match/issues"
-  },
-  "dependencies": {},
-  "description": "Match balanced character pairs, like \"{\" and \"}\"",
-  "devDependencies": {
-    "tape": "~1.1.1"
-  },
-  "homepage": "https://github.com/juliangruber/balanced-match",
-  "keywords": [
-    "match",
-    "regexp",
-    "test",
-    "balanced",
-    "parse"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "balanced-match",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/balanced-match.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js
deleted file mode 100644 (file)
index 36bfd39..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var test = require('tape');
-var balanced = require('..');
-
-test('balanced', function(t) {
-  t.deepEqual(balanced('{', '}', 'pre{in{nest}}post'), {
-    start: 3,
-    end: 12,
-    pre: 'pre',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', '{{{{{{{{{in}post'), {
-    start: 8,
-    end: 11,
-    pre: '{{{{{{{{',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body{in}post'), {
-    start: 8,
-    end: 11,
-    pre: 'pre{body',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre}{in{nest}}post'), {
-    start: 4,
-    end: 13,
-    pre: 'pre}',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body}between{body2}post'), {
-    start: 3,
-    end: 8,
-    pre: 'pre',
-    body: 'body',
-    post: 'between{body2}post'
-  });
-  t.notOk(balanced('{', '}', 'nope'), 'should be notOk');
-  t.deepEqual(balanced('<b>', '</b>', 'pre<b>in<b>nest</b></b>post'), {
-    start: 3,
-    end: 19,
-    pre: 'pre',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.deepEqual(balanced('<b>', '</b>', 'pre</b><b>in<b>nest</b></b>post'), {
-    start: 7,
-    end: 23,
-    pre: 'pre</b>',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml
deleted file mode 100644 (file)
index f1d0f13..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - 0.4
-  - 0.6
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE
deleted file mode 100644 (file)
index ee27ba4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown
deleted file mode 100644 (file)
index 408f70a..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-concat-map
-==========
-
-Concatenative mapdashery.
-
-[![browser support](http://ci.testling.com/substack/node-concat-map.png)](http://ci.testling.com/substack/node-concat-map)
-
-[![build status](https://secure.travis-ci.org/substack/node-concat-map.png)](http://travis-ci.org/substack/node-concat-map)
-
-example
-=======
-
-``` js
-var concatMap = require('concat-map');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
-```
-
-***
-
-```
-[ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]
-```
-
-methods
-=======
-
-``` js
-var concatMap = require('concat-map')
-```
-
-concatMap(xs, fn)
------------------
-
-Return an array of concatenated elements by calling `fn(x, i)` for each element
-`x` and each index `i` in the array `xs`.
-
-When `fn(x, i)` returns an array, its result will be concatenated with the
-result array. If `fn(x, i)` returns anything else, that value will be pushed
-onto the end of the result array.
-
-install
-=======
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install concat-map
-```
-
-license
-=======
-
-MIT
-
-notes
-=====
-
-This module was written while sitting high above the ground in a tree.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js
deleted file mode 100644 (file)
index 3365621..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-var concatMap = require('../');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js
deleted file mode 100644 (file)
index b29a781..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-var isArray = Array.isArray || function (xs) {
-    return Object.prototype.toString.call(xs) === '[object Array]';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json
deleted file mode 100644 (file)
index 7f61ef4..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-{
-  "_args": [
-    [
-      "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_id": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-  "_location": "/grunt-standard/standard-format/minimatch/brace-expansion/concat-map",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "name": "concat-map",
-    "escapedName": "concat-map",
-    "rawSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-concat-map/issues"
-  },
-  "description": "concatenative mapdashery",
-  "devDependencies": {
-    "tape": "~2.4.0"
-  },
-  "directories": {
-    "example": "example",
-    "test": "test"
-  },
-  "homepage": "https://github.com/substack/node-concat-map#readme",
-  "keywords": [
-    "concat",
-    "concatMap",
-    "map",
-    "functional",
-    "higher-order"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "concat-map",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-concat-map.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": {
-      "ie": [
-        6,
-        7,
-        8,
-        9
-      ],
-      "ff": [
-        3.5,
-        10,
-        15
-      ],
-      "chrome": [
-        10,
-        22
-      ],
-      "safari": [
-        5.1
-      ],
-      "opera": [
-        12
-      ]
-    }
-  },
-  "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js
deleted file mode 100644 (file)
index fdbd702..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var concatMap = require('../');
-var test = require('tape');
-
-test('empty or not', function (t) {
-    var xs = [ 1, 2, 3, 4, 5, 6 ];
-    var ixes = [];
-    var ys = concatMap(xs, function (x, ix) {
-        ixes.push(ix);
-        return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-    });
-    t.same(ys, [ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]);
-    t.same(ixes, [ 0, 1, 2, 3, 4, 5 ]);
-    t.end();
-});
-
-test('always something', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : [ x ];
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('scalars', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : x;
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('undefs', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function () {});
-    t.same(ys, [ undefined, undefined, undefined, undefined ]);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/package.json
deleted file mode 100644 (file)
index 6e4e01e..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_id": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ybfQPAPze8cEvhAOUitA249s/Nk=",
-  "_location": "/grunt-standard/standard-format/minimatch/brace-expansion",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "name": "brace-expansion",
-    "escapedName": "brace-expansion",
-    "rawSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format/minimatch"
-  ],
-  "_spec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/brace-expansion/issues"
-  },
-  "dependencies": {
-    "balanced-match": "^0.2.0",
-    "concat-map": "0.0.1"
-  },
-  "description": "Brace expansion as known from sh/bash",
-  "devDependencies": {
-    "tape": "^3.0.3"
-  },
-  "homepage": "https://github.com/juliangruber/brace-expansion",
-  "keywords": [],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "brace-expansion",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/brace-expansion.git"
-  },
-  "scripts": {
-    "gentest": "bash test/generate.sh",
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js
deleted file mode 100644 (file)
index 5fe2b8a..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-var fs = require('fs');
-var resfile = __dirname + '/bash-results.txt';
-var cases = fs.readFileSync(resfile, 'utf8').split('><><><><');
-
-// throw away the EOF marker
-cases.pop()
-
-test('matches bash expansions', function(t) {
-  cases.forEach(function(testcase) {
-    var set = testcase.split('\n');
-    var pattern = set.shift();
-    var actual = expand(pattern);
-
-    // If it expands to the empty string, then it's actually
-    // just nothing, but Bash is a singly typed language, so
-    // "nothing" is the same as "".
-    if (set.length === 1 && set[0] === '') {
-      set = []
-    } else {
-      // otherwise, strip off the [] that were added so that
-      // "" expansions would be preserved properly.
-      set = set.map(function (s) {
-        return s.replace(/^\[|\]$/g, '')
-      })
-    }
-
-    t.same(actual, set, pattern);
-  });
-  t.end();
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt
deleted file mode 100644 (file)
index 958148d..0000000
+++ /dev/null
@@ -1,1075 +0,0 @@
-A{b,{d,e},{f,g}}Z
-[AbZ]
-[AdZ]
-[AeZ]
-[AfZ]
-[AgZ]><><><><PRE-{a,b}{{a,b},a,b}-POST
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]><><><><\{a,b}{{a,b},a,b}
-[{a,b}a]
-[{a,b}b]
-[{a,b}a]
-[{a,b}b]><><><><{{a,b}
-[{a]
-[{b]><><><><{a,b}}
-[a}]
-[b}]><><><><{,}
-><><><><a{,}
-[a]
-[a]><><><><{,}b
-[b]
-[b]><><><><a{,}b
-[ab]
-[ab]><><><><a{b}c
-[a{b}c]><><><><a{1..5}b
-[a1b]
-[a2b]
-[a3b]
-[a4b]
-[a5b]><><><><a{01..5}b
-[a01b]
-[a02b]
-[a03b]
-[a04b]
-[a05b]><><><><a{-01..5}b
-[a-01b]
-[a000b]
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]><><><><a{-01..5..3}b
-[a-01b]
-[a002b]
-[a005b]><><><><a{001..9}b
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]
-[a006b]
-[a007b]
-[a008b]
-[a009b]><><><><a{b,c{d,e},{f,g}h}x{y,z
-[abx{y,z]
-[acdx{y,z]
-[acex{y,z]
-[afhx{y,z]
-[aghx{y,z]><><><><a{b,c{d,e},{f,g}h}x{y,z\}
-[abx{y,z}]
-[acdx{y,z}]
-[acex{y,z}]
-[afhx{y,z}]
-[aghx{y,z}]><><><><a{b,c{d,e},{f,g}h}x{y,z}
-[abxy]
-[abxz]
-[acdxy]
-[acdxz]
-[acexy]
-[acexz]
-[afhxy]
-[afhxz]
-[aghxy]
-[aghxz]><><><><a{b{c{d,e}f{x,y{{g}h
-[a{b{cdf{x,y{{g}h]
-[a{b{cef{x,y{{g}h]><><><><a{b{c{d,e}f{x,y{}g}h
-[a{b{cdfxh]
-[a{b{cdfy{}gh]
-[a{b{cefxh]
-[a{b{cefy{}gh]><><><><a{b{c{d,e}f{x,y}}g}h
-[a{b{cdfx}g}h]
-[a{b{cdfy}g}h]
-[a{b{cefx}g}h]
-[a{b{cefy}g}h]><><><><a{b{c{d,e}f}g}h
-[a{b{cdf}g}h]
-[a{b{cef}g}h]><><><><a{{x,y},z}b
-[axb]
-[ayb]
-[azb]><><><><f{x,y{g,z}}h
-[fxh]
-[fygh]
-[fyzh]><><><><f{x,y{{g,z}}h
-[f{x,y{g}h]
-[f{x,y{z}h]><><><><f{x,y{{g,z}}h}
-[fx]
-[fy{g}h]
-[fy{z}h]><><><><f{x,y{{g}h
-[f{x,y{{g}h]><><><><f{x,y{{g}}h
-[f{x,y{{g}}h]><><><><f{x,y{}g}h
-[fxh]
-[fy{}gh]><><><><z{a,b{,c}d
-[z{a,bd]
-[z{a,bcd]><><><><z{a,b},c}d
-[za,c}d]
-[zb,c}d]><><><><{-01..5}
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]><><><><{-05..100..5}
-[-05]
-[000]
-[005]
-[010]
-[015]
-[020]
-[025]
-[030]
-[035]
-[040]
-[045]
-[050]
-[055]
-[060]
-[065]
-[070]
-[075]
-[080]
-[085]
-[090]
-[095]
-[100]><><><><{-05..100}
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0..5..2}
-[0]
-[2]
-[4]><><><><{0001..05..2}
-[0001]
-[0003]
-[0005]><><><><{0001..-5..2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..-5..-2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..5..-2}
-[0001]
-[0003]
-[0005]><><><><{01..5}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05..3}
-[01]
-[04]><><><><{05..100}
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0a..0z}
-[{0a..0z}]><><><><{a,b\}c,d}
-[a]
-[b}c]
-[d]><><><><{a,b{c,d}
-[{a,bc]
-[{a,bd]><><><><{a,b}c,d}
-[ac,d}]
-[bc,d}]><><><><{a..F}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]><><><><{A..f}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{a..Z}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]><><><><{A..z}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{z..A}
-[z]
-[y]
-[x]
-[w]
-[v]
-[u]
-[t]
-[s]
-[r]
-[q]
-[p]
-[o]
-[n]
-[m]
-[l]
-[k]
-[j]
-[i]
-[h]
-[g]
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{Z..a}
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{a..F..2}
-[a]
-[_]
-[]]
-[[]
-[Y]
-[W]
-[U]
-[S]
-[Q]
-[O]
-[M]
-[K]
-[I]
-[G]><><><><{A..f..02}
-[A]
-[C]
-[E]
-[G]
-[I]
-[K]
-[M]
-[O]
-[Q]
-[S]
-[U]
-[W]
-[Y]
-[[]
-[]]
-[_]
-[a]
-[c]
-[e]><><><><{a..Z..5}
-[a]
-[]><><><><d{a..Z..5}b
-[dab]
-[db]><><><><{A..z..10}
-[A]
-[K]
-[U]
-[_]
-[i]
-[s]><><><><{z..A..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]
-[`]
-[^]
-[]
-[Z]
-[X]
-[V]
-[T]
-[R]
-[P]
-[N]
-[L]
-[J]
-[H]
-[F]
-[D]
-[B]><><><><{Z..a..20}
-[Z]><><><><{a{,b}
-[{a]
-[{ab]><><><><{a},b}
-[a}]
-[b]><><><><{x,y{,}g}
-[x]
-[yg]
-[yg]><><><><{x,y{}g}
-[x]
-[y{}g]><><><><{{a,b}
-[{a]
-[{b]><><><><{{a,b},c}
-[a]
-[b]
-[c]><><><><{{a,b}c}
-[{ac}]
-[{bc}]><><><><{{a,b},}
-[a]
-[b]><><><><X{{a,b},}X
-[XaX]
-[XbX]
-[XX]><><><><{{a,b},}c
-[ac]
-[bc]
-[c]><><><><{{a,b}.}
-[{a.}]
-[{b.}]><><><><{{a,b}}
-[{a}]
-[{b}]><><><><X{a..#}X
-[X{a..#}X]><><><><
-><><><><{-10..00}
-[-10]
-[-09]
-[-08]
-[-07]
-[-06]
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]><><><><{a,\\{a,b}c}
-[a]
-[\ac]
-[\bc]><><><><{a,\{a,b}c}
-[ac}]
-[{ac}]
-[bc}]><><><><a,\{b,c}
-[a,{b,c}]><><><><{-10.\.00}
-[{-10..00}]><><><><ff{c,b,a}
-[ffc]
-[ffb]
-[ffa]><><><><f{d,e,f}g
-[fdg]
-[feg]
-[ffg]><><><><{l,n,m}xyz
-[lxyz]
-[nxyz]
-[mxyz]><><><><{abc\,def}
-[{abc,def}]><><><><{abc}
-[{abc}]><><><><{x\,y,\{abc\},trie}
-[x,y]
-[{abc}]
-[trie]><><><><{}
-[{}]><><><><}
-[}]><><><><{
-[{]><><><><abcd{efgh
-[abcd{efgh]><><><><{1..10}
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]><><><><{0..10,braces}
-[0..10]
-[braces]><><><><{{0..10},braces}
-[0]
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]
-[braces]><><><><x{{0..10},braces}y
-[x0y]
-[x1y]
-[x2y]
-[x3y]
-[x4y]
-[x5y]
-[x6y]
-[x7y]
-[x8y]
-[x9y]
-[x10y]
-[xbracesy]><><><><{3..3}
-[3]><><><><x{3..3}y
-[x3y]><><><><{10..1}
-[10]
-[9]
-[8]
-[7]
-[6]
-[5]
-[4]
-[3]
-[2]
-[1]><><><><{10..1}y
-[10y]
-[9y]
-[8y]
-[7y]
-[6y]
-[5y]
-[4y]
-[3y]
-[2y]
-[1y]><><><><x{10..1}y
-[x10y]
-[x9y]
-[x8y]
-[x7y]
-[x6y]
-[x5y]
-[x4y]
-[x3y]
-[x2y]
-[x1y]><><><><{a..f}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{f..a}
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]><><><><{a..A}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{A..a}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{f..f}
-[f]><><><><{1..f}
-[{1..f}]><><><><{f..1}
-[{f..1}]><><><><{-1..-10}
-[-1]
-[-2]
-[-3]
-[-4]
-[-5]
-[-6]
-[-7]
-[-8]
-[-9]
-[-10]><><><><{-20..0}
-[-20]
-[-19]
-[-18]
-[-17]
-[-16]
-[-15]
-[-14]
-[-13]
-[-12]
-[-11]
-[-10]
-[-9]
-[-8]
-[-7]
-[-6]
-[-5]
-[-4]
-[-3]
-[-2]
-[-1]
-[0]><><><><a-{b{d,e}}-c
-[a-{bd}-c]
-[a-{be}-c]><><><><a-{bdef-{g,i}-c
-[a-{bdef-g-c]
-[a-{bdef-i-c]><><><><{klklkl}{1,2,3}
-[{klklkl}1]
-[{klklkl}2]
-[{klklkl}3]><><><><{1..10..2}
-[1]
-[3]
-[5]
-[7]
-[9]><><><><{-1..-10..2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{-1..-10..-2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{10..1..-2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{10..1..2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{1..20..2}
-[1]
-[3]
-[5]
-[7]
-[9]
-[11]
-[13]
-[15]
-[17]
-[19]><><><><{1..20..20}
-[1]><><><><{100..0..5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{100..0..-5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{a..z}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{a..z..2}
-[a]
-[c]
-[e]
-[g]
-[i]
-[k]
-[m]
-[o]
-[q]
-[s]
-[u]
-[w]
-[y]><><><><{z..a..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]><><><><{2147483645..2147483649}
-[2147483645]
-[2147483646]
-[2147483647]
-[2147483648]
-[2147483649]><><><><{10..0..2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{10..0..-2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{-50..-0..5}
-[-50]
-[-45]
-[-40]
-[-35]
-[-30]
-[-25]
-[-20]
-[-15]
-[-10]
-[-5]
-[0]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..ff}
-[{1..ff}]><><><><{1..10..ff}
-[{1..10..ff}]><><><><{1.20..2}
-[{1.20..2}]><><><><{1..20..f2}
-[{1..20..f2}]><><><><{1..20..2f}
-[{1..20..2f}]><><><><{1..2f..2}
-[{1..2f..2}]><><><><{1..ff..2}
-[{1..ff..2}]><><><><{1..ff}
-[{1..ff}]><><><><{1..f}
-[{1..f}]><><><><{1..0f}
-[{1..0f}]><><><><{1..10f}
-[{1..10f}]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..10.f}
-[{1..10.f}]><><><><
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt
deleted file mode 100644 (file)
index e5161c3..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-# skip quotes for now
-# "{x,x}"
-# {"x,x"}
-# {x","x}
-# '{a,b}{{a,b},a,b}'
-A{b,{d,e},{f,g}}Z
-PRE-{a,b}{{a,b},a,b}-POST
-\\{a,b}{{a,b},a,b}
-{{a,b}
-{a,b}}
-{,}
-a{,}
-{,}b
-a{,}b
-a{b}c
-a{1..5}b
-a{01..5}b
-a{-01..5}b
-a{-01..5..3}b
-a{001..9}b
-a{b,c{d,e},{f,g}h}x{y,z
-a{b,c{d,e},{f,g}h}x{y,z\\}
-a{b,c{d,e},{f,g}h}x{y,z}
-a{b{c{d,e}f{x,y{{g}h
-a{b{c{d,e}f{x,y{}g}h
-a{b{c{d,e}f{x,y}}g}h
-a{b{c{d,e}f}g}h
-a{{x,y},z}b
-f{x,y{g,z}}h
-f{x,y{{g,z}}h
-f{x,y{{g,z}}h}
-f{x,y{{g}h
-f{x,y{{g}}h
-f{x,y{}g}h
-z{a,b{,c}d
-z{a,b},c}d
-{-01..5}
-{-05..100..5}
-{-05..100}
-{0..5..2}
-{0001..05..2}
-{0001..-5..2}
-{0001..-5..-2}
-{0001..5..-2}
-{01..5}
-{1..05}
-{1..05..3}
-{05..100}
-{0a..0z}
-{a,b\\}c,d}
-{a,b{c,d}
-{a,b}c,d}
-{a..F}
-{A..f}
-{a..Z}
-{A..z}
-{z..A}
-{Z..a}
-{a..F..2}
-{A..f..02}
-{a..Z..5}
-d{a..Z..5}b
-{A..z..10}
-{z..A..-2}
-{Z..a..20}
-{a{,b}
-{a},b}
-{x,y{,}g}
-{x,y{}g}
-{{a,b}
-{{a,b},c}
-{{a,b}c}
-{{a,b},}
-X{{a,b},}X
-{{a,b},}c
-{{a,b}.}
-{{a,b}}
-X{a..#}X
-# this next one is an empty string
-
-{-10..00}
-# Need to escape slashes in here for reasons i guess.
-{a,\\\\{a,b}c}
-{a,\\{a,b}c}
-a,\\{b,c}
-{-10.\\.00}
-#### bash tests/braces.tests
-# Note that some tests are edited out because some features of
-# bash are intentionally not supported in this brace expander.
-ff{c,b,a}
-f{d,e,f}g
-{l,n,m}xyz
-{abc\\,def}
-{abc}
-{x\\,y,\\{abc\\},trie}
-# not impementing back-ticks obviously
-# XXXX\\{`echo a b c | tr ' ' ','`\\}
-{}
-# We only ever have to worry about parsing a single argument,
-# not a command line, so spaces have a different meaning than bash.
-# { }
-}
-{
-abcd{efgh
-# spaces
-# foo {1,2} bar
-# not impementing back-ticks obviously
-# `zecho foo {1,2} bar`
-# $(zecho foo {1,2} bar)
-# ${var} is not a variable here, like it is in bash. omit.
-# foo{bar,${var}.}
-# foo{bar,${var}}
-# isaacs: skip quotes for now
-# "${var}"{x,y}
-# $var{x,y}
-# ${var}{x,y}
-# new sequence brace operators
-{1..10}
-# this doesn't work yet
-{0..10,braces}
-# but this does
-{{0..10},braces}
-x{{0..10},braces}y
-{3..3}
-x{3..3}y
-{10..1}
-{10..1}y
-x{10..1}y
-{a..f}
-{f..a}
-{a..A}
-{A..a}
-{f..f}
-# mixes are incorrectly-formed brace expansions
-{1..f}
-{f..1}
-# spaces
-# 0{1..9} {10..20}
-# do negative numbers work?
-{-1..-10}
-{-20..0}
-# weirdly-formed brace expansions -- fixed in post-bash-3.1
-a-{b{d,e}}-c
-a-{bdef-{g,i}-c
-# isaacs: skip quotes for now
-# {"klklkl"}{1,2,3}
-# isaacs: this is a valid test, though
-{klklkl}{1,2,3}
-# {"x,x"}
-{1..10..2}
-{-1..-10..2}
-{-1..-10..-2}
-{10..1..-2}
-{10..1..2}
-{1..20..2}
-{1..20..20}
-{100..0..5}
-{100..0..-5}
-{a..z}
-{a..z..2}
-{z..a..-2}
-# make sure brace expansion handles ints > 2**31 - 1 using intmax_t
-{2147483645..2147483649}
-# unwanted zero-padding -- fixed post-bash-4.0
-{10..0..2}
-{10..0..-2}
-{-50..-0..5}
-# bad
-{1..10.f}
-{1..ff}
-{1..10..ff}
-{1.20..2}
-{1..20..f2}
-{1..20..2f}
-{1..2f..2}
-{1..ff..2}
-{1..ff}
-{1..f}
-{1..0f}
-{1..10f}
-{1..10.f}
-{1..10.f}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js
deleted file mode 100644 (file)
index 3fcc185..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('ignores ${', function(t) {
-  t.deepEqual(expand('${1..3}'), ['${1..3}']);
-  t.deepEqual(expand('${a,b}${c,d}'), ['${a,b}${c,d}']);
-  t.deepEqual(expand('x${a,b}x${c,d}x'), ['x${a,b}x${c,d}x']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
deleted file mode 100644 (file)
index e429121..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('empty option', function(t) {
-  t.deepEqual(expand('-v{,,,,}'), [
-    '-v', '-v', '-v', '-v', '-v'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh
deleted file mode 100644 (file)
index e040e66..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-# Bash 4.3 because of arbitrary need to pick a single standard.
-
-if [ "${BASH_VERSINFO[0]}" != "4" ] || [ "${BASH_VERSINFO[1]}" != "3" ]; then
-  echo "this script requires bash 4.3" >&2
-  exit 1
-fi
-
-CDPATH= cd "$(dirname "$0")"
-
-js='require("./")(process.argv[1]).join(" ")'
-
-cat cases.txt | \
-  while read case; do
-    if [ "${case:0:1}" = "#" ]; then
-      continue;
-    fi;
-    b="$($BASH -c 'for c in '"$case"'; do echo ["$c"]; done')"
-    echo "$case"
-    echo -n "$b><><><><";
-  done > bash-results.txt
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js
deleted file mode 100644 (file)
index 8d434c2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('negative increment', function(t) {
-  t.deepEqual(expand('{3..1}'), ['3', '2', '1']);
-  t.deepEqual(expand('{10..8}'), ['10', '9', '8']);
-  t.deepEqual(expand('{10..08}'), ['10', '09', '08']);
-  t.deepEqual(expand('{c..a}'), ['c', 'b', 'a']);
-
-  t.deepEqual(expand('{4..0..2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{4..0..-2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{e..a..2}'), ['e', 'c', 'a']);
-
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/nested.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
deleted file mode 100644 (file)
index 0862dc5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('nested', function(t) {
-  t.deepEqual(expand('{a,b{1..3},c}'), [
-    'a', 'b1', 'b2', 'b3', 'c'
-  ]);
-  t.deepEqual(expand('{{A..Z},{a..z}}'),
-    'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')
-  );
-  t.deepEqual(expand('ppp{,config,oe{,conf}}'), [
-    'ppp', 'pppconfig', 'pppoe', 'pppoeconf'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/order.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/order.js
deleted file mode 100644 (file)
index c00ad15..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('order', function(t) {
-  t.deepEqual(expand('a{d,c,b}e'), [
-    'ade', 'ace', 'abe'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
deleted file mode 100644 (file)
index e415877..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('pad', function(t) {
-  t.deepEqual(expand('{9..11}'), [
-    '9', '10', '11'
-  ]);
-  t.deepEqual(expand('{09..11}'), [
-    '09', '10', '11'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js
deleted file mode 100644 (file)
index 3038fba..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('x and y of same type', function(t) {
-  t.deepEqual(expand('{a..9}'), ['{a..9}']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
deleted file mode 100644 (file)
index f73a957..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('numeric sequences', function(t) {
-  t.deepEqual(expand('a{1..2}b{2..3}c'), [
-    'a1b2c', 'a1b3c', 'a2b2c', 'a2b3c'
-  ]);
-  t.deepEqual(expand('{1..2}{2..3}'), [
-    '12', '13', '22', '23'
-  ]);
-  t.end();
-});
-
-test('numeric sequences with step count', function(t) {
-  t.deepEqual(expand('{0..8..2}'), [
-    '0', '2', '4', '6', '8'
-  ]);
-  t.deepEqual(expand('{1..8..2}'), [
-    '1', '3', '5', '7'
-  ]);
-  t.end();
-});
-
-test('numeric sequence with negative x / y', function(t) {
-  t.deepEqual(expand('{3..-2}'), [
-    '3', '2', '1', '0', '-1', '-2'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences', function(t) {
-  t.deepEqual(expand('1{a..b}2{b..c}3'), [
-    '1a2b3', '1a2c3', '1b2b3', '1b2c3'
-  ]);
-  t.deepEqual(expand('{a..b}{b..c}'), [
-    'ab', 'ac', 'bb', 'bc'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences with step count', function(t) {
-  t.deepEqual(expand('{a..k..2}'), [
-    'a', 'c', 'e', 'g', 'i', 'k'
-  ]);
-  t.deepEqual(expand('{b..k..2}'), [
-    'b', 'd', 'f', 'h', 'j'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimatch/package.json
deleted file mode 100644 (file)
index a8b8c92..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_id": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-g76hFYA+egl6eAIkJyh+23Yvr+0=",
-  "_location": "/grunt-standard/standard-format/minimatch",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "name": "minimatch",
-    "escapedName": "minimatch",
-    "rawSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format",
-    "/grunt-standard/standard-format/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/minimatch/issues"
-  },
-  "dependencies": {
-    "brace-expansion": "^1.0.0"
-  },
-  "description": "a glob matcher in javascript",
-  "devDependencies": {
-    "browserify": "^9.0.3",
-    "tap": ""
-  },
-  "engines": {
-    "node": "*"
-  },
-  "files": [
-    "minimatch.js",
-    "browser.js"
-  ],
-  "homepage": "https://github.com/isaacs/minimatch#readme",
-  "license": {
-    "type": "MIT",
-    "url": "http://github.com/isaacs/minimatch/raw/master/LICENSE"
-  },
-  "main": "minimatch.js",
-  "name": "minimatch",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/minimatch.git"
-  },
-  "scripts": {
-    "prepublish": "browserify -o browser.js -e minimatch.js --bare",
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/LICENSE
deleted file mode 100644 (file)
index ee27ba4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/example/parse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/example/parse.js
deleted file mode 100644 (file)
index abff3e8..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-var argv = require('../')(process.argv.slice(2));
-console.dir(argv);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/index.js
deleted file mode 100644 (file)
index 185a045..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-module.exports = function (args, opts) {
-    if (!opts) opts = {};
-    
-    var flags = { bools : {}, strings : {}, unknownFn: null };
-
-    if (typeof opts['unknown'] === 'function') {
-        flags.unknownFn = opts['unknown'];
-    }
-
-    if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
-      flags.allBools = true;
-    } else {
-      [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
-          flags.bools[key] = true;
-      });
-    }
-    
-    var aliases = {};
-    Object.keys(opts.alias || {}).forEach(function (key) {
-        aliases[key] = [].concat(opts.alias[key]);
-        aliases[key].forEach(function (x) {
-            aliases[x] = [key].concat(aliases[key].filter(function (y) {
-                return x !== y;
-            }));
-        });
-    });
-
-    [].concat(opts.string).filter(Boolean).forEach(function (key) {
-        flags.strings[key] = true;
-        if (aliases[key]) {
-            flags.strings[aliases[key]] = true;
-        }
-     });
-
-    var defaults = opts['default'] || {};
-    
-    var argv = { _ : [] };
-    Object.keys(flags.bools).forEach(function (key) {
-        setArg(key, defaults[key] === undefined ? false : defaults[key]);
-    });
-    
-    var notFlags = [];
-
-    if (args.indexOf('--') !== -1) {
-        notFlags = args.slice(args.indexOf('--')+1);
-        args = args.slice(0, args.indexOf('--'));
-    }
-
-    function argDefined(key, arg) {
-        return (flags.allBools && /^--[^=]+$/.test(arg)) ||
-            flags.strings[key] || flags.bools[key] || aliases[key];
-    }
-
-    function setArg (key, val, arg) {
-        if (arg && flags.unknownFn && !argDefined(key, arg)) {
-            if (flags.unknownFn(arg) === false) return;
-        }
-
-        var value = !flags.strings[key] && isNumber(val)
-            ? Number(val) : val
-        ;
-        setKey(argv, key.split('.'), value);
-        
-        (aliases[key] || []).forEach(function (x) {
-            setKey(argv, x.split('.'), value);
-        });
-    }
-
-    function setKey (obj, keys, value) {
-        var o = obj;
-        keys.slice(0,-1).forEach(function (key) {
-            if (o[key] === undefined) o[key] = {};
-            o = o[key];
-        });
-
-        var key = keys[keys.length - 1];
-        if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
-            o[key] = value;
-        }
-        else if (Array.isArray(o[key])) {
-            o[key].push(value);
-        }
-        else {
-            o[key] = [ o[key], value ];
-        }
-    }
-    
-    for (var i = 0; i < args.length; i++) {
-        var arg = args[i];
-        
-        if (/^--.+=/.test(arg)) {
-            // Using [\s\S] instead of . because js doesn't support the
-            // 'dotall' regex modifier. See:
-            // http://stackoverflow.com/a/1068308/13216
-            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
-            setArg(m[1], m[2], arg);
-        }
-        else if (/^--no-.+/.test(arg)) {
-            var key = arg.match(/^--no-(.+)/)[1];
-            setArg(key, false, arg);
-        }
-        else if (/^--.+/.test(arg)) {
-            var key = arg.match(/^--(.+)/)[1];
-            var next = args[i + 1];
-            if (next !== undefined && !/^-/.test(next)
-            && !flags.bools[key]
-            && !flags.allBools
-            && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                setArg(key, next, arg);
-                i++;
-            }
-            else if (/^(true|false)$/.test(next)) {
-                setArg(key, next === 'true', arg);
-                i++;
-            }
-            else {
-                setArg(key, flags.strings[key] ? '' : true, arg);
-            }
-        }
-        else if (/^-[^-]+/.test(arg)) {
-            var letters = arg.slice(1,-1).split('');
-            
-            var broken = false;
-            for (var j = 0; j < letters.length; j++) {
-                var next = arg.slice(j+2);
-                
-                if (next === '-') {
-                    setArg(letters[j], next, arg)
-                    continue;
-                }
-                
-                if (/[A-Za-z]/.test(letters[j])
-                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
-                    setArg(letters[j], next, arg);
-                    broken = true;
-                    break;
-                }
-                
-                if (letters[j+1] && letters[j+1].match(/\W/)) {
-                    setArg(letters[j], arg.slice(j+2), arg);
-                    broken = true;
-                    break;
-                }
-                else {
-                    setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
-                }
-            }
-            
-            var key = arg.slice(-1)[0];
-            if (!broken && key !== '-') {
-                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
-                && !flags.bools[key]
-                && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                    setArg(key, args[i+1], arg);
-                    i++;
-                }
-                else if (args[i+1] && /true|false/.test(args[i+1])) {
-                    setArg(key, args[i+1] === 'true', arg);
-                    i++;
-                }
-                else {
-                    setArg(key, flags.strings[key] ? '' : true, arg);
-                }
-            }
-        }
-        else {
-            if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
-                argv._.push(
-                    flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
-                );
-            }
-            if (opts.stopEarly) {
-                argv._.push.apply(argv._, args.slice(i + 1));
-                break;
-            }
-        }
-    }
-    
-    Object.keys(defaults).forEach(function (key) {
-        if (!hasKey(argv, key.split('.'))) {
-            setKey(argv, key.split('.'), defaults[key]);
-            
-            (aliases[key] || []).forEach(function (x) {
-                setKey(argv, x.split('.'), defaults[key]);
-            });
-        }
-    });
-    
-    if (opts['--']) {
-        argv['--'] = new Array();
-        notFlags.forEach(function(key) {
-            argv['--'].push(key);
-        });
-    }
-    else {
-        notFlags.forEach(function(key) {
-            argv._.push(key);
-        });
-    }
-
-    return argv;
-};
-
-function hasKey (obj, keys) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        o = (o[key] || {});
-    });
-
-    var key = keys[keys.length - 1];
-    return key in o;
-}
-
-function isNumber (x) {
-    if (typeof x === 'number') return true;
-    if (/^0x[0-9a-f]+$/i.test(x)) return true;
-    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/package.json
deleted file mode 100644 (file)
index b15b672..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-{
-  "_args": [
-    [
-      "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_id": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-G8K8cWWM3KVxJHVoQ2NhWwtPaVs=",
-  "_location": "/grunt-standard/standard-format/minimist",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "name": "minimist",
-    "escapedName": "minimist",
-    "rawSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format",
-    "/grunt-standard/standard-format/esformatter/npm-run"
-  ],
-  "_spec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/minimist/issues"
-  },
-  "description": "parse argument options",
-  "devDependencies": {
-    "covert": "^1.0.0",
-    "tap": "~0.4.0",
-    "tape": "^3.5.0"
-  },
-  "homepage": "https://github.com/substack/minimist",
-  "keywords": [
-    "argv",
-    "getopt",
-    "parser",
-    "optimist"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "minimist",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/minimist.git"
-  },
-  "scripts": {
-    "coverage": "covert test/*.js",
-    "test": "tap test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/6..latest",
-      "ff/5",
-      "firefox/latest",
-      "chrome/10",
-      "chrome/latest",
-      "safari/5.1",
-      "safari/latest",
-      "opera/12"
-    ]
-  },
-  "version": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/bool.js
deleted file mode 100644 (file)
index 749e083..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('flag boolean default false', function (t) {
-    var argv = parse(['moo'], {
-        boolean: ['t', 'verbose'],
-        default: { verbose: false, t: false }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: false,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-
-});
-
-test('boolean groups', function (t) {
-    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
-        boolean: ['x','y','z']
-    });
-    
-    t.deepEqual(argv, {
-        x : true,
-        y : false,
-        z : true,
-        _ : [ 'one', 'two', 'three' ]
-    });
-    
-    t.deepEqual(typeof argv.x, 'boolean');
-    t.deepEqual(typeof argv.y, 'boolean');
-    t.deepEqual(typeof argv.z, 'boolean');
-    t.end();
-});
-test('boolean and alias with chainable api', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp',  'derp' ];
-    var opts = {
-        herp: { alias: 'h', boolean: true }
-    };
-    var aliasedArgv = parse(aliased, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var propertyArgv = parse(regular, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-test('boolean and alias with options hash', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp', 'derp' ];
-    var opts = {
-        alias: { 'h': 'herp' },
-        boolean: 'herp'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected);
-    t.end();
-});
-
-test('boolean and alias using explicit true', function (t) {
-    var aliased = [ '-h', 'true' ];
-    var regular = [ '--herp',  'true' ];
-    var opts = {
-        alias: { h: 'herp' },
-        boolean: 'h'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ ]
-    };
-
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-// regression, see https://github.com/substack/node-optimist/issues/71
-test('boolean and --x=true', function(t) {
-    var parsed = parse(['--boool', '--other=true'], {
-        boolean: 'boool'
-    });
-
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'true');
-
-    parsed = parse(['--boool', '--other=false'], {
-        boolean: 'boool'
-    });
-    
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'false');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/long.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/long.js
deleted file mode 100644 (file)
index 5d3a1e0..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var test = require('tape');
-var parse = require('../');
-
-test('long opts', function (t) {
-    t.deepEqual(
-        parse([ '--bool' ]),
-        { bool : true, _ : [] },
-        'long boolean'
-    );
-    t.deepEqual(
-        parse([ '--pow', 'xixxle' ]),
-        { pow : 'xixxle', _ : [] },
-        'long capture sp'
-    );
-    t.deepEqual(
-        parse([ '--pow=xixxle' ]),
-        { pow : 'xixxle', _ : [] },
-        'long capture eq'
-    );
-    t.deepEqual(
-        parse([ '--host', 'localhost', '--port', '555' ]),
-        { host : 'localhost', port : 555, _ : [] },
-        'long captures sp'
-    );
-    t.deepEqual(
-        parse([ '--host=localhost', '--port=555' ]),
-        { host : 'localhost', port : 555, _ : [] },
-        'long captures eq'
-    );
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/short.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/short.js
deleted file mode 100644 (file)
index d513a1c..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('numeric short args', function (t) {
-    t.plan(2);
-    t.deepEqual(parse([ '-n123' ]), { n: 123, _: [] });
-    t.deepEqual(
-        parse([ '-123', '456' ]),
-        { 1: true, 2: true, 3: 456, _: [] }
-    );
-});
-
-test('short', function (t) {
-    t.deepEqual(
-        parse([ '-b' ]),
-        { b : true, _ : [] },
-        'short boolean'
-    );
-    t.deepEqual(
-        parse([ 'foo', 'bar', 'baz' ]),
-        { _ : [ 'foo', 'bar', 'baz' ] },
-        'bare'
-    );
-    t.deepEqual(
-        parse([ '-cats' ]),
-        { c : true, a : true, t : true, s : true, _ : [] },
-        'group'
-    );
-    t.deepEqual(
-        parse([ '-cats', 'meow' ]),
-        { c : true, a : true, t : true, s : 'meow', _ : [] },
-        'short group next'
-    );
-    t.deepEqual(
-        parse([ '-h', 'localhost' ]),
-        { h : 'localhost', _ : [] },
-        'short capture'
-    );
-    t.deepEqual(
-        parse([ '-h', 'localhost', '-p', '555' ]),
-        { h : 'localhost', p : 555, _ : [] },
-        'short captures'
-    );
-    t.end();
-});
-test('mixed short bool and capture', function (t) {
-    t.same(
-        parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
-        {
-            f : true, p : 555, h : 'localhost',
-            _ : [ 'script.js' ]
-        }
-    );
-    t.end();
-});
-test('short and long', function (t) {
-    t.deepEqual(
-        parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
-        {
-            f : true, p : 555, h : 'localhost',
-            _ : [ 'script.js' ]
-        }
-    );
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/whitespace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/minimist/test/whitespace.js
deleted file mode 100644 (file)
index 8a52a58..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('whitespace should be whitespace' , function (t) {
-    t.plan(1);
-    var x = parse([ '-x', '\t' ]).x;
-    t.equal(x, '\t');
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard-format/node_modules/stdin/package.json
deleted file mode 100644 (file)
index 012b0c5..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-{
-  "_args": [
-    [
-      "stdin@https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "stdin@https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-  "_id": "stdin@https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-0wQZgarsPf28d6GzjWNy449ftx4=",
-  "_location": "/grunt-standard/standard-format/stdin",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "stdin@https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-    "name": "stdin",
-    "escapedName": "stdin",
-    "rawSpec": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard-format",
-    "/grunt-standard/standard-format/esformatter"
-  ],
-  "_spec": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "dependencies": {},
-  "description": "Because stdin with node is annoying",
-  "devDependencies": {
-    "mocha": "*",
-    "should": "*"
-  },
-  "keywords": [],
-  "main": "index",
-  "name": "stdin",
-  "version": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz"
-}
index 2a59476..a598cf1 100644 (file)
@@ -1,32 +1,52 @@
 {
   "_args": [
     [
-      "standard-format@https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "standard-format@1.3.6",
+        "scope": null,
+        "escapedName": "standard-format",
+        "name": "standard-format",
+        "rawSpec": "1.3.6",
+        "spec": "1.3.6",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard"
     ]
   ],
-  "_development": true,
-  "_from": "standard-format@https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-  "_id": "standard-format@https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-d78pCHzxWgN8hMucUZctn5dOhjk=",
+  "_from": "standard-format@1.3.6",
+  "_id": "standard-format@1.3.6",
+  "_inCache": true,
   "_location": "/grunt-standard/standard-format",
-  "_phantomChildren": {},
+  "_nodeVersion": "0.10.26",
+  "_npmUser": {
+    "name": "jb55",
+    "email": "bill@casarin.me"
+  },
+  "_npmVersion": "2.7.5",
+  "_phantomChildren": {
+    "inflight": "1.0.6",
+    "inherits": "2.0.3",
+    "minimatch": "2.0.4",
+    "once": "1.4.0"
+  },
   "_requested": {
-    "type": "remote",
-    "raw": "standard-format@https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-    "name": "standard-format",
+    "raw": "standard-format@1.3.6",
+    "scope": null,
     "escapedName": "standard-format",
-    "rawSpec": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz"
+    "name": "standard-format",
+    "rawSpec": "1.3.6",
+    "spec": "1.3.6",
+    "type": "version"
   },
   "_requiredBy": [
     "/grunt-standard",
     "/grunt-standard/standard"
   ],
-  "_spec": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz",
+  "_shasum": "77bf29087cf15a037c84cb9c51972d9f974e8639",
+  "_shrinkwrap": null,
+  "_spec": "standard-format@1.3.6",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard",
   "author": {
     "name": "max ogden"
   },
@@ -48,6 +68,7 @@
     "minimist": "^1.1.0",
     "stdin": "0.0.1"
   },
+  "deprecated": "standard-format is deprecated in favor of a built-in autofixer in 'standard'. Usage: standard --fix",
   "description": "attempts to reformat javascript to comply with feross/standard style",
   "devDependencies": {
     "concat-stream": "^1.4.7",
     "tap-spec": "^2.2.2",
     "tape": "^3.5.0"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "77bf29087cf15a037c84cb9c51972d9f974e8639",
+    "tarball": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz"
+  },
+  "gitHead": "9585936542bb4ab092e6663e37f2b5ae75e5dece",
   "homepage": "https://github.com/maxogden/standard-format",
   "license": "BSD",
   "main": "index.js",
+  "maintainers": [
+    {
+      "name": "maxogden",
+      "email": "max+DONT+EMAIL+ME@maxogden.com"
+    },
+    {
+      "name": "jb55",
+      "email": "bill@casarin.me"
+    },
+    {
+      "name": "feross",
+      "email": "feross@feross.org"
+    },
+    {
+      "name": "bret",
+      "email": "bcomnes@gmail.com"
+    },
+    {
+      "name": "flet",
+      "email": "flettre@gmail.com"
+    }
+  ],
   "name": "standard-format",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git+https://github.com/maxogden/standard-format.git"
       "**test/failing/**"
     ]
   },
-  "version": "https://registry.npmjs.org/standard-format/-/standard-format-1.3.6.tgz"
+  "version": "1.3.6"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/LICENSE.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/LICENSE.md
deleted file mode 100644 (file)
index 5d98ad8..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-
-Copyright 2009–2013 Contributors. All rights reserved.
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-IN THE SOFTWARE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/README.md
deleted file mode 100644 (file)
index 9a42759..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-
-# ASAP
-
-This `asap` CommonJS package contains a single `asap` module that
-exports a single `asap` function that executes a function **as soon as
-possible**.
-
-```javascript
-asap(function () {
-    // ...
-});
-```
-
-More formally, ASAP provides a fast event queue that will execute tasks
-until it is empty before yielding to the JavaScript engine's underlying
-event-loop.  When the event queue becomes non-empty, ASAP schedules a
-flush event, preferring for that event to occur before the JavaScript
-engine has an opportunity to perform IO tasks or rendering, thus making
-the first task and subsequent tasks semantically indistinguishable.
-ASAP uses a variety of techniques to preserve this invariant on
-different versions of browsers and NodeJS.
-
-By design, ASAP can starve the event loop on the theory that, if there
-is enough work to be done synchronously, albeit in separate events, long
-enough to starve input or output, it is a strong indicator that the
-program needs to push back on scheduling more work.
-
-Take care.  ASAP can sustain infinite recursive calls indefinitely
-without warning.  This is behaviorally equivalent to an infinite loop.
-It will not halt from a stack overflow, but it *will* chew through
-memory (which is an oddity I cannot explain at this time).  Just as with
-infinite loops, you can monitor a Node process for this behavior with a
-heart-beat signal.  As with infinite loops, a very small amount of
-caution goes a long way to avoiding problems.
-
-```javascript
-function loop() {
-    asap(loop);
-}
-loop();
-```
-
-ASAP is distinct from `setImmediate` in that it does not suffer the
-overhead of returning a handle and being possible to cancel.  For a
-`setImmediate` shim, consider [setImmediate][].
-
-[setImmediate]: https://github.com/noblejs/setimmediate
-
-If a task throws an exception, it will not interrupt the flushing of
-high-priority tasks.  The exception will be postponed to a later,
-low-priority event to avoid slow-downs, when the underlying JavaScript
-engine will treat it as it does any unhandled exception.
-
-## Heritage
-
-ASAP has been factored out of the [Q][] asynchronous promise library.
-It originally had a naïve implementation in terms of `setTimeout`, but
-[Malte Ubl][NonBlocking] provided an insight that `postMessage` might be
-useful for creating a high-priority, no-delay event dispatch hack.
-Since then, Internet Explorer proposed and implemented `setImmediate`.
-Robert Kratić began contributing to Q by measuring the performance of
-the internal implementation of `asap`, paying particular attention to
-error recovery.  Domenic, Robert, and I collectively settled on the
-current strategy of unrolling the high-priority event queue internally
-regardless of what strategy we used to dispatch the potentially
-lower-priority flush event.  Domenic went on to make ASAP cooperate with
-NodeJS domains.
-
-[Q]: https://github.com/kriskowal/q
-[NonBlocking]: http://www.nonblocking.io/2011/06/windownexttick.html
-
-For further reading, Nicholas Zakas provided a thorough article on [The
-Case for setImmediate][NCZ].
-
-[NCZ]: http://www.nczonline.net/blog/2013/07/09/the-case-for-setimmediate/
-
-## License
-
-Copyright 2009-2013 by Contributors
-MIT License (enclosed)
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/asap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/asap.js
deleted file mode 100644 (file)
index 2f85516..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-
-// Use the fastest possible means to execute a task in a future turn
-// of the event loop.
-
-// linked list of tasks (single, with head node)
-var head = {task: void 0, next: null};
-var tail = head;
-var flushing = false;
-var requestFlush = void 0;
-var isNodeJS = false;
-
-function flush() {
-    /* jshint loopfunc: true */
-
-    while (head.next) {
-        head = head.next;
-        var task = head.task;
-        head.task = void 0;
-        var domain = head.domain;
-
-        if (domain) {
-            head.domain = void 0;
-            domain.enter();
-        }
-
-        try {
-            task();
-
-        } catch (e) {
-            if (isNodeJS) {
-                // In node, uncaught exceptions are considered fatal errors.
-                // Re-throw them synchronously to interrupt flushing!
-
-                // Ensure continuation if the uncaught exception is suppressed
-                // listening "uncaughtException" events (as domains does).
-                // Continue in next event to avoid tick recursion.
-                if (domain) {
-                    domain.exit();
-                }
-                setTimeout(flush, 0);
-                if (domain) {
-                    domain.enter();
-                }
-
-                throw e;
-
-            } else {
-                // In browsers, uncaught exceptions are not fatal.
-                // Re-throw them asynchronously to avoid slow-downs.
-                setTimeout(function() {
-                   throw e;
-                }, 0);
-            }
-        }
-
-        if (domain) {
-            domain.exit();
-        }
-    }
-
-    flushing = false;
-}
-
-if (typeof process !== "undefined" && process.nextTick) {
-    // Node.js before 0.9. Note that some fake-Node environments, like the
-    // Mocha test runner, introduce a `process` global without a `nextTick`.
-    isNodeJS = true;
-
-    requestFlush = function () {
-        process.nextTick(flush);
-    };
-
-} else if (typeof setImmediate === "function") {
-    // In IE10, Node.js 0.9+, or https://github.com/NobleJS/setImmediate
-    if (typeof window !== "undefined") {
-        requestFlush = setImmediate.bind(window, flush);
-    } else {
-        requestFlush = function () {
-            setImmediate(flush);
-        };
-    }
-
-} else if (typeof MessageChannel !== "undefined") {
-    // modern browsers
-    // http://www.nonblocking.io/2011/06/windownexttick.html
-    var channel = new MessageChannel();
-    channel.port1.onmessage = flush;
-    requestFlush = function () {
-        channel.port2.postMessage(0);
-    };
-
-} else {
-    // old browsers
-    requestFlush = function () {
-        setTimeout(flush, 0);
-    };
-}
-
-function asap(task) {
-    tail = tail.next = {
-        task: task,
-        domain: isNodeJS && process.domain,
-        next: null
-    };
-
-    if (!flushing) {
-        flushing = true;
-        requestFlush();
-    }
-};
-
-module.exports = asap;
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/asap/package.json
deleted file mode 100644 (file)
index 6ff4f89..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-{
-  "_args": [
-    [
-      "asap@https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "asap@https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-  "_id": "asap@https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sqRdpf36ILBJb8N2jMJ8EvqRan0=",
-  "_location": "/grunt-standard/standard/dezalgo/asap",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "asap@https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-    "name": "asap",
-    "escapedName": "asap",
-    "rawSpec": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/dezalgo"
-  ],
-  "_spec": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "description": "High-priority task queue for Node.js and browsers",
-  "keywords": [
-    "event",
-    "task",
-    "queue"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://github.com/kriskowal/asap/raw/master/LICENSE.md"
-    }
-  ],
-  "main": "asap",
-  "name": "asap",
-  "version": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/README.md
deleted file mode 100644 (file)
index 98eab25..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# wrappy
-
-Callback wrapping utility
-
-## USAGE
-
-```javascript
-var wrappy = require("wrappy")
-
-// var wrapper = wrappy(wrapperFunction)
-
-// make sure a cb is called only once
-// See also: http://npm.im/once for this specific use case
-var once = wrappy(function (cb) {
-  var called = false
-  return function () {
-    if (called) return
-    called = true
-    return cb.apply(this, arguments)
-  }
-})
-
-function printBoo () {
-  console.log('boo')
-}
-// has some rando property
-printBoo.iAmBooPrinter = true
-
-var onlyPrintOnce = once(printBoo)
-
-onlyPrintOnce() // prints 'boo'
-onlyPrintOnce() // does nothing
-
-// random property is retained!
-assert.equal(onlyPrintOnce.iAmBooPrinter, true)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/package.json
deleted file mode 100644 (file)
index 16851de..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_id": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HmWWmWXMvC20VIxrhKbyxa7dRzk=",
-  "_location": "/grunt-standard/standard/dezalgo/wrappy",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "name": "wrappy",
-    "escapedName": "wrappy",
-    "rawSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/dezalgo"
-  ],
-  "_spec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/wrappy/issues"
-  },
-  "dependencies": {},
-  "description": "Callback wrapping utility",
-  "devDependencies": {
-    "tap": "^0.4.12"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/wrappy",
-  "license": "ISC",
-  "main": "wrappy.js",
-  "name": "wrappy",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/wrappy.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/test/basic.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/test/basic.js
deleted file mode 100644 (file)
index 5ed0fcd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var test = require('tap').test
-var wrappy = require('../wrappy.js')
-
-test('basic', function (t) {
-  function onceifier (cb) {
-    var called = false
-    return function () {
-      if (called) return
-      called = true
-      return cb.apply(this, arguments)
-    }
-  }
-  onceifier.iAmOnce = {}
-  var once = wrappy(onceifier)
-  t.equal(once.iAmOnce, onceifier.iAmOnce)
-
-  var called = 0
-  function boo () {
-    t.equal(called, 0)
-    called++
-  }
-  // has some rando property
-  boo.iAmBoo = true
-
-  var onlyPrintOnce = once(boo)
-
-  onlyPrintOnce() // prints 'boo'
-  onlyPrintOnce() // does nothing
-  t.equal(called, 1)
-
-  // random property is retained!
-  t.equal(onlyPrintOnce.iAmBoo, true)
-
-  var logs = []
-  var logwrap = wrappy(function (msg, cb) {
-    logs.push(msg + ' wrapping cb')
-    return function () {
-      logs.push(msg + ' before cb')
-      var ret = cb.apply(this, arguments)
-      logs.push(msg + ' after cb')
-    }
-  })
-
-  var c = logwrap('foo', function () {
-    t.same(logs, [ 'foo wrapping cb', 'foo before cb' ])
-  })
-  c()
-  t.same(logs, [ 'foo wrapping cb', 'foo before cb', 'foo after cb' ])
-
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/wrappy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/node_modules/wrappy/wrappy.js
deleted file mode 100644 (file)
index bb7e7d6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
-  if (fn && cb) return wrappy(fn)(cb)
-
-  if (typeof fn !== 'function')
-    throw new TypeError('need wrapper function')
-
-  Object.keys(fn).forEach(function (k) {
-    wrapper[k] = fn[k]
-  })
-
-  return wrapper
-
-  function wrapper() {
-    var args = new Array(arguments.length)
-    for (var i = 0; i < args.length; i++) {
-      args[i] = arguments[i]
-    }
-    var ret = fn.apply(this, args)
-    var cb = args[args.length-1]
-    if (typeof ret === 'function' && ret !== cb) {
-      Object.keys(cb).forEach(function (k) {
-        ret[k] = cb[k]
-      })
-    }
-    return ret
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/dezalgo/package.json
deleted file mode 100644 (file)
index b46817d..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-{
-  "_args": [
-    [
-      "dezalgo@https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "dezalgo@https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-  "_id": "dezalgo@https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Er3hNQYIB5ANWnrrtgfCq7fHaTc=",
-  "_location": "/grunt-standard/standard/dezalgo",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "dezalgo@https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-    "name": "dezalgo",
-    "escapedName": "dezalgo",
-    "rawSpec": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard",
-    "/grunt-standard/standard/run-parallel"
-  ],
-  "_spec": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/dezalgo/issues"
-  },
-  "dependencies": {
-    "asap": "^1.0.0",
-    "wrappy": "1"
-  },
-  "description": "Contain async insanity so that the dark pony lord doesn't eat souls",
-  "devDependencies": {
-    "tap": "^0.4.11"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/dezalgo",
-  "keywords": [
-    "async",
-    "zalgo",
-    "the dark pony",
-    "he comes",
-    "asynchrony of all holy and good",
-    "T̯̪ͅo̯͖̹ ̻̮̖̲͢i̥̖n̢͈͇̝͍v͏͉ok̭̬̝ͅe̞͍̩̫͍̩͝ ̩̮̖̟͇͉́t͔͔͎̗h͏̗̟e̘͉̰̦̠̞͓ ͕h͉̟͎̪̠̱͠ḭ̮̩v̺͉͇̩e̵͖-̺̪m͍i̜n̪̲̲̲̮d̷ ̢r̠̼̯̹̦̦͘ͅe͓̳͓̙p̺̗̫͙͘ͅr͔̰͜e̴͓̞s͉̩̩͟ͅe͏̣n͚͇̗̭̺͍tì͙̣n͏̖̥̗͎̰̪g̞͓̭̱̯̫̕ ̣̱͜ͅc̦̰̰̠̮͎͙̀hao̺̜̻͍͙ͅs͉͓̘.͎̼̺̼͕̹͘",
-    "̠̞̱̰I͖͇̝̻n̦̰͍̰̟v̤̺̫̳̭̼̗͘ò̹̟̩̩͚k̢̥̠͍͉̦̬i̖͓͔̮̱̻͘n̶̳͙̫͎g̖̯̣̲̪͉ ̞͎̗͕͚ͅt̲͕̘̺̯̗̦h̘̦̲̜̻e̳͎͉̬͙ ̴̞̪̲̥f̜̯͓͓̭̭͢e̱̘͔̮e̜̤l̺̱͖̯͓͙͈͢i̵̦̬͉͔̫͚͕n͉g̨͖̙̙̹̹̟̤ ͉̪o̞̠͍̪̰͙ͅf̬̲̺ ͔͕̲͕͕̲̕c̙͉h̝͔̩̙̕ͅa̲͖̻̗̹o̥̼̫s̝̖̜̝͚̫̟.̺͚  ̸̱̲W̶̥̣͖̦i͏̤̬̱̳̣ͅt͉h̗̪̪ ̷̱͚̹̪ǫ͕̗̣̳̦͎u̼̦͔̥̮̕ţ͖͎̻͔͉ ̴͎̩òr̹̰̖͉͈͝d̷̲̦̖͓e̲͓̠r",
-    "̧͚̜͓̰̭̭Ṯ̫̹̜̮̟̮͝h͚̘̩̘̖̰́e ̥̘͓͉͔͙̼N̟̜̣̘͔̪e̞̞̤͢z̰̖̘͇p̠͟e̺̱̣͍͙̝ṛ̘̬͔̙͇̠d͝ḭ̯̱̥̗̩a̛ͅn͏̦ ̷̥hi̥v̖̳̹͉̮̱͝e̹̪̘̖̰̟-̴͙͓͚̜̻mi̗̺̻͙̺ͅn̪̯͈d ͏̘͓̫̳ͅơ̹͔̳̖̣͓f͈̹̘ ͕ͅc̗̤̠̜̮̥̥h̡͍̩̭̫͚̱a̤͉̤͔͜os͕̤̼͍̲̀ͅ.̡̱ ̦Za̯̱̗̭͍̣͚l̗͉̰̤g͏̣̭̬̗̲͖ͅo̶̭̩̳̟͈.̪̦̰̳",
-    "H̴̱̦̗̬̣͓̺e̮ ͉̠̰̞͎̖͟ẁh̛̺̯ͅo̖̫͡ ̢Ẁa̡̗i̸t͖̣͉̀ş͔̯̩ ̤̦̮͇̞̦̲B͎̭͇̦̼e̢hin͏͙̟̪d̴̰͓̻̣̮͕ͅ T͖̮̕h͖e̘̺̰̙͘ ̥Ẁ̦͔̻͚a̞͖̪͉l̪̠̻̰̣̠l̲͎͞",
-    "Z̘͍̼͎̣͔͝Ą̲̜̱̱̹̤͇L̶̝̰̭͔G͍̖͍O̫͜ͅ!̼̤ͅ",
-    "H̝̪̜͓̀̌̂̒E̢̙̠̣ ̴̳͇̥̟̠͍̐C̹̓̑̐̆͝Ó̶̭͓̚M̬̼Ĕ̖̤͔͔̟̹̽̿̊ͥ̍ͫS̻̰̦̻̖̘̱̒ͪ͌̅͟"
-  ],
-  "license": "ISC",
-  "main": "dezalgo.js",
-  "name": "dezalgo",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/dezalgo.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/History.md
deleted file mode 100755 (executable)
index 46800c5..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-2.1.1 / 2015-04-17
-==================
-
-* add support for classes static properties ([#43][])
-* add tests for the babel-eslint parser
-* add ESLint as peerDependency (@AlexKVal)
-* documentation improvements (@AlexKVal, @chriscalo)
-
-[#43]: https://github.com/yannickcr/eslint-plugin-react/issues/43
-
-2.1.0 / 2015-04-06
-==================
-
-* update jsx-sort-props to reset the alphabetical verification on spread ([#47][] @zertosh)
-* update jsx-uses-vars to be enabled by default ([#49][] @banderson)
-* add jsx-boolean-value rule ([#11][])
-* add support for static methods in display-name and prop-types ([#48][])
-* fix describing comment for hasSpreadOperator() method ([#53][] @AlexKVal)
-
-[#47]: https://github.com/yannickcr/eslint-plugin-react/pull/47
-[#49]: https://github.com/yannickcr/eslint-plugin-react/pull/49
-[#11]: https://github.com/yannickcr/eslint-plugin-react/issues/11
-[#48]: https://github.com/yannickcr/eslint-plugin-react/issues/48
-[#53]: https://github.com/yannickcr/eslint-plugin-react/pull/53
-
-2.0.2 / 2015-03-31
-==================
-
-* fix ignore rest spread when destructuring props ([#46][])
-* fix component detection in prop-types and display-name ([#45][])
-* fix spread handling in jsx-sort-props ([#42][] @zertosh)
-
-[#46]: https://github.com/yannickcr/eslint-plugin-react/issues/46
-[#45]: https://github.com/yannickcr/eslint-plugin-react/issues/45
-[#42]: https://github.com/yannickcr/eslint-plugin-react/pull/42
-
-2.0.1 / 2015-03-30
-==================
-* fix props detection when used in an object ([#41][])
-
-[#41]: https://github.com/yannickcr/eslint-plugin-react/issues/41
-
-2.0.0 / 2015-03-29
-==================
-* update dependencies
-* add jsx-sort-props rule ([#16][])
-* add no-unknown-property rule ([#28][])
-* add ignore option to prop-types rule
-* breaking in prop-types the children prop is no longer ignored
-* fix components are now detected when using ES6 classes ([#24][])
-* fix prop-types now return the right line/column ([#33][])
-* fix props are now detected when destructuring ([#27][])
-* fix only check for computed property names in prop-types ([#36][] @burnnat)
-
-[#16]: https://github.com/yannickcr/eslint-plugin-react/issues/16
-[#28]: https://github.com/yannickcr/eslint-plugin-react/issues/28
-[#24]: https://github.com/yannickcr/eslint-plugin-react/issues/24
-[#33]: https://github.com/yannickcr/eslint-plugin-react/issues/33
-[#27]: https://github.com/yannickcr/eslint-plugin-react/issues/27
-[#36]: https://github.com/yannickcr/eslint-plugin-react/pull/36
-
-
-1.6.1 / 2015-03-25
-==================
-* update jsx-quotes documentation
-* fix jsx-no-undef with babel-eslint ([#30][])
-* fix jsx-quotes on Literal childs ([#29][])
-
-[#30]: https://github.com/yannickcr/eslint-plugin-react/issues/30
-[#29]: https://github.com/yannickcr/eslint-plugin-react/issues/29
-
-1.6.0 / 2015-03-22
-==================
-* update dependencies
-* add jsx-no-undef rule
-* add jsx-quotes rule ([#12][]) 
-* add @jsx pragma support ([#23][])
-* fix react-in-jsx-scope in Node.js env
-* fix usage of propTypes with an external object ([#9][])
-* allow this.getState references (not calls) in lifecycle methods ([#22][] @benmosher)
-
-[#12]: https://github.com/yannickcr/eslint-plugin-react/issues/12
-[#23]: https://github.com/yannickcr/eslint-plugin-react/issues/23
-[#9]: https://github.com/yannickcr/eslint-plugin-react/issues/9
-[#22]: https://github.com/yannickcr/eslint-plugin-react/pull/22
-
-1.5.0 / 2015-03-14
-==================
-* add jsx-uses-vars rule
-* fix jsx-uses-react for ESLint 0.17.0
-
-1.4.1 / 2015-03-03
-==================
-* fix this.props.children marked as missing in props validation ([#7][])
-* fix usage of this.props without property ([#8][])
-
-[#7]: https://github.com/yannickcr/eslint-plugin-react/issues/7
-[#8]: https://github.com/yannickcr/eslint-plugin-react/issues/8
-
-1.4.0 / 2015-02-24
-==================
-* update prop-types to check props usage insead of propTypes presence ([#4][])
-* add react-in-jsx-scope rule ([#5][] @glenjamin)
-* add jsx-uses-react rule ([#6][] @glenjamin)
-
-[#4]: https://github.com/yannickcr/eslint-plugin-react/issues/4
-[#5]: https://github.com/yannickcr/eslint-plugin-react/pull/5
-[#6]: https://github.com/yannickcr/eslint-plugin-react/pull/6
-
-1.3.0 / 2015-02-24
-==================
-* update dependencies
-* add no-did-mount-set-state rule
-* add no-did-update-set-state rule
-
-1.2.2 / 2015-02-09
-==================
-* update dependencies
-* fix childs detection in self-closing-comp ([#3][])
-
-[#3]: https://github.com/yannickcr/eslint-plugin-react/issues/3
-
-1.2.1 / 2015-01-29
-==================
-* update Readme
-* update dependencies
-* update wrap-multilines and self-closing-comp rules for ESLint 0.13.0
-
-1.2.0 / 2014-12-29
-==================
-* add self-closing-comp rule
-* fix display-name and prop-types rules
-
-1.1.0 / 2014-12-28
-==================
- * add display-name rule
- * add wrap-multilines rule
- * add rules documentation
- * add rules tests
-
-1.0.0 / 2014-12-16
-==================
- * first revision
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/README.md
deleted file mode 100755 (executable)
index 667d044..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-ESLint-plugin-React
-===================
-
-[![Maintenance Status][status-image]][status-url] [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][deps-image]][deps-url] [![Coverage Status][coverage-image]][coverage-url] [![Code Climate][climate-image]][climate-url]
-
-React specific linting rules for ESLint
-
-# Installation
-
-Install [ESLint](https://www.github.com/eslint/eslint) either locally or globally.
-
-    npm install eslint
-
-If you installed `ESLint` globally, you have to install React plugin globally too. Otherwise, install it locally.
-
-    $ npm install eslint-plugin-react
-
-# Configuration
-
-Add `plugins` section and specify ESLint-plugin-React as a plugin.
-
-```json
-{
-  "plugins": [
-    "react"
-  ]
-}
-```
-
-If it is not already the case you must also configure `ESLint` to support JSX.
-
-```json
-{
-  "ecmaFeatures": {
-    "jsx": true
-  }
-}
-```
-
-Finally, enable all of the rules that you would like to use.
-
-```json
-{
-  "rules": {
-    "react/display-name": 1,
-    "react/jsx-boolean-value": 1,
-    "react/jsx-quotes": 1,
-    "react/jsx-no-undef": 1,
-    "react/jsx-sort-props": 1,
-    "react/jsx-uses-react": 1,
-    "react/jsx-uses-vars": 1,
-    "react/no-did-mount-set-state": 1,
-    "react/no-did-update-set-state": 1,
-    "react/no-multi-comp": 1,
-    "react/no-unknown-property": 1,
-    "react/prop-types": 1,
-    "react/react-in-jsx-scope": 1,
-    "react/self-closing-comp": 1,
-    "react/wrap-multilines": 1
-  }
-}
-```
-
-# List of supported rules
-
-* [display-name](docs/rules/display-name.md): Prevent missing displayName in a React component definition
-* [jsx-boolean-value](docs/rules/jsx-boolean-value.md): Enforce boolean attributes notation in JSX
-* [jsx-quotes](docs/rules/jsx-quotes.md): Enforce quote style for JSX attributes
-* [jsx-no-undef](docs/rules/jsx-no-undef.md): Disallow undeclared variables in JSX
-* [jsx-sort-props](docs/rules/jsx-sort-props.md): Enforce props alphabetical sorting
-* [jsx-uses-react](docs/rules/jsx-uses-react.md): Prevent React to be incorrectly marked as unused
-* [jsx-uses-vars](docs/rules/jsx-uses-vars.md): Prevent variables used in JSX to be incorrectly marked as unused
-* [no-did-mount-set-state](docs/rules/no-did-mount-set-state.md): Prevent usage of setState in componentDidMount
-* [no-did-update-set-state](docs/rules/no-did-update-set-state.md): Prevent usage of setState in componentDidUpdate
-* [no-multi-comp](docs/rules/no-multi-comp.md): Prevent multiple component definition per file
-* [no-unknown-property](docs/rules/no-unknown-property.md): Prevent usage of unknown DOM property
-* [prop-types](docs/rules/prop-types.md): Prevent missing props validation in a React component definition
-* [react-in-jsx-scope](docs/rules/react-in-jsx-scope.md): Prevent missing React when using JSX
-* [self-closing-comp](docs/rules/self-closing-comp.md): Prevent extra closing tags for components without children
-* [wrap-multilines](docs/rules/wrap-multilines.md): Prevent missing parentheses around multilines JSX
-
-## To Do
-
-* no-deprecated: Prevent usage of deprecated methods ([React 0.12 Updated API](http://facebook.github.io/react/blog/2014/10/28/react-v0.12.html#new-terminology-amp-updated-apis))
-* no-classic: Prevent usage of "classic" methods ([#2700](https://github.com/facebook/react/pull/2700))
-* [Implement relevant rules from David Chang's React Style Guide](https://reactjsnews.com/react-style-guide-patterns-i-like)
-* [Implement relevant rules from John Cobb's best practices and conventions](http://web-design-weekly.com/2015/01/29/opinionated-guide-react-js-best-practices-conventions/)
-* [Implement relevant rules from Alexander Early's tips and best practices](http://aeflash.com/2015-02/react-tips-and-best-practices.html)
-
-[Any rule idea is welcome !](https://github.com/yannickcr/eslint-plugin-react/issues)
-
-# License
-
-ESLint-plugin-React is licensed under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
-
-
-[npm-url]: https://npmjs.org/package/eslint-plugin-react
-[npm-image]: http://img.shields.io/npm/v/eslint-plugin-react.svg?style=flat-square
-
-[travis-url]: https://travis-ci.org/yannickcr/eslint-plugin-react
-[travis-image]: http://img.shields.io/travis/yannickcr/eslint-plugin-react/master.svg?style=flat-square
-
-[deps-url]: https://david-dm.org/yannickcr/eslint-plugin-react
-[deps-image]: https://img.shields.io/david/dev/yannickcr/eslint-plugin-react.svg?style=flat-square
-
-[coverage-url]: https://coveralls.io/r/yannickcr/eslint-plugin-react?branch=master
-[coverage-image]: http://img.shields.io/coveralls/yannickcr/eslint-plugin-react/master.svg?style=flat-square
-
-[climate-url]: https://codeclimate.com/github/yannickcr/eslint-plugin-react
-[climate-image]: http://img.shields.io/codeclimate/github/yannickcr/eslint-plugin-react.svg?style=flat-square
-
-[status-url]: https://github.com/yannickcr/eslint-plugin-react/pulse
-[status-image]: http://img.shields.io/badge/status-maintained-brightgreen.svg?style=flat-square
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/index.js
deleted file mode 100755 (executable)
index e31712f..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-'use strict';
-
-module.exports = {
-  rules: {
-    'jsx-uses-react': require('./lib/rules/jsx-uses-react'),
-    'no-multi-comp': require('./lib/rules/no-multi-comp'),
-    'prop-types': require('./lib/rules/prop-types'),
-    'display-name': require('./lib/rules/display-name'),
-    'wrap-multilines': require('./lib/rules/wrap-multilines'),
-    'self-closing-comp': require('./lib/rules/self-closing-comp'),
-    'no-did-mount-set-state': require('./lib/rules/no-did-mount-set-state'),
-    'no-did-update-set-state': require('./lib/rules/no-did-update-set-state'),
-    'react-in-jsx-scope': require('./lib/rules/react-in-jsx-scope'),
-    'jsx-uses-vars': require('./lib/rules/jsx-uses-vars'),
-    'jsx-no-undef': require('./lib/rules/jsx-no-undef'),
-    'jsx-quotes': require('./lib/rules/jsx-quotes'),
-    'no-unknown-property': require('./lib/rules/no-unknown-property'),
-    'jsx-sort-props': require('./lib/rules/jsx-sort-props'),
-    'jsx-boolean-value': require('./lib/rules/jsx-boolean-value')
-  },
-  rulesConfig: {
-    'jsx-uses-react': 0,
-    'no-multi-comp': 0,
-    'prop-types': 0,
-    'display-name': 0,
-    'wrap-multilines': 0,
-    'self-closing-comp': 0,
-    'no-did-mount-set-state': 0,
-    'no-did-update-set-state': 0,
-    'react-in-jsx-scope': 0,
-    'jsx-uses-vars': 1,
-    'jsx-no-undef': 0,
-    'jsx-quotes': 0,
-    'no-unknown-property': 0,
-    'jsx-sort-props': 0,
-    'jsx-boolean-value': 0
-  }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/display-name.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/display-name.js
deleted file mode 100755 (executable)
index 811e7ea..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-/**
- * @fileoverview Prevent missing displayName in a React component definition
- * @author Yannick Croissant
- */
-'use strict';
-
-var componentUtil = require('../util/component');
-var ComponentList = componentUtil.List;
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var componentList = new ComponentList();
-
-  var MISSING_MESSAGE = 'Component definition is missing display name';
-  var MISSING_MESSAGE_NAMED_COMP = '{{component}} component definition is missing display name';
-
-  /**
-   * Checks if the component must be validated
-   * @param {Object} component The component to process
-   * @returns {Boolean} True if the component must be validated, false if not.
-   */
-  function mustBeValidated(component) {
-    return (
-      component &&
-      component.isReactComponent &&
-      !component.hasDisplayName
-    );
-  }
-
-  /**
-   * Checks if we are declaring a display name
-   * @param {ASTNode} node The AST node being checked.
-   * @returns {Boolean} True if we are declaring a display name, false if not.
-   */
-  function isDisplayNameDeclaration(node) {
-
-    // Special case for class properties
-    // (babel-eslint does not expose property name so we have to rely on tokens)
-    if (node.type === 'ClassProperty') {
-      var tokens = context.getFirstTokens(node, 2);
-      if (tokens[0].value === 'displayName' || tokens[1].value === 'displayName') {
-        return true;
-      }
-      return false;
-    }
-
-    return Boolean(
-      node &&
-      node.name === 'displayName'
-    );
-  }
-
-  /**
-   * Mark a prop type as declared
-   * @param {ASTNode} node The AST node being checked.
-   */
-  function markDisplayNameAsDeclared(node) {
-    componentList.set(context, node, {
-      hasDisplayName: true
-    });
-  }
-
-  /**
-   * Reports missing display name for a given component
-   * @param {Object} component The component to process
-   */
-  function reportMissingDisplayName(component) {
-    context.report(
-      component.node,
-      component.name === componentUtil.DEFAULT_COMPONENT_NAME ? MISSING_MESSAGE : MISSING_MESSAGE_NAMED_COMP, {
-        component: component.name
-      }
-    );
-  }
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    ClassProperty: function(node) {
-      if (!isDisplayNameDeclaration(node)) {
-        return;
-      }
-
-      markDisplayNameAsDeclared(node);
-    },
-
-    MemberExpression: function(node) {
-      if (!isDisplayNameDeclaration(node.property)) {
-        return;
-      }
-      var component = componentList.getByName(node.object.name);
-      if (!component) {
-        return;
-      }
-      markDisplayNameAsDeclared(component.node);
-    },
-
-    MethodDefinition: function(node) {
-      if (!isDisplayNameDeclaration(node.key)) {
-        return;
-      }
-      markDisplayNameAsDeclared(node);
-    },
-
-    ObjectExpression: function(node) {
-      // Search for the displayName declaration
-      node.properties.forEach(function(property) {
-        if (!isDisplayNameDeclaration(property.key)) {
-          return;
-        }
-        markDisplayNameAsDeclared(node);
-      });
-    },
-
-    'Program:exit': function() {
-      var list = componentList.getList();
-      // Report missing display name for all classes
-      for (var component in list) {
-        if (!list.hasOwnProperty(component) || !mustBeValidated(list[component])) {
-          continue;
-        }
-        reportMissingDisplayName(list[component]);
-      }
-    },
-
-    ReturnStatement: function(node) {
-      if (!componentUtil.isReactComponent(context, node)) {
-        return;
-      }
-      componentList.set(context, node, {
-        isReactComponent: true
-      });
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js
deleted file mode 100755 (executable)
index acf12ea..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * @fileoverview Enforce boolean attributes notation in JSX
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var configuration = context.options[0] || {};
-
-  var NEVER_MESSAGE = 'Value must be omitted for boolean attributes';
-  var ALWAYS_MESSAGE = 'Value must be set for boolean attributes';
-
-  return {
-    JSXAttribute: function(node) {
-      switch (configuration) {
-        case 'always':
-          if (node.value === null) {
-            context.report(node, ALWAYS_MESSAGE);
-          }
-          break;
-        case 'never':
-          if (node.value && node.value.type === 'JSXExpressionContainer' && node.value.expression.value === true) {
-            context.report(node, NEVER_MESSAGE);
-          }
-          break;
-        default:
-          break;
-      }
-    }
-  };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js
deleted file mode 100755 (executable)
index 8a43f83..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- * @fileoverview Disallow undeclared variables in JSX
- * @author Yannick Croissant
- */
-
-'use strict';
-
-/**
- * Checks if a node name match the JSX tag convention.
- * @param {String} name - Name of the node to check.
- * @returns {boolean} Whether or not the node name match the JSX tag convention.
- */
-var tagConvention = /^[a-z]|\-/;
-function isTagName(name) {
-  return tagConvention.test(name);
-}
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  /**
-   * Compare an identifier with the variables declared in the scope
-   * @param {ASTNode} node - Identifier or JSXIdentifier node
-   * @returns {void}
-   */
-  function checkIdentifierInJSX(node) {
-    var scope = context.getScope();
-    var variables = scope.variables;
-    var i;
-    var len;
-
-    while (scope.type !== 'global') {
-      scope = scope.upper;
-      variables = scope.variables.concat(variables);
-    }
-    if (scope.childScopes.length) {
-      variables = scope.childScopes[0].variables.concat(variables);
-      // Temporary fix for babel-eslint
-      if (scope.childScopes[0].childScopes.length) {
-        variables = scope.childScopes[0].childScopes[0].variables.concat(variables);
-      }
-    }
-
-    for (i = 0, len = variables.length; i < len; i++) {
-      if (variables[i].name === node.name) {
-        return;
-      }
-    }
-
-    context.report(node, '\'' + node.name + '\' is not defined.');
-  }
-
-  return {
-        JSXOpeningElement: function(node) {
-          if (isTagName(node.name.name)) {
-            return;
-          }
-          checkIdentifierInJSX(node.name);
-        }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-quotes.js
deleted file mode 100755 (executable)
index df193d4..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * @fileoverview Enforce props quotes style
- * @author Matt DuVall <http://www.mattduvall.com/>, Brandon Payton, Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Constants
-// ------------------------------------------------------------------------------
-
-var QUOTE_SETTINGS = {
-  double: {
-    quote: '"',
-    alternateQuote: '\'',
-    description: 'doublequote'
-  },
-  single: {
-    quote: '\'',
-    alternateQuote: '"',
-    description: 'singlequote'
-  }
-};
-
-var AVOID_ESCAPE = 'avoid-escape';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  /**
-   * Validate that a string passed in is surrounded by the specified character
-   * @param  {string} val The text to check.
-   * @param  {string} character The character to see if it's surrounded by.
-   * @returns {boolean} True if the text is surrounded by the character, false if not.
-   * @private
-   */
-  function isSurroundedBy(val, character) {
-    return val[0] === character && val[val.length - 1] === character;
-  }
-
-  return {
-
-    Literal: function(node) {
-      if (node.parent.type !== 'JSXAttribute') {
-        return;
-      }
-      var val = node.value;
-      var rawVal = node.raw;
-      var quoteOption = context.options[0];
-      var settings = QUOTE_SETTINGS[quoteOption];
-      var avoidEscape = context.options[1] === AVOID_ESCAPE;
-      var isValid;
-
-      if (settings && typeof val === 'string') {
-        isValid = isSurroundedBy(rawVal, settings.quote);
-
-        if (!isValid && avoidEscape) {
-          isValid = isSurroundedBy(rawVal, settings.alternateQuote) && rawVal.indexOf(settings.quote) >= 0;
-        }
-
-        if (!isValid) {
-          context.report(node, 'JSX attributes must use ' + settings.description + '.');
-        }
-      }
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js
deleted file mode 100755 (executable)
index bcf1b68..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * @fileoverview Enforce props alphabetical sorting
- * @author Ilya Volodin, Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var configuration = context.options[0] || {};
-  var ignoreCase = configuration.ignoreCase || false;
-
-  return {
-    JSXOpeningElement: function(node) {
-      node.attributes.reduce(function(memo, decl, idx, attrs) {
-        if (decl.type === 'JSXSpreadAttribute') {
-          return attrs[idx + 1];
-        }
-
-        var lastPropName = memo.name.name;
-        var currenPropName = decl.name.name;
-
-        if (ignoreCase) {
-          lastPropName = lastPropName.toLowerCase();
-          currenPropName = currenPropName.toLowerCase();
-        }
-
-        if (currenPropName < lastPropName) {
-          context.report(decl, 'Props should be sorted alphabetically');
-          return memo;
-        }
-
-        return decl;
-      }, node.attributes[0]);
-    }
-  };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js
deleted file mode 100755 (executable)
index d4fe531..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * @fileoverview Prevent React to be marked as unused
- * @author Glen Mailer
- */
-'use strict';
-
-var variableUtil = require('../util/variable');
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/;
-
-module.exports = function(context) {
-
-  var id = 'React';
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    JSXOpeningElement: function() {
-      variableUtil.markVariableAsUsed(context, id);
-    },
-
-    BlockComment: function(node) {
-      var matches = JSX_ANNOTATION_REGEX.exec(node.value);
-      if (!matches) {
-        return;
-      }
-      id = matches[1].split('.')[0];
-    }
-
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js
deleted file mode 100755 (executable)
index 174f64c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * @fileoverview Prevent variables used in JSX to be marked as unused
- * @author Yannick Croissant
- */
-'use strict';
-
-var variableUtil = require('../util/variable');
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  return {
-    JSXExpressionContainer: function(node) {
-      if (node.expression.type !== 'Identifier') {
-        return;
-      }
-      variableUtil.markVariableAsUsed(context, node.expression.name);
-    },
-
-    JSXIdentifier: function(node) {
-      variableUtil.markVariableAsUsed(context, node.name);
-    }
-
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js
deleted file mode 100644 (file)
index dae3d94..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * @fileoverview Prevent usage of setState in componentDidMount
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    CallExpression: function(node) {
-      var callee = node.callee;
-      if (callee.type !== 'MemberExpression') {
-        return;
-      }
-      if (callee.object.type !== 'ThisExpression' || callee.property.name !== 'setState') {
-        return;
-      }
-      var ancestors = context.getAncestors(callee);
-      for (var i = 0, j = ancestors.length; i < j; i++) {
-        if (ancestors[i].type !== 'Property' || ancestors[i].key.name !== 'componentDidMount') {
-          continue;
-        }
-        context.report(callee, 'Do not use setState in componentDidMount');
-      }
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js
deleted file mode 100644 (file)
index 21696ed..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * @fileoverview Prevent usage of setState in componentDidUpdate
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    CallExpression: function(node) {
-      var callee = node.callee;
-      if (callee.type !== 'MemberExpression') {
-        return;
-      }
-      if (callee.object.type !== 'ThisExpression' || callee.property.name !== 'setState') {
-        return;
-      }
-      var ancestors = context.getAncestors(callee);
-      for (var i = 0, j = ancestors.length; i < j; i++) {
-        if (ancestors[i].type !== 'Property' || ancestors[i].key.name !== 'componentDidUpdate') {
-          continue;
-        }
-        context.report(callee, 'Do not use setState in componentDidUpdate');
-      }
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js
deleted file mode 100644 (file)
index c7dced8..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * @fileoverview Prevent multiple component definition per file
- * @author Yannick Croissant
- */
-'use strict';
-
-var componentUtil = require('../util/component');
-var ComponentList = componentUtil.List;
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var componentList = new ComponentList();
-
-  var MULTI_COMP_MESSAGE = 'Declare only one React component per file';
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-    'Program:exit': function() {
-      if (componentList.count() <= 1) {
-        return;
-      }
-
-      var list = componentList.getList();
-      var i = 0;
-
-      for (var component in list) {
-        if (!list.hasOwnProperty(component) || ++i === 1) {
-          continue;
-        }
-        context.report(list[component].node, MULTI_COMP_MESSAGE);
-      }
-    },
-
-    ReturnStatement: function(node) {
-      if (!componentUtil.isReactComponent(context, node)) {
-        return;
-      }
-      componentList.set(context, node);
-    }
-  };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js
deleted file mode 100755 (executable)
index ab7526d..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- * @fileoverview Prevent usage of unknown DOM property
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Constants
-// ------------------------------------------------------------------------------
-
-var UNKNOWN_MESSAGE = 'Unknown property \'{{name}}\' found, use \'{{standardName}}\' instead';
-
-var DOM_ATTRIBUTE_NAMES = {
-  'accept-charset': 'acceptCharset',
-  class: 'className',
-  for: 'htmlFor',
-  'http-equiv': 'httpEquiv'
-};
-
-var DOM_PROPERTY_NAMES = [
-  'acceptCharset', 'accessKey', 'allowFullScreen', 'allowTransparency', 'autoComplete', 'autoFocus', 'autoPlay',
-  'cellPadding', 'cellSpacing', 'charSet', 'classID', 'className', 'colSpan', 'contentEditable', 'contextMenu',
-  'crossOrigin', 'dateTime', 'encType', 'formAction', 'formEncType', 'formMethod', 'formNoValidate', 'formTarget',
-  'frameBorder', 'hrefLang', 'htmlFor', 'httpEquiv', 'marginHeight', 'marginWidth', 'maxLength', 'mediaGroup',
-  'noValidate', 'radioGroup', 'readOnly', 'rowSpan', 'spellCheck', 'srcDoc', 'srcSet', 'tabIndex', 'useMap',
-  'itemProp', 'itemScope', 'itemType', 'itemRef', 'itemId'
-];
-
-// ------------------------------------------------------------------------------
-// Helpers
-// ------------------------------------------------------------------------------
-
-/**
- * Checks if a node name match the JSX tag convention.
- * @param {String} name - Name of the node to check.
- * @returns {boolean} Whether or not the node name match the JSX tag convention.
- */
-var tagConvention = /^[a-z]|\-/;
-function isTagName(name) {
-  return tagConvention.test(name);
-}
-
-/**
- * Get the standard name of the attribute.
- * @param {String} name - Name of the attribute.
- * @returns {String} The standard name of the attribute.
- */
-function getStandardName(name) {
-  if (DOM_ATTRIBUTE_NAMES[name]) {
-    return DOM_ATTRIBUTE_NAMES[name];
-  }
-  var i;
-  var found = DOM_PROPERTY_NAMES.some(function(element, index) {
-    i = index;
-    return element.toLowerCase() === name;
-  });
-  return found ? DOM_PROPERTY_NAMES[i] : null;
-}
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  return {
-
-    JSXAttribute: function(node) {
-      var standardName = getStandardName(node.name.name);
-      if (!isTagName(node.parent.name.name) || !standardName) {
-        return;
-      }
-      context.report(node, UNKNOWN_MESSAGE, {
-        name: node.name.name,
-        standardName: standardName
-      });
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/prop-types.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/prop-types.js
deleted file mode 100755 (executable)
index b397f79..0000000
+++ /dev/null
@@ -1,291 +0,0 @@
-/**
- * @fileoverview Prevent missing props validation in a React component definition
- * @author Yannick Croissant
- */
-'use strict';
-
-// As for exceptions for props.children or props.className (and alike) look at
-// https://github.com/yannickcr/eslint-plugin-react/issues/7
-
-var componentUtil = require('../util/component');
-var ComponentList = componentUtil.List;
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var configuration = context.options[0] || {};
-  var ignored = configuration.ignore || [];
-
-  var componentList = new ComponentList();
-
-  var MISSING_MESSAGE = '\'{{name}}\' is missing in props validation';
-  var MISSING_MESSAGE_NAMED_COMP = '\'{{name}}\' is missing in props validation for {{component}}';
-
-  /**
-   * Checks if we are using a prop
-   * @param {ASTNode} node The AST node being checked.
-   * @returns {Boolean} True if we are using a prop, false if not.
-   */
-  function isPropTypesUsage(node) {
-    return Boolean(
-      node.object.type === 'ThisExpression' &&
-      node.property.name === 'props'
-    );
-  }
-
-  /**
-   * Checks if we are declaring a prop
-   * @param {ASTNode} node The AST node being checked.
-   * @returns {Boolean} True if we are declaring a prop, false if not.
-   */
-  function isPropTypesDeclaration(node) {
-
-    // Special case for class properties
-    // (babel-eslint does not expose property name so we have to rely on tokens)
-    if (node.type === 'ClassProperty') {
-      var tokens = context.getFirstTokens(node, 2);
-      if (tokens[0].value === 'propTypes' || tokens[1].value === 'propTypes') {
-        return true;
-      }
-      return false;
-    }
-
-    return Boolean(
-      node &&
-      node.name === 'propTypes'
-    );
-
-  }
-
-  /**
-   * Checks if the prop is ignored
-   * @param {String} name Name of the prop to check.
-   * @returns {Boolean} True if the prop is ignored, false if not.
-   */
-  function isIgnored(name) {
-    return ignored.indexOf(name) !== -1;
-  }
-
-  /**
-   * Checks if the component must be validated
-   * @param {Object} component The component to process
-   * @returns {Boolean} True if the component must be validated, false if not.
-   */
-  function mustBeValidated(component) {
-    return (
-      component &&
-      component.isReactComponent &&
-      component.usedPropTypes &&
-      !component.ignorePropsValidation
-    );
-  }
-
-  /**
-   * Checks if the prop is declared
-   * @param {String} name Name of the prop to check.
-   * @param {Object} component The component to process
-   * @returns {Boolean} True if the prop is declared, false if not.
-   */
-  function isDeclaredInComponent(component, name) {
-    return (
-      component.declaredPropTypes &&
-      component.declaredPropTypes.indexOf(name) !== -1
-    );
-  }
-
-  /**
-   * Checks if the prop has spread operator.
-   * @param {ASTNode} node The AST node being marked.
-   * @returns {Boolean} True if the prop has spread operator, false if not.
-   */
-  function hasSpreadOperator(node) {
-    var tokens = context.getTokens(node);
-    return tokens.length && tokens[0].value === '...';
-  }
-
-  /**
-   * Mark a prop type as used
-   * @param {ASTNode} node The AST node being marked.
-   */
-  function markPropTypesAsUsed(node) {
-    var component = componentList.getByNode(context, node);
-    var usedPropTypes = component && component.usedPropTypes || [];
-    var type;
-    if (node.parent.property && node.parent.property.name && !node.parent.computed) {
-      type = 'direct';
-    } else if (
-      node.parent.parent.declarations &&
-      node.parent.parent.declarations[0].id.properties &&
-      node.parent.parent.declarations[0].id.properties[0].key.name
-    ) {
-      type = 'destructuring';
-    }
-
-    switch (type) {
-      case 'direct':
-        usedPropTypes.push({
-          name: node.parent.property.name,
-          node: node
-        });
-        break;
-      case 'destructuring':
-        var properties = node.parent.parent.declarations[0].id.properties;
-        for (var i = 0, j = properties.length; i < j; i++) {
-          if (hasSpreadOperator(properties[i])) {
-            continue;
-          }
-          usedPropTypes.push({
-            name: properties[i].key.name,
-            node: node
-          });
-        }
-        break;
-      default:
-        break;
-    }
-
-    componentList.set(context, node, {
-      usedPropTypes: usedPropTypes
-    });
-  }
-
-  /**
-   * Mark a prop type as declared
-   * @param {ASTNode} node The AST node being checked.
-   * @param {propTypes} node The AST node containing the proptypes
-   */
-  function markPropTypesAsDeclared(node, propTypes) {
-    var component = componentList.getByNode(context, node);
-    var declaredPropTypes = component && component.declaredPropTypes || [];
-    var ignorePropsValidation = false;
-
-    switch (propTypes.type) {
-      case 'ObjectExpression':
-        for (var i = 0, j = propTypes.properties.length; i < j; i++) {
-          declaredPropTypes.push(propTypes.properties[i].key.name);
-        }
-        break;
-      case 'MemberExpression':
-        declaredPropTypes.push(propTypes.property.name);
-        break;
-      default:
-        ignorePropsValidation = true;
-        break;
-    }
-
-    componentList.set(context, node, {
-      declaredPropTypes: declaredPropTypes,
-      ignorePropsValidation: ignorePropsValidation
-    });
-
-  }
-
-  /**
-   * Reports undeclared proptypes for a given component
-   * @param {Object} component The component to process
-   */
-  function reportUndeclaredPropTypes(component) {
-    var name;
-    for (var i = 0, j = component.usedPropTypes.length; i < j; i++) {
-      name = component.usedPropTypes[i].name;
-      if (isDeclaredInComponent(component, name) || isIgnored(name)) {
-        continue;
-      }
-      context.report(
-        component.usedPropTypes[i].node,
-        component.name === componentUtil.DEFAULT_COMPONENT_NAME ? MISSING_MESSAGE : MISSING_MESSAGE_NAMED_COMP, {
-          name: name,
-          component: component.name
-        }
-      );
-    }
-  }
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    ClassProperty: function(node) {
-      if (!isPropTypesDeclaration(node)) {
-        return;
-      }
-
-      markPropTypesAsDeclared(node, node.value);
-    },
-
-    MemberExpression: function(node) {
-      var type;
-      if (isPropTypesUsage(node)) {
-        type = 'usage';
-      } else if (isPropTypesDeclaration(node.property)) {
-        type = 'declaration';
-      }
-
-      switch (type) {
-        case 'usage':
-          markPropTypesAsUsed(node);
-          break;
-        case 'declaration':
-          var component = componentList.getByName(node.object.name);
-          if (!component) {
-            return;
-          }
-          markPropTypesAsDeclared(component.node, node.parent.right || node.parent);
-          break;
-        default:
-          break;
-      }
-    },
-
-    MethodDefinition: function(node) {
-      if (!isPropTypesDeclaration(node.key)) {
-        return;
-      }
-
-      var i = node.value.body.body.length - 1;
-      for (; i >= 0; i--) {
-        if (node.value.body.body[i].type === 'ReturnStatement') {
-          break;
-        }
-      }
-
-      markPropTypesAsDeclared(node, node.value.body.body[i].argument);
-    },
-
-    ObjectExpression: function(node) {
-      // Search for the displayName declaration
-      node.properties.forEach(function(property) {
-        if (!isPropTypesDeclaration(property.key)) {
-          return;
-        }
-        markPropTypesAsDeclared(node, property.value);
-      });
-    },
-
-    'Program:exit': function() {
-      var list = componentList.getList();
-      // Report undeclared proptypes for all classes
-      for (var component in list) {
-        if (!list.hasOwnProperty(component) || !mustBeValidated(list[component])) {
-          continue;
-        }
-        reportUndeclaredPropTypes(list[component]);
-      }
-    },
-
-    ReturnStatement: function(node) {
-      if (!componentUtil.isReactComponent(context, node)) {
-        return;
-      }
-      componentList.set(context, node, {
-        isReactComponent: true
-      });
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js
deleted file mode 100755 (executable)
index b59f1ee..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- * @fileoverview Prevent missing React when using JSX
- * @author Glen Mailer
- */
-'use strict';
-
-var variableUtil = require('../util/variable');
-
-// -----------------------------------------------------------------------------
-// Rule Definition
-// -----------------------------------------------------------------------------
-
-var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/;
-
-module.exports = function(context) {
-
-  var id = 'React';
-  var NOT_DEFINED_MESSAGE = '\'{{name}}\' must be in scope when using JSX';
-
-  return {
-
-    JSXOpeningElement: function(node) {
-      var variables = variableUtil.variablesInScope(context);
-      if (variableUtil.findVariable(variables, id)) {
-        return;
-      }
-      context.report(node, NOT_DEFINED_MESSAGE, {
-        name: id
-      });
-    },
-
-    BlockComment: function(node) {
-      var matches = JSX_ANNOTATION_REGEX.exec(node.value);
-      if (!matches) {
-        return;
-      }
-      id = matches[1].split('.')[0];
-    }
-
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js
deleted file mode 100644 (file)
index d944d7e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * @fileoverview Prevent extra closing tags for components without children
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  var tagConvention = /^[a-z]|\-/;
-  function isTagName(name) {
-    return tagConvention.test(name);
-  }
-
-  function isComponent(node) {
-    return node.name && node.name.type === 'JSXIdentifier' && !isTagName(node.name.name);
-  }
-
-  function hasChildren(node) {
-    var childrens = node.parent.children;
-    if (
-      !childrens.length ||
-      (childrens.length === 1 && childrens[0].type === 'Literal' && !childrens[0].value.trim())
-    ) {
-      return false;
-    }
-    return true;
-  }
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    JSXOpeningElement: function(node) {
-      if (!isComponent(node) || node.selfClosing || hasChildren(node)) {
-        return;
-      }
-      context.report(node, 'Empty components are self-closing');
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/rules/wrap-multilines.js
deleted file mode 100644 (file)
index 44b8b83..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/**
- * @fileoverview Prevent missing parentheses around multilines JSX
- * @author Yannick Croissant
- */
-'use strict';
-
-// ------------------------------------------------------------------------------
-// Rule Definition
-// ------------------------------------------------------------------------------
-
-module.exports = function(context) {
-
-  function isParenthesised(node) {
-    var previousToken = context.getTokenBefore(node);
-    var nextToken = context.getTokenAfter(node);
-
-    return previousToken && nextToken &&
-      previousToken.value === '(' && previousToken.range[1] <= node.range[0] &&
-      nextToken.value === ')' && nextToken.range[0] >= node.range[1];
-  }
-
-  function isMultilines(node) {
-    return node.loc.start.line !== node.loc.end.line;
-  }
-
-  function check(node) {
-    if (!node || node.type !== 'JSXElement') {
-      return;
-    }
-
-    if (!isParenthesised(node) && isMultilines(node)) {
-      context.report(node, 'Missing parentheses around multilines JSX');
-    }
-  }
-
-  // --------------------------------------------------------------------------
-  // Public
-  // --------------------------------------------------------------------------
-
-  return {
-
-    VariableDeclarator: function(node) {
-      check(node.init);
-    },
-
-    AssignmentExpression: function(node) {
-      check(node.right);
-    },
-
-    ReturnStatement: function(node) {
-      check(node.argument);
-    }
-  };
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/component.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/component.js
deleted file mode 100755 (executable)
index 8b55b69..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-/**
- * @fileoverview Utility functions for React components detection
- * @author Yannick Croissant
- */
-'use strict';
-
-var util = require('util');
-
-var DEFAULT_COMPONENT_NAME = 'eslintReactComponent';
-
-/**
- * Detect if we are in a React Component
- * A React component is defined has an object/class with a property "render"
- * that return a JSXElement or null/false
- * @param {Object} context The current rule context.
- * @param {ASTNode} node The AST node being checked.
- * @returns {Boolean} True if we are in a React Component, false if not.
- */
-function isReactComponent(context, node) {
-  if (node.type !== 'ReturnStatement') {
-    throw new Error('React Component detection must be done from a ReturnStatement ASTNode');
-  }
-
-  var scope = context.getScope();
-  var isComponentRender =
-    node.argument &&
-    node.argument.type === 'JSXElement' &&
-    scope.block.parent.key && scope.block.parent.key.name === 'render'
-  ;
-  var isEmptyComponentRender =
-    node.argument &&
-    node.argument.type === 'Literal' && (node.argument.value === null || node.argument.value === false) &&
-    scope.block.parent.key && scope.block.parent.key.name === 'render'
-  ;
-
-  return Boolean(isEmptyComponentRender || isComponentRender);
-}
-
-/**
- * Detect if the node is a component definition
- * @param {ASTNode} node The AST node being checked.
- * @returns {Boolean} True the node is a component definition, false if not.
- */
-function isComponentDefinition(node) {
-  var isES6Component = node.type === 'ClassDeclaration';
-  var isES5Component = Boolean(
-    node.type === 'ObjectExpression' &&
-    node.parent &&
-    node.parent.callee &&
-    node.parent.callee.object &&
-    node.parent.callee.property &&
-    node.parent.callee.object.name === 'React' &&
-    node.parent.callee.property.name === 'createClass'
-  );
-  return isES5Component || isES6Component;
-}
-
-/**
- * Get the React component ASTNode from any child ASTNode
- * @param {Object} context The current rule context.
- * @param {ASTNode} node The AST node being checked.
- * @returns {ASTNode} The ASTNode of the React component.
- */
-function getNode(context, node) {
-  var componentNode = null;
-  var ancestors = context.getAncestors().reverse();
-
-  ancestors.unshift(node);
-
-  for (var i = 0, j = ancestors.length; i < j; i++) {
-    if (isComponentDefinition(ancestors[i])) {
-      componentNode = ancestors[i];
-      break;
-    }
-  }
-
-  return componentNode;
-}
-
-/**
- * Get the identifiers of a React component ASTNode
- * @param {ASTNode} node The React component ASTNode being checked.
- * @returns {Object} The component identifiers.
- */
-function getIdentifiers(node) {
-  var name = node.id && node.id.name || DEFAULT_COMPONENT_NAME;
-  var id = name + ':' + node.loc.start.line + ':' + node.loc.start.column;
-
-  return {
-    id: id,
-    name: name
-  };
-}
-
-/**
- * Store a React component list
- * @constructor
- */
-function List() {
-  this._list = {};
-  this._length = 0;
-}
-
-/**
- * Find a component in the list by his node or one of his child node
- * @param {Object} context The current rule context.
- * @param {ASTNode} node The node to find.
- * @returns {Object|null} The component if it is found, null if not.
- */
-List.prototype.getByNode = function(context, node) {
-  var componentNode = getNode(context, node);
-  if (!componentNode) {
-    return null;
-  }
-  var identifiers = getIdentifiers(componentNode);
-
-  return this._list[identifiers.id] || null;
-};
-
-/**
- * Find a component in the list by his name
- * @param {String} name Name of the component to find.
- * @returns {Object|null} The component if it is found, null if not.
- */
-List.prototype.getByName = function(name) {
-  for (var component in this._list) {
-    if (this._list.hasOwnProperty(component) && this._list[component].name === name) {
-      return this._list[component];
-    }
-  }
-  return null;
-};
-
-/**
- * Return the component list
- * @returns {Object} The component list.
- */
-List.prototype.getList = function() {
-  return this._list;
-};
-
-/**
- * Add/update a component in the list
- * @param {Object} context The current rule context.
- * @param {ASTNode} node The node to add.
- * @param {Object} customProperties Additional properties to add to the component.
- * @returns {Object} The added component.
- */
-List.prototype.set = function(context, node, customProperties) {
-  var componentNode = getNode(context, node);
-  if (!componentNode) {
-    return null;
-  }
-  var identifiers = getIdentifiers(componentNode);
-
-  var component = util._extend({
-    name: identifiers.name,
-    node: componentNode
-  }, customProperties || {});
-
-  if (!this._list[identifiers.id]) {
-    this._length++;
-  }
-
-  this._list[identifiers.id] = util._extend(this._list[identifiers.id] || {}, component);
-
-  return component;
-};
-
-/**
- * Remove a component from the list
- * @param {Object} context The current rule context.
- * @param {ASTNode} node The node to remove.
- */
-List.prototype.remove = function(context, node) {
-  var componentNode = getNode(context, node);
-  if (!componentNode) {
-    return null;
-  }
-  var identifiers = getIdentifiers(componentNode);
-
-  if (!this._list[identifiers.id]) {
-    return null;
-  }
-
-  delete this._list[identifiers.id];
-  this._length--;
-
-  return null;
-};
-
-/**
- * Return the component list length
- * @returns {Number} The component list length.
- */
-List.prototype.count = function() {
-  return this._length;
-};
-
-module.exports = {
-  DEFAULT_COMPONENT_NAME: DEFAULT_COMPONENT_NAME,
-  isReactComponent: isReactComponent,
-  getNode: getNode,
-  isComponentDefinition: isComponentDefinition,
-  getIdentifiers: getIdentifiers,
-  List: List
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/variable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/lib/util/variable.js
deleted file mode 100755 (executable)
index 93b4d7f..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/**
- * @fileoverview Utility functions for React components detection
- * @author Yannick Croissant
- */
-'use strict';
-
-/**
- * Record that a particular variable has been used in code
- *
- * Similar to the one coming from ESLint but with a patch for babel-eslint
- * to avoid https://github.com/babel/babel-eslint/issues/21
- *
- * @param {String} name The name of the variable to mark as used.
- * @returns {Boolean} True if the variable was found and marked as used, false if not.
- */
-function markVariableAsUsed(context, name) {
-  var scope = context.getScope();
-  var variables;
-  var i;
-  var len;
-
-  // Special Node.js scope means we need to start one level deeper
-  if (scope.type === 'global' && scope.childScopes.length) {
-    scope = scope.childScopes[0];
-    if (scope.childScopes.length) {
-      scope = scope.childScopes[0];
-    }
-  }
-
-  do {
-    variables = scope.variables;
-    for (i = 0, len = variables.length; i < len; i++) {
-      if (variables[i].name === name) {
-        variables[i].eslintUsed = true;
-        return true;
-      }
-    }
-    scope = scope.upper;
-  } while (scope);
-
-  return false;
-}
-
-/**
- * Search a particular variable in a list
- * @param {Array} variables The variables list.
- * @param {Array} name The name of the variable to search.
- * @returns {Boolean} True if the variable was found, false if not.
- */
-function findVariable(variables, name) {
-  var i;
-  var len;
-
-  for (i = 0, len = variables.length; i < len; i++) {
-    if (variables[i].name === name) {
-      return true;
-    }
-  }
-
-  return false;
-}
-
-/**
- * List all variable in a given scope
- *
- * Contain a patch for babel-eslint to avoid https://github.com/babel/babel-eslint/issues/21
- *
- * @param {Object} context The current rule context.
- * @param {Array} name The name of the variable to search.
- * @returns {Boolean} True if the variable was found, false if not.
- */
-function variablesInScope(context) {
-  var scope = context.getScope();
-  var variables = scope.variables;
-
-  while (scope.type !== 'global') {
-    scope = scope.upper;
-    variables = scope.variables.concat(variables);
-  }
-  if (scope.childScopes.length) {
-    variables = scope.childScopes[0].variables.concat(variables);
-    if (scope.childScopes[0].childScopes.length) {
-      variables = scope.childScopes[0].childScopes[0].variables.concat(variables);
-    }
-  }
-
-  return variables;
-}
-
-module.exports = {
-  findVariable: findVariable,
-  variablesInScope: variablesInScope,
-  markVariableAsUsed: markVariableAsUsed
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint-plugin-react/package.json
deleted file mode 100755 (executable)
index 712a1fe..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-{
-  "_args": [
-    [
-      "eslint-plugin-react@https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "eslint-plugin-react@https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-  "_id": "eslint-plugin-react@https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2QLHLLdZ9vWLm6Jzn9ojdA+8CO8=",
-  "_location": "/grunt-standard/standard/eslint-plugin-react",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "eslint-plugin-react@https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-    "name": "eslint-plugin-react",
-    "escapedName": "eslint-plugin-react",
-    "rawSpec": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Yannick Croissant",
-    "email": "yannick.croissant+npm@gmail.com"
-  },
-  "bugs": {
-    "url": "https://github.com/yannickcr/eslint-plugin-react/issues"
-  },
-  "description": "React specific linting rules for ESLint",
-  "devDependencies": {
-    "babel-eslint": "3.0.1",
-    "coveralls": "2.11.2",
-    "eslint": "0.19.0",
-    "eslint-tester": "github:eslint/eslint-tester#c2a1f722cd",
-    "istanbul": "0.3.13",
-    "mocha": "2.2.4"
-  },
-  "files": [
-    "LICENSE",
-    "README.md",
-    "index.js",
-    "lib"
-  ],
-  "homepage": "https://github.com/yannickcr/eslint-plugin-react",
-  "keywords": [
-    "eslint-plugin",
-    "eslintplugin",
-    "eslint",
-    "react"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://raw.github.com/yannickcr/eslint-plugin-react/master/LICENSE"
-    }
-  ],
-  "main": "index.js",
-  "name": "eslint-plugin-react",
-  "peerDependencies": {
-    "eslint": ">=0.8.0"
-  },
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/yannickcr/eslint-plugin-react.git"
-  },
-  "scripts": {
-    "coveralls": "cat ./reports/coverage/lcov.info | coveralls",
-    "lint": "eslint ./",
-    "test": "npm run lint && npm run unit-test",
-    "unit-test": "istanbul cover --dir reports/coverage _mocha tests/**/*.js -- --reporter dot"
-  },
-  "version": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-2.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/.npmignore
deleted file mode 100644 (file)
index b512c09..0000000
+++ /dev/null
@@ -1 +0,0 @@
-node_modules
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/LICENSE
deleted file mode 100644 (file)
index 99c130e..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-The MIT License
-
-Copyright (c) 2013 Max Ogden
-
-Permission is hereby granted, free of charge, 
-to any person obtaining a copy of this software and 
-associated documentation files (the "Software"), to 
-deal in the Software without restriction, including 
-without limitation the rights to use, copy, modify, 
-merge, publish, distribute, sublicense, and/or sell 
-copies of the Software, and to permit persons to whom 
-the Software is furnished to do so, 
-subject to the following conditions:
-
-The above copyright notice and this permission notice 
-shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR 
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/index.js
deleted file mode 100644 (file)
index b55ae7e..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-var Writable = require('readable-stream').Writable
-var inherits = require('inherits')
-
-if (typeof Uint8Array === 'undefined') {
-  var U8 = require('typedarray').Uint8Array
-} else {
-  var U8 = Uint8Array
-}
-
-function ConcatStream(opts, cb) {
-  if (!(this instanceof ConcatStream)) return new ConcatStream(opts, cb)
-
-  if (typeof opts === 'function') {
-    cb = opts
-    opts = {}
-  }
-  if (!opts) opts = {}
-
-  var encoding = opts.encoding
-  var shouldInferEncoding = false
-
-  if (!encoding) {
-    shouldInferEncoding = true
-  } else {
-    encoding =  String(encoding).toLowerCase()
-    if (encoding === 'u8' || encoding === 'uint8') {
-      encoding = 'uint8array'
-    }
-  }
-
-  Writable.call(this, { objectMode: true })
-
-  this.encoding = encoding
-  this.shouldInferEncoding = shouldInferEncoding
-
-  if (cb) this.on('finish', function () { cb(this.getBody()) })
-  this.body = []
-}
-
-module.exports = ConcatStream
-inherits(ConcatStream, Writable)
-
-ConcatStream.prototype._write = function(chunk, enc, next) {
-  this.body.push(chunk)
-  next()
-}
-
-ConcatStream.prototype.inferEncoding = function (buff) {
-  var firstBuffer = buff === undefined ? this.body[0] : buff;
-  if (Buffer.isBuffer(firstBuffer)) return 'buffer'
-  if (typeof Uint8Array !== 'undefined' && firstBuffer instanceof Uint8Array) return 'uint8array'
-  if (Array.isArray(firstBuffer)) return 'array'
-  if (typeof firstBuffer === 'string') return 'string'
-  if (Object.prototype.toString.call(firstBuffer) === "[object Object]") return 'object'
-  return 'buffer'
-}
-
-ConcatStream.prototype.getBody = function () {
-  if (!this.encoding && this.body.length === 0) return []
-  if (this.shouldInferEncoding) this.encoding = this.inferEncoding()
-  if (this.encoding === 'array') return arrayConcat(this.body)
-  if (this.encoding === 'string') return stringConcat(this.body)
-  if (this.encoding === 'buffer') return bufferConcat(this.body)
-  if (this.encoding === 'uint8array') return u8Concat(this.body)
-  return this.body
-}
-
-var isArray = Array.isArray || function (arr) {
-  return Object.prototype.toString.call(arr) == '[object Array]'
-}
-
-function isArrayish (arr) {
-  return /Array\]$/.test(Object.prototype.toString.call(arr))
-}
-
-function stringConcat (parts) {
-  var strings = []
-  var needsToString = false
-  for (var i = 0; i < parts.length; i++) {
-    var p = parts[i]
-    if (typeof p === 'string') {
-      strings.push(p)
-    } else if (Buffer.isBuffer(p)) {
-      strings.push(p)
-    } else {
-      strings.push(Buffer(p))
-    }
-  }
-  if (Buffer.isBuffer(parts[0])) {
-    strings = Buffer.concat(strings)
-    strings = strings.toString('utf8')
-  } else {
-    strings = strings.join('')
-  }
-  return strings
-}
-
-function bufferConcat (parts) {
-  var bufs = []
-  for (var i = 0; i < parts.length; i++) {
-    var p = parts[i]
-    if (Buffer.isBuffer(p)) {
-      bufs.push(p)
-    } else if (typeof p === 'string' || isArrayish(p)
-    || (p && typeof p.subarray === 'function')) {
-      bufs.push(Buffer(p))
-    } else bufs.push(Buffer(String(p)))
-  }
-  return Buffer.concat(bufs)
-}
-
-function arrayConcat (parts) {
-  var res = []
-  for (var i = 0; i < parts.length; i++) {
-    res.push.apply(res, parts[i])
-  }
-  return res
-}
-
-function u8Concat (parts) {
-  var len = 0
-  for (var i = 0; i < parts.length; i++) {
-    if (typeof parts[i] === 'string') {
-      parts[i] = Buffer(parts[i])
-    }
-    len += parts[i].length
-  }
-  var u8 = new U8(len)
-  for (var i = 0, offset = 0; i < parts.length; i++) {
-    var part = parts[i]
-    for (var j = 0; j < part.length; j++) {
-      u8[offset++] = part[j]
-    }
-  }
-  return u8
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/LICENSE
deleted file mode 100644 (file)
index dea3013..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
-REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
-INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
-LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/README.md
deleted file mode 100644 (file)
index b1c5665..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-Browser-friendly inheritance fully compatible with standard node.js
-[inherits](http://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor).
-
-This package exports standard `inherits` from node.js `util` module in
-node environment, but also provides alternative browser-friendly
-implementation through [browser
-field](https://gist.github.com/shtylman/4339901). Alternative
-implementation is a literal copy of standard one located in standalone
-module to avoid requiring of `util`. It also has a shim for old
-browsers with no `Object.create` support.
-
-While keeping you sure you are using standard `inherits`
-implementation in node.js environment, it allows bundlers such as
-[browserify](https://github.com/substack/node-browserify) to not
-include full `util` package to your client code if all you need is
-just `inherits` function. It worth, because browser shim for `util`
-package is large and `inherits` is often the single function you need
-from it.
-
-It's recommended to use this package instead of
-`require('util').inherits` for any code that has chances to be used
-not only in node.js but in browser too.
-
-## usage
-
-```js
-var inherits = require('inherits');
-// then use exactly as the standard one
-```
-
-## note on version ~1.0
-
-Version ~1.0 had completely different motivation and is not compatible
-neither with 2.0 nor with standard node.js `inherits`.
-
-If you are using version ~1.0 and planning to switch to ~2.0, be
-careful:
-
-* new version uses `super_` instead of `super` for referencing
-  superclass
-* new version overwrites current prototype while old one preserves any
-  existing fields on it
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits.js
deleted file mode 100644 (file)
index 29f5e24..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('util').inherits
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits_browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/inherits_browser.js
deleted file mode 100644 (file)
index c1e78a7..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-if (typeof Object.create === 'function') {
-  // implementation from standard node.js 'util' module
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    ctor.prototype = Object.create(superCtor.prototype, {
-      constructor: {
-        value: ctor,
-        enumerable: false,
-        writable: true,
-        configurable: true
-      }
-    });
-  };
-} else {
-  // old school shim for old browsers
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    var TempCtor = function () {}
-    TempCtor.prototype = superCtor.prototype
-    ctor.prototype = new TempCtor()
-    ctor.prototype.constructor = ctor
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/package.json
deleted file mode 100644 (file)
index ea1cde8..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_id": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/inherits",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "name": "inherits",
-    "escapedName": "inherits",
-    "rawSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream",
-    "/grunt-standard/standard/eslint/concat-stream/readable-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "browser": "./inherits_browser.js",
-  "bugs": {
-    "url": "https://github.com/isaacs/inherits/issues"
-  },
-  "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()",
-  "homepage": "https://github.com/isaacs/inherits#readme",
-  "keywords": [
-    "inheritance",
-    "class",
-    "klass",
-    "oop",
-    "object-oriented",
-    "inherits",
-    "browser",
-    "browserify"
-  ],
-  "license": "ISC",
-  "main": "./inherits.js",
-  "name": "inherits",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/inherits.git"
-  },
-  "scripts": {
-    "test": "node test"
-  },
-  "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/inherits/test.js
deleted file mode 100644 (file)
index fc53012..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var inherits = require('./inherits.js')
-var assert = require('assert')
-
-function test(c) {
-  assert(c.constructor === Child)
-  assert(c.constructor.super_ === Parent)
-  assert(Object.getPrototypeOf(c) === Child.prototype)
-  assert(Object.getPrototypeOf(Object.getPrototypeOf(c)) === Parent.prototype)
-  assert(c instanceof Child)
-  assert(c instanceof Parent)
-}
-
-function Child() {
-  Parent.call(this)
-  test(this)
-}
-
-function Parent() {}
-
-inherits(Child, Parent)
-
-var c = new Child
-test(c)
-
-console.log('ok')
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/.npmignore
deleted file mode 100644 (file)
index 38344f8..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-build/
-test/
-examples/
-fs.js
-zlib.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/README.md
deleted file mode 100644 (file)
index e46b823..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# readable-stream
-
-***Node-core streams for userland***
-
-[![NPM](https://nodei.co/npm/readable-stream.png?downloads=true&downloadRank=true)](https://nodei.co/npm/readable-stream/)
-[![NPM](https://nodei.co/npm-dl/readable-stream.png&months=6&height=3)](https://nodei.co/npm/readable-stream/)
-
-This package is a mirror of the Streams2 and Streams3 implementations in Node-core.
-
-If you want to guarantee a stable streams base, regardless of what version of Node you, or the users of your libraries are using, use **readable-stream** *only* and avoid the *"stream"* module in Node-core.
-
-**readable-stream** comes in two major versions, v1.0.x and v1.1.x. The former tracks the Streams2 implementation in Node 0.10, including bug-fixes and minor improvements as they are added. The latter tracks Streams3 as it develops in Node 0.11; we will likely see a v1.2.x branch for Node 0.12.
-
-**readable-stream** uses proper patch-level versioning so if you pin to `"~1.0.0"` you’ll get the latest Node 0.10 Streams2 implementation, including any fixes and minor non-breaking improvements. The patch-level versions of 1.0.x and 1.1.x should mirror the patch-level versions of Node-core releases. You should prefer the **1.0.x** releases for now and when you’re ready to start using Streams3, pin to `"~1.1.0"`
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/duplex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/duplex.js
deleted file mode 100644 (file)
index ca807af..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require("./lib/_stream_duplex.js")
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/float.patch b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/float.patch
deleted file mode 100644 (file)
index b984607..0000000
+++ /dev/null
@@ -1,923 +0,0 @@
-diff --git a/lib/_stream_duplex.js b/lib/_stream_duplex.js
-index c5a741c..a2e0d8e 100644
---- a/lib/_stream_duplex.js
-+++ b/lib/_stream_duplex.js
-@@ -26,8 +26,8 @@
- module.exports = Duplex;
- var util = require('util');
--var Readable = require('_stream_readable');
--var Writable = require('_stream_writable');
-+var Readable = require('./_stream_readable');
-+var Writable = require('./_stream_writable');
- util.inherits(Duplex, Readable);
-diff --git a/lib/_stream_passthrough.js b/lib/_stream_passthrough.js
-index a5e9864..330c247 100644
---- a/lib/_stream_passthrough.js
-+++ b/lib/_stream_passthrough.js
-@@ -25,7 +25,7 @@
- module.exports = PassThrough;
--var Transform = require('_stream_transform');
-+var Transform = require('./_stream_transform');
- var util = require('util');
- util.inherits(PassThrough, Transform);
-diff --git a/lib/_stream_readable.js b/lib/_stream_readable.js
-index 0c3fe3e..90a8298 100644
---- a/lib/_stream_readable.js
-+++ b/lib/_stream_readable.js
-@@ -23,10 +23,34 @@ module.exports = Readable;
- Readable.ReadableState = ReadableState;
- var EE = require('events').EventEmitter;
-+if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
-+  return emitter.listeners(type).length;
-+};
-+
-+if (!global.setImmediate) global.setImmediate = function setImmediate(fn) {
-+  return setTimeout(fn, 0);
-+};
-+if (!global.clearImmediate) global.clearImmediate = function clearImmediate(i) {
-+  return clearTimeout(i);
-+};
-+
- var Stream = require('stream');
- var util = require('util');
-+if (!util.isUndefined) {
-+  var utilIs = require('core-util-is');
-+  for (var f in utilIs) {
-+    util[f] = utilIs[f];
-+  }
-+}
- var StringDecoder;
--var debug = util.debuglog('stream');
-+var debug;
-+if (util.debuglog)
-+  debug = util.debuglog('stream');
-+else try {
-+  debug = require('debuglog')('stream');
-+} catch (er) {
-+  debug = function() {};
-+}
- util.inherits(Readable, Stream);
-@@ -380,7 +404,7 @@ function chunkInvalid(state, chunk) {
- function onEofChunk(stream, state) {
--  if (state.decoder && !state.ended) {
-+  if (state.decoder && !state.ended && state.decoder.end) {
-     var chunk = state.decoder.end();
-     if (chunk && chunk.length) {
-       state.buffer.push(chunk);
-diff --git a/lib/_stream_transform.js b/lib/_stream_transform.js
-index b1f9fcc..b0caf57 100644
---- a/lib/_stream_transform.js
-+++ b/lib/_stream_transform.js
-@@ -64,8 +64,14 @@
- module.exports = Transform;
--var Duplex = require('_stream_duplex');
-+var Duplex = require('./_stream_duplex');
- var util = require('util');
-+if (!util.isUndefined) {
-+  var utilIs = require('core-util-is');
-+  for (var f in utilIs) {
-+    util[f] = utilIs[f];
-+  }
-+}
- util.inherits(Transform, Duplex);
-diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js
-index ba2e920..f49288b 100644
---- a/lib/_stream_writable.js
-+++ b/lib/_stream_writable.js
-@@ -27,6 +27,12 @@ module.exports = Writable;
- Writable.WritableState = WritableState;
- var util = require('util');
-+if (!util.isUndefined) {
-+  var utilIs = require('core-util-is');
-+  for (var f in utilIs) {
-+    util[f] = utilIs[f];
-+  }
-+}
- var Stream = require('stream');
- util.inherits(Writable, Stream);
-@@ -119,7 +125,7 @@ function WritableState(options, stream) {
- function Writable(options) {
-   // Writable ctor is applied to Duplexes, though they're not
-   // instanceof Writable, they're instanceof Readable.
--  if (!(this instanceof Writable) && !(this instanceof Stream.Duplex))
-+  if (!(this instanceof Writable) && !(this instanceof require('./_stream_duplex')))
-     return new Writable(options);
-   this._writableState = new WritableState(options, this);
-diff --git a/test/simple/test-stream-big-push.js b/test/simple/test-stream-big-push.js
-index e3787e4..8cd2127 100644
---- a/test/simple/test-stream-big-push.js
-+++ b/test/simple/test-stream-big-push.js
-@@ -21,7 +21,7 @@
- var common = require('../common');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- var str = 'asdfasdfasdfasdfasdf';
- var r = new stream.Readable({
-diff --git a/test/simple/test-stream-end-paused.js b/test/simple/test-stream-end-paused.js
-index bb73777..d40efc7 100644
---- a/test/simple/test-stream-end-paused.js
-+++ b/test/simple/test-stream-end-paused.js
-@@ -25,7 +25,7 @@ var gotEnd = false;
- // Make sure we don't miss the end event for paused 0-length streams
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var stream = new Readable();
- var calledRead = false;
- stream._read = function() {
-diff --git a/test/simple/test-stream-pipe-after-end.js b/test/simple/test-stream-pipe-after-end.js
-index b46ee90..0be8366 100644
---- a/test/simple/test-stream-pipe-after-end.js
-+++ b/test/simple/test-stream-pipe-after-end.js
-@@ -22,8 +22,8 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('_stream_readable');
--var Writable = require('_stream_writable');
-+var Readable = require('../../lib/_stream_readable');
-+var Writable = require('../../lib/_stream_writable');
- var util = require('util');
- util.inherits(TestReadable, Readable);
-diff --git a/test/simple/test-stream-pipe-cleanup.js b/test/simple/test-stream-pipe-cleanup.js
-deleted file mode 100644
-index f689358..0000000
---- a/test/simple/test-stream-pipe-cleanup.js
-+++ /dev/null
-@@ -1,122 +0,0 @@
--// Copyright Joyent, Inc. and other Node contributors.
--//
--// Permission is hereby granted, free of charge, to any person obtaining a
--// copy of this software and associated documentation files (the
--// "Software"), to deal in the Software without restriction, including
--// without limitation the rights to use, copy, modify, merge, publish,
--// distribute, sublicense, and/or sell copies of the Software, and to permit
--// persons to whom the Software is furnished to do so, subject to the
--// following conditions:
--//
--// The above copyright notice and this permission notice shall be included
--// in all copies or substantial portions of the Software.
--//
--// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
--// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
--// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
--// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
--// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
--// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
--// USE OR OTHER DEALINGS IN THE SOFTWARE.
--
--// This test asserts that Stream.prototype.pipe does not leave listeners
--// hanging on the source or dest.
--
--var common = require('../common');
--var stream = require('stream');
--var assert = require('assert');
--var util = require('util');
--
--function Writable() {
--  this.writable = true;
--  this.endCalls = 0;
--  stream.Stream.call(this);
--}
--util.inherits(Writable, stream.Stream);
--Writable.prototype.end = function() {
--  this.endCalls++;
--};
--
--Writable.prototype.destroy = function() {
--  this.endCalls++;
--};
--
--function Readable() {
--  this.readable = true;
--  stream.Stream.call(this);
--}
--util.inherits(Readable, stream.Stream);
--
--function Duplex() {
--  this.readable = true;
--  Writable.call(this);
--}
--util.inherits(Duplex, Writable);
--
--var i = 0;
--var limit = 100;
--
--var w = new Writable();
--
--var r;
--
--for (i = 0; i < limit; i++) {
--  r = new Readable();
--  r.pipe(w);
--  r.emit('end');
--}
--assert.equal(0, r.listeners('end').length);
--assert.equal(limit, w.endCalls);
--
--w.endCalls = 0;
--
--for (i = 0; i < limit; i++) {
--  r = new Readable();
--  r.pipe(w);
--  r.emit('close');
--}
--assert.equal(0, r.listeners('close').length);
--assert.equal(limit, w.endCalls);
--
--w.endCalls = 0;
--
--r = new Readable();
--
--for (i = 0; i < limit; i++) {
--  w = new Writable();
--  r.pipe(w);
--  w.emit('close');
--}
--assert.equal(0, w.listeners('close').length);
--
--r = new Readable();
--w = new Writable();
--var d = new Duplex();
--r.pipe(d); // pipeline A
--d.pipe(w); // pipeline B
--assert.equal(r.listeners('end').length, 2);   // A.onend, A.cleanup
--assert.equal(r.listeners('close').length, 2); // A.onclose, A.cleanup
--assert.equal(d.listeners('end').length, 2);   // B.onend, B.cleanup
--assert.equal(d.listeners('close').length, 3); // A.cleanup, B.onclose, B.cleanup
--assert.equal(w.listeners('end').length, 0);
--assert.equal(w.listeners('close').length, 1); // B.cleanup
--
--r.emit('end');
--assert.equal(d.endCalls, 1);
--assert.equal(w.endCalls, 0);
--assert.equal(r.listeners('end').length, 0);
--assert.equal(r.listeners('close').length, 0);
--assert.equal(d.listeners('end').length, 2);   // B.onend, B.cleanup
--assert.equal(d.listeners('close').length, 2); // B.onclose, B.cleanup
--assert.equal(w.listeners('end').length, 0);
--assert.equal(w.listeners('close').length, 1); // B.cleanup
--
--d.emit('end');
--assert.equal(d.endCalls, 1);
--assert.equal(w.endCalls, 1);
--assert.equal(r.listeners('end').length, 0);
--assert.equal(r.listeners('close').length, 0);
--assert.equal(d.listeners('end').length, 0);
--assert.equal(d.listeners('close').length, 0);
--assert.equal(w.listeners('end').length, 0);
--assert.equal(w.listeners('close').length, 0);
-diff --git a/test/simple/test-stream-pipe-error-handling.js b/test/simple/test-stream-pipe-error-handling.js
-index c5d724b..c7d6b7d 100644
---- a/test/simple/test-stream-pipe-error-handling.js
-+++ b/test/simple/test-stream-pipe-error-handling.js
-@@ -21,7 +21,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Stream = require('stream').Stream;
-+var Stream = require('../../').Stream;
- (function testErrorListenerCatches() {
-   var source = new Stream();
-diff --git a/test/simple/test-stream-pipe-event.js b/test/simple/test-stream-pipe-event.js
-index cb9d5fe..56f8d61 100644
---- a/test/simple/test-stream-pipe-event.js
-+++ b/test/simple/test-stream-pipe-event.js
-@@ -20,7 +20,7 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
- var common = require('../common');
--var stream = require('stream');
-+var stream = require('../../');
- var assert = require('assert');
- var util = require('util');
-diff --git a/test/simple/test-stream-push-order.js b/test/simple/test-stream-push-order.js
-index f2e6ec2..a5c9bf9 100644
---- a/test/simple/test-stream-push-order.js
-+++ b/test/simple/test-stream-push-order.js
-@@ -20,7 +20,7 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
- var common = require('../common.js');
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var assert = require('assert');
- var s = new Readable({
-diff --git a/test/simple/test-stream-push-strings.js b/test/simple/test-stream-push-strings.js
-index 06f43dc..1701a9a 100644
---- a/test/simple/test-stream-push-strings.js
-+++ b/test/simple/test-stream-push-strings.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var util = require('util');
- util.inherits(MyStream, Readable);
-diff --git a/test/simple/test-stream-readable-event.js b/test/simple/test-stream-readable-event.js
-index ba6a577..a8e6f7b 100644
---- a/test/simple/test-stream-readable-event.js
-+++ b/test/simple/test-stream-readable-event.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- (function first() {
-   // First test, not reading when the readable is added.
-diff --git a/test/simple/test-stream-readable-flow-recursion.js b/test/simple/test-stream-readable-flow-recursion.js
-index 2891ad6..11689ba 100644
---- a/test/simple/test-stream-readable-flow-recursion.js
-+++ b/test/simple/test-stream-readable-flow-recursion.js
-@@ -27,7 +27,7 @@ var assert = require('assert');
- // more data continuously, but without triggering a nextTick
- // warning or RangeError.
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- // throw an error if we trigger a nextTick warning.
- process.throwDeprecation = true;
-diff --git a/test/simple/test-stream-unshift-empty-chunk.js b/test/simple/test-stream-unshift-empty-chunk.js
-index 0c96476..7827538 100644
---- a/test/simple/test-stream-unshift-empty-chunk.js
-+++ b/test/simple/test-stream-unshift-empty-chunk.js
-@@ -24,7 +24,7 @@ var assert = require('assert');
- // This test verifies that stream.unshift(Buffer(0)) or 
- // stream.unshift('') does not set state.reading=false.
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var r = new Readable();
- var nChunks = 10;
-diff --git a/test/simple/test-stream-unshift-read-race.js b/test/simple/test-stream-unshift-read-race.js
-index 83fd9fa..17c18aa 100644
---- a/test/simple/test-stream-unshift-read-race.js
-+++ b/test/simple/test-stream-unshift-read-race.js
-@@ -29,7 +29,7 @@ var assert = require('assert');
- // 3. push() after the EOF signaling null is an error.
- // 4. _read() is not called after pushing the EOF null chunk.
--var stream = require('stream');
-+var stream = require('../../');
- var hwm = 10;
- var r = stream.Readable({ highWaterMark: hwm });
- var chunks = 10;
-@@ -51,7 +51,14 @@ r._read = function(n) {
-   function push(fast) {
-     assert(!pushedNull, 'push() after null push');
--    var c = pos >= data.length ? null : data.slice(pos, pos + n);
-+    var c;
-+    if (pos >= data.length)
-+      c = null;
-+    else {
-+      if (n + pos > data.length)
-+        n = data.length - pos;
-+      c = data.slice(pos, pos + n);
-+    }
-     pushedNull = c === null;
-     if (fast) {
-       pos += n;
-diff --git a/test/simple/test-stream-writev.js b/test/simple/test-stream-writev.js
-index 5b49e6e..b5321f3 100644
---- a/test/simple/test-stream-writev.js
-+++ b/test/simple/test-stream-writev.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- var queue = [];
- for (var decode = 0; decode < 2; decode++) {
-diff --git a/test/simple/test-stream2-basic.js b/test/simple/test-stream2-basic.js
-index 3814bf0..248c1be 100644
---- a/test/simple/test-stream2-basic.js
-+++ b/test/simple/test-stream2-basic.js
-@@ -21,7 +21,7 @@
- var common = require('../common.js');
--var R = require('_stream_readable');
-+var R = require('../../lib/_stream_readable');
- var assert = require('assert');
- var util = require('util');
-diff --git a/test/simple/test-stream2-compatibility.js b/test/simple/test-stream2-compatibility.js
-index 6cdd4e9..f0fa84b 100644
---- a/test/simple/test-stream2-compatibility.js
-+++ b/test/simple/test-stream2-compatibility.js
-@@ -21,7 +21,7 @@
- var common = require('../common.js');
--var R = require('_stream_readable');
-+var R = require('../../lib/_stream_readable');
- var assert = require('assert');
- var util = require('util');
-diff --git a/test/simple/test-stream2-finish-pipe.js b/test/simple/test-stream2-finish-pipe.js
-index 39b274f..006a19b 100644
---- a/test/simple/test-stream2-finish-pipe.js
-+++ b/test/simple/test-stream2-finish-pipe.js
-@@ -20,7 +20,7 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
- var common = require('../common.js');
--var stream = require('stream');
-+var stream = require('../../');
- var Buffer = require('buffer').Buffer;
- var r = new stream.Readable();
-diff --git a/test/simple/test-stream2-fs.js b/test/simple/test-stream2-fs.js
-deleted file mode 100644
-index e162406..0000000
---- a/test/simple/test-stream2-fs.js
-+++ /dev/null
-@@ -1,72 +0,0 @@
--// Copyright Joyent, Inc. and other Node contributors.
--//
--// Permission is hereby granted, free of charge, to any person obtaining a
--// copy of this software and associated documentation files (the
--// "Software"), to deal in the Software without restriction, including
--// without limitation the rights to use, copy, modify, merge, publish,
--// distribute, sublicense, and/or sell copies of the Software, and to permit
--// persons to whom the Software is furnished to do so, subject to the
--// following conditions:
--//
--// The above copyright notice and this permission notice shall be included
--// in all copies or substantial portions of the Software.
--//
--// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
--// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
--// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
--// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
--// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
--// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
--// USE OR OTHER DEALINGS IN THE SOFTWARE.
--
--
--var common = require('../common.js');
--var R = require('_stream_readable');
--var assert = require('assert');
--
--var fs = require('fs');
--var FSReadable = fs.ReadStream;
--
--var path = require('path');
--var file = path.resolve(common.fixturesDir, 'x1024.txt');
--
--var size = fs.statSync(file).size;
--
--var expectLengths = [1024];
--
--var util = require('util');
--var Stream = require('stream');
--
--util.inherits(TestWriter, Stream);
--
--function TestWriter() {
--  Stream.apply(this);
--  this.buffer = [];
--  this.length = 0;
--}
--
--TestWriter.prototype.write = function(c) {
--  this.buffer.push(c.toString());
--  this.length += c.length;
--  return true;
--};
--
--TestWriter.prototype.end = function(c) {
--  if (c) this.buffer.push(c.toString());
--  this.emit('results', this.buffer);
--}
--
--var r = new FSReadable(file);
--var w = new TestWriter();
--
--w.on('results', function(res) {
--  console.error(res, w.length);
--  assert.equal(w.length, size);
--  var l = 0;
--  assert.deepEqual(res.map(function (c) {
--    return c.length;
--  }), expectLengths);
--  console.log('ok');
--});
--
--r.pipe(w);
-diff --git a/test/simple/test-stream2-httpclient-response-end.js b/test/simple/test-stream2-httpclient-response-end.js
-deleted file mode 100644
-index 15cffc2..0000000
---- a/test/simple/test-stream2-httpclient-response-end.js
-+++ /dev/null
-@@ -1,52 +0,0 @@
--// Copyright Joyent, Inc. and other Node contributors.
--//
--// Permission is hereby granted, free of charge, to any person obtaining a
--// copy of this software and associated documentation files (the
--// "Software"), to deal in the Software without restriction, including
--// without limitation the rights to use, copy, modify, merge, publish,
--// distribute, sublicense, and/or sell copies of the Software, and to permit
--// persons to whom the Software is furnished to do so, subject to the
--// following conditions:
--//
--// The above copyright notice and this permission notice shall be included
--// in all copies or substantial portions of the Software.
--//
--// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
--// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
--// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
--// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
--// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
--// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
--// USE OR OTHER DEALINGS IN THE SOFTWARE.
--
--var common = require('../common.js');
--var assert = require('assert');
--var http = require('http');
--var msg = 'Hello';
--var readable_event = false;
--var end_event = false;
--var server = http.createServer(function(req, res) {
--  res.writeHead(200, {'Content-Type': 'text/plain'});
--  res.end(msg);
--}).listen(common.PORT, function() {
--  http.get({port: common.PORT}, function(res) {
--    var data = '';
--    res.on('readable', function() {
--      console.log('readable event');
--      readable_event = true;
--      data += res.read();
--    });
--    res.on('end', function() {
--      console.log('end event');
--      end_event = true;
--      assert.strictEqual(msg, data);
--      server.close();
--    });
--  });
--});
--
--process.on('exit', function() {
--  assert(readable_event);
--  assert(end_event);
--});
--
-diff --git a/test/simple/test-stream2-large-read-stall.js b/test/simple/test-stream2-large-read-stall.js
-index 2fbfbca..667985b 100644
---- a/test/simple/test-stream2-large-read-stall.js
-+++ b/test/simple/test-stream2-large-read-stall.js
-@@ -30,7 +30,7 @@ var PUSHSIZE = 20;
- var PUSHCOUNT = 1000;
- var HWM = 50;
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var r = new Readable({
-   highWaterMark: HWM
- });
-@@ -39,23 +39,23 @@ var rs = r._readableState;
- r._read = push;
- r.on('readable', function() {
--  console.error('>> readable');
-+  //console.error('>> readable');
-   do {
--    console.error('  > read(%d)', READSIZE);
-+    //console.error('  > read(%d)', READSIZE);
-     var ret = r.read(READSIZE);
--    console.error('  < %j (%d remain)', ret && ret.length, rs.length);
-+    //console.error('  < %j (%d remain)', ret && ret.length, rs.length);
-   } while (ret && ret.length === READSIZE);
--  console.error('<< after read()',
--                ret && ret.length,
--                rs.needReadable,
--                rs.length);
-+  //console.error('<< after read()',
-+  //              ret && ret.length,
-+  //              rs.needReadable,
-+  //              rs.length);
- });
- var endEmitted = false;
- r.on('end', function() {
-   endEmitted = true;
--  console.error('end');
-+  //console.error('end');
- });
- var pushes = 0;
-@@ -64,11 +64,11 @@ function push() {
-     return;
-   if (pushes++ === PUSHCOUNT) {
--    console.error('   push(EOF)');
-+    //console.error('   push(EOF)');
-     return r.push(null);
-   }
--  console.error('   push #%d', pushes);
-+  //console.error('   push #%d', pushes);
-   if (r.push(new Buffer(PUSHSIZE)))
-     setTimeout(push);
- }
-diff --git a/test/simple/test-stream2-objects.js b/test/simple/test-stream2-objects.js
-index 3e6931d..ff47d89 100644
---- a/test/simple/test-stream2-objects.js
-+++ b/test/simple/test-stream2-objects.js
-@@ -21,8 +21,8 @@
- var common = require('../common.js');
--var Readable = require('_stream_readable');
--var Writable = require('_stream_writable');
-+var Readable = require('../../lib/_stream_readable');
-+var Writable = require('../../lib/_stream_writable');
- var assert = require('assert');
- // tiny node-tap lookalike.
-diff --git a/test/simple/test-stream2-pipe-error-handling.js b/test/simple/test-stream2-pipe-error-handling.js
-index cf7531c..e3f3e4e 100644
---- a/test/simple/test-stream2-pipe-error-handling.js
-+++ b/test/simple/test-stream2-pipe-error-handling.js
-@@ -21,7 +21,7 @@
- var common = require('../common');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- (function testErrorListenerCatches() {
-   var count = 1000;
-diff --git a/test/simple/test-stream2-pipe-error-once-listener.js b/test/simple/test-stream2-pipe-error-once-listener.js
-index 5e8e3cb..53b2616 100755
---- a/test/simple/test-stream2-pipe-error-once-listener.js
-+++ b/test/simple/test-stream2-pipe-error-once-listener.js
-@@ -24,7 +24,7 @@ var common = require('../common.js');
- var assert = require('assert');
- var util = require('util');
--var stream = require('stream');
-+var stream = require('../../');
- var Read = function() {
-diff --git a/test/simple/test-stream2-push.js b/test/simple/test-stream2-push.js
-index b63edc3..eb2b0e9 100644
---- a/test/simple/test-stream2-push.js
-+++ b/test/simple/test-stream2-push.js
-@@ -20,7 +20,7 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
- var common = require('../common.js');
--var stream = require('stream');
-+var stream = require('../../');
- var Readable = stream.Readable;
- var Writable = stream.Writable;
- var assert = require('assert');
-diff --git a/test/simple/test-stream2-read-sync-stack.js b/test/simple/test-stream2-read-sync-stack.js
-index e8a7305..9740a47 100644
---- a/test/simple/test-stream2-read-sync-stack.js
-+++ b/test/simple/test-stream2-read-sync-stack.js
-@@ -21,7 +21,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- var r = new Readable();
- var N = 256 * 1024;
-diff --git a/test/simple/test-stream2-readable-empty-buffer-no-eof.js b/test/simple/test-stream2-readable-empty-buffer-no-eof.js
-index cd30178..4b1659d 100644
---- a/test/simple/test-stream2-readable-empty-buffer-no-eof.js
-+++ b/test/simple/test-stream2-readable-empty-buffer-no-eof.js
-@@ -22,10 +22,9 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('stream').Readable;
-+var Readable = require('../../').Readable;
- test1();
--test2();
- function test1() {
-   var r = new Readable();
-@@ -88,31 +87,3 @@ function test1() {
-     console.log('ok');
-   });
- }
--
--function test2() {
--  var r = new Readable({ encoding: 'base64' });
--  var reads = 5;
--  r._read = function(n) {
--    if (!reads--)
--      return r.push(null); // EOF
--    else
--      return r.push(new Buffer('x'));
--  };
--
--  var results = [];
--  function flow() {
--    var chunk;
--    while (null !== (chunk = r.read()))
--      results.push(chunk + '');
--  }
--  r.on('readable', flow);
--  r.on('end', function() {
--    results.push('EOF');
--  });
--  flow();
--
--  process.on('exit', function() {
--    assert.deepEqual(results, [ 'eHh4', 'eHg=', 'EOF' ]);
--    console.log('ok');
--  });
--}
-diff --git a/test/simple/test-stream2-readable-from-list.js b/test/simple/test-stream2-readable-from-list.js
-index 7c96ffe..04a96f5 100644
---- a/test/simple/test-stream2-readable-from-list.js
-+++ b/test/simple/test-stream2-readable-from-list.js
-@@ -21,7 +21,7 @@
- var assert = require('assert');
- var common = require('../common.js');
--var fromList = require('_stream_readable')._fromList;
-+var fromList = require('../../lib/_stream_readable')._fromList;
- // tiny node-tap lookalike.
- var tests = [];
-diff --git a/test/simple/test-stream2-readable-legacy-drain.js b/test/simple/test-stream2-readable-legacy-drain.js
-index 675da8e..51fd3d5 100644
---- a/test/simple/test-stream2-readable-legacy-drain.js
-+++ b/test/simple/test-stream2-readable-legacy-drain.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Stream = require('stream');
-+var Stream = require('../../');
- var Readable = Stream.Readable;
- var r = new Readable();
-diff --git a/test/simple/test-stream2-readable-non-empty-end.js b/test/simple/test-stream2-readable-non-empty-end.js
-index 7314ae7..c971898 100644
---- a/test/simple/test-stream2-readable-non-empty-end.js
-+++ b/test/simple/test-stream2-readable-non-empty-end.js
-@@ -21,7 +21,7 @@
- var assert = require('assert');
- var common = require('../common.js');
--var Readable = require('_stream_readable');
-+var Readable = require('../../lib/_stream_readable');
- var len = 0;
- var chunks = new Array(10);
-diff --git a/test/simple/test-stream2-readable-wrap-empty.js b/test/simple/test-stream2-readable-wrap-empty.js
-index 2e5cf25..fd8a3dc 100644
---- a/test/simple/test-stream2-readable-wrap-empty.js
-+++ b/test/simple/test-stream2-readable-wrap-empty.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('_stream_readable');
-+var Readable = require('../../lib/_stream_readable');
- var EE = require('events').EventEmitter;
- var oldStream = new EE();
-diff --git a/test/simple/test-stream2-readable-wrap.js b/test/simple/test-stream2-readable-wrap.js
-index 90eea01..6b177f7 100644
---- a/test/simple/test-stream2-readable-wrap.js
-+++ b/test/simple/test-stream2-readable-wrap.js
-@@ -22,8 +22,8 @@
- var common = require('../common');
- var assert = require('assert');
--var Readable = require('_stream_readable');
--var Writable = require('_stream_writable');
-+var Readable = require('../../lib/_stream_readable');
-+var Writable = require('../../lib/_stream_writable');
- var EE = require('events').EventEmitter;
- var testRuns = 0, completedRuns = 0;
-diff --git a/test/simple/test-stream2-set-encoding.js b/test/simple/test-stream2-set-encoding.js
-index 5d2c32a..685531b 100644
---- a/test/simple/test-stream2-set-encoding.js
-+++ b/test/simple/test-stream2-set-encoding.js
-@@ -22,7 +22,7 @@
- var common = require('../common.js');
- var assert = require('assert');
--var R = require('_stream_readable');
-+var R = require('../../lib/_stream_readable');
- var util = require('util');
- // tiny node-tap lookalike.
-diff --git a/test/simple/test-stream2-transform.js b/test/simple/test-stream2-transform.js
-index 9c9ddd8..a0cacc6 100644
---- a/test/simple/test-stream2-transform.js
-+++ b/test/simple/test-stream2-transform.js
-@@ -21,8 +21,8 @@
- var assert = require('assert');
- var common = require('../common.js');
--var PassThrough = require('_stream_passthrough');
--var Transform = require('_stream_transform');
-+var PassThrough = require('../../').PassThrough;
-+var Transform = require('../../').Transform;
- // tiny node-tap lookalike.
- var tests = [];
-diff --git a/test/simple/test-stream2-unpipe-drain.js b/test/simple/test-stream2-unpipe-drain.js
-index d66dc3c..365b327 100644
---- a/test/simple/test-stream2-unpipe-drain.js
-+++ b/test/simple/test-stream2-unpipe-drain.js
-@@ -22,7 +22,7 @@
- var common = require('../common.js');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- var crypto = require('crypto');
- var util = require('util');
-diff --git a/test/simple/test-stream2-unpipe-leak.js b/test/simple/test-stream2-unpipe-leak.js
-index 99f8746..17c92ae 100644
---- a/test/simple/test-stream2-unpipe-leak.js
-+++ b/test/simple/test-stream2-unpipe-leak.js
-@@ -22,7 +22,7 @@
- var common = require('../common.js');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- var chunk = new Buffer('hallo');
-diff --git a/test/simple/test-stream2-writable.js b/test/simple/test-stream2-writable.js
-index 704100c..209c3a6 100644
---- a/test/simple/test-stream2-writable.js
-+++ b/test/simple/test-stream2-writable.js
-@@ -20,8 +20,8 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
- var common = require('../common.js');
--var W = require('_stream_writable');
--var D = require('_stream_duplex');
-+var W = require('../../').Writable;
-+var D = require('../../').Duplex;
- var assert = require('assert');
- var util = require('util');
-diff --git a/test/simple/test-stream3-pause-then-read.js b/test/simple/test-stream3-pause-then-read.js
-index b91bde3..2f72c15 100644
---- a/test/simple/test-stream3-pause-then-read.js
-+++ b/test/simple/test-stream3-pause-then-read.js
-@@ -22,7 +22,7 @@
- var common = require('../common');
- var assert = require('assert');
--var stream = require('stream');
-+var stream = require('../../');
- var Readable = stream.Readable;
- var Writable = stream.Writable;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js
deleted file mode 100644 (file)
index b513d61..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// a duplex stream is just a stream that is both readable and writable.
-// Since JS doesn't have multiple prototypal inheritance, this class
-// prototypally inherits from Readable, and then parasitically from
-// Writable.
-
-module.exports = Duplex;
-
-/*<replacement>*/
-var objectKeys = Object.keys || function (obj) {
-  var keys = [];
-  for (var key in obj) keys.push(key);
-  return keys;
-}
-/*</replacement>*/
-
-
-/*<replacement>*/
-var util = require('core-util-is');
-util.inherits = require('inherits');
-/*</replacement>*/
-
-var Readable = require('./_stream_readable');
-var Writable = require('./_stream_writable');
-
-util.inherits(Duplex, Readable);
-
-forEach(objectKeys(Writable.prototype), function(method) {
-  if (!Duplex.prototype[method])
-    Duplex.prototype[method] = Writable.prototype[method];
-});
-
-function Duplex(options) {
-  if (!(this instanceof Duplex))
-    return new Duplex(options);
-
-  Readable.call(this, options);
-  Writable.call(this, options);
-
-  if (options && options.readable === false)
-    this.readable = false;
-
-  if (options && options.writable === false)
-    this.writable = false;
-
-  this.allowHalfOpen = true;
-  if (options && options.allowHalfOpen === false)
-    this.allowHalfOpen = false;
-
-  this.once('end', onend);
-}
-
-// the no-half-open enforcer
-function onend() {
-  // if we allow half-open state, or if the writable side ended,
-  // then we're ok.
-  if (this.allowHalfOpen || this._writableState.ended)
-    return;
-
-  // no more data can be written.
-  // But allow more writes to happen in this tick.
-  process.nextTick(this.end.bind(this));
-}
-
-function forEach (xs, f) {
-  for (var i = 0, l = xs.length; i < l; i++) {
-    f(xs[i], i);
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js
deleted file mode 100644 (file)
index 895ca50..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// a passthrough stream.
-// basically just the most minimal sort of Transform stream.
-// Every written chunk gets output as-is.
-
-module.exports = PassThrough;
-
-var Transform = require('./_stream_transform');
-
-/*<replacement>*/
-var util = require('core-util-is');
-util.inherits = require('inherits');
-/*</replacement>*/
-
-util.inherits(PassThrough, Transform);
-
-function PassThrough(options) {
-  if (!(this instanceof PassThrough))
-    return new PassThrough(options);
-
-  Transform.call(this, options);
-}
-
-PassThrough.prototype._transform = function(chunk, encoding, cb) {
-  cb(null, chunk);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js
deleted file mode 100644 (file)
index 19ab358..0000000
+++ /dev/null
@@ -1,951 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-module.exports = Readable;
-
-/*<replacement>*/
-var isArray = require('isarray');
-/*</replacement>*/
-
-
-/*<replacement>*/
-var Buffer = require('buffer').Buffer;
-/*</replacement>*/
-
-Readable.ReadableState = ReadableState;
-
-var EE = require('events').EventEmitter;
-
-/*<replacement>*/
-if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
-  return emitter.listeners(type).length;
-};
-/*</replacement>*/
-
-var Stream = require('stream');
-
-/*<replacement>*/
-var util = require('core-util-is');
-util.inherits = require('inherits');
-/*</replacement>*/
-
-var StringDecoder;
-
-
-/*<replacement>*/
-var debug = require('util');
-if (debug && debug.debuglog) {
-  debug = debug.debuglog('stream');
-} else {
-  debug = function () {};
-}
-/*</replacement>*/
-
-
-util.inherits(Readable, Stream);
-
-function ReadableState(options, stream) {
-  var Duplex = require('./_stream_duplex');
-
-  options = options || {};
-
-  // the point at which it stops calling _read() to fill the buffer
-  // Note: 0 is a valid value, means "don't call _read preemptively ever"
-  var hwm = options.highWaterMark;
-  var defaultHwm = options.objectMode ? 16 : 16 * 1024;
-  this.highWaterMark = (hwm || hwm === 0) ? hwm : defaultHwm;
-
-  // cast to ints.
-  this.highWaterMark = ~~this.highWaterMark;
-
-  this.buffer = [];
-  this.length = 0;
-  this.pipes = null;
-  this.pipesCount = 0;
-  this.flowing = null;
-  this.ended = false;
-  this.endEmitted = false;
-  this.reading = false;
-
-  // a flag to be able to tell if the onwrite cb is called immediately,
-  // or on a later tick.  We set this to true at first, because any
-  // actions that shouldn't happen until "later" should generally also
-  // not happen before the first write call.
-  this.sync = true;
-
-  // whenever we return null, then we set a flag to say
-  // that we're awaiting a 'readable' event emission.
-  this.needReadable = false;
-  this.emittedReadable = false;
-  this.readableListening = false;
-
-
-  // object stream flag. Used to make read(n) ignore n and to
-  // make all the buffer merging and length checks go away
-  this.objectMode = !!options.objectMode;
-
-  if (stream instanceof Duplex)
-    this.objectMode = this.objectMode || !!options.readableObjectMode;
-
-  // Crypto is kind of old and crusty.  Historically, its default string
-  // encoding is 'binary' so we have to make this configurable.
-  // Everything else in the universe uses 'utf8', though.
-  this.defaultEncoding = options.defaultEncoding || 'utf8';
-
-  // when piping, we only care about 'readable' events that happen
-  // after read()ing all the bytes and not getting any pushback.
-  this.ranOut = false;
-
-  // the number of writers that are awaiting a drain event in .pipe()s
-  this.awaitDrain = 0;
-
-  // if true, a maybeReadMore has been scheduled
-  this.readingMore = false;
-
-  this.decoder = null;
-  this.encoding = null;
-  if (options.encoding) {
-    if (!StringDecoder)
-      StringDecoder = require('string_decoder/').StringDecoder;
-    this.decoder = new StringDecoder(options.encoding);
-    this.encoding = options.encoding;
-  }
-}
-
-function Readable(options) {
-  var Duplex = require('./_stream_duplex');
-
-  if (!(this instanceof Readable))
-    return new Readable(options);
-
-  this._readableState = new ReadableState(options, this);
-
-  // legacy
-  this.readable = true;
-
-  Stream.call(this);
-}
-
-// Manually shove something into the read() buffer.
-// This returns true if the highWaterMark has not been hit yet,
-// similar to how Writable.write() returns true if you should
-// write() some more.
-Readable.prototype.push = function(chunk, encoding) {
-  var state = this._readableState;
-
-  if (util.isString(chunk) && !state.objectMode) {
-    encoding = encoding || state.defaultEncoding;
-    if (encoding !== state.encoding) {
-      chunk = new Buffer(chunk, encoding);
-      encoding = '';
-    }
-  }
-
-  return readableAddChunk(this, state, chunk, encoding, false);
-};
-
-// Unshift should *always* be something directly out of read()
-Readable.prototype.unshift = function(chunk) {
-  var state = this._readableState;
-  return readableAddChunk(this, state, chunk, '', true);
-};
-
-function readableAddChunk(stream, state, chunk, encoding, addToFront) {
-  var er = chunkInvalid(state, chunk);
-  if (er) {
-    stream.emit('error', er);
-  } else if (util.isNullOrUndefined(chunk)) {
-    state.reading = false;
-    if (!state.ended)
-      onEofChunk(stream, state);
-  } else if (state.objectMode || chunk && chunk.length > 0) {
-    if (state.ended && !addToFront) {
-      var e = new Error('stream.push() after EOF');
-      stream.emit('error', e);
-    } else if (state.endEmitted && addToFront) {
-      var e = new Error('stream.unshift() after end event');
-      stream.emit('error', e);
-    } else {
-      if (state.decoder && !addToFront && !encoding)
-        chunk = state.decoder.write(chunk);
-
-      if (!addToFront)
-        state.reading = false;
-
-      // if we want the data now, just emit it.
-      if (state.flowing && state.length === 0 && !state.sync) {
-        stream.emit('data', chunk);
-        stream.read(0);
-      } else {
-        // update the buffer info.
-        state.length += state.objectMode ? 1 : chunk.length;
-        if (addToFront)
-          state.buffer.unshift(chunk);
-        else
-          state.buffer.push(chunk);
-
-        if (state.needReadable)
-          emitReadable(stream);
-      }
-
-      maybeReadMore(stream, state);
-    }
-  } else if (!addToFront) {
-    state.reading = false;
-  }
-
-  return needMoreData(state);
-}
-
-
-
-// if it's past the high water mark, we can push in some more.
-// Also, if we have no data yet, we can stand some
-// more bytes.  This is to work around cases where hwm=0,
-// such as the repl.  Also, if the push() triggered a
-// readable event, and the user called read(largeNumber) such that
-// needReadable was set, then we ought to push more, so that another
-// 'readable' event will be triggered.
-function needMoreData(state) {
-  return !state.ended &&
-         (state.needReadable ||
-          state.length < state.highWaterMark ||
-          state.length === 0);
-}
-
-// backwards compatibility.
-Readable.prototype.setEncoding = function(enc) {
-  if (!StringDecoder)
-    StringDecoder = require('string_decoder/').StringDecoder;
-  this._readableState.decoder = new StringDecoder(enc);
-  this._readableState.encoding = enc;
-  return this;
-};
-
-// Don't raise the hwm > 128MB
-var MAX_HWM = 0x800000;
-function roundUpToNextPowerOf2(n) {
-  if (n >= MAX_HWM) {
-    n = MAX_HWM;
-  } else {
-    // Get the next highest power of 2
-    n--;
-    for (var p = 1; p < 32; p <<= 1) n |= n >> p;
-    n++;
-  }
-  return n;
-}
-
-function howMuchToRead(n, state) {
-  if (state.length === 0 && state.ended)
-    return 0;
-
-  if (state.objectMode)
-    return n === 0 ? 0 : 1;
-
-  if (isNaN(n) || util.isNull(n)) {
-    // only flow one buffer at a time
-    if (state.flowing && state.buffer.length)
-      return state.buffer[0].length;
-    else
-      return state.length;
-  }
-
-  if (n <= 0)
-    return 0;
-
-  // If we're asking for more than the target buffer level,
-  // then raise the water mark.  Bump up to the next highest
-  // power of 2, to prevent increasing it excessively in tiny
-  // amounts.
-  if (n > state.highWaterMark)
-    state.highWaterMark = roundUpToNextPowerOf2(n);
-
-  // don't have that much.  return null, unless we've ended.
-  if (n > state.length) {
-    if (!state.ended) {
-      state.needReadable = true;
-      return 0;
-    } else
-      return state.length;
-  }
-
-  return n;
-}
-
-// you can override either this method, or the async _read(n) below.
-Readable.prototype.read = function(n) {
-  debug('read', n);
-  var state = this._readableState;
-  var nOrig = n;
-
-  if (!util.isNumber(n) || n > 0)
-    state.emittedReadable = false;
-
-  // if we're doing read(0) to trigger a readable event, but we
-  // already have a bunch of data in the buffer, then just trigger
-  // the 'readable' event and move on.
-  if (n === 0 &&
-      state.needReadable &&
-      (state.length >= state.highWaterMark || state.ended)) {
-    debug('read: emitReadable', state.length, state.ended);
-    if (state.length === 0 && state.ended)
-      endReadable(this);
-    else
-      emitReadable(this);
-    return null;
-  }
-
-  n = howMuchToRead(n, state);
-
-  // if we've ended, and we're now clear, then finish it up.
-  if (n === 0 && state.ended) {
-    if (state.length === 0)
-      endReadable(this);
-    return null;
-  }
-
-  // All the actual chunk generation logic needs to be
-  // *below* the call to _read.  The reason is that in certain
-  // synthetic stream cases, such as passthrough streams, _read
-  // may be a completely synchronous operation which may change
-  // the state of the read buffer, providing enough data when
-  // before there was *not* enough.
-  //
-  // So, the steps are:
-  // 1. Figure out what the state of things will be after we do
-  // a read from the buffer.
-  //
-  // 2. If that resulting state will trigger a _read, then call _read.
-  // Note that this may be asynchronous, or synchronous.  Yes, it is
-  // deeply ugly to write APIs this way, but that still doesn't mean
-  // that the Readable class should behave improperly, as streams are
-  // designed to be sync/async agnostic.
-  // Take note if the _read call is sync or async (ie, if the read call
-  // has returned yet), so that we know whether or not it's safe to emit
-  // 'readable' etc.
-  //
-  // 3. Actually pull the requested chunks out of the buffer and return.
-
-  // if we need a readable event, then we need to do some reading.
-  var doRead = state.needReadable;
-  debug('need readable', doRead);
-
-  // if we currently have less than the highWaterMark, then also read some
-  if (state.length === 0 || state.length - n < state.highWaterMark) {
-    doRead = true;
-    debug('length less than watermark', doRead);
-  }
-
-  // however, if we've ended, then there's no point, and if we're already
-  // reading, then it's unnecessary.
-  if (state.ended || state.reading) {
-    doRead = false;
-    debug('reading or ended', doRead);
-  }
-
-  if (doRead) {
-    debug('do read');
-    state.reading = true;
-    state.sync = true;
-    // if the length is currently zero, then we *need* a readable event.
-    if (state.length === 0)
-      state.needReadable = true;
-    // call internal read method
-    this._read(state.highWaterMark);
-    state.sync = false;
-  }
-
-  // If _read pushed data synchronously, then `reading` will be false,
-  // and we need to re-evaluate how much data we can return to the user.
-  if (doRead && !state.reading)
-    n = howMuchToRead(nOrig, state);
-
-  var ret;
-  if (n > 0)
-    ret = fromList(n, state);
-  else
-    ret = null;
-
-  if (util.isNull(ret)) {
-    state.needReadable = true;
-    n = 0;
-  }
-
-  state.length -= n;
-
-  // If we have nothing in the buffer, then we want to know
-  // as soon as we *do* get something into the buffer.
-  if (state.length === 0 && !state.ended)
-    state.needReadable = true;
-
-  // If we tried to read() past the EOF, then emit end on the next tick.
-  if (nOrig !== n && state.ended && state.length === 0)
-    endReadable(this);
-
-  if (!util.isNull(ret))
-    this.emit('data', ret);
-
-  return ret;
-};
-
-function chunkInvalid(state, chunk) {
-  var er = null;
-  if (!util.isBuffer(chunk) &&
-      !util.isString(chunk) &&
-      !util.isNullOrUndefined(chunk) &&
-      !state.objectMode) {
-    er = new TypeError('Invalid non-string/buffer chunk');
-  }
-  return er;
-}
-
-
-function onEofChunk(stream, state) {
-  if (state.decoder && !state.ended) {
-    var chunk = state.decoder.end();
-    if (chunk && chunk.length) {
-      state.buffer.push(chunk);
-      state.length += state.objectMode ? 1 : chunk.length;
-    }
-  }
-  state.ended = true;
-
-  // emit 'readable' now to make sure it gets picked up.
-  emitReadable(stream);
-}
-
-// Don't emit readable right away in sync mode, because this can trigger
-// another read() call => stack overflow.  This way, it might trigger
-// a nextTick recursion warning, but that's not so bad.
-function emitReadable(stream) {
-  var state = stream._readableState;
-  state.needReadable = false;
-  if (!state.emittedReadable) {
-    debug('emitReadable', state.flowing);
-    state.emittedReadable = true;
-    if (state.sync)
-      process.nextTick(function() {
-        emitReadable_(stream);
-      });
-    else
-      emitReadable_(stream);
-  }
-}
-
-function emitReadable_(stream) {
-  debug('emit readable');
-  stream.emit('readable');
-  flow(stream);
-}
-
-
-// at this point, the user has presumably seen the 'readable' event,
-// and called read() to consume some data.  that may have triggered
-// in turn another _read(n) call, in which case reading = true if
-// it's in progress.
-// However, if we're not ended, or reading, and the length < hwm,
-// then go ahead and try to read some more preemptively.
-function maybeReadMore(stream, state) {
-  if (!state.readingMore) {
-    state.readingMore = true;
-    process.nextTick(function() {
-      maybeReadMore_(stream, state);
-    });
-  }
-}
-
-function maybeReadMore_(stream, state) {
-  var len = state.length;
-  while (!state.reading && !state.flowing && !state.ended &&
-         state.length < state.highWaterMark) {
-    debug('maybeReadMore read 0');
-    stream.read(0);
-    if (len === state.length)
-      // didn't get any data, stop spinning.
-      break;
-    else
-      len = state.length;
-  }
-  state.readingMore = false;
-}
-
-// abstract method.  to be overridden in specific implementation classes.
-// call cb(er, data) where data is <= n in length.
-// for virtual (non-string, non-buffer) streams, "length" is somewhat
-// arbitrary, and perhaps not very meaningful.
-Readable.prototype._read = function(n) {
-  this.emit('error', new Error('not implemented'));
-};
-
-Readable.prototype.pipe = function(dest, pipeOpts) {
-  var src = this;
-  var state = this._readableState;
-
-  switch (state.pipesCount) {
-    case 0:
-      state.pipes = dest;
-      break;
-    case 1:
-      state.pipes = [state.pipes, dest];
-      break;
-    default:
-      state.pipes.push(dest);
-      break;
-  }
-  state.pipesCount += 1;
-  debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);
-
-  var doEnd = (!pipeOpts || pipeOpts.end !== false) &&
-              dest !== process.stdout &&
-              dest !== process.stderr;
-
-  var endFn = doEnd ? onend : cleanup;
-  if (state.endEmitted)
-    process.nextTick(endFn);
-  else
-    src.once('end', endFn);
-
-  dest.on('unpipe', onunpipe);
-  function onunpipe(readable) {
-    debug('onunpipe');
-    if (readable === src) {
-      cleanup();
-    }
-  }
-
-  function onend() {
-    debug('onend');
-    dest.end();
-  }
-
-  // when the dest drains, it reduces the awaitDrain counter
-  // on the source.  This would be more elegant with a .once()
-  // handler in flow(), but adding and removing repeatedly is
-  // too slow.
-  var ondrain = pipeOnDrain(src);
-  dest.on('drain', ondrain);
-
-  function cleanup() {
-    debug('cleanup');
-    // cleanup event handlers once the pipe is broken
-    dest.removeListener('close', onclose);
-    dest.removeListener('finish', onfinish);
-    dest.removeListener('drain', ondrain);
-    dest.removeListener('error', onerror);
-    dest.removeListener('unpipe', onunpipe);
-    src.removeListener('end', onend);
-    src.removeListener('end', cleanup);
-    src.removeListener('data', ondata);
-
-    // if the reader is waiting for a drain event from this
-    // specific writer, then it would cause it to never start
-    // flowing again.
-    // So, if this is awaiting a drain, then we just call it now.
-    // If we don't know, then assume that we are waiting for one.
-    if (state.awaitDrain &&
-        (!dest._writableState || dest._writableState.needDrain))
-      ondrain();
-  }
-
-  src.on('data', ondata);
-  function ondata(chunk) {
-    debug('ondata');
-    var ret = dest.write(chunk);
-    if (false === ret) {
-      debug('false write response, pause',
-            src._readableState.awaitDrain);
-      src._readableState.awaitDrain++;
-      src.pause();
-    }
-  }
-
-  // if the dest has an error, then stop piping into it.
-  // however, don't suppress the throwing behavior for this.
-  function onerror(er) {
-    debug('onerror', er);
-    unpipe();
-    dest.removeListener('error', onerror);
-    if (EE.listenerCount(dest, 'error') === 0)
-      dest.emit('error', er);
-  }
-  // This is a brutally ugly hack to make sure that our error handler
-  // is attached before any userland ones.  NEVER DO THIS.
-  if (!dest._events || !dest._events.error)
-    dest.on('error', onerror);
-  else if (isArray(dest._events.error))
-    dest._events.error.unshift(onerror);
-  else
-    dest._events.error = [onerror, dest._events.error];
-
-
-
-  // Both close and finish should trigger unpipe, but only once.
-  function onclose() {
-    dest.removeListener('finish', onfinish);
-    unpipe();
-  }
-  dest.once('close', onclose);
-  function onfinish() {
-    debug('onfinish');
-    dest.removeListener('close', onclose);
-    unpipe();
-  }
-  dest.once('finish', onfinish);
-
-  function unpipe() {
-    debug('unpipe');
-    src.unpipe(dest);
-  }
-
-  // tell the dest that it's being piped to
-  dest.emit('pipe', src);
-
-  // start the flow if it hasn't been started already.
-  if (!state.flowing) {
-    debug('pipe resume');
-    src.resume();
-  }
-
-  return dest;
-};
-
-function pipeOnDrain(src) {
-  return function() {
-    var state = src._readableState;
-    debug('pipeOnDrain', state.awaitDrain);
-    if (state.awaitDrain)
-      state.awaitDrain--;
-    if (state.awaitDrain === 0 && EE.listenerCount(src, 'data')) {
-      state.flowing = true;
-      flow(src);
-    }
-  };
-}
-
-
-Readable.prototype.unpipe = function(dest) {
-  var state = this._readableState;
-
-  // if we're not piping anywhere, then do nothing.
-  if (state.pipesCount === 0)
-    return this;
-
-  // just one destination.  most common case.
-  if (state.pipesCount === 1) {
-    // passed in one, but it's not the right one.
-    if (dest && dest !== state.pipes)
-      return this;
-
-    if (!dest)
-      dest = state.pipes;
-
-    // got a match.
-    state.pipes = null;
-    state.pipesCount = 0;
-    state.flowing = false;
-    if (dest)
-      dest.emit('unpipe', this);
-    return this;
-  }
-
-  // slow case. multiple pipe destinations.
-
-  if (!dest) {
-    // remove all.
-    var dests = state.pipes;
-    var len = state.pipesCount;
-    state.pipes = null;
-    state.pipesCount = 0;
-    state.flowing = false;
-
-    for (var i = 0; i < len; i++)
-      dests[i].emit('unpipe', this);
-    return this;
-  }
-
-  // try to find the right one.
-  var i = indexOf(state.pipes, dest);
-  if (i === -1)
-    return this;
-
-  state.pipes.splice(i, 1);
-  state.pipesCount -= 1;
-  if (state.pipesCount === 1)
-    state.pipes = state.pipes[0];
-
-  dest.emit('unpipe', this);
-
-  return this;
-};
-
-// set up data events if they are asked for
-// Ensure readable listeners eventually get something
-Readable.prototype.on = function(ev, fn) {
-  var res = Stream.prototype.on.call(this, ev, fn);
-
-  // If listening to data, and it has not explicitly been paused,
-  // then call resume to start the flow of data on the next tick.
-  if (ev === 'data' && false !== this._readableState.flowing) {
-    this.resume();
-  }
-
-  if (ev === 'readable' && this.readable) {
-    var state = this._readableState;
-    if (!state.readableListening) {
-      state.readableListening = true;
-      state.emittedReadable = false;
-      state.needReadable = true;
-      if (!state.reading) {
-        var self = this;
-        process.nextTick(function() {
-          debug('readable nexttick read 0');
-          self.read(0);
-        });
-      } else if (state.length) {
-        emitReadable(this, state);
-      }
-    }
-  }
-
-  return res;
-};
-Readable.prototype.addListener = Readable.prototype.on;
-
-// pause() and resume() are remnants of the legacy readable stream API
-// If the user uses them, then switch into old mode.
-Readable.prototype.resume = function() {
-  var state = this._readableState;
-  if (!state.flowing) {
-    debug('resume');
-    state.flowing = true;
-    if (!state.reading) {
-      debug('resume read 0');
-      this.read(0);
-    }
-    resume(this, state);
-  }
-  return this;
-};
-
-function resume(stream, state) {
-  if (!state.resumeScheduled) {
-    state.resumeScheduled = true;
-    process.nextTick(function() {
-      resume_(stream, state);
-    });
-  }
-}
-
-function resume_(stream, state) {
-  state.resumeScheduled = false;
-  stream.emit('resume');
-  flow(stream);
-  if (state.flowing && !state.reading)
-    stream.read(0);
-}
-
-Readable.prototype.pause = function() {
-  debug('call pause flowing=%j', this._readableState.flowing);
-  if (false !== this._readableState.flowing) {
-    debug('pause');
-    this._readableState.flowing = false;
-    this.emit('pause');
-  }
-  return this;
-};
-
-function flow(stream) {
-  var state = stream._readableState;
-  debug('flow', state.flowing);
-  if (state.flowing) {
-    do {
-      var chunk = stream.read();
-    } while (null !== chunk && state.flowing);
-  }
-}
-
-// wrap an old-style stream as the async data source.
-// This is *not* part of the readable stream interface.
-// It is an ugly unfortunate mess of history.
-Readable.prototype.wrap = function(stream) {
-  var state = this._readableState;
-  var paused = false;
-
-  var self = this;
-  stream.on('end', function() {
-    debug('wrapped end');
-    if (state.decoder && !state.ended) {
-      var chunk = state.decoder.end();
-      if (chunk && chunk.length)
-        self.push(chunk);
-    }
-
-    self.push(null);
-  });
-
-  stream.on('data', function(chunk) {
-    debug('wrapped data');
-    if (state.decoder)
-      chunk = state.decoder.write(chunk);
-    if (!chunk || !state.objectMode && !chunk.length)
-      return;
-
-    var ret = self.push(chunk);
-    if (!ret) {
-      paused = true;
-      stream.pause();
-    }
-  });
-
-  // proxy all the other methods.
-  // important when wrapping filters and duplexes.
-  for (var i in stream) {
-    if (util.isFunction(stream[i]) && util.isUndefined(this[i])) {
-      this[i] = function(method) { return function() {
-        return stream[method].apply(stream, arguments);
-      }}(i);
-    }
-  }
-
-  // proxy certain important events.
-  var events = ['error', 'close', 'destroy', 'pause', 'resume'];
-  forEach(events, function(ev) {
-    stream.on(ev, self.emit.bind(self, ev));
-  });
-
-  // when we try to consume some more bytes, simply unpause the
-  // underlying stream.
-  self._read = function(n) {
-    debug('wrapped _read', n);
-    if (paused) {
-      paused = false;
-      stream.resume();
-    }
-  };
-
-  return self;
-};
-
-
-
-// exposed for testing purposes only.
-Readable._fromList = fromList;
-
-// Pluck off n bytes from an array of buffers.
-// Length is the combined lengths of all the buffers in the list.
-function fromList(n, state) {
-  var list = state.buffer;
-  var length = state.length;
-  var stringMode = !!state.decoder;
-  var objectMode = !!state.objectMode;
-  var ret;
-
-  // nothing in the list, definitely empty.
-  if (list.length === 0)
-    return null;
-
-  if (length === 0)
-    ret = null;
-  else if (objectMode)
-    ret = list.shift();
-  else if (!n || n >= length) {
-    // read it all, truncate the array.
-    if (stringMode)
-      ret = list.join('');
-    else
-      ret = Buffer.concat(list, length);
-    list.length = 0;
-  } else {
-    // read just some of it.
-    if (n < list[0].length) {
-      // just take a part of the first list item.
-      // slice is the same for buffers and strings.
-      var buf = list[0];
-      ret = buf.slice(0, n);
-      list[0] = buf.slice(n);
-    } else if (n === list[0].length) {
-      // first list is a perfect match
-      ret = list.shift();
-    } else {
-      // complex case.
-      // we have enough to cover it, but it spans past the first buffer.
-      if (stringMode)
-        ret = '';
-      else
-        ret = new Buffer(n);
-
-      var c = 0;
-      for (var i = 0, l = list.length; i < l && c < n; i++) {
-        var buf = list[0];
-        var cpy = Math.min(n - c, buf.length);
-
-        if (stringMode)
-          ret += buf.slice(0, cpy);
-        else
-          buf.copy(ret, c, 0, cpy);
-
-        if (cpy < buf.length)
-          list[0] = buf.slice(cpy);
-        else
-          list.shift();
-
-        c += cpy;
-      }
-    }
-  }
-
-  return ret;
-}
-
-function endReadable(stream) {
-  var state = stream._readableState;
-
-  // If we get here before consuming all the bytes, then that is a
-  // bug in node.  Should never happen.
-  if (state.length > 0)
-    throw new Error('endReadable called on non-empty stream');
-
-  if (!state.endEmitted) {
-    state.ended = true;
-    process.nextTick(function() {
-      // Check that we didn't get one last unshift.
-      if (!state.endEmitted && state.length === 0) {
-        state.endEmitted = true;
-        stream.readable = false;
-        stream.emit('end');
-      }
-    });
-  }
-}
-
-function forEach (xs, f) {
-  for (var i = 0, l = xs.length; i < l; i++) {
-    f(xs[i], i);
-  }
-}
-
-function indexOf (xs, x) {
-  for (var i = 0, l = xs.length; i < l; i++) {
-    if (xs[i] === x) return i;
-  }
-  return -1;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js
deleted file mode 100644 (file)
index 905c5e4..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-// a transform stream is a readable/writable stream where you do
-// something with the data.  Sometimes it's called a "filter",
-// but that's not a great name for it, since that implies a thing where
-// some bits pass through, and others are simply ignored.  (That would
-// be a valid example of a transform, of course.)
-//
-// While the output is causally related to the input, it's not a
-// necessarily symmetric or synchronous transformation.  For example,
-// a zlib stream might take multiple plain-text writes(), and then
-// emit a single compressed chunk some time in the future.
-//
-// Here's how this works:
-//
-// The Transform stream has all the aspects of the readable and writable
-// stream classes.  When you write(chunk), that calls _write(chunk,cb)
-// internally, and returns false if there's a lot of pending writes
-// buffered up.  When you call read(), that calls _read(n) until
-// there's enough pending readable data buffered up.
-//
-// In a transform stream, the written data is placed in a buffer.  When
-// _read(n) is called, it transforms the queued up data, calling the
-// buffered _write cb's as it consumes chunks.  If consuming a single
-// written chunk would result in multiple output chunks, then the first
-// outputted bit calls the readcb, and subsequent chunks just go into
-// the read buffer, and will cause it to emit 'readable' if necessary.
-//
-// This way, back-pressure is actually determined by the reading side,
-// since _read has to be called to start processing a new chunk.  However,
-// a pathological inflate type of transform can cause excessive buffering
-// here.  For example, imagine a stream where every byte of input is
-// interpreted as an integer from 0-255, and then results in that many
-// bytes of output.  Writing the 4 bytes {ff,ff,ff,ff} would result in
-// 1kb of data being output.  In this case, you could write a very small
-// amount of input, and end up with a very large amount of output.  In
-// such a pathological inflating mechanism, there'd be no way to tell
-// the system to stop doing the transform.  A single 4MB write could
-// cause the system to run out of memory.
-//
-// However, even in such a pathological case, only a single written chunk
-// would be consumed, and then the rest would wait (un-transformed) until
-// the results of the previous transformed chunk were consumed.
-
-module.exports = Transform;
-
-var Duplex = require('./_stream_duplex');
-
-/*<replacement>*/
-var util = require('core-util-is');
-util.inherits = require('inherits');
-/*</replacement>*/
-
-util.inherits(Transform, Duplex);
-
-
-function TransformState(options, stream) {
-  this.afterTransform = function(er, data) {
-    return afterTransform(stream, er, data);
-  };
-
-  this.needTransform = false;
-  this.transforming = false;
-  this.writecb = null;
-  this.writechunk = null;
-}
-
-function afterTransform(stream, er, data) {
-  var ts = stream._transformState;
-  ts.transforming = false;
-
-  var cb = ts.writecb;
-
-  if (!cb)
-    return stream.emit('error', new Error('no writecb in Transform class'));
-
-  ts.writechunk = null;
-  ts.writecb = null;
-
-  if (!util.isNullOrUndefined(data))
-    stream.push(data);
-
-  if (cb)
-    cb(er);
-
-  var rs = stream._readableState;
-  rs.reading = false;
-  if (rs.needReadable || rs.length < rs.highWaterMark) {
-    stream._read(rs.highWaterMark);
-  }
-}
-
-
-function Transform(options) {
-  if (!(this instanceof Transform))
-    return new Transform(options);
-
-  Duplex.call(this, options);
-
-  this._transformState = new TransformState(options, this);
-
-  // when the writable side finishes, then flush out anything remaining.
-  var stream = this;
-
-  // start out asking for a readable event once data is transformed.
-  this._readableState.needReadable = true;
-
-  // we have implemented the _read method, and done the other things
-  // that Readable wants before the first _read call, so unset the
-  // sync guard flag.
-  this._readableState.sync = false;
-
-  this.once('prefinish', function() {
-    if (util.isFunction(this._flush))
-      this._flush(function(er) {
-        done(stream, er);
-      });
-    else
-      done(stream);
-  });
-}
-
-Transform.prototype.push = function(chunk, encoding) {
-  this._transformState.needTransform = false;
-  return Duplex.prototype.push.call(this, chunk, encoding);
-};
-
-// This is the part where you do stuff!
-// override this function in implementation classes.
-// 'chunk' is an input chunk.
-//
-// Call `push(newChunk)` to pass along transformed output
-// to the readable side.  You may call 'push' zero or more times.
-//
-// Call `cb(err)` when you are done with this chunk.  If you pass
-// an error, then that'll put the hurt on the whole operation.  If you
-// never call cb(), then you'll never get another chunk.
-Transform.prototype._transform = function(chunk, encoding, cb) {
-  throw new Error('not implemented');
-};
-
-Transform.prototype._write = function(chunk, encoding, cb) {
-  var ts = this._transformState;
-  ts.writecb = cb;
-  ts.writechunk = chunk;
-  ts.writeencoding = encoding;
-  if (!ts.transforming) {
-    var rs = this._readableState;
-    if (ts.needTransform ||
-        rs.needReadable ||
-        rs.length < rs.highWaterMark)
-      this._read(rs.highWaterMark);
-  }
-};
-
-// Doesn't matter what the args are here.
-// _transform does all the work.
-// That we got here means that the readable side wants more data.
-Transform.prototype._read = function(n) {
-  var ts = this._transformState;
-
-  if (!util.isNull(ts.writechunk) && ts.writecb && !ts.transforming) {
-    ts.transforming = true;
-    this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);
-  } else {
-    // mark that we need a transform, so that any data that comes in
-    // will get processed, now that we've asked for it.
-    ts.needTransform = true;
-  }
-};
-
-
-function done(stream, er) {
-  if (er)
-    return stream.emit('error', er);
-
-  // if there's nothing in the write buffer, then that means
-  // that nothing more will ever be provided
-  var ws = stream._writableState;
-  var ts = stream._transformState;
-
-  if (ws.length)
-    throw new Error('calling transform done when ws.length != 0');
-
-  if (ts.transforming)
-    throw new Error('calling transform done when still transforming');
-
-  return stream.push(null);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js
deleted file mode 100644 (file)
index db8539c..0000000
+++ /dev/null
@@ -1,477 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// A bit simpler than readable streams.
-// Implement an async ._write(chunk, cb), and it'll handle all
-// the drain event emission and buffering.
-
-module.exports = Writable;
-
-/*<replacement>*/
-var Buffer = require('buffer').Buffer;
-/*</replacement>*/
-
-Writable.WritableState = WritableState;
-
-
-/*<replacement>*/
-var util = require('core-util-is');
-util.inherits = require('inherits');
-/*</replacement>*/
-
-var Stream = require('stream');
-
-util.inherits(Writable, Stream);
-
-function WriteReq(chunk, encoding, cb) {
-  this.chunk = chunk;
-  this.encoding = encoding;
-  this.callback = cb;
-}
-
-function WritableState(options, stream) {
-  var Duplex = require('./_stream_duplex');
-
-  options = options || {};
-
-  // the point at which write() starts returning false
-  // Note: 0 is a valid value, means that we always return false if
-  // the entire buffer is not flushed immediately on write()
-  var hwm = options.highWaterMark;
-  var defaultHwm = options.objectMode ? 16 : 16 * 1024;
-  this.highWaterMark = (hwm || hwm === 0) ? hwm : defaultHwm;
-
-  // object stream flag to indicate whether or not this stream
-  // contains buffers or objects.
-  this.objectMode = !!options.objectMode;
-
-  if (stream instanceof Duplex)
-    this.objectMode = this.objectMode || !!options.writableObjectMode;
-
-  // cast to ints.
-  this.highWaterMark = ~~this.highWaterMark;
-
-  this.needDrain = false;
-  // at the start of calling end()
-  this.ending = false;
-  // when end() has been called, and returned
-  this.ended = false;
-  // when 'finish' is emitted
-  this.finished = false;
-
-  // should we decode strings into buffers before passing to _write?
-  // this is here so that some node-core streams can optimize string
-  // handling at a lower level.
-  var noDecode = options.decodeStrings === false;
-  this.decodeStrings = !noDecode;
-
-  // Crypto is kind of old and crusty.  Historically, its default string
-  // encoding is 'binary' so we have to make this configurable.
-  // Everything else in the universe uses 'utf8', though.
-  this.defaultEncoding = options.defaultEncoding || 'utf8';
-
-  // not an actual buffer we keep track of, but a measurement
-  // of how much we're waiting to get pushed to some underlying
-  // socket or file.
-  this.length = 0;
-
-  // a flag to see when we're in the middle of a write.
-  this.writing = false;
-
-  // when true all writes will be buffered until .uncork() call
-  this.corked = 0;
-
-  // a flag to be able to tell if the onwrite cb is called immediately,
-  // or on a later tick.  We set this to true at first, because any
-  // actions that shouldn't happen until "later" should generally also
-  // not happen before the first write call.
-  this.sync = true;
-
-  // a flag to know if we're processing previously buffered items, which
-  // may call the _write() callback in the same tick, so that we don't
-  // end up in an overlapped onwrite situation.
-  this.bufferProcessing = false;
-
-  // the callback that's passed to _write(chunk,cb)
-  this.onwrite = function(er) {
-    onwrite(stream, er);
-  };
-
-  // the callback that the user supplies to write(chunk,encoding,cb)
-  this.writecb = null;
-
-  // the amount that is being written when _write is called.
-  this.writelen = 0;
-
-  this.buffer = [];
-
-  // number of pending user-supplied write callbacks
-  // this must be 0 before 'finish' can be emitted
-  this.pendingcb = 0;
-
-  // emit prefinish if the only thing we're waiting for is _write cbs
-  // This is relevant for synchronous Transform streams
-  this.prefinished = false;
-
-  // True if the error was already emitted and should not be thrown again
-  this.errorEmitted = false;
-}
-
-function Writable(options) {
-  var Duplex = require('./_stream_duplex');
-
-  // Writable ctor is applied to Duplexes, though they're not
-  // instanceof Writable, they're instanceof Readable.
-  if (!(this instanceof Writable) && !(this instanceof Duplex))
-    return new Writable(options);
-
-  this._writableState = new WritableState(options, this);
-
-  // legacy.
-  this.writable = true;
-
-  Stream.call(this);
-}
-
-// Otherwise people can pipe Writable streams, which is just wrong.
-Writable.prototype.pipe = function() {
-  this.emit('error', new Error('Cannot pipe. Not readable.'));
-};
-
-
-function writeAfterEnd(stream, state, cb) {
-  var er = new Error('write after end');
-  // TODO: defer error events consistently everywhere, not just the cb
-  stream.emit('error', er);
-  process.nextTick(function() {
-    cb(er);
-  });
-}
-
-// If we get something that is not a buffer, string, null, or undefined,
-// and we're not in objectMode, then that's an error.
-// Otherwise stream chunks are all considered to be of length=1, and the
-// watermarks determine how many objects to keep in the buffer, rather than
-// how many bytes or characters.
-function validChunk(stream, state, chunk, cb) {
-  var valid = true;
-  if (!util.isBuffer(chunk) &&
-      !util.isString(chunk) &&
-      !util.isNullOrUndefined(chunk) &&
-      !state.objectMode) {
-    var er = new TypeError('Invalid non-string/buffer chunk');
-    stream.emit('error', er);
-    process.nextTick(function() {
-      cb(er);
-    });
-    valid = false;
-  }
-  return valid;
-}
-
-Writable.prototype.write = function(chunk, encoding, cb) {
-  var state = this._writableState;
-  var ret = false;
-
-  if (util.isFunction(encoding)) {
-    cb = encoding;
-    encoding = null;
-  }
-
-  if (util.isBuffer(chunk))
-    encoding = 'buffer';
-  else if (!encoding)
-    encoding = state.defaultEncoding;
-
-  if (!util.isFunction(cb))
-    cb = function() {};
-
-  if (state.ended)
-    writeAfterEnd(this, state, cb);
-  else if (validChunk(this, state, chunk, cb)) {
-    state.pendingcb++;
-    ret = writeOrBuffer(this, state, chunk, encoding, cb);
-  }
-
-  return ret;
-};
-
-Writable.prototype.cork = function() {
-  var state = this._writableState;
-
-  state.corked++;
-};
-
-Writable.prototype.uncork = function() {
-  var state = this._writableState;
-
-  if (state.corked) {
-    state.corked--;
-
-    if (!state.writing &&
-        !state.corked &&
-        !state.finished &&
-        !state.bufferProcessing &&
-        state.buffer.length)
-      clearBuffer(this, state);
-  }
-};
-
-function decodeChunk(state, chunk, encoding) {
-  if (!state.objectMode &&
-      state.decodeStrings !== false &&
-      util.isString(chunk)) {
-    chunk = new Buffer(chunk, encoding);
-  }
-  return chunk;
-}
-
-// if we're already writing something, then just put this
-// in the queue, and wait our turn.  Otherwise, call _write
-// If we return false, then we need a drain event, so set that flag.
-function writeOrBuffer(stream, state, chunk, encoding, cb) {
-  chunk = decodeChunk(state, chunk, encoding);
-  if (util.isBuffer(chunk))
-    encoding = 'buffer';
-  var len = state.objectMode ? 1 : chunk.length;
-
-  state.length += len;
-
-  var ret = state.length < state.highWaterMark;
-  // we must ensure that previous needDrain will not be reset to false.
-  if (!ret)
-    state.needDrain = true;
-
-  if (state.writing || state.corked)
-    state.buffer.push(new WriteReq(chunk, encoding, cb));
-  else
-    doWrite(stream, state, false, len, chunk, encoding, cb);
-
-  return ret;
-}
-
-function doWrite(stream, state, writev, len, chunk, encoding, cb) {
-  state.writelen = len;
-  state.writecb = cb;
-  state.writing = true;
-  state.sync = true;
-  if (writev)
-    stream._writev(chunk, state.onwrite);
-  else
-    stream._write(chunk, encoding, state.onwrite);
-  state.sync = false;
-}
-
-function onwriteError(stream, state, sync, er, cb) {
-  if (sync)
-    process.nextTick(function() {
-      state.pendingcb--;
-      cb(er);
-    });
-  else {
-    state.pendingcb--;
-    cb(er);
-  }
-
-  stream._writableState.errorEmitted = true;
-  stream.emit('error', er);
-}
-
-function onwriteStateUpdate(state) {
-  state.writing = false;
-  state.writecb = null;
-  state.length -= state.writelen;
-  state.writelen = 0;
-}
-
-function onwrite(stream, er) {
-  var state = stream._writableState;
-  var sync = state.sync;
-  var cb = state.writecb;
-
-  onwriteStateUpdate(state);
-
-  if (er)
-    onwriteError(stream, state, sync, er, cb);
-  else {
-    // Check if we're actually ready to finish, but don't emit yet
-    var finished = needFinish(stream, state);
-
-    if (!finished &&
-        !state.corked &&
-        !state.bufferProcessing &&
-        state.buffer.length) {
-      clearBuffer(stream, state);
-    }
-
-    if (sync) {
-      process.nextTick(function() {
-        afterWrite(stream, state, finished, cb);
-      });
-    } else {
-      afterWrite(stream, state, finished, cb);
-    }
-  }
-}
-
-function afterWrite(stream, state, finished, cb) {
-  if (!finished)
-    onwriteDrain(stream, state);
-  state.pendingcb--;
-  cb();
-  finishMaybe(stream, state);
-}
-
-// Must force callback to be called on nextTick, so that we don't
-// emit 'drain' before the write() consumer gets the 'false' return
-// value, and has a chance to attach a 'drain' listener.
-function onwriteDrain(stream, state) {
-  if (state.length === 0 && state.needDrain) {
-    state.needDrain = false;
-    stream.emit('drain');
-  }
-}
-
-
-// if there's something in the buffer waiting, then process it
-function clearBuffer(stream, state) {
-  state.bufferProcessing = true;
-
-  if (stream._writev && state.buffer.length > 1) {
-    // Fast case, write everything using _writev()
-    var cbs = [];
-    for (var c = 0; c < state.buffer.length; c++)
-      cbs.push(state.buffer[c].callback);
-
-    // count the one we are adding, as well.
-    // TODO(isaacs) clean this up
-    state.pendingcb++;
-    doWrite(stream, state, true, state.length, state.buffer, '', function(err) {
-      for (var i = 0; i < cbs.length; i++) {
-        state.pendingcb--;
-        cbs[i](err);
-      }
-    });
-
-    // Clear buffer
-    state.buffer = [];
-  } else {
-    // Slow case, write chunks one-by-one
-    for (var c = 0; c < state.buffer.length; c++) {
-      var entry = state.buffer[c];
-      var chunk = entry.chunk;
-      var encoding = entry.encoding;
-      var cb = entry.callback;
-      var len = state.objectMode ? 1 : chunk.length;
-
-      doWrite(stream, state, false, len, chunk, encoding, cb);
-
-      // if we didn't call the onwrite immediately, then
-      // it means that we need to wait until it does.
-      // also, that means that the chunk and cb are currently
-      // being processed, so move the buffer counter past them.
-      if (state.writing) {
-        c++;
-        break;
-      }
-    }
-
-    if (c < state.buffer.length)
-      state.buffer = state.buffer.slice(c);
-    else
-      state.buffer.length = 0;
-  }
-
-  state.bufferProcessing = false;
-}
-
-Writable.prototype._write = function(chunk, encoding, cb) {
-  cb(new Error('not implemented'));
-
-};
-
-Writable.prototype._writev = null;
-
-Writable.prototype.end = function(chunk, encoding, cb) {
-  var state = this._writableState;
-
-  if (util.isFunction(chunk)) {
-    cb = chunk;
-    chunk = null;
-    encoding = null;
-  } else if (util.isFunction(encoding)) {
-    cb = encoding;
-    encoding = null;
-  }
-
-  if (!util.isNullOrUndefined(chunk))
-    this.write(chunk, encoding);
-
-  // .end() fully uncorks
-  if (state.corked) {
-    state.corked = 1;
-    this.uncork();
-  }
-
-  // ignore unnecessary end() calls.
-  if (!state.ending && !state.finished)
-    endWritable(this, state, cb);
-};
-
-
-function needFinish(stream, state) {
-  return (state.ending &&
-          state.length === 0 &&
-          !state.finished &&
-          !state.writing);
-}
-
-function prefinish(stream, state) {
-  if (!state.prefinished) {
-    state.prefinished = true;
-    stream.emit('prefinish');
-  }
-}
-
-function finishMaybe(stream, state) {
-  var need = needFinish(stream, state);
-  if (need) {
-    if (state.pendingcb === 0) {
-      prefinish(stream, state);
-      state.finished = true;
-      stream.emit('finish');
-    } else
-      prefinish(stream, state);
-  }
-  return need;
-}
-
-function endWritable(stream, state, cb) {
-  state.ending = true;
-  finishMaybe(stream, state);
-  if (cb) {
-    if (state.finished)
-      process.nextTick(cb);
-    else
-      stream.once('finish', cb);
-  }
-  state.ended = true;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/README.md
deleted file mode 100644 (file)
index 5a76b41..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# core-util-is
-
-The `util.is*` functions introduced in Node v0.12.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/float.patch b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/float.patch
deleted file mode 100644 (file)
index a06d5c0..0000000
+++ /dev/null
@@ -1,604 +0,0 @@
-diff --git a/lib/util.js b/lib/util.js
-index a03e874..9074e8e 100644
---- a/lib/util.js
-+++ b/lib/util.js
-@@ -19,430 +19,6 @@
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
-
--var formatRegExp = /%[sdj%]/g;
--exports.format = function(f) {
--  if (!isString(f)) {
--    var objects = [];
--    for (var i = 0; i < arguments.length; i++) {
--      objects.push(inspect(arguments[i]));
--    }
--    return objects.join(' ');
--  }
--
--  var i = 1;
--  var args = arguments;
--  var len = args.length;
--  var str = String(f).replace(formatRegExp, function(x) {
--    if (x === '%%') return '%';
--    if (i >= len) return x;
--    switch (x) {
--      case '%s': return String(args[i++]);
--      case '%d': return Number(args[i++]);
--      case '%j':
--        try {
--          return JSON.stringify(args[i++]);
--        } catch (_) {
--          return '[Circular]';
--        }
--      default:
--        return x;
--    }
--  });
--  for (var x = args[i]; i < len; x = args[++i]) {
--    if (isNull(x) || !isObject(x)) {
--      str += ' ' + x;
--    } else {
--      str += ' ' + inspect(x);
--    }
--  }
--  return str;
--};
--
--
--// Mark that a method should not be used.
--// Returns a modified function which warns once by default.
--// If --no-deprecation is set, then it is a no-op.
--exports.deprecate = function(fn, msg) {
--  // Allow for deprecating things in the process of starting up.
--  if (isUndefined(global.process)) {
--    return function() {
--      return exports.deprecate(fn, msg).apply(this, arguments);
--    };
--  }
--
--  if (process.noDeprecation === true) {
--    return fn;
--  }
--
--  var warned = false;
--  function deprecated() {
--    if (!warned) {
--      if (process.throwDeprecation) {
--        throw new Error(msg);
--      } else if (process.traceDeprecation) {
--        console.trace(msg);
--      } else {
--        console.error(msg);
--      }
--      warned = true;
--    }
--    return fn.apply(this, arguments);
--  }
--
--  return deprecated;
--};
--
--
--var debugs = {};
--var debugEnviron;
--exports.debuglog = function(set) {
--  if (isUndefined(debugEnviron))
--    debugEnviron = process.env.NODE_DEBUG || '';
--  set = set.toUpperCase();
--  if (!debugs[set]) {
--    if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) {
--      var pid = process.pid;
--      debugs[set] = function() {
--        var msg = exports.format.apply(exports, arguments);
--        console.error('%s %d: %s', set, pid, msg);
--      };
--    } else {
--      debugs[set] = function() {};
--    }
--  }
--  return debugs[set];
--};
--
--
--/**
-- * Echos the value of a value. Trys to print the value out
-- * in the best way possible given the different types.
-- *
-- * @param {Object} obj The object to print out.
-- * @param {Object} opts Optional options object that alters the output.
-- */
--/* legacy: obj, showHidden, depth, colors*/
--function inspect(obj, opts) {
--  // default options
--  var ctx = {
--    seen: [],
--    stylize: stylizeNoColor
--  };
--  // legacy...
--  if (arguments.length >= 3) ctx.depth = arguments[2];
--  if (arguments.length >= 4) ctx.colors = arguments[3];
--  if (isBoolean(opts)) {
--    // legacy...
--    ctx.showHidden = opts;
--  } else if (opts) {
--    // got an "options" object
--    exports._extend(ctx, opts);
--  }
--  // set default options
--  if (isUndefined(ctx.showHidden)) ctx.showHidden = false;
--  if (isUndefined(ctx.depth)) ctx.depth = 2;
--  if (isUndefined(ctx.colors)) ctx.colors = false;
--  if (isUndefined(ctx.customInspect)) ctx.customInspect = true;
--  if (ctx.colors) ctx.stylize = stylizeWithColor;
--  return formatValue(ctx, obj, ctx.depth);
--}
--exports.inspect = inspect;
--
--
--// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
--inspect.colors = {
--  'bold' : [1, 22],
--  'italic' : [3, 23],
--  'underline' : [4, 24],
--  'inverse' : [7, 27],
--  'white' : [37, 39],
--  'grey' : [90, 39],
--  'black' : [30, 39],
--  'blue' : [34, 39],
--  'cyan' : [36, 39],
--  'green' : [32, 39],
--  'magenta' : [35, 39],
--  'red' : [31, 39],
--  'yellow' : [33, 39]
--};
--
--// Don't use 'blue' not visible on cmd.exe
--inspect.styles = {
--  'special': 'cyan',
--  'number': 'yellow',
--  'boolean': 'yellow',
--  'undefined': 'grey',
--  'null': 'bold',
--  'string': 'green',
--  'date': 'magenta',
--  // "name": intentionally not styling
--  'regexp': 'red'
--};
--
--
--function stylizeWithColor(str, styleType) {
--  var style = inspect.styles[styleType];
--
--  if (style) {
--    return '\u001b[' + inspect.colors[style][0] + 'm' + str +
--           '\u001b[' + inspect.colors[style][1] + 'm';
--  } else {
--    return str;
--  }
--}
--
--
--function stylizeNoColor(str, styleType) {
--  return str;
--}
--
--
--function arrayToHash(array) {
--  var hash = {};
--
--  array.forEach(function(val, idx) {
--    hash[val] = true;
--  });
--
--  return hash;
--}
--
--
--function formatValue(ctx, value, recurseTimes) {
--  // Provide a hook for user-specified inspect functions.
--  // Check that value is an object with an inspect function on it
--  if (ctx.customInspect &&
--      value &&
--      isFunction(value.inspect) &&
--      // Filter out the util module, it's inspect function is special
--      value.inspect !== exports.inspect &&
--      // Also filter out any prototype objects using the circular check.
--      !(value.constructor && value.constructor.prototype === value)) {
--    var ret = value.inspect(recurseTimes, ctx);
--    if (!isString(ret)) {
--      ret = formatValue(ctx, ret, recurseTimes);
--    }
--    return ret;
--  }
--
--  // Primitive types cannot have properties
--  var primitive = formatPrimitive(ctx, value);
--  if (primitive) {
--    return primitive;
--  }
--
--  // Look up the keys of the object.
--  var keys = Object.keys(value);
--  var visibleKeys = arrayToHash(keys);
--
--  if (ctx.showHidden) {
--    keys = Object.getOwnPropertyNames(value);
--  }
--
--  // Some type of object without properties can be shortcutted.
--  if (keys.length === 0) {
--    if (isFunction(value)) {
--      var name = value.name ? ': ' + value.name : '';
--      return ctx.stylize('[Function' + name + ']', 'special');
--    }
--    if (isRegExp(value)) {
--      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
--    }
--    if (isDate(value)) {
--      return ctx.stylize(Date.prototype.toString.call(value), 'date');
--    }
--    if (isError(value)) {
--      return formatError(value);
--    }
--  }
--
--  var base = '', array = false, braces = ['{', '}'];
--
--  // Make Array say that they are Array
--  if (isArray(value)) {
--    array = true;
--    braces = ['[', ']'];
--  }
--
--  // Make functions say that they are functions
--  if (isFunction(value)) {
--    var n = value.name ? ': ' + value.name : '';
--    base = ' [Function' + n + ']';
--  }
--
--  // Make RegExps say that they are RegExps
--  if (isRegExp(value)) {
--    base = ' ' + RegExp.prototype.toString.call(value);
--  }
--
--  // Make dates with properties first say the date
--  if (isDate(value)) {
--    base = ' ' + Date.prototype.toUTCString.call(value);
--  }
--
--  // Make error with message first say the error
--  if (isError(value)) {
--    base = ' ' + formatError(value);
--  }
--
--  if (keys.length === 0 && (!array || value.length == 0)) {
--    return braces[0] + base + braces[1];
--  }
--
--  if (recurseTimes < 0) {
--    if (isRegExp(value)) {
--      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
--    } else {
--      return ctx.stylize('[Object]', 'special');
--    }
--  }
--
--  ctx.seen.push(value);
--
--  var output;
--  if (array) {
--    output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);
--  } else {
--    output = keys.map(function(key) {
--      return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);
--    });
--  }
--
--  ctx.seen.pop();
--
--  return reduceToSingleString(output, base, braces);
--}
--
--
--function formatPrimitive(ctx, value) {
--  if (isUndefined(value))
--    return ctx.stylize('undefined', 'undefined');
--  if (isString(value)) {
--    var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '')
--                                             .replace(/'/g, "\\'")
--                                             .replace(/\\"/g, '"') + '\'';
--    return ctx.stylize(simple, 'string');
--  }
--  if (isNumber(value)) {
--    // Format -0 as '-0'. Strict equality won't distinguish 0 from -0,
--    // so instead we use the fact that 1 / -0 < 0 whereas 1 / 0 > 0 .
--    if (value === 0 && 1 / value < 0)
--      return ctx.stylize('-0', 'number');
--    return ctx.stylize('' + value, 'number');
--  }
--  if (isBoolean(value))
--    return ctx.stylize('' + value, 'boolean');
--  // For some reason typeof null is "object", so special case here.
--  if (isNull(value))
--    return ctx.stylize('null', 'null');
--}
--
--
--function formatError(value) {
--  return '[' + Error.prototype.toString.call(value) + ']';
--}
--
--
--function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
--  var output = [];
--  for (var i = 0, l = value.length; i < l; ++i) {
--    if (hasOwnProperty(value, String(i))) {
--      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
--          String(i), true));
--    } else {
--      output.push('');
--    }
--  }
--  keys.forEach(function(key) {
--    if (!key.match(/^\d+$/)) {
--      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
--          key, true));
--    }
--  });
--  return output;
--}
--
--
--function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
--  var name, str, desc;
--  desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };
--  if (desc.get) {
--    if (desc.set) {
--      str = ctx.stylize('[Getter/Setter]', 'special');
--    } else {
--      str = ctx.stylize('[Getter]', 'special');
--    }
--  } else {
--    if (desc.set) {
--      str = ctx.stylize('[Setter]', 'special');
--    }
--  }
--  if (!hasOwnProperty(visibleKeys, key)) {
--    name = '[' + key + ']';
--  }
--  if (!str) {
--    if (ctx.seen.indexOf(desc.value) < 0) {
--      if (isNull(recurseTimes)) {
--        str = formatValue(ctx, desc.value, null);
--      } else {
--        str = formatValue(ctx, desc.value, recurseTimes - 1);
--      }
--      if (str.indexOf('\n') > -1) {
--        if (array) {
--          str = str.split('\n').map(function(line) {
--            return '  ' + line;
--          }).join('\n').substr(2);
--        } else {
--          str = '\n' + str.split('\n').map(function(line) {
--            return '   ' + line;
--          }).join('\n');
--        }
--      }
--    } else {
--      str = ctx.stylize('[Circular]', 'special');
--    }
--  }
--  if (isUndefined(name)) {
--    if (array && key.match(/^\d+$/)) {
--      return str;
--    }
--    name = JSON.stringify('' + key);
--    if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) {
--      name = name.substr(1, name.length - 2);
--      name = ctx.stylize(name, 'name');
--    } else {
--      name = name.replace(/'/g, "\\'")
--                 .replace(/\\"/g, '"')
--                 .replace(/(^"|"$)/g, "'");
--      name = ctx.stylize(name, 'string');
--    }
--  }
--
--  return name + ': ' + str;
--}
--
--
--function reduceToSingleString(output, base, braces) {
--  var numLinesEst = 0;
--  var length = output.reduce(function(prev, cur) {
--    numLinesEst++;
--    if (cur.indexOf('\n') >= 0) numLinesEst++;
--    return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1;
--  }, 0);
--
--  if (length > 60) {
--    return braces[0] +
--           (base === '' ? '' : base + '\n ') +
--           ' ' +
--           output.join(',\n  ') +
--           ' ' +
--           braces[1];
--  }
--
--  return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];
--}
--
--
- // NOTE: These type checking functions intentionally don't use `instanceof`
- // because it is fragile and can be easily faked with `Object.create()`.
- function isArray(ar) {
-@@ -522,166 +98,10 @@ function isPrimitive(arg) {
- exports.isPrimitive = isPrimitive;
-
- function isBuffer(arg) {
--  return arg instanceof Buffer;
-+  return Buffer.isBuffer(arg);
- }
- exports.isBuffer = isBuffer;
-
- function objectToString(o) {
-   return Object.prototype.toString.call(o);
--}
--
--
--function pad(n) {
--  return n < 10 ? '0' + n.toString(10) : n.toString(10);
--}
--
--
--var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',
--              'Oct', 'Nov', 'Dec'];
--
--// 26 Feb 16:19:34
--function timestamp() {
--  var d = new Date();
--  var time = [pad(d.getHours()),
--              pad(d.getMinutes()),
--              pad(d.getSeconds())].join(':');
--  return [d.getDate(), months[d.getMonth()], time].join(' ');
--}
--
--
--// log is just a thin wrapper to console.log that prepends a timestamp
--exports.log = function() {
--  console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));
--};
--
--
--/**
-- * Inherit the prototype methods from one constructor into another.
-- *
-- * The Function.prototype.inherits from lang.js rewritten as a standalone
-- * function (not on Function.prototype). NOTE: If this file is to be loaded
-- * during bootstrapping this function needs to be rewritten using some native
-- * functions as prototype setup using normal JavaScript does not work as
-- * expected during bootstrapping (see mirror.js in r114903).
-- *
-- * @param {function} ctor Constructor function which needs to inherit the
-- *     prototype.
-- * @param {function} superCtor Constructor function to inherit prototype from.
-- */
--exports.inherits = function(ctor, superCtor) {
--  ctor.super_ = superCtor;
--  ctor.prototype = Object.create(superCtor.prototype, {
--    constructor: {
--      value: ctor,
--      enumerable: false,
--      writable: true,
--      configurable: true
--    }
--  });
--};
--
--exports._extend = function(origin, add) {
--  // Don't do anything if add isn't an object
--  if (!add || !isObject(add)) return origin;
--
--  var keys = Object.keys(add);
--  var i = keys.length;
--  while (i--) {
--    origin[keys[i]] = add[keys[i]];
--  }
--  return origin;
--};
--
--function hasOwnProperty(obj, prop) {
--  return Object.prototype.hasOwnProperty.call(obj, prop);
--}
--
--
--// Deprecated old stuff.
--
--exports.p = exports.deprecate(function() {
--  for (var i = 0, len = arguments.length; i < len; ++i) {
--    console.error(exports.inspect(arguments[i]));
--  }
--}, 'util.p: Use console.error() instead');
--
--
--exports.exec = exports.deprecate(function() {
--  return require('child_process').exec.apply(this, arguments);
--}, 'util.exec is now called `child_process.exec`.');
--
--
--exports.print = exports.deprecate(function() {
--  for (var i = 0, len = arguments.length; i < len; ++i) {
--    process.stdout.write(String(arguments[i]));
--  }
--}, 'util.print: Use console.log instead');
--
--
--exports.puts = exports.deprecate(function() {
--  for (var i = 0, len = arguments.length; i < len; ++i) {
--    process.stdout.write(arguments[i] + '\n');
--  }
--}, 'util.puts: Use console.log instead');
--
--
--exports.debug = exports.deprecate(function(x) {
--  process.stderr.write('DEBUG: ' + x + '\n');
--}, 'util.debug: Use console.error instead');
--
--
--exports.error = exports.deprecate(function(x) {
--  for (var i = 0, len = arguments.length; i < len; ++i) {
--    process.stderr.write(arguments[i] + '\n');
--  }
--}, 'util.error: Use console.error instead');
--
--
--exports.pump = exports.deprecate(function(readStream, writeStream, callback) {
--  var callbackCalled = false;
--
--  function call(a, b, c) {
--    if (callback && !callbackCalled) {
--      callback(a, b, c);
--      callbackCalled = true;
--    }
--  }
--
--  readStream.addListener('data', function(chunk) {
--    if (writeStream.write(chunk) === false) readStream.pause();
--  });
--
--  writeStream.addListener('drain', function() {
--    readStream.resume();
--  });
--
--  readStream.addListener('end', function() {
--    writeStream.end();
--  });
--
--  readStream.addListener('close', function() {
--    call();
--  });
--
--  readStream.addListener('error', function(err) {
--    writeStream.end();
--    call(err);
--  });
--
--  writeStream.addListener('error', function(err) {
--    readStream.destroy();
--    call(err);
--  });
--}, 'util.pump(): Use readableStream.pipe() instead');
--
--
--var uv;
--exports._errnoException = function(err, syscall) {
--  if (isUndefined(uv)) uv = process.binding('uv');
--  var errname = uv.errname(err);
--  var e = new Error(syscall + ' ' + errname);
--  e.code = errname;
--  e.errno = errname;
--  e.syscall = syscall;
--  return e;
--};
-+}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js
deleted file mode 100644 (file)
index 9074e8e..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// NOTE: These type checking functions intentionally don't use `instanceof`
-// because it is fragile and can be easily faked with `Object.create()`.
-function isArray(ar) {
-  return Array.isArray(ar);
-}
-exports.isArray = isArray;
-
-function isBoolean(arg) {
-  return typeof arg === 'boolean';
-}
-exports.isBoolean = isBoolean;
-
-function isNull(arg) {
-  return arg === null;
-}
-exports.isNull = isNull;
-
-function isNullOrUndefined(arg) {
-  return arg == null;
-}
-exports.isNullOrUndefined = isNullOrUndefined;
-
-function isNumber(arg) {
-  return typeof arg === 'number';
-}
-exports.isNumber = isNumber;
-
-function isString(arg) {
-  return typeof arg === 'string';
-}
-exports.isString = isString;
-
-function isSymbol(arg) {
-  return typeof arg === 'symbol';
-}
-exports.isSymbol = isSymbol;
-
-function isUndefined(arg) {
-  return arg === void 0;
-}
-exports.isUndefined = isUndefined;
-
-function isRegExp(re) {
-  return isObject(re) && objectToString(re) === '[object RegExp]';
-}
-exports.isRegExp = isRegExp;
-
-function isObject(arg) {
-  return typeof arg === 'object' && arg !== null;
-}
-exports.isObject = isObject;
-
-function isDate(d) {
-  return isObject(d) && objectToString(d) === '[object Date]';
-}
-exports.isDate = isDate;
-
-function isError(e) {
-  return isObject(e) &&
-      (objectToString(e) === '[object Error]' || e instanceof Error);
-}
-exports.isError = isError;
-
-function isFunction(arg) {
-  return typeof arg === 'function';
-}
-exports.isFunction = isFunction;
-
-function isPrimitive(arg) {
-  return arg === null ||
-         typeof arg === 'boolean' ||
-         typeof arg === 'number' ||
-         typeof arg === 'string' ||
-         typeof arg === 'symbol' ||  // ES6 symbol
-         typeof arg === 'undefined';
-}
-exports.isPrimitive = isPrimitive;
-
-function isBuffer(arg) {
-  return Buffer.isBuffer(arg);
-}
-exports.isBuffer = isBuffer;
-
-function objectToString(o) {
-  return Object.prototype.toString.call(o);
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/package.json
deleted file mode 100644 (file)
index 5c17751..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-{
-  "_args": [
-    [
-      "core-util-is@https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "core-util-is@https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-  "_id": "core-util-is@https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-awcIWu+aPMrG7lO/nT3wwVIaVTg=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/readable-stream/core-util-is",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "core-util-is@https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-    "name": "core-util-is",
-    "escapedName": "core-util-is",
-    "rawSpec": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream/readable-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/core-util-is/issues"
-  },
-  "description": "The `util.is*` functions introduced in Node v0.12.",
-  "homepage": "https://github.com/isaacs/core-util-is#readme",
-  "keywords": [
-    "util",
-    "isBuffer",
-    "isArray",
-    "isNumber",
-    "isString",
-    "isRegExp",
-    "isThis",
-    "isThat",
-    "polyfill"
-  ],
-  "license": "MIT",
-  "main": "lib/util.js",
-  "name": "core-util-is",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/core-util-is.git"
-  },
-  "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/util.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/util.js
deleted file mode 100644 (file)
index 007fa10..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// NOTE: These type checking functions intentionally don't use `instanceof`
-// because it is fragile and can be easily faked with `Object.create()`.
-function isArray(ar) {
-  return Array.isArray(ar);
-}
-exports.isArray = isArray;
-
-function isBoolean(arg) {
-  return typeof arg === 'boolean';
-}
-exports.isBoolean = isBoolean;
-
-function isNull(arg) {
-  return arg === null;
-}
-exports.isNull = isNull;
-
-function isNullOrUndefined(arg) {
-  return arg == null;
-}
-exports.isNullOrUndefined = isNullOrUndefined;
-
-function isNumber(arg) {
-  return typeof arg === 'number';
-}
-exports.isNumber = isNumber;
-
-function isString(arg) {
-  return typeof arg === 'string';
-}
-exports.isString = isString;
-
-function isSymbol(arg) {
-  return typeof arg === 'symbol';
-}
-exports.isSymbol = isSymbol;
-
-function isUndefined(arg) {
-  return arg === void 0;
-}
-exports.isUndefined = isUndefined;
-
-function isRegExp(re) {
-  return isObject(re) && objectToString(re) === '[object RegExp]';
-}
-exports.isRegExp = isRegExp;
-
-function isObject(arg) {
-  return typeof arg === 'object' && arg !== null;
-}
-exports.isObject = isObject;
-
-function isDate(d) {
-  return isObject(d) && objectToString(d) === '[object Date]';
-}
-exports.isDate = isDate;
-
-function isError(e) {
-  return isObject(e) && objectToString(e) === '[object Error]';
-}
-exports.isError = isError;
-
-function isFunction(arg) {
-  return typeof arg === 'function';
-}
-exports.isFunction = isFunction;
-
-function isPrimitive(arg) {
-  return arg === null ||
-         typeof arg === 'boolean' ||
-         typeof arg === 'number' ||
-         typeof arg === 'string' ||
-         typeof arg === 'symbol' ||  // ES6 symbol
-         typeof arg === 'undefined';
-}
-exports.isPrimitive = isPrimitive;
-
-function isBuffer(arg) {
-  return arg instanceof Buffer;
-}
-exports.isBuffer = isBuffer;
-
-function objectToString(o) {
-  return Object.prototype.toString.call(o);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/README.md
deleted file mode 100644 (file)
index 052a62b..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-
-# isarray
-
-`Array#isArray` for older browsers.
-
-## Usage
-
-```js
-var isArray = require('isarray');
-
-console.log(isArray([])); // => true
-console.log(isArray({})); // => false
-```
-
-## Installation
-
-With [npm](http://npmjs.org) do
-
-```bash
-$ npm install isarray
-```
-
-Then bundle for the browser with
-[browserify](https://github.com/substack/browserify).
-
-With [component](http://component.io) do
-
-```bash
-$ component install juliangruber/isarray
-```
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/build/build.js
deleted file mode 100644 (file)
index ec58596..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Require the given path.
- *
- * @param {String} path
- * @return {Object} exports
- * @api public
- */
-
-function require(path, parent, orig) {
-  var resolved = require.resolve(path);
-
-  // lookup failed
-  if (null == resolved) {
-    orig = orig || path;
-    parent = parent || 'root';
-    var err = new Error('Failed to require "' + orig + '" from "' + parent + '"');
-    err.path = orig;
-    err.parent = parent;
-    err.require = true;
-    throw err;
-  }
-
-  var module = require.modules[resolved];
-
-  // perform real require()
-  // by invoking the module's
-  // registered function
-  if (!module.exports) {
-    module.exports = {};
-    module.client = module.component = true;
-    module.call(this, module.exports, require.relative(resolved), module);
-  }
-
-  return module.exports;
-}
-
-/**
- * Registered modules.
- */
-
-require.modules = {};
-
-/**
- * Registered aliases.
- */
-
-require.aliases = {};
-
-/**
- * Resolve `path`.
- *
- * Lookup:
- *
- *   - PATH/index.js
- *   - PATH.js
- *   - PATH
- *
- * @param {String} path
- * @return {String} path or null
- * @api private
- */
-
-require.resolve = function(path) {
-  if (path.charAt(0) === '/') path = path.slice(1);
-  var index = path + '/index.js';
-
-  var paths = [
-    path,
-    path + '.js',
-    path + '.json',
-    path + '/index.js',
-    path + '/index.json'
-  ];
-
-  for (var i = 0; i < paths.length; i++) {
-    var path = paths[i];
-    if (require.modules.hasOwnProperty(path)) return path;
-  }
-
-  if (require.aliases.hasOwnProperty(index)) {
-    return require.aliases[index];
-  }
-};
-
-/**
- * Normalize `path` relative to the current path.
- *
- * @param {String} curr
- * @param {String} path
- * @return {String}
- * @api private
- */
-
-require.normalize = function(curr, path) {
-  var segs = [];
-
-  if ('.' != path.charAt(0)) return path;
-
-  curr = curr.split('/');
-  path = path.split('/');
-
-  for (var i = 0; i < path.length; ++i) {
-    if ('..' == path[i]) {
-      curr.pop();
-    } else if ('.' != path[i] && '' != path[i]) {
-      segs.push(path[i]);
-    }
-  }
-
-  return curr.concat(segs).join('/');
-};
-
-/**
- * Register module at `path` with callback `definition`.
- *
- * @param {String} path
- * @param {Function} definition
- * @api private
- */
-
-require.register = function(path, definition) {
-  require.modules[path] = definition;
-};
-
-/**
- * Alias a module definition.
- *
- * @param {String} from
- * @param {String} to
- * @api private
- */
-
-require.alias = function(from, to) {
-  if (!require.modules.hasOwnProperty(from)) {
-    throw new Error('Failed to alias "' + from + '", it does not exist');
-  }
-  require.aliases[to] = from;
-};
-
-/**
- * Return a require function relative to the `parent` path.
- *
- * @param {String} parent
- * @return {Function}
- * @api private
- */
-
-require.relative = function(parent) {
-  var p = require.normalize(parent, '..');
-
-  /**
-   * lastIndexOf helper.
-   */
-
-  function lastIndexOf(arr, obj) {
-    var i = arr.length;
-    while (i--) {
-      if (arr[i] === obj) return i;
-    }
-    return -1;
-  }
-
-  /**
-   * The relative require() itself.
-   */
-
-  function localRequire(path) {
-    var resolved = localRequire.resolve(path);
-    return require(resolved, parent, path);
-  }
-
-  /**
-   * Resolve relative to the parent.
-   */
-
-  localRequire.resolve = function(path) {
-    var c = path.charAt(0);
-    if ('/' == c) return path.slice(1);
-    if ('.' == c) return require.normalize(p, path);
-
-    // resolve deps by returning
-    // the dep in the nearest "deps"
-    // directory
-    var segs = parent.split('/');
-    var i = lastIndexOf(segs, 'deps') + 1;
-    if (!i) i = 0;
-    path = segs.slice(0, i + 1).join('/') + '/deps/' + path;
-    return path;
-  };
-
-  /**
-   * Check if module is defined at `path`.
-   */
-
-  localRequire.exists = function(path) {
-    return require.modules.hasOwnProperty(localRequire.resolve(path));
-  };
-
-  return localRequire;
-};
-require.register("isarray/index.js", function(exports, require, module){
-module.exports = Array.isArray || function (arr) {
-  return Object.prototype.toString.call(arr) == '[object Array]';
-};
-
-});
-require.alias("isarray/index.js", "isarray/index.js");
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/component.json
deleted file mode 100644 (file)
index 9e31b68..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name" : "isarray",
-  "description" : "Array#isArray for older browsers",
-  "version" : "0.0.1",
-  "repository" : "juliangruber/isarray",
-  "homepage": "https://github.com/juliangruber/isarray",
-  "main" : "index.js",
-  "scripts" : [
-    "index.js"
-  ],
-  "dependencies" : {},
-  "keywords": ["browser","isarray","array"],
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "license": "MIT"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js
deleted file mode 100644 (file)
index 5f5ad45..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = Array.isArray || function (arr) {
-  return Object.prototype.toString.call(arr) == '[object Array]';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/package.json
deleted file mode 100644 (file)
index d1e44ae..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-{
-  "_args": [
-    [
-      "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_id": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/readable-stream/isarray",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "name": "isarray",
-    "escapedName": "isarray",
-    "rawSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream/readable-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/isarray/issues"
-  },
-  "dependencies": {},
-  "description": "Array#isArray for older browsers",
-  "devDependencies": {
-    "tap": "*"
-  },
-  "homepage": "https://github.com/juliangruber/isarray",
-  "keywords": [
-    "browser",
-    "isarray",
-    "array"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "isarray",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/isarray.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/.npmignore
deleted file mode 100644 (file)
index 206320c..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-build
-test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/LICENSE
deleted file mode 100644 (file)
index 6de584a..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright Joyent, Inc. and other Node contributors.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to permit
-persons to whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/README.md
deleted file mode 100644 (file)
index 4d2aa00..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-**string_decoder.js** (`require('string_decoder')`) from Node.js core
-
-Copyright Joyent, Inc. and other Node contributors. See LICENCE file for details.
-
-Version numbers match the versions found in Node core, e.g. 0.10.24 matches Node 0.10.24, likewise 0.11.10 matches Node 0.11.10. **Prefer the stable version over the unstable.**
-
-The *build/* directory contains a build script that will scrape the source from the [joyent/node](https://github.com/joyent/node) repo given a specific Node version.
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/index.js
deleted file mode 100644 (file)
index b00e54f..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var Buffer = require('buffer').Buffer;
-
-var isBufferEncoding = Buffer.isEncoding
-  || function(encoding) {
-       switch (encoding && encoding.toLowerCase()) {
-         case 'hex': case 'utf8': case 'utf-8': case 'ascii': case 'binary': case 'base64': case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': case 'raw': return true;
-         default: return false;
-       }
-     }
-
-
-function assertEncoding(encoding) {
-  if (encoding && !isBufferEncoding(encoding)) {
-    throw new Error('Unknown encoding: ' + encoding);
-  }
-}
-
-// StringDecoder provides an interface for efficiently splitting a series of
-// buffers into a series of JS strings without breaking apart multi-byte
-// characters. CESU-8 is handled as part of the UTF-8 encoding.
-//
-// @TODO Handling all encodings inside a single object makes it very difficult
-// to reason about this code, so it should be split up in the future.
-// @TODO There should be a utf8-strict encoding that rejects invalid UTF-8 code
-// points as used by CESU-8.
-var StringDecoder = exports.StringDecoder = function(encoding) {
-  this.encoding = (encoding || 'utf8').toLowerCase().replace(/[-_]/, '');
-  assertEncoding(encoding);
-  switch (this.encoding) {
-    case 'utf8':
-      // CESU-8 represents each of Surrogate Pair by 3-bytes
-      this.surrogateSize = 3;
-      break;
-    case 'ucs2':
-    case 'utf16le':
-      // UTF-16 represents each of Surrogate Pair by 2-bytes
-      this.surrogateSize = 2;
-      this.detectIncompleteChar = utf16DetectIncompleteChar;
-      break;
-    case 'base64':
-      // Base-64 stores 3 bytes in 4 chars, and pads the remainder.
-      this.surrogateSize = 3;
-      this.detectIncompleteChar = base64DetectIncompleteChar;
-      break;
-    default:
-      this.write = passThroughWrite;
-      return;
-  }
-
-  // Enough space to store all bytes of a single character. UTF-8 needs 4
-  // bytes, but CESU-8 may require up to 6 (3 bytes per surrogate).
-  this.charBuffer = new Buffer(6);
-  // Number of bytes received for the current incomplete multi-byte character.
-  this.charReceived = 0;
-  // Number of bytes expected for the current incomplete multi-byte character.
-  this.charLength = 0;
-};
-
-
-// write decodes the given buffer and returns it as JS string that is
-// guaranteed to not contain any partial multi-byte characters. Any partial
-// character found at the end of the buffer is buffered up, and will be
-// returned when calling write again with the remaining bytes.
-//
-// Note: Converting a Buffer containing an orphan surrogate to a String
-// currently works, but converting a String to a Buffer (via `new Buffer`, or
-// Buffer#write) will replace incomplete surrogates with the unicode
-// replacement character. See https://codereview.chromium.org/121173009/ .
-StringDecoder.prototype.write = function(buffer) {
-  var charStr = '';
-  // if our last write ended with an incomplete multibyte character
-  while (this.charLength) {
-    // determine how many remaining bytes this buffer has to offer for this char
-    var available = (buffer.length >= this.charLength - this.charReceived) ?
-        this.charLength - this.charReceived :
-        buffer.length;
-
-    // add the new bytes to the char buffer
-    buffer.copy(this.charBuffer, this.charReceived, 0, available);
-    this.charReceived += available;
-
-    if (this.charReceived < this.charLength) {
-      // still not enough chars in this buffer? wait for more ...
-      return '';
-    }
-
-    // remove bytes belonging to the current character from the buffer
-    buffer = buffer.slice(available, buffer.length);
-
-    // get the character that was split
-    charStr = this.charBuffer.slice(0, this.charLength).toString(this.encoding);
-
-    // CESU-8: lead surrogate (D800-DBFF) is also the incomplete character
-    var charCode = charStr.charCodeAt(charStr.length - 1);
-    if (charCode >= 0xD800 && charCode <= 0xDBFF) {
-      this.charLength += this.surrogateSize;
-      charStr = '';
-      continue;
-    }
-    this.charReceived = this.charLength = 0;
-
-    // if there are no more bytes in this buffer, just emit our char
-    if (buffer.length === 0) {
-      return charStr;
-    }
-    break;
-  }
-
-  // determine and set charLength / charReceived
-  this.detectIncompleteChar(buffer);
-
-  var end = buffer.length;
-  if (this.charLength) {
-    // buffer the incomplete character bytes we got
-    buffer.copy(this.charBuffer, 0, buffer.length - this.charReceived, end);
-    end -= this.charReceived;
-  }
-
-  charStr += buffer.toString(this.encoding, 0, end);
-
-  var end = charStr.length - 1;
-  var charCode = charStr.charCodeAt(end);
-  // CESU-8: lead surrogate (D800-DBFF) is also the incomplete character
-  if (charCode >= 0xD800 && charCode <= 0xDBFF) {
-    var size = this.surrogateSize;
-    this.charLength += size;
-    this.charReceived += size;
-    this.charBuffer.copy(this.charBuffer, size, 0, size);
-    buffer.copy(this.charBuffer, 0, 0, size);
-    return charStr.substring(0, end);
-  }
-
-  // or just emit the charStr
-  return charStr;
-};
-
-// detectIncompleteChar determines if there is an incomplete UTF-8 character at
-// the end of the given buffer. If so, it sets this.charLength to the byte
-// length that character, and sets this.charReceived to the number of bytes
-// that are available for this character.
-StringDecoder.prototype.detectIncompleteChar = function(buffer) {
-  // determine how many bytes we have to check at the end of this buffer
-  var i = (buffer.length >= 3) ? 3 : buffer.length;
-
-  // Figure out if one of the last i bytes of our buffer announces an
-  // incomplete char.
-  for (; i > 0; i--) {
-    var c = buffer[buffer.length - i];
-
-    // See http://en.wikipedia.org/wiki/UTF-8#Description
-
-    // 110XXXXX
-    if (i == 1 && c >> 5 == 0x06) {
-      this.charLength = 2;
-      break;
-    }
-
-    // 1110XXXX
-    if (i <= 2 && c >> 4 == 0x0E) {
-      this.charLength = 3;
-      break;
-    }
-
-    // 11110XXX
-    if (i <= 3 && c >> 3 == 0x1E) {
-      this.charLength = 4;
-      break;
-    }
-  }
-  this.charReceived = i;
-};
-
-StringDecoder.prototype.end = function(buffer) {
-  var res = '';
-  if (buffer && buffer.length)
-    res = this.write(buffer);
-
-  if (this.charReceived) {
-    var cr = this.charReceived;
-    var buf = this.charBuffer;
-    var enc = this.encoding;
-    res += buf.slice(0, cr).toString(enc);
-  }
-
-  return res;
-};
-
-function passThroughWrite(buffer) {
-  return buffer.toString(this.encoding);
-}
-
-function utf16DetectIncompleteChar(buffer) {
-  this.charReceived = buffer.length % 2;
-  this.charLength = this.charReceived ? 2 : 0;
-}
-
-function base64DetectIncompleteChar(buffer) {
-  this.charReceived = buffer.length % 3;
-  this.charLength = this.charReceived ? 3 : 0;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/node_modules/string_decoder/package.json
deleted file mode 100644 (file)
index 439e195..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-{
-  "_args": [
-    [
-      "string_decoder@https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "string_decoder@https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-  "_id": "string_decoder@https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/readable-stream/string_decoder",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "string_decoder@https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-    "name": "string_decoder",
-    "escapedName": "string_decoder",
-    "rawSpec": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-    "saveSpec": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-    "fetchSpec": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream/readable-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/rvagg/string_decoder/issues"
-  },
-  "dependencies": {},
-  "description": "The string_decoder module from Node core",
-  "devDependencies": {
-    "tap": "~0.4.8"
-  },
-  "homepage": "https://github.com/rvagg/string_decoder",
-  "keywords": [
-    "string",
-    "decoder",
-    "browser",
-    "browserify"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "string_decoder",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/rvagg/string_decoder.git"
-  },
-  "scripts": {
-    "test": "tap test/simple/*.js"
-  },
-  "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/package.json
deleted file mode 100644 (file)
index f291219..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-{
-  "_args": [
-    [
-      "readable-stream@https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "readable-stream@https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-  "_id": "readable-stream@https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-9u73ZPUUyJ4rniMUanW6EGdW0j4=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/readable-stream",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "readable-stream@https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-    "name": "readable-stream",
-    "escapedName": "readable-stream",
-    "rawSpec": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-    "saveSpec": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-    "fetchSpec": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "browser": {
-    "util": false
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/readable-stream/issues"
-  },
-  "dependencies": {
-    "core-util-is": "~1.0.0",
-    "inherits": "~2.0.1",
-    "isarray": "0.0.1",
-    "string_decoder": "~0.10.x"
-  },
-  "description": "Streams3, a user-land copy of the stream library from Node.js v0.11.x",
-  "devDependencies": {
-    "tap": "~0.2.6"
-  },
-  "homepage": "https://github.com/isaacs/readable-stream#readme",
-  "keywords": [
-    "readable",
-    "stream",
-    "pipe"
-  ],
-  "license": "MIT",
-  "main": "readable.js",
-  "name": "readable-stream",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/readable-stream.git"
-  },
-  "scripts": {
-    "test": "tap test/simple/*.js"
-  },
-  "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/passthrough.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/passthrough.js
deleted file mode 100644 (file)
index 27e8d8a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require("./lib/_stream_passthrough.js")
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/readable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/readable.js
deleted file mode 100644 (file)
index 09b8bf5..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-exports = module.exports = require('./lib/_stream_readable.js');
-exports.Stream = require('stream');
-exports.Readable = exports;
-exports.Writable = require('./lib/_stream_writable.js');
-exports.Duplex = require('./lib/_stream_duplex.js');
-exports.Transform = require('./lib/_stream_transform.js');
-exports.PassThrough = require('./lib/_stream_passthrough.js');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/transform.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/transform.js
deleted file mode 100644 (file)
index 5d482f0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require("./lib/_stream_transform.js")
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/writable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/readable-stream/writable.js
deleted file mode 100644 (file)
index e1e9efd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require("./lib/_stream_writable.js")
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/LICENSE
deleted file mode 100644 (file)
index 11adfae..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- Copyright (c) 2010, Linden Research, Inc.
- Copyright (c) 2012, Joshua Bell
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
- $/LicenseInfo$
- */
-
-// Original can be found at:
-//   https://bitbucket.org/lindenlab/llsd
-// Modifications by Joshua Bell inexorabletash@gmail.com
-//   https://github.com/inexorabletash/polyfill
-
-// ES3/ES5 implementation of the Krhonos Typed Array Specification
-//   Ref: http://www.khronos.org/registry/typedarray/specs/latest/
-//   Date: 2011-02-01
-//
-// Variations:
-//  * Allows typed_array.get/set() as alias for subscripts (typed_array[])
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/example/tarray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/example/tarray.js
deleted file mode 100644 (file)
index 8423d7c..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-var Uint8Array = require('../').Uint8Array;
-var ua = new Uint8Array(5);
-ua[1] = 256 + 55;
-console.log(ua[1]);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/index.js
deleted file mode 100644 (file)
index 5e54084..0000000
+++ /dev/null
@@ -1,630 +0,0 @@
-var undefined = (void 0); // Paranoia
-
-// Beyond this value, index getters/setters (i.e. array[0], array[1]) are so slow to
-// create, and consume so much memory, that the browser appears frozen.
-var MAX_ARRAY_LENGTH = 1e5;
-
-// Approximations of internal ECMAScript conversion functions
-var ECMAScript = (function() {
-  // Stash a copy in case other scripts modify these
-  var opts = Object.prototype.toString,
-      ophop = Object.prototype.hasOwnProperty;
-
-  return {
-    // Class returns internal [[Class]] property, used to avoid cross-frame instanceof issues:
-    Class: function(v) { return opts.call(v).replace(/^\[object *|\]$/g, ''); },
-    HasProperty: function(o, p) { return p in o; },
-    HasOwnProperty: function(o, p) { return ophop.call(o, p); },
-    IsCallable: function(o) { return typeof o === 'function'; },
-    ToInt32: function(v) { return v >> 0; },
-    ToUint32: function(v) { return v >>> 0; }
-  };
-}());
-
-// Snapshot intrinsics
-var LN2 = Math.LN2,
-    abs = Math.abs,
-    floor = Math.floor,
-    log = Math.log,
-    min = Math.min,
-    pow = Math.pow,
-    round = Math.round;
-
-// ES5: lock down object properties
-function configureProperties(obj) {
-  if (getOwnPropNames && defineProp) {
-    var props = getOwnPropNames(obj), i;
-    for (i = 0; i < props.length; i += 1) {
-      defineProp(obj, props[i], {
-        value: obj[props[i]],
-        writable: false,
-        enumerable: false,
-        configurable: false
-      });
-    }
-  }
-}
-
-// emulate ES5 getter/setter API using legacy APIs
-// http://blogs.msdn.com/b/ie/archive/2010/09/07/transitioning-existing-code-to-the-es5-getter-setter-apis.aspx
-// (second clause tests for Object.defineProperty() in IE<9 that only supports extending DOM prototypes, but
-// note that IE<9 does not support __defineGetter__ or __defineSetter__ so it just renders the method harmless)
-var defineProp
-if (Object.defineProperty && (function() {
-      try {
-        Object.defineProperty({}, 'x', {});
-        return true;
-      } catch (e) {
-        return false;
-      }
-    })()) {
-  defineProp = Object.defineProperty;
-} else {
-  defineProp = function(o, p, desc) {
-    if (!o === Object(o)) throw new TypeError("Object.defineProperty called on non-object");
-    if (ECMAScript.HasProperty(desc, 'get') && Object.prototype.__defineGetter__) { Object.prototype.__defineGetter__.call(o, p, desc.get); }
-    if (ECMAScript.HasProperty(desc, 'set') && Object.prototype.__defineSetter__) { Object.prototype.__defineSetter__.call(o, p, desc.set); }
-    if (ECMAScript.HasProperty(desc, 'value')) { o[p] = desc.value; }
-    return o;
-  };
-}
-
-var getOwnPropNames = Object.getOwnPropertyNames || function (o) {
-  if (o !== Object(o)) throw new TypeError("Object.getOwnPropertyNames called on non-object");
-  var props = [], p;
-  for (p in o) {
-    if (ECMAScript.HasOwnProperty(o, p)) {
-      props.push(p);
-    }
-  }
-  return props;
-};
-
-// ES5: Make obj[index] an alias for obj._getter(index)/obj._setter(index, value)
-// for index in 0 ... obj.length
-function makeArrayAccessors(obj) {
-  if (!defineProp) { return; }
-
-  if (obj.length > MAX_ARRAY_LENGTH) throw new RangeError("Array too large for polyfill");
-
-  function makeArrayAccessor(index) {
-    defineProp(obj, index, {
-      'get': function() { return obj._getter(index); },
-      'set': function(v) { obj._setter(index, v); },
-      enumerable: true,
-      configurable: false
-    });
-  }
-
-  var i;
-  for (i = 0; i < obj.length; i += 1) {
-    makeArrayAccessor(i);
-  }
-}
-
-// Internal conversion functions:
-//    pack<Type>()   - take a number (interpreted as Type), output a byte array
-//    unpack<Type>() - take a byte array, output a Type-like number
-
-function as_signed(value, bits) { var s = 32 - bits; return (value << s) >> s; }
-function as_unsigned(value, bits) { var s = 32 - bits; return (value << s) >>> s; }
-
-function packI8(n) { return [n & 0xff]; }
-function unpackI8(bytes) { return as_signed(bytes[0], 8); }
-
-function packU8(n) { return [n & 0xff]; }
-function unpackU8(bytes) { return as_unsigned(bytes[0], 8); }
-
-function packU8Clamped(n) { n = round(Number(n)); return [n < 0 ? 0 : n > 0xff ? 0xff : n & 0xff]; }
-
-function packI16(n) { return [(n >> 8) & 0xff, n & 0xff]; }
-function unpackI16(bytes) { return as_signed(bytes[0] << 8 | bytes[1], 16); }
-
-function packU16(n) { return [(n >> 8) & 0xff, n & 0xff]; }
-function unpackU16(bytes) { return as_unsigned(bytes[0] << 8 | bytes[1], 16); }
-
-function packI32(n) { return [(n >> 24) & 0xff, (n >> 16) & 0xff, (n >> 8) & 0xff, n & 0xff]; }
-function unpackI32(bytes) { return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); }
-
-function packU32(n) { return [(n >> 24) & 0xff, (n >> 16) & 0xff, (n >> 8) & 0xff, n & 0xff]; }
-function unpackU32(bytes) { return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); }
-
-function packIEEE754(v, ebits, fbits) {
-
-  var bias = (1 << (ebits - 1)) - 1,
-      s, e, f, ln,
-      i, bits, str, bytes;
-
-  function roundToEven(n) {
-    var w = floor(n), f = n - w;
-    if (f < 0.5)
-      return w;
-    if (f > 0.5)
-      return w + 1;
-    return w % 2 ? w + 1 : w;
-  }
-
-  // Compute sign, exponent, fraction
-  if (v !== v) {
-    // NaN
-    // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
-    e = (1 << ebits) - 1; f = pow(2, fbits - 1); s = 0;
-  } else if (v === Infinity || v === -Infinity) {
-    e = (1 << ebits) - 1; f = 0; s = (v < 0) ? 1 : 0;
-  } else if (v === 0) {
-    e = 0; f = 0; s = (1 / v === -Infinity) ? 1 : 0;
-  } else {
-    s = v < 0;
-    v = abs(v);
-
-    if (v >= pow(2, 1 - bias)) {
-      e = min(floor(log(v) / LN2), 1023);
-      f = roundToEven(v / pow(2, e) * pow(2, fbits));
-      if (f / pow(2, fbits) >= 2) {
-        e = e + 1;
-        f = 1;
-      }
-      if (e > bias) {
-        // Overflow
-        e = (1 << ebits) - 1;
-        f = 0;
-      } else {
-        // Normalized
-        e = e + bias;
-        f = f - pow(2, fbits);
-      }
-    } else {
-      // Denormalized
-      e = 0;
-      f = roundToEven(v / pow(2, 1 - bias - fbits));
-    }
-  }
-
-  // Pack sign, exponent, fraction
-  bits = [];
-  for (i = fbits; i; i -= 1) { bits.push(f % 2 ? 1 : 0); f = floor(f / 2); }
-  for (i = ebits; i; i -= 1) { bits.push(e % 2 ? 1 : 0); e = floor(e / 2); }
-  bits.push(s ? 1 : 0);
-  bits.reverse();
-  str = bits.join('');
-
-  // Bits to bytes
-  bytes = [];
-  while (str.length) {
-    bytes.push(parseInt(str.substring(0, 8), 2));
-    str = str.substring(8);
-  }
-  return bytes;
-}
-
-function unpackIEEE754(bytes, ebits, fbits) {
-
-  // Bytes to bits
-  var bits = [], i, j, b, str,
-      bias, s, e, f;
-
-  for (i = bytes.length; i; i -= 1) {
-    b = bytes[i - 1];
-    for (j = 8; j; j -= 1) {
-      bits.push(b % 2 ? 1 : 0); b = b >> 1;
-    }
-  }
-  bits.reverse();
-  str = bits.join('');
-
-  // Unpack sign, exponent, fraction
-  bias = (1 << (ebits - 1)) - 1;
-  s = parseInt(str.substring(0, 1), 2) ? -1 : 1;
-  e = parseInt(str.substring(1, 1 + ebits), 2);
-  f = parseInt(str.substring(1 + ebits), 2);
-
-  // Produce number
-  if (e === (1 << ebits) - 1) {
-    return f !== 0 ? NaN : s * Infinity;
-  } else if (e > 0) {
-    // Normalized
-    return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
-  } else if (f !== 0) {
-    // Denormalized
-    return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
-  } else {
-    return s < 0 ? -0 : 0;
-  }
-}
-
-function unpackF64(b) { return unpackIEEE754(b, 11, 52); }
-function packF64(v) { return packIEEE754(v, 11, 52); }
-function unpackF32(b) { return unpackIEEE754(b, 8, 23); }
-function packF32(v) { return packIEEE754(v, 8, 23); }
-
-
-//
-// 3 The ArrayBuffer Type
-//
-
-(function() {
-
-  /** @constructor */
-  var ArrayBuffer = function ArrayBuffer(length) {
-    length = ECMAScript.ToInt32(length);
-    if (length < 0) throw new RangeError('ArrayBuffer size is not a small enough positive integer');
-
-    this.byteLength = length;
-    this._bytes = [];
-    this._bytes.length = length;
-
-    var i;
-    for (i = 0; i < this.byteLength; i += 1) {
-      this._bytes[i] = 0;
-    }
-
-    configureProperties(this);
-  };
-
-  exports.ArrayBuffer = exports.ArrayBuffer || ArrayBuffer;
-
-  //
-  // 4 The ArrayBufferView Type
-  //
-
-  // NOTE: this constructor is not exported
-  /** @constructor */
-  var ArrayBufferView = function ArrayBufferView() {
-    //this.buffer = null;
-    //this.byteOffset = 0;
-    //this.byteLength = 0;
-  };
-
-  //
-  // 5 The Typed Array View Types
-  //
-
-  function makeConstructor(bytesPerElement, pack, unpack) {
-    // Each TypedArray type requires a distinct constructor instance with
-    // identical logic, which this produces.
-
-    var ctor;
-    ctor = function(buffer, byteOffset, length) {
-      var array, sequence, i, s;
-
-      if (!arguments.length || typeof arguments[0] === 'number') {
-        // Constructor(unsigned long length)
-        this.length = ECMAScript.ToInt32(arguments[0]);
-        if (length < 0) throw new RangeError('ArrayBufferView size is not a small enough positive integer');
-
-        this.byteLength = this.length * this.BYTES_PER_ELEMENT;
-        this.buffer = new ArrayBuffer(this.byteLength);
-        this.byteOffset = 0;
-      } else if (typeof arguments[0] === 'object' && arguments[0].constructor === ctor) {
-        // Constructor(TypedArray array)
-        array = arguments[0];
-
-        this.length = array.length;
-        this.byteLength = this.length * this.BYTES_PER_ELEMENT;
-        this.buffer = new ArrayBuffer(this.byteLength);
-        this.byteOffset = 0;
-
-        for (i = 0; i < this.length; i += 1) {
-          this._setter(i, array._getter(i));
-        }
-      } else if (typeof arguments[0] === 'object' &&
-                 !(arguments[0] instanceof ArrayBuffer || ECMAScript.Class(arguments[0]) === 'ArrayBuffer')) {
-        // Constructor(sequence<type> array)
-        sequence = arguments[0];
-
-        this.length = ECMAScript.ToUint32(sequence.length);
-        this.byteLength = this.length * this.BYTES_PER_ELEMENT;
-        this.buffer = new ArrayBuffer(this.byteLength);
-        this.byteOffset = 0;
-
-        for (i = 0; i < this.length; i += 1) {
-          s = sequence[i];
-          this._setter(i, Number(s));
-        }
-      } else if (typeof arguments[0] === 'object' &&
-                 (arguments[0] instanceof ArrayBuffer || ECMAScript.Class(arguments[0]) === 'ArrayBuffer')) {
-        // Constructor(ArrayBuffer buffer,
-        //             optional unsigned long byteOffset, optional unsigned long length)
-        this.buffer = buffer;
-
-        this.byteOffset = ECMAScript.ToUint32(byteOffset);
-        if (this.byteOffset > this.buffer.byteLength) {
-          throw new RangeError("byteOffset out of range");
-        }
-
-        if (this.byteOffset % this.BYTES_PER_ELEMENT) {
-          // The given byteOffset must be a multiple of the element
-          // size of the specific type, otherwise an exception is raised.
-          throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size.");
-        }
-
-        if (arguments.length < 3) {
-          this.byteLength = this.buffer.byteLength - this.byteOffset;
-
-          if (this.byteLength % this.BYTES_PER_ELEMENT) {
-            throw new RangeError("length of buffer minus byteOffset not a multiple of the element size");
-          }
-          this.length = this.byteLength / this.BYTES_PER_ELEMENT;
-        } else {
-          this.length = ECMAScript.ToUint32(length);
-          this.byteLength = this.length * this.BYTES_PER_ELEMENT;
-        }
-
-        if ((this.byteOffset + this.byteLength) > this.buffer.byteLength) {
-          throw new RangeError("byteOffset and length reference an area beyond the end of the buffer");
-        }
-      } else {
-        throw new TypeError("Unexpected argument type(s)");
-      }
-
-      this.constructor = ctor;
-
-      configureProperties(this);
-      makeArrayAccessors(this);
-    };
-
-    ctor.prototype = new ArrayBufferView();
-    ctor.prototype.BYTES_PER_ELEMENT = bytesPerElement;
-    ctor.prototype._pack = pack;
-    ctor.prototype._unpack = unpack;
-    ctor.BYTES_PER_ELEMENT = bytesPerElement;
-
-    // getter type (unsigned long index);
-    ctor.prototype._getter = function(index) {
-      if (arguments.length < 1) throw new SyntaxError("Not enough arguments");
-
-      index = ECMAScript.ToUint32(index);
-      if (index >= this.length) {
-        return undefined;
-      }
-
-      var bytes = [], i, o;
-      for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT;
-           i < this.BYTES_PER_ELEMENT;
-           i += 1, o += 1) {
-        bytes.push(this.buffer._bytes[o]);
-      }
-      return this._unpack(bytes);
-    };
-
-    // NONSTANDARD: convenience alias for getter: type get(unsigned long index);
-    ctor.prototype.get = ctor.prototype._getter;
-
-    // setter void (unsigned long index, type value);
-    ctor.prototype._setter = function(index, value) {
-      if (arguments.length < 2) throw new SyntaxError("Not enough arguments");
-
-      index = ECMAScript.ToUint32(index);
-      if (index >= this.length) {
-        return undefined;
-      }
-
-      var bytes = this._pack(value), i, o;
-      for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT;
-           i < this.BYTES_PER_ELEMENT;
-           i += 1, o += 1) {
-        this.buffer._bytes[o] = bytes[i];
-      }
-    };
-
-    // void set(TypedArray array, optional unsigned long offset);
-    // void set(sequence<type> array, optional unsigned long offset);
-    ctor.prototype.set = function(index, value) {
-      if (arguments.length < 1) throw new SyntaxError("Not enough arguments");
-      var array, sequence, offset, len,
-          i, s, d,
-          byteOffset, byteLength, tmp;
-
-      if (typeof arguments[0] === 'object' && arguments[0].constructor === this.constructor) {
-        // void set(TypedArray array, optional unsigned long offset);
-        array = arguments[0];
-        offset = ECMAScript.ToUint32(arguments[1]);
-
-        if (offset + array.length > this.length) {
-          throw new RangeError("Offset plus length of array is out of range");
-        }
-
-        byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT;
-        byteLength = array.length * this.BYTES_PER_ELEMENT;
-
-        if (array.buffer === this.buffer) {
-          tmp = [];
-          for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) {
-            tmp[i] = array.buffer._bytes[s];
-          }
-          for (i = 0, d = byteOffset; i < byteLength; i += 1, d += 1) {
-            this.buffer._bytes[d] = tmp[i];
-          }
-        } else {
-          for (i = 0, s = array.byteOffset, d = byteOffset;
-               i < byteLength; i += 1, s += 1, d += 1) {
-            this.buffer._bytes[d] = array.buffer._bytes[s];
-          }
-        }
-      } else if (typeof arguments[0] === 'object' && typeof arguments[0].length !== 'undefined') {
-        // void set(sequence<type> array, optional unsigned long offset);
-        sequence = arguments[0];
-        len = ECMAScript.ToUint32(sequence.length);
-        offset = ECMAScript.ToUint32(arguments[1]);
-
-        if (offset + len > this.length) {
-          throw new RangeError("Offset plus length of array is out of range");
-        }
-
-        for (i = 0; i < len; i += 1) {
-          s = sequence[i];
-          this._setter(offset + i, Number(s));
-        }
-      } else {
-        throw new TypeError("Unexpected argument type(s)");
-      }
-    };
-
-    // TypedArray subarray(long begin, optional long end);
-    ctor.prototype.subarray = function(start, end) {
-      function clamp(v, min, max) { return v < min ? min : v > max ? max : v; }
-
-      start = ECMAScript.ToInt32(start);
-      end = ECMAScript.ToInt32(end);
-
-      if (arguments.length < 1) { start = 0; }
-      if (arguments.length < 2) { end = this.length; }
-
-      if (start < 0) { start = this.length + start; }
-      if (end < 0) { end = this.length + end; }
-
-      start = clamp(start, 0, this.length);
-      end = clamp(end, 0, this.length);
-
-      var len = end - start;
-      if (len < 0) {
-        len = 0;
-      }
-
-      return new this.constructor(
-        this.buffer, this.byteOffset + start * this.BYTES_PER_ELEMENT, len);
-    };
-
-    return ctor;
-  }
-
-  var Int8Array = makeConstructor(1, packI8, unpackI8);
-  var Uint8Array = makeConstructor(1, packU8, unpackU8);
-  var Uint8ClampedArray = makeConstructor(1, packU8Clamped, unpackU8);
-  var Int16Array = makeConstructor(2, packI16, unpackI16);
-  var Uint16Array = makeConstructor(2, packU16, unpackU16);
-  var Int32Array = makeConstructor(4, packI32, unpackI32);
-  var Uint32Array = makeConstructor(4, packU32, unpackU32);
-  var Float32Array = makeConstructor(4, packF32, unpackF32);
-  var Float64Array = makeConstructor(8, packF64, unpackF64);
-
-  exports.Int8Array = exports.Int8Array || Int8Array;
-  exports.Uint8Array = exports.Uint8Array || Uint8Array;
-  exports.Uint8ClampedArray = exports.Uint8ClampedArray || Uint8ClampedArray;
-  exports.Int16Array = exports.Int16Array || Int16Array;
-  exports.Uint16Array = exports.Uint16Array || Uint16Array;
-  exports.Int32Array = exports.Int32Array || Int32Array;
-  exports.Uint32Array = exports.Uint32Array || Uint32Array;
-  exports.Float32Array = exports.Float32Array || Float32Array;
-  exports.Float64Array = exports.Float64Array || Float64Array;
-}());
-
-//
-// 6 The DataView View Type
-//
-
-(function() {
-  function r(array, index) {
-    return ECMAScript.IsCallable(array.get) ? array.get(index) : array[index];
-  }
-
-  var IS_BIG_ENDIAN = (function() {
-    var u16array = new(exports.Uint16Array)([0x1234]),
-        u8array = new(exports.Uint8Array)(u16array.buffer);
-    return r(u8array, 0) === 0x12;
-  }());
-
-  // Constructor(ArrayBuffer buffer,
-  //             optional unsigned long byteOffset,
-  //             optional unsigned long byteLength)
-  /** @constructor */
-  var DataView = function DataView(buffer, byteOffset, byteLength) {
-    if (arguments.length === 0) {
-      buffer = new exports.ArrayBuffer(0);
-    } else if (!(buffer instanceof exports.ArrayBuffer || ECMAScript.Class(buffer) === 'ArrayBuffer')) {
-      throw new TypeError("TypeError");
-    }
-
-    this.buffer = buffer || new exports.ArrayBuffer(0);
-
-    this.byteOffset = ECMAScript.ToUint32(byteOffset);
-    if (this.byteOffset > this.buffer.byteLength) {
-      throw new RangeError("byteOffset out of range");
-    }
-
-    if (arguments.length < 3) {
-      this.byteLength = this.buffer.byteLength - this.byteOffset;
-    } else {
-      this.byteLength = ECMAScript.ToUint32(byteLength);
-    }
-
-    if ((this.byteOffset + this.byteLength) > this.buffer.byteLength) {
-      throw new RangeError("byteOffset and length reference an area beyond the end of the buffer");
-    }
-
-    configureProperties(this);
-  };
-
-  function makeGetter(arrayType) {
-    return function(byteOffset, littleEndian) {
-
-      byteOffset = ECMAScript.ToUint32(byteOffset);
-
-      if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) {
-        throw new RangeError("Array index out of range");
-      }
-      byteOffset += this.byteOffset;
-
-      var uint8Array = new exports.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT),
-          bytes = [], i;
-      for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) {
-        bytes.push(r(uint8Array, i));
-      }
-
-      if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) {
-        bytes.reverse();
-      }
-
-      return r(new arrayType(new exports.Uint8Array(bytes).buffer), 0);
-    };
-  }
-
-  DataView.prototype.getUint8 = makeGetter(exports.Uint8Array);
-  DataView.prototype.getInt8 = makeGetter(exports.Int8Array);
-  DataView.prototype.getUint16 = makeGetter(exports.Uint16Array);
-  DataView.prototype.getInt16 = makeGetter(exports.Int16Array);
-  DataView.prototype.getUint32 = makeGetter(exports.Uint32Array);
-  DataView.prototype.getInt32 = makeGetter(exports.Int32Array);
-  DataView.prototype.getFloat32 = makeGetter(exports.Float32Array);
-  DataView.prototype.getFloat64 = makeGetter(exports.Float64Array);
-
-  function makeSetter(arrayType) {
-    return function(byteOffset, value, littleEndian) {
-
-      byteOffset = ECMAScript.ToUint32(byteOffset);
-      if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) {
-        throw new RangeError("Array index out of range");
-      }
-
-      // Get bytes
-      var typeArray = new arrayType([value]),
-          byteArray = new exports.Uint8Array(typeArray.buffer),
-          bytes = [], i, byteView;
-
-      for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) {
-        bytes.push(r(byteArray, i));
-      }
-
-      // Flip if necessary
-      if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) {
-        bytes.reverse();
-      }
-
-      // Write them
-      byteView = new exports.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT);
-      byteView.set(bytes);
-    };
-  }
-
-  DataView.prototype.setUint8 = makeSetter(exports.Uint8Array);
-  DataView.prototype.setInt8 = makeSetter(exports.Int8Array);
-  DataView.prototype.setUint16 = makeSetter(exports.Uint16Array);
-  DataView.prototype.setInt16 = makeSetter(exports.Int16Array);
-  DataView.prototype.setUint32 = makeSetter(exports.Uint32Array);
-  DataView.prototype.setInt32 = makeSetter(exports.Int32Array);
-  DataView.prototype.setFloat32 = makeSetter(exports.Float32Array);
-  DataView.prototype.setFloat64 = makeSetter(exports.Float64Array);
-
-  exports.DataView = exports.DataView || DataView;
-
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/package.json
deleted file mode 100644 (file)
index b5a0a16..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-{
-  "_args": [
-    [
-      "typedarray@https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "typedarray@https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-  "_id": "typedarray@https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream/typedarray",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "typedarray@https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-    "name": "typedarray",
-    "escapedName": "typedarray",
-    "rawSpec": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/concat-stream"
-  ],
-  "_spec": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/typedarray/issues"
-  },
-  "description": "TypedArray polyfill for old browsers",
-  "devDependencies": {
-    "tape": "~2.3.2"
-  },
-  "homepage": "https://github.com/substack/typedarray",
-  "keywords": [
-    "ArrayBuffer",
-    "DataView",
-    "Float32Array",
-    "Float64Array",
-    "Int8Array",
-    "Int16Array",
-    "Int32Array",
-    "Uint8Array",
-    "Uint8ClampedArray",
-    "Uint16Array",
-    "Uint32Array",
-    "typed",
-    "array",
-    "polyfill"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "typedarray",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/typedarray.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js test/server/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/6..latest",
-      "firefox/16..latest",
-      "firefox/nightly",
-      "chrome/22..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/readme.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/readme.markdown
deleted file mode 100644 (file)
index d18f6f7..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-# typedarray
-
-TypedArray polyfill ripped from [this
-module](https://raw.github.com/inexorabletash/polyfill).
-
-[![build status](https://secure.travis-ci.org/substack/typedarray.png)](http://travis-ci.org/substack/typedarray)
-
-[![testling badge](https://ci.testling.com/substack/typedarray.png)](https://ci.testling.com/substack/typedarray)
-
-# example
-
-``` js
-var Uint8Array = require('typedarray').Uint8Array;
-var ua = new Uint8Array(5);
-ua[1] = 256 + 55;
-console.log(ua[1]);
-```
-
-output:
-
-```
-55
-```
-
-# methods
-
-``` js
-var TA = require('typedarray')
-```
-
-The `TA` object has the following constructors:
-
-* TA.ArrayBuffer
-* TA.DataView
-* TA.Float32Array
-* TA.Float64Array
-* TA.Int8Array
-* TA.Int16Array
-* TA.Int32Array
-* TA.Uint8Array
-* TA.Uint8ClampedArray
-* TA.Uint16Array
-* TA.Uint32Array
-
-# install
-
-With [npm](https://npmjs.org) do:
-
-```
-npm install typedarray
-```
-
-To use this module in the browser, compile with
-[browserify](http://browserify.org)
-or download a UMD build from browserify CDN:
-
-http://wzrd.in/standalone/typedarray@latest
-
-# license
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/server/undef_globals.js
deleted file mode 100644 (file)
index 425950f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var test = require('tape');
-var vm = require('vm');
-var fs = require('fs');
-var src = fs.readFileSync(__dirname + '/../../index.js', 'utf8');
-
-test('u8a without globals', function (t) {
-    var c = {
-        module: { exports: {} },
-    };
-    c.exports = c.module.exports;
-    vm.runInNewContext(src, c);
-    var TA = c.module.exports;
-    var ua = new(TA.Uint8Array)(5);
-    
-    t.equal(ua.length, 5);
-    ua[1] = 256 + 55;
-    t.equal(ua[1], 55);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/tarray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/node_modules/typedarray/test/tarray.js
deleted file mode 100644 (file)
index df596a3..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var TA = require('../');
-var test = require('tape');
-
-test('tiny u8a test', function (t) {
-    var ua = new(TA.Uint8Array)(5);
-    t.equal(ua.length, 5);
-    ua[1] = 256 + 55;
-    t.equal(ua[1], 55);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/package.json
deleted file mode 100644 (file)
index 770bd15..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-{
-  "_args": [
-    [
-      "concat-stream@https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "concat-stream@https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-  "_id": "concat-stream@https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-6DJbuJ5VAA5StibZdGb94aKM/l0=",
-  "_location": "/grunt-standard/standard/eslint/concat-stream",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "concat-stream@https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-    "name": "concat-stream",
-    "escapedName": "concat-stream",
-    "rawSpec": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-    "saveSpec": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-    "fetchSpec": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Max Ogden",
-    "email": "max@maxogden.com"
-  },
-  "bugs": {
-    "url": "http://github.com/maxogden/concat-stream/issues"
-  },
-  "dependencies": {
-    "inherits": "~2.0.1",
-    "readable-stream": "~1.1.9",
-    "typedarray": "~0.0.5"
-  },
-  "description": "writable stream that concatenates strings or binary data and calls a callback with the result",
-  "devDependencies": {
-    "tape": "~2.3.2"
-  },
-  "engines": [
-    "node >= 0.8"
-  ],
-  "homepage": "https://github.com/maxogden/concat-stream#readme",
-  "license": "MIT",
-  "main": "index.js",
-  "name": "concat-stream",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/maxogden/concat-stream.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js test/server/*.js"
-  },
-  "tags": [
-    "stream",
-    "simple",
-    "util",
-    "utility"
-  ],
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/17..latest",
-      "firefox/nightly",
-      "chrome/22..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.8.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/readme.md
deleted file mode 100644 (file)
index d028aec..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-# concat-stream
-
-Writable stream that concatenates strings or binary data and calls a callback with the result. Not a transform stream -- more of a stream sink.
-
-[![NPM](https://nodei.co/npm/concat-stream.png)](https://nodei.co/npm/concat-stream/)
-
-### examples
-
-#### Buffers
-
-```js
-var fs = require('fs')
-var concat = require('concat-stream')
-
-var readStream = fs.createReadStream('cat.png')
-var concatStream = concat(gotPicture)
-
-readStream.on('error', handleError)
-readStream.pipe(concatStream)
-
-function gotPicture(imageBuffer) {
-  // imageBuffer is all of `cat.png` as a node.js Buffer
-}
-
-function handleError(err) {
-  // handle your error appropriately here, e.g.:
-  console.error(err) // print the error to STDERR
-  process.exit(1) // exit program with non-zero exit code
-}
-
-```
-
-#### Arrays
-
-```js
-var write = concat(function(data) {})
-write.write([1,2,3])
-write.write([4,5,6])
-write.end()
-// data will be [1,2,3,4,5,6] in the above callback
-```
-
-#### Uint8Arrays
-
-```js
-var write = concat(function(data) {})
-var a = new Uint8Array(3)
-a[0] = 97; a[1] = 98; a[2] = 99
-write.write(a)
-write.write('!')
-write.end(Buffer('!!1'))
-```
-
-See `test/` for more examples
-
-# methods
-
-```js
-var concat = require('concat-stream')
-```
-
-## var writable = concat(opts={}, cb)
-
-Return a `writable` stream that will fire `cb(data)` with all of the data that
-was written to the stream. Data can be written to `writable` as strings,
-Buffers, arrays of byte integers, and Uint8Arrays. 
-
-By default `concat-stream` will give you back the same data type as the type of the first buffer written to the stream. Use `opts.encoding` to set what format `data` should be returned as, e.g. if you if you don't want to rely on the built-in type checking or for some other reason.
-
-* `string` - get a string
-* `buffer` - get back a Buffer
-* `array` - get an array of byte integers
-* `uint8array`, `u8`, `uint8` - get back a Uint8Array
-* `object`, get back an array of Objects
-
-If you don't specify an encoding, and the types can't be inferred (e.g. you write things that aren't in the list above), it will try to convert concat them into a `Buffer`.
-
-# error handling
-
-`concat-stream` does not handle errors for you, so you must handle errors on whatever streams you pipe into `concat-stream`. This is a general rule when programming with node.js streams: always handle errors on each and every stream. Since `concat-stream` is not itself a stream it does not emit errors.
-
-# license
-
-MIT LICENSE
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/array.js
deleted file mode 100644 (file)
index 86e7dd4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-
-test('array stream', function (t) {
-  t.plan(1)
-  var arrays = concat({ encoding: 'array' }, function(out) {
-    t.deepEqual(out, [1,2,3,4,5,6])
-  })
-  arrays.write([1,2,3])
-  arrays.write([4,5,6])
-  arrays.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/buffer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/buffer.js
deleted file mode 100644 (file)
index d28f5f9..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-var TA = require('typedarray')
-var U8 = typeof Uint8Array !== 'undefined' ? Uint8Array : TA.Uint8Array
-
-test('buffer stream', function (t) {
-  t.plan(2)
-  var buffers = concat(function(out) {
-    t.ok(Buffer.isBuffer(out))
-    t.equal(out.toString('utf8'), 'pizza Array is not a stringy cat')
-  })
-  buffers.write(new Buffer('pizza Array is not a ', 'utf8'))
-  buffers.write(new Buffer('stringy cat'))
-  buffers.end()
-})
-
-test('buffer mixed writes', function (t) {
-  t.plan(2)
-  var buffers = concat(function(out) {
-    t.ok(Buffer.isBuffer(out))
-    t.equal(out.toString('utf8'), 'pizza Array is not a stringy cat555')
-  })
-  buffers.write(new Buffer('pizza'))
-  buffers.write(' Array is not a ')
-  buffers.write([ 115, 116, 114, 105, 110, 103, 121 ])
-  var u8 = new U8(4)
-  u8[0] = 32; u8[1] = 99; u8[2] = 97; u8[3] = 116
-  buffers.write(u8)
-  buffers.write(555)
-  buffers.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/infer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/infer.js
deleted file mode 100644 (file)
index 91ab933..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-
-test('type inference works as expected', function(t) {
-  var stream = concat()
-  t.equal(stream.inferEncoding(['hello']), 'array', 'array')
-  t.equal(stream.inferEncoding(new Buffer('hello')), 'buffer', 'buffer')
-  t.equal(stream.inferEncoding(undefined), 'buffer', 'buffer')
-  t.equal(stream.inferEncoding(new Uint8Array(1)), 'uint8array', 'uint8array')
-  t.equal(stream.inferEncoding('hello'), 'string', 'string')
-  t.equal(stream.inferEncoding(''), 'string', 'string')
-  t.equal(stream.inferEncoding({hello: "world"}), 'object', 'object')
-  t.equal(stream.inferEncoding(1), 'buffer', 'buffer')
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/nothing.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/nothing.js
deleted file mode 100644 (file)
index 6ac6049..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-
-test('no callback stream', function (t) {
-  var stream = concat()
-  stream.write('space')
-  stream.end(' cats')
-  t.end()
-})
-
-test('no encoding set, no data', function (t) {
-  var stream = concat(function(data) {
-    t.deepEqual(data, [])
-    t.end()
-  })
-  stream.end()
-})
-
-test('encoding set to string, no data', function (t) {
-  var stream = concat({ encoding: 'string' }, function(data) {
-    t.deepEqual(data, '')
-    t.end()
-  })
-  stream.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/objects.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/objects.js
deleted file mode 100644 (file)
index ad921ed..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-
-test('writing objects', function (t) {
-  var stream = concat({encoding: "objects"}, concatted)
-  function concatted(objs) {
-    t.equal(objs.length, 2)
-    t.deepEqual(objs[0], {"foo": "bar"})
-    t.deepEqual(objs[1], {"baz": "taco"})
-  }
-  stream.write({"foo": "bar"})
-  stream.write({"baz": "taco"})
-  stream.end()
-  t.end()
-})
-
-
-test('switch to objects encoding if no encoding specified and objects are written', function (t) {
-  var stream = concat(concatted)
-  function concatted(objs) {
-    t.equal(objs.length, 2)
-    t.deepEqual(objs[0], {"foo": "bar"})
-    t.deepEqual(objs[1], {"baz": "taco"})
-  }
-  stream.write({"foo": "bar"})
-  stream.write({"baz": "taco"})
-  stream.end()
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/server/ls.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/server/ls.js
deleted file mode 100644 (file)
index 3258d8d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var concat = require('../../')
-var spawn = require('child_process').spawn
-var exec = require('child_process').exec
-var test = require('tape')
-
-test('ls command', function (t) {
-  t.plan(1)
-  var cmd = spawn('ls', [ __dirname ])
-  cmd.stdout.pipe(
-    concat(function(out) {
-      exec('ls ' + __dirname, function (err, body) {
-        t.equal(out.toString('utf8'), body.toString('utf8'))
-      })
-    })
-  )
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/string.js
deleted file mode 100644 (file)
index 218c522..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-var TA = require('typedarray')
-var U8 = typeof Uint8Array !== 'undefined' ? Uint8Array : TA.Uint8Array
-
-test('string -> buffer stream', function (t) {
-  t.plan(2)
-  var strings = concat({ encoding: 'buffer'}, function(out) {
-    t.ok(Buffer.isBuffer(out))
-    t.equal(out.toString('utf8'), 'nacho dogs')
-  })
-  strings.write("nacho ")
-  strings.write("dogs")
-  strings.end()
-})
-
-test('string stream', function (t) {
-  t.plan(2)
-  var strings = concat({ encoding: 'string' }, function(out) {
-    t.equal(typeof out, 'string')
-    t.equal(out, 'nacho dogs')
-  })
-  strings.write("nacho ")
-  strings.write("dogs")
-  strings.end()
-})
-
-test('end chunk', function (t) {
-  t.plan(1)
-  var endchunk = concat({ encoding: 'string' }, function(out) {
-    t.equal(out, 'this is the end')
-  })
-  endchunk.write("this ")
-  endchunk.write("is the ")
-  endchunk.end("end")
-})
-
-test('string from mixed write encodings', function (t) {
-  t.plan(2)
-  var strings = concat({ encoding: 'string' }, function(out) {
-    t.equal(typeof out, 'string')
-    t.equal(out, 'nacho dogs')
-  })
-  strings.write('na')
-  strings.write(Buffer('cho'))
-  strings.write([ 32, 100 ])
-  var u8 = new U8(3)
-  u8[0] = 111; u8[1] = 103; u8[2] = 115;
-  strings.end(u8)
-})
-
-test('string from buffers with multibyte characters', function (t) {
-  t.plan(2)
-  var strings = concat({ encoding: 'string' }, function(out) {
-    t.equal(typeof out, 'string')
-    t.equal(out, '☃☃☃☃☃☃☃☃')
-  })
-  var snowman = new Buffer('☃')
-  for (var i = 0; i < 8; i++) {
-    strings.write(snowman.slice(0, 1))
-    strings.write(snowman.slice(1))    
-  }
-  strings.end()
-})
-
-test('string infer encoding with empty string chunk', function (t) {
-  t.plan(2)
-  var strings = concat(function(out) {
-    t.equal(typeof out, 'string')
-    t.equal(out, 'nacho dogs')
-  })
-  strings.write("")
-  strings.write("nacho ")
-  strings.write("dogs")
-  strings.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/typedarray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/concat-stream/test/typedarray.js
deleted file mode 100644 (file)
index ee07110..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var concat = require('../')
-var test = require('tape')
-var TA = require('typedarray')
-var U8 = typeof Uint8Array !== 'undefined' ? Uint8Array : TA.Uint8Array
-
-test('typed array stream', function (t) {
-  t.plan(2)
-  var a = new U8(5)
-  a[0] = 97; a[1] = 98; a[2] = 99; a[3] = 100; a[4] = 101;
-  var b = new U8(3)
-  b[0] = 32; b[1] = 102; b[2] = 103;
-  var c = new U8(4)
-  c[0] = 32; c[1] = 120; c[2] = 121; c[3] = 122;
-
-  var arrays = concat({ encoding: 'Uint8Array' }, function(out) {
-    t.equal(typeof out.subarray, 'function')
-    t.deepEqual(Buffer(out).toString('utf8'), 'abcde fg xyz')
-  })
-  arrays.write(a)
-  arrays.write(b)
-  arrays.end(c)
-})
-
-test('typed array from strings, buffers, and arrays', function (t) {
-  t.plan(2)
-  var arrays = concat({ encoding: 'Uint8Array' }, function(out) {
-    t.equal(typeof out.subarray, 'function')
-    t.deepEqual(Buffer(out).toString('utf8'), 'abcde fg xyz')
-  })
-  arrays.write('abcde')
-  arrays.write(Buffer(' fg '))
-  arrays.end([ 120, 121, 122 ])
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.jshintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.jshintrc
deleted file mode 100644 (file)
index 299877f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-  "laxbreak": true
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/.npmignore
deleted file mode 100644 (file)
index 7e6163d..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-support
-test
-examples
-example
-*.sock
-dist
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/History.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/History.md
deleted file mode 100644 (file)
index 770e483..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-
-2.1.3 / 2015-03-13
-==================
-
-  * Updated stdout/stderr example (#186)
-  * Updated example/stdout.js to match debug current behaviour
-  * Renamed example/stderr.js to stdout.js
-  * Update Readme.md (#184)
-  * replace high intensity foreground color for bold (#182, #183)
-
-2.1.2 / 2015-03-01
-==================
-
-  * dist: recompile
-  * update "ms" to v0.7.0
-  * package: update "browserify" to v9.0.3
-  * component: fix "ms.js" repo location
-  * changed bower package name
-  * updated documentation about using debug in a browser
-  * fix: security error on safari (#167, #168, @yields)
-
-2.1.1 / 2014-12-29
-==================
-
-  * browser: use `typeof` to check for `console` existence
-  * browser: check for `console.log` truthiness (fix IE 8/9)
-  * browser: add support for Chrome apps
-  * Readme: added Windows usage remarks
-  * Add `bower.json` to properly support bower install
-
-2.1.0 / 2014-10-15
-==================
-
-  * node: implement `DEBUG_FD` env variable support
-  * package: update "browserify" to v6.1.0
-  * package: add "license" field to package.json (#135, @panuhorsmalahti)
-
-2.0.0 / 2014-09-01
-==================
-
-  * package: update "browserify" to v5.11.0
-  * node: use stderr rather than stdout for logging (#29, @stephenmathieson)
-
-1.0.4 / 2014-07-15
-==================
-
-  * dist: recompile
-  * example: remove `console.info()` log usage
-  * example: add "Content-Type" UTF-8 header to browser example
-  * browser: place %c marker after the space character
-  * browser: reset the "content" color via `color: inherit`
-  * browser: add colors support for Firefox >= v31
-  * debug: prefer an instance `log()` function over the global one (#119)
-  * Readme: update documentation about styled console logs for FF v31 (#116, @wryk)
-
-1.0.3 / 2014-07-09
-==================
-
-  * Add support for multiple wildcards in namespaces (#122, @seegno)
-  * browser: fix lint
-
-1.0.2 / 2014-06-10
-==================
-
-  * browser: update color palette (#113, @gscottolson)
-  * common: make console logging function configurable (#108, @timoxley)
-  * node: fix %o colors on old node <= 0.8.x
-  * Makefile: find node path using shell/which (#109, @timoxley)
-
-1.0.1 / 2014-06-06
-==================
-
-  * browser: use `removeItem()` to clear localStorage
-  * browser, node: don't set DEBUG if namespaces is undefined (#107, @leedm777)
-  * package: add "contributors" section
-  * node: fix comment typo
-  * README: list authors
-
-1.0.0 / 2014-06-04
-==================
-
-  * make ms diff be global, not be scope
-  * debug: ignore empty strings in enable()
-  * node: make DEBUG_COLORS able to disable coloring
-  * *: export the `colors` array
-  * npmignore: don't publish the `dist` dir
-  * Makefile: refactor to use browserify
-  * package: add "browserify" as a dev dependency
-  * Readme: add Web Inspector Colors section
-  * node: reset terminal color for the debug content
-  * node: map "%o" to `util.inspect()`
-  * browser: map "%j" to `JSON.stringify()`
-  * debug: add custom "formatters"
-  * debug: use "ms" module for humanizing the diff
-  * Readme: add "bash" syntax highlighting
-  * browser: add Firebug color support
-  * browser: add colors for WebKit browsers
-  * node: apply log to `console`
-  * rewrite: abstract common logic for Node & browsers
-  * add .jshintrc file
-
-0.8.1 / 2014-04-14
-==================
-
-  * package: re-add the "component" section
-
-0.8.0 / 2014-03-30
-==================
-
-  * add `enable()` method for nodejs. Closes #27
-  * change from stderr to stdout
-  * remove unnecessary index.js file
-
-0.7.4 / 2013-11-13
-==================
-
-  * remove "browserify" key from package.json (fixes something in browserify)
-
-0.7.3 / 2013-10-30
-==================
-
-  * fix: catch localStorage security error when cookies are blocked (Chrome)
-  * add debug(err) support. Closes #46
-  * add .browser prop to package.json. Closes #42
-
-0.7.2 / 2013-02-06
-==================
-
-  * fix package.json
-  * fix: Mobile Safari (private mode) is broken with debug
-  * fix: Use unicode to send escape character to shell instead of octal to work with strict mode javascript
-
-0.7.1 / 2013-02-05
-==================
-
-  * add repository URL to package.json
-  * add DEBUG_COLORED to force colored output
-  * add browserify support
-  * fix component. Closes #24
-
-0.7.0 / 2012-05-04
-==================
-
-  * Added .component to package.json
-  * Added debug.component.js build
-
-0.6.0 / 2012-03-16
-==================
-
-  * Added support for "-" prefix in DEBUG [Vinay Pulim]
-  * Added `.enabled` flag to the node version [TooTallNate]
-
-0.5.0 / 2012-02-02
-==================
-
-  * Added: humanize diffs. Closes #8
-  * Added `debug.disable()` to the CS variant
-  * Removed padding. Closes #10
-  * Fixed: persist client-side variant again. Closes #9
-
-0.4.0 / 2012-02-01
-==================
-
-  * Added browser variant support for older browsers [TooTallNate]
-  * Added `debug.enable('project:*')` to browser variant [TooTallNate]
-  * Added padding to diff (moved it to the right)
-
-0.3.0 / 2012-01-26
-==================
-
-  * Added millisecond diff when isatty, otherwise UTC string
-
-0.2.0 / 2012-01-22
-==================
-
-  * Added wildcard support
-
-0.1.0 / 2011-12-02
-==================
-
-  * Added: remove colors unless stderr isatty [TooTallNate]
-
-0.0.1 / 2010-01-03
-==================
-
-  * Initial release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Makefile
deleted file mode 100644 (file)
index b0bde6e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-# get Makefile directory name: http://stackoverflow.com/a/5982798/376773
-THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
-THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
-
-# BIN directory
-BIN := $(THIS_DIR)/node_modules/.bin
-
-# applications
-NODE ?= $(shell which node)
-NPM ?= $(NODE) $(shell which npm)
-BROWSERIFY ?= $(NODE) $(BIN)/browserify
-
-all: dist/debug.js
-
-install: node_modules
-
-clean:
-       @rm -rf node_modules dist
-
-dist:
-       @mkdir -p $@
-
-dist/debug.js: node_modules browser.js debug.js dist
-       @$(BROWSERIFY) \
-               --standalone debug \
-               . > $@
-
-node_modules: package.json
-       @NODE_ENV= $(NPM) install
-       @touch node_modules
-
-.PHONY: all install clean
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/Readme.md
deleted file mode 100644 (file)
index 14222e0..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-# debug
-
-  tiny node.js debugging utility modelled after node core's debugging technique.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
- With `debug` you simply invoke the exported function to generate your debug function, passing it a name which will determine if a noop function is returned, or a decorated `console.error`, so all of the `console` format string goodies you're used to work fine. A unique color is selected per-function for visibility.
-
-Example _app.js_:
-
-```js
-var debug = require('debug')('http')
-  , http = require('http')
-  , name = 'My App';
-
-// fake app
-
-debug('booting %s', name);
-
-http.createServer(function(req, res){
-  debug(req.method + ' ' + req.url);
-  res.end('hello\n');
-}).listen(3000, function(){
-  debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example _worker.js_:
-
-```js
-var debug = require('debug')('worker');
-
-setInterval(function(){
-  debug('doing some work');
-}, 1000);
-```
-
- The __DEBUG__ environment variable is then used to enable these based on space or comma-delimited names. Here are some examples:
-
-  ![debug http and worker](http://f.cl.ly/items/18471z1H402O24072r1J/Screenshot.png)
-
-  ![debug worker](http://f.cl.ly/items/1X413v1a3M0d3C2c1E0i/Screenshot.png)
-
-#### Windows note
-
- On Windows the environment variable is set using the `set` command. 
- ```cmd
- set DEBUG=*,-not_this
- ```
-
-Then, run the program to be debugged as usual.
-
-## Millisecond diff
-
-  When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-  ![](http://f.cl.ly/items/2i3h1d3t121M2Z1A3Q0N/Screenshot.png)
-
-  When stdout is not a TTY, `Date#toUTCString()` is used, making it more useful for logging the debug information as shown below:
-
-  ![](http://f.cl.ly/items/112H3i0e0o0P0a2Q2r11/Screenshot.png)
-
-## Conventions
-
- If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".
-
-## Wildcards
-
-  The `*` character may be used as a wildcard. Suppose for example your library has debuggers named "connect:bodyParser", "connect:compress", "connect:session", instead of listing all three with `DEBUG=connect:bodyParser,connect.compress,connect:session`, you may simply do `DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-  You can also exclude specific debuggers by prefixing them with a "-" character.  For example, `DEBUG=*,-connect:*` would include all debuggers except those starting with "connect:".
-
-## Browser support
-
-  Debug works in the browser as well, currently persisted by `localStorage`. Consider the situation shown below where you have `worker:a` and `worker:b`, and wish to debug both. Somewhere in the code on your page, include:
-
-```js
-window.myDebug = require("debug");
-```
-
-  ("debug" is a global object in the browser so we give this object a different name.) When your page is open in the browser, type the following in the console:
-
-```js
-myDebug.enable("worker:*")
-```
-
-  Refresh the page. Debug output will continue to be sent to the console until it is disabled by typing `myDebug.disable()` in the console.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
-  a('doing some work');
-}, 1000);
-
-setInterval(function(){
-  b('doing some work');
-}, 1200);
-```
-
-#### Web Inspector Colors
-
-  Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-  option. These are WebKit web inspectors, Firefox ([since version
-  31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-  and the Firebug plugin for Firefox (any version).
-
-  Colored output looks something like:
-
-  ![](https://cloud.githubusercontent.com/assets/71256/3139768/b98c5fd8-e8ef-11e3-862a-f7253b6f47c6.png)
-
-### stderr vs stdout
-
-You can set an alternative logging method per-namespace by overriding the `log` method on a per-namespace or globally:
-
-Example _stdout.js_:
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/bower.json
deleted file mode 100644 (file)
index f7d3f6d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-  "name": "visionmedia-debug",
-  "main": "dist/debug.js",
-  "version": "2.1.3",
-  "homepage": "https://github.com/visionmedia/debug",
-  "authors": [
-    "TJ Holowaychuk <tj@vision-media.ca>"
-  ],
-  "description": "visionmedia-debug",
-  "moduleType": [
-    "amd",
-    "es6",
-    "globals",
-    "node"
-  ],
-  "keywords": [
-    "visionmedia",
-    "debug"
-  ],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "bower_components",
-    "test",
-    "tests"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/browser.js
deleted file mode 100644 (file)
index 55f4cf9..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-
-/**
- * This is the web browser implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Use chrome.storage.local if we are in an app
- */
-
-var storage;
-
-if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined')
-  storage = chrome.storage.local;
-else
-  storage = localstorage();
-
-/**
- * Colors.
- */
-
-exports.colors = [
-  'lightseagreen',
-  'forestgreen',
-  'goldenrod',
-  'dodgerblue',
-  'darkorchid',
-  'crimson'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-function useColors() {
-  // is webkit? http://stackoverflow.com/a/16459606/376773
-  return ('WebkitAppearance' in document.documentElement.style) ||
-    // is firebug? http://stackoverflow.com/a/398120/376773
-    (window.console && (console.firebug || (console.exception && console.table))) ||
-    // is firefox >= v31?
-    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
-    (navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31);
-}
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-exports.formatters.j = function(v) {
-  return JSON.stringify(v);
-};
-
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-
-  args[0] = (useColors ? '%c' : '')
-    + this.namespace
-    + (useColors ? ' %c' : ' ')
-    + args[0]
-    + (useColors ? '%c ' : ' ')
-    + '+' + exports.humanize(this.diff);
-
-  if (!useColors) return args;
-
-  var c = 'color: ' + this.color;
-  args = [args[0], c, 'color: inherit'].concat(Array.prototype.slice.call(args, 1));
-
-  // the final "%c" is somewhat tricky, because there could be other
-  // arguments passed either before or after the %c, so we need to
-  // figure out the correct index to insert the CSS into
-  var index = 0;
-  var lastC = 0;
-  args[0].replace(/%[a-z%]/g, function(match) {
-    if ('%%' === match) return;
-    index++;
-    if ('%c' === match) {
-      // we only are interested in the *last* %c
-      // (the user may have provided their own)
-      lastC = index;
-    }
-  });
-
-  args.splice(lastC, 0, c);
-  return args;
-}
-
-/**
- * Invokes `console.log()` when available.
- * No-op when `console.log` is not a "function".
- *
- * @api public
- */
-
-function log() {
-  // this hackery is required for IE8/9, where
-  // the `console.log` function doesn't have 'apply'
-  return 'object' === typeof console
-    && console.log
-    && Function.prototype.apply.call(console.log, console, arguments);
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  try {
-    if (null == namespaces) {
-      storage.removeItem('debug');
-    } else {
-      storage.debug = namespaces;
-    }
-  } catch(e) {}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  var r;
-  try {
-    r = storage.debug;
-  } catch(e) {}
-  return r;
-}
-
-/**
- * Enable namespaces listed in `localStorage.debug` initially.
- */
-
-exports.enable(load());
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage(){
-  try {
-    return window.localStorage;
-  } catch (e) {}
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/component.json
deleted file mode 100644 (file)
index 52ffd42..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "debug",
-  "repo": "visionmedia/debug",
-  "description": "small debugging utility",
-  "version": "2.1.3",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "main": "browser.js",
-  "scripts": [
-    "browser.js",
-    "debug.js"
-  ],
-  "dependencies": {
-    "rauchg/ms.js": "0.7.0"
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/debug.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/debug.js
deleted file mode 100644 (file)
index 7571a86..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = debug;
-exports.coerce = coerce;
-exports.disable = disable;
-exports.enable = enable;
-exports.enabled = enabled;
-exports.humanize = require('ms');
-
-/**
- * The currently active debug mode names, and names to skip.
- */
-
-exports.names = [];
-exports.skips = [];
-
-/**
- * Map of special "%n" handling functions, for the debug "format" argument.
- *
- * Valid key names are a single, lowercased letter, i.e. "n".
- */
-
-exports.formatters = {};
-
-/**
- * Previously assigned color.
- */
-
-var prevColor = 0;
-
-/**
- * Previous log timestamp.
- */
-
-var prevTime;
-
-/**
- * Select a color.
- *
- * @return {Number}
- * @api private
- */
-
-function selectColor() {
-  return exports.colors[prevColor++ % exports.colors.length];
-}
-
-/**
- * Create a debugger with the given `namespace`.
- *
- * @param {String} namespace
- * @return {Function}
- * @api public
- */
-
-function debug(namespace) {
-
-  // define the `disabled` version
-  function disabled() {
-  }
-  disabled.enabled = false;
-
-  // define the `enabled` version
-  function enabled() {
-
-    var self = enabled;
-
-    // set `diff` timestamp
-    var curr = +new Date();
-    var ms = curr - (prevTime || curr);
-    self.diff = ms;
-    self.prev = prevTime;
-    self.curr = curr;
-    prevTime = curr;
-
-    // add the `color` if not set
-    if (null == self.useColors) self.useColors = exports.useColors();
-    if (null == self.color && self.useColors) self.color = selectColor();
-
-    var args = Array.prototype.slice.call(arguments);
-
-    args[0] = exports.coerce(args[0]);
-
-    if ('string' !== typeof args[0]) {
-      // anything else let's inspect with %o
-      args = ['%o'].concat(args);
-    }
-
-    // apply any `formatters` transformations
-    var index = 0;
-    args[0] = args[0].replace(/%([a-z%])/g, function(match, format) {
-      // if we encounter an escaped % then don't increase the array index
-      if (match === '%%') return match;
-      index++;
-      var formatter = exports.formatters[format];
-      if ('function' === typeof formatter) {
-        var val = args[index];
-        match = formatter.call(self, val);
-
-        // now we need to remove `args[index]` since it's inlined in the `format`
-        args.splice(index, 1);
-        index--;
-      }
-      return match;
-    });
-
-    if ('function' === typeof exports.formatArgs) {
-      args = exports.formatArgs.apply(self, args);
-    }
-    var logFn = enabled.log || exports.log || console.log.bind(console);
-    logFn.apply(self, args);
-  }
-  enabled.enabled = true;
-
-  var fn = exports.enabled(namespace) ? enabled : disabled;
-
-  fn.namespace = namespace;
-
-  return fn;
-}
-
-/**
- * Enables a debug mode by namespaces. This can include modes
- * separated by a colon and wildcards.
- *
- * @param {String} namespaces
- * @api public
- */
-
-function enable(namespaces) {
-  exports.save(namespaces);
-
-  var split = (namespaces || '').split(/[\s,]+/);
-  var len = split.length;
-
-  for (var i = 0; i < len; i++) {
-    if (!split[i]) continue; // ignore empty strings
-    namespaces = split[i].replace(/\*/g, '.*?');
-    if (namespaces[0] === '-') {
-      exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
-    } else {
-      exports.names.push(new RegExp('^' + namespaces + '$'));
-    }
-  }
-}
-
-/**
- * Disable debug output.
- *
- * @api public
- */
-
-function disable() {
-  exports.enable('');
-}
-
-/**
- * Returns true if the given mode name is enabled, false otherwise.
- *
- * @param {String} name
- * @return {Boolean}
- * @api public
- */
-
-function enabled(name) {
-  var i, len;
-  for (i = 0, len = exports.skips.length; i < len; i++) {
-    if (exports.skips[i].test(name)) {
-      return false;
-    }
-  }
-  for (i = 0, len = exports.names.length; i < len; i++) {
-    if (exports.names[i].test(name)) {
-      return true;
-    }
-  }
-  return false;
-}
-
-/**
- * Coerce `val`.
- *
- * @param {Mixed} val
- * @return {Mixed}
- * @api private
- */
-
-function coerce(val) {
-  if (val instanceof Error) return val.stack || val.message;
-  return val;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node.js
deleted file mode 100644 (file)
index 1d392a8..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Module dependencies.
- */
-
-var tty = require('tty');
-var util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- *
- * Expose `debug()` as the module.
- */
-
-exports = module.exports = require('./debug');
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-/**
- * The file descriptor to write the `debug()` calls to.
- * Set the `DEBUG_FD` env variable to override with another value. i.e.:
- *
- *   $ DEBUG_FD=3 node script.js 3>debug.log
- */
-
-var fd = parseInt(process.env.DEBUG_FD, 10) || 2;
-var stream = 1 === fd ? process.stdout :
-             2 === fd ? process.stderr :
-             createWritableStdioStream(fd);
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
-  var debugColors = (process.env.DEBUG_COLORS || '').trim().toLowerCase();
-  if (0 === debugColors.length) {
-    return tty.isatty(fd);
-  } else {
-    return '0' !== debugColors
-        && 'no' !== debugColors
-        && 'false' !== debugColors
-        && 'disabled' !== debugColors;
-  }
-}
-
-/**
- * Map %o to `util.inspect()`, since Node doesn't do that out of the box.
- */
-
-var inspect = (4 === util.inspect.length ?
-  // node <= 0.8.x
-  function (v, colors) {
-    return util.inspect(v, void 0, void 0, colors);
-  } :
-  // node > 0.8.x
-  function (v, colors) {
-    return util.inspect(v, { colors: colors });
-  }
-);
-
-exports.formatters.o = function(v) {
-  return inspect(v, this.useColors)
-    .replace(/\s*\n\s*/g, ' ');
-};
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs() {
-  var args = arguments;
-  var useColors = this.useColors;
-  var name = this.namespace;
-
-  if (useColors) {
-    var c = this.color;
-
-    args[0] = '  \u001b[3' + c + ';1m' + name + ' '
-      + '\u001b[0m'
-      + args[0] + '\u001b[3' + c + 'm'
-      + ' +' + exports.humanize(this.diff) + '\u001b[0m';
-  } else {
-    args[0] = new Date().toUTCString()
-      + ' ' + name + ' ' + args[0];
-  }
-  return args;
-}
-
-/**
- * Invokes `console.error()` with the specified arguments.
- */
-
-function log() {
-  return stream.write(util.format.apply(this, arguments) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-
-function save(namespaces) {
-  if (null == namespaces) {
-    // If you set a process.env field to null or undefined, it gets cast to the
-    // string 'null' or 'undefined'. Just delete instead.
-    delete process.env.DEBUG;
-  } else {
-    process.env.DEBUG = namespaces;
-  }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-  return process.env.DEBUG;
-}
-
-/**
- * Copied from `node/src/node.js`.
- *
- * XXX: It's lame that node doesn't expose this API out-of-the-box. It also
- * relies on the undocumented `tty_wrap.guessHandleType()` which is also lame.
- */
-
-function createWritableStdioStream (fd) {
-  var stream;
-  var tty_wrap = process.binding('tty_wrap');
-
-  // Note stream._type is used for test-module-load-list.js
-
-  switch (tty_wrap.guessHandleType(fd)) {
-    case 'TTY':
-      stream = new tty.WriteStream(fd);
-      stream._type = 'tty';
-
-      // Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    case 'FILE':
-      var fs = require('fs');
-      stream = new fs.SyncWriteStream(fd, { autoClose: false });
-      stream._type = 'fs';
-      break;
-
-    case 'PIPE':
-    case 'TCP':
-      var net = require('net');
-      stream = new net.Socket({
-        fd: fd,
-        readable: false,
-        writable: true
-      });
-
-      // FIXME Should probably have an option in net.Socket to create a
-      // stream from an existing fd which is writable only. But for now
-      // we'll just add this hack and set the `readable` member to false.
-      // Test: ./node test/fixtures/echo.js < /etc/passwd
-      stream.readable = false;
-      stream.read = null;
-      stream._type = 'pipe';
-
-      // FIXME Hack to have stream not keep the event loop alive.
-      // See https://github.com/joyent/node/issues/1726
-      if (stream._handle && stream._handle.unref) {
-        stream._handle.unref();
-      }
-      break;
-
-    default:
-      // Probably an error on in uv_guess_handle()
-      throw new Error('Implement me. Unknown stream file type!');
-  }
-
-  // For supporting legacy API we put the FD here.
-  stream.fd = fd;
-
-  stream._isStdio = true;
-
-  return stream;
-}
-
-/**
- * Enable namespaces listed in `process.env.DEBUG` initially.
- */
-
-exports.enable(load());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/.npmignore
deleted file mode 100644 (file)
index d1aa0ce..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-node_modules
-test
-History.md
-Makefile
-component.json
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/LICENSE
deleted file mode 100644 (file)
index 6c07561..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014 Guillermo Rauch <rauchg@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/README.md
deleted file mode 100644 (file)
index 0fd54fd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# ms.js: miliseconds conversion utility
-
-```js
-ms('2 days')  // 172800000
-ms('1d')      // 86400000
-ms('10h')     // 36000000
-ms('2.5 hrs') // 9000000
-ms('2h')      // 7200000
-ms('1m')      // 60000
-ms('5s')      // 5000
-ms('100')     // 100
-```
-
-```js
-ms(60000)             // "1m"
-ms(2 * 60000)         // "2m"
-ms(ms('10 hours'))    // "10h"
-```
-
-```js
-ms(60000, { long: true })             // "1 minute"
-ms(2 * 60000, { long: true })         // "2 minutes"
-ms(ms('10 hours'), { long: true })    // "10 hours"
-```
-
-- Node/Browser compatible. Published as [`ms`](https://www.npmjs.org/package/ms) in [NPM](nodejs.org/download).
-- If a number is supplied to `ms`, a string with a unit is returned.
-- If a string that contains the number is supplied, it returns it as
-a number (e.g: it returns `100` for `'100'`).
-- If you pass a string with a number and a valid unit, the number of
-equivalent ms is returned.
-
-## License
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/index.js
deleted file mode 100644 (file)
index e79bfa1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/**
- * Helpers.
- */
-
-var s = 1000;
-var m = s * 60;
-var h = m * 60;
-var d = h * 24;
-var y = d * 365.25;
-
-/**
- * Parse or format the given `val`.
- *
- * Options:
- *
- *  - `long` verbose formatting [false]
- *
- * @param {String|Number} val
- * @param {Object} options
- * @return {String|Number}
- * @api public
- */
-
-module.exports = function(val, options){
-  options = options || {};
-  if ('string' == typeof val) return parse(val);
-  return options.long
-    ? long(val)
-    : short(val);
-};
-
-/**
- * Parse the given `str` and return milliseconds.
- *
- * @param {String} str
- * @return {Number}
- * @api private
- */
-
-function parse(str) {
-  var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str);
-  if (!match) return;
-  var n = parseFloat(match[1]);
-  var type = (match[2] || 'ms').toLowerCase();
-  switch (type) {
-    case 'years':
-    case 'year':
-    case 'yrs':
-    case 'yr':
-    case 'y':
-      return n * y;
-    case 'days':
-    case 'day':
-    case 'd':
-      return n * d;
-    case 'hours':
-    case 'hour':
-    case 'hrs':
-    case 'hr':
-    case 'h':
-      return n * h;
-    case 'minutes':
-    case 'minute':
-    case 'mins':
-    case 'min':
-    case 'm':
-      return n * m;
-    case 'seconds':
-    case 'second':
-    case 'secs':
-    case 'sec':
-    case 's':
-      return n * s;
-    case 'milliseconds':
-    case 'millisecond':
-    case 'msecs':
-    case 'msec':
-    case 'ms':
-      return n;
-  }
-}
-
-/**
- * Short format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function short(ms) {
-  if (ms >= d) return Math.round(ms / d) + 'd';
-  if (ms >= h) return Math.round(ms / h) + 'h';
-  if (ms >= m) return Math.round(ms / m) + 'm';
-  if (ms >= s) return Math.round(ms / s) + 's';
-  return ms + 'ms';
-}
-
-/**
- * Long format for `ms`.
- *
- * @param {Number} ms
- * @return {String}
- * @api private
- */
-
-function long(ms) {
-  return plural(ms, d, 'day')
-    || plural(ms, h, 'hour')
-    || plural(ms, m, 'minute')
-    || plural(ms, s, 'second')
-    || ms + ' ms';
-}
-
-/**
- * Pluralization helper.
- */
-
-function plural(ms, n, name) {
-  if (ms < n) return;
-  if (ms < n * 1.5) return Math.floor(ms / n) + ' ' + name;
-  return Math.ceil(ms / n) + ' ' + name + 's';
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/node_modules/ms/package.json
deleted file mode 100644 (file)
index aaa215b..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-  "_args": [
-    [
-      "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_id": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=",
-  "_location": "/grunt-standard/standard/eslint/debug/ms",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "ms@https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "name": "ms",
-    "escapedName": "ms",
-    "rawSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/debug"
-  ],
-  "_spec": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/guille/ms.js/issues"
-  },
-  "component": {
-    "scripts": {
-      "ms/index.js": "index.js"
-    }
-  },
-  "description": "Tiny ms conversion utility",
-  "devDependencies": {
-    "expect.js": "*",
-    "mocha": "*",
-    "serve": "*"
-  },
-  "homepage": "https://github.com/guille/ms.js#readme",
-  "main": "./index",
-  "name": "ms",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/guille/ms.js.git"
-  },
-  "version": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/debug/package.json
deleted file mode 100644 (file)
index 05688ae..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-{
-  "_args": [
-    [
-      "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_id": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=",
-  "_location": "/grunt-standard/standard/eslint/debug",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "debug@https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "name": "debug",
-    "escapedName": "debug",
-    "rawSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "TJ Holowaychuk",
-    "email": "tj@vision-media.ca"
-  },
-  "browser": "./browser.js",
-  "bugs": {
-    "url": "https://github.com/visionmedia/debug/issues"
-  },
-  "component": {
-    "scripts": {
-      "debug/index.js": "browser.js",
-      "debug/debug.js": "debug.js"
-    }
-  },
-  "contributors": [
-    {
-      "name": "Nathan Rajlich",
-      "email": "nathan@tootallnate.net",
-      "url": "http://n8.io"
-    }
-  ],
-  "dependencies": {
-    "ms": "0.7.0"
-  },
-  "description": "small debugging utility",
-  "devDependencies": {
-    "browserify": "9.0.3",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/visionmedia/debug#readme",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "license": "MIT",
-  "main": "./node.js",
-  "name": "debug",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "version": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/esutils/package.json
deleted file mode 100644 (file)
index af26534..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-{
-  "_args": [
-    [
-      "esutils@https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esutils@https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-  "_id": "esutils@https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-wBzKqa5LiXxtDD4hCuUvPHqEQ3U=",
-  "_location": "/grunt-standard/standard/eslint/doctrine/esutils",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esutils@https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-    "name": "esutils",
-    "escapedName": "esutils",
-    "rawSpec": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/doctrine"
-  ],
-  "_spec": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/Constellation/esutils/issues"
-  },
-  "description": "utility box for ECMAScript language tools",
-  "devDependencies": {
-    "chai": "~1.7.2",
-    "coffee-script": "~1.6.3",
-    "jshint": "2.1.5",
-    "mocha": "~1.12.0",
-    "regenerate": "~0.5.4",
-    "unicode-6.3.0": "~0.1.1"
-  },
-  "directories": {
-    "lib": "./lib"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "LICENSE.BSD",
-    "README.md",
-    "lib"
-  ],
-  "homepage": "https://github.com/Constellation/esutils",
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/Constellation/esutils/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "lib/utils.js",
-  "maintainers": [
-    {
-      "name": "Yusuke Suzuki",
-      "email": "utatane.tea@gmail.com",
-      "url": "http://github.com/Constellation"
-    }
-  ],
-  "name": "esutils",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/Constellation/esutils.git"
-  },
-  "scripts": {
-    "generate-regex": "node tools/generate-identifier-regex.js",
-    "lint": "jshint lib/*.js",
-    "test": "npm run-script lint && npm run-script unit-test",
-    "unit-test": "mocha --compilers coffee:coffee-script -R spec"
-  },
-  "version": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/README.md
deleted file mode 100644 (file)
index 052a62b..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-
-# isarray
-
-`Array#isArray` for older browsers.
-
-## Usage
-
-```js
-var isArray = require('isarray');
-
-console.log(isArray([])); // => true
-console.log(isArray({})); // => false
-```
-
-## Installation
-
-With [npm](http://npmjs.org) do
-
-```bash
-$ npm install isarray
-```
-
-Then bundle for the browser with
-[browserify](https://github.com/substack/browserify).
-
-With [component](http://component.io) do
-
-```bash
-$ component install juliangruber/isarray
-```
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/build/build.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/build/build.js
deleted file mode 100644 (file)
index ec58596..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-
-/**
- * Require the given path.
- *
- * @param {String} path
- * @return {Object} exports
- * @api public
- */
-
-function require(path, parent, orig) {
-  var resolved = require.resolve(path);
-
-  // lookup failed
-  if (null == resolved) {
-    orig = orig || path;
-    parent = parent || 'root';
-    var err = new Error('Failed to require "' + orig + '" from "' + parent + '"');
-    err.path = orig;
-    err.parent = parent;
-    err.require = true;
-    throw err;
-  }
-
-  var module = require.modules[resolved];
-
-  // perform real require()
-  // by invoking the module's
-  // registered function
-  if (!module.exports) {
-    module.exports = {};
-    module.client = module.component = true;
-    module.call(this, module.exports, require.relative(resolved), module);
-  }
-
-  return module.exports;
-}
-
-/**
- * Registered modules.
- */
-
-require.modules = {};
-
-/**
- * Registered aliases.
- */
-
-require.aliases = {};
-
-/**
- * Resolve `path`.
- *
- * Lookup:
- *
- *   - PATH/index.js
- *   - PATH.js
- *   - PATH
- *
- * @param {String} path
- * @return {String} path or null
- * @api private
- */
-
-require.resolve = function(path) {
-  if (path.charAt(0) === '/') path = path.slice(1);
-  var index = path + '/index.js';
-
-  var paths = [
-    path,
-    path + '.js',
-    path + '.json',
-    path + '/index.js',
-    path + '/index.json'
-  ];
-
-  for (var i = 0; i < paths.length; i++) {
-    var path = paths[i];
-    if (require.modules.hasOwnProperty(path)) return path;
-  }
-
-  if (require.aliases.hasOwnProperty(index)) {
-    return require.aliases[index];
-  }
-};
-
-/**
- * Normalize `path` relative to the current path.
- *
- * @param {String} curr
- * @param {String} path
- * @return {String}
- * @api private
- */
-
-require.normalize = function(curr, path) {
-  var segs = [];
-
-  if ('.' != path.charAt(0)) return path;
-
-  curr = curr.split('/');
-  path = path.split('/');
-
-  for (var i = 0; i < path.length; ++i) {
-    if ('..' == path[i]) {
-      curr.pop();
-    } else if ('.' != path[i] && '' != path[i]) {
-      segs.push(path[i]);
-    }
-  }
-
-  return curr.concat(segs).join('/');
-};
-
-/**
- * Register module at `path` with callback `definition`.
- *
- * @param {String} path
- * @param {Function} definition
- * @api private
- */
-
-require.register = function(path, definition) {
-  require.modules[path] = definition;
-};
-
-/**
- * Alias a module definition.
- *
- * @param {String} from
- * @param {String} to
- * @api private
- */
-
-require.alias = function(from, to) {
-  if (!require.modules.hasOwnProperty(from)) {
-    throw new Error('Failed to alias "' + from + '", it does not exist');
-  }
-  require.aliases[to] = from;
-};
-
-/**
- * Return a require function relative to the `parent` path.
- *
- * @param {String} parent
- * @return {Function}
- * @api private
- */
-
-require.relative = function(parent) {
-  var p = require.normalize(parent, '..');
-
-  /**
-   * lastIndexOf helper.
-   */
-
-  function lastIndexOf(arr, obj) {
-    var i = arr.length;
-    while (i--) {
-      if (arr[i] === obj) return i;
-    }
-    return -1;
-  }
-
-  /**
-   * The relative require() itself.
-   */
-
-  function localRequire(path) {
-    var resolved = localRequire.resolve(path);
-    return require(resolved, parent, path);
-  }
-
-  /**
-   * Resolve relative to the parent.
-   */
-
-  localRequire.resolve = function(path) {
-    var c = path.charAt(0);
-    if ('/' == c) return path.slice(1);
-    if ('.' == c) return require.normalize(p, path);
-
-    // resolve deps by returning
-    // the dep in the nearest "deps"
-    // directory
-    var segs = parent.split('/');
-    var i = lastIndexOf(segs, 'deps') + 1;
-    if (!i) i = 0;
-    path = segs.slice(0, i + 1).join('/') + '/deps/' + path;
-    return path;
-  };
-
-  /**
-   * Check if module is defined at `path`.
-   */
-
-  localRequire.exists = function(path) {
-    return require.modules.hasOwnProperty(localRequire.resolve(path));
-  };
-
-  return localRequire;
-};
-require.register("isarray/index.js", function(exports, require, module){
-module.exports = Array.isArray || function (arr) {
-  return Object.prototype.toString.call(arr) == '[object Array]';
-};
-
-});
-require.alias("isarray/index.js", "isarray/index.js");
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/component.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/component.json
deleted file mode 100644 (file)
index 9e31b68..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name" : "isarray",
-  "description" : "Array#isArray for older browsers",
-  "version" : "0.0.1",
-  "repository" : "juliangruber/isarray",
-  "homepage": "https://github.com/juliangruber/isarray",
-  "main" : "index.js",
-  "scripts" : [
-    "index.js"
-  ],
-  "dependencies" : {},
-  "keywords": ["browser","isarray","array"],
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "license": "MIT"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/index.js
deleted file mode 100644 (file)
index 5f5ad45..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = Array.isArray || function (arr) {
-  return Object.prototype.toString.call(arr) == '[object Array]';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/node_modules/isarray/package.json
deleted file mode 100644 (file)
index 423ea1c..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-{
-  "_args": [
-    [
-      "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_id": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
-  "_location": "/grunt-standard/standard/eslint/doctrine/isarray",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "isarray@https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "name": "isarray",
-    "escapedName": "isarray",
-    "rawSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/doctrine"
-  ],
-  "_spec": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/isarray/issues"
-  },
-  "dependencies": {},
-  "description": "Array#isArray for older browsers",
-  "devDependencies": {
-    "tap": "*"
-  },
-  "homepage": "https://github.com/juliangruber/isarray",
-  "keywords": [
-    "browser",
-    "isarray",
-    "array"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "isarray",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/isarray.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/doctrine/package.json
deleted file mode 100644 (file)
index c1a73b9..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-{
-  "_args": [
-    [
-      "doctrine@https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "doctrine@https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-  "_id": "doctrine@https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-gUKEkalC7xiwSSBW7aOADu5X1h0=",
-  "_location": "/grunt-standard/standard/eslint/doctrine",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "doctrine@https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-    "name": "doctrine",
-    "escapedName": "doctrine",
-    "rawSpec": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/Constellation/doctrine/issues"
-  },
-  "dependencies": {
-    "esutils": "^1.1.6",
-    "isarray": "0.0.1"
-  },
-  "description": "JSDoc parser",
-  "devDependencies": {
-    "coveralls": "^2.11.2",
-    "gulp": "^3.8.10",
-    "gulp-bump": "^0.1.13",
-    "gulp-eslint": "^0.5.0",
-    "gulp-filter": "^2.0.2",
-    "gulp-git": "^1.0.0",
-    "gulp-istanbul": "^0.6.0",
-    "gulp-jshint": "^1.9.0",
-    "gulp-mocha": "^2.0.0",
-    "gulp-tag-version": "^1.2.1",
-    "jshint-stylish": "^1.0.0",
-    "should": "^5.0.1"
-  },
-  "directories": {
-    "lib": "./lib"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "homepage": "http://github.com/Constellation/doctrine.html",
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/Constellation/doctrine/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "lib/doctrine.js",
-  "maintainers": [
-    {
-      "name": "Yusuke Suzuki",
-      "email": "utatane.tea@gmail.com",
-      "url": "http://github.com/Constellation"
-    }
-  ],
-  "name": "doctrine",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/Constellation/doctrine.git"
-  },
-  "scripts": {
-    "coveralls": "cat ./coverage/lcov.info | coveralls && rm -rf ./coverage",
-    "lint": "gulp lint",
-    "test": "gulp",
-    "unit-test": "gulp test"
-  },
-  "version": "https://registry.npmjs.org/doctrine/-/doctrine-0.6.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/index.js
deleted file mode 100644 (file)
index ac6572c..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g;
-
-module.exports = function (str) {
-       if (typeof str !== 'string') {
-               throw new TypeError('Expected a string');
-       }
-
-       return str.replace(matchOperatorsRe,  '\\$&');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/package.json
deleted file mode 100644 (file)
index 40ef613..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-{
-  "_args": [
-    [
-      "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_id": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ni2LJbwlVcMzZyN1DgPwmcJzW7U=",
-  "_location": "/grunt-standard/standard/eslint/escape-string-regexp",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "escape-string-regexp@https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "name": "escape-string-regexp",
-    "escapedName": "escape-string-regexp",
-    "rawSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/escape-string-regexp/issues"
-  },
-  "description": "Escape RegExp special characters",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.8.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/escape-string-regexp#readme",
-  "keywords": [
-    "regex",
-    "regexp",
-    "re",
-    "regular",
-    "expression",
-    "escape",
-    "string",
-    "str",
-    "special",
-    "characters"
-  ],
-  "license": "MIT",
-  "maintainers": [
-    {
-      "name": "Sindre Sorhus",
-      "email": "sindresorhus@gmail.com",
-      "url": "http://sindresorhus.com"
-    },
-    {
-      "name": "Joshua Appelman",
-      "email": "jappelman@xebia.com",
-      "url": "http://jbnicolai.com"
-    }
-  ],
-  "name": "escape-string-regexp",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/escape-string-regexp.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escape-string-regexp/readme.md
deleted file mode 100644 (file)
index 808a963..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# escape-string-regexp [![Build Status](https://travis-ci.org/sindresorhus/escape-string-regexp.svg?branch=master)](https://travis-ci.org/sindresorhus/escape-string-regexp)
-
-> Escape RegExp special characters
-
-
-## Install
-
-```sh
-$ npm install --save escape-string-regexp
-```
-
-
-## Usage
-
-```js
-var escapeStringRegexp = require('escape-string-regexp');
-
-var escapedString = escapeStringRegexp('how much $ for a unicorn?');
-//=> how much \$ for a unicorn\?
-
-new RegExp(escapedString);
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.lint
deleted file mode 100644 (file)
index e8cb4c7..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-@root
-
-module
-
-indent 2
-maxlen 80
-tabs
-
-ass
-nomen
-plusplus
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/.travis.yml
deleted file mode 100644 (file)
index 9181d78..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-map@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/CHANGES
deleted file mode 100644 (file)
index a17e221..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-v0.1.1  --  2014.10.07
-* Fix isImplemented so native Maps are detected properly
-* Configure lint scripts
-
-v0.1.0  --  2014.04.29
-* Assure strictly npm hosted dependencies
-* Update to use latest versions of dependencies
-
-v0.0.1  --  2014.04.25
-* Provide @@toStringTag symbol, and use other ES 6 symbols
-* Fix iterators handling
-* Fix isImplemented so it doesn't crash
-* Update up to changes in dependencies
-
-v0.0.0  --  2013.11.10
-- Initial (dev) version
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/LICENCE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/LICENCE
deleted file mode 100644 (file)
index aaf3528..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/README.md
deleted file mode 100644 (file)
index 1ea3a95..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-# es6-map
-## Map collection as specified in ECMAScript6
-
-### Usage
-
-If you want to make sure your environment implements `Map`, do:
-
-```javascript
-require('es6-map/implement');
-```
-
-If you'd like to use native version when it exists and fallback to polyfill if it doesn't, but without implementing `Map` on global scope, do:
-
-```javascript
-var Map = require('es6-map');
-```
-
-If you strictly want to use polyfill even if native `Map` exists, do:
-
-```javascript
-var Map = require('es6-map/polyfill');
-```
-
-### Installation
-
-       $ npm install es6-map
-       
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-#### API
-
-Best is to refer to [specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-map-objects). Still if you want quick look, follow examples:
-
-```javascript
-var Map = require('es6-map');
-
-var x = {}, y = {}, map = new Map([['raz', 'one'], ['dwa', 'two'], [x, y]]);
-
-map.size;                 // 3
-map.get('raz');           // 'one'
-map.get(x);               // y
-map.has('raz');           // true
-map.has(x);               // true
-map.has('foo');           // false
-map.set('trzy', 'three'); // map
-map.size                  // 4
-map.get('trzy');          // 'three'
-map.has('trzy');          // true
-map.has('dwa');           // true
-map.delete('dwa');        // true
-map.size;                 // 3
-
-map.forEach(function (value, key) {
-  // { 'raz', 'one' }, { x, y }, { 'trzy', 'three' } iterated
-});
-
-// FF nightly only:
-for (value of map) {
- // ['raz', 'one'], [x, y], ['trzy', 'three'] iterated
-}
-
-var iterator = map.values();
-
-iterator.next(); // { done: false, value: 'one' }
-iterator.next(); // { done: false, value: y }
-iterator.next(); // { done: false, value: 'three' }
-iterator.next(); // { done: true, value: undefined }
-
-map.clear(); // undefined
-map.size; // 0
-```
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/es6-map.png)](https://travis-ci.org/medikoo/es6-map)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/implement.js
deleted file mode 100644 (file)
index ff3ebac..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(require('es5-ext/global'), 'Map',
-               { value: require('./polyfill'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/index.js
deleted file mode 100644 (file)
index 3e27caa..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Map : require('./polyfill');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-implemented.js
deleted file mode 100644 (file)
index cb872fa..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var map, iterator, result;
-       if (typeof Map !== 'function') return false;
-       try {
-               // WebKit doesn't support arguments and crashes
-               map = new Map([['raz', 'one'], ['dwa', 'two'], ['trzy', 'three']]);
-       } catch (e) {
-               return false;
-       }
-       if (map.size !== 3) return false;
-       if (typeof map.clear !== 'function') return false;
-       if (typeof map.delete !== 'function') return false;
-       if (typeof map.entries !== 'function') return false;
-       if (typeof map.forEach !== 'function') return false;
-       if (typeof map.get !== 'function') return false;
-       if (typeof map.has !== 'function') return false;
-       if (typeof map.keys !== 'function') return false;
-       if (typeof map.set !== 'function') return false;
-       if (typeof map.values !== 'function') return false;
-
-       iterator = map.entries();
-       result = iterator.next();
-       if (result.done !== false) return false;
-       if (!result.value) return false;
-       if (result.value[0] !== 'raz') return false;
-       if (result.value[1] !== 'one') return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-map.js
deleted file mode 100644 (file)
index f45526a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var toStringTagSymbol = require('es6-symbol').toStringTag
-
-  , toString = Object.prototype.toString
-  , id = '[object Map]'
-  , Global = (typeof Map === 'undefined') ? null : Map;
-
-module.exports = function (x) {
-       return (x && ((Global && (x instanceof Global)) ||
-                       (toString.call(x) === id) || (x[toStringTagSymbol] === 'Map'))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/is-native-implemented.js
deleted file mode 100644 (file)
index 208c661..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Exports true if environment provides native `Map` implementation,
-// whatever that is.
-
-'use strict';
-
-module.exports = (function () {
-       if (typeof Map === 'undefined') return false;
-       return (Object.prototype.toString.call(Map.prototype) === '[object Map]');
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator-kinds.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator-kinds.js
deleted file mode 100644 (file)
index 5367b38..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('es5-ext/object/primitive-set')('key',
-       'value', 'key+value');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/iterator.js
deleted file mode 100644 (file)
index 60f1e8c..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-'use strict';
-
-var setPrototypeOf    = require('es5-ext/object/set-prototype-of')
-  , d                 = require('d')
-  , Iterator          = require('es6-iterator')
-  , toStringTagSymbol = require('es6-symbol').toStringTag
-  , kinds             = require('./iterator-kinds')
-
-  , defineProperties = Object.defineProperties
-  , unBind = Iterator.prototype._unBind
-  , MapIterator;
-
-MapIterator = module.exports = function (map, kind) {
-       if (!(this instanceof MapIterator)) return new MapIterator(map, kind);
-       Iterator.call(this, map.__mapKeysData__, map);
-       if (!kind || !kinds[kind]) kind = 'key+value';
-       defineProperties(this, {
-               __kind__: d('', kind),
-               __values__: d('w', map.__mapValuesData__)
-       });
-};
-if (setPrototypeOf) setPrototypeOf(MapIterator, Iterator);
-
-MapIterator.prototype = Object.create(Iterator.prototype, {
-       constructor: d(MapIterator),
-       _resolve: d(function (i) {
-               if (this.__kind__ === 'value') return this.__values__[i];
-               if (this.__kind__ === 'key') return this.__list__[i];
-               return [this.__list__[i], this.__values__[i]];
-       }),
-       _unBind: d(function () {
-               this.__values__ = null;
-               unBind.call(this);
-       }),
-       toString: d(function () { return '[object Map Iterator]'; })
-});
-Object.defineProperty(MapIterator.prototype, toStringTagSymbol,
-       d('c', 'Map Iterator'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/primitive-iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/lib/primitive-iterator.js
deleted file mode 100644 (file)
index b9eada3..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-'use strict';
-
-var clear             = require('es5-ext/array/#/clear')
-  , assign            = require('es5-ext/object/assign')
-  , setPrototypeOf    = require('es5-ext/object/set-prototype-of')
-  , toStringTagSymbol = require('es6-symbol').toStringTag
-  , d                 = require('d')
-  , autoBind          = require('d/auto-bind')
-  , Iterator          = require('es6-iterator')
-  , kinds             = require('./iterator-kinds')
-
-  , defineProperties = Object.defineProperties, keys = Object.keys
-  , unBind = Iterator.prototype._unBind
-  , PrimitiveMapIterator;
-
-PrimitiveMapIterator = module.exports = function (map, kind) {
-       if (!(this instanceof PrimitiveMapIterator)) {
-               return new PrimitiveMapIterator(map, kind);
-       }
-       Iterator.call(this, keys(map.__mapKeysData__), map);
-       if (!kind || !kinds[kind]) kind = 'key+value';
-       defineProperties(this, {
-               __kind__: d('', kind),
-               __keysData__: d('w', map.__mapKeysData__),
-               __valuesData__: d('w', map.__mapValuesData__)
-       });
-};
-if (setPrototypeOf) setPrototypeOf(PrimitiveMapIterator, Iterator);
-
-PrimitiveMapIterator.prototype = Object.create(Iterator.prototype, assign({
-       constructor: d(PrimitiveMapIterator),
-       _resolve: d(function (i) {
-               if (this.__kind__ === 'value') return this.__valuesData__[this.__list__[i]];
-               if (this.__kind__ === 'key') return this.__keysData__[this.__list__[i]];
-               return [this.__keysData__[this.__list__[i]],
-                       this.__valuesData__[this.__list__[i]]];
-       }),
-       _unBind: d(function () {
-               this.__keysData__ = null;
-               this.__valuesData__ = null;
-               unBind.call(this);
-       }),
-       toString: d(function () { return '[object Map Iterator]'; })
-}, autoBind({
-       _onAdd: d(function (key) { this.__list__.push(key); }),
-       _onDelete: d(function (key) {
-               var index = this.__list__.lastIndexOf(key);
-               if (index < this.__nextIndex__) return;
-               this.__list__.splice(index, 1);
-       }),
-       _onClear: d(function () {
-               clear.call(this.__list__);
-               this.__nextIndex__ = 0;
-       })
-})));
-Object.defineProperty(PrimitiveMapIterator.prototype, toStringTagSymbol,
-       d('c', 'Map Iterator'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.lint
deleted file mode 100644 (file)
index 858b753..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-@root
-
-es5
-module
-
-tabs
-indent 2
-maxlen 80
-
-ass
-nomen
-plusplus
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/.travis.yml
deleted file mode 100644 (file)
index 50008b2..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+d@medikoo.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/CHANGES
deleted file mode 100644 (file)
index 45233f7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-v0.1.1  --  2014.04.24
-- Add `autoBind` and `lazy` utilities
-- Allow to pass other options to be merged onto created descriptor.
-  Useful when used with other custom utilties
-
-v0.1.0  --  2013.06.20
-Initial (derived from es5-ext project)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/LICENCE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/LICENCE
deleted file mode 100644 (file)
index aaf3528..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/README.md
deleted file mode 100644 (file)
index 872d493..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-# D - Property descriptor factory
-
-_Originally derived from [es5-ext](https://github.com/medikoo/es5-ext) package._
-
-Defining properties with descriptors is very verbose:
-
-```javascript
-var Account = function () {};
-Object.defineProperties(Account.prototype, {
-  deposit: { value: function () {
-      /* ... */
-    }, configurable: true, enumerable: false, writable: true },
-  whithdraw: { value: function () {
-      /* ... */
-    }, configurable: true, enumerable: false, writable: true },
-  balance: { get: function () {
-      /* ... */
-    }, configurable: true, enumerable: false }
-});
-```
-
-D cuts that to:
-
-```javascript
-var d = require('d');
-
-var Account = function () {};
-Object.defineProperties(Account.prototype, {
-  deposit: d(function () {
-    /* ... */
-  }),
-  whithdraw: d(function () {
-    /* ... */
-  }),
-  balance: d.gs(function () {
-    /* ... */
-  })
-});
-```
-
-By default, created descriptor follow characteristics of native ES5 properties, and defines values as:
-
-```javascript
-{ configurable: true, enumerable: false, writable: true }
-```
-
-You can overwrite it by preceding _value_ argument with instruction:
-```javascript
-d('c', value); // { configurable: true, enumerable: false, writable: false }
-d('ce', value); // { configurable: true, enumerable: true, writable: false }
-d('e', value); // { configurable: false, enumerable: true, writable: false }
-
-// Same way for get/set:
-d.gs('e', value); // { configurable: false, enumerable: true }
-```
-
-### Other utilities
-
-#### autoBind(obj, props) _(d/auto-bind)_
-
-Define methods which will be automatically bound to its instances
-
-```javascript
-var d = require('d');
-var autoBind = require('d/auto-bind');
-
-var Foo = function () { this._count = 0; };
-autoBind(Foo.prototype, {
-  increment: d(function () { ++this._count; });
-});
-
-var foo = new Foo();
-
-// Increment foo counter on each domEl click
-domEl.addEventListener('click', foo.increment, false);
-```
-
-#### lazy(obj, props) _(d/lazy)_
-
-Define lazy properties, which will be resolved on first access
-
-```javascript
-var d = require('d');
-var lazy = require('d/lazy');
-
-var Foo = function () {};
-lazy(Foo.prototype, {
-  items: d(function () { return []; })
-});
-
-var foo = new Foo();
-foo.items.push(1, 2); // foo.items array created
-```
-
-## Installation
-### NPM
-
-In your project path:
-
-       $ npm install d
-
-### Browser
-
-You can easily bundle _D_ for browser with [modules-webmake](https://github.com/medikoo/modules-webmake)
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/d.png)](https://travis-ci.org/medikoo/d)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/auto-bind.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/auto-bind.js
deleted file mode 100644 (file)
index 1b00dba..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-'use strict';
-
-var copy       = require('es5-ext/object/copy')
-  , map        = require('es5-ext/object/map')
-  , callable   = require('es5-ext/object/valid-callable')
-  , validValue = require('es5-ext/object/valid-value')
-
-  , bind = Function.prototype.bind, defineProperty = Object.defineProperty
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , define;
-
-define = function (name, desc, bindTo) {
-       var value = validValue(desc) && callable(desc.value), dgs;
-       dgs = copy(desc);
-       delete dgs.writable;
-       delete dgs.value;
-       dgs.get = function () {
-               if (hasOwnProperty.call(this, name)) return value;
-               desc.value = bind.call(value, (bindTo == null) ? this : this[bindTo]);
-               defineProperty(this, name, desc);
-               return this[name];
-       };
-       return dgs;
-};
-
-module.exports = function (props/*, bindTo*/) {
-       var bindTo = arguments[1];
-       return map(props, function (desc, name) {
-               return define(name, desc, bindTo);
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/index.js
deleted file mode 100644 (file)
index 076ae46..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-'use strict';
-
-var assign        = require('es5-ext/object/assign')
-  , normalizeOpts = require('es5-ext/object/normalize-options')
-  , isCallable    = require('es5-ext/object/is-callable')
-  , contains      = require('es5-ext/string/#/contains')
-
-  , d;
-
-d = module.exports = function (dscr, value/*, options*/) {
-       var c, e, w, options, desc;
-       if ((arguments.length < 2) || (typeof dscr !== 'string')) {
-               options = value;
-               value = dscr;
-               dscr = null;
-       } else {
-               options = arguments[2];
-       }
-       if (dscr == null) {
-               c = w = true;
-               e = false;
-       } else {
-               c = contains.call(dscr, 'c');
-               e = contains.call(dscr, 'e');
-               w = contains.call(dscr, 'w');
-       }
-
-       desc = { value: value, configurable: c, enumerable: e, writable: w };
-       return !options ? desc : assign(normalizeOpts(options), desc);
-};
-
-d.gs = function (dscr, get, set/*, options*/) {
-       var c, e, options, desc;
-       if (typeof dscr !== 'string') {
-               options = set;
-               set = get;
-               get = dscr;
-               dscr = null;
-       } else {
-               options = arguments[3];
-       }
-       if (get == null) {
-               get = undefined;
-       } else if (!isCallable(get)) {
-               options = get;
-               get = set = undefined;
-       } else if (set == null) {
-               set = undefined;
-       } else if (!isCallable(set)) {
-               options = set;
-               set = undefined;
-       }
-       if (dscr == null) {
-               c = true;
-               e = false;
-       } else {
-               c = contains.call(dscr, 'c');
-               e = contains.call(dscr, 'e');
-       }
-
-       desc = { get: get, set: set, configurable: c, enumerable: e };
-       return !options ? desc : assign(normalizeOpts(options), desc);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/lazy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/lazy.js
deleted file mode 100644 (file)
index 61e4665..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-'use strict';
-
-var map        = require('es5-ext/object/map')
-  , isCallable = require('es5-ext/object/is-callable')
-  , validValue = require('es5-ext/object/valid-value')
-  , contains   = require('es5-ext/string/#/contains')
-
-  , call = Function.prototype.call
-  , defineProperty = Object.defineProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor
-  , getPrototypeOf = Object.getPrototypeOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , cacheDesc = { configurable: false, enumerable: false, writable: false,
-               value: null }
-  , define;
-
-define = function (name, options) {
-       var value, dgs, cacheName, desc, writable = false, resolvable
-         , flat;
-       options = Object(validValue(options));
-       cacheName = options.cacheName;
-       flat = options.flat;
-       if (cacheName == null) cacheName = name;
-       delete options.cacheName;
-       value = options.value;
-       resolvable = isCallable(value);
-       delete options.value;
-       dgs = { configurable: Boolean(options.configurable),
-               enumerable: Boolean(options.enumerable) };
-       if (name !== cacheName) {
-               dgs.get = function () {
-                       if (hasOwnProperty.call(this, cacheName)) return this[cacheName];
-                       cacheDesc.value = resolvable ? call.call(value, this, options) : value;
-                       cacheDesc.writable = writable;
-                       defineProperty(this, cacheName, cacheDesc);
-                       cacheDesc.value = null;
-                       if (desc) defineProperty(this, name, desc);
-                       return this[cacheName];
-               };
-       } else if (!flat) {
-               dgs.get = function self() {
-                       var ownDesc;
-                       if (hasOwnProperty.call(this, name)) {
-                               ownDesc = getOwnPropertyDescriptor(this, name);
-                               // It happens in Safari, that getter is still called after property
-                               // was defined with a value, following workarounds that
-                               if (ownDesc.hasOwnProperty('value')) return ownDesc.value;
-                               if ((typeof ownDesc.get === 'function') && (ownDesc.get !== self)) {
-                                       return ownDesc.get.call(this);
-                               }
-                               return value;
-                       }
-                       desc.value = resolvable ? call.call(value, this, options) : value;
-                       defineProperty(this, name, desc);
-                       desc.value = null;
-                       return this[name];
-               };
-       } else {
-               dgs.get = function self() {
-                       var base = this, ownDesc;
-                       if (hasOwnProperty.call(this, name)) {
-                               // It happens in Safari, that getter is still called after property
-                               // was defined with a value, following workarounds that
-                               ownDesc = getOwnPropertyDescriptor(this, name);
-                               if (ownDesc.hasOwnProperty('value')) return ownDesc.value;
-                               if ((typeof ownDesc.get === 'function') && (ownDesc.get !== self)) {
-                                       return ownDesc.get.call(this);
-                               }
-                       }
-                       while (!hasOwnProperty.call(base, name)) base = getPrototypeOf(base);
-                       desc.value = resolvable ? call.call(value, base, options) : value;
-                       defineProperty(base, name, desc);
-                       desc.value = null;
-                       return base[name];
-               };
-       }
-       dgs.set = function (value) {
-               dgs.get.call(this);
-               this[cacheName] = value;
-       };
-       if (options.desc) {
-               desc = {
-                       configurable: contains.call(options.desc, 'c'),
-                       enumerable: contains.call(options.desc, 'e')
-               };
-               if (cacheName === name) {
-                       desc.writable = contains.call(options.desc, 'w');
-                       desc.value = null;
-               } else {
-                       writable = contains.call(options.desc, 'w');
-                       desc.get = dgs.get;
-                       desc.set = dgs.set;
-               }
-               delete options.desc;
-       } else if (cacheName === name) {
-               desc = {
-                       configurable: Boolean(options.configurable),
-                       enumerable: Boolean(options.enumerable),
-                       writable: Boolean(options.writable),
-                       value: null
-               };
-       }
-       delete options.configurable;
-       delete options.enumerable;
-       delete options.writable;
-       return dgs;
-};
-
-module.exports = function (props) {
-       return map(props, function (desc, name) { return define(name, desc); });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/package.json
deleted file mode 100644 (file)
index fd7b687..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_id": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2hhMU10Y2O57oqoim5FACfrhEwk=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/d",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "name": "d",
-    "escapedName": "d",
-    "rawSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map",
-    "/grunt-standard/standard/eslint/escope/es6-map/es5-ext/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-set",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/event-emitter"
-  ],
-  "_spec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/d/issues"
-  },
-  "dependencies": {
-    "es5-ext": "~0.10.2"
-  },
-  "description": "Property descriptor factory",
-  "devDependencies": {
-    "tad": "~0.1.21"
-  },
-  "homepage": "https://github.com/medikoo/d#readme",
-  "keywords": [
-    "descriptor",
-    "es",
-    "ecmascript",
-    "ecma",
-    "property",
-    "descriptors",
-    "meta",
-    "properties"
-  ],
-  "license": "MIT",
-  "name": "d",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/d.git"
-  },
-  "scripts": {
-    "test": "node node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/d/-/d-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/auto-bind.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/auto-bind.js
deleted file mode 100644 (file)
index 89edfb8..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var d = require('../');
-
-module.exports = function (t, a) {
-       var o = Object.defineProperties({}, t({
-               bar: d(function () { return this === o; }),
-               bar2: d(function () { return this; })
-       }));
-
-       a.deep([(o.bar)(), (o.bar2)()], [true, o]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/index.js
deleted file mode 100644 (file)
index 3db0af1..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-'use strict';
-
-var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
-
-module.exports = function (t, a) {
-       var o, c, cg, cs, ce, ceg, ces, cew, cw, e, eg, es, ew, v, vg, vs, w, df, dfg
-         , dfs;
-
-       o = Object.create(Object.prototype, {
-               c: t('c', c = {}),
-               cgs: t.gs('c', cg = function () {}, cs = function () {}),
-               ce: t('ce', ce = {}),
-               cegs: t.gs('ce', ceg = function () {}, ces = function () {}),
-               cew: t('cew', cew = {}),
-               cw: t('cw', cw = {}),
-               e: t('e', e = {}),
-               egs: t.gs('e', eg = function () {}, es = function () {}),
-               ew: t('ew', ew = {}),
-               v: t('', v = {}),
-               vgs: t.gs('', vg = function () {}, vs = function () {}),
-               w: t('w', w = {}),
-
-               df: t(df = {}),
-               dfgs: t.gs(dfg = function () {}, dfs = function () {})
-       });
-
-       return {
-               c: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'c');
-                       a(d.value, c, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, true, "Configurable");
-                       a(d.enumerable, false, "Enumerable");
-                       a(d.writable, false, "Writable");
-
-                       d = getOwnPropertyDescriptor(o, 'cgs');
-                       a(d.value, undefined, "GS Value");
-                       a(d.get, cg, "GS Get");
-                       a(d.set, cs, "GS Set");
-                       a(d.configurable, true, "GS Configurable");
-                       a(d.enumerable, false, "GS Enumerable");
-                       a(d.writable, undefined, "GS Writable");
-               },
-               ce: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'ce');
-                       a(d.value, ce, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, true, "Configurable");
-                       a(d.enumerable, true, "Enumerable");
-                       a(d.writable, false, "Writable");
-
-                       d = getOwnPropertyDescriptor(o, 'cegs');
-                       a(d.value, undefined, "GS Value");
-                       a(d.get, ceg, "GS Get");
-                       a(d.set, ces, "GS Set");
-                       a(d.configurable, true, "GS Configurable");
-                       a(d.enumerable, true, "GS Enumerable");
-                       a(d.writable, undefined, "GS Writable");
-               },
-               cew: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'cew');
-                       a(d.value, cew, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, true, "Configurable");
-                       a(d.enumerable, true, "Enumerable");
-                       a(d.writable, true, "Writable");
-               },
-               cw: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'cw');
-                       a(d.value, cw, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, true, "Configurable");
-                       a(d.enumerable, false, "Enumerable");
-                       a(d.writable, true, "Writable");
-               },
-               e: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'e');
-                       a(d.value, e, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, false, "Configurable");
-                       a(d.enumerable, true, "Enumerable");
-                       a(d.writable, false, "Writable");
-
-                       d = getOwnPropertyDescriptor(o, 'egs');
-                       a(d.value, undefined, "GS Value");
-                       a(d.get, eg, "GS Get");
-                       a(d.set, es, "GS Set");
-                       a(d.configurable, false, "GS Configurable");
-                       a(d.enumerable, true, "GS Enumerable");
-                       a(d.writable, undefined, "GS Writable");
-               },
-               ew: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'ew');
-                       a(d.value, ew, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, false, "Configurable");
-                       a(d.enumerable, true, "Enumerable");
-                       a(d.writable, true, "Writable");
-               },
-               v: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'v');
-                       a(d.value, v, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, false, "Configurable");
-                       a(d.enumerable, false, "Enumerable");
-                       a(d.writable, false, "Writable");
-
-                       d = getOwnPropertyDescriptor(o, 'vgs');
-                       a(d.value, undefined, "GS Value");
-                       a(d.get, vg, "GS Get");
-                       a(d.set, vs, "GS Set");
-                       a(d.configurable, false, "GS Configurable");
-                       a(d.enumerable, false, "GS Enumerable");
-                       a(d.writable, undefined, "GS Writable");
-               },
-               w: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'w');
-                       a(d.value, w, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, false, "Configurable");
-                       a(d.enumerable, false, "Enumerable");
-                       a(d.writable, true, "Writable");
-               },
-               d: function (a) {
-                       var d = getOwnPropertyDescriptor(o, 'df');
-                       a(d.value, df, "Value");
-                       a(d.get, undefined, "Get");
-                       a(d.set, undefined, "Set");
-                       a(d.configurable, true, "Configurable");
-                       a(d.enumerable, false, "Enumerable");
-                       a(d.writable, true, "Writable");
-
-                       d = getOwnPropertyDescriptor(o, 'dfgs');
-                       a(d.value, undefined, "GS Value");
-                       a(d.get, dfg, "GS Get");
-                       a(d.set, dfs, "GS Set");
-                       a(d.configurable, true, "GS Configurable");
-                       a(d.enumerable, false, "GS Enumerable");
-                       a(d.writable, undefined, "GS Writable");
-               },
-               Options: {
-                       v: function (a) {
-                               var x = {}, d = t(x, { foo: true });
-                               a.deep(d, { configurable: true, enumerable: false, writable: true,
-                                       value: x, foo: true }, "No descriptor");
-                               d = t('c', 'foo', { marko: 'elo' });
-                               a.deep(d, { configurable: true, enumerable: false, writable: false,
-                                       value: 'foo', marko: 'elo' }, "Descriptor");
-                       },
-                       gs: function (a) {
-                               var gFn = function () {}, sFn = function () {}, d;
-                               d = t.gs(gFn, sFn, { foo: true });
-                               a.deep(d, { configurable: true, enumerable: false, get: gFn, set: sFn,
-                                       foo: true }, "No descriptor");
-                               d = t.gs(null, sFn, { foo: true });
-                               a.deep(d, { configurable: true, enumerable: false, get: undefined,
-                                       set: sFn, foo: true }, "No descriptor: Just set");
-                               d = t.gs(gFn, { foo: true });
-                               a.deep(d, { configurable: true, enumerable: false, get: gFn,
-                                       set: undefined, foo: true }, "No descriptor: Just get");
-
-                               d = t.gs('e', gFn, sFn, { bar: true });
-                               a.deep(d, { configurable: false, enumerable: true, get: gFn, set: sFn,
-                                       bar: true }, "Descriptor");
-                               d = t.gs('e', null, sFn, { bar: true });
-                               a.deep(d, { configurable: false, enumerable: true, get: undefined,
-                                       set: sFn, bar: true }, "Descriptor: Just set");
-                               d = t.gs('e', gFn, { bar: true });
-                               a.deep(d, { configurable: false, enumerable: true, get: gFn,
-                                       set: undefined, bar: true }, "Descriptor: Just get");
-                       }
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/lazy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/d/test/lazy.js
deleted file mode 100644 (file)
index 8266deb..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-'use strict';
-
-var d = require('../')
-
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
-
-module.exports = function (t, a) {
-       var Foo = function () {}, i = 1, o, o2, desc;
-       Object.defineProperties(Foo.prototype, t({
-               bar: d(function () { return ++i; }),
-               bar2: d(function () { return this.bar + 23; }),
-               bar3: d(function () { return this.bar2 + 34; }, { desc: 'ew' }),
-               bar4: d(function () { return this.bar3 + 12; }, { cacheName: '_bar4_' }),
-               bar5: d(function () { return this.bar4 + 3; },
-                       { cacheName: '_bar5_', desc: 'e' })
-       }));
-
-       desc = getOwnPropertyDescriptor(Foo.prototype, 'bar');
-       a(desc.configurable, true, "Configurable: default");
-       a(desc.enumerable, false, "Enumerable: default");
-
-       o = new Foo();
-       a.deep([o.bar, o.bar2, o.bar3, o.bar4, o.bar5], [2, 25, 59, 71, 74],
-               "Values");
-
-       a.deep(getOwnPropertyDescriptor(o, 'bar3'), { configurable: false,
-               enumerable: true, writable: true, value: 59 }, "Desc");
-       a(o.hasOwnProperty('bar4'), false, "Cache not exposed");
-       desc = getOwnPropertyDescriptor(o, 'bar5');
-       a.deep(desc, { configurable: false,
-               enumerable: true, get: desc.get, set: desc.set }, "Cache & Desc: desc");
-
-       o2 = Object.create(o);
-       o2.bar = 30;
-       o2.bar3 = 100;
-
-       a.deep([o2.bar, o2.bar2, o2.bar3, o2.bar4, o2.bar5], [30, 25, 100, 112, 115],
-               "Extension Values");
-
-       Foo = function () {};
-       Object.defineProperties(Foo.prototype, t({
-               test: d('w', function () { return 'raz'; }),
-               test2: d('', function () { return 'raz'; }, { desc: 'w' }),
-               test3: d('', function () { return 'raz'; },
-                       { cacheName: '__test3__', desc: 'w' }),
-               test4: d('w', 'bar')
-       }));
-
-       o = new Foo();
-       o.test = 'marko';
-       a.deep(getOwnPropertyDescriptor(o, 'test'),
-               { configurable: false, enumerable: false, writable: true, value: 'marko' },
-               "Set before get");
-       o.test2 = 'marko2';
-       a.deep(getOwnPropertyDescriptor(o, 'test2'),
-               { configurable: false, enumerable: false, writable: true, value: 'marko2' },
-               "Set before get: Custom desc");
-       o.test3 = 'marko3';
-       a.deep(getOwnPropertyDescriptor(o, '__test3__'),
-               { configurable: false, enumerable: false, writable: true, value: 'marko3' },
-               "Set before get: Custom cache name");
-       a(o.test4, 'bar', "Resolve by value");
-
-       a.h1("Flat");
-       Object.defineProperties(Foo.prototype, t({
-               flat: d(function () { return 'foo'; }, { flat: true }),
-               flat2: d(function () { return 'bar'; }, { flat: true })
-       }));
-
-       a.h2("Instance");
-       a(o.flat, 'foo', "Value");
-       a(o.hasOwnProperty('flat'), false, "Instance");
-       a(Foo.prototype.flat, 'foo', "Prototype");
-
-       a.h2("Direct");
-       a(Foo.prototype.flat2, 'bar');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lint
deleted file mode 100644 (file)
index d1da610..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-@root
-
-module
-
-indent 2
-maxlen 100
-tabs
-
-ass
-continue
-forin
-nomen
-plusplus
-vars
-
-./global.js
-./function/_define-length.js
-./function/#/copy.js
-./object/unserialize.js
-./test/function/valid-function.js
-evil
-
-./math/_pack-ieee754.js
-./math/_unpack-ieee754.js
-./math/clz32/shim.js
-./math/imul/shim.js
-./number/to-uint32.js
-./string/#/at.js
-bitwise
-
-./math/fround/shim.js
-predef+ Float32Array
-
-./object/first-key.js
-forin
-
-./test/reg-exp/#/index.js
-predef+ __dirname
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lintignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.lintignore
deleted file mode 100644 (file)
index ed703ed..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/string/#/normalize/_data.js
-/test/boolean/is-boolean.js
-/test/date/is-date.js
-/test/number/is-number.js
-/test/object/is-copy.js
-/test/object/is-object.js
-/test/reg-exp/is-reg-exp.js
-/test/string/is-string.js
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.npmignore
deleted file mode 100644 (file)
index eb09b50..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/.lintcache
-/npm-debug.log
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/.travis.yml
deleted file mode 100644 (file)
index b98b5a8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-before_install:
-  - mkdir node_modules; ln -s ../ node_modules/es5-ext
-
-notifications:
-  email:
-    - medikoo+es5-ext@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/CHANGES
deleted file mode 100644 (file)
index e72d34a..0000000
+++ /dev/null
@@ -1,591 +0,0 @@
-v0.10.6  --  2015.02.02
-* Fix handling of infinite values in Math.trunc
-* Fix handling of getters in Object.normalizeOptions
-
-v0.10.5  --  2015.01.20
-* Add Function#toStringTokens
-* Add Object.serialize and Object.unserialize
-* Add String.randomUniq
-* Fix Strin#camelToHyphen issue with tokens that end with digit
-* Optimise Number.isInteger logic
-* Improve documentation
-* Configure lint scripts
-* Fix spelling of LICENSE
-
-v0.10.4  --  2014.04.30
-* Assure maximum spec compliance of Array.of and Array.from (thanks @mathiasbynens)
-* Improve documentations
-
-v0.10.3  --  2014.04.29
-Provide accurate iterators handling:
-* Array.from improvements:
-  * Assure right unicode symbols resolution when processing strings in Array.from
-  * Rely on ES6 symbol shim and use native @@iterator Symbol if provided by environment
-* Add methods:
-  * Array.prototype.entries
-  * Array.prototype.keys
-  * Array.prototype.values
-  * Array.prototype[@@iterator]
-  * String.prototype[@@iterator]
-
-Improve documentation
-
-v0.10.2  --  2014.04.24
-- Simplify and deprecate `isCallable`. It seems in ES5 based engines there are
-  no callable objects which are `typeof obj !== 'function'`
-- Update Array.from map callback signature (up to latest resolution of TC39)
-- Improve documentation
-
-v0.10.1  --  2014.04.14
-Bump version for npm
-(Workaround for accidental premature publish & unpublish of v0.10.0 a while ago)
-
-v0.10.0  --  2014.04.13
-Major update:
-- All methods and function specified for ECMAScript 6 are now introduced as
-  shims accompanied with functions through which (optionally) they can be
-  implementend on native objects
-- Filename convention was changed to shorter and strictly lower case names. e.g.
-  `lib/String/prototype/starts-with` became `string/#/starts-with`
-- Generated functions are guaranteed to have expected length
-- Objects with null prototype (created via `Object.create(null)`) are widely
-  supported (older version have crashed due to implied `obj.hasOwnProperty` and
-  related invocations)
-- Support array subclasses
-- When handling lists do not limit its length to Uint32 range
-- Use newly introduced `Object.eq` for strict equality in place of `Object.is`
-- Iteration of Object have been improved so properties that were hidden or
-  removed after iteration started are not iterated.
-
-Additions:
-- `Array.isPlainArray`
-- `Array.validArray`
-- `Array.prototype.concat` (as updated with ES6)
-- `Array.prototype.copyWithin` (as introduced with ES6)
-- `Array.prototype.fill` (as introduced with ES6)
-- `Array.prototype.filter` (as updated with ES6)
-- `Array.prototype.findIndex` (as introduced with ES6)
-- `Array.prototype.map` (as updated with ES6)
-- `Array.prototype.separate`
-- `Array.prototype.slice` (as updated with ES6)
-- `Array.prototype.splice` (as updated with ES6)
-- `Function.prototype.copy`
-- `Math.acosh` (as introduced with ES6)
-- `Math.atanh` (as introduced with ES6)
-- `Math.cbrt` (as introduced with ES6)
-- `Math.clz32` (as introduced with ES6)
-- `Math.cosh` (as introduced with ES6)
-- `Math.expm1` (as introduced with ES6)
-- `Math.fround` (as introduced with ES6)
-- `Math.hypot` (as introduced with ES6)
-- `Math.imul` (as introduced with ES6)
-- `Math.log2` (as introduced with ES6)
-- `Math.log10` (as introduced with ES6)
-- `Math.log1p` (as introduced with ES6)
-- `Math.sinh` (as introduced with ES6)
-- `Math.tanh` (as introduced with ES6)
-- `Math.trunc` (as introduced with ES6)
-- `Number.EPSILON` (as introduced with ES6)
-- `Number.MIN_SAFE_INTEGER` (as introduced with ES6)
-- `Number.MAX_SAFE_INTEGER` (as introduced with ES6)
-- `Number.isFinite` (as introduced with ES6)
-- `Number.isInteger` (as introduced with ES6)
-- `Number.isSafeInteger` (as introduced with ES6)
-- `Object.create` (with fix for V8 issue which disallows prototype turn of
-  objects derived from null
-- `Object.eq` - Less restrictive version of `Object.is` based on SameValueZero
-  algorithm
-- `Object.firstKey`
-- `Object.keys` (as updated with ES6)
-- `Object.mixinPrototypes`
-- `Object.primitiveSet`
-- `Object.setPrototypeOf` (as introduced with ES6)
-- `Object.validObject`
-- `RegExp.escape`
-- `RegExp.prototype.match` (as introduced with ES6)
-- `RegExp.prototype.replace` (as introduced with ES6)
-- `RegExp.prototype.search` (as introduced with ES6)
-- `RegExp.prototype.split` (as introduced with ES6)
-- `RegExp.prototype.sticky` (as introduced with ES6)
-- `RegExp.prototype.unicode` (as introduced with ES6)
-- `String.fromCodePoint` (as introduced with ES6)
-- `String.raw` (as introduced with ES6)
-- `String.prototype.at`
-- `String.prototype.codePointAt` (as introduced with ES6)
-- `String.prototype.normalize` (as introduced with ES6)
-- `String.prototype.plainReplaceAll`
-
-Removals:
-- `reserved` set
-- `Array.prototype.commonLeft`
-- `Function.insert`
-- `Function.remove`
-- `Function.prototype.silent`
-- `Function.prototype.wrap`
-- `Object.descriptor` Move to external `d` project.
-  See: https://github.com/medikoo/d
-- `Object.diff`
-- `Object.extendDeep`
-- `Object.reduce`
-- `Object.values`
-- `String.prototype.trimCommonLeft`
-
-Renames:
-- `Function.i` into `Function.identity`
-- `Function.k` into `Function.constant`
-- `Number.toInt` into `Number.toInteger`
-- `Number.toUint` into `Number.toPosInteger`
-- `Object.extend` into `Object.assign` (as introduced in ES 6)
-- `Object.extendProperties` into `Object.mixin`, with improved internal
-  handling, so it matches temporarily specified `Object.mixin` for ECMAScript 6
-- `Object.isList` into `Object.isArrayLike`
-- `Object.mapToArray` into `Object.toArray` (with fixed function length)
-- `Object.toPlainObject` into `Object.normalizeOptions` (as this is the real
-  use case where we use this function)
-- `Function.prototype.chain` into `Function.prototype.compose`
-- `Function.prototype.match` into `Function.prototype.spread`
-- `String.prototype.format` into `String.formatMethod`
-
-Improvements & Fixes:
-- Remove workaround for primitive values handling in object iterators
-- `Array.from`: Update so it follows ES 6 spec
-- `Array.prototype.compact`: filters just null and undefined values
-  (not all falsies)
-- `Array.prototype.eIndexOf` and `Array.prototype.eLastIndexOf`: fix position
-  handling, improve internals
-- `Array.prototype.find`: return undefined not null, in case of not found
-  (follow ES 6)
-- `Array.prototype.remove` fix function length
-- `Error.custom`: simplify, Custom class case is addressed by outer
-  `error-create` project -> https://github.com/medikoo/error-create
-- `Error.isError` true only for Error instances (remove detection of host
-  Exception objects)
-- `Number.prototype.pad`: Normalize negative pad
-- `Object.clear`: Handle errors same way as in `Object.assign`
-- `Object.compact`: filters just null and undefined values (not all falsies)
-- `Object.compare`: Take into account NaN values
-- `Object.copy`: Split into `Object.copy` and `Object.copyDeep`
-- `Object.isCopy`: Separate into `Object.isCopy` and `Object.isCopyDeep`, where
-  `isCopyDeep` handles nested plain objects and plain arrays only
-- `String.prototype.endsWith`: Adjust up to ES6 specification
-- `String.prototype.repeat`: Adjust up to ES6 specification and improve algorithm
-- `String.prototype.simpleReplace`: Rename into `String.prototype.plainReplace`
-- `String.prototype.startsWith`: Adjust up to ES6 specification
-- Update lint rules, and adjust code to that
-- Update Travis CI configuration
-- Remove Makefile (it's cross-env utility)
-
-v0.9.2  --  2013.03.11
-Added:
-* Array.prototype.isCopy
-* Array.prototype.isUniq
-* Error.CustomError
-* Function.validFunction
-* Object.extendDeep
-* Object.descriptor.binder
-* Object.safeTraverse
-* RegExp.validRegExp
-* String.prototype.capitalize
-* String.prototype.simpleReplace
-
-Fixed:
-* Fix Array.prototype.diff for sparse arrays
-* Accept primitive objects as input values in Object iteration methods and
-  Object.clear, Object.count, Object.diff, Object.extend,
-  Object.getPropertyNames, Object.values
-* Pass expected arguments to callbacks of Object.filter, Object.mapKeys,
-  Object.mapToArray, Object.map
-* Improve callable callback support in Object.mapToArray
-
-v0.9.1  --  2012.09.17
-* Object.reduce - reduce for hash-like collections
-* Accapt any callable object as callback in Object.filter, mapKeys and map
-* Convention cleanup
-
-v0.9.0  --  2012.09.13
-We're getting to real solid API
-
-Removed:
-* Function#memoize - it's grown up to be external package, to be soon published
-  as 'memoizee'
-* String.guid - it doesn't fit es5-ext (extensions) concept, will be provided as
-  external package
-# Function.arguments - obsolete
-# Function.context - obsolete
-# Function#flip - not readable when used, so it was never used
-# Object.clone - obsolete and confusing
-
-Added:
-* String#camelToHyphen - String format convertion
-
-Renamed:
-* String#dashToCamelCase -> String#hyphenToCamel
-
-Fixes:
-* Object.isObject - Quote names in literals that match reserved keywords
-  (older implementations crashed on that)
-* String#repeat - Do not accept negative values (coerce them to 1)
-
-Improvements:
-* Array#remove - Accepts many arguments, we can now remove many values at once
-* Object iterators (forEach, map, some) - Compare function invoked with scope
-  object bound to this
-* Function#curry - Algorithm cleanup
-* Object.isCopy - Support for all types, not just plain objects
-* Object.isPlainObject - Support for cross-frame objects
-* Do not memoize any of the functions, it shouldn't be decided internally
-* Remove Object.freeze calls in reserved, it's not up to convention
-* Improved documentation
-* Better linting (hard-core approach using both JSLint mod and JSHint)
-* Optional arguments are now documented in funtions signature
-
-v0.8.2  --  2012.06.22
-Fix errors in Array's intersection and exclusion methods, related to improper
-usage of contains method
-
-v0.8.1  --  2012.06.13
-Reorganized internal logic of Function.prototype.memoize. So it's more safe now
-and clears cache properly. Additionally preventCache option was provided.
-
-v0.8.0  --  2012.05.28
-Again, major overhaul. Probably last experimental stuff was trashed, all API
-looks more like standard extensions now.
-
-Changes:
-* Turn all Object.prototype extensions into functions and move them to Object
-namespace. We learned that extending Object.prototype is bad idea in any case.
-* Rename Function.prototype.curry into Function.prototype.partial. This function
-  is really doing partial application while currying is slightly different
-  concept.
-* Convert Function.prototype.ncurry to new implementation of
-  Function.prototype.curry, it now serves real curry concept additionaly it
-  covers use cases for aritize and hold, which were removed.
-* Rename Array's peek to last, and provide support for sparse arrays in it
-* Rename Date's monthDaysCount into daysInMonth
-* Simplify object iterators, now order of iteration can be configured with just
-  compareFn argument (no extra byKeys option)
-* Rename Object.isDuplicate to Object.isCopy
-* Rename Object.isEqual to Object.is which is compatible with future 'is'
-  keyword
-* Function.memoize is now Function.prototype.memoize. Additionally clear cache
-  functionality is added, and access to original arguments object.
-* Rename validation functions: assertNotNull to validValue, assertCallable to
-  validCallable. validValue was moved to Object namespace. On success they now
-  return validated value instead of true, it supports better composition.
-  Additionally created Date.validDate and Error.validError
-* All documentation is now held in README.md not in code files.
-* Move guid to String namespace. All guids now start with numbers.
-* Array.generate: fill argument is now optional
-* Object.toArray is now Array.from (as new ES6 specification draft suggests)
-* All methods that rely on indexOf or lastIndexOf, now rely on egal (Object.is)
-  versions of them (eIndexOf, eLastIndexOf)
-* Turn all get* functions that returned methods into actuall methods (get*
-  functionality can still be achieved with help of Function.prototype.partial).
-  So: Date.getFormat is now Date.prototype.format,
-  Number.getPad is now Number.prototype.pad,
-  String.getFormat is now String.prototype.format,
-  String.getIndent is now String.prototype.indent,
-  String.getPad is now String.prototype.pad
-* Refactored Object.descriptor, it is now just two functions, main one and
-  main.gs, main is for describing values, and gs for describing getters and
-  setters. Configuration is passed with first argument as string e.g. 'ce' for
-  configurable and enumerable. If no configuration string is provided then by
-  default it returns configurable and writable but not enumerable for value or
-  configurable but not enumerable for getter/setter
-* Function.prototype.silent now returns prepared function (it was
-  expected to be fixed for 0.7)
-* Reserved keywords map (reserved) is now array not hash.
-* Object.merge is now Object.extend (while former Object.extend was completely
-  removed) - 'extend' implies that we change object, not creating new one (as
-  'merge' may imply). Similarily Object.mergeProperties was renamed to
-  Object.extendProperties
-* Position argument support in Array.prototype.contains and
-  String.prototype.contains (so it follows ES6 specification draft)
-* endPosition argument support in String.prototype.endsWith and fromPosition
-  argument support in String.prototype.startsWith (so it follows ES6
-  specification draft)
-* Better and cleaner String.prototype.indent implementation. No default value
-  for indent string argument, optional nest value (defaults to 1), remove
-  nostart argument
-* Correct length values for most methods (so they reflect length of similar
-  methods in standard)
-* Length argument is now optional in number and string pad methods.
-* Improve arguments validation in general, so it adheres to standard conventions
-* Fixed format of package.json
-
-Removed methods and functions:
-* Object.prototype.slice - Object is not ordered collection, so slice doesn't
-  make sense.
-* Function's rcurry, rncurry, s - too cumbersome for JS, not many use cases for
-  that
-* Function.prototype.aritize and Function.prototype.hold - same functionality
-  can be achieved with new Function.prototype.curry
-* Function.prototype.log - provided more generic Function.prototype.wrap for
-  same use case
-* getNextIdGenerator - no use case for that (String.guid should be used if
-  needed)
-* Object.toObject - Can be now acheived with Object(validValue(x))
-* Array.prototype.someValue - no real use case (personally used once and
-  case was already controversial)
-* Date.prototype.duration - moved to external package
-* Number.getAutoincrement - No real use case
-* Object.prototype.extend, Object.prototype.override,
-  Object.prototype.plainCreate, Object.prototype.plainExtend - It was probably
-  too complex, same should be achieved just with Object.create,
-  Object.descriptor and by saving references to super methods in local scope.
-* Object.getCompareBy - Functions should be created individually for each use
-  case
-* Object.get, Object.getSet, Object.set, Object.unset - Not many use cases and
-  same can be easily achieved with simple inline function
-* String.getPrefixWith - Not real use case for something that can be easily
-  achieved with '+' operator
-* Object.isPrimitive - It's just negation of Object.isObject
-* Number.prototype.isLess, Number.prototype.isLessOrEqual - they shouldn't be in
-  Number namespace and should rather be addressed with simple inline functions.
-* Number.prototype.subtract - Should rather be addressed with simple inline
-  function
-
-New methods and functions:
-* Array.prototype.lastIndex - Returns last declared index in array
-* String.prototype.last - last for strings
-* Function.prototype.wrap - Wrap function with other, it allows to specify
-  before and after behavior transform return value or prevent original function
-  from being called.
-* Math.sign - Returns sign of a number (already in ES6 specification draft)
-* Number.toInt - Converts value to integer (already in ES6 specification draft)
-* Number.isNaN - Returns true if value is NaN (already in ES6 specification
-  draft)
-* Number.toUint - Converts value to unsigned integer
-* Number.toUint32 - Converts value to 32bit unsigned integer
-* Array.prototype.eIndexOf, eLastIndexOf - Egal version (that uses Object.is) of
-  standard methods (all methods that were using native indexOf or lastIndexOf
-  now uses eIndexOf and elastIndexOf respectively)
-* Array.of - as it's specified for ES6
-
-Fixes:
-* Fixed binarySearch so it always returns valid list index
-* Object.isList - it failed on lists that are callable (e.g. NodeList in Nitro
-  engine)
-* Object.map now supports third argument for callback
-
-v0.7.1  --  2012.01.05
-New methods:
-* Array.prototype.firstIndex - returns first valid index of array (for
-       sparse arrays it may not be '0'
-
-Improvements:
-* Array.prototype.first - now returns value for index returned by firstIndex
-* Object.prototype.mapToArray - can be called without callback, then array of
-       key-value pairs is returned
-
-Fixes
-* Array.prototype.forEachRight, object's length read through UInt32 conversion
-
-v0.7.0  --  2011.12.27
-Major update.
-Stepped back from experimental ideas and introduced more standard approach
-taking example from how ES5 methods and functions are designed. One exceptions
-is that, we don’t refrain from declaring methods for Object.prototype - it’s up
-to developer whether how he decides to use it in his context (as function or as
-method).
-
-In general:
-* Removed any method 'functionalization' and functionalize method itself.
-       es5-ext declares plain methods, which can be configured to work as functions
-       with call.bind(method) - see documentation.
-* Removed separation of Object methods for ES5 (with descriptors) and
-       ES3 (plain) - we're following ES5 idea on that, some methods are intended just
-       for enumerable properties and some are for all properties, all are declared
-       for Object.prototype
-* Removed separation of Array generic (collected in List folder) and not generic
-       methods (collected in Array folder). Now all methods are generic and are in
-       Array/prototype folder. This separation also meant, that methods in Array are
-       usually destructive. We don’t do that separation now, there’s generally no use
-       case for destructive iterators, we should be fine with one version of each
-       method, (same as ES5 is fine with  e.g. one, non destructive 'filter' method)
-* Folder structure resembles tree of native ES5 Objects
-* All methods are written with ES5 conventions in mind, it means that most
-       methods are generic and can be run on any object. In more detail:
-       ** Array.prototype and Object.prototype methods can be run on any object (any
-               not null or undefined value),
-       ** Date.prototype methods should be called only on Date instances.
-       ** Function.prototype methods can be called on any callable objects (not
-               necessarily functions)
-       ** Number.prototype & String.prototype methods can be called on any value, in
-               case of Number it it’ll be degraded to number, in case of string it’ll be
-               degraded to string.
-* Travis CI support (only for Node v0.6 branch, as v0.4 has buggy V8 version)
-
-Improvements for existing functions and methods:
-* Function.memoize (was Function.cache) is now fully generic, can operate on any
-       type of arguments and it’s NaN safe (all NaN objects are considered equal)
-* Method properties passed to Object.prototype.extend or
-       Object.prototype.override can aside of _super optionally take prototype object
-       via _proto argument
-* Object iterators: forEach, mapToArray and every can now iterate in specified
-       order
-* pluck, invoke and other functions that return reusable functions or methods
-       have now their results memoized.
-
-New methods:
-* Global: assertNotNull, getNextIdGenerator, guid, isEqual, isPrimitive,
-       toObject
-* Array: generate
-* Array.prototype: binarySearch, clear, contains, diff, exclusion, find, first,
-       forEachRight, group, indexesOf, intersection, remove, someRight, someValue
-* Boolean: isBoolean
-* Date: isDate
-* Function: arguments, context, insert, isArguments, remove
-* Function.prototype: not, silent
-* Number: getAutoincrement, isNumber
-* Number.prototype: isLessOrEqual, isLess, subtract
-* Object: assertCallable, descriptor (functions for clean descriptors),
-       getCompareBy, isCallable, isObject
-* Object.prototype: clone (real clone), compact, count, diff, empty,
-       getPropertyNames, get, keyOf, mapKeys, override, plainCreate, plainExtend,
-       slice, some, unset
-* RegExp: isRegExp
-* String: getPrefixWith, isString
-* String.prototype: caseInsensitiveCompare, contains, isNumeric
-
-Renamed methods:
-* Date.clone -> Date.prototype.copy
-* Date.format -> Date.getFormat
-* Date/day/floor -> Date.prototype.floorDay
-* Date/month/floor -> Date.prototype.floorMonth
-* Date/month/year -> Date.prototype.floorYear
-* Function.cache -> Function.memoize
-* Function.getApplyArg -> Function.prototype.match
-* Function.sequence -> Function.prototype.chain
-* List.findSameStartLength -> Array.prototype.commonLeft
-* Number.pad -> Number.getPad
-* Object/plain/clone -> Object.prototype.copy
-* Object/plain/elevate -> Object.prototype.flatten
-* Object/plain/same -> Object.prototype.isDuplicate
-* Object/plain/setValue -> Object.getSet
-* String.format -> String.getFormat
-* String.indent -> String.getIndent
-* String.pad -> String.getPad
-* String.trimLeftStr -> String.prototype.trimCommonLeft
-* Object.merge -> Object.prototype.mergeProperties
-* Object/plain/pluck -> Object.prototype.get
-* Array.clone is now Array.prototype.copy and can be used also on any array-like
-       objects
-* List.isList -> Object.isList
-* List.toArray -> Object.prototype.toArray
-* String/convert/dashToCamelCase -> String.prototype.dashToCamelCase
-
-Removed methods:
-* Array.compact - removed destructive version (that operated on same array), we
-       have now non destructive version as Array.prototype.compact.
-* Function.applyBind -> use apply.bind directly
-* Function.bindBind -> use bind.bind directly
-* Function.callBind -> use call.bind directly
-* Fuction.clone -> no valid use case
-* Function.dscope -> controversial approach, shouldn’t be considered seriously
-* Function.functionalize -> It was experimental but standards are standards
-* List/sort/length -> It can be easy obtained by Object.getCompareBy(‘length’)
-* List.concat -> Concat’s for array-like’s makes no sense, just convert to array
-       first
-* List.every -> Use Array.prototype.every directly
-* List.filter -> Use Array.prototype.filter directly
-* List.forEach -> User Array.prototype.forEach directly
-* List.isListObject -> No valid use case, do: isList(list) && (typeof list ===
-       'object’)
-* List.map -> Use Array.prototype.map directly
-* List.reduce -> Use Array.prototype.reduce directly
-* List.shiftSame -> Use Array.prototype.commonLeft and do slice
-* List.slice -> Use Array.prototype.slice directly
-* List.some -> Use Array.prototype.some directly
-* Object.bindMethods -> it was version that considered descriptors, we have now
-       Object.prototype.bindMethods which operates only on enumerable properties
-* Object.every -> version that considered all properties, we have now
-       Object.prototype.every which iterates only enumerables
-* Object.invoke -> no use case
-* Object.mergeDeep -> no use case
-* Object.pluck -> no use case
-* Object.same -> it considered descriptors, now there’s only Object.isDuplicate
-       which compares only enumerable properties
-* Object.sameType -> no use case
-* Object.toDescriptor and Object.toDescriptors -> replaced by much nicer
-       Object.descriptor functions
-* Object/plain/link -> no use case (it was used internally only by
-       Object/plain/merge)
-* Object/plain/setTrue -> now easily configurable by more universal
-       Object.getSet(true)
-* String.trimRightStr -> Eventually String.prototype.trimCommonRight will be
-       added
-
-v0.6.3  --  2011.12.12
-* Cleared npm warning for misnamed property in package.json
-
-v0.6.2  --  2011.08.12
-* Calling String.indent without scope (global scope then) now treated as calling
-  it with null scope, it allows more direct invocations when using default nest
-  string: indent().call(str, nest)
-
-v0.6.1  --  2011.08.08
-* Added TAD test suite to devDependencies, configured test commands.
-  Tests can be run with 'make test' or 'npm test'
-
-v0.6.0  --  2011.08.07
-New methods:
-* Array: clone, compact (in place)
-* Date: format, duration, clone, monthDaysCount, day.floor, month.floor,
-  year.floor
-* Function: getApplyArg, , ncurry, rncurry, hold, cache, log
-* List: findSameStartLength, shiftSame, peek, isListObject
-* Number: pad
-* Object: sameType, toString, mapToArray, mergeDeep, toDescriptor,
-  toDescriptors, invoke
-* String: startsWith, endsWith, indent, trimLeftStr, trimRightStr, pad, format
-
-Fixed:
-* Object.extend does now prototypal extend as exptected
-* Object.merge now tries to overwrite only configurable properties
-* Function.flip
-
-Improved:
-* Faster List.toArray
-* Better global retrieval
-* Functionalized all Function methods
-* Renamed bindApply and bindCall to applyBind and callBind
-* Removed Function.inherit (as it's unintuitive curry clone)
-* Straightforward logic in Function.k
-* Fixed naming of some tests files (letter case issue)
-* Renamed Function.saturate into Function.lock
-* String.dashToCamelCase digits support
-* Strings now considered as List objects
-* Improved List.compact
-* Concise logic for List.concat
-* Test wit TAD in clean ES5 context
-
-v0.5.1  --  2011.07.11
-* Function's bindBind, bindCall and bindApply now more versatile
-
-v0.5.0  --  2011.07.07
-* Removed Object.is and List.apply
-* Renamed Object.plain.is to Object.plain.isPlainObject (keep naming convention
-  consistent)
-* Improved documentation
-
-v0.4.0  --  2011.07.05
-* Take most functions on Object to Object.plain to keep them away from object
-  descriptors
-* Object functions with ES5 standard in mind (object descriptors)
-
-v0.3.0  --  2011.06.24
-* New functions
-* Consistent file naming (dash instead of camelCase)
-
-v0.2.1  --  2011.05.28
-* Renamed Functions.K and Function.S to to lowercase versions (use consistent
-  naming)
-
-v0.2.0  --  2011.05.28
-* Renamed Array folder to List (as its generic functions for array-like objects)
-* Added Makefile
-* Added various functions
-
-v0.1.0  --  2011.05.24
-* Initial version
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/LICENSE
deleted file mode 100644 (file)
index de39071..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2011-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/README.md
deleted file mode 100644 (file)
index 11d8a34..0000000
+++ /dev/null
@@ -1,993 +0,0 @@
-# es5-ext
-## ECMAScript 5 extensions
-### (with respect to ECMAScript 6 standard)
-
-Shims for upcoming ES6 standard and other goodies implemented strictly with ECMAScript conventions in mind.
-
-It's designed to be used in compliant ECMAScript 5 or ECMAScript 6 environments. Older environments are not supported, although most of the features should work with correct ECMAScript 5 shim on board.
-
-When used in ECMAScript 6 environment, native implementation (if valid) takes precedence over shims.
-
-### Installation
-
-       $ npm install es5-ext
-       
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-### Usage
-
-#### ECMAScript 6 features
-
-You can force ES6 features to be implemented in your environment, e.g. following will assign `from` function to `Array` (only if it's not implemented already).
-
-```javascript
-require('es5-ext/array/from/implement');
-Array.from('foo'); // ['f', 'o', 'o']
-```
-
-You can also access shims directly, without fixing native objects. Following will return native `Array.from` if it's available and fallback to shim if it's not.
-
-```javascript
-var aFrom = require('es5-ext/array/from');
-aFrom('foo'); // ['f', 'o', 'o']
-```
-
-If you want to use shim unconditionally (even if native implementation exists) do:
-
-```javascript
-var aFrom = require('es5-ext/array/from/shim');
-aFrom('foo'); // ['f', 'o', 'o']
-```
-
-##### List of ES6 shims
-
-It's about properties introduced with ES6 and those that have been updated in new spec.
-
-- `Array.from` -> `require('es5-ext/array/from')`
-- `Array.of` -> `require('es5-ext/array/of')`
-- `Array.prototype.concat` -> `require('es5-ext/array/#/concat')`
-- `Array.prototype.copyWithin` -> `require('es5-ext/array/#/copy-within')`
-- `Array.prototype.entries` -> `require('es5-ext/array/#/entries')`
-- `Array.prototype.fill` -> `require('es5-ext/array/#/fill')`
-- `Array.prototype.filter` -> `require('es5-ext/array/#/filter')`
-- `Array.prototype.find` -> `require('es5-ext/array/#/find')`
-- `Array.prototype.findIndex` -> `require('es5-ext/array/#/find-index')`
-- `Array.prototype.keys` -> `require('es5-ext/array/#/keys')`
-- `Array.prototype.map` -> `require('es5-ext/array/#/map')`
-- `Array.prototype.slice` -> `require('es5-ext/array/#/slice')`
-- `Array.prototype.splice` -> `require('es5-ext/array/#/splice')`
-- `Array.prototype.values` -> `require('es5-ext/array/#/values')`
-- `Array.prototype[@@iterator]` -> `require('es5-ext/array/#/@@iterator')`
-- `Math.acosh` -> `require('es5-ext/math/acosh')`
-- `Math.asinh` -> `require('es5-ext/math/asinh')`
-- `Math.atanh` -> `require('es5-ext/math/atanh')`
-- `Math.cbrt` -> `require('es5-ext/math/cbrt')`
-- `Math.clz32` -> `require('es5-ext/math/clz32')`
-- `Math.cosh` -> `require('es5-ext/math/cosh')`
-- `Math.exmp1` -> `require('es5-ext/math/expm1')`
-- `Math.fround` -> `require('es5-ext/math/fround')`
-- `Math.hypot` -> `require('es5-ext/math/hypot')`
-- `Math.imul` -> `require('es5-ext/math/imul')`
-- `Math.log1p` -> `require('es5-ext/math/log1p')`
-- `Math.log2` -> `require('es5-ext/math/log2')`
-- `Math.log10` -> `require('es5-ext/math/log10')`
-- `Math.sign` -> `require('es5-ext/math/sign')`
-- `Math.signh` -> `require('es5-ext/math/signh')`
-- `Math.tanh` -> `require('es5-ext/math/tanh')`
-- `Math.trunc` -> `require('es5-ext/math/trunc')`
-- `Number.EPSILON` -> `require('es5-ext/number/epsilon')`
-- `Number.MAX_SAFE_INTEGER` -> `require('es5-ext/number/max-safe-integer')`
-- `Number.MIN_SAFE_INTEGER` -> `require('es5-ext/number/min-safe-integer')`
-- `Number.isFinite` -> `require('es5-ext/number/is-finite')`
-- `Number.isInteger` -> `require('es5-ext/number/is-integer')`
-- `Number.isNaN` -> `require('es5-ext/number/is-nan')`
-- `Number.isSafeInteger` -> `require('es5-ext/number/is-safe-integer')`
-- `Object.assign` -> `require('es5-ext/object/assign')`
-- `Object.keys` -> `require('es5-ext/object/keys')`
-- `Object.setPrototypeOf` -> `require('es5-ext/object/set-prototype-of')`
-- `RegExp.prototype.match` -> `require('es5-ext/reg-exp/#/match')`
-- `RegExp.prototype.replace` -> `require('es5-ext/reg-exp/#/replace')`
-- `RegExp.prototype.search` -> `require('es5-ext/reg-exp/#/search')`
-- `RegExp.prototype.split` -> `require('es5-ext/reg-exp/#/split')`
-- `RegExp.prototype.sticky` -> Implement with `require('es5-ext/reg-exp/#/sticky/implement')`, use as function with `require('es5-ext/reg-exp/#/is-sticky')`
-- `RegExp.prototype.unicode` -> Implement with `require('es5-ext/reg-exp/#/unicode/implement')`, use as function with `require('es5-ext/reg-exp/#/is-unicode')`
-- `String.fromCodePoint` -> `require('es5-ext/string/from-code-point')`
-- `String.raw` -> `require('es5-ext/string/raw')`
-- `String.prototype.codePointAt` -> `require('es5-ext/string/#/code-point-at')`
-- `String.prototype.contains` -> `require('es5-ext/string/#/contains')`
-- `String.prototype.endsWith` -> `require('es5-ext/string/#/ends-with')`
-- `String.prototype.normalize` -> `require('es5-ext/string/#/normalize')`
-- `String.prototype.repeat` -> `require('es5-ext/string/#/repeat')`
-- `String.prototype.startsWith` -> `require('es5-ext/string/#/starts-with')`
-- `String.prototype[@@iterator]` -> `require('es5-ext/string/#/@@iterator')`
-
-#### Non ECMAScript standard features
-
-__es5-ext__ provides also other utils, and implements them as if they were proposed for a standard. It mostly offers methods (not functions) which can directly be assigned to native prototypes:
-
-```javascript
-Object.defineProperty(Function.prototype, 'partial', { value: require('es5-ext/function/#/partial'),
-  configurable: true, enumerable: false, writable: true });
-Object.defineProperty(Array.prototype, 'flatten', { value: require('es5-ext/array/#/flatten'),
-  configurable: true, enumerable: false, writable: true });
-Object.defineProperty(String.prototype, 'capitalize', { value: require('es5-ext/string/#/capitalize'),
-  configurable: true, enumerable: false, writable: true });
-```
-
-See [es5-extend](https://github.com/wookieb/es5-extend#es5-extend), a great utility that automatically will extend natives for you. 
-
-__Important:__ Remember to __not__ extend natives in scope of generic reusable packages (e.g. ones you intend to publish to npm). Extending natives is fine __only__ if you're the _owner_ of the global scope, so e.g. in final project you lead development of.
-
-When you're in situation when native extensions are not good idea, then you should use methods indirectly:
-
-
-```javascript
-var flatten = require('es5-ext/array/#/flatten');
-
-flatten.call([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-for better convenience you can turn methods into functions:
-
-
-```javascript
-var call = Function.prototype.call
-var flatten = call.bind(require('es5-ext/array/#/flatten'));
-
-flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-You can configure custom toolkit (like [underscorejs](http://underscorejs.org/)), and use it throughout your application
-
-```javascript
-var util = {};
-util.partial = call.bind(require('es5-ext/function/#/partial'));
-util.flatten = call.bind(require('es5-ext/array/#/flatten'));
-util.startsWith = call.bind(require('es5-ext/string/#/starts-with'));
-
-util.flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-As with native ones most methods are generic and can be run on any type of object.
-
-## API
-
-### Global extensions
-
-#### global _(es5-ext/global)_
-
-Object that represents global scope
-
-### Array Constructor extensions
-
-#### from(arrayLike[, mapFn[, thisArg]]) _(es5-ext/array/from)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from).  
-Returns array representation of _iterable_ or _arrayLike_. If _arrayLike_ is an instance of array, its copy is returned.
-
-#### generate([length[, …fill]]) _(es5-ext/array/generate)_
-
-Generate an array of pre-given _length_ built of repeated arguments.
-
-#### isPlainArray(x) _(es5-ext/array/is-plain-array)_
-
-Returns true if object is plain array (not instance of one of the Array's extensions).
-
-#### of([…items]) _(es5-ext/array/of)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.of).  
-Create an array from given arguments.
-
-#### toArray(obj) _(es5-ext/array/to-array)_
-
-Returns array representation of `obj`. If `obj` is already an array, `obj` is returned back.
-
-#### validArray(obj) _(es5-ext/array/valid-array)_
-
-Returns `obj` if it's an array, otherwise throws `TypeError`
-
-### Array Prototype extensions
-
-#### arr.binarySearch(compareFn) _(es5-ext/array/#/binary-search)_
-
-In __sorted__ list search for index of item for which _compareFn_ returns value closest to _0_.  
-It's variant of binary search algorithm
-
-#### arr.clear() _(es5-ext/array/#/clear)_
-
-Clears the array
-
-#### arr.compact() _(es5-ext/array/#/compact)_
-
-Returns a copy of the context with all non-values (`null` or `undefined`) removed.
-
-#### arr.concat() _(es5-ext/array/#/concat)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.concat).  
-ES6's version of `concat`. Supports `isConcatSpreadable` symbol, and returns array of same type as the context.
-
-#### arr.contains(searchElement[, position]) _(es5-ext/array/#/contains)_
-
-Whether list contains the given value.
-
-#### arr.copyWithin(target, start[, end]) _(es5-ext/array/#/copy-within)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.copywithin).  
-
-#### arr.diff(other) _(es5-ext/array/#/diff)_
-
-Returns the array of elements that are present in context list but not present in other list.
-
-#### arr.eIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-index-of)_
-
-_egal_ version of `indexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
-
-#### arr.eLastIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-last-index-of)_
-
-_egal_ version of `lastIndexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
-
-#### arr.entries() _(es5-ext/array/#/entries)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.entries).  
-Returns iterator object, which traverses the array. Each value is represented with an array, where first value is an index and second is corresponding to index value.
-
-#### arr.exclusion([…lists]]) _(es5-ext/array/#/exclusion)_
-
-Returns the array of elements that are found only in one of the lists (either context list or list provided in arguments).
-
-#### arr.fill(value[, start, end]) _(es5-ext/array/#/fill)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.fill).  
-
-#### arr.filter(callback[, thisArg]) _(es5-ext/array/#/filter)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.filter).  
-ES6's version of `filter`, returns array of same type as the context.
-
-#### arr.find(predicate[, thisArg]) _(es5-ext/array/#/find)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.find).  
-Return first element for which given function returns true
-
-#### arr.findIndex(predicate[, thisArg]) _(es5-ext/array/#/find-index)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.findindex).  
-Return first index for which given function returns true
-
-#### arr.first() _(es5-ext/array/#/first)_
-
-Returns value for first defined index
-
-#### arr.firstIndex() _(es5-ext/array/#/first-index)_
-
-Returns first declared index of the array
-
-#### arr.flatten() _(es5-ext/array/#/flatten)_
-
-Returns flattened version of the array
-
-#### arr.forEachRight(cb[, thisArg]) _(es5-ext/array/#/for-each-right)_
-
-`forEach` starting from last element
-
-#### arr.group(cb[, thisArg]) _(es5-ext/array/#/group)_
-
-Group list elements by value returned by _cb_ function
-
-#### arr.indexesOf(searchElement[, fromIndex]) _(es5-ext/array/#/indexes-of)_
-
-Returns array of all indexes of given value
-
-#### arr.intersection([…lists]) _(es5-ext/array/#/intersection)_
-
-Computes the array of values that are the intersection of all lists (context list and lists given in arguments)
-
-#### arr.isCopy(other) _(es5-ext/array/#/is-copy)_
-
-Returns true if both context and _other_ lists have same content
-
-#### arr.isUniq() _(es5-ext/array/#/is-uniq)_
-
-Returns true if all values in array are unique
-
-#### arr.keys() _(es5-ext/array/#/keys)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.keys).  
-Returns iterator object, which traverses all array indexes.
-
-#### arr.last() _(es5-ext/array/#/last)_
-
-Returns value of last defined index
-
-#### arr.lastIndex() _(es5-ext/array/#/last)_
-
-Returns last defined index of the array
-
-#### arr.map(callback[, thisArg]) _(es5-ext/array/#/map)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.map).  
-ES6's version of `map`, returns array of same type as the context.
-
-#### arr.remove(value[, …valuen]) _(es5-ext/array/#/remove)_
-
-Remove values from the array
-
-#### arr.separate(sep) _(es5-ext/array/#/separate)_
-
-Returns array with items separated with `sep` value
-
-#### arr.slice(callback[, thisArg]) _(es5-ext/array/#/slice)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.slice).  
-ES6's version of `slice`, returns array of same type as the context.
-
-#### arr.someRight(cb[, thisArg]) _(es5-ext/array/#/someRight)_
-
-`some` starting from last element
-
-#### arr.splice(callback[, thisArg]) _(es5-ext/array/#/splice)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.splice).  
-ES6's version of `splice`, returns array of same type as the context.
-
-#### arr.uniq() _(es5-ext/array/#/uniq)_
-
-Returns duplicate-free version of the array
-
-#### arr.values() _(es5-ext/array/#/values)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.values).  
-Returns iterator object which traverses all array values.
-
-#### arr[@@iterator] _(es5-ext/array/#/@@iterator)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype-@@iterator).  
-Returns iterator object which traverses all array values.
-
-### Boolean Constructor extensions
-
-#### isBoolean(x) _(es5-ext/boolean/is-boolean)_
-
-Whether value is boolean
-
-### Date Constructor extensions
-
-#### isDate(x) _(es5-ext/date/is-date)_
-
-Whether value is date instance
-
-#### validDate(x) _(es5-ext/date/valid-date)_
-
-If given object is not date throw TypeError in other case return it.
-
-### Date Prototype extensions
-
-#### date.copy(date) _(es5-ext/date/#/copy)_
-
-Returns a copy of the date object
-
-#### date.daysInMonth() _(es5-ext/date/#/days-in-month)_
-
-Returns number of days of date's month
-
-#### date.floorDay() _(es5-ext/date/#/floor-day)_
-
-Sets the date time to 00:00:00.000
-
-#### date.floorMonth() _(es5-ext/date/#/floor-month)_
-
-Sets date day to 1 and date time to 00:00:00.000
-
-#### date.floorYear() _(es5-ext/date/#/floor-year)_
-
-Sets date month to 0, day to 1 and date time to 00:00:00.000
-
-#### date.format(pattern) _(es5-ext/date/#/format)_
-
-Formats date up to given string. Supported patterns:
-
-* `%Y` - Year with century, 1999, 2003
-* `%y` - Year without century, 99, 03
-* `%m` - Month, 01..12
-* `%d` - Day of the month 01..31
-* `%H` - Hour (24-hour clock), 00..23
-* `%M` - Minute, 00..59
-* `%S` - Second, 00..59
-* `%L` - Milliseconds, 000..999
-
-### Error Constructor extensions
-
-#### custom(message/*, code, ext*/) _(es5-ext/error/custom)_
-
-Creates custom error object, optinally extended with `code` and other extension properties (provided with `ext` object)  
-
-#### isError(x) _(es5-ext/error/is-error)_
-
-Whether value is an error (instance of `Error`).  
-
-#### validError(x) _(es5-ext/error/valid-error)_
-
-If given object is not error throw TypeError in other case return it.
-
-### Error Prototype extensions
-
-#### err.throw() _(es5-ext/error/#/throw)_
-
-Throws error
-
-### Function Constructor extensions
-
-Some of the functions were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
-
-#### constant(x) _(es5-ext/function/constant)_
-
-Returns a constant function that returns pregiven argument
-
-_k(x)(y)  =def  x_
-
-#### identity(x) _(es5-ext/function/identity)_
-
-Identity function. Returns first argument
-
-_i(x)  =def  x_
-
-#### invoke(name[, …args]) _(es5-ext/function/invoke)_
-
-Returns a function that takes an object as an argument, and applies object's
-_name_ method to arguments.  
-_name_ can be name of the method or method itself.
-
-_invoke(name, …args)(object, …args2)  =def  object\[name\]\(…args, …args2\)_
-
-#### isArguments(x) _(es5-ext/function/is-arguments)_
-
-Whether value is arguments object
-
-#### isFunction(arg) _(es5-ext/function/is-function)_
-
-Wether value is instance of function
-
-#### noop() _(es5-ext/function/noop)_
-
-No operation function
-
-#### pluck(name) _(es5-ext/function/pluck)_
-
-Returns a function that takes an object, and returns the value of its _name_
-property
-
-_pluck(name)(obj)  =def  obj[name]_
-
-#### validFunction(arg) _(es5-ext/function/valid-function)_
-
-If given object is not function throw TypeError in other case return it.
-
-### Function Prototype extensions
-
-Some of the methods were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
-
-#### fn.compose([…fns]) _(es5-ext/function/#/compose)_
-
-Applies the functions in reverse argument-list order.
-
-_f1.compose(f2, f3, f4)(…args)  =def  f1(f2(f3(f4(…arg))))_
-
-#### fn.copy() _(es5-ext/function/#/copy)_
-
-Produces copy of given function
-
-#### fn.curry([n]) _(es5-ext/function/#/curry)_
-
-Invoking the function returned by this function only _n_ arguments are passed to the underlying function. If the underlying function is not saturated, the result is a function that passes all its arguments to the underlying function.  
-If _n_ is not provided then it defaults to context function length
-
-_f.curry(4)(arg1, arg2)(arg3)(arg4)  =def  f(arg1, args2, arg3, arg4)_
-
-#### fn.lock([…args]) _(es5-ext/function/#/lock)_
-
-Returns a function that applies the underlying function to _args_, and ignores its own arguments.
-
-_f.lock(…args)(…args2)  =def  f(…args)_
-
-_Named after it's counterpart in Google Closure_
-
-#### fn.not() _(es5-ext/function/#/not)_
-
-Returns a function that returns boolean negation of value returned by underlying function.
-
-_f.not()(…args)  =def !f(…args)_
-
-#### fn.partial([…args]) _(es5-ext/function/#/partial)_
-
-Returns a function that when called will behave like context function called with initially passed arguments. If more arguments are suplilied, they are appended to initial args.
-
-_f.partial(…args1)(…args2)  =def  f(…args1, …args2)_
-
-#### fn.spread() _(es5-ext/function/#/spread)_
-
-Returns a function that applies underlying function with first list argument
-
-_f.match()(args)  =def  f.apply(null, args)_
-
-#### fn.toStringTokens() _(es5-ext/function/#/to-string-tokens)_
-
-Serializes function into two (arguments and body) string tokens. Result is plain object with `args` and `body` properties.
-
-### Math extensions
-
-#### acosh(x) _(es5-ext/math/acosh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.acosh).  
-
-#### asinh(x) _(es5-ext/math/asinh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.asinh).  
-
-#### atanh(x) _(es5-ext/math/atanh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.atanh).  
-
-#### cbrt(x) _(es5-ext/math/cbrt)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cbrt).  
-
-#### clz32(x) _(es5-ext/math/clz32)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.clz32).  
-
-#### cosh(x) _(es5-ext/math/cosh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cosh).  
-
-#### expm1(x) _(es5-ext/math/expm1)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.expm1).  
-
-#### fround(x) _(es5-ext/math/fround)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.fround).  
-
-#### hypot([…values]) _(es5-ext/math/hypot)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.hypot).  
-
-#### imul(x, y) _(es5-ext/math/imul)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.imul).  
-
-#### log1p(x) _(es5-ext/math/log1p)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log1p).  
-
-#### log2(x) _(es5-ext/math/log2)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log2).  
-
-#### log10(x) _(es5-ext/math/log10)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log10).  
-
-#### sign(x) _(es5-ext/math/sign)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sign).  
-
-#### sinh(x) _(es5-ext/math/sinh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sinh).  
-
-#### tanh(x) _(es5-ext/math/tanh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.tanh).  
-
-#### trunc(x) _(es5-ext/math/trunc)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.trunc).  
-
-### Number Constructor extensions
-
-#### EPSILON _(es5-ext/number/epsilon)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.epsilon).  
-
-The difference between 1 and the smallest value greater than 1 that is representable as a Number value, which is approximately 2.2204460492503130808472633361816 x 10-16.
-
-#### isFinite(x) _(es5-ext/number/is-finite)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).  
-Whether value is finite. Differs from global isNaN that it doesn't do type coercion.
-
-#### isInteger(x) _(es5-ext/number/is-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger).  
-Whether value is integer.
-
-#### isNaN(x) _(es5-ext/number/is-nan)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isnan).  
-Whether value is NaN. Differs from global isNaN that it doesn't do type coercion.
-
-#### isNumber(x) _(es5-ext/number/is-number)_
-
-Whether given value is number
-
-#### isSafeInteger(x) _(es5-ext/number/is-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.issafeinteger).  
-
-#### MAX_SAFE_INTEGER _(es5-ext/number/max-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.maxsafeinteger).  
-The value of Number.MAX_SAFE_INTEGER is 9007199254740991.
-
-#### MIN_SAFE_INTEGER _(es5-ext/number/min-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.minsafeinteger).  
-The value of Number.MIN_SAFE_INTEGER is -9007199254740991 (253-1).
-
-#### toInteger(x) _(es5-ext/number/to-integer)_
-
-Converts value to integer
-
-#### toPosInteger(x) _(es5-ext/number/to-pos-integer)_
-
-Converts value to positive integer. If provided value is less than 0, then 0 is returned
-
-#### toUint32(x) _(es5-ext/number/to-uint32)_
-
-Converts value to unsigned 32 bit integer. This type is used for array lengths.
-See: http://www.2ality.com/2012/02/js-integers.html
-
-### Number Prototype extensions
-
-#### num.pad(length[, precision]) _(es5-ext/number/#/pad)_
-
-Pad given number with zeros. Returns string
-
-### Object Constructor extensions
-
-#### assign(target, source[, …sourcen]) _(es5-ext/object/assign)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).  
-Extend _target_ by enumerable own properties of other objects. If properties are already set on target object, they will be overwritten.
-
-#### clear(obj) _(es5-ext/object/clear)_
-
-Remove all enumerable own properties of the object
-
-#### compact(obj) _(es5-ext/object/compact)_
-
-Returns copy of the object with all enumerable properties that have no falsy values
-
-#### compare(obj1, obj2) _(es5-ext/object/compare)_
-
-Universal cross-type compare function. To be used for e.g. array sort.
-
-#### copy(obj) _(es5-ext/object/copy)_
-
-Returns copy of the object with all enumerable properties.
-
-#### copyDeep(obj) _(es5-ext/object/copy-deep)_
-
-Returns deep copy of the object with all enumerable properties.
-
-#### count(obj) _(es5-ext/object/count)_
-
-Counts number of enumerable own properties on object
-
-#### create(obj[, properties]) _(es5-ext/object/create)_
-
-`Object.create` alternative that provides workaround for [V8 issue](http://code.google.com/p/v8/issues/detail?id=2804).
-
-When `null` is provided as a prototype, it's substituted with specially prepared object that derives from Object.prototype but has all Object.prototype properties shadowed with undefined.
-
-It's quirky solution that allows us to have plain objects with no truthy properties but with turnable prototype.
-
-Use only for objects that you plan to switch prototypes of and be aware of limitations of this workaround.
-
-#### eq(x, y) _(es5-ext/object/eq)_
-
-Whether two values are equal, using [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
-
-#### every(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/every)_
-
-Analogous to Array.prototype.every. Returns true if every key-value pair in this object satisfies the provided testing function.  
-Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### filter(obj, cb[, thisArg]) _(es5-ext/object/filter)_
-
-Analogous to Array.prototype.filter. Returns new object with properites for which _cb_ function returned truthy value.
-
-#### firstKey(obj) _(es5-ext/object/first-key)_
-
-Returns first enumerable key of the object, as keys are unordered by specification, it can be any key of an object.
-
-#### flatten(obj) _(es5-ext/object/flatten)_
-
-Returns new object, with flatten properties of input object
-
-_flatten({ a: { b: 1 }, c: { d: 1 } })  =def  { b: 1, d: 1 }_
-
-#### forEach(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/for-each)_
-
-Analogous to Array.prototype.forEach. Calls a function for each key-value pair found in object
-Optionally _compareFn_ can be provided which assures that properties are iterated in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### getPropertyNames() _(es5-ext/object/get-property-names)_
-
-Get all (not just own) property names of the object
-
-#### is(x, y) _(es5-ext/object/is)_
-
-Whether two values are equal, using [_SameValue_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
-
-#### isArrayLike(x) _(es5-ext/object/is-array-like)_
-
-Whether object is array-like object
-
-#### isCopy(x, y) _(es5-ext/object/is-copy)_
-
-Two values are considered a copy of same value when all of their own enumerable properties have same values.
-
-#### isCopyDeep(x, y) _(es5-ext/object/is-copy-deep)_
-
-Deep comparision of objects
-
-#### isEmpty(obj) _(es5-ext/object/is-empty)_
-
-True if object doesn't have any own enumerable property
-
-#### isObject(arg) _(es5-ext/object/is-object)_
-
-Whether value is not primitive
-
-#### isPlainObject(arg) _(es5-ext/object/is-plain-object)_
-
-Whether object is plain object, its protototype should be Object.prototype and it cannot be host object.
-
-#### keyOf(obj, searchValue) _(es5-ext/object/key-of)_
-
-Search object for value
-
-#### keys(obj) _(es5-ext/object/keys)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys).  
-ES6's version of `keys`, doesn't throw on primitive input
-
-#### map(obj, cb[, thisArg]) _(es5-ext/object/map)_
-
-Analogous to Array.prototype.map. Creates a new object with properties which values are results of calling a provided function on every key-value pair in this object.
-
-#### mapKeys(obj, cb[, thisArg]) _(es5-ext/object/map-keys)_
-
-Create new object with same values, but remapped keys
-
-#### mixin(target, source) _(es5-ext/object/mixin)_
-
-Extend _target_ by all own properties of other objects. Properties found in both objects will be overwritten (unless they're not configurable and cannot be overwritten).
-_It was for a moment part of ECMAScript 6 draft._
-
-#### mixinPrototypes(target, …source]) _(es5-ext/object/mixin-prototypes)_
-
-Extends _target_, with all source and source's prototype properties.
-Useful as an alternative for `setPrototypeOf` in environments in which it cannot be shimmed (no `__proto__` support).
-
-#### normalizeOptions(options) _(es5-ext/object/normalize-options)_
-
-Normalizes options object into flat plain object.  
-
-Useful for functions in which we either need to keep options object for future reference or need to modify it for internal use.
-
-- It never returns input `options` object back (always a copy is created)
-- `options` can be undefined in such case empty plain object is returned.
-- Copies all enumerable properties found down prototype chain.
-
-#### primitiveSet([…names]) _(es5-ext/object/primitive-set)_
-
-Creates `null` prototype based plain object, and sets on it all property names provided in arguments to true.
-
-#### safeTraverse(obj[, …names]) _(es5-ext/object/safe-traverse)_
-
-Safe navigation of object properties. See http://wiki.ecmascript.org/doku.php?id=strawman:existential_operator
-
-#### serialize(value) _(es5-ext/object/serialize)_
-
-Serialize value into string. Differs from [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify) that it serializes also dates, functions and regular expresssions.
-
-#### setPrototypeOf(object, proto) _(es5-ext/object/set-prototype-of)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.setprototypeof).  
-If native version is not provided, it depends on existence of `__proto__` functionality, if it's missing, `null` instead of function is exposed.
-
-#### some(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/some)_
-
-Analogous to Array.prototype.some Returns true if any key-value pair satisfies the provided
-testing function.  
-Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### toArray(obj[, cb[, thisArg[, compareFn]]]) _(es5-ext/object/to-array)_
-
-Creates an array of results of calling a provided function on every key-value pair in this object.  
-Optionally _compareFn_ can be provided which assures that results are added in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### unserialize(str) _(es5-ext/object/unserialize)_
-
-Userializes value previously serialized with [serialize](#serializevalue-es5-extobjectserialize)
-
-#### validCallable(x) _(es5-ext/object/valid-callable)_
-
-If given object is not callable throw TypeError in other case return it.
-
-#### validObject(x) _(es5-ext/object/valid-object)_
-
-Throws error if given value is not an object, otherwise it is returned.
-
-#### validValue(x) _(es5-ext/object/valid-value)_
-
-Throws error if given value is `null` or `undefined`, otherwise returns value.
-
-### RegExp Constructor extensions
-
-#### escape(str) _(es5-ext/reg-exp/escape)_
-
-Escapes string to be used in regular expression
-
-#### isRegExp(x) _(es5-ext/reg-exp/is-reg-exp)_
-
-Whether object is regular expression
-
-#### validRegExp(x) _(es5-ext/reg-exp/valid-reg-exp)_
-
-If object is regular expression it is returned, otherwise TypeError is thrown.
-
-### RegExp Prototype extensions
-
-#### re.isSticky(x) _(es5-ext/reg-exp/#/is-sticky)_
-
-Whether regular expression has `sticky` flag.
-
-It's to be used as counterpart to [regExp.sticky](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.sticky) if it's not implemented.
-
-#### re.isUnicode(x) _(es5-ext/reg-exp/#/is-unicode)_
-
-Whether regular expression has `unicode` flag.
-
-It's to be used as counterpart to [regExp.unicode](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.unicode) if it's not implemented.
-
-#### re.match(string) _(es5-ext/reg-exp/#/match)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.match).  
-
-#### re.replace(string, replaceValue) _(es5-ext/reg-exp/#/replace)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.replace).  
-
-#### re.search(string) _(es5-ext/reg-exp/#/search)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.search).  
-
-#### re.split(string) _(es5-ext/reg-exp/#/search)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.split).  
-
-#### re.sticky _(es5-ext/reg-exp/#/sticky/implement)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.sticky).  
-It's a getter, so only `implement` and `is-implemented` modules are provided.
-
-#### re.unicode _(es5-ext/reg-exp/#/unicode/implement)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.unicode).  
-It's a getter, so only `implement` and `is-implemented` modules are provided.
-
-### String Constructor extensions
-
-#### formatMethod(fMap) _(es5-ext/string/format-method)_
-
-Creates format method. It's used e.g. to create `Date.prototype.format` method
-
-#### fromCodePoint([…codePoints]) _(es5-ext/string/from-code-point)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.fromcodepoint)
-
-#### isString(x) _(es5-ext/string/is-string)_
-
-Whether object is string
-
-#### randomUniq() _(es5-ext/string/random-uniq)_
-
-Returns randomly generated id, with guarantee of local uniqueness (no same id will be returned twice)
-
-#### raw(callSite[, …substitutions]) _(es5-ext/string/raw)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.raw)
-
-### String Prototype extensions
-
-#### str.at(pos) _(es5-ext/string/#/at)_
-
-_Proposed for ECMAScript 6/7 standard, but not (yet) in a draft_
-
-Returns a string at given position in Unicode-safe manner.
-Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.at).
-
-#### str.camelToHyphen() _(es5-ext/string/#/camel-to-hyphen)_
-
-Convert camelCase string to hyphen separated, e.g. one-two-three -> oneTwoThree.
-Useful when converting names from js property convention into filename convention.
-
-#### str.capitalize() _(es5-ext/string/#/capitalize)_
-
-Capitalize first character of a string
-
-#### str.caseInsensitiveCompare(str) _(es5-ext/string/#/case-insensitive-compare)_
-
-Case insensitive compare
-
-#### str.codePointAt(pos) _(es5-ext/string/#/code-point-at)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.codepointat)
-
-Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.codePointAt).
-
-#### str.contains(searchString[, position]) _(es5-ext/string/#/contains)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.contains)
-
-Whether string contains given string.
-
-#### str.endsWith(searchString[, endPosition]) _(es5-ext/string/#/ends-with)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.endswith).  
-Whether strings ends with given string
-
-#### str.hyphenToCamel() _(es5-ext/string/#/hyphen-to-camel)_
-
-Convert hyphen separated string to camelCase, e.g. one-two-three -> oneTwoThree.
-Useful when converting names from filename convention to js property name convention.
-
-#### str.indent(str[, count]) _(es5-ext/string/#/indent)_
-
-Indents each line with provided _str_ (if _count_ given then _str_ is repeated _count_ times).
-
-#### str.last() _(es5-ext/string/#/last)_
-
-Return last character
-
-#### str.normalize([form]) _(es5-ext/string/#/normalize)_
-
-[_Introduced with ECMAScript 6_](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize).  
-Returns the Unicode Normalization Form of a given string.  
-Based on Matsuza's version. Code used for integrated shim can be found at [github.com/walling/unorm](https://github.com/walling/unorm/blob/master/lib/unorm.js)
-
-#### str.pad(fill[, length]) _(es5-ext/string/#/pad)_
-
-Pad string with _fill_.
-If _length_ si given than _fill_ is reapated _length_ times.
-If _length_ is negative then pad is applied from right.
-
-#### str.repeat(n) _(es5-ext/string/#/repeat)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.repeat).  
-Repeat given string _n_ times
-
-#### str.plainReplace(search, replace) _(es5-ext/string/#/plain-replace)_
-
-Simple `replace` version. Doesn't support regular expressions. Replaces just first occurrence of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
-
-#### str.plainReplaceAll(search, replace) _(es5-ext/string/#/plain-replace-all)_
-
-Simple `replace` version. Doesn't support regular expressions. Replaces all occurrences of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
-
-#### str.startsWith(searchString[, position]) _(es5-ext/string/#/starts-with)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.startswith).  
-Whether strings starts with given string
-
-#### str[@@iterator] _(es5-ext/string/#/@@iterator)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype-@@iterator).  
-Returns iterator object which traverses all string characters (with respect to unicode symbols)
-
-### Tests [![Build Status](https://travis-ci.org/medikoo/es5-ext.png)](https://travis-ci.org/medikoo/es5-ext)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 0f714a1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, require('es6-symbol').iterator, { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/index.js
deleted file mode 100644 (file)
index a694626..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype[require('es6-symbol').iterator] : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 72eb1f8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function () {
-       var arr = ['foo', 1], iterator, result;
-       if (typeof arr[iteratorSymbol] !== 'function') return false;
-       iterator = arr[iteratorSymbol]();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 'foo') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/@@iterator/shim.js
deleted file mode 100644 (file)
index ff295df..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('../values/shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/_compare-by-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/_compare-by-length.js
deleted file mode 100644 (file)
index d8343ce..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Used internally to sort array of lists by length
-
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer');
-
-module.exports = function (a, b) {
-       return toPosInt(a.length) - toPosInt(b.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/binary-search.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/binary-search.js
deleted file mode 100644 (file)
index 8eb4567..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , floor    = Math.floor;
-
-module.exports = function (compareFn) {
-       var length, low, high, middle;
-
-       value(this);
-       callable(compareFn);
-
-       length = toPosInt(this.length);
-       low = 0;
-       high = length - 1;
-
-       while (low <= high) {
-               middle = floor((low + high) / 2);
-               if (compareFn(this[middle]) < 0) high = middle - 1;
-               else low = middle + 1;
-       }
-
-       if (high < 0) return 0;
-       if (high >= length) return length - 1;
-       return high;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/clear.js
deleted file mode 100644 (file)
index 3587bdf..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-// Inspired by Google Closure:
-// http://closure-library.googlecode.com/svn/docs/
-// closure_goog_array_array.js.html#goog.array.clear
-
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       value(this).length = 0;
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/compact.js
deleted file mode 100644 (file)
index d529d5a..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Inspired by: http://documentcloud.github.com/underscore/#compact
-
-'use strict';
-
-var filter = Array.prototype.filter;
-
-module.exports = function () {
-       return filter.call(this, function (val) { return val != null; });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/implement.js
deleted file mode 100644 (file)
index 80c67cb..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'concat', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/index.js
deleted file mode 100644 (file)
index db205ea..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.concat : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/is-implemented.js
deleted file mode 100644 (file)
index cab8bc9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).concat('foo') instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/concat/shim.js
deleted file mode 100644 (file)
index 8b28e4a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , toPosInt     = require('../../../number/to-pos-integer')
-  , isObject     = require('../../../object/is-object')
-
-  , isArray = Array.isArray, concat = Array.prototype.concat
-  , forEach = Array.prototype.forEach
-
-  , isSpreadable;
-
-isSpreadable = function (value) {
-       if (!value) return false;
-       if (!isObject(value)) return false;
-       if (value['@@isConcatSpreadable'] !== undefined) {
-               return Boolean(value['@@isConcatSpreadable']);
-       }
-       return isArray(value);
-};
-
-module.exports = function (item/*, …items*/) {
-       var result;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return concat.apply(this, arguments);
-       }
-       result = new this.constructor(this.length);
-       forEach.call(this, function (val, i) { result[i] = val; });
-       forEach.call(arguments, function (arg) {
-               var base;
-               if (isSpreadable(arg)) {
-                       base = result.length;
-                       result.length += toPosInt(arg.length);
-                       forEach.call(arg, function (val, i) { result[base + i] = val; });
-                       return;
-               }
-               result.push(arg);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/contains.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/contains.js
deleted file mode 100644 (file)
index 4a2f9f6..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of');
-
-module.exports = function (searchElement/*, position*/) {
-       return indexOf.call(this, searchElement, arguments[1]) > -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/implement.js
deleted file mode 100644 (file)
index eedbad7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'copyWithin',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/index.js
deleted file mode 100644 (file)
index bb89d0b..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.copyWithin : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js
deleted file mode 100644 (file)
index 8f17e06..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5];
-       if (typeof arr.copyWithin !== 'function') return false;
-       return String(arr.copyWithin(1, 3)) === '1,4,5,4,5';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/copy-within/shim.js
deleted file mode 100644 (file)
index c0bfb8b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-// Taken from: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , toPosInt   = require('../../../number/to-pos-integer')
-  , validValue = require('../../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , max = Math.max, min = Math.min;
-
-module.exports = function (target, start/*, end*/) {
-       var o = validValue(this), end = arguments[2], l = toPosInt(o.length)
-         , to, from, fin, count, direction;
-
-       target = toInteger(target);
-       start = toInteger(start);
-       end = (end === undefined) ? l : toInteger(end);
-
-       to = target < 0 ? max(l + target, 0) : min(target, l);
-       from = start < 0 ? max(l + start, 0) : min(start, l);
-       fin = end < 0 ? max(l + end, 0) : min(end, l);
-       count = min(fin - from, l - to);
-       direction = 1;
-
-       if ((from < to) && (to < (from + count))) {
-               direction = -1;
-               from += count - 1;
-               to += count - 1;
-       }
-       while (count > 0) {
-               if (hasOwnProperty.call(o, from)) o[to] = o[from];
-               else delete o[from];
-               from += direction;
-               to += direction;
-               count -= 1;
-       }
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/diff.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/diff.js
deleted file mode 100644 (file)
index a1f9541..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , contains = require('./contains')
-
-  , filter = Array.prototype.filter;
-
-module.exports = function (other) {
-       (value(this) && value(other));
-       return filter.call(this, function (item) {
-               return !contains.call(other, item);
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-index-of.js
deleted file mode 100644 (file)
index 80864d0..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , indexOf = Array.prototype.indexOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (searchElement/*, fromIndex*/) {
-       var i, l, fromIndex, val;
-       if (searchElement === searchElement) { //jslint: ignore
-               return indexOf.apply(this, arguments);
-       }
-
-       l = toPosInt(value(this).length);
-       fromIndex = arguments[1];
-       if (isNaN(fromIndex)) fromIndex = 0;
-       else if (fromIndex >= 0) fromIndex = floor(fromIndex);
-       else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
-
-       for (i = fromIndex; i < l; ++i) {
-               if (hasOwnProperty.call(this, i)) {
-                       val = this[i];
-                       if (val !== val) return i; //jslint: ignore
-               }
-       }
-       return -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-last-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/e-last-index-of.js
deleted file mode 100644 (file)
index 4fc536b..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , lastIndexOf = Array.prototype.lastIndexOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (searchElement/*, fromIndex*/) {
-       var i, fromIndex, val;
-       if (searchElement === searchElement) { //jslint: ignore
-               return lastIndexOf.apply(this, arguments);
-       }
-
-       value(this);
-       fromIndex = arguments[1];
-       if (isNaN(fromIndex)) fromIndex = (toPosInt(this.length) - 1);
-       else if (fromIndex >= 0) fromIndex = floor(fromIndex);
-       else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
-
-       for (i = fromIndex; i >= 0; --i) {
-               if (hasOwnProperty.call(this, i)) {
-                       val = this[i];
-                       if (val !== val) return i; //jslint: ignore
-               }
-       }
-       return -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/implement.js
deleted file mode 100644 (file)
index 490de60..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'entries', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/index.js
deleted file mode 100644 (file)
index 292792c..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.entries : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/is-implemented.js
deleted file mode 100644 (file)
index e186c17..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 'foo'], iterator, result;
-       if (typeof arr.entries !== 'function') return false;
-       iterator = arr.entries();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result || !result.value) return false;
-       if (result.value[0] !== 0) return false;
-       if (result.value[1] !== 1) return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/entries/shim.js
deleted file mode 100644 (file)
index c052b53..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'key+value'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/exclusion.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/exclusion.js
deleted file mode 100644 (file)
index f08adc8..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , aFrom    = require('../from')
-  , toArray  = require('../to-array')
-  , contains = require('./contains')
-  , byLength = require('./_compare-by-length')
-
-  , filter = Array.prototype.filter, push = Array.prototype.push;
-
-module.exports = function (/*…lists*/) {
-       var lists, seen, result;
-       if (!arguments.length) return aFrom(this);
-       push.apply(lists = [this], arguments);
-       lists.forEach(value);
-       seen = [];
-       result = [];
-       lists.sort(byLength).forEach(function (list) {
-               result = result.filter(function (item) {
-                       return !contains.call(list, item);
-               }).concat(filter.call(list, function (x) {
-                       return !contains.call(seen, x);
-               }));
-               push.apply(seen, toArray(list));
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/implement.js
deleted file mode 100644 (file)
index 2251191..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'fill', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/index.js
deleted file mode 100644 (file)
index 36c1f66..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.fill : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/is-implemented.js
deleted file mode 100644 (file)
index b8e5468..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.fill !== 'function') return false;
-       return String(arr.fill(-1, -3)) === '1,2,3,-1,-1,-1';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/fill/shim.js
deleted file mode 100644 (file)
index 45823be..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-// Taken from: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , toPosInt   = require('../../../number/to-pos-integer')
-  , validValue = require('../../../object/valid-value')
-
-  , max = Math.max, min = Math.min;
-
-module.exports = function (value/*, start, end*/) {
-       var o = validValue(this), start = arguments[1], end = arguments[2]
-         , l = toPosInt(o.length), relativeStart, i;
-
-       start = (start === undefined) ? 0 : toInteger(start);
-       end = (end === undefined) ? l : toInteger(end);
-
-       relativeStart = start < 0 ? max(l + start, 0) : min(start, l);
-       for (i = relativeStart; i < l && i < end; ++i) o[i] = value;
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/implement.js
deleted file mode 100644 (file)
index 090c5f1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'filter', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/index.js
deleted file mode 100644 (file)
index bcf0268..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.filter : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/is-implemented.js
deleted file mode 100644 (file)
index 5577273..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe')
-
-  , pass = function () { return true; };
-
-module.exports = function () {
-       return (new SubArray()).filter(pass) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/filter/shim.js
deleted file mode 100644 (file)
index b0116de..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , callable     = require('../../../object/valid-callable')
-
-  , isArray = Array.isArray, filter = Array.prototype.filter
-  , forEach = Array.prototype.forEach, call = Function.prototype.call;
-
-module.exports = function (callbackFn/*, thisArg*/) {
-       var result, thisArg, i;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return filter.apply(this, arguments);
-       }
-       callable(callbackFn);
-       thisArg = arguments[1];
-       result = new this.constructor();
-       i = 0;
-       forEach.call(this, function (val, j, self) {
-               if (call.call(callbackFn, thisArg, val, j, self)) result[i++] = val;
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/implement.js
deleted file mode 100644 (file)
index 556cb84..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'findIndex',
-               { value: require('./shim'),
-                       configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/index.js
deleted file mode 100644 (file)
index 03a987e..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.findIndex : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/is-implemented.js
deleted file mode 100644 (file)
index dbd3c81..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var fn = function (x) { return x > 3; };
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.findIndex !== 'function') return false;
-       return arr.findIndex(fn) === 3;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find-index/shim.js
deleted file mode 100644 (file)
index 957939f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var callable = require('../../../object/valid-callable')
-  , value    = require('../../../object/valid-value')
-
-  , some = Array.prototype.some, apply = Function.prototype.apply;
-
-module.exports = function (predicate/*, thisArg*/) {
-       var k, self;
-       self = Object(value(this));
-       callable(predicate);
-
-       return some.call(self, function (value, index) {
-               if (apply.call(predicate, this, arguments)) {
-                       k = index;
-                       return true;
-               }
-               return false;
-       }, arguments[1]) ? k : -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/implement.js
deleted file mode 100644 (file)
index 0f37104..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'find', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/index.js
deleted file mode 100644 (file)
index 96819d0..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.find : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/is-implemented.js
deleted file mode 100644 (file)
index cc7ec77..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var fn = function (x) { return x > 3; };
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.find !== 'function') return false;
-       return arr.find(fn) === 4;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/find/shim.js
deleted file mode 100644 (file)
index c7ee906..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var findIndex = require('../find-index/shim');
-
-module.exports = function (predicate/*, thisArg*/) {
-       var index = findIndex.apply(this, arguments);
-       return (index === -1) ? undefined : this[index];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first-index.js
deleted file mode 100644 (file)
index 7a9e4c3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function () {
-       var i, l;
-       if (!(l = toPosInt(value(this).length))) return null;
-       i = 0;
-       while (!hasOwnProperty.call(this, i)) {
-               if (++i === l) return null;
-       }
-       return i;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/first.js
deleted file mode 100644 (file)
index 11df571..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var firstIndex = require('./first-index');
-
-module.exports = function () {
-       var i;
-       if ((i = firstIndex.call(this)) !== null) return this[i];
-       return undefined;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/flatten.js
deleted file mode 100644 (file)
index c95407d..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray, forEach = Array.prototype.forEach
-  , push = Array.prototype.push;
-
-module.exports = function flatten() {
-       var r = [];
-       forEach.call(this, function (x) {
-               push.apply(r, isArray(x) ? flatten.call(x) : [x]);
-       });
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/for-each-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/for-each-right.js
deleted file mode 100644 (file)
index 2f0ffae..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var i, self, thisArg;
-
-       self = Object(value(this));
-       callable(cb);
-       thisArg = arguments[1];
-
-       for (i = toPosInt(self.length); i >= 0; --i) {
-               if (hasOwnProperty.call(self, i)) call.call(cb, thisArg, self[i], i, self);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/group.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/group.js
deleted file mode 100644 (file)
index fbb178c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-// Inspired by Underscore's groupBy:
-// http://documentcloud.github.com/underscore/#groupBy
-
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , forEach = Array.prototype.forEach, apply = Function.prototype.apply;
-
-module.exports = function (cb/*, thisArg*/) {
-       var r;
-
-       (value(this) && callable(cb));
-
-       r = {};
-       forEach.call(this, function (v) {
-               var key = apply.call(cb, this, arguments);
-               if (!r.hasOwnProperty(key)) r[key] = [];
-               r[key].push(v);
-       }, arguments[1]);
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/index.js
deleted file mode 100644 (file)
index f5b788e..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-'use strict';
-
-module.exports = {
-       binarySearch:   require('./binary-search'),
-       clear:          require('./clear'),
-       compact:        require('./compact'),
-       concat:         require('./concat'),
-       contains:       require('./contains'),
-       copyWithin:     require('./copy-within'),
-       diff:           require('./diff'),
-       eIndexOf:       require('./e-index-of'),
-       eLastIndexOf:   require('./e-last-index-of'),
-       entries:        require('./entries'),
-       exclusion:      require('./exclusion'),
-       fill:           require('./fill'),
-       filter:         require('./filter'),
-       find:           require('./find'),
-       findIndex:      require('./find-index'),
-       first:          require('./first'),
-       firstIndex:     require('./first-index'),
-       flatten:        require('./flatten'),
-       forEachRight:   require('./for-each-right'),
-       keys:           require('./keys'),
-       group:          require('./group'),
-       indexesOf:      require('./indexes-of'),
-       intersection:   require('./intersection'),
-       isCopy:         require('./is-copy'),
-       isUniq:         require('./is-uniq'),
-       last:           require('./last'),
-       lastIndex:      require('./last-index'),
-       map:            require('./map'),
-       remove:         require('./remove'),
-       separate:       require('./separate'),
-       slice:          require('./slice'),
-       someRight:      require('./some-right'),
-       splice:         require('./splice'),
-       uniq:           require('./uniq'),
-       values:         require('./values')
-};
-module.exports[require('es6-symbol').iterator] = require('./@@iterator');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/indexes-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/indexes-of.js
deleted file mode 100644 (file)
index 6b89157..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of');
-
-module.exports = function (value/*, fromIndex*/) {
-       var r = [], i, fromIndex = arguments[1];
-       while ((i = indexOf.call(this, value, fromIndex)) !== -1) {
-               r.push(i);
-               fromIndex = i + 1;
-       }
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/intersection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/intersection.js
deleted file mode 100644 (file)
index fadcb52..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , contains = require('./contains')
-  , byLength = require('./_compare-by-length')
-
-  , filter = Array.prototype.filter, push = Array.prototype.push
-  , slice = Array.prototype.slice;
-
-module.exports = function (/*…list*/) {
-       var lists;
-       if (!arguments.length) slice.call(this);
-       push.apply(lists = [this], arguments);
-       lists.forEach(value);
-       lists.sort(byLength);
-       return lists.reduce(function (a, b) {
-               return filter.call(a, function (x) { return contains.call(b, x); });
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-copy.js
deleted file mode 100644 (file)
index ac7c79b..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , eq    = require('../../object/eq')
-  , value = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (other) {
-       var i, l;
-       (value(this) && value(other));
-       l = toPosInt(this.length);
-       if (l !== toPosInt(other.length)) return false;
-       for (i = 0; i < l; ++i) {
-               if (hasOwnProperty.call(this, i) !== hasOwnProperty.call(other, i)) {
-                       return false;
-               }
-               if (!eq(this[i], other[i])) return false;
-       }
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/is-uniq.js
deleted file mode 100644 (file)
index b14f461..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , every = Array.prototype.every
-  , isFirst;
-
-isFirst = function (value, index) {
-       return indexOf.call(this, value) === index;
-};
-
-module.exports = function () { return every.call(this, isFirst, this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/implement.js
deleted file mode 100644 (file)
index e18e617..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'keys', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/index.js
deleted file mode 100644 (file)
index 2f89cff..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.keys : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/is-implemented.js
deleted file mode 100644 (file)
index 06bd87b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 'foo'], iterator, result;
-       if (typeof arr.keys !== 'function') return false;
-       iterator = arr.keys();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 0) return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/keys/shim.js
deleted file mode 100644 (file)
index 83773f6..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'key'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last-index.js
deleted file mode 100644 (file)
index a191d6e..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function () {
-       var i, l;
-       if (!(l = toPosInt(value(this).length))) return null;
-       i = l - 1;
-       while (!hasOwnProperty.call(this, i)) {
-               if (--i === -1) return null;
-       }
-       return i;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/last.js
deleted file mode 100644 (file)
index bf9d2f2..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var lastIndex = require('./last-index');
-
-module.exports = function () {
-       var i;
-       if ((i = lastIndex.call(this)) !== null) return this[i];
-       return undefined;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/implement.js
deleted file mode 100644 (file)
index 3aabb87..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'map', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/index.js
deleted file mode 100644 (file)
index 66f6660..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.map : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/is-implemented.js
deleted file mode 100644 (file)
index c328b47..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var identity = require('../../../function/identity')
-  , SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).map(identity) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/map/shim.js
deleted file mode 100644 (file)
index 2ee7313..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , callable     = require('../../../object/valid-callable')
-
-  , isArray = Array.isArray, map = Array.prototype.map
-  , forEach = Array.prototype.forEach, call = Function.prototype.call;
-
-module.exports = function (callbackFn/*, thisArg*/) {
-       var result, thisArg;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return map.apply(this, arguments);
-       }
-       callable(callbackFn);
-       thisArg = arguments[1];
-       result = new this.constructor(this.length);
-       forEach.call(this, function (val, i, self) {
-               result[i] = call.call(callbackFn, thisArg, val, i, self);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/remove.js
deleted file mode 100644 (file)
index dcf8433..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , forEach = Array.prototype.forEach, splice = Array.prototype.splice;
-
-module.exports = function (item/*, …item*/) {
-       forEach.call(arguments, function (item) {
-               var index = indexOf.call(this, item);
-               if (index !== -1) splice.call(this, index, 1);
-       }, this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/separate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/separate.js
deleted file mode 100644 (file)
index dc974b8..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach;
-
-module.exports = function (sep) {
-       var result = [];
-       forEach.call(this, function (val, i) { result.push(val, sep); });
-       result.pop();
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/implement.js
deleted file mode 100644 (file)
index cd488a0..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'slice', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/index.js
deleted file mode 100644 (file)
index 72200ca..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype.slice : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/is-implemented.js
deleted file mode 100644 (file)
index ec1985e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).slice() instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/slice/shim.js
deleted file mode 100644 (file)
index 2761a1a..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-var toInteger    = require('../../../number/to-integer')
-  , toPosInt     = require('../../../number/to-pos-integer')
-  , isPlainArray = require('../../is-plain-array')
-
-  , isArray = Array.isArray, slice = Array.prototype.slice
-  , hasOwnProperty = Object.prototype.hasOwnProperty, max = Math.max;
-
-module.exports = function (start, end) {
-       var length, result, i;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return slice.apply(this, arguments);
-       }
-       length = toPosInt(this.length);
-       start = toInteger(start);
-       if (start < 0) start = max(length + start, 0);
-       else if (start > length) start = length;
-       if (end === undefined) {
-               end = length;
-       } else {
-               end = toInteger(end);
-               if (end < 0) end = max(length + end, 0);
-               else if (end > length) end = length;
-       }
-       if (start > end) start = end;
-       result = new this.constructor(end - start);
-       i = 0;
-       while (start !== end) {
-               if (hasOwnProperty.call(this, start)) result[i] = this[start];
-               ++i;
-               ++start;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/some-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/some-right.js
deleted file mode 100644 (file)
index de7460d..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var i, self, thisArg;
-       self = Object(value(this));
-       callable(cb);
-       thisArg = arguments[1];
-
-       for (i = self.length; i >= 0; --i) {
-               if (hasOwnProperty.call(self, i) &&
-                               call.call(cb, thisArg, self[i], i, self)) {
-                       return true;
-               }
-       }
-       return false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/implement.js
deleted file mode 100644 (file)
index aab1f8e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'splice', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/index.js
deleted file mode 100644 (file)
index e8ecf3c..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype.splice : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/is-implemented.js
deleted file mode 100644 (file)
index ffddaa8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).splice(0) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/splice/shim.js
deleted file mode 100644 (file)
index a8505a2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-
-  , isArray = Array.isArray, splice = Array.prototype.splice
-  , forEach = Array.prototype.forEach;
-
-module.exports = function (start, deleteCount/*, …items*/) {
-       var arr = splice.apply(this, arguments), result;
-       if (!this || !isArray(this) || isPlainArray(this)) return arr;
-       result = new this.constructor(arr.length);
-       forEach.call(arr, function (val, i) { result[i] = val; });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/uniq.js
deleted file mode 100644 (file)
index db01465..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , filter = Array.prototype.filter
-
-  , isFirst;
-
-isFirst = function (value, index) {
-       return indexOf.call(this, value) === index;
-};
-
-module.exports = function () { return filter.call(this, isFirst, this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/implement.js
deleted file mode 100644 (file)
index 237281f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'values', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/index.js
deleted file mode 100644 (file)
index c0832c3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Array.prototype.values : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/is-implemented.js
deleted file mode 100644 (file)
index cc0c629..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = ['foo', 1], iterator, result;
-       if (typeof arr.values !== 'function') return false;
-       iterator = arr.values();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 'foo') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/#/values/shim.js
deleted file mode 100644 (file)
index f6555fd..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'value'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_is-extensible.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_is-extensible.js
deleted file mode 100644 (file)
index 6123206..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = (function () {
-       var SubArray = require('./_sub-array-dummy'), arr;
-
-       if (!SubArray) return false;
-       arr = new SubArray();
-       if (!Array.isArray(arr)) return false;
-       if (!(arr instanceof SubArray)) return false;
-
-       arr[34] = 'foo';
-       return (arr.length === 35);
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js
deleted file mode 100644 (file)
index 5baf8a8..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../object/set-prototype-of')
-  , isExtensible   = require('./_is-extensible');
-
-module.exports = (function () {
-       var SubArray;
-
-       if (isExtensible) return require('./_sub-array-dummy');
-
-       if (!setPrototypeOf) return null;
-       SubArray = function () {
-               var arr = Array.apply(this, arguments);
-               setPrototypeOf(arr, SubArray.prototype);
-               return arr;
-       };
-       setPrototypeOf(SubArray, Array);
-       SubArray.prototype = Object.create(Array.prototype, {
-               constructor: { value: SubArray, enumerable: false, writable: true,
-                       configurable: true }
-       });
-       return SubArray;
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/_sub-array-dummy.js
deleted file mode 100644 (file)
index a926d1a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../object/set-prototype-of');
-
-module.exports = (function () {
-       var SubArray;
-
-       if (!setPrototypeOf) return null;
-       SubArray = function () { Array.apply(this, arguments); };
-       setPrototypeOf(SubArray, Array);
-       SubArray.prototype = Object.create(Array.prototype, {
-               constructor: { value: SubArray, enumerable: false, writable: true,
-                       configurable: true }
-       });
-       return SubArray;
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/implement.js
deleted file mode 100644 (file)
index f3411b1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array, 'from', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/index.js
deleted file mode 100644 (file)
index 3b99cda..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.from
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/is-implemented.js
deleted file mode 100644 (file)
index 63ff2a5..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var from = Array.from, arr, result;
-       if (typeof from !== 'function') return false;
-       arr = ['raz', 'dwa'];
-       result = from(arr);
-       return Boolean(result && (result !== arr) && (result[1] === 'dwa'));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/from/shim.js
deleted file mode 100644 (file)
index a90ba2f..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , isArguments    = require('../../function/is-arguments')
-  , isFunction     = require('../../function/is-function')
-  , toPosInt       = require('../../number/to-pos-integer')
-  , callable       = require('../../object/valid-callable')
-  , validValue     = require('../../object/valid-value')
-  , isString       = require('../../string/is-string')
-
-  , isArray = Array.isArray, call = Function.prototype.call
-  , desc = { configurable: true, enumerable: true, writable: true, value: null }
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (arrayLike/*, mapFn, thisArg*/) {
-       var mapFn = arguments[1], thisArg = arguments[2], Constructor, i, j, arr, l, code, iterator
-         , result, getIterator, value;
-
-       arrayLike = Object(validValue(arrayLike));
-
-       if (mapFn != null) callable(mapFn);
-       if (!this || (this === Array) || !isFunction(this)) {
-               // Result: Plain array
-               if (!mapFn) {
-                       if (isArguments(arrayLike)) {
-                               // Source: Arguments
-                               l = arrayLike.length;
-                               if (l !== 1) return Array.apply(null, arrayLike);
-                               arr = new Array(1);
-                               arr[0] = arrayLike[0];
-                               return arr;
-                       }
-                       if (isArray(arrayLike)) {
-                               // Source: Array
-                               arr = new Array(l = arrayLike.length);
-                               for (i = 0; i < l; ++i) arr[i] = arrayLike[i];
-                               return arr;
-                       }
-               }
-               arr = [];
-       } else {
-               // Result: Non plain array
-               Constructor = this;
-       }
-
-       if (!isArray(arrayLike)) {
-               if ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {
-                       // Source: Iterator
-                       iterator = callable(getIterator).call(arrayLike);
-                       if (Constructor) arr = new Constructor();
-                       result = iterator.next();
-                       i = 0;
-                       while (!result.done) {
-                               value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;
-                               if (!Constructor) {
-                                       arr[i] = value;
-                               } else {
-                                       desc.value = value;
-                                       defineProperty(arr, i, desc);
-                               }
-                               result = iterator.next();
-                               ++i;
-                       }
-                       l = i;
-               } else if (isString(arrayLike)) {
-                       // Source: String
-                       l = arrayLike.length;
-                       if (Constructor) arr = new Constructor();
-                       for (i = 0, j = 0; i < l; ++i) {
-                               value = arrayLike[i];
-                               if ((i + 1) < l) {
-                                       code = value.charCodeAt(0);
-                                       if ((code >= 0xD800) && (code <= 0xDBFF)) value += arrayLike[++i];
-                               }
-                               value = mapFn ? call.call(mapFn, thisArg, value, j) : value;
-                               if (!Constructor) {
-                                       arr[j] = value;
-                               } else {
-                                       desc.value = value;
-                                       defineProperty(arr, j, desc);
-                               }
-                               ++j;
-                       }
-                       l = j;
-               }
-       }
-       if (l === undefined) {
-               // Source: array or array-like
-               l = toPosInt(arrayLike.length);
-               if (Constructor) arr = new Constructor(l);
-               for (i = 0; i < l; ++i) {
-                       value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];
-                       if (!Constructor) {
-                               arr[i] = value;
-                       } else {
-                               desc.value = value;
-                               defineProperty(arr, i, desc);
-                       }
-               }
-       }
-       if (Constructor) {
-               desc.value = null;
-               arr.length = l;
-       }
-       return arr;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/generate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/generate.js
deleted file mode 100644 (file)
index 5e06675..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var toPosInt = require('../number/to-pos-integer')
-  , value    = require('../object/valid-value')
-
-  , slice = Array.prototype.slice;
-
-module.exports = function (length/*, …fill*/) {
-       var arr, l;
-       length = toPosInt(value(length));
-       if (length === 0) return [];
-
-       arr = (arguments.length < 2) ? [undefined] :
-                       slice.call(arguments, 1, 1 + length);
-
-       while ((l = arr.length) < length) {
-               arr = arr.concat(arr.slice(0, length - l));
-       }
-       return arr;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/index.js
deleted file mode 100644 (file)
index 7a68678..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':          require('./#'),
-       from:         require('./from'),
-       generate:     require('./generate'),
-       isPlainArray: require('./is-plain-array'),
-       of:           require('./of'),
-       toArray:      require('./to-array'),
-       validArray:   require('./valid-array')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/is-plain-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/is-plain-array.js
deleted file mode 100644 (file)
index 6b37e40..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray, getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (obj) {
-       var proto;
-       if (!obj || !isArray(obj)) return false;
-       proto = getPrototypeOf(obj);
-       if (!isArray(proto)) return false;
-       return !isArray(getPrototypeOf(proto));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/implement.js
deleted file mode 100644 (file)
index bf2a5a5..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array, 'of', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/index.js
deleted file mode 100644 (file)
index 07ee54d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.of
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/is-implemented.js
deleted file mode 100644 (file)
index 4390a10..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var of = Array.of, result;
-       if (typeof of !== 'function') return false;
-       result = of('foo', 'bar');
-       return Boolean(result && (result[1] === 'bar'));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/of/shim.js
deleted file mode 100644 (file)
index de72bc9..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var isFunction = require('../../function/is-function')
-
-  , slice = Array.prototype.slice, defineProperty = Object.defineProperty
-  , desc = { configurable: true, enumerable: true, writable: true, value: null };
-
-module.exports = function (/*…items*/) {
-       var result, i, l;
-       if (!this || (this === Array) || !isFunction(this)) return slice.call(arguments);
-       result = new this(l = arguments.length);
-       for (i = 0; i < l; ++i) {
-               desc.value = arguments[i];
-               defineProperty(result, i, desc);
-       }
-       desc.value = null;
-       result.length = l;
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/to-array.js
deleted file mode 100644 (file)
index ce908dd..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var from = require('./from')
-
-  , isArray = Array.isArray;
-
-module.exports = function (arrayLike) {
-       return isArray(arrayLike) ? arrayLike : from(arrayLike);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/valid-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/array/valid-array.js
deleted file mode 100644 (file)
index d86a8f5..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (value) {
-       if (isArray(value)) return value;
-       throw new TypeError(value + " is not an array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/index.js
deleted file mode 100644 (file)
index c193b94..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       isBoolean: require('./is-boolean')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/is-boolean.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/boolean/is-boolean.js
deleted file mode 100644 (file)
index 5d1a802..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(true);
-
-module.exports = function (x) {
-       return (typeof x === 'boolean') || ((typeof x === 'object') &&
-               ((x instanceof Boolean) || (toString.call(x) === id)));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/copy.js
deleted file mode 100644 (file)
index 69e2eb0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var getTime = Date.prototype.getTime;
-
-module.exports = function () { return new Date(getTime.call(this)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/days-in-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/days-in-month.js
deleted file mode 100644 (file)
index e780efe..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var getMonth = Date.prototype.getMonth;
-
-module.exports = function () {
-       switch (getMonth.call(this)) {
-       case 1:
-               return this.getFullYear() % 4 ? 28 : 29;
-       case 3:
-       case 5:
-       case 8:
-       case 10:
-               return 30;
-       default:
-               return 31;
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-day.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-day.js
deleted file mode 100644 (file)
index 0c9eb8b..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var setHours = Date.prototype.setHours;
-
-module.exports = function () {
-       setHours.call(this, 0, 0, 0, 0);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-month.js
deleted file mode 100644 (file)
index 7328c25..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var floorDay = require('./floor-day');
-
-module.exports = function () {
-       floorDay.call(this).setDate(1);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-year.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/floor-year.js
deleted file mode 100644 (file)
index 9c50853..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var floorMonth = require('./floor-month');
-
-module.exports = function () {
-       floorMonth.call(this).setMonth(0);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/format.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/format.js
deleted file mode 100644 (file)
index 15bd95f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var pad       = require('../../number/#/pad')
-  , date      = require('../valid-date')
-
-  , format;
-
-format = require('../../string/format-method')({
-       Y: function () { return String(this.getFullYear()); },
-       y: function () { return String(this.getFullYear()).slice(-2); },
-       m: function () { return pad.call(this.getMonth() + 1, 2); },
-       d: function () { return pad.call(this.getDate(), 2); },
-       H: function () { return pad.call(this.getHours(), 2); },
-       M: function () { return pad.call(this.getMinutes(), 2); },
-       S: function () { return pad.call(this.getSeconds(), 2); },
-       L: function () { return pad.call(this.getMilliseconds(), 3); }
-});
-
-module.exports = function (pattern) {
-       return format.call(date(this), pattern);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/#/index.js
deleted file mode 100644 (file)
index f71b295..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       copy:        require('./copy'),
-       daysInMonth: require('./days-in-month'),
-       floorDay:    require('./floor-day'),
-       floorMonth:  require('./floor-month'),
-       floorYear:   require('./floor-year'),
-       format:      require('./format')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/index.js
deleted file mode 100644 (file)
index eac33fb..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':       require('./#'),
-       isDate:    require('./is-date'),
-       validDate: require('./valid-date')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/is-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/is-date.js
deleted file mode 100644 (file)
index 6ba236e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(new Date());
-
-module.exports = function (x) {
-       return (x && ((x instanceof Date) || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/valid-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/date/valid-date.js
deleted file mode 100644 (file)
index 7d1a9b6..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isDate = require('./is-date');
-
-module.exports = function (x) {
-       if (!isDate(x)) throw new TypeError(x + " is not a Date object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/index.js
deleted file mode 100644 (file)
index b984aa9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       throw: require('./throw')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/throw.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/#/throw.js
deleted file mode 100644 (file)
index 7e15ebd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var error = require('../valid-error');
-
-module.exports = function () { throw error(this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/custom.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/custom.js
deleted file mode 100644 (file)
index bbc2dc2..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var assign = require('../object/assign')
-
-  , captureStackTrace = Error.captureStackTrace;
-
-exports = module.exports = function (message/*, code, ext*/) {
-       var err = new Error(), code = arguments[1], ext = arguments[2];
-       if (ext == null) {
-               if (code && (typeof code === 'object')) {
-                       ext = code;
-                       code = null;
-               }
-       }
-       if (ext != null) assign(err, ext);
-       err.message = String(message);
-       if (code != null) err.code = String(code);
-       if (captureStackTrace) captureStackTrace(err, exports);
-       return err;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/index.js
deleted file mode 100644 (file)
index 62984b5..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':        require('./#'),
-       custom:     require('./custom'),
-       isError:    require('./is-error'),
-       validError: require('./valid-error')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/is-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/is-error.js
deleted file mode 100644 (file)
index 422705f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(new Error());
-
-module.exports = function (x) {
-       return (x && ((x instanceof Error) || (toString.call(x)) === id)) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/valid-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/error/valid-error.js
deleted file mode 100644 (file)
index 0bef768..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isError = require('./is-error');
-
-module.exports = function (x) {
-       if (!isError(x)) throw new TypeError(x + " is not an Error object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/compose.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/compose.js
deleted file mode 100644 (file)
index 1da5e01..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , aFrom    = require('../../array/from')
-
-  , apply = Function.prototype.apply, call = Function.prototype.call
-  , callFn = function (arg, fn) { return call.call(fn, this, arg); };
-
-module.exports = function (fn/*, …fnn*/) {
-       var fns, first;
-       if (!fn) callable(fn);
-       fns = [this].concat(aFrom(arguments));
-       fns.forEach(callable);
-       fns = fns.reverse();
-       first = fns[0];
-       fns = fns.slice(1);
-       return function (arg) {
-               return fns.reduce(callFn, apply.call(first, this, arguments));
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/copy.js
deleted file mode 100644 (file)
index e1467f7..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var mixin         = require('../../object/mixin')
-  , validFunction = require('../valid-function')
-
-  , re = /^\s*function\s*([\0-'\)-\uffff]+)*\s*\(([\0-\(\*-\uffff]*)\)\s*\{/;
-
-module.exports = function () {
-       var match = String(validFunction(this)).match(re), fn;
-
-       fn = new Function('fn', 'return function ' + match[1].trim() + '(' +
-               match[2] + ') { return fn.apply(this, arguments); };')(this);
-       try { mixin(fn, this); } catch (ignore) {}
-       return fn;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/curry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/curry.js
deleted file mode 100644 (file)
index 943d6fa..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var toPosInt     = require('../../number/to-pos-integer')
-  , callable     = require('../../object/valid-callable')
-  , defineLength = require('../_define-length')
-
-  , slice = Array.prototype.slice, apply = Function.prototype.apply
-  , curry;
-
-curry = function self(fn, length, preArgs) {
-       return defineLength(function () {
-               var args = preArgs ?
-                               preArgs.concat(slice.call(arguments, 0, length - preArgs.length)) :
-                               slice.call(arguments, 0, length);
-               return (args.length === length) ? apply.call(fn, this, args) :
-                               self(fn, length, args);
-       }, preArgs ? (length - preArgs.length) : length);
-};
-
-module.exports = function (/*length*/) {
-       var length = arguments[0];
-       return curry(callable(this),
-               isNaN(length) ? toPosInt(this.length) : toPosInt(length));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/index.js
deleted file mode 100644 (file)
index 8d0da00..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = {
-       compose:        require('./compose'),
-       copy:           require('./copy'),
-       curry:          require('./curry'),
-       lock:           require('./lock'),
-       not:            require('./not'),
-       partial:        require('./partial'),
-       spread:         require('./spread'),
-       toStringTokens: require('./to-string-tokens')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/lock.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/lock.js
deleted file mode 100644 (file)
index 91e1a65..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-
-  , apply    = Function.prototype.apply;
-
-module.exports = function (/*…args*/) {
-       var fn = callable(this)
-         , args = arguments;
-
-       return function () { return apply.call(fn, this, args); };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/not.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/not.js
deleted file mode 100644 (file)
index c6dbe97..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var callable     = require('../../object/valid-callable')
-  , defineLength = require('../_define-length')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function () {
-       var fn = callable(this);
-
-       return defineLength(function () {
-               return !apply.call(fn, this, arguments);
-       }, fn.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/partial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/partial.js
deleted file mode 100644 (file)
index bf31a35..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var callable     = require('../../object/valid-callable')
-  , aFrom        = require('../../array/from')
-  , defineLength = require('../_define-length')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function (/*…args*/) {
-       var fn = callable(this)
-         , args = aFrom(arguments);
-
-       return defineLength(function () {
-               return apply.call(fn, this, args.concat(aFrom(arguments)));
-       }, fn.length - args.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/spread.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/spread.js
deleted file mode 100644 (file)
index d7c93b7..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function () {
-       var fn = callable(this);
-       return function (args) { return apply.call(fn, this, args); };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/to-string-tokens.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/#/to-string-tokens.js
deleted file mode 100644 (file)
index 67afeae..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var validFunction = require('../valid-function')
-
-  , re = new RegExp('^\\s*function[\\0-\'\\)-\\uffff]*' +
-       '\\(([\\0-\\(\\*-\\uffff]*)\\)\\s*\\{([\\0-\\uffff]*)\\}\\s*$');
-
-module.exports = function () {
-       var data = String(validFunction(this)).match(re);
-       return { args: data[1], body: data[2] };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/_define-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/_define-length.js
deleted file mode 100644 (file)
index 496ea62..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-var toPosInt = require('../number/to-pos-integer')
-
-  , test = function (a, b) {}, desc, defineProperty
-  , generate, mixin;
-
-try {
-       Object.defineProperty(test, 'length', { configurable: true, writable: false,
-               enumerable: false, value: 1 });
-} catch (ignore) {}
-
-if (test.length === 1) {
-       // ES6
-       desc = { configurable: true, writable: false, enumerable: false };
-       defineProperty = Object.defineProperty;
-       module.exports = function (fn, length) {
-               length = toPosInt(length);
-               if (fn.length === length) return fn;
-               desc.value = length;
-               return defineProperty(fn, 'length', desc);
-       };
-} else {
-       mixin = require('../object/mixin');
-       generate = (function () {
-               var cache = [];
-               return function (l) {
-                       var args, i = 0;
-                       if (cache[l]) return cache[l];
-                       args = [];
-                       while (l--) args.push('a' + (++i).toString(36));
-                       return new Function('fn', 'return function (' + args.join(', ') +
-                               ') { return fn.apply(this, arguments); };');
-               };
-       }());
-       module.exports = function (src, length) {
-               var target;
-               length = toPosInt(length);
-               if (src.length === length) return src;
-               target = generate(length)(src);
-               try { mixin(target, src); } catch (ignore) {}
-               return target;
-       };
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/constant.js
deleted file mode 100644 (file)
index 10f1e20..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x) {
-       return function () { return x; };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/identity.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/identity.js
deleted file mode 100644 (file)
index a9289f0..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (x) { return x; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/index.js
deleted file mode 100644 (file)
index cfad3f3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-// Export all modules.
-
-'use strict';
-
-module.exports = {
-       '#':           require('./#'),
-       constant:      require('./constant'),
-       identity:      require('./identity'),
-       invoke:        require('./invoke'),
-       isArguments:   require('./is-arguments'),
-       isFunction:    require('./is-function'),
-       noop:          require('./noop'),
-       pluck:         require('./pluck'),
-       validFunction: require('./valid-function')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/invoke.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/invoke.js
deleted file mode 100644 (file)
index 9195afd..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var isCallable = require('../object/is-callable')
-  , value      = require('../object/valid-value')
-
-  , slice = Array.prototype.slice, apply = Function.prototype.apply;
-
-module.exports = function (name/*, …args*/) {
-       var args = slice.call(arguments, 1), isFn = isCallable(name);
-       return function (obj) {
-               value(obj);
-               return apply.call(isFn ? name : obj[name], obj,
-                       args.concat(slice.call(arguments, 1)));
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-arguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-arguments.js
deleted file mode 100644 (file)
index 9a29855..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call((function () { return arguments; }()));
-
-module.exports = function (x) { return (toString.call(x) === id); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/is-function.js
deleted file mode 100644 (file)
index ab4399c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(require('./noop'));
-
-module.exports = function (f) {
-       return (typeof f === "function") && (toString.call(f) === id);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/noop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/noop.js
deleted file mode 100644 (file)
index aa43bae..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function () {};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/pluck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/pluck.js
deleted file mode 100644 (file)
index 7f70a30..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var value   = require('../object/valid-value');
-
-module.exports = function (name) {
-       return function (o) { return value(o)[name]; };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/valid-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/function/valid-function.js
deleted file mode 100644 (file)
index 05fdee2..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isFunction = require('./is-function');
-
-module.exports = function (x) {
-       if (!isFunction(x)) throw new TypeError(x + " is not a function");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/global.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/global.js
deleted file mode 100644 (file)
index 872a40e..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = new Function("return this")();
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/index.js
deleted file mode 100644 (file)
index d065b71..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = {
-       global:   require('./global'),
-
-       array:    require('./array'),
-       boolean:  require('./boolean'),
-       date:     require('./date'),
-       error:    require('./error'),
-       function: require('./function'),
-       math:     require('./math'),
-       number:   require('./number'),
-       object:   require('./object'),
-       regExp:   require('./reg-exp'),
-       string:   require('./string')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_pack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_pack-ieee754.js
deleted file mode 100644 (file)
index eecda56..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var abs = Math.abs, floor = Math.floor, log = Math.log, min = Math.min
-  , pow = Math.pow, LN2 = Math.LN2
-  , roundToEven;
-
-roundToEven = function (n) {
-       var w = floor(n), f = n - w;
-       if (f < 0.5) return w;
-       if (f > 0.5) return w + 1;
-       return w % 2 ? w + 1 : w;
-};
-
-module.exports = function (v, ebits, fbits) {
-       var bias = (1 << (ebits - 1)) - 1, s, e, f, i, bits, str, bytes;
-
-       // Compute sign, exponent, fraction
-       if (isNaN(v)) {
-               // NaN
-               // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
-               e = (1 << ebits) - 1;
-               f = pow(2, fbits - 1);
-               s = 0;
-       } else if (v === Infinity || v === -Infinity) {
-               e = (1 << ebits) - 1;
-               f = 0;
-               s = (v < 0) ? 1 : 0;
-       } else if (v === 0) {
-               e = 0;
-               f = 0;
-               s = (1 / v === -Infinity) ? 1 : 0;
-       } else {
-               s = v < 0;
-               v = abs(v);
-
-               if (v >= pow(2, 1 - bias)) {
-                       e = min(floor(log(v) / LN2), 1023);
-                       f = roundToEven(v / pow(2, e) * pow(2, fbits));
-                       if (f / pow(2, fbits) >= 2) {
-                               e = e + 1;
-                               f = 1;
-                       }
-                       if (e > bias) {
-                               // Overflow
-                               e = (1 << ebits) - 1;
-                               f = 0;
-                       } else {
-                               // Normal
-                               e = e + bias;
-                               f = f - pow(2, fbits);
-                       }
-               } else {
-                       // Subnormal
-                       e = 0;
-                       f = roundToEven(v / pow(2, 1 - bias - fbits));
-               }
-       }
-
-       // Pack sign, exponent, fraction
-       bits = [];
-       for (i = fbits; i; i -= 1) {
-               bits.push(f % 2 ? 1 : 0);
-               f = floor(f / 2);
-       }
-       for (i = ebits; i; i -= 1) {
-               bits.push(e % 2 ? 1 : 0);
-               e = floor(e / 2);
-       }
-       bits.push(s ? 1 : 0);
-       bits.reverse();
-       str = bits.join('');
-
-       // Bits to bytes
-       bytes = [];
-       while (str.length) {
-               bytes.push(parseInt(str.substring(0, 8), 2));
-               str = str.substring(8);
-       }
-       return bytes;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_unpack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/_unpack-ieee754.js
deleted file mode 100644 (file)
index c9f26f2..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (bytes, ebits, fbits) {
-       // Bytes to bits
-       var bits = [], i, j, b, str,
-       bias, s, e, f;
-
-       for (i = bytes.length; i; i -= 1) {
-               b = bytes[i - 1];
-               for (j = 8; j; j -= 1) {
-                       bits.push(b % 2 ? 1 : 0);
-                       b = b >> 1;
-               }
-       }
-       bits.reverse();
-       str = bits.join('');
-
-       // Unpack sign, exponent, fraction
-       bias = (1 << (ebits - 1)) - 1;
-       s = parseInt(str.substring(0, 1), 2) ? -1 : 1;
-       e = parseInt(str.substring(1, 1 + ebits), 2);
-       f = parseInt(str.substring(1 + ebits), 2);
-
-       // Produce number
-       if (e === (1 << ebits) - 1) return f !== 0 ? NaN : s * Infinity;
-       if (e > 0) return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
-       if (f !== 0) return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
-       return s < 0 ? -0 : 0;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/implement.js
deleted file mode 100644 (file)
index f48ad11..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'acosh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/index.js
deleted file mode 100644 (file)
index 00ddea6..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.acosh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/is-implemented.js
deleted file mode 100644 (file)
index 363f0d8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var acosh = Math.acosh;
-       if (typeof acosh !== 'function') return false;
-       return acosh(2) === 1.3169578969248166;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/acosh/shim.js
deleted file mode 100644 (file)
index 89a24b5..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var log = Math.log, sqrt = Math.sqrt;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 1) return NaN;
-       if (x === 1) return 0;
-       if (x === Infinity) return x;
-       return log(x + sqrt(x * x - 1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/implement.js
deleted file mode 100644 (file)
index 21f64d5..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'asinh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/index.js
deleted file mode 100644 (file)
index d415144..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.asinh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/is-implemented.js
deleted file mode 100644 (file)
index 6c205f4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var asinh = Math.asinh;
-       if (typeof asinh !== 'function') return false;
-       return asinh(2) === 1.4436354751788103;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/asinh/shim.js
deleted file mode 100644 (file)
index 42fbf14..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var log = Math.log, sqrt = Math.sqrt;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       if (x < 0) {
-               x = -x;
-               return -log(x + sqrt(x * x + 1));
-       }
-       return log(x + sqrt(x * x + 1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/implement.js
deleted file mode 100644 (file)
index 1a48513..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'atanh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/index.js
deleted file mode 100644 (file)
index 785b3de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.atanh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/is-implemented.js
deleted file mode 100644 (file)
index dbaf18e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var atanh = Math.atanh;
-       if (typeof atanh !== 'function') return false;
-       return atanh(0.5) === 0.5493061443340549;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/atanh/shim.js
deleted file mode 100644 (file)
index 531e289..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < -1) return NaN;
-       if (x > 1) return NaN;
-       if (x === -1) return -Infinity;
-       if (x === 1) return Infinity;
-       if (x === 0) return x;
-       return 0.5 * log((1 + x) / (1 - x));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/implement.js
deleted file mode 100644 (file)
index 3a12dde..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'cbrt', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/index.js
deleted file mode 100644 (file)
index 89f966d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.cbrt
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/is-implemented.js
deleted file mode 100644 (file)
index 69809f3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var cbrt = Math.cbrt;
-       if (typeof cbrt !== 'function') return false;
-       return cbrt(2) === 1.2599210498948732;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cbrt/shim.js
deleted file mode 100644 (file)
index bca1960..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       if (x < 0) return -pow(-x, 1 / 3);
-       return pow(x, 1 / 3);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/implement.js
deleted file mode 100644 (file)
index 339df33..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'clz32', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/index.js
deleted file mode 100644 (file)
index 1687b33..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.clz32
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/is-implemented.js
deleted file mode 100644 (file)
index ccc8f71..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var clz32 = Math.clz32;
-       if (typeof clz32 !== 'function') return false;
-       return clz32(1000) === 22;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/clz32/shim.js
deleted file mode 100644 (file)
index 2a582da..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       value = value >>> 0;
-       return value ? 32 - value.toString(2).length : 32;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/implement.js
deleted file mode 100644 (file)
index f90d830..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'cosh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/index.js
deleted file mode 100644 (file)
index 000636a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.cosh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/is-implemented.js
deleted file mode 100644 (file)
index c796bcb..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var cosh = Math.cosh;
-       if (typeof cosh !== 'function') return false;
-       return cosh(1) === 1.5430806348152437;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/cosh/shim.js
deleted file mode 100644 (file)
index f9062bd..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return 1;
-       if (!isFinite(x)) return Infinity;
-       return (exp(x) + exp(-x)) / 2;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/implement.js
deleted file mode 100644 (file)
index fc20c8c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'expm1', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/index.js
deleted file mode 100644 (file)
index 4c1bc77..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.expm1
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/is-implemented.js
deleted file mode 100644 (file)
index 3b106d5..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var expm1 = Math.expm1;
-       if (typeof expm1 !== 'function') return false;
-       return expm1(1).toFixed(15) === '1.718281828459045';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/expm1/shim.js
deleted file mode 100644 (file)
index 9c8c236..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// Thanks: https://github.com/monolithed/ECMAScript-6
-
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-       if (x === -Infinity) return -1;
-
-       if ((x > -1.0e-6) && (x < 1.0e-6)) return x + x * x / 2;
-       return exp(x) - 1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/implement.js
deleted file mode 100644 (file)
index c55b26c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'fround', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/index.js
deleted file mode 100644 (file)
index a077ed0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.fround
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/is-implemented.js
deleted file mode 100644 (file)
index ffbf094..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var fround = Math.fround;
-       if (typeof fround !== 'function') return false;
-       return fround(1.337) === 1.3370000123977661;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/fround/shim.js
deleted file mode 100644 (file)
index f2c86e4..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/blob/master/es6-shim.js
-
-'use strict';
-
-var toFloat32;
-
-if (typeof Float32Array !== 'undefined') {
-       toFloat32 = (function () {
-               var float32Array = new Float32Array(1);
-               return function (x) {
-                       float32Array[0] = x;
-                       return float32Array[0];
-               };
-       }());
-} else {
-       toFloat32 = (function () {
-               var pack   = require('../_pack-ieee754')
-                 , unpack = require('../_unpack-ieee754');
-
-               return function (x) {
-                       return unpack(pack(x, 8, 23), 8, 23);
-               };
-       }());
-}
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-
-       return toFloat32(x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/implement.js
deleted file mode 100644 (file)
index b27fda7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'hypot', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/index.js
deleted file mode 100644 (file)
index 334bc58..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.hypot
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/is-implemented.js
deleted file mode 100644 (file)
index e75c5d3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var hypot = Math.hypot;
-       if (typeof hypot !== 'function') return false;
-       return hypot(3, 4) === 5;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/hypot/shim.js
deleted file mode 100644 (file)
index 3d0988b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-// Thanks for hints: https://github.com/paulmillr/es6-shim
-
-'use strict';
-
-var some = Array.prototype.some, abs = Math.abs, sqrt = Math.sqrt
-
-  , compare = function (a, b) { return b - a; }
-  , divide = function (x) { return x / this; }
-  , add = function (sum, number) { return sum + number * number; };
-
-module.exports = function (val1, val2/*, …valn*/) {
-       var result, numbers;
-       if (!arguments.length) return 0;
-       some.call(arguments, function (val) {
-               if (isNaN(val)) {
-                       result = NaN;
-                       return;
-               }
-               if (!isFinite(val)) {
-                       result = Infinity;
-                       return true;
-               }
-               if (result !== undefined) return;
-               val = Number(val);
-               if (val === 0) return;
-               if (!numbers) numbers = [abs(val)];
-               else numbers.push(abs(val));
-       });
-       if (result !== undefined) return result;
-       if (!numbers) return 0;
-
-       numbers.sort(compare);
-       return numbers[0] * sqrt(numbers.map(divide, numbers[0]).reduce(add, 0));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/implement.js
deleted file mode 100644 (file)
index ed207bd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'imul', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/index.js
deleted file mode 100644 (file)
index 41e5d5f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.imul
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/is-implemented.js
deleted file mode 100644 (file)
index d8495de..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var imul = Math.imul;
-       if (typeof imul !== 'function') return false;
-       return imul(-1, 8) === -8;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/imul/shim.js
deleted file mode 100644 (file)
index 8fd8a8d..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-// Thanks: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
-//         /Global_Objects/Math/imul
-
-'use strict';
-
-module.exports = function (x, y) {
-       var xh  = (x >>> 16) & 0xffff, xl = x & 0xffff
-         , yh  = (y >>> 16) & 0xffff, yl = y & 0xffff;
-
-       // the shift by 0 fixes the sign on the high part
-       // the final |0 converts the unsigned value into a signed value
-       return ((xl * yl) + (((xh * yl + xl * yh) << 16) >>> 0) | 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/index.js
deleted file mode 100644 (file)
index d112d0b..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       acosh:  require('./acosh'),
-       asinh:  require('./asinh'),
-       atanh:  require('./atanh'),
-       cbrt:   require('./cbrt'),
-       clz32:  require('./clz32'),
-       cosh:   require('./cosh'),
-       expm1:  require('./expm1'),
-       fround: require('./fround'),
-       hypot:  require('./hypot'),
-       imul:   require('./imul'),
-       log10:  require('./log10'),
-       log2:   require('./log2'),
-       log1p:  require('./log1p'),
-       sign:   require('./sign'),
-       sinh:   require('./sinh'),
-       tanh:   require('./tanh'),
-       trunc:  require('./trunc')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/implement.js
deleted file mode 100644 (file)
index dd96edd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log10', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/index.js
deleted file mode 100644 (file)
index a9eee51..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log10
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/is-implemented.js
deleted file mode 100644 (file)
index c7f40ee..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log10 = Math.log10;
-       if (typeof log10 !== 'function') return false;
-       return log10(2) === 0.3010299956639812;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log10/shim.js
deleted file mode 100644 (file)
index fc77287..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log, LOG10E = Math.LOG10E;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 0) return NaN;
-       if (x === 0) return -Infinity;
-       if (x === 1) return 0;
-       if (x === Infinity) return Infinity;
-
-       return log(x) * LOG10E;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/implement.js
deleted file mode 100644 (file)
index f62f91f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log1p', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/index.js
deleted file mode 100644 (file)
index 107b114..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log1p
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/is-implemented.js
deleted file mode 100644 (file)
index 61e9097..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log1p = Math.log1p;
-       if (typeof log1p !== 'function') return false;
-       return log1p(1) === 0.6931471805599453;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log1p/shim.js
deleted file mode 100644 (file)
index 10acebc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-// Thanks: https://github.com/monolithed/ECMAScript-6/blob/master/ES6.js
-
-'use strict';
-
-var log = Math.log;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < -1) return NaN;
-       if (x === -1) return -Infinity;
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-
-       if (x > -1.0e-8 && x < 1.0e-8) return (x - x * x / 2);
-       return log(1 + x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/implement.js
deleted file mode 100644 (file)
index 8483f09..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log2', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/index.js
deleted file mode 100644 (file)
index 87e9050..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log2
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/is-implemented.js
deleted file mode 100644 (file)
index 802322f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log2 = Math.log2;
-       if (typeof log2 !== 'function') return false;
-       return log2(3).toFixed(15) === '1.584962500721156';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/log2/shim.js
deleted file mode 100644 (file)
index cd80994..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log, LOG2E = Math.LOG2E;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 0) return NaN;
-       if (x === 0) return -Infinity;
-       if (x === 1) return 0;
-       if (x === Infinity) return Infinity;
-
-       return log(x) * LOG2E;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/implement.js
deleted file mode 100644 (file)
index b0db2f4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'sign', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/index.js
deleted file mode 100644 (file)
index b232633..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.sign
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/is-implemented.js
deleted file mode 100644 (file)
index 6d0de47..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var sign = Math.sign;
-       if (typeof sign !== 'function') return false;
-       return ((sign(10) === 1) && (sign(-20) === -1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sign/shim.js
deleted file mode 100644 (file)
index 4df9c95..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       value = Number(value);
-       if (isNaN(value) || (value === 0)) return value;
-       return (value > 0) ? 1 : -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/implement.js
deleted file mode 100644 (file)
index f259a63..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'sinh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/index.js
deleted file mode 100644 (file)
index e5bea57..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.sinh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/is-implemented.js
deleted file mode 100644 (file)
index 927c8af..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var sinh = Math.sinh;
-       if (typeof sinh !== 'function') return false;
-       return sinh(1) === 1.1752011936438014;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/sinh/shim.js
deleted file mode 100644 (file)
index 2cc8d66..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       return (exp(x) - exp(-x)) / 2;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/implement.js
deleted file mode 100644 (file)
index 5199a02..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'tanh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/index.js
deleted file mode 100644 (file)
index 6099c40..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.tanh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/is-implemented.js
deleted file mode 100644 (file)
index 1a59173..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var tanh = Math.tanh;
-       if (typeof tanh !== 'function') return false;
-       return tanh(1) === 0.7615941559557649;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/tanh/shim.js
deleted file mode 100644 (file)
index 28994c6..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       var a, b;
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return 1;
-       if (x === -Infinity) return -1;
-       a = exp(x);
-       b = exp(-x);
-       return (a - b) / (a + b);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/implement.js
deleted file mode 100644 (file)
index 3ee80ab..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'trunc', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/index.js
deleted file mode 100644 (file)
index 0b0f9b2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.trunc
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/is-implemented.js
deleted file mode 100644 (file)
index 3e8cde1..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var trunc = Math.trunc;
-       if (typeof trunc !== 'function') return false;
-       return (trunc(13.67) === 13) && (trunc(-13.67) === -13);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/math/trunc/shim.js
deleted file mode 100644 (file)
index 02e2c2a..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var floor = Math.floor;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-       if (x === -Infinity) return -Infinity;
-       if (x > 0) return floor(x);
-       return -floor(-x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.lint
deleted file mode 100644 (file)
index 1851752..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-@root
-
-module
-
-tabs
-indent 2
-maxlen 100
-
-ass
-nomen
-plusplus
-newcap
-vars
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/.travis.yml
deleted file mode 100644 (file)
index afd3509..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-symbol@medikoo.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/CHANGES
deleted file mode 100644 (file)
index df8c27e..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-v2.0.1  --  2015.01.28
-* Fix Symbol.prototype[Symbol.isPrimitive] implementation
-* Improve validation within Symbol.prototype.toString and
-  Symbol.prototype.valueOf
-
-v2.0.0  --  2015.01.28
-* Update up to changes in specification:
-  * Implement `for` and `keyFor`
-  * Remove `Symbol.create` and `Symbol.isRegExp`
-  * Add `Symbol.match`, `Symbol.replace`, `Symbol.search`, `Symbol.species` and
-    `Symbol.split`
-* Rename `validSymbol` to `validateSymbol`
-* Improve documentation
-* Remove dead test modules
-
-v1.0.0  --  2015.01.26
-* Fix enumerability for symbol properties set normally (e.g. obj[symbol] = value)
-* Introduce initialization via hidden constructor
-* Fix isSymbol handling of polyfill values when native Symbol is present
-* Fix spelling of LICENSE
-* Configure lint scripts
-
-v0.1.1  --  2014.10.07
-* Fix isImplemented, so it returns true in case of polyfill
-* Improve documentations
-
-v0.1.0  --  2014.04.28
-* Assure strictly npm dependencies
-* Update to use latest versions of dependencies
-* Fix implementation detection so it doesn't crash on `String(symbol)`
-* throw on `new Symbol()` (as decided by TC39)
-
-v0.0.0  --  2013.11.15
-* Initial (dev) version
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/LICENSE
deleted file mode 100644 (file)
index 04724a3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/README.md
deleted file mode 100644 (file)
index 95d6780..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-# es6-symbol
-## ECMAScript 6 Symbol polyfill
-
-For more information about symbols see following links
-- [Symbols in ECMAScript 6 by Axel Rauschmayer](http://www.2ality.com/2014/12/es6-symbols.html)
-- [MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol)
-- [Specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-symbol-constructor)
-
-### Limitations
-
-Underneath it uses real string property names which can easily be retrieved, however accidental collision with other property names is unlikely.
-
-### Usage
-
-If you'd like to use native version when it exists and fallback to polyfill if it doesn't (but without implementing `Symbol` on global scope), do:
-
-```javascript
-var Symbol = require('es6-symbol');
-```
-
-If you want to make sure your environment implements `Symbol`, do:
-
-```javascript
-require('es6-symbol/implement');
-```
-
-If you strictly want to use polyfill even if native `Symbol` exists (hard to find a good reason for that), do:
-
-```javascript
-var Symbol = require('es6-symbol/polyfill');
-```
-
-#### API
-
-Best is to refer to [specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-symbol-objects). Still if you want quick look, follow examples:
-
-```javascript
-var Symbol = require('es6-symbol');
-
-var symbol = Symbol('My custom symbol');
-var x = {};
-
-x[symbol] = 'foo';
-console.log(x[symbol]); 'foo'
-
-// Detect iterable:
-var iterator, result;
-if (possiblyIterable[Symbol.iterator]) {
-  iterator = possiblyIterable[Symbol.iterator]();
-  result = iterator.next();
-  while(!result.done) {
-    console.log(result.value);
-    result = iterator.next();
-  }
-}
-```
-
-### Installation
-#### NPM
-
-In your project path:
-
-       $ npm install es6-symbol
-
-##### Browser
-
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/es6-symbol.png)](https://travis-ci.org/medikoo/es6-symbol)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/implement.js
deleted file mode 100644 (file)
index 153edac..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(require('es5-ext/global'), 'Symbol',
-               { value: require('./polyfill'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/index.js
deleted file mode 100644 (file)
index 609f1fa..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Symbol : require('./polyfill');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-implemented.js
deleted file mode 100644 (file)
index 53759f3..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var symbol;
-       if (typeof Symbol !== 'function') return false;
-       symbol = Symbol('test symbol');
-       try { String(symbol); } catch (e) { return false; }
-       if (typeof Symbol.iterator === 'symbol') return true;
-
-       // Return 'true' for polyfills
-       if (typeof Symbol.isConcatSpreadable !== 'object') return false;
-       if (typeof Symbol.iterator !== 'object') return false;
-       if (typeof Symbol.toPrimitive !== 'object') return false;
-       if (typeof Symbol.toStringTag !== 'object') return false;
-       if (typeof Symbol.unscopables !== 'object') return false;
-
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-native-implemented.js
deleted file mode 100644 (file)
index a8cb8b8..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// Exports true if environment provides native `Symbol` implementation
-
-'use strict';
-
-module.exports = (function () {
-       if (typeof Symbol !== 'function') return false;
-       return (typeof Symbol.iterator === 'symbol');
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/is-symbol.js
deleted file mode 100644 (file)
index beeba2c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x) {
-       return (x && ((typeof x === 'symbol') || (x['@@toStringTag'] === 'Symbol'))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/package.json
deleted file mode 100644 (file)
index 4d7fa92..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_id": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-dhtcZ8/U8dGK+yNPaR1nhoLLO/M=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es5-ext/es6-symbol",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "name": "es6-symbol",
-    "escapedName": "es6-symbol",
-    "rawSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map/es5-ext"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-symbol/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5"
-  },
-  "description": "ECMAScript6 Symbol polyfill",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-symbol#readme",
-  "keywords": [
-    "symbol",
-    "private",
-    "property",
-    "es6",
-    "ecmascript",
-    "harmony"
-  ],
-  "license": "MIT",
-  "name": "es6-symbol",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-symbol.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/polyfill.js
deleted file mode 100644 (file)
index 735eb67..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-'use strict';
-
-var d              = require('d')
-  , validateSymbol = require('./validate-symbol')
-
-  , create = Object.create, defineProperties = Object.defineProperties
-  , defineProperty = Object.defineProperty, objPrototype = Object.prototype
-  , Symbol, HiddenSymbol, globalSymbols = create(null);
-
-var generateName = (function () {
-       var created = create(null);
-       return function (desc) {
-               var postfix = 0, name;
-               while (created[desc + (postfix || '')]) ++postfix;
-               desc += (postfix || '');
-               created[desc] = true;
-               name = '@@' + desc;
-               defineProperty(objPrototype, name, d.gs(null, function (value) {
-                       defineProperty(this, name, d(value));
-               }));
-               return name;
-       };
-}());
-
-HiddenSymbol = function Symbol(description) {
-       if (this instanceof HiddenSymbol) throw new TypeError('TypeError: Symbol is not a constructor');
-       return Symbol(description);
-};
-module.exports = Symbol = function Symbol(description) {
-       var symbol;
-       if (this instanceof Symbol) throw new TypeError('TypeError: Symbol is not a constructor');
-       symbol = create(HiddenSymbol.prototype);
-       description = (description === undefined ? '' : String(description));
-       return defineProperties(symbol, {
-               __description__: d('', description),
-               __name__: d('', generateName(description))
-       });
-};
-defineProperties(Symbol, {
-       for: d(function (key) {
-               if (globalSymbols[key]) return globalSymbols[key];
-               return (globalSymbols[key] = Symbol(String(key)));
-       }),
-       keyFor: d(function (s) {
-               var key;
-               validateSymbol(s);
-               for (key in globalSymbols) if (globalSymbols[key] === s) return key;
-       }),
-       hasInstance: d('', Symbol('hasInstance')),
-       isConcatSpreadable: d('', Symbol('isConcatSpreadable')),
-       iterator: d('', Symbol('iterator')),
-       match: d('', Symbol('match')),
-       replace: d('', Symbol('replace')),
-       search: d('', Symbol('search')),
-       species: d('', Symbol('species')),
-       split: d('', Symbol('split')),
-       toPrimitive: d('', Symbol('toPrimitive')),
-       toStringTag: d('', Symbol('toStringTag')),
-       unscopables: d('', Symbol('unscopables'))
-});
-defineProperties(HiddenSymbol.prototype, {
-       constructor: d(Symbol),
-       toString: d('', function () { return this.__name__; })
-});
-
-defineProperties(Symbol.prototype, {
-       toString: d(function () { return 'Symbol (' + validateSymbol(this).__description__ + ')'; }),
-       valueOf: d(function () { return validateSymbol(this); })
-});
-defineProperty(Symbol.prototype, Symbol.toPrimitive, d('',
-       function () { return validateSymbol(this); }));
-defineProperty(Symbol.prototype, Symbol.toStringTag, d('c', 'Symbol'));
-
-defineProperty(HiddenSymbol.prototype, Symbol.toPrimitive,
-       d('c', Symbol.prototype[Symbol.toPrimitive]));
-defineProperty(HiddenSymbol.prototype, Symbol.toStringTag,
-       d('c', Symbol.prototype[Symbol.toStringTag]));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/implement.js
deleted file mode 100644 (file)
index eb35c30..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof Symbol, 'function'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/index.js
deleted file mode 100644 (file)
index 62b3296..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var d = require('d')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-implemented.js
deleted file mode 100644 (file)
index bb0d645..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var global   = require('es5-ext/global')
-  , polyfill = require('../polyfill');
-
-module.exports = function (t, a) {
-       var cache;
-       a(typeof t(), 'boolean');
-       cache = global.Symbol;
-       global.Symbol = polyfill;
-       a(t(), true);
-       if (cache === undefined) delete global.Symbol;
-       else global.Symbol = cache;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-native-implemented.js
deleted file mode 100644 (file)
index df8ba03..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t, 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/is-symbol.js
deleted file mode 100644 (file)
index ac24b9a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       a(t(undefined), false, "Undefined");
-       a(t(null), false, "Null");
-       a(t(true), false, "Primitive");
-       a(t('raz'), false, "String");
-       a(t({}), false, "Object");
-       a(t([]), false, "Array");
-       if (typeof Symbol !== 'undefined') {
-               a(t(Symbol()), true, "Native");
-       }
-       a(t(SymbolPoly()), true, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/polyfill.js
deleted file mode 100644 (file)
index 83fb5e9..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-var d        = require('d')
-  , isSymbol = require('../is-symbol')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-       a(x instanceof T, false);
-
-       a(isSymbol(symbol), true, "Symbol");
-       a(isSymbol(T.iterator), true, "iterator");
-       a(isSymbol(T.toStringTag), true, "toStringTag");
-
-       x = {};
-       x[symbol] = 'foo';
-       a.deep(Object.getOwnPropertyDescriptor(x, symbol), { configurable: true, enumerable: false,
-               value: 'foo', writable: true });
-       symbol = T.for('marko');
-       a(isSymbol(symbol), true);
-       a(T.for('marko'), symbol);
-       a(T.keyFor(symbol), 'marko');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/validate-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/test/validate-symbol.js
deleted file mode 100644 (file)
index 2c8f84c..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       var symbol;
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(true); }, TypeError, "Primitive");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t([]); }, TypeError, "Array");
-       if (typeof Symbol !== 'undefined') {
-               symbol = Symbol();
-               a(t(symbol), symbol, "Native");
-       }
-       symbol = SymbolPoly();
-       a(t(symbol), symbol, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/validate-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/node_modules/es6-symbol/validate-symbol.js
deleted file mode 100644 (file)
index 4275004..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSymbol = require('./is-symbol');
-
-module.exports = function (value) {
-       if (!isSymbol(value)) throw new TypeError(value + " is not a symbol");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/index.js
deleted file mode 100644 (file)
index 3248117..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       pad: require('./pad')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/#/pad.js
deleted file mode 100644 (file)
index 4478f6a..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var pad      = require('../../string/#/pad')
-  , toPosInt = require('../to-pos-integer')
-
-  , toFixed = Number.prototype.toFixed;
-
-module.exports = function (length/*, precision*/) {
-       var precision;
-       length = toPosInt(length);
-       precision = toPosInt(arguments[1]);
-
-       return pad.call(precision ? toFixed.call(this, precision) : this,
-               '0', length + (precision ? (1 + precision) : 0));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/implement.js
deleted file mode 100644 (file)
index f0a670a..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'EPSILON', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/index.js
deleted file mode 100644 (file)
index 4e4b621..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = 2.220446049250313e-16;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/epsilon/is-implemented.js
deleted file mode 100644 (file)
index 141f5d2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.EPSILON === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/index.js
deleted file mode 100644 (file)
index 35daf78..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':              require('./#'),
-       EPSILON:          require('./epsilon'),
-       isFinite:         require('./is-finite'),
-       isInteger:        require('./is-integer'),
-       isNaN:            require('./is-nan'),
-       isNumber:         require('./is-number'),
-       isSafeInteger:    require('./is-safe-integer'),
-       MAX_SAFE_INTEGER: require('./max-safe-integer'),
-       MIN_SAFE_INTEGER: require('./min-safe-integer'),
-       toInteger:        require('./to-integer'),
-       toPosInteger:     require('./to-pos-integer'),
-       toUint32:         require('./to-uint32')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/implement.js
deleted file mode 100644 (file)
index 51d7cac..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isFinite', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/index.js
deleted file mode 100644 (file)
index 15d5f40..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isFinite
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/is-implemented.js
deleted file mode 100644 (file)
index 556e396..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isFinite = Number.isFinite;
-       if (typeof isFinite !== 'function') return false;
-       return !isFinite('23') && isFinite(34) && !isFinite(Infinity);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-finite/shim.js
deleted file mode 100644 (file)
index e3aee55..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       return (typeof value === 'number') && isFinite(value);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/implement.js
deleted file mode 100644 (file)
index fe53f28..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isInteger', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/index.js
deleted file mode 100644 (file)
index 55e039a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isInteger
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/is-implemented.js
deleted file mode 100644 (file)
index a0e573b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isInteger = Number.isInteger;
-       if (typeof isInteger !== 'function') return false;
-       return !isInteger('23') && isInteger(34) && !isInteger(32.34);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-integer/shim.js
deleted file mode 100644 (file)
index 5402939..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// Credit: http://www.2ality.com/2014/05/is-integer.html
-
-'use strict';
-
-module.exports = function (value) {
-       if (typeof value !== 'number') return false;
-       return (value % 1 === 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/implement.js
deleted file mode 100644 (file)
index e1c5dee..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isNaN', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/index.js
deleted file mode 100644 (file)
index 3b2c4ca..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isNaN
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/is-implemented.js
deleted file mode 100644 (file)
index 4cf2766..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isNaN = Number.isNaN;
-       if (typeof isNaN !== 'function') return false;
-       return !isNaN({}) && isNaN(NaN) && !isNaN(34);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-nan/shim.js
deleted file mode 100644 (file)
index 070d96c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (value) { return (value !== value); } //jslint: ignore
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-number.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-number.js
deleted file mode 100644 (file)
index 19a99e4..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(1);
-
-module.exports = function (x) {
-       return ((typeof x === 'number') ||
-               ((x instanceof Number) ||
-                       ((typeof x === 'object') && (toString.call(x) === id))));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/implement.js
deleted file mode 100644 (file)
index 51cef96..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isSafeInteger', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/index.js
deleted file mode 100644 (file)
index 49adeaa..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isSafeInteger
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 510b60e..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isSafeInteger = Number.isSafeInteger;
-       if (typeof isSafeInteger !== 'function') return false;
-       return !isSafeInteger('23') && isSafeInteger(34232322323) &&
-                       !isSafeInteger(9007199254740992);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/is-safe-integer/shim.js
deleted file mode 100644 (file)
index 692acdd..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var isInteger = require('../is-integer/shim')
-  , maxValue  = require('../max-safe-integer')
-
-  , abs = Math.abs;
-
-module.exports = function (value) {
-       if (!isInteger(value)) return false;
-       return abs(value) <= maxValue;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/implement.js
deleted file mode 100644 (file)
index 4e0bb57..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'MAX_SAFE_INTEGER', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/index.js
deleted file mode 100644 (file)
index ed5d6a5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = Math.pow(2, 53) - 1;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 7bd08a9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.MAX_SAFE_INTEGER === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/implement.js
deleted file mode 100644 (file)
index e3f110e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'MIN_SAFE_INTEGER', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/index.js
deleted file mode 100644 (file)
index 1c6cc27..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = -(Math.pow(2, 53) - 1);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index efc9875..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.MIN_SAFE_INTEGER === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-integer.js
deleted file mode 100644 (file)
index 60e798c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var sign = require('../math/sign')
-
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (value) {
-       if (isNaN(value)) return 0;
-       value = Number(value);
-       if ((value === 0) || !isFinite(value)) return value;
-       return sign(value) * floor(abs(value));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-pos-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-pos-integer.js
deleted file mode 100644 (file)
index 605a302..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toInteger = require('./to-integer')
-
-  , max = Math.max;
-
-module.exports = function (value) { return max(0, toInteger(value)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-uint32.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/number/to-uint32.js
deleted file mode 100644 (file)
index 6263e85..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (value) { return value >>> 0; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/_iterate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/_iterate.js
deleted file mode 100644 (file)
index bf2c55d..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Internal method, used by iteration functions.
-// Calls a function for each key-value pair found in object
-// Optionally takes compareFn to iterate object in specific order
-
-'use strict';
-
-var isCallable = require('./is-callable')
-  , callable   = require('./valid-callable')
-  , value      = require('./valid-value')
-
-  , call = Function.prototype.call, keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (method, defVal) {
-       return function (obj, cb/*, thisArg, compareFn*/) {
-               var list, thisArg = arguments[2], compareFn = arguments[3];
-               obj = Object(value(obj));
-               callable(cb);
-
-               list = keys(obj);
-               if (compareFn) {
-                       list.sort(isCallable(compareFn) ? compareFn.bind(obj) : undefined);
-               }
-               return list[method](function (key, index) {
-                       if (!propertyIsEnumerable.call(obj, key)) return defVal;
-                       return call.call(cb, thisArg, obj[key], key, obj, index);
-               });
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/implement.js
deleted file mode 100644 (file)
index 3bcc68e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Object, 'assign', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/index.js
deleted file mode 100644 (file)
index ab0f9f2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.assign
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/is-implemented.js
deleted file mode 100644 (file)
index 579ad2d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var assign = Object.assign, obj;
-       if (typeof assign !== 'function') return false;
-       obj = { foo: 'raz' };
-       assign(obj, { bar: 'dwa' }, { trzy: 'trzy' });
-       return (obj.foo + obj.bar + obj.trzy) === 'razdwatrzy';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/assign/shim.js
deleted file mode 100644 (file)
index 74da11a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var keys  = require('../keys')
-  , value = require('../valid-value')
-
-  , max = Math.max;
-
-module.exports = function (dest, src/*, …srcn*/) {
-       var error, i, l = max(arguments.length, 2), assign;
-       dest = Object(value(dest));
-       assign = function (key) {
-               try { dest[key] = src[key]; } catch (e) {
-                       if (!error) error = e;
-               }
-       };
-       for (i = 1; i < l; ++i) {
-               src = arguments[i];
-               keys(src).forEach(assign);
-       }
-       if (error !== undefined) throw error;
-       return dest;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/clear.js
deleted file mode 100644 (file)
index 85e4637..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var keys = require('./keys');
-
-module.exports = function (obj) {
-       var error;
-       keys(obj).forEach(function (key) {
-               try {
-                       delete this[key];
-               } catch (e) {
-                       if (!error) error = e;
-               }
-       }, obj);
-       if (error !== undefined) throw error;
-       return obj;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compact.js
deleted file mode 100644 (file)
index d021da4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var filter = require('./filter');
-
-module.exports = function (obj) {
-       return filter(obj, function (val) { return val != null; });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/compare.js
deleted file mode 100644 (file)
index 2ab11f1..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-var strCompare = require('../string/#/case-insensitive-compare')
-  , isObject   = require('./is-object')
-
-  , resolve, typeMap;
-
-typeMap = {
-       undefined: 0,
-       object: 1,
-       boolean: 2,
-       string: 3,
-       number: 4
-};
-
-resolve = function (a) {
-       if (isObject(a)) {
-               if (typeof a.valueOf !== 'function') return NaN;
-               a = a.valueOf();
-               if (isObject(a)) {
-                       if (typeof a.toString !== 'function') return NaN;
-                       a = a.toString();
-                       if (typeof a !== 'string') return NaN;
-               }
-       }
-       return a;
-};
-
-module.exports = function (a, b) {
-       if (a === b) return 0; // Same
-
-       a = resolve(a);
-       b = resolve(b);
-       if (a == b) return typeMap[typeof a] - typeMap[typeof b]; //jslint: ignore
-       if (a == null) return -1;
-       if (b == null) return 1;
-       if ((typeof a === 'string') || (typeof b === 'string')) {
-               return strCompare.call(a, b);
-       }
-       if ((a !== a) && (b !== b)) return 0; //jslint: ignore
-       return Number(a) - Number(b);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy-deep.js
deleted file mode 100644 (file)
index 548e3ee..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-var isPlainObject = require('./is-plain-object')
-  , value         = require('./valid-value')
-
-  , keys = Object.keys
-  , copy;
-
-copy = function (source) {
-       var target = {};
-       this[0].push(source);
-       this[1].push(target);
-       keys(source).forEach(function (key) {
-               var index;
-               if (!isPlainObject(source[key])) {
-                       target[key] = source[key];
-                       return;
-               }
-               index = this[0].indexOf(source[key]);
-               if (index === -1) target[key] = copy.call(this, source[key]);
-               else target[key] = this[1][index];
-       }, this);
-       return target;
-};
-
-module.exports = function (source) {
-       var obj = Object(value(source));
-       if (obj !== source) return obj;
-       return copy.call([[], []], obj);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/copy.js
deleted file mode 100644 (file)
index 4d71772..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var assign = require('./assign')
-  , value  = require('./valid-value');
-
-module.exports = function (obj) {
-       var copy = Object(value(obj));
-       if (copy !== obj) return copy;
-       return assign({}, obj);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/count.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/count.js
deleted file mode 100644 (file)
index 29cfbb5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var keys  = require('./keys');
-
-module.exports = function (obj) { return keys(obj).length; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/create.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/create.js
deleted file mode 100644 (file)
index f813b46..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-// Workaround for http://code.google.com/p/v8/issues/detail?id=2804
-
-'use strict';
-
-var create = Object.create, shim;
-
-if (!require('./set-prototype-of/is-implemented')()) {
-       shim = require('./set-prototype-of/shim');
-}
-
-module.exports = (function () {
-       var nullObject, props, desc;
-       if (!shim) return create;
-       if (shim.level !== 1) return create;
-
-       nullObject = {};
-       props = {};
-       desc = { configurable: false, enumerable: false, writable: true,
-               value: undefined };
-       Object.getOwnPropertyNames(Object.prototype).forEach(function (name) {
-               if (name === '__proto__') {
-                       props[name] = { configurable: true, enumerable: false, writable: true,
-                               value: undefined };
-                       return;
-               }
-               props[name] = desc;
-       });
-       Object.defineProperties(nullObject, props);
-
-       Object.defineProperty(shim, 'nullPolyfill', { configurable: false,
-               enumerable: false, writable: false, value: nullObject });
-
-       return function (prototype, props) {
-               return create((prototype === null) ? nullObject : prototype, props);
-       };
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/eq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/eq.js
deleted file mode 100644 (file)
index 037937e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x, y) {
-       return ((x === y) || ((x !== x) && (y !== y))); //jslint: ignore
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/every.js
deleted file mode 100644 (file)
index 1303db2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('every', true);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/filter.js
deleted file mode 100644 (file)
index e5edb49..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               if (call.call(cb, thisArg, value, key, obj, index)) o[key] = obj[key];
-       });
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/first-key.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/first-key.js
deleted file mode 100644 (file)
index 7df10b2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (obj) {
-       var i;
-       value(obj);
-       for (i in obj) {
-               if (propertyIsEnumerable.call(obj, i)) return i;
-       }
-       return null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/flatten.js
deleted file mode 100644 (file)
index e8b4044..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var isPlainObject = require('./is-plain-object')
-  , forEach       = require('./for-each')
-
-  , process;
-
-process = function self(value, key) {
-       if (isPlainObject(value)) forEach(value, self, this);
-       else this[key] = value;
-};
-
-module.exports = function (obj) {
-       var flattened = {};
-       forEach(obj, process, flattened);
-       return flattened;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/for-each.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/for-each.js
deleted file mode 100644 (file)
index 6674f8a..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('forEach');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/get-property-names.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/get-property-names.js
deleted file mode 100644 (file)
index 54a01e5..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var uniq  = require('../array/#/uniq')
-  , value = require('./valid-value')
-
-  , push = Array.prototype.push
-  , getOwnPropertyNames = Object.getOwnPropertyNames
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (obj) {
-       var keys;
-       obj = Object(value(obj));
-       keys = getOwnPropertyNames(obj);
-       while ((obj = getPrototypeOf(obj))) {
-               push.apply(keys, getOwnPropertyNames(obj));
-       }
-       return uniq.call(keys);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/index.js
deleted file mode 100644 (file)
index 0b7b0fe..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-module.exports = {
-       assign:           require('./assign'),
-       clear:            require('./clear'),
-       compact:          require('./compact'),
-       compare:          require('./compare'),
-       copy:             require('./copy'),
-       copyDeep:         require('./copy-deep'),
-       count:            require('./count'),
-       create:           require('./create'),
-       eq:               require('./eq'),
-       every:            require('./every'),
-       filter:           require('./filter'),
-       firstKey:         require('./first-key'),
-       flatten:          require('./flatten'),
-       forEach:          require('./for-each'),
-       getPropertyNames: require('./get-property-names'),
-       is:               require('./is'),
-       isArrayLike:      require('./is-array-like'),
-       isCallable:       require('./is-callable'),
-       isCopy:           require('./is-copy'),
-       isCopyDeep:       require('./is-copy-deep'),
-       isEmpty:          require('./is-empty'),
-       isObject:         require('./is-object'),
-       isPlainObject:    require('./is-plain-object'),
-       keyOf:            require('./key-of'),
-       keys:             require('./keys'),
-       map:              require('./map'),
-       mapKeys:          require('./map-keys'),
-       normalizeOptions: require('./normalize-options'),
-       mixin:            require('./mixin'),
-       mixinPrototypes:  require('./mixin-prototypes'),
-       primitiveSet:     require('./primitive-set'),
-       safeTraverse:     require('./safe-traverse'),
-       serialize:        require('./serialize'),
-       setPrototypeOf:   require('./set-prototype-of'),
-       some:             require('./some'),
-       toArray:          require('./to-array'),
-       unserialize:      require('./unserialize'),
-       validCallable:    require('./valid-callable'),
-       validObject:      require('./valid-object'),
-       validValue:       require('./valid-value')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-array-like.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-array-like.js
deleted file mode 100644 (file)
index b8beed2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isFunction = require('../function/is-function')
-  , isObject   = require('./is-object');
-
-module.exports = function (x) {
-       return ((x != null) && (typeof x.length === 'number') &&
-
-               // Just checking ((typeof x === 'object') && (typeof x !== 'function'))
-               // won't work right for some cases, e.g.:
-               // type of instance of NodeList in Safari is a 'function'
-
-               ((isObject(x) && !isFunction(x)) || (typeof x === "string"))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-callable.js
deleted file mode 100644 (file)
index 5d5d4b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// Deprecated
-
-'use strict';
-
-module.exports = function (obj) { return typeof obj === 'function'; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy-deep.js
deleted file mode 100644 (file)
index c4b2b42..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-'use strict';
-
-var eq            = require('./eq')
-  , isPlainObject = require('./is-plain-object')
-  , value         = require('./valid-value')
-
-  , isArray = Array.isArray, keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable
-
-  , eqArr, eqVal, eqObj;
-
-eqArr = function (a, b, recMap) {
-       var i, l = a.length;
-       if (l !== b.length) return false;
-       for (i = 0; i < l; ++i) {
-               if (a.hasOwnProperty(i) !== b.hasOwnProperty(i)) return false;
-               if (!eqVal(a[i], b[i], recMap)) return false;
-       }
-       return true;
-};
-
-eqObj = function (a, b, recMap) {
-       var k1 = keys(a), k2 = keys(b);
-       if (k1.length !== k2.length) return false;
-       return k1.every(function (key) {
-               if (!propertyIsEnumerable.call(b, key)) return false;
-               return eqVal(a[key], b[key], recMap);
-       });
-};
-
-eqVal = function (a, b, recMap) {
-       var i, eqX, c1, c2;
-       if (eq(a, b)) return true;
-       if (isPlainObject(a)) {
-               if (!isPlainObject(b)) return false;
-               eqX = eqObj;
-       } else if (isArray(a) && isArray(b)) {
-               eqX = eqArr;
-       } else {
-               return false;
-       }
-       c1 = recMap[0];
-       c2 = recMap[1];
-       i = c1.indexOf(a);
-       if (i !== -1) {
-               if (c2[i].indexOf(b) !== -1) return true;
-       } else {
-               i = c1.push(a) - 1;
-               c2[i] = [];
-       }
-       c2[i].push(b);
-       return eqX(a, b, recMap);
-};
-
-module.exports = function (a, b) {
-       if (eq(value(a), value(b))) return true;
-       return eqVal(Object(a), Object(b), [[], []]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-copy.js
deleted file mode 100644 (file)
index 4fe639d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var eq     = require('./eq')
-  , value  = require('./valid-value')
-
-  , keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (a, b) {
-       var k1, k2;
-
-       if (eq(value(a), value(b))) return true;
-
-       a = Object(a);
-       b = Object(b);
-
-       k1 = keys(a);
-       k2 = keys(b);
-       if (k1.length !== k2.length) return false;
-       return k1.every(function (key) {
-               if (!propertyIsEnumerable.call(b, key)) return false;
-               return eq(a[key], b[key]);
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-empty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-empty.js
deleted file mode 100644 (file)
index 7b51a87..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (obj) {
-       var i;
-       value(obj);
-       for (i in obj) { //jslint: ignore
-               if (propertyIsEnumerable.call(obj, i)) return false;
-       }
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-object.js
deleted file mode 100644 (file)
index a86facf..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var map = { function: true, object: true };
-
-module.exports = function (x) {
-       return ((x != null) && map[typeof x]) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-plain-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is-plain-object.js
deleted file mode 100644 (file)
index 9a28231..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var getPrototypeOf = Object.getPrototypeOf, prototype = Object.prototype
-  , toString = prototype.toString
-
-  , id = Object().toString();
-
-module.exports = function (value) {
-       var proto, constructor;
-       if (!value || (typeof value !== 'object') || (toString.call(value) !== id)) {
-               return false;
-       }
-       proto = getPrototypeOf(value);
-       if (proto === null) {
-               constructor = value.constructor;
-               if (typeof constructor !== 'function') return true;
-               return (constructor.prototype !== value);
-       }
-       return (proto === prototype) || (getPrototypeOf(proto) === null);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/is.js
deleted file mode 100644 (file)
index 5778b50..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-// Implementation credits go to:
-// http://wiki.ecmascript.org/doku.php?id=harmony:egal
-
-'use strict';
-
-module.exports = function (x, y) {
-       return (x === y) ?
-                       ((x !== 0) || ((1 / x) === (1 / y))) :
-                       ((x !== x) && (y !== y)); //jslint: ignore
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/key-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/key-of.js
deleted file mode 100644 (file)
index 8c44c8d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var eq   = require('./eq')
-  , some = require('./some');
-
-module.exports = function (obj, searchValue) {
-       var r;
-       return some(obj, function (value, name) {
-               if (eq(value, searchValue)) {
-                       r = name;
-                       return true;
-               }
-               return false;
-       }) ? r : null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/implement.js
deleted file mode 100644 (file)
index c6872bd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Object, 'keys', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/index.js
deleted file mode 100644 (file)
index 5ef0522..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.keys
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/is-implemented.js
deleted file mode 100644 (file)
index 40c32c3..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       try {
-               Object.keys('primitive');
-               return true;
-       } catch (e) { return false; }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/keys/shim.js
deleted file mode 100644 (file)
index 034b6b2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var keys = Object.keys;
-
-module.exports = function (object) {
-       return keys(object == null ? object : Object(object));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map-keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map-keys.js
deleted file mode 100644 (file)
index 26f0eca..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               o[call.call(cb, thisArg, key, value, this, index)] = value;
-       }, obj);
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/map.js
deleted file mode 100644 (file)
index 6b39d3c..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               o[key] = call.call(cb, thisArg, value, key, obj, index);
-       });
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin-prototypes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin-prototypes.js
deleted file mode 100644 (file)
index 1ef5756..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-  , mixin = require('./mixin')
-
-  , defineProperty = Object.defineProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor
-  , getOwnPropertyNames = Object.getOwnPropertyNames
-  , getPrototypeOf = Object.getPrototypeOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (target, source) {
-       var error, end, define;
-       target = Object(value(target));
-       source = Object(value(source));
-       end = getPrototypeOf(target);
-       if (source === end) return target;
-       try {
-               mixin(target, source);
-       } catch (e) { error = e; }
-       source = getPrototypeOf(source);
-       define = function (name) {
-               if (hasOwnProperty.call(target, name)) return;
-               try {
-                       defineProperty(target, name, getOwnPropertyDescriptor(source, name));
-               } catch (e) { error = e; }
-       };
-       while (source && (source !== end)) {
-               getOwnPropertyNames(source).forEach(define);
-               source = getPrototypeOf(source);
-       }
-       if (error) throw error;
-       return target;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/mixin.js
deleted file mode 100644 (file)
index 80b5df5..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , defineProperty = Object.defineProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor
-  , getOwnPropertyNames = Object.getOwnPropertyNames;
-
-module.exports = function (target, source) {
-       var error;
-       target = Object(value(target));
-       getOwnPropertyNames(Object(value(source))).forEach(function (name) {
-               try {
-                       defineProperty(target, name, getOwnPropertyDescriptor(source, name));
-               } catch (e) { error = e; }
-       });
-       if (error !== undefined) throw error;
-       return target;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/normalize-options.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/normalize-options.js
deleted file mode 100644 (file)
index cf8ed8d..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach, create = Object.create;
-
-var process = function (src, obj) {
-       var key;
-       for (key in src) obj[key] = src[key];
-};
-
-module.exports = function (options/*, …options*/) {
-       var result = create(null);
-       forEach.call(arguments, function (options) {
-               if (options == null) return;
-               process(Object(options), result);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/primitive-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/primitive-set.js
deleted file mode 100644 (file)
index ada1095..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach, create = Object.create;
-
-module.exports = function (arg/*, …args*/) {
-       var set = create(null);
-       forEach.call(arguments, function (name) { set[name] = true; });
-       return set;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/safe-traverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/safe-traverse.js
deleted file mode 100644 (file)
index 7e1b5f4..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var value = require('./valid-value');
-
-module.exports = function (obj/*, …names*/) {
-       var length, current = 1;
-       value(obj);
-       length = arguments.length - 1;
-       if (!length) return obj;
-       while (current < length) {
-               obj = obj[arguments[current++]];
-               if (obj == null) return undefined;
-       }
-       return obj[arguments[current]];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/serialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/serialize.js
deleted file mode 100644 (file)
index 8113b68..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-'use strict';
-
-var toArray  = require('./to-array')
-  , isDate   = require('../date/is-date')
-  , isRegExp = require('../reg-exp/is-reg-exp')
-
-  , isArray = Array.isArray, stringify = JSON.stringify
-  , keyValueToString = function (value, key) { return stringify(key) + ':' + exports(value); };
-
-var sparseMap = function (arr) {
-       var i, l = arr.length, result = new Array(l);
-       for (i = 0; i < l; ++i) {
-               if (!arr.hasOwnProperty(i)) continue;
-               result[i] = exports(arr[i]);
-       }
-       return result;
-};
-
-module.exports = exports = function (obj) {
-       if (obj == null) return String(obj);
-       switch (typeof obj) {
-       case 'string':
-               return stringify(obj);
-       case 'number':
-       case 'boolean':
-       case 'function':
-               return String(obj);
-       case 'object':
-               if (isArray(obj)) return '[' + sparseMap(obj) + ']';
-               if (isRegExp(obj)) return String(obj);
-               if (isDate(obj)) return 'new Date(' + obj.valueOf() + ')';
-               return '{' + toArray(obj, keyValueToString) + '}';
-       default:
-               throw new TypeError("Serialization of " + String(obj) + "is unsupported");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/implement.js
deleted file mode 100644 (file)
index 000e6bd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var shim;
-
-if (!require('./is-implemented')() && (shim = require('./shim'))) {
-       Object.defineProperty(Object, 'setPrototypeOf',
-               { value: shim, configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/index.js
deleted file mode 100644 (file)
index ccc4099..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.setPrototypeOf
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js
deleted file mode 100644 (file)
index 98d0c84..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var create = Object.create, getPrototypeOf = Object.getPrototypeOf
-  , x = {};
-
-module.exports = function (/*customCreate*/) {
-       var setPrototypeOf = Object.setPrototypeOf
-         , customCreate = arguments[0] || create;
-       if (typeof setPrototypeOf !== 'function') return false;
-       return getPrototypeOf(setPrototypeOf(customCreate(null), x)) === x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/set-prototype-of/shim.js
deleted file mode 100644 (file)
index 4ec9446..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-// Big thanks to @WebReflection for sorting this out
-// https://gist.github.com/WebReflection/5593554
-
-'use strict';
-
-var isObject      = require('../is-object')
-  , value         = require('../valid-value')
-
-  , isPrototypeOf = Object.prototype.isPrototypeOf
-  , defineProperty = Object.defineProperty
-  , nullDesc = { configurable: true, enumerable: false, writable: true,
-               value: undefined }
-  , validate;
-
-validate = function (obj, prototype) {
-       value(obj);
-       if ((prototype === null) || isObject(prototype)) return obj;
-       throw new TypeError('Prototype must be null or an object');
-};
-
-module.exports = (function (status) {
-       var fn, set;
-       if (!status) return null;
-       if (status.level === 2) {
-               if (status.set) {
-                       set = status.set;
-                       fn = function (obj, prototype) {
-                               set.call(validate(obj, prototype), prototype);
-                               return obj;
-                       };
-               } else {
-                       fn = function (obj, prototype) {
-                               validate(obj, prototype).__proto__ = prototype;
-                               return obj;
-                       };
-               }
-       } else {
-               fn = function self(obj, prototype) {
-                       var isNullBase;
-                       validate(obj, prototype);
-                       isNullBase = isPrototypeOf.call(self.nullPolyfill, obj);
-                       if (isNullBase) delete self.nullPolyfill.__proto__;
-                       if (prototype === null) prototype = self.nullPolyfill;
-                       obj.__proto__ = prototype;
-                       if (isNullBase) defineProperty(self.nullPolyfill, '__proto__', nullDesc);
-                       return obj;
-               };
-       }
-       return Object.defineProperty(fn, 'level', { configurable: false,
-               enumerable: false, writable: false, value: status.level });
-}((function () {
-       var x = Object.create(null), y = {}, set
-         , desc = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__');
-
-       if (desc) {
-               try {
-                       set = desc.set; // Opera crashes at this point
-                       set.call(x, y);
-               } catch (ignore) { }
-               if (Object.getPrototypeOf(x) === y) return { set: set, level: 2 };
-       }
-
-       x.__proto__ = y;
-       if (Object.getPrototypeOf(x) === y) return { level: 2 };
-
-       x = {};
-       x.__proto__ = y;
-       if (Object.getPrototypeOf(x) === y) return { level: 1 };
-
-       return false;
-}())));
-
-require('../create');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/some.js
deleted file mode 100644 (file)
index cde5dde..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('some', false);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/to-array.js
deleted file mode 100644 (file)
index a954abb..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call
-
-  , defaultCb = function (value, key) { return [key, value]; };
-
-module.exports = function (obj/*, cb, thisArg, compareFn*/) {
-       var a = [], cb = arguments[1], thisArg = arguments[2];
-       cb = (cb == null) ? defaultCb : callable(cb);
-
-       forEach(obj, function (value, key, obj, index) {
-               a.push(call.call(cb, thisArg, value, key, this, index));
-       }, obj, arguments[3]);
-       return a;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/unserialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/unserialize.js
deleted file mode 100644 (file)
index ce68e40..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var value  = require('./valid-value');
-
-module.exports = exports = function (code) {
-       return (new Function('return ' + value(code)))();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-callable.js
deleted file mode 100644 (file)
index c977527..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (fn) {
-       if (typeof fn !== 'function') throw new TypeError(fn + " is not a function");
-       return fn;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-object.js
deleted file mode 100644 (file)
index f82bd51..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isObject = require('./is-object');
-
-module.exports = function (value) {
-       if (!isObject(value)) throw new TypeError(value + " is not an Object");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/valid-value.js
deleted file mode 100644 (file)
index 36c8ec3..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       if (value == null) throw new TypeError("Cannot use null or undefined");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/package.json
deleted file mode 100644 (file)
index d7fb7c0..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-{
-  "_args": [
-    [
-      "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_id": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-4n1XUEAaEcCCWeO5tdO90ygd8Ao=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es5-ext",
-  "_phantomChildren": {
-    "d": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "es5-ext": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-  },
-  "_requested": {
-    "type": "remote",
-    "raw": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "name": "es5-ext",
-    "escapedName": "es5-ext",
-    "rawSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map",
-    "/grunt-standard/standard/eslint/escope/es6-map/d",
-    "/grunt-standard/standard/eslint/escope/es6-map/es5-ext/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-set",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-symbol",
-    "/grunt-standard/standard/eslint/escope/es6-map/event-emitter"
-  ],
-  "_spec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es5-ext/issues"
-  },
-  "dependencies": {
-    "es6-iterator": "~0.1.3",
-    "es6-symbol": "~2.0.1"
-  },
-  "description": "ECMAScript 5 extensions and ES6 shims",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es5-ext#readme",
-  "keywords": [
-    "ecmascript",
-    "ecmascript5",
-    "ecmascript6",
-    "es5",
-    "es6",
-    "extensions",
-    "ext",
-    "addons",
-    "extras",
-    "harmony",
-    "javascript",
-    "polyfill",
-    "shim",
-    "util",
-    "utils",
-    "utilities"
-  ],
-  "license": "MIT",
-  "name": "es5-ext",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es5-ext.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/index.js
deleted file mode 100644 (file)
index f7e7a58..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       isSticky:  require('./is-sticky'),
-       isUnicode: require('./is-unicode'),
-       match:     require('./match'),
-       replace:   require('./replace'),
-       search:    require('./search'),
-       split:     require('./split')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-sticky.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-sticky.js
deleted file mode 100644 (file)
index 830a481..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var validRegExp = require('../valid-reg-exp')
-
-  , re = /\/[a-xz]*y[a-xz]*$/;
-
-module.exports = function () {
-       return Boolean(String(validRegExp(this)).match(re));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-unicode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/is-unicode.js
deleted file mode 100644 (file)
index b005f6d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var validRegExp = require('../valid-reg-exp')
-
-  , re = /\/[a-xz]*u[a-xz]*$/;
-
-module.exports = function () {
-       return Boolean(String(validRegExp(this)).match(re));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/implement.js
deleted file mode 100644 (file)
index 921c936..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'match', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/index.js
deleted file mode 100644 (file)
index 0534ac3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.match
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js
deleted file mode 100644 (file)
index b7e9964..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.match !== 'function') return false;
-       return re.match('barfoobar') && !re.match('elo');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/match/shim.js
deleted file mode 100644 (file)
index 4f99cf4..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).match(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/implement.js
deleted file mode 100644 (file)
index ad580de..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'replace', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/index.js
deleted file mode 100644 (file)
index 5658177..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.replace
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js
deleted file mode 100644 (file)
index 1b42d25..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.replace !== 'function') return false;
-       return re.replace('foobar', 'mar') === 'marbar';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/replace/shim.js
deleted file mode 100644 (file)
index c3e6aeb..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string, replaceValue) {
-       validRegExp(this);
-       return String(string).replace(this, replaceValue);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/implement.js
deleted file mode 100644 (file)
index 3804f4e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'search', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/index.js
deleted file mode 100644 (file)
index 67995d4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.search
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js
deleted file mode 100644 (file)
index efba889..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.search !== 'function') return false;
-       return re.search('barfoo') === 3;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/search/shim.js
deleted file mode 100644 (file)
index 6d9dcae..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).search(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/implement.js
deleted file mode 100644 (file)
index 50facb6..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'split', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/index.js
deleted file mode 100644 (file)
index f101f5a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.split
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js
deleted file mode 100644 (file)
index 7244c99..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /\|/;
-
-module.exports = function () {
-       if (typeof re.split !== 'function') return false;
-       return re.split('bar|foo')[1] === 'foo';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/split/shim.js
deleted file mode 100644 (file)
index 76154e7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).split(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js
deleted file mode 100644 (file)
index 7e8af1d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSticky = require('../is-sticky');
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'sticky', { configurable: true,
-               enumerable: false, get: isSticky });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js
deleted file mode 100644 (file)
index 379c4a5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return RegExp.prototype.sticky === false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js
deleted file mode 100644 (file)
index 5a82a4d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isUnicode = require('../is-unicode');
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'unicode', { configurable: true,
-               enumerable: false, get: isUnicode });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js
deleted file mode 100644 (file)
index a8b15b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return RegExp.prototype.unicode === false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/escape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/escape.js
deleted file mode 100644 (file)
index a2363fc..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Thanks to Andrew Clover:
-// http://stackoverflow.com/questions/3561493
-// /is-there-a-regexp-escape-function-in-javascript
-
-'use strict';
-
-var re = /[\-\/\\\^$*+?.()|\[\]{}]/g;
-
-module.exports = function (str) { return String(str).replace(re, '\\$&'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/index.js
deleted file mode 100644 (file)
index 75ea313..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':         require('./#'),
-       escape:      require('./escape'),
-       isRegExp:    require('./is-reg-exp'),
-       validRegExp: require('./valid-reg-exp')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/is-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/is-reg-exp.js
deleted file mode 100644 (file)
index 6eb1297..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(/a/);
-
-module.exports = function (x) {
-       return (x && (x instanceof RegExp || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js
deleted file mode 100644 (file)
index d3a7764..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isRegExp = require('./is-reg-exp');
-
-module.exports = function (x) {
-       if (!isRegExp(x)) throw new TypeError(x + " is not a RegExp object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 4494d7b..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, require('es6-symbol').iterator,
-               { value: require('./shim'), configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/index.js
deleted file mode 100644 (file)
index 22f15e6..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype[require('es6-symbol').iterator] : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index f5c462d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function () {
-       var str = '🙈f', iterator, result;
-       if (typeof str[iteratorSymbol] !== 'function') return false;
-       iterator = str[iteratorSymbol]();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== '🙈') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/@@iterator/shim.js
deleted file mode 100644 (file)
index 0be3029..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var StringIterator = require('es6-iterator/string')
-  , value          = require('../../../object/valid-value');
-
-module.exports = function () { return new StringIterator(value(this)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/at.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/at.js
deleted file mode 100644 (file)
index 77bd251..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Based on: https://github.com/mathiasbynens/String.prototype.at
-// Thanks @mathiasbynens !
-
-'use strict';
-
-var toInteger  = require('../../number/to-integer')
-  , validValue = require('../../object/valid-value');
-
-module.exports = function (pos) {
-       var str = String(validValue(this)), size = str.length
-         , cuFirst, cuSecond, nextPos, len;
-       pos = toInteger(pos);
-
-       // Account for out-of-bounds indices
-       // The odd lower bound is because the ToInteger operation is
-       // going to round `n` to `0` for `-1 < n <= 0`.
-       if (pos <= -1 || pos >= size) return '';
-
-       // Second half of `ToInteger`
-       pos = pos | 0;
-       // Get the first code unit and code unit value
-       cuFirst = str.charCodeAt(pos);
-       nextPos = pos + 1;
-       len = 1;
-       if ( // check if it’s the start of a surrogate pair
-               (cuFirst >= 0xD800) && (cuFirst <= 0xDBFF) && // high surrogate
-                       (size > nextPos) // there is a next code unit
-       ) {
-               cuSecond = str.charCodeAt(nextPos);
-               if (cuSecond >= 0xDC00 && cuSecond <= 0xDFFF) len = 2; // low surrogate
-       }
-       return str.slice(pos, pos + len);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/camel-to-hyphen.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/camel-to-hyphen.js
deleted file mode 100644 (file)
index 6898097..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var replace = String.prototype.replace
-  , re = /([a-z\d])([A-Z])/g;
-
-module.exports = function () {
-       return replace.call(this, re, "$1-$2").toLowerCase();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/capitalize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/capitalize.js
deleted file mode 100644 (file)
index ed76827..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       var str = String(value(this));
-       return str.charAt(0).toUpperCase() + str.slice(1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/case-insensitive-compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/case-insensitive-compare.js
deleted file mode 100644 (file)
index 599cb83..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toLowerCase = String.prototype.toLowerCase;
-
-module.exports = function (other) {
-       return toLowerCase.call(this).localeCompare(toLowerCase.call(String(other)));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/implement.js
deleted file mode 100644 (file)
index 1e7a37b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'codePointAt',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/index.js
deleted file mode 100644 (file)
index 7e91d83..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.codePointAt
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js
deleted file mode 100644 (file)
index b271589..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'abc\uD834\uDF06def';
-
-module.exports = function () {
-       if (typeof str.codePointAt !== 'function') return false;
-       return str.codePointAt(3) === 0x1D306;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/code-point-at/shim.js
deleted file mode 100644 (file)
index 1c9038b..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-// Based on: https://github.com/mathiasbynens/String.prototype.codePointAt
-// Thanks @mathiasbynens !
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , validValue = require('../../../object/valid-value');
-
-module.exports = function (pos) {
-       var str = String(validValue(this)), l = str.length, first, second;
-       pos = toInteger(pos);
-
-       // Account for out-of-bounds indices:
-       if (pos < 0 || pos >= l) return undefined;
-
-       // Get the first code unit
-       first = str.charCodeAt(pos);
-       if ((first >= 0xD800) && (first <= 0xDBFF) && (l > pos + 1)) {
-               second = str.charCodeAt(pos + 1);
-               if (second >= 0xDC00 && second <= 0xDFFF) {
-                       // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
-                       return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;
-               }
-       }
-       return first;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/implement.js
deleted file mode 100644 (file)
index 6b7a3c0..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'contains',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/index.js
deleted file mode 100644 (file)
index abb3e37..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.contains
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/is-implemented.js
deleted file mode 100644 (file)
index 6f7d4b7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.contains !== 'function') return false;
-       return ((str.contains('dwa') === true) && (str.contains('foo') === false));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/contains/shim.js
deleted file mode 100644 (file)
index 89e39e7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var indexOf = String.prototype.indexOf;
-
-module.exports = function (searchString/*, position*/) {
-       return indexOf.call(this, searchString, arguments[1]) > -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/implement.js
deleted file mode 100644 (file)
index 0b09025..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'endsWith',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/index.js
deleted file mode 100644 (file)
index d2d9484..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.endsWith
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js
deleted file mode 100644 (file)
index f3bb008..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.endsWith !== 'function') return false;
-       return ((str.endsWith('trzy') === true) && (str.endsWith('raz') === false));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/ends-with/shim.js
deleted file mode 100644 (file)
index 26cbdb1..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toInteger = require('../../../number/to-integer')
-  , value     = require('../../../object/valid-value')
-
-  , min = Math.min, max = Math.max;
-
-module.exports = function (searchString/*, endPosition*/) {
-       var self, start, endPos;
-       self = String(value(this));
-       searchString = String(searchString);
-       endPos = arguments[1];
-       start = ((endPos == null) ? self.length :
-                       min(max(toInteger(endPos), 0), self.length)) - searchString.length;
-       return (start < 0) ? false : (self.indexOf(searchString, start) === start);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/hyphen-to-camel.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/hyphen-to-camel.js
deleted file mode 100644 (file)
index 8928b02..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var replace = String.prototype.replace
-
-  , re = /-([a-z0-9])/g
-  , toUpperCase = function (m, a) { return a.toUpperCase(); };
-
-module.exports = function () { return replace.call(this, re, toUpperCase); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/indent.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/indent.js
deleted file mode 100644 (file)
index 223bd82..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var repeat = require('./repeat')
-
-  , replace = String.prototype.replace
-  , re = /(\r\n|[\n\r\u2028\u2029])([\u0000-\u0009\u000b-\uffff]+)/g;
-
-module.exports = function (indent/*, count*/) {
-       var count = arguments[1];
-       indent = repeat.call(String(indent), (count == null) ? 1 : count);
-       return indent + replace.call(this, re, '$1' + indent + '$2');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/index.js
deleted file mode 100644 (file)
index 2b24694..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       at:                     require('./at'),
-       camelToHyphen:          require('./camel-to-hyphen'),
-       capitalize:             require('./capitalize'),
-       caseInsensitiveCompare: require('./case-insensitive-compare'),
-       codePointAt:            require('./code-point-at'),
-       contains:               require('./contains'),
-       hyphenToCamel:          require('./hyphen-to-camel'),
-       endsWith:               require('./ends-with'),
-       indent:                 require('./indent'),
-       last:                   require('./last'),
-       normalize:              require('./normalize'),
-       pad:                    require('./pad'),
-       plainReplace:           require('./plain-replace'),
-       plainReplaceAll:        require('./plain-replace-all'),
-       repeat:                 require('./repeat'),
-       startsWith:             require('./starts-with')
-};
-module.exports[require('es6-symbol').iterator] = require('./@@iterator');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/last.js
deleted file mode 100644 (file)
index d5cf46e..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       var self = String(value(this)), l = self.length;
-       return l ? self[l - 1] : null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/_data.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/_data.js
deleted file mode 100644 (file)
index e4e00a3..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-'use strict';
-
-module.exports = { 0:{60:[,,{824:8814}],61:[,,{824:8800}],62:[,,{824:8815}],65:[,,{768:192,769:193,770:194,771:195,772:256,774:258,775:550,776:196,777:7842,778:197,780:461,783:512,785:514,803:7840,805:7680,808:260}],66:[,,{775:7682,803:7684,817:7686}],67:[,,{769:262,770:264,775:266,780:268,807:199}],68:[,,{775:7690,780:270,803:7692,807:7696,813:7698,817:7694}],69:[,,{768:200,769:201,770:202,771:7868,772:274,774:276,775:278,776:203,777:7866,780:282,783:516,785:518,803:7864,807:552,808:280,813:7704,816:7706}],70:[,,{775:7710}],71:[,,{769:500,770:284,772:7712,774:286,775:288,780:486,807:290}],72:[,,{770:292,775:7714,776:7718,780:542,803:7716,807:7720,814:7722}],73:[,,{768:204,769:205,770:206,771:296,772:298,774:300,775:304,776:207,777:7880,780:463,783:520,785:522,803:7882,808:302,816:7724}],74:[,,{770:308}],75:[,,{769:7728,780:488,803:7730,807:310,817:7732}],76:[,,{769:313,780:317,803:7734,807:315,813:7740,817:7738}],77:[,,{769:7742,775:7744,803:7746}],78:[,,{768:504,769:323,771:209,775:7748,780:327,803:7750,807:325,813:7754,817:7752}],79:[,,{768:210,769:211,770:212,771:213,772:332,774:334,775:558,776:214,777:7886,779:336,780:465,783:524,785:526,795:416,803:7884,808:490}],80:[,,{769:7764,775:7766}],82:[,,{769:340,775:7768,780:344,783:528,785:530,803:7770,807:342,817:7774}],83:[,,{769:346,770:348,775:7776,780:352,803:7778,806:536,807:350}],84:[,,{775:7786,780:356,803:7788,806:538,807:354,813:7792,817:7790}],85:[,,{768:217,769:218,770:219,771:360,772:362,774:364,776:220,777:7910,778:366,779:368,780:467,783:532,785:534,795:431,803:7908,804:7794,808:370,813:7798,816:7796}],86:[,,{771:7804,803:7806}],87:[,,{768:7808,769:7810,770:372,775:7814,776:7812,803:7816}],88:[,,{775:7818,776:7820}],89:[,,{768:7922,769:221,770:374,771:7928,772:562,775:7822,776:376,777:7926,803:7924}],90:[,,{769:377,770:7824,775:379,780:381,803:7826,817:7828}],97:[,,{768:224,769:225,770:226,771:227,772:257,774:259,775:551,776:228,777:7843,778:229,780:462,783:513,785:515,803:7841,805:7681,808:261}],98:[,,{775:7683,803:7685,817:7687}],99:[,,{769:263,770:265,775:267,780:269,807:231}],100:[,,{775:7691,780:271,803:7693,807:7697,813:7699,817:7695}],101:[,,{768:232,769:233,770:234,771:7869,772:275,774:277,775:279,776:235,777:7867,780:283,783:517,785:519,803:7865,807:553,808:281,813:7705,816:7707}],102:[,,{775:7711}],103:[,,{769:501,770:285,772:7713,774:287,775:289,780:487,807:291}],104:[,,{770:293,775:7715,776:7719,780:543,803:7717,807:7721,814:7723,817:7830}],105:[,,{768:236,769:237,770:238,771:297,772:299,774:301,776:239,777:7881,780:464,783:521,785:523,803:7883,808:303,816:7725}],106:[,,{770:309,780:496}],107:[,,{769:7729,780:489,803:7731,807:311,817:7733}],108:[,,{769:314,780:318,803:7735,807:316,813:7741,817:7739}],109:[,,{769:7743,775:7745,803:7747}],110:[,,{768:505,769:324,771:241,775:7749,780:328,803:7751,807:326,813:7755,817:7753}],111:[,,{768:242,769:243,770:244,771:245,772:333,774:335,775:559,776:246,777:7887,779:337,780:466,783:525,785:527,795:417,803:7885,808:491}],112:[,,{769:7765,775:7767}],114:[,,{769:341,775:7769,780:345,783:529,785:531,803:7771,807:343,817:7775}],115:[,,{769:347,770:349,775:7777,780:353,803:7779,806:537,807:351}],116:[,,{775:7787,776:7831,780:357,803:7789,806:539,807:355,813:7793,817:7791}],117:[,,{768:249,769:250,770:251,771:361,772:363,774:365,776:252,777:7911,778:367,779:369,780:468,783:533,785:535,795:432,803:7909,804:7795,808:371,813:7799,816:7797}],118:[,,{771:7805,803:7807}],119:[,,{768:7809,769:7811,770:373,775:7815,776:7813,778:7832,803:7817}],120:[,,{775:7819,776:7821}],121:[,,{768:7923,769:253,770:375,771:7929,772:563,775:7823,776:255,777:7927,778:7833,803:7925}],122:[,,{769:378,770:7825,775:380,780:382,803:7827,817:7829}],160:[[32],256],168:[[32,776],256,{768:8173,769:901,834:8129}],170:[[97],256],175:[[32,772],256],178:[[50],256],179:[[51],256],180:[[32,769],256],181:[[956],256],184:[[32,807],256],185:[[49],256],186:[[111],256],188:[[49,8260,52],256],189:[[49,8260,50],256],190:[[51,8260,52],256],192:[[65,768]],193:[[65,769]],194:[[65,770],,{768:7846,769:7844,771:7850,777:7848}],195:[[65,771]],196:[[65,776],,{772:478}],197:[[65,778],,{769:506}],198:[,,{769:508,772:482}],199:[[67,807],,{769:7688}],200:[[69,768]],201:[[69,769]],202:[[69,770],,{768:7872,769:7870,771:7876,777:7874}],203:[[69,776]],204:[[73,768]],205:[[73,769]],206:[[73,770]],207:[[73,776],,{769:7726}],209:[[78,771]],210:[[79,768]],211:[[79,769]],212:[[79,770],,{768:7890,769:7888,771:7894,777:7892}],213:[[79,771],,{769:7756,772:556,776:7758}],214:[[79,776],,{772:554}],216:[,,{769:510}],217:[[85,768]],218:[[85,769]],219:[[85,770]],220:[[85,776],,{768:475,769:471,772:469,780:473}],221:[[89,769]],224:[[97,768]],225:[[97,769]],226:[[97,770],,{768:7847,769:7845,771:7851,777:7849}],227:[[97,771]],228:[[97,776],,{772:479}],229:[[97,778],,{769:507}],230:[,,{769:509,772:483}],231:[[99,807],,{769:7689}],232:[[101,768]],233:[[101,769]],234:[[101,770],,{768:7873,769:7871,771:7877,777:7875}],235:[[101,776]],236:[[105,768]],237:[[105,769]],238:[[105,770]],239:[[105,776],,{769:7727}],241:[[110,771]],242:[[111,768]],243:[[111,769]],244:[[111,770],,{768:7891,769:7889,771:7895,777:7893}],245:[[111,771],,{769:7757,772:557,776:7759}],246:[[111,776],,{772:555}],248:[,,{769:511}],249:[[117,768]],250:[[117,769]],251:[[117,770]],252:[[117,776],,{768:476,769:472,772:470,780:474}],253:[[121,769]],255:[[121,776]]},
-       256:{256:[[65,772]],257:[[97,772]],258:[[65,774],,{768:7856,769:7854,771:7860,777:7858}],259:[[97,774],,{768:7857,769:7855,771:7861,777:7859}],260:[[65,808]],261:[[97,808]],262:[[67,769]],263:[[99,769]],264:[[67,770]],265:[[99,770]],266:[[67,775]],267:[[99,775]],268:[[67,780]],269:[[99,780]],270:[[68,780]],271:[[100,780]],274:[[69,772],,{768:7700,769:7702}],275:[[101,772],,{768:7701,769:7703}],276:[[69,774]],277:[[101,774]],278:[[69,775]],279:[[101,775]],280:[[69,808]],281:[[101,808]],282:[[69,780]],283:[[101,780]],284:[[71,770]],285:[[103,770]],286:[[71,774]],287:[[103,774]],288:[[71,775]],289:[[103,775]],290:[[71,807]],291:[[103,807]],292:[[72,770]],293:[[104,770]],296:[[73,771]],297:[[105,771]],298:[[73,772]],299:[[105,772]],300:[[73,774]],301:[[105,774]],302:[[73,808]],303:[[105,808]],304:[[73,775]],306:[[73,74],256],307:[[105,106],256],308:[[74,770]],309:[[106,770]],310:[[75,807]],311:[[107,807]],313:[[76,769]],314:[[108,769]],315:[[76,807]],316:[[108,807]],317:[[76,780]],318:[[108,780]],319:[[76,183],256],320:[[108,183],256],323:[[78,769]],324:[[110,769]],325:[[78,807]],326:[[110,807]],327:[[78,780]],328:[[110,780]],329:[[700,110],256],332:[[79,772],,{768:7760,769:7762}],333:[[111,772],,{768:7761,769:7763}],334:[[79,774]],335:[[111,774]],336:[[79,779]],337:[[111,779]],340:[[82,769]],341:[[114,769]],342:[[82,807]],343:[[114,807]],344:[[82,780]],345:[[114,780]],346:[[83,769],,{775:7780}],347:[[115,769],,{775:7781}],348:[[83,770]],349:[[115,770]],350:[[83,807]],351:[[115,807]],352:[[83,780],,{775:7782}],353:[[115,780],,{775:7783}],354:[[84,807]],355:[[116,807]],356:[[84,780]],357:[[116,780]],360:[[85,771],,{769:7800}],361:[[117,771],,{769:7801}],362:[[85,772],,{776:7802}],363:[[117,772],,{776:7803}],364:[[85,774]],365:[[117,774]],366:[[85,778]],367:[[117,778]],368:[[85,779]],369:[[117,779]],370:[[85,808]],371:[[117,808]],372:[[87,770]],373:[[119,770]],374:[[89,770]],375:[[121,770]],376:[[89,776]],377:[[90,769]],378:[[122,769]],379:[[90,775]],380:[[122,775]],381:[[90,780]],382:[[122,780]],383:[[115],256,{775:7835}],416:[[79,795],,{768:7900,769:7898,771:7904,777:7902,803:7906}],417:[[111,795],,{768:7901,769:7899,771:7905,777:7903,803:7907}],431:[[85,795],,{768:7914,769:7912,771:7918,777:7916,803:7920}],432:[[117,795],,{768:7915,769:7913,771:7919,777:7917,803:7921}],439:[,,{780:494}],452:[[68,381],256],453:[[68,382],256],454:[[100,382],256],455:[[76,74],256],456:[[76,106],256],457:[[108,106],256],458:[[78,74],256],459:[[78,106],256],460:[[110,106],256],461:[[65,780]],462:[[97,780]],463:[[73,780]],464:[[105,780]],465:[[79,780]],466:[[111,780]],467:[[85,780]],468:[[117,780]],469:[[220,772]],470:[[252,772]],471:[[220,769]],472:[[252,769]],473:[[220,780]],474:[[252,780]],475:[[220,768]],476:[[252,768]],478:[[196,772]],479:[[228,772]],480:[[550,772]],481:[[551,772]],482:[[198,772]],483:[[230,772]],486:[[71,780]],487:[[103,780]],488:[[75,780]],489:[[107,780]],490:[[79,808],,{772:492}],491:[[111,808],,{772:493}],492:[[490,772]],493:[[491,772]],494:[[439,780]],495:[[658,780]],496:[[106,780]],497:[[68,90],256],498:[[68,122],256],499:[[100,122],256],500:[[71,769]],501:[[103,769]],504:[[78,768]],505:[[110,768]],506:[[197,769]],507:[[229,769]],508:[[198,769]],509:[[230,769]],510:[[216,769]],511:[[248,769]],66045:[,220]},
-       512:{512:[[65,783]],513:[[97,783]],514:[[65,785]],515:[[97,785]],516:[[69,783]],517:[[101,783]],518:[[69,785]],519:[[101,785]],520:[[73,783]],521:[[105,783]],522:[[73,785]],523:[[105,785]],524:[[79,783]],525:[[111,783]],526:[[79,785]],527:[[111,785]],528:[[82,783]],529:[[114,783]],530:[[82,785]],531:[[114,785]],532:[[85,783]],533:[[117,783]],534:[[85,785]],535:[[117,785]],536:[[83,806]],537:[[115,806]],538:[[84,806]],539:[[116,806]],542:[[72,780]],543:[[104,780]],550:[[65,775],,{772:480}],551:[[97,775],,{772:481}],552:[[69,807],,{774:7708}],553:[[101,807],,{774:7709}],554:[[214,772]],555:[[246,772]],556:[[213,772]],557:[[245,772]],558:[[79,775],,{772:560}],559:[[111,775],,{772:561}],560:[[558,772]],561:[[559,772]],562:[[89,772]],563:[[121,772]],658:[,,{780:495}],688:[[104],256],689:[[614],256],690:[[106],256],691:[[114],256],692:[[633],256],693:[[635],256],694:[[641],256],695:[[119],256],696:[[121],256],728:[[32,774],256],729:[[32,775],256],730:[[32,778],256],731:[[32,808],256],732:[[32,771],256],733:[[32,779],256],736:[[611],256],737:[[108],256],738:[[115],256],739:[[120],256],740:[[661],256]},
-       768:{768:[,230],769:[,230],770:[,230],771:[,230],772:[,230],773:[,230],774:[,230],775:[,230],776:[,230,{769:836}],777:[,230],778:[,230],779:[,230],780:[,230],781:[,230],782:[,230],783:[,230],784:[,230],785:[,230],786:[,230],787:[,230],788:[,230],789:[,232],790:[,220],791:[,220],792:[,220],793:[,220],794:[,232],795:[,216],796:[,220],797:[,220],798:[,220],799:[,220],800:[,220],801:[,202],802:[,202],803:[,220],804:[,220],805:[,220],806:[,220],807:[,202],808:[,202],809:[,220],810:[,220],811:[,220],812:[,220],813:[,220],814:[,220],815:[,220],816:[,220],817:[,220],818:[,220],819:[,220],820:[,1],821:[,1],822:[,1],823:[,1],824:[,1],825:[,220],826:[,220],827:[,220],828:[,220],829:[,230],830:[,230],831:[,230],832:[[768],230],833:[[769],230],834:[,230],835:[[787],230],836:[[776,769],230],837:[,240],838:[,230],839:[,220],840:[,220],841:[,220],842:[,230],843:[,230],844:[,230],845:[,220],846:[,220],848:[,230],849:[,230],850:[,230],851:[,220],852:[,220],853:[,220],854:[,220],855:[,230],856:[,232],857:[,220],858:[,220],859:[,230],860:[,233],861:[,234],862:[,234],863:[,233],864:[,234],865:[,234],866:[,233],867:[,230],868:[,230],869:[,230],870:[,230],871:[,230],872:[,230],873:[,230],874:[,230],875:[,230],876:[,230],877:[,230],878:[,230],879:[,230],884:[[697]],890:[[32,837],256],894:[[59]],900:[[32,769],256],901:[[168,769]],902:[[913,769]],903:[[183]],904:[[917,769]],905:[[919,769]],906:[[921,769]],908:[[927,769]],910:[[933,769]],911:[[937,769]],912:[[970,769]],913:[,,{768:8122,769:902,772:8121,774:8120,787:7944,788:7945,837:8124}],917:[,,{768:8136,769:904,787:7960,788:7961}],919:[,,{768:8138,769:905,787:7976,788:7977,837:8140}],921:[,,{768:8154,769:906,772:8153,774:8152,776:938,787:7992,788:7993}],927:[,,{768:8184,769:908,787:8008,788:8009}],929:[,,{788:8172}],933:[,,{768:8170,769:910,772:8169,774:8168,776:939,788:8025}],937:[,,{768:8186,769:911,787:8040,788:8041,837:8188}],938:[[921,776]],939:[[933,776]],940:[[945,769],,{837:8116}],941:[[949,769]],942:[[951,769],,{837:8132}],943:[[953,769]],944:[[971,769]],945:[,,{768:8048,769:940,772:8113,774:8112,787:7936,788:7937,834:8118,837:8115}],949:[,,{768:8050,769:941,787:7952,788:7953}],951:[,,{768:8052,769:942,787:7968,788:7969,834:8134,837:8131}],953:[,,{768:8054,769:943,772:8145,774:8144,776:970,787:7984,788:7985,834:8150}],959:[,,{768:8056,769:972,787:8000,788:8001}],961:[,,{787:8164,788:8165}],965:[,,{768:8058,769:973,772:8161,774:8160,776:971,787:8016,788:8017,834:8166}],969:[,,{768:8060,769:974,787:8032,788:8033,834:8182,837:8179}],970:[[953,776],,{768:8146,769:912,834:8151}],971:[[965,776],,{768:8162,769:944,834:8167}],972:[[959,769]],973:[[965,769]],974:[[969,769],,{837:8180}],976:[[946],256],977:[[952],256],978:[[933],256,{769:979,776:980}],979:[[978,769]],980:[[978,776]],981:[[966],256],982:[[960],256],1008:[[954],256],1009:[[961],256],1010:[[962],256],1012:[[920],256],1013:[[949],256],1017:[[931],256]},
-       1024:{1024:[[1045,768]],1025:[[1045,776]],1027:[[1043,769]],1030:[,,{776:1031}],1031:[[1030,776]],1036:[[1050,769]],1037:[[1048,768]],1038:[[1059,774]],1040:[,,{774:1232,776:1234}],1043:[,,{769:1027}],1045:[,,{768:1024,774:1238,776:1025}],1046:[,,{774:1217,776:1244}],1047:[,,{776:1246}],1048:[,,{768:1037,772:1250,774:1049,776:1252}],1049:[[1048,774]],1050:[,,{769:1036}],1054:[,,{776:1254}],1059:[,,{772:1262,774:1038,776:1264,779:1266}],1063:[,,{776:1268}],1067:[,,{776:1272}],1069:[,,{776:1260}],1072:[,,{774:1233,776:1235}],1075:[,,{769:1107}],1077:[,,{768:1104,774:1239,776:1105}],1078:[,,{774:1218,776:1245}],1079:[,,{776:1247}],1080:[,,{768:1117,772:1251,774:1081,776:1253}],1081:[[1080,774]],1082:[,,{769:1116}],1086:[,,{776:1255}],1091:[,,{772:1263,774:1118,776:1265,779:1267}],1095:[,,{776:1269}],1099:[,,{776:1273}],1101:[,,{776:1261}],1104:[[1077,768]],1105:[[1077,776]],1107:[[1075,769]],1110:[,,{776:1111}],1111:[[1110,776]],1116:[[1082,769]],1117:[[1080,768]],1118:[[1091,774]],1140:[,,{783:1142}],1141:[,,{783:1143}],1142:[[1140,783]],1143:[[1141,783]],1155:[,230],1156:[,230],1157:[,230],1158:[,230],1159:[,230],1217:[[1046,774]],1218:[[1078,774]],1232:[[1040,774]],1233:[[1072,774]],1234:[[1040,776]],1235:[[1072,776]],1238:[[1045,774]],1239:[[1077,774]],1240:[,,{776:1242}],1241:[,,{776:1243}],1242:[[1240,776]],1243:[[1241,776]],1244:[[1046,776]],1245:[[1078,776]],1246:[[1047,776]],1247:[[1079,776]],1250:[[1048,772]],1251:[[1080,772]],1252:[[1048,776]],1253:[[1080,776]],1254:[[1054,776]],1255:[[1086,776]],1256:[,,{776:1258}],1257:[,,{776:1259}],1258:[[1256,776]],1259:[[1257,776]],1260:[[1069,776]],1261:[[1101,776]],1262:[[1059,772]],1263:[[1091,772]],1264:[[1059,776]],1265:[[1091,776]],1266:[[1059,779]],1267:[[1091,779]],1268:[[1063,776]],1269:[[1095,776]],1272:[[1067,776]],1273:[[1099,776]]},
-       1280:{1415:[[1381,1410],256],1425:[,220],1426:[,230],1427:[,230],1428:[,230],1429:[,230],1430:[,220],1431:[,230],1432:[,230],1433:[,230],1434:[,222],1435:[,220],1436:[,230],1437:[,230],1438:[,230],1439:[,230],1440:[,230],1441:[,230],1442:[,220],1443:[,220],1444:[,220],1445:[,220],1446:[,220],1447:[,220],1448:[,230],1449:[,230],1450:[,220],1451:[,230],1452:[,230],1453:[,222],1454:[,228],1455:[,230],1456:[,10],1457:[,11],1458:[,12],1459:[,13],1460:[,14],1461:[,15],1462:[,16],1463:[,17],1464:[,18],1465:[,19],1466:[,19],1467:[,20],1468:[,21],1469:[,22],1471:[,23],1473:[,24],1474:[,25],1476:[,230],1477:[,220],1479:[,18]},
-       1536:{1552:[,230],1553:[,230],1554:[,230],1555:[,230],1556:[,230],1557:[,230],1558:[,230],1559:[,230],1560:[,30],1561:[,31],1562:[,32],1570:[[1575,1619]],1571:[[1575,1620]],1572:[[1608,1620]],1573:[[1575,1621]],1574:[[1610,1620]],1575:[,,{1619:1570,1620:1571,1621:1573}],1608:[,,{1620:1572}],1610:[,,{1620:1574}],1611:[,27],1612:[,28],1613:[,29],1614:[,30],1615:[,31],1616:[,32],1617:[,33],1618:[,34],1619:[,230],1620:[,230],1621:[,220],1622:[,220],1623:[,230],1624:[,230],1625:[,230],1626:[,230],1627:[,230],1628:[,220],1629:[,230],1630:[,230],1631:[,220],1648:[,35],1653:[[1575,1652],256],1654:[[1608,1652],256],1655:[[1735,1652],256],1656:[[1610,1652],256],1728:[[1749,1620]],1729:[,,{1620:1730}],1730:[[1729,1620]],1746:[,,{1620:1747}],1747:[[1746,1620]],1749:[,,{1620:1728}],1750:[,230],1751:[,230],1752:[,230],1753:[,230],1754:[,230],1755:[,230],1756:[,230],1759:[,230],1760:[,230],1761:[,230],1762:[,230],1763:[,220],1764:[,230],1767:[,230],1768:[,230],1770:[,220],1771:[,230],1772:[,230],1773:[,220]},
-       1792:{1809:[,36],1840:[,230],1841:[,220],1842:[,230],1843:[,230],1844:[,220],1845:[,230],1846:[,230],1847:[,220],1848:[,220],1849:[,220],1850:[,230],1851:[,220],1852:[,220],1853:[,230],1854:[,220],1855:[,230],1856:[,230],1857:[,230],1858:[,220],1859:[,230],1860:[,220],1861:[,230],1862:[,220],1863:[,230],1864:[,220],1865:[,230],1866:[,230],2027:[,230],2028:[,230],2029:[,230],2030:[,230],2031:[,230],2032:[,230],2033:[,230],2034:[,220],2035:[,230]},
-       2048:{2070:[,230],2071:[,230],2072:[,230],2073:[,230],2075:[,230],2076:[,230],2077:[,230],2078:[,230],2079:[,230],2080:[,230],2081:[,230],2082:[,230],2083:[,230],2085:[,230],2086:[,230],2087:[,230],2089:[,230],2090:[,230],2091:[,230],2092:[,230],2093:[,230],2137:[,220],2138:[,220],2139:[,220],2276:[,230],2277:[,230],2278:[,220],2279:[,230],2280:[,230],2281:[,220],2282:[,230],2283:[,230],2284:[,230],2285:[,220],2286:[,220],2287:[,220],2288:[,27],2289:[,28],2290:[,29],2291:[,230],2292:[,230],2293:[,230],2294:[,220],2295:[,230],2296:[,230],2297:[,220],2298:[,220],2299:[,230],2300:[,230],2301:[,230],2302:[,230]},
-       2304:{2344:[,,{2364:2345}],2345:[[2344,2364]],2352:[,,{2364:2353}],2353:[[2352,2364]],2355:[,,{2364:2356}],2356:[[2355,2364]],2364:[,7],2381:[,9],2385:[,230],2386:[,220],2387:[,230],2388:[,230],2392:[[2325,2364],512],2393:[[2326,2364],512],2394:[[2327,2364],512],2395:[[2332,2364],512],2396:[[2337,2364],512],2397:[[2338,2364],512],2398:[[2347,2364],512],2399:[[2351,2364],512],2492:[,7],2503:[,,{2494:2507,2519:2508}],2507:[[2503,2494]],2508:[[2503,2519]],2509:[,9],2524:[[2465,2492],512],2525:[[2466,2492],512],2527:[[2479,2492],512]},
-       2560:{2611:[[2610,2620],512],2614:[[2616,2620],512],2620:[,7],2637:[,9],2649:[[2582,2620],512],2650:[[2583,2620],512],2651:[[2588,2620],512],2654:[[2603,2620],512],2748:[,7],2765:[,9],68109:[,220],68111:[,230],68152:[,230],68153:[,1],68154:[,220],68159:[,9]},
-       2816:{2876:[,7],2887:[,,{2878:2891,2902:2888,2903:2892}],2888:[[2887,2902]],2891:[[2887,2878]],2892:[[2887,2903]],2893:[,9],2908:[[2849,2876],512],2909:[[2850,2876],512],2962:[,,{3031:2964}],2964:[[2962,3031]],3014:[,,{3006:3018,3031:3020}],3015:[,,{3006:3019}],3018:[[3014,3006]],3019:[[3015,3006]],3020:[[3014,3031]],3021:[,9]},
-       3072:{3142:[,,{3158:3144}],3144:[[3142,3158]],3149:[,9],3157:[,84],3158:[,91],3260:[,7],3263:[,,{3285:3264}],3264:[[3263,3285]],3270:[,,{3266:3274,3285:3271,3286:3272}],3271:[[3270,3285]],3272:[[3270,3286]],3274:[[3270,3266],,{3285:3275}],3275:[[3274,3285]],3277:[,9]},
-       3328:{3398:[,,{3390:3402,3415:3404}],3399:[,,{3390:3403}],3402:[[3398,3390]],3403:[[3399,3390]],3404:[[3398,3415]],3405:[,9],3530:[,9],3545:[,,{3530:3546,3535:3548,3551:3550}],3546:[[3545,3530]],3548:[[3545,3535],,{3530:3549}],3549:[[3548,3530]],3550:[[3545,3551]]},
-       3584:{3635:[[3661,3634],256],3640:[,103],3641:[,103],3642:[,9],3656:[,107],3657:[,107],3658:[,107],3659:[,107],3763:[[3789,3762],256],3768:[,118],3769:[,118],3784:[,122],3785:[,122],3786:[,122],3787:[,122],3804:[[3755,3737],256],3805:[[3755,3745],256]},
-       3840:{3852:[[3851],256],3864:[,220],3865:[,220],3893:[,220],3895:[,220],3897:[,216],3907:[[3906,4023],512],3917:[[3916,4023],512],3922:[[3921,4023],512],3927:[[3926,4023],512],3932:[[3931,4023],512],3945:[[3904,4021],512],3953:[,129],3954:[,130],3955:[[3953,3954],512],3956:[,132],3957:[[3953,3956],512],3958:[[4018,3968],512],3959:[[4018,3969],256],3960:[[4019,3968],512],3961:[[4019,3969],256],3962:[,130],3963:[,130],3964:[,130],3965:[,130],3968:[,130],3969:[[3953,3968],512],3970:[,230],3971:[,230],3972:[,9],3974:[,230],3975:[,230],3987:[[3986,4023],512],3997:[[3996,4023],512],4002:[[4001,4023],512],4007:[[4006,4023],512],4012:[[4011,4023],512],4025:[[3984,4021],512],4038:[,220]},
-       4096:{4133:[,,{4142:4134}],4134:[[4133,4142]],4151:[,7],4153:[,9],4154:[,9],4237:[,220],4348:[[4316],256],69702:[,9],69785:[,,{69818:69786}],69786:[[69785,69818]],69787:[,,{69818:69788}],69788:[[69787,69818]],69797:[,,{69818:69803}],69803:[[69797,69818]],69817:[,9],69818:[,7]},
-       4352:{69888:[,230],69889:[,230],69890:[,230],69934:[[69937,69927]],69935:[[69938,69927]],69937:[,,{69927:69934}],69938:[,,{69927:69935}],69939:[,9],69940:[,9],70080:[,9]},
-       4864:{4957:[,230],4958:[,230],4959:[,230]},
-       5632:{71350:[,9],71351:[,7]},
-       5888:{5908:[,9],5940:[,9],6098:[,9],6109:[,230]},
-       6144:{6313:[,228]},
-       6400:{6457:[,222],6458:[,230],6459:[,220]},
-       6656:{6679:[,230],6680:[,220],6752:[,9],6773:[,230],6774:[,230],6775:[,230],6776:[,230],6777:[,230],6778:[,230],6779:[,230],6780:[,230],6783:[,220]},
-       6912:{6917:[,,{6965:6918}],6918:[[6917,6965]],6919:[,,{6965:6920}],6920:[[6919,6965]],6921:[,,{6965:6922}],6922:[[6921,6965]],6923:[,,{6965:6924}],6924:[[6923,6965]],6925:[,,{6965:6926}],6926:[[6925,6965]],6929:[,,{6965:6930}],6930:[[6929,6965]],6964:[,7],6970:[,,{6965:6971}],6971:[[6970,6965]],6972:[,,{6965:6973}],6973:[[6972,6965]],6974:[,,{6965:6976}],6975:[,,{6965:6977}],6976:[[6974,6965]],6977:[[6975,6965]],6978:[,,{6965:6979}],6979:[[6978,6965]],6980:[,9],7019:[,230],7020:[,220],7021:[,230],7022:[,230],7023:[,230],7024:[,230],7025:[,230],7026:[,230],7027:[,230],7082:[,9],7083:[,9],7142:[,7],7154:[,9],7155:[,9]},
-       7168:{7223:[,7],7376:[,230],7377:[,230],7378:[,230],7380:[,1],7381:[,220],7382:[,220],7383:[,220],7384:[,220],7385:[,220],7386:[,230],7387:[,230],7388:[,220],7389:[,220],7390:[,220],7391:[,220],7392:[,230],7394:[,1],7395:[,1],7396:[,1],7397:[,1],7398:[,1],7399:[,1],7400:[,1],7405:[,220],7412:[,230]},
-       7424:{7468:[[65],256],7469:[[198],256],7470:[[66],256],7472:[[68],256],7473:[[69],256],7474:[[398],256],7475:[[71],256],7476:[[72],256],7477:[[73],256],7478:[[74],256],7479:[[75],256],7480:[[76],256],7481:[[77],256],7482:[[78],256],7484:[[79],256],7485:[[546],256],7486:[[80],256],7487:[[82],256],7488:[[84],256],7489:[[85],256],7490:[[87],256],7491:[[97],256],7492:[[592],256],7493:[[593],256],7494:[[7426],256],7495:[[98],256],7496:[[100],256],7497:[[101],256],7498:[[601],256],7499:[[603],256],7500:[[604],256],7501:[[103],256],7503:[[107],256],7504:[[109],256],7505:[[331],256],7506:[[111],256],7507:[[596],256],7508:[[7446],256],7509:[[7447],256],7510:[[112],256],7511:[[116],256],7512:[[117],256],7513:[[7453],256],7514:[[623],256],7515:[[118],256],7516:[[7461],256],7517:[[946],256],7518:[[947],256],7519:[[948],256],7520:[[966],256],7521:[[967],256],7522:[[105],256],7523:[[114],256],7524:[[117],256],7525:[[118],256],7526:[[946],256],7527:[[947],256],7528:[[961],256],7529:[[966],256],7530:[[967],256],7544:[[1085],256],7579:[[594],256],7580:[[99],256],7581:[[597],256],7582:[[240],256],7583:[[604],256],7584:[[102],256],7585:[[607],256],7586:[[609],256],7587:[[613],256],7588:[[616],256],7589:[[617],256],7590:[[618],256],7591:[[7547],256],7592:[[669],256],7593:[[621],256],7594:[[7557],256],7595:[[671],256],7596:[[625],256],7597:[[624],256],7598:[[626],256],7599:[[627],256],7600:[[628],256],7601:[[629],256],7602:[[632],256],7603:[[642],256],7604:[[643],256],7605:[[427],256],7606:[[649],256],7607:[[650],256],7608:[[7452],256],7609:[[651],256],7610:[[652],256],7611:[[122],256],7612:[[656],256],7613:[[657],256],7614:[[658],256],7615:[[952],256],7616:[,230],7617:[,230],7618:[,220],7619:[,230],7620:[,230],7621:[,230],7622:[,230],7623:[,230],7624:[,230],7625:[,230],7626:[,220],7627:[,230],7628:[,230],7629:[,234],7630:[,214],7631:[,220],7632:[,202],7633:[,230],7634:[,230],7635:[,230],7636:[,230],7637:[,230],7638:[,230],7639:[,230],7640:[,230],7641:[,230],7642:[,230],7643:[,230],7644:[,230],7645:[,230],7646:[,230],7647:[,230],7648:[,230],7649:[,230],7650:[,230],7651:[,230],7652:[,230],7653:[,230],7654:[,230],7676:[,233],7677:[,220],7678:[,230],7679:[,220]},
-       7680:{7680:[[65,805]],7681:[[97,805]],7682:[[66,775]],7683:[[98,775]],7684:[[66,803]],7685:[[98,803]],7686:[[66,817]],7687:[[98,817]],7688:[[199,769]],7689:[[231,769]],7690:[[68,775]],7691:[[100,775]],7692:[[68,803]],7693:[[100,803]],7694:[[68,817]],7695:[[100,817]],7696:[[68,807]],7697:[[100,807]],7698:[[68,813]],7699:[[100,813]],7700:[[274,768]],7701:[[275,768]],7702:[[274,769]],7703:[[275,769]],7704:[[69,813]],7705:[[101,813]],7706:[[69,816]],7707:[[101,816]],7708:[[552,774]],7709:[[553,774]],7710:[[70,775]],7711:[[102,775]],7712:[[71,772]],7713:[[103,772]],7714:[[72,775]],7715:[[104,775]],7716:[[72,803]],7717:[[104,803]],7718:[[72,776]],7719:[[104,776]],7720:[[72,807]],7721:[[104,807]],7722:[[72,814]],7723:[[104,814]],7724:[[73,816]],7725:[[105,816]],7726:[[207,769]],7727:[[239,769]],7728:[[75,769]],7729:[[107,769]],7730:[[75,803]],7731:[[107,803]],7732:[[75,817]],7733:[[107,817]],7734:[[76,803],,{772:7736}],7735:[[108,803],,{772:7737}],7736:[[7734,772]],7737:[[7735,772]],7738:[[76,817]],7739:[[108,817]],7740:[[76,813]],7741:[[108,813]],7742:[[77,769]],7743:[[109,769]],7744:[[77,775]],7745:[[109,775]],7746:[[77,803]],7747:[[109,803]],7748:[[78,775]],7749:[[110,775]],7750:[[78,803]],7751:[[110,803]],7752:[[78,817]],7753:[[110,817]],7754:[[78,813]],7755:[[110,813]],7756:[[213,769]],7757:[[245,769]],7758:[[213,776]],7759:[[245,776]],7760:[[332,768]],7761:[[333,768]],7762:[[332,769]],7763:[[333,769]],7764:[[80,769]],7765:[[112,769]],7766:[[80,775]],7767:[[112,775]],7768:[[82,775]],7769:[[114,775]],7770:[[82,803],,{772:7772}],7771:[[114,803],,{772:7773}],7772:[[7770,772]],7773:[[7771,772]],7774:[[82,817]],7775:[[114,817]],7776:[[83,775]],7777:[[115,775]],7778:[[83,803],,{775:7784}],7779:[[115,803],,{775:7785}],7780:[[346,775]],7781:[[347,775]],7782:[[352,775]],7783:[[353,775]],7784:[[7778,775]],7785:[[7779,775]],7786:[[84,775]],7787:[[116,775]],7788:[[84,803]],7789:[[116,803]],7790:[[84,817]],7791:[[116,817]],7792:[[84,813]],7793:[[116,813]],7794:[[85,804]],7795:[[117,804]],7796:[[85,816]],7797:[[117,816]],7798:[[85,813]],7799:[[117,813]],7800:[[360,769]],7801:[[361,769]],7802:[[362,776]],7803:[[363,776]],7804:[[86,771]],7805:[[118,771]],7806:[[86,803]],7807:[[118,803]],7808:[[87,768]],7809:[[119,768]],7810:[[87,769]],7811:[[119,769]],7812:[[87,776]],7813:[[119,776]],7814:[[87,775]],7815:[[119,775]],7816:[[87,803]],7817:[[119,803]],7818:[[88,775]],7819:[[120,775]],7820:[[88,776]],7821:[[120,776]],7822:[[89,775]],7823:[[121,775]],7824:[[90,770]],7825:[[122,770]],7826:[[90,803]],7827:[[122,803]],7828:[[90,817]],7829:[[122,817]],7830:[[104,817]],7831:[[116,776]],7832:[[119,778]],7833:[[121,778]],7834:[[97,702],256],7835:[[383,775]],7840:[[65,803],,{770:7852,774:7862}],7841:[[97,803],,{770:7853,774:7863}],7842:[[65,777]],7843:[[97,777]],7844:[[194,769]],7845:[[226,769]],7846:[[194,768]],7847:[[226,768]],7848:[[194,777]],7849:[[226,777]],7850:[[194,771]],7851:[[226,771]],7852:[[7840,770]],7853:[[7841,770]],7854:[[258,769]],7855:[[259,769]],7856:[[258,768]],7857:[[259,768]],7858:[[258,777]],7859:[[259,777]],7860:[[258,771]],7861:[[259,771]],7862:[[7840,774]],7863:[[7841,774]],7864:[[69,803],,{770:7878}],7865:[[101,803],,{770:7879}],7866:[[69,777]],7867:[[101,777]],7868:[[69,771]],7869:[[101,771]],7870:[[202,769]],7871:[[234,769]],7872:[[202,768]],7873:[[234,768]],7874:[[202,777]],7875:[[234,777]],7876:[[202,771]],7877:[[234,771]],7878:[[7864,770]],7879:[[7865,770]],7880:[[73,777]],7881:[[105,777]],7882:[[73,803]],7883:[[105,803]],7884:[[79,803],,{770:7896}],7885:[[111,803],,{770:7897}],7886:[[79,777]],7887:[[111,777]],7888:[[212,769]],7889:[[244,769]],7890:[[212,768]],7891:[[244,768]],7892:[[212,777]],7893:[[244,777]],7894:[[212,771]],7895:[[244,771]],7896:[[7884,770]],7897:[[7885,770]],7898:[[416,769]],7899:[[417,769]],7900:[[416,768]],7901:[[417,768]],7902:[[416,777]],7903:[[417,777]],7904:[[416,771]],7905:[[417,771]],7906:[[416,803]],7907:[[417,803]],7908:[[85,803]],7909:[[117,803]],7910:[[85,777]],7911:[[117,777]],7912:[[431,769]],7913:[[432,769]],7914:[[431,768]],7915:[[432,768]],7916:[[431,777]],7917:[[432,777]],7918:[[431,771]],7919:[[432,771]],7920:[[431,803]],7921:[[432,803]],7922:[[89,768]],7923:[[121,768]],7924:[[89,803]],7925:[[121,803]],7926:[[89,777]],7927:[[121,777]],7928:[[89,771]],7929:[[121,771]]},
-       7936:{7936:[[945,787],,{768:7938,769:7940,834:7942,837:8064}],7937:[[945,788],,{768:7939,769:7941,834:7943,837:8065}],7938:[[7936,768],,{837:8066}],7939:[[7937,768],,{837:8067}],7940:[[7936,769],,{837:8068}],7941:[[7937,769],,{837:8069}],7942:[[7936,834],,{837:8070}],7943:[[7937,834],,{837:8071}],7944:[[913,787],,{768:7946,769:7948,834:7950,837:8072}],7945:[[913,788],,{768:7947,769:7949,834:7951,837:8073}],7946:[[7944,768],,{837:8074}],7947:[[7945,768],,{837:8075}],7948:[[7944,769],,{837:8076}],7949:[[7945,769],,{837:8077}],7950:[[7944,834],,{837:8078}],7951:[[7945,834],,{837:8079}],7952:[[949,787],,{768:7954,769:7956}],7953:[[949,788],,{768:7955,769:7957}],7954:[[7952,768]],7955:[[7953,768]],7956:[[7952,769]],7957:[[7953,769]],7960:[[917,787],,{768:7962,769:7964}],7961:[[917,788],,{768:7963,769:7965}],7962:[[7960,768]],7963:[[7961,768]],7964:[[7960,769]],7965:[[7961,769]],7968:[[951,787],,{768:7970,769:7972,834:7974,837:8080}],7969:[[951,788],,{768:7971,769:7973,834:7975,837:8081}],7970:[[7968,768],,{837:8082}],7971:[[7969,768],,{837:8083}],7972:[[7968,769],,{837:8084}],7973:[[7969,769],,{837:8085}],7974:[[7968,834],,{837:8086}],7975:[[7969,834],,{837:8087}],7976:[[919,787],,{768:7978,769:7980,834:7982,837:8088}],7977:[[919,788],,{768:7979,769:7981,834:7983,837:8089}],7978:[[7976,768],,{837:8090}],7979:[[7977,768],,{837:8091}],7980:[[7976,769],,{837:8092}],7981:[[7977,769],,{837:8093}],7982:[[7976,834],,{837:8094}],7983:[[7977,834],,{837:8095}],7984:[[953,787],,{768:7986,769:7988,834:7990}],7985:[[953,788],,{768:7987,769:7989,834:7991}],7986:[[7984,768]],7987:[[7985,768]],7988:[[7984,769]],7989:[[7985,769]],7990:[[7984,834]],7991:[[7985,834]],7992:[[921,787],,{768:7994,769:7996,834:7998}],7993:[[921,788],,{768:7995,769:7997,834:7999}],7994:[[7992,768]],7995:[[7993,768]],7996:[[7992,769]],7997:[[7993,769]],7998:[[7992,834]],7999:[[7993,834]],8000:[[959,787],,{768:8002,769:8004}],8001:[[959,788],,{768:8003,769:8005}],8002:[[8000,768]],8003:[[8001,768]],8004:[[8000,769]],8005:[[8001,769]],8008:[[927,787],,{768:8010,769:8012}],8009:[[927,788],,{768:8011,769:8013}],8010:[[8008,768]],8011:[[8009,768]],8012:[[8008,769]],8013:[[8009,769]],8016:[[965,787],,{768:8018,769:8020,834:8022}],8017:[[965,788],,{768:8019,769:8021,834:8023}],8018:[[8016,768]],8019:[[8017,768]],8020:[[8016,769]],8021:[[8017,769]],8022:[[8016,834]],8023:[[8017,834]],8025:[[933,788],,{768:8027,769:8029,834:8031}],8027:[[8025,768]],8029:[[8025,769]],8031:[[8025,834]],8032:[[969,787],,{768:8034,769:8036,834:8038,837:8096}],8033:[[969,788],,{768:8035,769:8037,834:8039,837:8097}],8034:[[8032,768],,{837:8098}],8035:[[8033,768],,{837:8099}],8036:[[8032,769],,{837:8100}],8037:[[8033,769],,{837:8101}],8038:[[8032,834],,{837:8102}],8039:[[8033,834],,{837:8103}],8040:[[937,787],,{768:8042,769:8044,834:8046,837:8104}],8041:[[937,788],,{768:8043,769:8045,834:8047,837:8105}],8042:[[8040,768],,{837:8106}],8043:[[8041,768],,{837:8107}],8044:[[8040,769],,{837:8108}],8045:[[8041,769],,{837:8109}],8046:[[8040,834],,{837:8110}],8047:[[8041,834],,{837:8111}],8048:[[945,768],,{837:8114}],8049:[[940]],8050:[[949,768]],8051:[[941]],8052:[[951,768],,{837:8130}],8053:[[942]],8054:[[953,768]],8055:[[943]],8056:[[959,768]],8057:[[972]],8058:[[965,768]],8059:[[973]],8060:[[969,768],,{837:8178}],8061:[[974]],8064:[[7936,837]],8065:[[7937,837]],8066:[[7938,837]],8067:[[7939,837]],8068:[[7940,837]],8069:[[7941,837]],8070:[[7942,837]],8071:[[7943,837]],8072:[[7944,837]],8073:[[7945,837]],8074:[[7946,837]],8075:[[7947,837]],8076:[[7948,837]],8077:[[7949,837]],8078:[[7950,837]],8079:[[7951,837]],8080:[[7968,837]],8081:[[7969,837]],8082:[[7970,837]],8083:[[7971,837]],8084:[[7972,837]],8085:[[7973,837]],8086:[[7974,837]],8087:[[7975,837]],8088:[[7976,837]],8089:[[7977,837]],8090:[[7978,837]],8091:[[7979,837]],8092:[[7980,837]],8093:[[7981,837]],8094:[[7982,837]],8095:[[7983,837]],8096:[[8032,837]],8097:[[8033,837]],8098:[[8034,837]],8099:[[8035,837]],8100:[[8036,837]],8101:[[8037,837]],8102:[[8038,837]],8103:[[8039,837]],8104:[[8040,837]],8105:[[8041,837]],8106:[[8042,837]],8107:[[8043,837]],8108:[[8044,837]],8109:[[8045,837]],8110:[[8046,837]],8111:[[8047,837]],8112:[[945,774]],8113:[[945,772]],8114:[[8048,837]],8115:[[945,837]],8116:[[940,837]],8118:[[945,834],,{837:8119}],8119:[[8118,837]],8120:[[913,774]],8121:[[913,772]],8122:[[913,768]],8123:[[902]],8124:[[913,837]],8125:[[32,787],256],8126:[[953]],8127:[[32,787],256,{768:8141,769:8142,834:8143}],8128:[[32,834],256],8129:[[168,834]],8130:[[8052,837]],8131:[[951,837]],8132:[[942,837]],8134:[[951,834],,{837:8135}],8135:[[8134,837]],8136:[[917,768]],8137:[[904]],8138:[[919,768]],8139:[[905]],8140:[[919,837]],8141:[[8127,768]],8142:[[8127,769]],8143:[[8127,834]],8144:[[953,774]],8145:[[953,772]],8146:[[970,768]],8147:[[912]],8150:[[953,834]],8151:[[970,834]],8152:[[921,774]],8153:[[921,772]],8154:[[921,768]],8155:[[906]],8157:[[8190,768]],8158:[[8190,769]],8159:[[8190,834]],8160:[[965,774]],8161:[[965,772]],8162:[[971,768]],8163:[[944]],8164:[[961,787]],8165:[[961,788]],8166:[[965,834]],8167:[[971,834]],8168:[[933,774]],8169:[[933,772]],8170:[[933,768]],8171:[[910]],8172:[[929,788]],8173:[[168,768]],8174:[[901]],8175:[[96]],8178:[[8060,837]],8179:[[969,837]],8180:[[974,837]],8182:[[969,834],,{837:8183}],8183:[[8182,837]],8184:[[927,768]],8185:[[908]],8186:[[937,768]],8187:[[911]],8188:[[937,837]],8189:[[180]],8190:[[32,788],256,{768:8157,769:8158,834:8159}]},
-       8192:{8192:[[8194]],8193:[[8195]],8194:[[32],256],8195:[[32],256],8196:[[32],256],8197:[[32],256],8198:[[32],256],8199:[[32],256],8200:[[32],256],8201:[[32],256],8202:[[32],256],8209:[[8208],256],8215:[[32,819],256],8228:[[46],256],8229:[[46,46],256],8230:[[46,46,46],256],8239:[[32],256],8243:[[8242,8242],256],8244:[[8242,8242,8242],256],8246:[[8245,8245],256],8247:[[8245,8245,8245],256],8252:[[33,33],256],8254:[[32,773],256],8263:[[63,63],256],8264:[[63,33],256],8265:[[33,63],256],8279:[[8242,8242,8242,8242],256],8287:[[32],256],8304:[[48],256],8305:[[105],256],8308:[[52],256],8309:[[53],256],8310:[[54],256],8311:[[55],256],8312:[[56],256],8313:[[57],256],8314:[[43],256],8315:[[8722],256],8316:[[61],256],8317:[[40],256],8318:[[41],256],8319:[[110],256],8320:[[48],256],8321:[[49],256],8322:[[50],256],8323:[[51],256],8324:[[52],256],8325:[[53],256],8326:[[54],256],8327:[[55],256],8328:[[56],256],8329:[[57],256],8330:[[43],256],8331:[[8722],256],8332:[[61],256],8333:[[40],256],8334:[[41],256],8336:[[97],256],8337:[[101],256],8338:[[111],256],8339:[[120],256],8340:[[601],256],8341:[[104],256],8342:[[107],256],8343:[[108],256],8344:[[109],256],8345:[[110],256],8346:[[112],256],8347:[[115],256],8348:[[116],256],8360:[[82,115],256],8400:[,230],8401:[,230],8402:[,1],8403:[,1],8404:[,230],8405:[,230],8406:[,230],8407:[,230],8408:[,1],8409:[,1],8410:[,1],8411:[,230],8412:[,230],8417:[,230],8421:[,1],8422:[,1],8423:[,230],8424:[,220],8425:[,230],8426:[,1],8427:[,1],8428:[,220],8429:[,220],8430:[,220],8431:[,220],8432:[,230]},
-       8448:{8448:[[97,47,99],256],8449:[[97,47,115],256],8450:[[67],256],8451:[[176,67],256],8453:[[99,47,111],256],8454:[[99,47,117],256],8455:[[400],256],8457:[[176,70],256],8458:[[103],256],8459:[[72],256],8460:[[72],256],8461:[[72],256],8462:[[104],256],8463:[[295],256],8464:[[73],256],8465:[[73],256],8466:[[76],256],8467:[[108],256],8469:[[78],256],8470:[[78,111],256],8473:[[80],256],8474:[[81],256],8475:[[82],256],8476:[[82],256],8477:[[82],256],8480:[[83,77],256],8481:[[84,69,76],256],8482:[[84,77],256],8484:[[90],256],8486:[[937]],8488:[[90],256],8490:[[75]],8491:[[197]],8492:[[66],256],8493:[[67],256],8495:[[101],256],8496:[[69],256],8497:[[70],256],8499:[[77],256],8500:[[111],256],8501:[[1488],256],8502:[[1489],256],8503:[[1490],256],8504:[[1491],256],8505:[[105],256],8507:[[70,65,88],256],8508:[[960],256],8509:[[947],256],8510:[[915],256],8511:[[928],256],8512:[[8721],256],8517:[[68],256],8518:[[100],256],8519:[[101],256],8520:[[105],256],8521:[[106],256],8528:[[49,8260,55],256],8529:[[49,8260,57],256],8530:[[49,8260,49,48],256],8531:[[49,8260,51],256],8532:[[50,8260,51],256],8533:[[49,8260,53],256],8534:[[50,8260,53],256],8535:[[51,8260,53],256],8536:[[52,8260,53],256],8537:[[49,8260,54],256],8538:[[53,8260,54],256],8539:[[49,8260,56],256],8540:[[51,8260,56],256],8541:[[53,8260,56],256],8542:[[55,8260,56],256],8543:[[49,8260],256],8544:[[73],256],8545:[[73,73],256],8546:[[73,73,73],256],8547:[[73,86],256],8548:[[86],256],8549:[[86,73],256],8550:[[86,73,73],256],8551:[[86,73,73,73],256],8552:[[73,88],256],8553:[[88],256],8554:[[88,73],256],8555:[[88,73,73],256],8556:[[76],256],8557:[[67],256],8558:[[68],256],8559:[[77],256],8560:[[105],256],8561:[[105,105],256],8562:[[105,105,105],256],8563:[[105,118],256],8564:[[118],256],8565:[[118,105],256],8566:[[118,105,105],256],8567:[[118,105,105,105],256],8568:[[105,120],256],8569:[[120],256],8570:[[120,105],256],8571:[[120,105,105],256],8572:[[108],256],8573:[[99],256],8574:[[100],256],8575:[[109],256],8585:[[48,8260,51],256],8592:[,,{824:8602}],8594:[,,{824:8603}],8596:[,,{824:8622}],8602:[[8592,824]],8603:[[8594,824]],8622:[[8596,824]],8653:[[8656,824]],8654:[[8660,824]],8655:[[8658,824]],8656:[,,{824:8653}],8658:[,,{824:8655}],8660:[,,{824:8654}]},
-       8704:{8707:[,,{824:8708}],8708:[[8707,824]],8712:[,,{824:8713}],8713:[[8712,824]],8715:[,,{824:8716}],8716:[[8715,824]],8739:[,,{824:8740}],8740:[[8739,824]],8741:[,,{824:8742}],8742:[[8741,824]],8748:[[8747,8747],256],8749:[[8747,8747,8747],256],8751:[[8750,8750],256],8752:[[8750,8750,8750],256],8764:[,,{824:8769}],8769:[[8764,824]],8771:[,,{824:8772}],8772:[[8771,824]],8773:[,,{824:8775}],8775:[[8773,824]],8776:[,,{824:8777}],8777:[[8776,824]],8781:[,,{824:8813}],8800:[[61,824]],8801:[,,{824:8802}],8802:[[8801,824]],8804:[,,{824:8816}],8805:[,,{824:8817}],8813:[[8781,824]],8814:[[60,824]],8815:[[62,824]],8816:[[8804,824]],8817:[[8805,824]],8818:[,,{824:8820}],8819:[,,{824:8821}],8820:[[8818,824]],8821:[[8819,824]],8822:[,,{824:8824}],8823:[,,{824:8825}],8824:[[8822,824]],8825:[[8823,824]],8826:[,,{824:8832}],8827:[,,{824:8833}],8828:[,,{824:8928}],8829:[,,{824:8929}],8832:[[8826,824]],8833:[[8827,824]],8834:[,,{824:8836}],8835:[,,{824:8837}],8836:[[8834,824]],8837:[[8835,824]],8838:[,,{824:8840}],8839:[,,{824:8841}],8840:[[8838,824]],8841:[[8839,824]],8849:[,,{824:8930}],8850:[,,{824:8931}],8866:[,,{824:8876}],8872:[,,{824:8877}],8873:[,,{824:8878}],8875:[,,{824:8879}],8876:[[8866,824]],8877:[[8872,824]],8878:[[8873,824]],8879:[[8875,824]],8882:[,,{824:8938}],8883:[,,{824:8939}],8884:[,,{824:8940}],8885:[,,{824:8941}],8928:[[8828,824]],8929:[[8829,824]],8930:[[8849,824]],8931:[[8850,824]],8938:[[8882,824]],8939:[[8883,824]],8940:[[8884,824]],8941:[[8885,824]]},
-       8960:{9001:[[12296]],9002:[[12297]]},
-       9216:{9312:[[49],256],9313:[[50],256],9314:[[51],256],9315:[[52],256],9316:[[53],256],9317:[[54],256],9318:[[55],256],9319:[[56],256],9320:[[57],256],9321:[[49,48],256],9322:[[49,49],256],9323:[[49,50],256],9324:[[49,51],256],9325:[[49,52],256],9326:[[49,53],256],9327:[[49,54],256],9328:[[49,55],256],9329:[[49,56],256],9330:[[49,57],256],9331:[[50,48],256],9332:[[40,49,41],256],9333:[[40,50,41],256],9334:[[40,51,41],256],9335:[[40,52,41],256],9336:[[40,53,41],256],9337:[[40,54,41],256],9338:[[40,55,41],256],9339:[[40,56,41],256],9340:[[40,57,41],256],9341:[[40,49,48,41],256],9342:[[40,49,49,41],256],9343:[[40,49,50,41],256],9344:[[40,49,51,41],256],9345:[[40,49,52,41],256],9346:[[40,49,53,41],256],9347:[[40,49,54,41],256],9348:[[40,49,55,41],256],9349:[[40,49,56,41],256],9350:[[40,49,57,41],256],9351:[[40,50,48,41],256],9352:[[49,46],256],9353:[[50,46],256],9354:[[51,46],256],9355:[[52,46],256],9356:[[53,46],256],9357:[[54,46],256],9358:[[55,46],256],9359:[[56,46],256],9360:[[57,46],256],9361:[[49,48,46],256],9362:[[49,49,46],256],9363:[[49,50,46],256],9364:[[49,51,46],256],9365:[[49,52,46],256],9366:[[49,53,46],256],9367:[[49,54,46],256],9368:[[49,55,46],256],9369:[[49,56,46],256],9370:[[49,57,46],256],9371:[[50,48,46],256],9372:[[40,97,41],256],9373:[[40,98,41],256],9374:[[40,99,41],256],9375:[[40,100,41],256],9376:[[40,101,41],256],9377:[[40,102,41],256],9378:[[40,103,41],256],9379:[[40,104,41],256],9380:[[40,105,41],256],9381:[[40,106,41],256],9382:[[40,107,41],256],9383:[[40,108,41],256],9384:[[40,109,41],256],9385:[[40,110,41],256],9386:[[40,111,41],256],9387:[[40,112,41],256],9388:[[40,113,41],256],9389:[[40,114,41],256],9390:[[40,115,41],256],9391:[[40,116,41],256],9392:[[40,117,41],256],9393:[[40,118,41],256],9394:[[40,119,41],256],9395:[[40,120,41],256],9396:[[40,121,41],256],9397:[[40,122,41],256],9398:[[65],256],9399:[[66],256],9400:[[67],256],9401:[[68],256],9402:[[69],256],9403:[[70],256],9404:[[71],256],9405:[[72],256],9406:[[73],256],9407:[[74],256],9408:[[75],256],9409:[[76],256],9410:[[77],256],9411:[[78],256],9412:[[79],256],9413:[[80],256],9414:[[81],256],9415:[[82],256],9416:[[83],256],9417:[[84],256],9418:[[85],256],9419:[[86],256],9420:[[87],256],9421:[[88],256],9422:[[89],256],9423:[[90],256],9424:[[97],256],9425:[[98],256],9426:[[99],256],9427:[[100],256],9428:[[101],256],9429:[[102],256],9430:[[103],256],9431:[[104],256],9432:[[105],256],9433:[[106],256],9434:[[107],256],9435:[[108],256],9436:[[109],256],9437:[[110],256],9438:[[111],256],9439:[[112],256],9440:[[113],256],9441:[[114],256],9442:[[115],256],9443:[[116],256],9444:[[117],256],9445:[[118],256],9446:[[119],256],9447:[[120],256],9448:[[121],256],9449:[[122],256],9450:[[48],256]},
-       10752:{10764:[[8747,8747,8747,8747],256],10868:[[58,58,61],256],10869:[[61,61],256],10870:[[61,61,61],256],10972:[[10973,824],512]},
-       11264:{11388:[[106],256],11389:[[86],256],11503:[,230],11504:[,230],11505:[,230]},
-       11520:{11631:[[11617],256],11647:[,9],11744:[,230],11745:[,230],11746:[,230],11747:[,230],11748:[,230],11749:[,230],11750:[,230],11751:[,230],11752:[,230],11753:[,230],11754:[,230],11755:[,230],11756:[,230],11757:[,230],11758:[,230],11759:[,230],11760:[,230],11761:[,230],11762:[,230],11763:[,230],11764:[,230],11765:[,230],11766:[,230],11767:[,230],11768:[,230],11769:[,230],11770:[,230],11771:[,230],11772:[,230],11773:[,230],11774:[,230],11775:[,230]},
-       11776:{11935:[[27597],256],12019:[[40863],256]},
-       12032:{12032:[[19968],256],12033:[[20008],256],12034:[[20022],256],12035:[[20031],256],12036:[[20057],256],12037:[[20101],256],12038:[[20108],256],12039:[[20128],256],12040:[[20154],256],12041:[[20799],256],12042:[[20837],256],12043:[[20843],256],12044:[[20866],256],12045:[[20886],256],12046:[[20907],256],12047:[[20960],256],12048:[[20981],256],12049:[[20992],256],12050:[[21147],256],12051:[[21241],256],12052:[[21269],256],12053:[[21274],256],12054:[[21304],256],12055:[[21313],256],12056:[[21340],256],12057:[[21353],256],12058:[[21378],256],12059:[[21430],256],12060:[[21448],256],12061:[[21475],256],12062:[[22231],256],12063:[[22303],256],12064:[[22763],256],12065:[[22786],256],12066:[[22794],256],12067:[[22805],256],12068:[[22823],256],12069:[[22899],256],12070:[[23376],256],12071:[[23424],256],12072:[[23544],256],12073:[[23567],256],12074:[[23586],256],12075:[[23608],256],12076:[[23662],256],12077:[[23665],256],12078:[[24027],256],12079:[[24037],256],12080:[[24049],256],12081:[[24062],256],12082:[[24178],256],12083:[[24186],256],12084:[[24191],256],12085:[[24308],256],12086:[[24318],256],12087:[[24331],256],12088:[[24339],256],12089:[[24400],256],12090:[[24417],256],12091:[[24435],256],12092:[[24515],256],12093:[[25096],256],12094:[[25142],256],12095:[[25163],256],12096:[[25903],256],12097:[[25908],256],12098:[[25991],256],12099:[[26007],256],12100:[[26020],256],12101:[[26041],256],12102:[[26080],256],12103:[[26085],256],12104:[[26352],256],12105:[[26376],256],12106:[[26408],256],12107:[[27424],256],12108:[[27490],256],12109:[[27513],256],12110:[[27571],256],12111:[[27595],256],12112:[[27604],256],12113:[[27611],256],12114:[[27663],256],12115:[[27668],256],12116:[[27700],256],12117:[[28779],256],12118:[[29226],256],12119:[[29238],256],12120:[[29243],256],12121:[[29247],256],12122:[[29255],256],12123:[[29273],256],12124:[[29275],256],12125:[[29356],256],12126:[[29572],256],12127:[[29577],256],12128:[[29916],256],12129:[[29926],256],12130:[[29976],256],12131:[[29983],256],12132:[[29992],256],12133:[[30000],256],12134:[[30091],256],12135:[[30098],256],12136:[[30326],256],12137:[[30333],256],12138:[[30382],256],12139:[[30399],256],12140:[[30446],256],12141:[[30683],256],12142:[[30690],256],12143:[[30707],256],12144:[[31034],256],12145:[[31160],256],12146:[[31166],256],12147:[[31348],256],12148:[[31435],256],12149:[[31481],256],12150:[[31859],256],12151:[[31992],256],12152:[[32566],256],12153:[[32593],256],12154:[[32650],256],12155:[[32701],256],12156:[[32769],256],12157:[[32780],256],12158:[[32786],256],12159:[[32819],256],12160:[[32895],256],12161:[[32905],256],12162:[[33251],256],12163:[[33258],256],12164:[[33267],256],12165:[[33276],256],12166:[[33292],256],12167:[[33307],256],12168:[[33311],256],12169:[[33390],256],12170:[[33394],256],12171:[[33400],256],12172:[[34381],256],12173:[[34411],256],12174:[[34880],256],12175:[[34892],256],12176:[[34915],256],12177:[[35198],256],12178:[[35211],256],12179:[[35282],256],12180:[[35328],256],12181:[[35895],256],12182:[[35910],256],12183:[[35925],256],12184:[[35960],256],12185:[[35997],256],12186:[[36196],256],12187:[[36208],256],12188:[[36275],256],12189:[[36523],256],12190:[[36554],256],12191:[[36763],256],12192:[[36784],256],12193:[[36789],256],12194:[[37009],256],12195:[[37193],256],12196:[[37318],256],12197:[[37324],256],12198:[[37329],256],12199:[[38263],256],12200:[[38272],256],12201:[[38428],256],12202:[[38582],256],12203:[[38585],256],12204:[[38632],256],12205:[[38737],256],12206:[[38750],256],12207:[[38754],256],12208:[[38761],256],12209:[[38859],256],12210:[[38893],256],12211:[[38899],256],12212:[[38913],256],12213:[[39080],256],12214:[[39131],256],12215:[[39135],256],12216:[[39318],256],12217:[[39321],256],12218:[[39340],256],12219:[[39592],256],12220:[[39640],256],12221:[[39647],256],12222:[[39717],256],12223:[[39727],256],12224:[[39730],256],12225:[[39740],256],12226:[[39770],256],12227:[[40165],256],12228:[[40565],256],12229:[[40575],256],12230:[[40613],256],12231:[[40635],256],12232:[[40643],256],12233:[[40653],256],12234:[[40657],256],12235:[[40697],256],12236:[[40701],256],12237:[[40718],256],12238:[[40723],256],12239:[[40736],256],12240:[[40763],256],12241:[[40778],256],12242:[[40786],256],12243:[[40845],256],12244:[[40860],256],12245:[[40864],256]},
-       12288:{12288:[[32],256],12330:[,218],12331:[,228],12332:[,232],12333:[,222],12334:[,224],12335:[,224],12342:[[12306],256],12344:[[21313],256],12345:[[21316],256],12346:[[21317],256],12358:[,,{12441:12436}],12363:[,,{12441:12364}],12364:[[12363,12441]],12365:[,,{12441:12366}],12366:[[12365,12441]],12367:[,,{12441:12368}],12368:[[12367,12441]],12369:[,,{12441:12370}],12370:[[12369,12441]],12371:[,,{12441:12372}],12372:[[12371,12441]],12373:[,,{12441:12374}],12374:[[12373,12441]],12375:[,,{12441:12376}],12376:[[12375,12441]],12377:[,,{12441:12378}],12378:[[12377,12441]],12379:[,,{12441:12380}],12380:[[12379,12441]],12381:[,,{12441:12382}],12382:[[12381,12441]],12383:[,,{12441:12384}],12384:[[12383,12441]],12385:[,,{12441:12386}],12386:[[12385,12441]],12388:[,,{12441:12389}],12389:[[12388,12441]],12390:[,,{12441:12391}],12391:[[12390,12441]],12392:[,,{12441:12393}],12393:[[12392,12441]],12399:[,,{12441:12400,12442:12401}],12400:[[12399,12441]],12401:[[12399,12442]],12402:[,,{12441:12403,12442:12404}],12403:[[12402,12441]],12404:[[12402,12442]],12405:[,,{12441:12406,12442:12407}],12406:[[12405,12441]],12407:[[12405,12442]],12408:[,,{12441:12409,12442:12410}],12409:[[12408,12441]],12410:[[12408,12442]],12411:[,,{12441:12412,12442:12413}],12412:[[12411,12441]],12413:[[12411,12442]],12436:[[12358,12441]],12441:[,8],12442:[,8],12443:[[32,12441],256],12444:[[32,12442],256],12445:[,,{12441:12446}],12446:[[12445,12441]],12447:[[12424,12426],256],12454:[,,{12441:12532}],12459:[,,{12441:12460}],12460:[[12459,12441]],12461:[,,{12441:12462}],12462:[[12461,12441]],12463:[,,{12441:12464}],12464:[[12463,12441]],12465:[,,{12441:12466}],12466:[[12465,12441]],12467:[,,{12441:12468}],12468:[[12467,12441]],12469:[,,{12441:12470}],12470:[[12469,12441]],12471:[,,{12441:12472}],12472:[[12471,12441]],12473:[,,{12441:12474}],12474:[[12473,12441]],12475:[,,{12441:12476}],12476:[[12475,12441]],12477:[,,{12441:12478}],12478:[[12477,12441]],12479:[,,{12441:12480}],12480:[[12479,12441]],12481:[,,{12441:12482}],12482:[[12481,12441]],12484:[,,{12441:12485}],12485:[[12484,12441]],12486:[,,{12441:12487}],12487:[[12486,12441]],12488:[,,{12441:12489}],12489:[[12488,12441]],12495:[,,{12441:12496,12442:12497}],12496:[[12495,12441]],12497:[[12495,12442]],12498:[,,{12441:12499,12442:12500}],12499:[[12498,12441]],12500:[[12498,12442]],12501:[,,{12441:12502,12442:12503}],12502:[[12501,12441]],12503:[[12501,12442]],12504:[,,{12441:12505,12442:12506}],12505:[[12504,12441]],12506:[[12504,12442]],12507:[,,{12441:12508,12442:12509}],12508:[[12507,12441]],12509:[[12507,12442]],12527:[,,{12441:12535}],12528:[,,{12441:12536}],12529:[,,{12441:12537}],12530:[,,{12441:12538}],12532:[[12454,12441]],12535:[[12527,12441]],12536:[[12528,12441]],12537:[[12529,12441]],12538:[[12530,12441]],12541:[,,{12441:12542}],12542:[[12541,12441]],12543:[[12467,12488],256]},
-       12544:{12593:[[4352],256],12594:[[4353],256],12595:[[4522],256],12596:[[4354],256],12597:[[4524],256],12598:[[4525],256],12599:[[4355],256],12600:[[4356],256],12601:[[4357],256],12602:[[4528],256],12603:[[4529],256],12604:[[4530],256],12605:[[4531],256],12606:[[4532],256],12607:[[4533],256],12608:[[4378],256],12609:[[4358],256],12610:[[4359],256],12611:[[4360],256],12612:[[4385],256],12613:[[4361],256],12614:[[4362],256],12615:[[4363],256],12616:[[4364],256],12617:[[4365],256],12618:[[4366],256],12619:[[4367],256],12620:[[4368],256],12621:[[4369],256],12622:[[4370],256],12623:[[4449],256],12624:[[4450],256],12625:[[4451],256],12626:[[4452],256],12627:[[4453],256],12628:[[4454],256],12629:[[4455],256],12630:[[4456],256],12631:[[4457],256],12632:[[4458],256],12633:[[4459],256],12634:[[4460],256],12635:[[4461],256],12636:[[4462],256],12637:[[4463],256],12638:[[4464],256],12639:[[4465],256],12640:[[4466],256],12641:[[4467],256],12642:[[4468],256],12643:[[4469],256],12644:[[4448],256],12645:[[4372],256],12646:[[4373],256],12647:[[4551],256],12648:[[4552],256],12649:[[4556],256],12650:[[4558],256],12651:[[4563],256],12652:[[4567],256],12653:[[4569],256],12654:[[4380],256],12655:[[4573],256],12656:[[4575],256],12657:[[4381],256],12658:[[4382],256],12659:[[4384],256],12660:[[4386],256],12661:[[4387],256],12662:[[4391],256],12663:[[4393],256],12664:[[4395],256],12665:[[4396],256],12666:[[4397],256],12667:[[4398],256],12668:[[4399],256],12669:[[4402],256],12670:[[4406],256],12671:[[4416],256],12672:[[4423],256],12673:[[4428],256],12674:[[4593],256],12675:[[4594],256],12676:[[4439],256],12677:[[4440],256],12678:[[4441],256],12679:[[4484],256],12680:[[4485],256],12681:[[4488],256],12682:[[4497],256],12683:[[4498],256],12684:[[4500],256],12685:[[4510],256],12686:[[4513],256],12690:[[19968],256],12691:[[20108],256],12692:[[19977],256],12693:[[22235],256],12694:[[19978],256],12695:[[20013],256],12696:[[19979],256],12697:[[30002],256],12698:[[20057],256],12699:[[19993],256],12700:[[19969],256],12701:[[22825],256],12702:[[22320],256],12703:[[20154],256]},
-       12800:{12800:[[40,4352,41],256],12801:[[40,4354,41],256],12802:[[40,4355,41],256],12803:[[40,4357,41],256],12804:[[40,4358,41],256],12805:[[40,4359,41],256],12806:[[40,4361,41],256],12807:[[40,4363,41],256],12808:[[40,4364,41],256],12809:[[40,4366,41],256],12810:[[40,4367,41],256],12811:[[40,4368,41],256],12812:[[40,4369,41],256],12813:[[40,4370,41],256],12814:[[40,4352,4449,41],256],12815:[[40,4354,4449,41],256],12816:[[40,4355,4449,41],256],12817:[[40,4357,4449,41],256],12818:[[40,4358,4449,41],256],12819:[[40,4359,4449,41],256],12820:[[40,4361,4449,41],256],12821:[[40,4363,4449,41],256],12822:[[40,4364,4449,41],256],12823:[[40,4366,4449,41],256],12824:[[40,4367,4449,41],256],12825:[[40,4368,4449,41],256],12826:[[40,4369,4449,41],256],12827:[[40,4370,4449,41],256],12828:[[40,4364,4462,41],256],12829:[[40,4363,4457,4364,4453,4523,41],256],12830:[[40,4363,4457,4370,4462,41],256],12832:[[40,19968,41],256],12833:[[40,20108,41],256],12834:[[40,19977,41],256],12835:[[40,22235,41],256],12836:[[40,20116,41],256],12837:[[40,20845,41],256],12838:[[40,19971,41],256],12839:[[40,20843,41],256],12840:[[40,20061,41],256],12841:[[40,21313,41],256],12842:[[40,26376,41],256],12843:[[40,28779,41],256],12844:[[40,27700,41],256],12845:[[40,26408,41],256],12846:[[40,37329,41],256],12847:[[40,22303,41],256],12848:[[40,26085,41],256],12849:[[40,26666,41],256],12850:[[40,26377,41],256],12851:[[40,31038,41],256],12852:[[40,21517,41],256],12853:[[40,29305,41],256],12854:[[40,36001,41],256],12855:[[40,31069,41],256],12856:[[40,21172,41],256],12857:[[40,20195,41],256],12858:[[40,21628,41],256],12859:[[40,23398,41],256],12860:[[40,30435,41],256],12861:[[40,20225,41],256],12862:[[40,36039,41],256],12863:[[40,21332,41],256],12864:[[40,31085,41],256],12865:[[40,20241,41],256],12866:[[40,33258,41],256],12867:[[40,33267,41],256],12868:[[21839],256],12869:[[24188],256],12870:[[25991],256],12871:[[31631],256],12880:[[80,84,69],256],12881:[[50,49],256],12882:[[50,50],256],12883:[[50,51],256],12884:[[50,52],256],12885:[[50,53],256],12886:[[50,54],256],12887:[[50,55],256],12888:[[50,56],256],12889:[[50,57],256],12890:[[51,48],256],12891:[[51,49],256],12892:[[51,50],256],12893:[[51,51],256],12894:[[51,52],256],12895:[[51,53],256],12896:[[4352],256],12897:[[4354],256],12898:[[4355],256],12899:[[4357],256],12900:[[4358],256],12901:[[4359],256],12902:[[4361],256],12903:[[4363],256],12904:[[4364],256],12905:[[4366],256],12906:[[4367],256],12907:[[4368],256],12908:[[4369],256],12909:[[4370],256],12910:[[4352,4449],256],12911:[[4354,4449],256],12912:[[4355,4449],256],12913:[[4357,4449],256],12914:[[4358,4449],256],12915:[[4359,4449],256],12916:[[4361,4449],256],12917:[[4363,4449],256],12918:[[4364,4449],256],12919:[[4366,4449],256],12920:[[4367,4449],256],12921:[[4368,4449],256],12922:[[4369,4449],256],12923:[[4370,4449],256],12924:[[4366,4449,4535,4352,4457],256],12925:[[4364,4462,4363,4468],256],12926:[[4363,4462],256],12928:[[19968],256],12929:[[20108],256],12930:[[19977],256],12931:[[22235],256],12932:[[20116],256],12933:[[20845],256],12934:[[19971],256],12935:[[20843],256],12936:[[20061],256],12937:[[21313],256],12938:[[26376],256],12939:[[28779],256],12940:[[27700],256],12941:[[26408],256],12942:[[37329],256],12943:[[22303],256],12944:[[26085],256],12945:[[26666],256],12946:[[26377],256],12947:[[31038],256],12948:[[21517],256],12949:[[29305],256],12950:[[36001],256],12951:[[31069],256],12952:[[21172],256],12953:[[31192],256],12954:[[30007],256],12955:[[22899],256],12956:[[36969],256],12957:[[20778],256],12958:[[21360],256],12959:[[27880],256],12960:[[38917],256],12961:[[20241],256],12962:[[20889],256],12963:[[27491],256],12964:[[19978],256],12965:[[20013],256],12966:[[19979],256],12967:[[24038],256],12968:[[21491],256],12969:[[21307],256],12970:[[23447],256],12971:[[23398],256],12972:[[30435],256],12973:[[20225],256],12974:[[36039],256],12975:[[21332],256],12976:[[22812],256],12977:[[51,54],256],12978:[[51,55],256],12979:[[51,56],256],12980:[[51,57],256],12981:[[52,48],256],12982:[[52,49],256],12983:[[52,50],256],12984:[[52,51],256],12985:[[52,52],256],12986:[[52,53],256],12987:[[52,54],256],12988:[[52,55],256],12989:[[52,56],256],12990:[[52,57],256],12991:[[53,48],256],12992:[[49,26376],256],12993:[[50,26376],256],12994:[[51,26376],256],12995:[[52,26376],256],12996:[[53,26376],256],12997:[[54,26376],256],12998:[[55,26376],256],12999:[[56,26376],256],13000:[[57,26376],256],13001:[[49,48,26376],256],13002:[[49,49,26376],256],13003:[[49,50,26376],256],13004:[[72,103],256],13005:[[101,114,103],256],13006:[[101,86],256],13007:[[76,84,68],256],13008:[[12450],256],13009:[[12452],256],13010:[[12454],256],13011:[[12456],256],13012:[[12458],256],13013:[[12459],256],13014:[[12461],256],13015:[[12463],256],13016:[[12465],256],13017:[[12467],256],13018:[[12469],256],13019:[[12471],256],13020:[[12473],256],13021:[[12475],256],13022:[[12477],256],13023:[[12479],256],13024:[[12481],256],13025:[[12484],256],13026:[[12486],256],13027:[[12488],256],13028:[[12490],256],13029:[[12491],256],13030:[[12492],256],13031:[[12493],256],13032:[[12494],256],13033:[[12495],256],13034:[[12498],256],13035:[[12501],256],13036:[[12504],256],13037:[[12507],256],13038:[[12510],256],13039:[[12511],256],13040:[[12512],256],13041:[[12513],256],13042:[[12514],256],13043:[[12516],256],13044:[[12518],256],13045:[[12520],256],13046:[[12521],256],13047:[[12522],256],13048:[[12523],256],13049:[[12524],256],13050:[[12525],256],13051:[[12527],256],13052:[[12528],256],13053:[[12529],256],13054:[[12530],256]},
-       13056:{13056:[[12450,12497,12540,12488],256],13057:[[12450,12523,12501,12449],256],13058:[[12450,12531,12506,12450],256],13059:[[12450,12540,12523],256],13060:[[12452,12491,12531,12464],256],13061:[[12452,12531,12481],256],13062:[[12454,12457,12531],256],13063:[[12456,12473,12463,12540,12489],256],13064:[[12456,12540,12459,12540],256],13065:[[12458,12531,12473],256],13066:[[12458,12540,12512],256],13067:[[12459,12452,12522],256],13068:[[12459,12521,12483,12488],256],13069:[[12459,12525,12522,12540],256],13070:[[12460,12525,12531],256],13071:[[12460,12531,12510],256],13072:[[12462,12460],256],13073:[[12462,12491,12540],256],13074:[[12461,12517,12522,12540],256],13075:[[12462,12523,12480,12540],256],13076:[[12461,12525],256],13077:[[12461,12525,12464,12521,12512],256],13078:[[12461,12525,12513,12540,12488,12523],256],13079:[[12461,12525,12527,12483,12488],256],13080:[[12464,12521,12512],256],13081:[[12464,12521,12512,12488,12531],256],13082:[[12463,12523,12476,12452,12525],256],13083:[[12463,12525,12540,12493],256],13084:[[12465,12540,12473],256],13085:[[12467,12523,12490],256],13086:[[12467,12540,12509],256],13087:[[12469,12452,12463,12523],256],13088:[[12469,12531,12481,12540,12512],256],13089:[[12471,12522,12531,12464],256],13090:[[12475,12531,12481],256],13091:[[12475,12531,12488],256],13092:[[12480,12540,12473],256],13093:[[12487,12471],256],13094:[[12489,12523],256],13095:[[12488,12531],256],13096:[[12490,12494],256],13097:[[12494,12483,12488],256],13098:[[12495,12452,12484],256],13099:[[12497,12540,12475,12531,12488],256],13100:[[12497,12540,12484],256],13101:[[12496,12540,12524,12523],256],13102:[[12500,12450,12473,12488,12523],256],13103:[[12500,12463,12523],256],13104:[[12500,12467],256],13105:[[12499,12523],256],13106:[[12501,12449,12521,12483,12489],256],13107:[[12501,12451,12540,12488],256],13108:[[12502,12483,12471,12455,12523],256],13109:[[12501,12521,12531],256],13110:[[12504,12463,12479,12540,12523],256],13111:[[12506,12477],256],13112:[[12506,12491,12498],256],13113:[[12504,12523,12484],256],13114:[[12506,12531,12473],256],13115:[[12506,12540,12472],256],13116:[[12505,12540,12479],256],13117:[[12509,12452,12531,12488],256],13118:[[12508,12523,12488],256],13119:[[12507,12531],256],13120:[[12509,12531,12489],256],13121:[[12507,12540,12523],256],13122:[[12507,12540,12531],256],13123:[[12510,12452,12463,12525],256],13124:[[12510,12452,12523],256],13125:[[12510,12483,12495],256],13126:[[12510,12523,12463],256],13127:[[12510,12531,12471,12519,12531],256],13128:[[12511,12463,12525,12531],256],13129:[[12511,12522],256],13130:[[12511,12522,12496,12540,12523],256],13131:[[12513,12460],256],13132:[[12513,12460,12488,12531],256],13133:[[12513,12540,12488,12523],256],13134:[[12516,12540,12489],256],13135:[[12516,12540,12523],256],13136:[[12518,12450,12531],256],13137:[[12522,12483,12488,12523],256],13138:[[12522,12521],256],13139:[[12523,12500,12540],256],13140:[[12523,12540,12502,12523],256],13141:[[12524,12512],256],13142:[[12524,12531,12488,12466,12531],256],13143:[[12527,12483,12488],256],13144:[[48,28857],256],13145:[[49,28857],256],13146:[[50,28857],256],13147:[[51,28857],256],13148:[[52,28857],256],13149:[[53,28857],256],13150:[[54,28857],256],13151:[[55,28857],256],13152:[[56,28857],256],13153:[[57,28857],256],13154:[[49,48,28857],256],13155:[[49,49,28857],256],13156:[[49,50,28857],256],13157:[[49,51,28857],256],13158:[[49,52,28857],256],13159:[[49,53,28857],256],13160:[[49,54,28857],256],13161:[[49,55,28857],256],13162:[[49,56,28857],256],13163:[[49,57,28857],256],13164:[[50,48,28857],256],13165:[[50,49,28857],256],13166:[[50,50,28857],256],13167:[[50,51,28857],256],13168:[[50,52,28857],256],13169:[[104,80,97],256],13170:[[100,97],256],13171:[[65,85],256],13172:[[98,97,114],256],13173:[[111,86],256],13174:[[112,99],256],13175:[[100,109],256],13176:[[100,109,178],256],13177:[[100,109,179],256],13178:[[73,85],256],13179:[[24179,25104],256],13180:[[26157,21644],256],13181:[[22823,27491],256],13182:[[26126,27835],256],13183:[[26666,24335,20250,31038],256],13184:[[112,65],256],13185:[[110,65],256],13186:[[956,65],256],13187:[[109,65],256],13188:[[107,65],256],13189:[[75,66],256],13190:[[77,66],256],13191:[[71,66],256],13192:[[99,97,108],256],13193:[[107,99,97,108],256],13194:[[112,70],256],13195:[[110,70],256],13196:[[956,70],256],13197:[[956,103],256],13198:[[109,103],256],13199:[[107,103],256],13200:[[72,122],256],13201:[[107,72,122],256],13202:[[77,72,122],256],13203:[[71,72,122],256],13204:[[84,72,122],256],13205:[[956,8467],256],13206:[[109,8467],256],13207:[[100,8467],256],13208:[[107,8467],256],13209:[[102,109],256],13210:[[110,109],256],13211:[[956,109],256],13212:[[109,109],256],13213:[[99,109],256],13214:[[107,109],256],13215:[[109,109,178],256],13216:[[99,109,178],256],13217:[[109,178],256],13218:[[107,109,178],256],13219:[[109,109,179],256],13220:[[99,109,179],256],13221:[[109,179],256],13222:[[107,109,179],256],13223:[[109,8725,115],256],13224:[[109,8725,115,178],256],13225:[[80,97],256],13226:[[107,80,97],256],13227:[[77,80,97],256],13228:[[71,80,97],256],13229:[[114,97,100],256],13230:[[114,97,100,8725,115],256],13231:[[114,97,100,8725,115,178],256],13232:[[112,115],256],13233:[[110,115],256],13234:[[956,115],256],13235:[[109,115],256],13236:[[112,86],256],13237:[[110,86],256],13238:[[956,86],256],13239:[[109,86],256],13240:[[107,86],256],13241:[[77,86],256],13242:[[112,87],256],13243:[[110,87],256],13244:[[956,87],256],13245:[[109,87],256],13246:[[107,87],256],13247:[[77,87],256],13248:[[107,937],256],13249:[[77,937],256],13250:[[97,46,109,46],256],13251:[[66,113],256],13252:[[99,99],256],13253:[[99,100],256],13254:[[67,8725,107,103],256],13255:[[67,111,46],256],13256:[[100,66],256],13257:[[71,121],256],13258:[[104,97],256],13259:[[72,80],256],13260:[[105,110],256],13261:[[75,75],256],13262:[[75,77],256],13263:[[107,116],256],13264:[[108,109],256],13265:[[108,110],256],13266:[[108,111,103],256],13267:[[108,120],256],13268:[[109,98],256],13269:[[109,105,108],256],13270:[[109,111,108],256],13271:[[80,72],256],13272:[[112,46,109,46],256],13273:[[80,80,77],256],13274:[[80,82],256],13275:[[115,114],256],13276:[[83,118],256],13277:[[87,98],256],13278:[[86,8725,109],256],13279:[[65,8725,109],256],13280:[[49,26085],256],13281:[[50,26085],256],13282:[[51,26085],256],13283:[[52,26085],256],13284:[[53,26085],256],13285:[[54,26085],256],13286:[[55,26085],256],13287:[[56,26085],256],13288:[[57,26085],256],13289:[[49,48,26085],256],13290:[[49,49,26085],256],13291:[[49,50,26085],256],13292:[[49,51,26085],256],13293:[[49,52,26085],256],13294:[[49,53,26085],256],13295:[[49,54,26085],256],13296:[[49,55,26085],256],13297:[[49,56,26085],256],13298:[[49,57,26085],256],13299:[[50,48,26085],256],13300:[[50,49,26085],256],13301:[[50,50,26085],256],13302:[[50,51,26085],256],13303:[[50,52,26085],256],13304:[[50,53,26085],256],13305:[[50,54,26085],256],13306:[[50,55,26085],256],13307:[[50,56,26085],256],13308:[[50,57,26085],256],13309:[[51,48,26085],256],13310:[[51,49,26085],256],13311:[[103,97,108],256]},
-       42496:{42607:[,230],42612:[,230],42613:[,230],42614:[,230],42615:[,230],42616:[,230],42617:[,230],42618:[,230],42619:[,230],42620:[,230],42621:[,230],42655:[,230],42736:[,230],42737:[,230]},
-       42752:{42864:[[42863],256],43000:[[294],256],43001:[[339],256]},
-       43008:{43014:[,9],43204:[,9],43232:[,230],43233:[,230],43234:[,230],43235:[,230],43236:[,230],43237:[,230],43238:[,230],43239:[,230],43240:[,230],43241:[,230],43242:[,230],43243:[,230],43244:[,230],43245:[,230],43246:[,230],43247:[,230],43248:[,230],43249:[,230]},
-       43264:{43307:[,220],43308:[,220],43309:[,220],43347:[,9],43443:[,7],43456:[,9]},
-       43520:{43696:[,230],43698:[,230],43699:[,230],43700:[,220],43703:[,230],43704:[,230],43710:[,230],43711:[,230],43713:[,230],43766:[,9]},
-       43776:{44013:[,9]},
-       53504:{119134:[[119127,119141],512],119135:[[119128,119141],512],119136:[[119135,119150],512],119137:[[119135,119151],512],119138:[[119135,119152],512],119139:[[119135,119153],512],119140:[[119135,119154],512],119141:[,216],119142:[,216],119143:[,1],119144:[,1],119145:[,1],119149:[,226],119150:[,216],119151:[,216],119152:[,216],119153:[,216],119154:[,216],119163:[,220],119164:[,220],119165:[,220],119166:[,220],119167:[,220],119168:[,220],119169:[,220],119170:[,220],119173:[,230],119174:[,230],119175:[,230],119176:[,230],119177:[,230],119178:[,220],119179:[,220],119210:[,230],119211:[,230],119212:[,230],119213:[,230],119227:[[119225,119141],512],119228:[[119226,119141],512],119229:[[119227,119150],512],119230:[[119228,119150],512],119231:[[119227,119151],512],119232:[[119228,119151],512]},
-       53760:{119362:[,230],119363:[,230],119364:[,230]},
-       54272:{119808:[[65],256],119809:[[66],256],119810:[[67],256],119811:[[68],256],119812:[[69],256],119813:[[70],256],119814:[[71],256],119815:[[72],256],119816:[[73],256],119817:[[74],256],119818:[[75],256],119819:[[76],256],119820:[[77],256],119821:[[78],256],119822:[[79],256],119823:[[80],256],119824:[[81],256],119825:[[82],256],119826:[[83],256],119827:[[84],256],119828:[[85],256],119829:[[86],256],119830:[[87],256],119831:[[88],256],119832:[[89],256],119833:[[90],256],119834:[[97],256],119835:[[98],256],119836:[[99],256],119837:[[100],256],119838:[[101],256],119839:[[102],256],119840:[[103],256],119841:[[104],256],119842:[[105],256],119843:[[106],256],119844:[[107],256],119845:[[108],256],119846:[[109],256],119847:[[110],256],119848:[[111],256],119849:[[112],256],119850:[[113],256],119851:[[114],256],119852:[[115],256],119853:[[116],256],119854:[[117],256],119855:[[118],256],119856:[[119],256],119857:[[120],256],119858:[[121],256],119859:[[122],256],119860:[[65],256],119861:[[66],256],119862:[[67],256],119863:[[68],256],119864:[[69],256],119865:[[70],256],119866:[[71],256],119867:[[72],256],119868:[[73],256],119869:[[74],256],119870:[[75],256],119871:[[76],256],119872:[[77],256],119873:[[78],256],119874:[[79],256],119875:[[80],256],119876:[[81],256],119877:[[82],256],119878:[[83],256],119879:[[84],256],119880:[[85],256],119881:[[86],256],119882:[[87],256],119883:[[88],256],119884:[[89],256],119885:[[90],256],119886:[[97],256],119887:[[98],256],119888:[[99],256],119889:[[100],256],119890:[[101],256],119891:[[102],256],119892:[[103],256],119894:[[105],256],119895:[[106],256],119896:[[107],256],119897:[[108],256],119898:[[109],256],119899:[[110],256],119900:[[111],256],119901:[[112],256],119902:[[113],256],119903:[[114],256],119904:[[115],256],119905:[[116],256],119906:[[117],256],119907:[[118],256],119908:[[119],256],119909:[[120],256],119910:[[121],256],119911:[[122],256],119912:[[65],256],119913:[[66],256],119914:[[67],256],119915:[[68],256],119916:[[69],256],119917:[[70],256],119918:[[71],256],119919:[[72],256],119920:[[73],256],119921:[[74],256],119922:[[75],256],119923:[[76],256],119924:[[77],256],119925:[[78],256],119926:[[79],256],119927:[[80],256],119928:[[81],256],119929:[[82],256],119930:[[83],256],119931:[[84],256],119932:[[85],256],119933:[[86],256],119934:[[87],256],119935:[[88],256],119936:[[89],256],119937:[[90],256],119938:[[97],256],119939:[[98],256],119940:[[99],256],119941:[[100],256],119942:[[101],256],119943:[[102],256],119944:[[103],256],119945:[[104],256],119946:[[105],256],119947:[[106],256],119948:[[107],256],119949:[[108],256],119950:[[109],256],119951:[[110],256],119952:[[111],256],119953:[[112],256],119954:[[113],256],119955:[[114],256],119956:[[115],256],119957:[[116],256],119958:[[117],256],119959:[[118],256],119960:[[119],256],119961:[[120],256],119962:[[121],256],119963:[[122],256],119964:[[65],256],119966:[[67],256],119967:[[68],256],119970:[[71],256],119973:[[74],256],119974:[[75],256],119977:[[78],256],119978:[[79],256],119979:[[80],256],119980:[[81],256],119982:[[83],256],119983:[[84],256],119984:[[85],256],119985:[[86],256],119986:[[87],256],119987:[[88],256],119988:[[89],256],119989:[[90],256],119990:[[97],256],119991:[[98],256],119992:[[99],256],119993:[[100],256],119995:[[102],256],119997:[[104],256],119998:[[105],256],119999:[[106],256],120000:[[107],256],120001:[[108],256],120002:[[109],256],120003:[[110],256],120005:[[112],256],120006:[[113],256],120007:[[114],256],120008:[[115],256],120009:[[116],256],120010:[[117],256],120011:[[118],256],120012:[[119],256],120013:[[120],256],120014:[[121],256],120015:[[122],256],120016:[[65],256],120017:[[66],256],120018:[[67],256],120019:[[68],256],120020:[[69],256],120021:[[70],256],120022:[[71],256],120023:[[72],256],120024:[[73],256],120025:[[74],256],120026:[[75],256],120027:[[76],256],120028:[[77],256],120029:[[78],256],120030:[[79],256],120031:[[80],256],120032:[[81],256],120033:[[82],256],120034:[[83],256],120035:[[84],256],120036:[[85],256],120037:[[86],256],120038:[[87],256],120039:[[88],256],120040:[[89],256],120041:[[90],256],120042:[[97],256],120043:[[98],256],120044:[[99],256],120045:[[100],256],120046:[[101],256],120047:[[102],256],120048:[[103],256],120049:[[104],256],120050:[[105],256],120051:[[106],256],120052:[[107],256],120053:[[108],256],120054:[[109],256],120055:[[110],256],120056:[[111],256],120057:[[112],256],120058:[[113],256],120059:[[114],256],120060:[[115],256],120061:[[116],256],120062:[[117],256],120063:[[118],256]},
-       54528:{120064:[[119],256],120065:[[120],256],120066:[[121],256],120067:[[122],256],120068:[[65],256],120069:[[66],256],120071:[[68],256],120072:[[69],256],120073:[[70],256],120074:[[71],256],120077:[[74],256],120078:[[75],256],120079:[[76],256],120080:[[77],256],120081:[[78],256],120082:[[79],256],120083:[[80],256],120084:[[81],256],120086:[[83],256],120087:[[84],256],120088:[[85],256],120089:[[86],256],120090:[[87],256],120091:[[88],256],120092:[[89],256],120094:[[97],256],120095:[[98],256],120096:[[99],256],120097:[[100],256],120098:[[101],256],120099:[[102],256],120100:[[103],256],120101:[[104],256],120102:[[105],256],120103:[[106],256],120104:[[107],256],120105:[[108],256],120106:[[109],256],120107:[[110],256],120108:[[111],256],120109:[[112],256],120110:[[113],256],120111:[[114],256],120112:[[115],256],120113:[[116],256],120114:[[117],256],120115:[[118],256],120116:[[119],256],120117:[[120],256],120118:[[121],256],120119:[[122],256],120120:[[65],256],120121:[[66],256],120123:[[68],256],120124:[[69],256],120125:[[70],256],120126:[[71],256],120128:[[73],256],120129:[[74],256],120130:[[75],256],120131:[[76],256],120132:[[77],256],120134:[[79],256],120138:[[83],256],120139:[[84],256],120140:[[85],256],120141:[[86],256],120142:[[87],256],120143:[[88],256],120144:[[89],256],120146:[[97],256],120147:[[98],256],120148:[[99],256],120149:[[100],256],120150:[[101],256],120151:[[102],256],120152:[[103],256],120153:[[104],256],120154:[[105],256],120155:[[106],256],120156:[[107],256],120157:[[108],256],120158:[[109],256],120159:[[110],256],120160:[[111],256],120161:[[112],256],120162:[[113],256],120163:[[114],256],120164:[[115],256],120165:[[116],256],120166:[[117],256],120167:[[118],256],120168:[[119],256],120169:[[120],256],120170:[[121],256],120171:[[122],256],120172:[[65],256],120173:[[66],256],120174:[[67],256],120175:[[68],256],120176:[[69],256],120177:[[70],256],120178:[[71],256],120179:[[72],256],120180:[[73],256],120181:[[74],256],120182:[[75],256],120183:[[76],256],120184:[[77],256],120185:[[78],256],120186:[[79],256],120187:[[80],256],120188:[[81],256],120189:[[82],256],120190:[[83],256],120191:[[84],256],120192:[[85],256],120193:[[86],256],120194:[[87],256],120195:[[88],256],120196:[[89],256],120197:[[90],256],120198:[[97],256],120199:[[98],256],120200:[[99],256],120201:[[100],256],120202:[[101],256],120203:[[102],256],120204:[[103],256],120205:[[104],256],120206:[[105],256],120207:[[106],256],120208:[[107],256],120209:[[108],256],120210:[[109],256],120211:[[110],256],120212:[[111],256],120213:[[112],256],120214:[[113],256],120215:[[114],256],120216:[[115],256],120217:[[116],256],120218:[[117],256],120219:[[118],256],120220:[[119],256],120221:[[120],256],120222:[[121],256],120223:[[122],256],120224:[[65],256],120225:[[66],256],120226:[[67],256],120227:[[68],256],120228:[[69],256],120229:[[70],256],120230:[[71],256],120231:[[72],256],120232:[[73],256],120233:[[74],256],120234:[[75],256],120235:[[76],256],120236:[[77],256],120237:[[78],256],120238:[[79],256],120239:[[80],256],120240:[[81],256],120241:[[82],256],120242:[[83],256],120243:[[84],256],120244:[[85],256],120245:[[86],256],120246:[[87],256],120247:[[88],256],120248:[[89],256],120249:[[90],256],120250:[[97],256],120251:[[98],256],120252:[[99],256],120253:[[100],256],120254:[[101],256],120255:[[102],256],120256:[[103],256],120257:[[104],256],120258:[[105],256],120259:[[106],256],120260:[[107],256],120261:[[108],256],120262:[[109],256],120263:[[110],256],120264:[[111],256],120265:[[112],256],120266:[[113],256],120267:[[114],256],120268:[[115],256],120269:[[116],256],120270:[[117],256],120271:[[118],256],120272:[[119],256],120273:[[120],256],120274:[[121],256],120275:[[122],256],120276:[[65],256],120277:[[66],256],120278:[[67],256],120279:[[68],256],120280:[[69],256],120281:[[70],256],120282:[[71],256],120283:[[72],256],120284:[[73],256],120285:[[74],256],120286:[[75],256],120287:[[76],256],120288:[[77],256],120289:[[78],256],120290:[[79],256],120291:[[80],256],120292:[[81],256],120293:[[82],256],120294:[[83],256],120295:[[84],256],120296:[[85],256],120297:[[86],256],120298:[[87],256],120299:[[88],256],120300:[[89],256],120301:[[90],256],120302:[[97],256],120303:[[98],256],120304:[[99],256],120305:[[100],256],120306:[[101],256],120307:[[102],256],120308:[[103],256],120309:[[104],256],120310:[[105],256],120311:[[106],256],120312:[[107],256],120313:[[108],256],120314:[[109],256],120315:[[110],256],120316:[[111],256],120317:[[112],256],120318:[[113],256],120319:[[114],256]},
-       54784:{120320:[[115],256],120321:[[116],256],120322:[[117],256],120323:[[118],256],120324:[[119],256],120325:[[120],256],120326:[[121],256],120327:[[122],256],120328:[[65],256],120329:[[66],256],120330:[[67],256],120331:[[68],256],120332:[[69],256],120333:[[70],256],120334:[[71],256],120335:[[72],256],120336:[[73],256],120337:[[74],256],120338:[[75],256],120339:[[76],256],120340:[[77],256],120341:[[78],256],120342:[[79],256],120343:[[80],256],120344:[[81],256],120345:[[82],256],120346:[[83],256],120347:[[84],256],120348:[[85],256],120349:[[86],256],120350:[[87],256],120351:[[88],256],120352:[[89],256],120353:[[90],256],120354:[[97],256],120355:[[98],256],120356:[[99],256],120357:[[100],256],120358:[[101],256],120359:[[102],256],120360:[[103],256],120361:[[104],256],120362:[[105],256],120363:[[106],256],120364:[[107],256],120365:[[108],256],120366:[[109],256],120367:[[110],256],120368:[[111],256],120369:[[112],256],120370:[[113],256],120371:[[114],256],120372:[[115],256],120373:[[116],256],120374:[[117],256],120375:[[118],256],120376:[[119],256],120377:[[120],256],120378:[[121],256],120379:[[122],256],120380:[[65],256],120381:[[66],256],120382:[[67],256],120383:[[68],256],120384:[[69],256],120385:[[70],256],120386:[[71],256],120387:[[72],256],120388:[[73],256],120389:[[74],256],120390:[[75],256],120391:[[76],256],120392:[[77],256],120393:[[78],256],120394:[[79],256],120395:[[80],256],120396:[[81],256],120397:[[82],256],120398:[[83],256],120399:[[84],256],120400:[[85],256],120401:[[86],256],120402:[[87],256],120403:[[88],256],120404:[[89],256],120405:[[90],256],120406:[[97],256],120407:[[98],256],120408:[[99],256],120409:[[100],256],120410:[[101],256],120411:[[102],256],120412:[[103],256],120413:[[104],256],120414:[[105],256],120415:[[106],256],120416:[[107],256],120417:[[108],256],120418:[[109],256],120419:[[110],256],120420:[[111],256],120421:[[112],256],120422:[[113],256],120423:[[114],256],120424:[[115],256],120425:[[116],256],120426:[[117],256],120427:[[118],256],120428:[[119],256],120429:[[120],256],120430:[[121],256],120431:[[122],256],120432:[[65],256],120433:[[66],256],120434:[[67],256],120435:[[68],256],120436:[[69],256],120437:[[70],256],120438:[[71],256],120439:[[72],256],120440:[[73],256],120441:[[74],256],120442:[[75],256],120443:[[76],256],120444:[[77],256],120445:[[78],256],120446:[[79],256],120447:[[80],256],120448:[[81],256],120449:[[82],256],120450:[[83],256],120451:[[84],256],120452:[[85],256],120453:[[86],256],120454:[[87],256],120455:[[88],256],120456:[[89],256],120457:[[90],256],120458:[[97],256],120459:[[98],256],120460:[[99],256],120461:[[100],256],120462:[[101],256],120463:[[102],256],120464:[[103],256],120465:[[104],256],120466:[[105],256],120467:[[106],256],120468:[[107],256],120469:[[108],256],120470:[[109],256],120471:[[110],256],120472:[[111],256],120473:[[112],256],120474:[[113],256],120475:[[114],256],120476:[[115],256],120477:[[116],256],120478:[[117],256],120479:[[118],256],120480:[[119],256],120481:[[120],256],120482:[[121],256],120483:[[122],256],120484:[[305],256],120485:[[567],256],120488:[[913],256],120489:[[914],256],120490:[[915],256],120491:[[916],256],120492:[[917],256],120493:[[918],256],120494:[[919],256],120495:[[920],256],120496:[[921],256],120497:[[922],256],120498:[[923],256],120499:[[924],256],120500:[[925],256],120501:[[926],256],120502:[[927],256],120503:[[928],256],120504:[[929],256],120505:[[1012],256],120506:[[931],256],120507:[[932],256],120508:[[933],256],120509:[[934],256],120510:[[935],256],120511:[[936],256],120512:[[937],256],120513:[[8711],256],120514:[[945],256],120515:[[946],256],120516:[[947],256],120517:[[948],256],120518:[[949],256],120519:[[950],256],120520:[[951],256],120521:[[952],256],120522:[[953],256],120523:[[954],256],120524:[[955],256],120525:[[956],256],120526:[[957],256],120527:[[958],256],120528:[[959],256],120529:[[960],256],120530:[[961],256],120531:[[962],256],120532:[[963],256],120533:[[964],256],120534:[[965],256],120535:[[966],256],120536:[[967],256],120537:[[968],256],120538:[[969],256],120539:[[8706],256],120540:[[1013],256],120541:[[977],256],120542:[[1008],256],120543:[[981],256],120544:[[1009],256],120545:[[982],256],120546:[[913],256],120547:[[914],256],120548:[[915],256],120549:[[916],256],120550:[[917],256],120551:[[918],256],120552:[[919],256],120553:[[920],256],120554:[[921],256],120555:[[922],256],120556:[[923],256],120557:[[924],256],120558:[[925],256],120559:[[926],256],120560:[[927],256],120561:[[928],256],120562:[[929],256],120563:[[1012],256],120564:[[931],256],120565:[[932],256],120566:[[933],256],120567:[[934],256],120568:[[935],256],120569:[[936],256],120570:[[937],256],120571:[[8711],256],120572:[[945],256],120573:[[946],256],120574:[[947],256],120575:[[948],256]},
-       55040:{120576:[[949],256],120577:[[950],256],120578:[[951],256],120579:[[952],256],120580:[[953],256],120581:[[954],256],120582:[[955],256],120583:[[956],256],120584:[[957],256],120585:[[958],256],120586:[[959],256],120587:[[960],256],120588:[[961],256],120589:[[962],256],120590:[[963],256],120591:[[964],256],120592:[[965],256],120593:[[966],256],120594:[[967],256],120595:[[968],256],120596:[[969],256],120597:[[8706],256],120598:[[1013],256],120599:[[977],256],120600:[[1008],256],120601:[[981],256],120602:[[1009],256],120603:[[982],256],120604:[[913],256],120605:[[914],256],120606:[[915],256],120607:[[916],256],120608:[[917],256],120609:[[918],256],120610:[[919],256],120611:[[920],256],120612:[[921],256],120613:[[922],256],120614:[[923],256],120615:[[924],256],120616:[[925],256],120617:[[926],256],120618:[[927],256],120619:[[928],256],120620:[[929],256],120621:[[1012],256],120622:[[931],256],120623:[[932],256],120624:[[933],256],120625:[[934],256],120626:[[935],256],120627:[[936],256],120628:[[937],256],120629:[[8711],256],120630:[[945],256],120631:[[946],256],120632:[[947],256],120633:[[948],256],120634:[[949],256],120635:[[950],256],120636:[[951],256],120637:[[952],256],120638:[[953],256],120639:[[954],256],120640:[[955],256],120641:[[956],256],120642:[[957],256],120643:[[958],256],120644:[[959],256],120645:[[960],256],120646:[[961],256],120647:[[962],256],120648:[[963],256],120649:[[964],256],120650:[[965],256],120651:[[966],256],120652:[[967],256],120653:[[968],256],120654:[[969],256],120655:[[8706],256],120656:[[1013],256],120657:[[977],256],120658:[[1008],256],120659:[[981],256],120660:[[1009],256],120661:[[982],256],120662:[[913],256],120663:[[914],256],120664:[[915],256],120665:[[916],256],120666:[[917],256],120667:[[918],256],120668:[[919],256],120669:[[920],256],120670:[[921],256],120671:[[922],256],120672:[[923],256],120673:[[924],256],120674:[[925],256],120675:[[926],256],120676:[[927],256],120677:[[928],256],120678:[[929],256],120679:[[1012],256],120680:[[931],256],120681:[[932],256],120682:[[933],256],120683:[[934],256],120684:[[935],256],120685:[[936],256],120686:[[937],256],120687:[[8711],256],120688:[[945],256],120689:[[946],256],120690:[[947],256],120691:[[948],256],120692:[[949],256],120693:[[950],256],120694:[[951],256],120695:[[952],256],120696:[[953],256],120697:[[954],256],120698:[[955],256],120699:[[956],256],120700:[[957],256],120701:[[958],256],120702:[[959],256],120703:[[960],256],120704:[[961],256],120705:[[962],256],120706:[[963],256],120707:[[964],256],120708:[[965],256],120709:[[966],256],120710:[[967],256],120711:[[968],256],120712:[[969],256],120713:[[8706],256],120714:[[1013],256],120715:[[977],256],120716:[[1008],256],120717:[[981],256],120718:[[1009],256],120719:[[982],256],120720:[[913],256],120721:[[914],256],120722:[[915],256],120723:[[916],256],120724:[[917],256],120725:[[918],256],120726:[[919],256],120727:[[920],256],120728:[[921],256],120729:[[922],256],120730:[[923],256],120731:[[924],256],120732:[[925],256],120733:[[926],256],120734:[[927],256],120735:[[928],256],120736:[[929],256],120737:[[1012],256],120738:[[931],256],120739:[[932],256],120740:[[933],256],120741:[[934],256],120742:[[935],256],120743:[[936],256],120744:[[937],256],120745:[[8711],256],120746:[[945],256],120747:[[946],256],120748:[[947],256],120749:[[948],256],120750:[[949],256],120751:[[950],256],120752:[[951],256],120753:[[952],256],120754:[[953],256],120755:[[954],256],120756:[[955],256],120757:[[956],256],120758:[[957],256],120759:[[958],256],120760:[[959],256],120761:[[960],256],120762:[[961],256],120763:[[962],256],120764:[[963],256],120765:[[964],256],120766:[[965],256],120767:[[966],256],120768:[[967],256],120769:[[968],256],120770:[[969],256],120771:[[8706],256],120772:[[1013],256],120773:[[977],256],120774:[[1008],256],120775:[[981],256],120776:[[1009],256],120777:[[982],256],120778:[[988],256],120779:[[989],256],120782:[[48],256],120783:[[49],256],120784:[[50],256],120785:[[51],256],120786:[[52],256],120787:[[53],256],120788:[[54],256],120789:[[55],256],120790:[[56],256],120791:[[57],256],120792:[[48],256],120793:[[49],256],120794:[[50],256],120795:[[51],256],120796:[[52],256],120797:[[53],256],120798:[[54],256],120799:[[55],256],120800:[[56],256],120801:[[57],256],120802:[[48],256],120803:[[49],256],120804:[[50],256],120805:[[51],256],120806:[[52],256],120807:[[53],256],120808:[[54],256],120809:[[55],256],120810:[[56],256],120811:[[57],256],120812:[[48],256],120813:[[49],256],120814:[[50],256],120815:[[51],256],120816:[[52],256],120817:[[53],256],120818:[[54],256],120819:[[55],256],120820:[[56],256],120821:[[57],256],120822:[[48],256],120823:[[49],256],120824:[[50],256],120825:[[51],256],120826:[[52],256],120827:[[53],256],120828:[[54],256],120829:[[55],256],120830:[[56],256],120831:[[57],256]},
-       60928:{126464:[[1575],256],126465:[[1576],256],126466:[[1580],256],126467:[[1583],256],126469:[[1608],256],126470:[[1586],256],126471:[[1581],256],126472:[[1591],256],126473:[[1610],256],126474:[[1603],256],126475:[[1604],256],126476:[[1605],256],126477:[[1606],256],126478:[[1587],256],126479:[[1593],256],126480:[[1601],256],126481:[[1589],256],126482:[[1602],256],126483:[[1585],256],126484:[[1588],256],126485:[[1578],256],126486:[[1579],256],126487:[[1582],256],126488:[[1584],256],126489:[[1590],256],126490:[[1592],256],126491:[[1594],256],126492:[[1646],256],126493:[[1722],256],126494:[[1697],256],126495:[[1647],256],126497:[[1576],256],126498:[[1580],256],126500:[[1607],256],126503:[[1581],256],126505:[[1610],256],126506:[[1603],256],126507:[[1604],256],126508:[[1605],256],126509:[[1606],256],126510:[[1587],256],126511:[[1593],256],126512:[[1601],256],126513:[[1589],256],126514:[[1602],256],126516:[[1588],256],126517:[[1578],256],126518:[[1579],256],126519:[[1582],256],126521:[[1590],256],126523:[[1594],256],126530:[[1580],256],126535:[[1581],256],126537:[[1610],256],126539:[[1604],256],126541:[[1606],256],126542:[[1587],256],126543:[[1593],256],126545:[[1589],256],126546:[[1602],256],126548:[[1588],256],126551:[[1582],256],126553:[[1590],256],126555:[[1594],256],126557:[[1722],256],126559:[[1647],256],126561:[[1576],256],126562:[[1580],256],126564:[[1607],256],126567:[[1581],256],126568:[[1591],256],126569:[[1610],256],126570:[[1603],256],126572:[[1605],256],126573:[[1606],256],126574:[[1587],256],126575:[[1593],256],126576:[[1601],256],126577:[[1589],256],126578:[[1602],256],126580:[[1588],256],126581:[[1578],256],126582:[[1579],256],126583:[[1582],256],126585:[[1590],256],126586:[[1592],256],126587:[[1594],256],126588:[[1646],256],126590:[[1697],256],126592:[[1575],256],126593:[[1576],256],126594:[[1580],256],126595:[[1583],256],126596:[[1607],256],126597:[[1608],256],126598:[[1586],256],126599:[[1581],256],126600:[[1591],256],126601:[[1610],256],126603:[[1604],256],126604:[[1605],256],126605:[[1606],256],126606:[[1587],256],126607:[[1593],256],126608:[[1601],256],126609:[[1589],256],126610:[[1602],256],126611:[[1585],256],126612:[[1588],256],126613:[[1578],256],126614:[[1579],256],126615:[[1582],256],126616:[[1584],256],126617:[[1590],256],126618:[[1592],256],126619:[[1594],256],126625:[[1576],256],126626:[[1580],256],126627:[[1583],256],126629:[[1608],256],126630:[[1586],256],126631:[[1581],256],126632:[[1591],256],126633:[[1610],256],126635:[[1604],256],126636:[[1605],256],126637:[[1606],256],126638:[[1587],256],126639:[[1593],256],126640:[[1601],256],126641:[[1589],256],126642:[[1602],256],126643:[[1585],256],126644:[[1588],256],126645:[[1578],256],126646:[[1579],256],126647:[[1582],256],126648:[[1584],256],126649:[[1590],256],126650:[[1592],256],126651:[[1594],256]},
-       61696:{127232:[[48,46],256],127233:[[48,44],256],127234:[[49,44],256],127235:[[50,44],256],127236:[[51,44],256],127237:[[52,44],256],127238:[[53,44],256],127239:[[54,44],256],127240:[[55,44],256],127241:[[56,44],256],127242:[[57,44],256],127248:[[40,65,41],256],127249:[[40,66,41],256],127250:[[40,67,41],256],127251:[[40,68,41],256],127252:[[40,69,41],256],127253:[[40,70,41],256],127254:[[40,71,41],256],127255:[[40,72,41],256],127256:[[40,73,41],256],127257:[[40,74,41],256],127258:[[40,75,41],256],127259:[[40,76,41],256],127260:[[40,77,41],256],127261:[[40,78,41],256],127262:[[40,79,41],256],127263:[[40,80,41],256],127264:[[40,81,41],256],127265:[[40,82,41],256],127266:[[40,83,41],256],127267:[[40,84,41],256],127268:[[40,85,41],256],127269:[[40,86,41],256],127270:[[40,87,41],256],127271:[[40,88,41],256],127272:[[40,89,41],256],127273:[[40,90,41],256],127274:[[12308,83,12309],256],127275:[[67],256],127276:[[82],256],127277:[[67,68],256],127278:[[87,90],256],127280:[[65],256],127281:[[66],256],127282:[[67],256],127283:[[68],256],127284:[[69],256],127285:[[70],256],127286:[[71],256],127287:[[72],256],127288:[[73],256],127289:[[74],256],127290:[[75],256],127291:[[76],256],127292:[[77],256],127293:[[78],256],127294:[[79],256],127295:[[80],256],127296:[[81],256],127297:[[82],256],127298:[[83],256],127299:[[84],256],127300:[[85],256],127301:[[86],256],127302:[[87],256],127303:[[88],256],127304:[[89],256],127305:[[90],256],127306:[[72,86],256],127307:[[77,86],256],127308:[[83,68],256],127309:[[83,83],256],127310:[[80,80,86],256],127311:[[87,67],256],127338:[[77,67],256],127339:[[77,68],256],127376:[[68,74],256]},
-       61952:{127488:[[12411,12363],256],127489:[[12467,12467],256],127490:[[12469],256],127504:[[25163],256],127505:[[23383],256],127506:[[21452],256],127507:[[12487],256],127508:[[20108],256],127509:[[22810],256],127510:[[35299],256],127511:[[22825],256],127512:[[20132],256],127513:[[26144],256],127514:[[28961],256],127515:[[26009],256],127516:[[21069],256],127517:[[24460],256],127518:[[20877],256],127519:[[26032],256],127520:[[21021],256],127521:[[32066],256],127522:[[29983],256],127523:[[36009],256],127524:[[22768],256],127525:[[21561],256],127526:[[28436],256],127527:[[25237],256],127528:[[25429],256],127529:[[19968],256],127530:[[19977],256],127531:[[36938],256],127532:[[24038],256],127533:[[20013],256],127534:[[21491],256],127535:[[25351],256],127536:[[36208],256],127537:[[25171],256],127538:[[31105],256],127539:[[31354],256],127540:[[21512],256],127541:[[28288],256],127542:[[26377],256],127543:[[26376],256],127544:[[30003],256],127545:[[21106],256],127546:[[21942],256],127552:[[12308,26412,12309],256],127553:[[12308,19977,12309],256],127554:[[12308,20108,12309],256],127555:[[12308,23433,12309],256],127556:[[12308,28857,12309],256],127557:[[12308,25171,12309],256],127558:[[12308,30423,12309],256],127559:[[12308,21213,12309],256],127560:[[12308,25943,12309],256],127568:[[24471],256],127569:[[21487],256]},
-       63488:{194560:[[20029]],194561:[[20024]],194562:[[20033]],194563:[[131362]],194564:[[20320]],194565:[[20398]],194566:[[20411]],194567:[[20482]],194568:[[20602]],194569:[[20633]],194570:[[20711]],194571:[[20687]],194572:[[13470]],194573:[[132666]],194574:[[20813]],194575:[[20820]],194576:[[20836]],194577:[[20855]],194578:[[132380]],194579:[[13497]],194580:[[20839]],194581:[[20877]],194582:[[132427]],194583:[[20887]],194584:[[20900]],194585:[[20172]],194586:[[20908]],194587:[[20917]],194588:[[168415]],194589:[[20981]],194590:[[20995]],194591:[[13535]],194592:[[21051]],194593:[[21062]],194594:[[21106]],194595:[[21111]],194596:[[13589]],194597:[[21191]],194598:[[21193]],194599:[[21220]],194600:[[21242]],194601:[[21253]],194602:[[21254]],194603:[[21271]],194604:[[21321]],194605:[[21329]],194606:[[21338]],194607:[[21363]],194608:[[21373]],194609:[[21375]],194610:[[21375]],194611:[[21375]],194612:[[133676]],194613:[[28784]],194614:[[21450]],194615:[[21471]],194616:[[133987]],194617:[[21483]],194618:[[21489]],194619:[[21510]],194620:[[21662]],194621:[[21560]],194622:[[21576]],194623:[[21608]],194624:[[21666]],194625:[[21750]],194626:[[21776]],194627:[[21843]],194628:[[21859]],194629:[[21892]],194630:[[21892]],194631:[[21913]],194632:[[21931]],194633:[[21939]],194634:[[21954]],194635:[[22294]],194636:[[22022]],194637:[[22295]],194638:[[22097]],194639:[[22132]],194640:[[20999]],194641:[[22766]],194642:[[22478]],194643:[[22516]],194644:[[22541]],194645:[[22411]],194646:[[22578]],194647:[[22577]],194648:[[22700]],194649:[[136420]],194650:[[22770]],194651:[[22775]],194652:[[22790]],194653:[[22810]],194654:[[22818]],194655:[[22882]],194656:[[136872]],194657:[[136938]],194658:[[23020]],194659:[[23067]],194660:[[23079]],194661:[[23000]],194662:[[23142]],194663:[[14062]],194664:[[14076]],194665:[[23304]],194666:[[23358]],194667:[[23358]],194668:[[137672]],194669:[[23491]],194670:[[23512]],194671:[[23527]],194672:[[23539]],194673:[[138008]],194674:[[23551]],194675:[[23558]],194676:[[24403]],194677:[[23586]],194678:[[14209]],194679:[[23648]],194680:[[23662]],194681:[[23744]],194682:[[23693]],194683:[[138724]],194684:[[23875]],194685:[[138726]],194686:[[23918]],194687:[[23915]],194688:[[23932]],194689:[[24033]],194690:[[24034]],194691:[[14383]],194692:[[24061]],194693:[[24104]],194694:[[24125]],194695:[[24169]],194696:[[14434]],194697:[[139651]],194698:[[14460]],194699:[[24240]],194700:[[24243]],194701:[[24246]],194702:[[24266]],194703:[[172946]],194704:[[24318]],194705:[[140081]],194706:[[140081]],194707:[[33281]],194708:[[24354]],194709:[[24354]],194710:[[14535]],194711:[[144056]],194712:[[156122]],194713:[[24418]],194714:[[24427]],194715:[[14563]],194716:[[24474]],194717:[[24525]],194718:[[24535]],194719:[[24569]],194720:[[24705]],194721:[[14650]],194722:[[14620]],194723:[[24724]],194724:[[141012]],194725:[[24775]],194726:[[24904]],194727:[[24908]],194728:[[24910]],194729:[[24908]],194730:[[24954]],194731:[[24974]],194732:[[25010]],194733:[[24996]],194734:[[25007]],194735:[[25054]],194736:[[25074]],194737:[[25078]],194738:[[25104]],194739:[[25115]],194740:[[25181]],194741:[[25265]],194742:[[25300]],194743:[[25424]],194744:[[142092]],194745:[[25405]],194746:[[25340]],194747:[[25448]],194748:[[25475]],194749:[[25572]],194750:[[142321]],194751:[[25634]],194752:[[25541]],194753:[[25513]],194754:[[14894]],194755:[[25705]],194756:[[25726]],194757:[[25757]],194758:[[25719]],194759:[[14956]],194760:[[25935]],194761:[[25964]],194762:[[143370]],194763:[[26083]],194764:[[26360]],194765:[[26185]],194766:[[15129]],194767:[[26257]],194768:[[15112]],194769:[[15076]],194770:[[20882]],194771:[[20885]],194772:[[26368]],194773:[[26268]],194774:[[32941]],194775:[[17369]],194776:[[26391]],194777:[[26395]],194778:[[26401]],194779:[[26462]],194780:[[26451]],194781:[[144323]],194782:[[15177]],194783:[[26618]],194784:[[26501]],194785:[[26706]],194786:[[26757]],194787:[[144493]],194788:[[26766]],194789:[[26655]],194790:[[26900]],194791:[[15261]],194792:[[26946]],194793:[[27043]],194794:[[27114]],194795:[[27304]],194796:[[145059]],194797:[[27355]],194798:[[15384]],194799:[[27425]],194800:[[145575]],194801:[[27476]],194802:[[15438]],194803:[[27506]],194804:[[27551]],194805:[[27578]],194806:[[27579]],194807:[[146061]],194808:[[138507]],194809:[[146170]],194810:[[27726]],194811:[[146620]],194812:[[27839]],194813:[[27853]],194814:[[27751]],194815:[[27926]]},
-       63744:{63744:[[35912]],63745:[[26356]],63746:[[36554]],63747:[[36040]],63748:[[28369]],63749:[[20018]],63750:[[21477]],63751:[[40860]],63752:[[40860]],63753:[[22865]],63754:[[37329]],63755:[[21895]],63756:[[22856]],63757:[[25078]],63758:[[30313]],63759:[[32645]],63760:[[34367]],63761:[[34746]],63762:[[35064]],63763:[[37007]],63764:[[27138]],63765:[[27931]],63766:[[28889]],63767:[[29662]],63768:[[33853]],63769:[[37226]],63770:[[39409]],63771:[[20098]],63772:[[21365]],63773:[[27396]],63774:[[29211]],63775:[[34349]],63776:[[40478]],63777:[[23888]],63778:[[28651]],63779:[[34253]],63780:[[35172]],63781:[[25289]],63782:[[33240]],63783:[[34847]],63784:[[24266]],63785:[[26391]],63786:[[28010]],63787:[[29436]],63788:[[37070]],63789:[[20358]],63790:[[20919]],63791:[[21214]],63792:[[25796]],63793:[[27347]],63794:[[29200]],63795:[[30439]],63796:[[32769]],63797:[[34310]],63798:[[34396]],63799:[[36335]],63800:[[38706]],63801:[[39791]],63802:[[40442]],63803:[[30860]],63804:[[31103]],63805:[[32160]],63806:[[33737]],63807:[[37636]],63808:[[40575]],63809:[[35542]],63810:[[22751]],63811:[[24324]],63812:[[31840]],63813:[[32894]],63814:[[29282]],63815:[[30922]],63816:[[36034]],63817:[[38647]],63818:[[22744]],63819:[[23650]],63820:[[27155]],63821:[[28122]],63822:[[28431]],63823:[[32047]],63824:[[32311]],63825:[[38475]],63826:[[21202]],63827:[[32907]],63828:[[20956]],63829:[[20940]],63830:[[31260]],63831:[[32190]],63832:[[33777]],63833:[[38517]],63834:[[35712]],63835:[[25295]],63836:[[27138]],63837:[[35582]],63838:[[20025]],63839:[[23527]],63840:[[24594]],63841:[[29575]],63842:[[30064]],63843:[[21271]],63844:[[30971]],63845:[[20415]],63846:[[24489]],63847:[[19981]],63848:[[27852]],63849:[[25976]],63850:[[32034]],63851:[[21443]],63852:[[22622]],63853:[[30465]],63854:[[33865]],63855:[[35498]],63856:[[27578]],63857:[[36784]],63858:[[27784]],63859:[[25342]],63860:[[33509]],63861:[[25504]],63862:[[30053]],63863:[[20142]],63864:[[20841]],63865:[[20937]],63866:[[26753]],63867:[[31975]],63868:[[33391]],63869:[[35538]],63870:[[37327]],63871:[[21237]],63872:[[21570]],63873:[[22899]],63874:[[24300]],63875:[[26053]],63876:[[28670]],63877:[[31018]],63878:[[38317]],63879:[[39530]],63880:[[40599]],63881:[[40654]],63882:[[21147]],63883:[[26310]],63884:[[27511]],63885:[[36706]],63886:[[24180]],63887:[[24976]],63888:[[25088]],63889:[[25754]],63890:[[28451]],63891:[[29001]],63892:[[29833]],63893:[[31178]],63894:[[32244]],63895:[[32879]],63896:[[36646]],63897:[[34030]],63898:[[36899]],63899:[[37706]],63900:[[21015]],63901:[[21155]],63902:[[21693]],63903:[[28872]],63904:[[35010]],63905:[[35498]],63906:[[24265]],63907:[[24565]],63908:[[25467]],63909:[[27566]],63910:[[31806]],63911:[[29557]],63912:[[20196]],63913:[[22265]],63914:[[23527]],63915:[[23994]],63916:[[24604]],63917:[[29618]],63918:[[29801]],63919:[[32666]],63920:[[32838]],63921:[[37428]],63922:[[38646]],63923:[[38728]],63924:[[38936]],63925:[[20363]],63926:[[31150]],63927:[[37300]],63928:[[38584]],63929:[[24801]],63930:[[20102]],63931:[[20698]],63932:[[23534]],63933:[[23615]],63934:[[26009]],63935:[[27138]],63936:[[29134]],63937:[[30274]],63938:[[34044]],63939:[[36988]],63940:[[40845]],63941:[[26248]],63942:[[38446]],63943:[[21129]],63944:[[26491]],63945:[[26611]],63946:[[27969]],63947:[[28316]],63948:[[29705]],63949:[[30041]],63950:[[30827]],63951:[[32016]],63952:[[39006]],63953:[[20845]],63954:[[25134]],63955:[[38520]],63956:[[20523]],63957:[[23833]],63958:[[28138]],63959:[[36650]],63960:[[24459]],63961:[[24900]],63962:[[26647]],63963:[[29575]],63964:[[38534]],63965:[[21033]],63966:[[21519]],63967:[[23653]],63968:[[26131]],63969:[[26446]],63970:[[26792]],63971:[[27877]],63972:[[29702]],63973:[[30178]],63974:[[32633]],63975:[[35023]],63976:[[35041]],63977:[[37324]],63978:[[38626]],63979:[[21311]],63980:[[28346]],63981:[[21533]],63982:[[29136]],63983:[[29848]],63984:[[34298]],63985:[[38563]],63986:[[40023]],63987:[[40607]],63988:[[26519]],63989:[[28107]],63990:[[33256]],63991:[[31435]],63992:[[31520]],63993:[[31890]],63994:[[29376]],63995:[[28825]],63996:[[35672]],63997:[[20160]],63998:[[33590]],63999:[[21050]],194816:[[27966]],194817:[[28023]],194818:[[27969]],194819:[[28009]],194820:[[28024]],194821:[[28037]],194822:[[146718]],194823:[[27956]],194824:[[28207]],194825:[[28270]],194826:[[15667]],194827:[[28363]],194828:[[28359]],194829:[[147153]],194830:[[28153]],194831:[[28526]],194832:[[147294]],194833:[[147342]],194834:[[28614]],194835:[[28729]],194836:[[28702]],194837:[[28699]],194838:[[15766]],194839:[[28746]],194840:[[28797]],194841:[[28791]],194842:[[28845]],194843:[[132389]],194844:[[28997]],194845:[[148067]],194846:[[29084]],194847:[[148395]],194848:[[29224]],194849:[[29237]],194850:[[29264]],194851:[[149000]],194852:[[29312]],194853:[[29333]],194854:[[149301]],194855:[[149524]],194856:[[29562]],194857:[[29579]],194858:[[16044]],194859:[[29605]],194860:[[16056]],194861:[[16056]],194862:[[29767]],194863:[[29788]],194864:[[29809]],194865:[[29829]],194866:[[29898]],194867:[[16155]],194868:[[29988]],194869:[[150582]],194870:[[30014]],194871:[[150674]],194872:[[30064]],194873:[[139679]],194874:[[30224]],194875:[[151457]],194876:[[151480]],194877:[[151620]],194878:[[16380]],194879:[[16392]],194880:[[30452]],194881:[[151795]],194882:[[151794]],194883:[[151833]],194884:[[151859]],194885:[[30494]],194886:[[30495]],194887:[[30495]],194888:[[30538]],194889:[[16441]],194890:[[30603]],194891:[[16454]],194892:[[16534]],194893:[[152605]],194894:[[30798]],194895:[[30860]],194896:[[30924]],194897:[[16611]],194898:[[153126]],194899:[[31062]],194900:[[153242]],194901:[[153285]],194902:[[31119]],194903:[[31211]],194904:[[16687]],194905:[[31296]],194906:[[31306]],194907:[[31311]],194908:[[153980]],194909:[[154279]],194910:[[154279]],194911:[[31470]],194912:[[16898]],194913:[[154539]],194914:[[31686]],194915:[[31689]],194916:[[16935]],194917:[[154752]],194918:[[31954]],194919:[[17056]],194920:[[31976]],194921:[[31971]],194922:[[32000]],194923:[[155526]],194924:[[32099]],194925:[[17153]],194926:[[32199]],194927:[[32258]],194928:[[32325]],194929:[[17204]],194930:[[156200]],194931:[[156231]],194932:[[17241]],194933:[[156377]],194934:[[32634]],194935:[[156478]],194936:[[32661]],194937:[[32762]],194938:[[32773]],194939:[[156890]],194940:[[156963]],194941:[[32864]],194942:[[157096]],194943:[[32880]],194944:[[144223]],194945:[[17365]],194946:[[32946]],194947:[[33027]],194948:[[17419]],194949:[[33086]],194950:[[23221]],194951:[[157607]],194952:[[157621]],194953:[[144275]],194954:[[144284]],194955:[[33281]],194956:[[33284]],194957:[[36766]],194958:[[17515]],194959:[[33425]],194960:[[33419]],194961:[[33437]],194962:[[21171]],194963:[[33457]],194964:[[33459]],194965:[[33469]],194966:[[33510]],194967:[[158524]],194968:[[33509]],194969:[[33565]],194970:[[33635]],194971:[[33709]],194972:[[33571]],194973:[[33725]],194974:[[33767]],194975:[[33879]],194976:[[33619]],194977:[[33738]],194978:[[33740]],194979:[[33756]],194980:[[158774]],194981:[[159083]],194982:[[158933]],194983:[[17707]],194984:[[34033]],194985:[[34035]],194986:[[34070]],194987:[[160714]],194988:[[34148]],194989:[[159532]],194990:[[17757]],194991:[[17761]],194992:[[159665]],194993:[[159954]],194994:[[17771]],194995:[[34384]],194996:[[34396]],194997:[[34407]],194998:[[34409]],194999:[[34473]],195000:[[34440]],195001:[[34574]],195002:[[34530]],195003:[[34681]],195004:[[34600]],195005:[[34667]],195006:[[34694]],195007:[[17879]],195008:[[34785]],195009:[[34817]],195010:[[17913]],195011:[[34912]],195012:[[34915]],195013:[[161383]],195014:[[35031]],195015:[[35038]],195016:[[17973]],195017:[[35066]],195018:[[13499]],195019:[[161966]],195020:[[162150]],195021:[[18110]],195022:[[18119]],195023:[[35488]],195024:[[35565]],195025:[[35722]],195026:[[35925]],195027:[[162984]],195028:[[36011]],195029:[[36033]],195030:[[36123]],195031:[[36215]],195032:[[163631]],195033:[[133124]],195034:[[36299]],195035:[[36284]],195036:[[36336]],195037:[[133342]],195038:[[36564]],195039:[[36664]],195040:[[165330]],195041:[[165357]],195042:[[37012]],195043:[[37105]],195044:[[37137]],195045:[[165678]],195046:[[37147]],195047:[[37432]],195048:[[37591]],195049:[[37592]],195050:[[37500]],195051:[[37881]],195052:[[37909]],195053:[[166906]],195054:[[38283]],195055:[[18837]],195056:[[38327]],195057:[[167287]],195058:[[18918]],195059:[[38595]],195060:[[23986]],195061:[[38691]],195062:[[168261]],195063:[[168474]],195064:[[19054]],195065:[[19062]],195066:[[38880]],195067:[[168970]],195068:[[19122]],195069:[[169110]],195070:[[38923]],195071:[[38923]]},
-       64000:{64000:[[20999]],64001:[[24230]],64002:[[25299]],64003:[[31958]],64004:[[23429]],64005:[[27934]],64006:[[26292]],64007:[[36667]],64008:[[34892]],64009:[[38477]],64010:[[35211]],64011:[[24275]],64012:[[20800]],64013:[[21952]],64016:[[22618]],64018:[[26228]],64021:[[20958]],64022:[[29482]],64023:[[30410]],64024:[[31036]],64025:[[31070]],64026:[[31077]],64027:[[31119]],64028:[[38742]],64029:[[31934]],64030:[[32701]],64032:[[34322]],64034:[[35576]],64037:[[36920]],64038:[[37117]],64042:[[39151]],64043:[[39164]],64044:[[39208]],64045:[[40372]],64046:[[37086]],64047:[[38583]],64048:[[20398]],64049:[[20711]],64050:[[20813]],64051:[[21193]],64052:[[21220]],64053:[[21329]],64054:[[21917]],64055:[[22022]],64056:[[22120]],64057:[[22592]],64058:[[22696]],64059:[[23652]],64060:[[23662]],64061:[[24724]],64062:[[24936]],64063:[[24974]],64064:[[25074]],64065:[[25935]],64066:[[26082]],64067:[[26257]],64068:[[26757]],64069:[[28023]],64070:[[28186]],64071:[[28450]],64072:[[29038]],64073:[[29227]],64074:[[29730]],64075:[[30865]],64076:[[31038]],64077:[[31049]],64078:[[31048]],64079:[[31056]],64080:[[31062]],64081:[[31069]],64082:[[31117]],64083:[[31118]],64084:[[31296]],64085:[[31361]],64086:[[31680]],64087:[[32244]],64088:[[32265]],64089:[[32321]],64090:[[32626]],64091:[[32773]],64092:[[33261]],64093:[[33401]],64094:[[33401]],64095:[[33879]],64096:[[35088]],64097:[[35222]],64098:[[35585]],64099:[[35641]],64100:[[36051]],64101:[[36104]],64102:[[36790]],64103:[[36920]],64104:[[38627]],64105:[[38911]],64106:[[38971]],64107:[[24693]],64108:[[148206]],64109:[[33304]],64112:[[20006]],64113:[[20917]],64114:[[20840]],64115:[[20352]],64116:[[20805]],64117:[[20864]],64118:[[21191]],64119:[[21242]],64120:[[21917]],64121:[[21845]],64122:[[21913]],64123:[[21986]],64124:[[22618]],64125:[[22707]],64126:[[22852]],64127:[[22868]],64128:[[23138]],64129:[[23336]],64130:[[24274]],64131:[[24281]],64132:[[24425]],64133:[[24493]],64134:[[24792]],64135:[[24910]],64136:[[24840]],64137:[[24974]],64138:[[24928]],64139:[[25074]],64140:[[25140]],64141:[[25540]],64142:[[25628]],64143:[[25682]],64144:[[25942]],64145:[[26228]],64146:[[26391]],64147:[[26395]],64148:[[26454]],64149:[[27513]],64150:[[27578]],64151:[[27969]],64152:[[28379]],64153:[[28363]],64154:[[28450]],64155:[[28702]],64156:[[29038]],64157:[[30631]],64158:[[29237]],64159:[[29359]],64160:[[29482]],64161:[[29809]],64162:[[29958]],64163:[[30011]],64164:[[30237]],64165:[[30239]],64166:[[30410]],64167:[[30427]],64168:[[30452]],64169:[[30538]],64170:[[30528]],64171:[[30924]],64172:[[31409]],64173:[[31680]],64174:[[31867]],64175:[[32091]],64176:[[32244]],64177:[[32574]],64178:[[32773]],64179:[[33618]],64180:[[33775]],64181:[[34681]],64182:[[35137]],64183:[[35206]],64184:[[35222]],64185:[[35519]],64186:[[35576]],64187:[[35531]],64188:[[35585]],64189:[[35582]],64190:[[35565]],64191:[[35641]],64192:[[35722]],64193:[[36104]],64194:[[36664]],64195:[[36978]],64196:[[37273]],64197:[[37494]],64198:[[38524]],64199:[[38627]],64200:[[38742]],64201:[[38875]],64202:[[38911]],64203:[[38923]],64204:[[38971]],64205:[[39698]],64206:[[40860]],64207:[[141386]],64208:[[141380]],64209:[[144341]],64210:[[15261]],64211:[[16408]],64212:[[16441]],64213:[[152137]],64214:[[154832]],64215:[[163539]],64216:[[40771]],64217:[[40846]],195072:[[38953]],195073:[[169398]],195074:[[39138]],195075:[[19251]],195076:[[39209]],195077:[[39335]],195078:[[39362]],195079:[[39422]],195080:[[19406]],195081:[[170800]],195082:[[39698]],195083:[[40000]],195084:[[40189]],195085:[[19662]],195086:[[19693]],195087:[[40295]],195088:[[172238]],195089:[[19704]],195090:[[172293]],195091:[[172558]],195092:[[172689]],195093:[[40635]],195094:[[19798]],195095:[[40697]],195096:[[40702]],195097:[[40709]],195098:[[40719]],195099:[[40726]],195100:[[40763]],195101:[[173568]]},
-       64256:{64256:[[102,102],256],64257:[[102,105],256],64258:[[102,108],256],64259:[[102,102,105],256],64260:[[102,102,108],256],64261:[[383,116],256],64262:[[115,116],256],64275:[[1396,1398],256],64276:[[1396,1381],256],64277:[[1396,1387],256],64278:[[1406,1398],256],64279:[[1396,1389],256],64285:[[1497,1460],512],64286:[,26],64287:[[1522,1463],512],64288:[[1506],256],64289:[[1488],256],64290:[[1491],256],64291:[[1492],256],64292:[[1499],256],64293:[[1500],256],64294:[[1501],256],64295:[[1512],256],64296:[[1514],256],64297:[[43],256],64298:[[1513,1473],512],64299:[[1513,1474],512],64300:[[64329,1473],512],64301:[[64329,1474],512],64302:[[1488,1463],512],64303:[[1488,1464],512],64304:[[1488,1468],512],64305:[[1489,1468],512],64306:[[1490,1468],512],64307:[[1491,1468],512],64308:[[1492,1468],512],64309:[[1493,1468],512],64310:[[1494,1468],512],64312:[[1496,1468],512],64313:[[1497,1468],512],64314:[[1498,1468],512],64315:[[1499,1468],512],64316:[[1500,1468],512],64318:[[1502,1468],512],64320:[[1504,1468],512],64321:[[1505,1468],512],64323:[[1507,1468],512],64324:[[1508,1468],512],64326:[[1510,1468],512],64327:[[1511,1468],512],64328:[[1512,1468],512],64329:[[1513,1468],512],64330:[[1514,1468],512],64331:[[1493,1465],512],64332:[[1489,1471],512],64333:[[1499,1471],512],64334:[[1508,1471],512],64335:[[1488,1500],256],64336:[[1649],256],64337:[[1649],256],64338:[[1659],256],64339:[[1659],256],64340:[[1659],256],64341:[[1659],256],64342:[[1662],256],64343:[[1662],256],64344:[[1662],256],64345:[[1662],256],64346:[[1664],256],64347:[[1664],256],64348:[[1664],256],64349:[[1664],256],64350:[[1658],256],64351:[[1658],256],64352:[[1658],256],64353:[[1658],256],64354:[[1663],256],64355:[[1663],256],64356:[[1663],256],64357:[[1663],256],64358:[[1657],256],64359:[[1657],256],64360:[[1657],256],64361:[[1657],256],64362:[[1700],256],64363:[[1700],256],64364:[[1700],256],64365:[[1700],256],64366:[[1702],256],64367:[[1702],256],64368:[[1702],256],64369:[[1702],256],64370:[[1668],256],64371:[[1668],256],64372:[[1668],256],64373:[[1668],256],64374:[[1667],256],64375:[[1667],256],64376:[[1667],256],64377:[[1667],256],64378:[[1670],256],64379:[[1670],256],64380:[[1670],256],64381:[[1670],256],64382:[[1671],256],64383:[[1671],256],64384:[[1671],256],64385:[[1671],256],64386:[[1677],256],64387:[[1677],256],64388:[[1676],256],64389:[[1676],256],64390:[[1678],256],64391:[[1678],256],64392:[[1672],256],64393:[[1672],256],64394:[[1688],256],64395:[[1688],256],64396:[[1681],256],64397:[[1681],256],64398:[[1705],256],64399:[[1705],256],64400:[[1705],256],64401:[[1705],256],64402:[[1711],256],64403:[[1711],256],64404:[[1711],256],64405:[[1711],256],64406:[[1715],256],64407:[[1715],256],64408:[[1715],256],64409:[[1715],256],64410:[[1713],256],64411:[[1713],256],64412:[[1713],256],64413:[[1713],256],64414:[[1722],256],64415:[[1722],256],64416:[[1723],256],64417:[[1723],256],64418:[[1723],256],64419:[[1723],256],64420:[[1728],256],64421:[[1728],256],64422:[[1729],256],64423:[[1729],256],64424:[[1729],256],64425:[[1729],256],64426:[[1726],256],64427:[[1726],256],64428:[[1726],256],64429:[[1726],256],64430:[[1746],256],64431:[[1746],256],64432:[[1747],256],64433:[[1747],256],64467:[[1709],256],64468:[[1709],256],64469:[[1709],256],64470:[[1709],256],64471:[[1735],256],64472:[[1735],256],64473:[[1734],256],64474:[[1734],256],64475:[[1736],256],64476:[[1736],256],64477:[[1655],256],64478:[[1739],256],64479:[[1739],256],64480:[[1733],256],64481:[[1733],256],64482:[[1737],256],64483:[[1737],256],64484:[[1744],256],64485:[[1744],256],64486:[[1744],256],64487:[[1744],256],64488:[[1609],256],64489:[[1609],256],64490:[[1574,1575],256],64491:[[1574,1575],256],64492:[[1574,1749],256],64493:[[1574,1749],256],64494:[[1574,1608],256],64495:[[1574,1608],256],64496:[[1574,1735],256],64497:[[1574,1735],256],64498:[[1574,1734],256],64499:[[1574,1734],256],64500:[[1574,1736],256],64501:[[1574,1736],256],64502:[[1574,1744],256],64503:[[1574,1744],256],64504:[[1574,1744],256],64505:[[1574,1609],256],64506:[[1574,1609],256],64507:[[1574,1609],256],64508:[[1740],256],64509:[[1740],256],64510:[[1740],256],64511:[[1740],256]},
-       64512:{64512:[[1574,1580],256],64513:[[1574,1581],256],64514:[[1574,1605],256],64515:[[1574,1609],256],64516:[[1574,1610],256],64517:[[1576,1580],256],64518:[[1576,1581],256],64519:[[1576,1582],256],64520:[[1576,1605],256],64521:[[1576,1609],256],64522:[[1576,1610],256],64523:[[1578,1580],256],64524:[[1578,1581],256],64525:[[1578,1582],256],64526:[[1578,1605],256],64527:[[1578,1609],256],64528:[[1578,1610],256],64529:[[1579,1580],256],64530:[[1579,1605],256],64531:[[1579,1609],256],64532:[[1579,1610],256],64533:[[1580,1581],256],64534:[[1580,1605],256],64535:[[1581,1580],256],64536:[[1581,1605],256],64537:[[1582,1580],256],64538:[[1582,1581],256],64539:[[1582,1605],256],64540:[[1587,1580],256],64541:[[1587,1581],256],64542:[[1587,1582],256],64543:[[1587,1605],256],64544:[[1589,1581],256],64545:[[1589,1605],256],64546:[[1590,1580],256],64547:[[1590,1581],256],64548:[[1590,1582],256],64549:[[1590,1605],256],64550:[[1591,1581],256],64551:[[1591,1605],256],64552:[[1592,1605],256],64553:[[1593,1580],256],64554:[[1593,1605],256],64555:[[1594,1580],256],64556:[[1594,1605],256],64557:[[1601,1580],256],64558:[[1601,1581],256],64559:[[1601,1582],256],64560:[[1601,1605],256],64561:[[1601,1609],256],64562:[[1601,1610],256],64563:[[1602,1581],256],64564:[[1602,1605],256],64565:[[1602,1609],256],64566:[[1602,1610],256],64567:[[1603,1575],256],64568:[[1603,1580],256],64569:[[1603,1581],256],64570:[[1603,1582],256],64571:[[1603,1604],256],64572:[[1603,1605],256],64573:[[1603,1609],256],64574:[[1603,1610],256],64575:[[1604,1580],256],64576:[[1604,1581],256],64577:[[1604,1582],256],64578:[[1604,1605],256],64579:[[1604,1609],256],64580:[[1604,1610],256],64581:[[1605,1580],256],64582:[[1605,1581],256],64583:[[1605,1582],256],64584:[[1605,1605],256],64585:[[1605,1609],256],64586:[[1605,1610],256],64587:[[1606,1580],256],64588:[[1606,1581],256],64589:[[1606,1582],256],64590:[[1606,1605],256],64591:[[1606,1609],256],64592:[[1606,1610],256],64593:[[1607,1580],256],64594:[[1607,1605],256],64595:[[1607,1609],256],64596:[[1607,1610],256],64597:[[1610,1580],256],64598:[[1610,1581],256],64599:[[1610,1582],256],64600:[[1610,1605],256],64601:[[1610,1609],256],64602:[[1610,1610],256],64603:[[1584,1648],256],64604:[[1585,1648],256],64605:[[1609,1648],256],64606:[[32,1612,1617],256],64607:[[32,1613,1617],256],64608:[[32,1614,1617],256],64609:[[32,1615,1617],256],64610:[[32,1616,1617],256],64611:[[32,1617,1648],256],64612:[[1574,1585],256],64613:[[1574,1586],256],64614:[[1574,1605],256],64615:[[1574,1606],256],64616:[[1574,1609],256],64617:[[1574,1610],256],64618:[[1576,1585],256],64619:[[1576,1586],256],64620:[[1576,1605],256],64621:[[1576,1606],256],64622:[[1576,1609],256],64623:[[1576,1610],256],64624:[[1578,1585],256],64625:[[1578,1586],256],64626:[[1578,1605],256],64627:[[1578,1606],256],64628:[[1578,1609],256],64629:[[1578,1610],256],64630:[[1579,1585],256],64631:[[1579,1586],256],64632:[[1579,1605],256],64633:[[1579,1606],256],64634:[[1579,1609],256],64635:[[1579,1610],256],64636:[[1601,1609],256],64637:[[1601,1610],256],64638:[[1602,1609],256],64639:[[1602,1610],256],64640:[[1603,1575],256],64641:[[1603,1604],256],64642:[[1603,1605],256],64643:[[1603,1609],256],64644:[[1603,1610],256],64645:[[1604,1605],256],64646:[[1604,1609],256],64647:[[1604,1610],256],64648:[[1605,1575],256],64649:[[1605,1605],256],64650:[[1606,1585],256],64651:[[1606,1586],256],64652:[[1606,1605],256],64653:[[1606,1606],256],64654:[[1606,1609],256],64655:[[1606,1610],256],64656:[[1609,1648],256],64657:[[1610,1585],256],64658:[[1610,1586],256],64659:[[1610,1605],256],64660:[[1610,1606],256],64661:[[1610,1609],256],64662:[[1610,1610],256],64663:[[1574,1580],256],64664:[[1574,1581],256],64665:[[1574,1582],256],64666:[[1574,1605],256],64667:[[1574,1607],256],64668:[[1576,1580],256],64669:[[1576,1581],256],64670:[[1576,1582],256],64671:[[1576,1605],256],64672:[[1576,1607],256],64673:[[1578,1580],256],64674:[[1578,1581],256],64675:[[1578,1582],256],64676:[[1578,1605],256],64677:[[1578,1607],256],64678:[[1579,1605],256],64679:[[1580,1581],256],64680:[[1580,1605],256],64681:[[1581,1580],256],64682:[[1581,1605],256],64683:[[1582,1580],256],64684:[[1582,1605],256],64685:[[1587,1580],256],64686:[[1587,1581],256],64687:[[1587,1582],256],64688:[[1587,1605],256],64689:[[1589,1581],256],64690:[[1589,1582],256],64691:[[1589,1605],256],64692:[[1590,1580],256],64693:[[1590,1581],256],64694:[[1590,1582],256],64695:[[1590,1605],256],64696:[[1591,1581],256],64697:[[1592,1605],256],64698:[[1593,1580],256],64699:[[1593,1605],256],64700:[[1594,1580],256],64701:[[1594,1605],256],64702:[[1601,1580],256],64703:[[1601,1581],256],64704:[[1601,1582],256],64705:[[1601,1605],256],64706:[[1602,1581],256],64707:[[1602,1605],256],64708:[[1603,1580],256],64709:[[1603,1581],256],64710:[[1603,1582],256],64711:[[1603,1604],256],64712:[[1603,1605],256],64713:[[1604,1580],256],64714:[[1604,1581],256],64715:[[1604,1582],256],64716:[[1604,1605],256],64717:[[1604,1607],256],64718:[[1605,1580],256],64719:[[1605,1581],256],64720:[[1605,1582],256],64721:[[1605,1605],256],64722:[[1606,1580],256],64723:[[1606,1581],256],64724:[[1606,1582],256],64725:[[1606,1605],256],64726:[[1606,1607],256],64727:[[1607,1580],256],64728:[[1607,1605],256],64729:[[1607,1648],256],64730:[[1610,1580],256],64731:[[1610,1581],256],64732:[[1610,1582],256],64733:[[1610,1605],256],64734:[[1610,1607],256],64735:[[1574,1605],256],64736:[[1574,1607],256],64737:[[1576,1605],256],64738:[[1576,1607],256],64739:[[1578,1605],256],64740:[[1578,1607],256],64741:[[1579,1605],256],64742:[[1579,1607],256],64743:[[1587,1605],256],64744:[[1587,1607],256],64745:[[1588,1605],256],64746:[[1588,1607],256],64747:[[1603,1604],256],64748:[[1603,1605],256],64749:[[1604,1605],256],64750:[[1606,1605],256],64751:[[1606,1607],256],64752:[[1610,1605],256],64753:[[1610,1607],256],64754:[[1600,1614,1617],256],64755:[[1600,1615,1617],256],64756:[[1600,1616,1617],256],64757:[[1591,1609],256],64758:[[1591,1610],256],64759:[[1593,1609],256],64760:[[1593,1610],256],64761:[[1594,1609],256],64762:[[1594,1610],256],64763:[[1587,1609],256],64764:[[1587,1610],256],64765:[[1588,1609],256],64766:[[1588,1610],256],64767:[[1581,1609],256]},
-       64768:{64768:[[1581,1610],256],64769:[[1580,1609],256],64770:[[1580,1610],256],64771:[[1582,1609],256],64772:[[1582,1610],256],64773:[[1589,1609],256],64774:[[1589,1610],256],64775:[[1590,1609],256],64776:[[1590,1610],256],64777:[[1588,1580],256],64778:[[1588,1581],256],64779:[[1588,1582],256],64780:[[1588,1605],256],64781:[[1588,1585],256],64782:[[1587,1585],256],64783:[[1589,1585],256],64784:[[1590,1585],256],64785:[[1591,1609],256],64786:[[1591,1610],256],64787:[[1593,1609],256],64788:[[1593,1610],256],64789:[[1594,1609],256],64790:[[1594,1610],256],64791:[[1587,1609],256],64792:[[1587,1610],256],64793:[[1588,1609],256],64794:[[1588,1610],256],64795:[[1581,1609],256],64796:[[1581,1610],256],64797:[[1580,1609],256],64798:[[1580,1610],256],64799:[[1582,1609],256],64800:[[1582,1610],256],64801:[[1589,1609],256],64802:[[1589,1610],256],64803:[[1590,1609],256],64804:[[1590,1610],256],64805:[[1588,1580],256],64806:[[1588,1581],256],64807:[[1588,1582],256],64808:[[1588,1605],256],64809:[[1588,1585],256],64810:[[1587,1585],256],64811:[[1589,1585],256],64812:[[1590,1585],256],64813:[[1588,1580],256],64814:[[1588,1581],256],64815:[[1588,1582],256],64816:[[1588,1605],256],64817:[[1587,1607],256],64818:[[1588,1607],256],64819:[[1591,1605],256],64820:[[1587,1580],256],64821:[[1587,1581],256],64822:[[1587,1582],256],64823:[[1588,1580],256],64824:[[1588,1581],256],64825:[[1588,1582],256],64826:[[1591,1605],256],64827:[[1592,1605],256],64828:[[1575,1611],256],64829:[[1575,1611],256],64848:[[1578,1580,1605],256],64849:[[1578,1581,1580],256],64850:[[1578,1581,1580],256],64851:[[1578,1581,1605],256],64852:[[1578,1582,1605],256],64853:[[1578,1605,1580],256],64854:[[1578,1605,1581],256],64855:[[1578,1605,1582],256],64856:[[1580,1605,1581],256],64857:[[1580,1605,1581],256],64858:[[1581,1605,1610],256],64859:[[1581,1605,1609],256],64860:[[1587,1581,1580],256],64861:[[1587,1580,1581],256],64862:[[1587,1580,1609],256],64863:[[1587,1605,1581],256],64864:[[1587,1605,1581],256],64865:[[1587,1605,1580],256],64866:[[1587,1605,1605],256],64867:[[1587,1605,1605],256],64868:[[1589,1581,1581],256],64869:[[1589,1581,1581],256],64870:[[1589,1605,1605],256],64871:[[1588,1581,1605],256],64872:[[1588,1581,1605],256],64873:[[1588,1580,1610],256],64874:[[1588,1605,1582],256],64875:[[1588,1605,1582],256],64876:[[1588,1605,1605],256],64877:[[1588,1605,1605],256],64878:[[1590,1581,1609],256],64879:[[1590,1582,1605],256],64880:[[1590,1582,1605],256],64881:[[1591,1605,1581],256],64882:[[1591,1605,1581],256],64883:[[1591,1605,1605],256],64884:[[1591,1605,1610],256],64885:[[1593,1580,1605],256],64886:[[1593,1605,1605],256],64887:[[1593,1605,1605],256],64888:[[1593,1605,1609],256],64889:[[1594,1605,1605],256],64890:[[1594,1605,1610],256],64891:[[1594,1605,1609],256],64892:[[1601,1582,1605],256],64893:[[1601,1582,1605],256],64894:[[1602,1605,1581],256],64895:[[1602,1605,1605],256],64896:[[1604,1581,1605],256],64897:[[1604,1581,1610],256],64898:[[1604,1581,1609],256],64899:[[1604,1580,1580],256],64900:[[1604,1580,1580],256],64901:[[1604,1582,1605],256],64902:[[1604,1582,1605],256],64903:[[1604,1605,1581],256],64904:[[1604,1605,1581],256],64905:[[1605,1581,1580],256],64906:[[1605,1581,1605],256],64907:[[1605,1581,1610],256],64908:[[1605,1580,1581],256],64909:[[1605,1580,1605],256],64910:[[1605,1582,1580],256],64911:[[1605,1582,1605],256],64914:[[1605,1580,1582],256],64915:[[1607,1605,1580],256],64916:[[1607,1605,1605],256],64917:[[1606,1581,1605],256],64918:[[1606,1581,1609],256],64919:[[1606,1580,1605],256],64920:[[1606,1580,1605],256],64921:[[1606,1580,1609],256],64922:[[1606,1605,1610],256],64923:[[1606,1605,1609],256],64924:[[1610,1605,1605],256],64925:[[1610,1605,1605],256],64926:[[1576,1582,1610],256],64927:[[1578,1580,1610],256],64928:[[1578,1580,1609],256],64929:[[1578,1582,1610],256],64930:[[1578,1582,1609],256],64931:[[1578,1605,1610],256],64932:[[1578,1605,1609],256],64933:[[1580,1605,1610],256],64934:[[1580,1581,1609],256],64935:[[1580,1605,1609],256],64936:[[1587,1582,1609],256],64937:[[1589,1581,1610],256],64938:[[1588,1581,1610],256],64939:[[1590,1581,1610],256],64940:[[1604,1580,1610],256],64941:[[1604,1605,1610],256],64942:[[1610,1581,1610],256],64943:[[1610,1580,1610],256],64944:[[1610,1605,1610],256],64945:[[1605,1605,1610],256],64946:[[1602,1605,1610],256],64947:[[1606,1581,1610],256],64948:[[1602,1605,1581],256],64949:[[1604,1581,1605],256],64950:[[1593,1605,1610],256],64951:[[1603,1605,1610],256],64952:[[1606,1580,1581],256],64953:[[1605,1582,1610],256],64954:[[1604,1580,1605],256],64955:[[1603,1605,1605],256],64956:[[1604,1580,1605],256],64957:[[1606,1580,1581],256],64958:[[1580,1581,1610],256],64959:[[1581,1580,1610],256],64960:[[1605,1580,1610],256],64961:[[1601,1605,1610],256],64962:[[1576,1581,1610],256],64963:[[1603,1605,1605],256],64964:[[1593,1580,1605],256],64965:[[1589,1605,1605],256],64966:[[1587,1582,1610],256],64967:[[1606,1580,1610],256],65008:[[1589,1604,1746],256],65009:[[1602,1604,1746],256],65010:[[1575,1604,1604,1607],256],65011:[[1575,1603,1576,1585],256],65012:[[1605,1581,1605,1583],256],65013:[[1589,1604,1593,1605],256],65014:[[1585,1587,1608,1604],256],65015:[[1593,1604,1610,1607],256],65016:[[1608,1587,1604,1605],256],65017:[[1589,1604,1609],256],65018:[[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605],256],65019:[[1580,1604,32,1580,1604,1575,1604,1607],256],65020:[[1585,1740,1575,1604],256]},
-       65024:{65040:[[44],256],65041:[[12289],256],65042:[[12290],256],65043:[[58],256],65044:[[59],256],65045:[[33],256],65046:[[63],256],65047:[[12310],256],65048:[[12311],256],65049:[[8230],256],65056:[,230],65057:[,230],65058:[,230],65059:[,230],65060:[,230],65061:[,230],65062:[,230],65072:[[8229],256],65073:[[8212],256],65074:[[8211],256],65075:[[95],256],65076:[[95],256],65077:[[40],256],65078:[[41],256],65079:[[123],256],65080:[[125],256],65081:[[12308],256],65082:[[12309],256],65083:[[12304],256],65084:[[12305],256],65085:[[12298],256],65086:[[12299],256],65087:[[12296],256],65088:[[12297],256],65089:[[12300],256],65090:[[12301],256],65091:[[12302],256],65092:[[12303],256],65095:[[91],256],65096:[[93],256],65097:[[8254],256],65098:[[8254],256],65099:[[8254],256],65100:[[8254],256],65101:[[95],256],65102:[[95],256],65103:[[95],256],65104:[[44],256],65105:[[12289],256],65106:[[46],256],65108:[[59],256],65109:[[58],256],65110:[[63],256],65111:[[33],256],65112:[[8212],256],65113:[[40],256],65114:[[41],256],65115:[[123],256],65116:[[125],256],65117:[[12308],256],65118:[[12309],256],65119:[[35],256],65120:[[38],256],65121:[[42],256],65122:[[43],256],65123:[[45],256],65124:[[60],256],65125:[[62],256],65126:[[61],256],65128:[[92],256],65129:[[36],256],65130:[[37],256],65131:[[64],256],65136:[[32,1611],256],65137:[[1600,1611],256],65138:[[32,1612],256],65140:[[32,1613],256],65142:[[32,1614],256],65143:[[1600,1614],256],65144:[[32,1615],256],65145:[[1600,1615],256],65146:[[32,1616],256],65147:[[1600,1616],256],65148:[[32,1617],256],65149:[[1600,1617],256],65150:[[32,1618],256],65151:[[1600,1618],256],65152:[[1569],256],65153:[[1570],256],65154:[[1570],256],65155:[[1571],256],65156:[[1571],256],65157:[[1572],256],65158:[[1572],256],65159:[[1573],256],65160:[[1573],256],65161:[[1574],256],65162:[[1574],256],65163:[[1574],256],65164:[[1574],256],65165:[[1575],256],65166:[[1575],256],65167:[[1576],256],65168:[[1576],256],65169:[[1576],256],65170:[[1576],256],65171:[[1577],256],65172:[[1577],256],65173:[[1578],256],65174:[[1578],256],65175:[[1578],256],65176:[[1578],256],65177:[[1579],256],65178:[[1579],256],65179:[[1579],256],65180:[[1579],256],65181:[[1580],256],65182:[[1580],256],65183:[[1580],256],65184:[[1580],256],65185:[[1581],256],65186:[[1581],256],65187:[[1581],256],65188:[[1581],256],65189:[[1582],256],65190:[[1582],256],65191:[[1582],256],65192:[[1582],256],65193:[[1583],256],65194:[[1583],256],65195:[[1584],256],65196:[[1584],256],65197:[[1585],256],65198:[[1585],256],65199:[[1586],256],65200:[[1586],256],65201:[[1587],256],65202:[[1587],256],65203:[[1587],256],65204:[[1587],256],65205:[[1588],256],65206:[[1588],256],65207:[[1588],256],65208:[[1588],256],65209:[[1589],256],65210:[[1589],256],65211:[[1589],256],65212:[[1589],256],65213:[[1590],256],65214:[[1590],256],65215:[[1590],256],65216:[[1590],256],65217:[[1591],256],65218:[[1591],256],65219:[[1591],256],65220:[[1591],256],65221:[[1592],256],65222:[[1592],256],65223:[[1592],256],65224:[[1592],256],65225:[[1593],256],65226:[[1593],256],65227:[[1593],256],65228:[[1593],256],65229:[[1594],256],65230:[[1594],256],65231:[[1594],256],65232:[[1594],256],65233:[[1601],256],65234:[[1601],256],65235:[[1601],256],65236:[[1601],256],65237:[[1602],256],65238:[[1602],256],65239:[[1602],256],65240:[[1602],256],65241:[[1603],256],65242:[[1603],256],65243:[[1603],256],65244:[[1603],256],65245:[[1604],256],65246:[[1604],256],65247:[[1604],256],65248:[[1604],256],65249:[[1605],256],65250:[[1605],256],65251:[[1605],256],65252:[[1605],256],65253:[[1606],256],65254:[[1606],256],65255:[[1606],256],65256:[[1606],256],65257:[[1607],256],65258:[[1607],256],65259:[[1607],256],65260:[[1607],256],65261:[[1608],256],65262:[[1608],256],65263:[[1609],256],65264:[[1609],256],65265:[[1610],256],65266:[[1610],256],65267:[[1610],256],65268:[[1610],256],65269:[[1604,1570],256],65270:[[1604,1570],256],65271:[[1604,1571],256],65272:[[1604,1571],256],65273:[[1604,1573],256],65274:[[1604,1573],256],65275:[[1604,1575],256],65276:[[1604,1575],256]},
-       65280:{65281:[[33],256],65282:[[34],256],65283:[[35],256],65284:[[36],256],65285:[[37],256],65286:[[38],256],65287:[[39],256],65288:[[40],256],65289:[[41],256],65290:[[42],256],65291:[[43],256],65292:[[44],256],65293:[[45],256],65294:[[46],256],65295:[[47],256],65296:[[48],256],65297:[[49],256],65298:[[50],256],65299:[[51],256],65300:[[52],256],65301:[[53],256],65302:[[54],256],65303:[[55],256],65304:[[56],256],65305:[[57],256],65306:[[58],256],65307:[[59],256],65308:[[60],256],65309:[[61],256],65310:[[62],256],65311:[[63],256],65312:[[64],256],65313:[[65],256],65314:[[66],256],65315:[[67],256],65316:[[68],256],65317:[[69],256],65318:[[70],256],65319:[[71],256],65320:[[72],256],65321:[[73],256],65322:[[74],256],65323:[[75],256],65324:[[76],256],65325:[[77],256],65326:[[78],256],65327:[[79],256],65328:[[80],256],65329:[[81],256],65330:[[82],256],65331:[[83],256],65332:[[84],256],65333:[[85],256],65334:[[86],256],65335:[[87],256],65336:[[88],256],65337:[[89],256],65338:[[90],256],65339:[[91],256],65340:[[92],256],65341:[[93],256],65342:[[94],256],65343:[[95],256],65344:[[96],256],65345:[[97],256],65346:[[98],256],65347:[[99],256],65348:[[100],256],65349:[[101],256],65350:[[102],256],65351:[[103],256],65352:[[104],256],65353:[[105],256],65354:[[106],256],65355:[[107],256],65356:[[108],256],65357:[[109],256],65358:[[110],256],65359:[[111],256],65360:[[112],256],65361:[[113],256],65362:[[114],256],65363:[[115],256],65364:[[116],256],65365:[[117],256],65366:[[118],256],65367:[[119],256],65368:[[120],256],65369:[[121],256],65370:[[122],256],65371:[[123],256],65372:[[124],256],65373:[[125],256],65374:[[126],256],65375:[[10629],256],65376:[[10630],256],65377:[[12290],256],65378:[[12300],256],65379:[[12301],256],65380:[[12289],256],65381:[[12539],256],65382:[[12530],256],65383:[[12449],256],65384:[[12451],256],65385:[[12453],256],65386:[[12455],256],65387:[[12457],256],65388:[[12515],256],65389:[[12517],256],65390:[[12519],256],65391:[[12483],256],65392:[[12540],256],65393:[[12450],256],65394:[[12452],256],65395:[[12454],256],65396:[[12456],256],65397:[[12458],256],65398:[[12459],256],65399:[[12461],256],65400:[[12463],256],65401:[[12465],256],65402:[[12467],256],65403:[[12469],256],65404:[[12471],256],65405:[[12473],256],65406:[[12475],256],65407:[[12477],256],65408:[[12479],256],65409:[[12481],256],65410:[[12484],256],65411:[[12486],256],65412:[[12488],256],65413:[[12490],256],65414:[[12491],256],65415:[[12492],256],65416:[[12493],256],65417:[[12494],256],65418:[[12495],256],65419:[[12498],256],65420:[[12501],256],65421:[[12504],256],65422:[[12507],256],65423:[[12510],256],65424:[[12511],256],65425:[[12512],256],65426:[[12513],256],65427:[[12514],256],65428:[[12516],256],65429:[[12518],256],65430:[[12520],256],65431:[[12521],256],65432:[[12522],256],65433:[[12523],256],65434:[[12524],256],65435:[[12525],256],65436:[[12527],256],65437:[[12531],256],65438:[[12441],256],65439:[[12442],256],65440:[[12644],256],65441:[[12593],256],65442:[[12594],256],65443:[[12595],256],65444:[[12596],256],65445:[[12597],256],65446:[[12598],256],65447:[[12599],256],65448:[[12600],256],65449:[[12601],256],65450:[[12602],256],65451:[[12603],256],65452:[[12604],256],65453:[[12605],256],65454:[[12606],256],65455:[[12607],256],65456:[[12608],256],65457:[[12609],256],65458:[[12610],256],65459:[[12611],256],65460:[[12612],256],65461:[[12613],256],65462:[[12614],256],65463:[[12615],256],65464:[[12616],256],65465:[[12617],256],65466:[[12618],256],65467:[[12619],256],65468:[[12620],256],65469:[[12621],256],65470:[[12622],256],65474:[[12623],256],65475:[[12624],256],65476:[[12625],256],65477:[[12626],256],65478:[[12627],256],65479:[[12628],256],65482:[[12629],256],65483:[[12630],256],65484:[[12631],256],65485:[[12632],256],65486:[[12633],256],65487:[[12634],256],65490:[[12635],256],65491:[[12636],256],65492:[[12637],256],65493:[[12638],256],65494:[[12639],256],65495:[[12640],256],65498:[[12641],256],65499:[[12642],256],65500:[[12643],256],65504:[[162],256],65505:[[163],256],65506:[[172],256],65507:[[175],256],65508:[[166],256],65509:[[165],256],65510:[[8361],256],65512:[[9474],256],65513:[[8592],256],65514:[[8593],256],65515:[[8594],256],65516:[[8595],256],65517:[[9632],256],65518:[[9675],256]}
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/implement.js
deleted file mode 100644 (file)
index cfc710e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'normalize',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/index.js
deleted file mode 100644 (file)
index 619b096..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.normalize
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/is-implemented.js
deleted file mode 100644 (file)
index 67c8d8d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'æøåäüö';
-
-module.exports = function () {
-       if (typeof str.normalize !== 'function') return false;
-       return str.normalize('NFKD') === 'æøåäüö';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/normalize/shim.js
deleted file mode 100644 (file)
index a379989..0000000
+++ /dev/null
@@ -1,289 +0,0 @@
-// Taken from: https://github.com/walling/unorm/blob/master/lib/unorm.js
-
-/*
-       * UnicodeNormalizer 1.0.0
-       * Copyright (c) 2008 Matsuza
-       * Dual licensed under the MIT (MIT-LICENSE.txt) and
-       * GPL (GPL-LICENSE.txt) licenses.
-       * $Date: 2008-06-05 16:44:17 +0200 (Thu, 05 Jun 2008) $
-       * $Rev: 13309 $
-*/
-
-'use strict';
-
-var primitiveSet = require('../../../object/primitive-set')
-  , validValue   = require('../../../object/valid-value')
-  , data         = require('./_data')
-
-  , floor = Math.floor
-  , forms = primitiveSet('NFC', 'NFD', 'NFKC', 'NFKD')
-
-  , DEFAULT_FEATURE = [null, 0, {}], CACHE_THRESHOLD = 10, SBase = 0xAC00
-  , LBase = 0x1100, VBase = 0x1161, TBase = 0x11A7, LCount = 19, VCount = 21
-  , TCount = 28, NCount = VCount * TCount, SCount = LCount * NCount
-  , UChar, cache = {}, cacheCounter = [], i, fromCache, fromData, fromCpOnly
-  , fromRuleBasedJamo, fromCpFilter, strategies, UCharIterator
-  , RecursDecompIterator, DecompIterator, CompIterator, createIterator
-  , normalize;
-
-UChar = function (cp, feature) {
-       this.codepoint = cp;
-       this.feature = feature;
-};
-
-// Strategies
-for (i = 0; i <= 0xFF; ++i) cacheCounter[i] = 0;
-
-fromCache = function (next, cp, needFeature) {
-       var ret = cache[cp];
-       if (!ret) {
-               ret = next(cp, needFeature);
-               if (!!ret.feature && ++cacheCounter[(cp >> 8) & 0xFF] > CACHE_THRESHOLD) {
-                       cache[cp] = ret;
-               }
-       }
-       return ret;
-};
-
-fromData = function (next, cp, needFeature) {
-       var hash = cp & 0xFF00, dunit = UChar.udata[hash] || {}, f = dunit[cp];
-       return f ? new UChar(cp, f) : new UChar(cp, DEFAULT_FEATURE);
-};
-fromCpOnly = function (next, cp, needFeature) {
-       return !!needFeature ? next(cp, needFeature) : new UChar(cp, null);
-};
-
-fromRuleBasedJamo = function (next, cp, needFeature) {
-       var c, base, i, arr, SIndex, TIndex, feature, j;
-       if (cp < LBase || (LBase + LCount <= cp && cp < SBase) ||
-                       (SBase + SCount < cp)) {
-               return next(cp, needFeature);
-       }
-       if (LBase <= cp && cp < LBase + LCount) {
-               c = {};
-               base = (cp - LBase) * VCount;
-               for (i = 0; i < VCount; ++i) {
-                       c[VBase + i] = SBase + TCount * (i + base);
-               }
-               arr = new Array(3);
-               arr[2] = c;
-               return new UChar(cp, arr);
-       }
-
-       SIndex = cp - SBase;
-       TIndex = SIndex % TCount;
-       feature = [];
-       if (TIndex !== 0) {
-               feature[0] = [SBase + SIndex - TIndex, TBase + TIndex];
-       } else {
-               feature[0] = [LBase + floor(SIndex / NCount), VBase +
-                       floor((SIndex % NCount) / TCount)];
-               feature[2] = {};
-               for (j = 1; j < TCount; ++j) {
-                       feature[2][TBase + j] = cp + j;
-               }
-       }
-       return new UChar(cp, feature);
-};
-
-fromCpFilter = function (next, cp, needFeature) {
-       return (cp < 60) || ((13311 < cp) && (cp < 42607))
-               ? new UChar(cp, DEFAULT_FEATURE) : next(cp, needFeature);
-};
-
-strategies = [fromCpFilter, fromCache, fromCpOnly, fromRuleBasedJamo, fromData];
-
-UChar.fromCharCode = strategies.reduceRight(function (next, strategy) {
-       return function (cp, needFeature) { return strategy(next, cp, needFeature); };
-}, null);
-
-UChar.isHighSurrogate = function (cp) { return cp >= 0xD800 && cp <= 0xDBFF; };
-UChar.isLowSurrogate = function (cp) { return cp >= 0xDC00 && cp <= 0xDFFF; };
-
-UChar.prototype.prepFeature = function () {
-       if (!this.feature) {
-               this.feature = UChar.fromCharCode(this.codepoint, true).feature;
-       }
-};
-
-UChar.prototype.toString = function () {
-       var x;
-       if (this.codepoint < 0x10000) return String.fromCharCode(this.codepoint);
-       x = this.codepoint - 0x10000;
-       return String.fromCharCode(floor(x / 0x400) + 0xD800, x % 0x400 + 0xDC00);
-};
-
-UChar.prototype.getDecomp = function () {
-       this.prepFeature();
-       return this.feature[0] || null;
-};
-
-UChar.prototype.isCompatibility = function () {
-       this.prepFeature();
-       return !!this.feature[1] && (this.feature[1] & (1 << 8));
-};
-UChar.prototype.isExclude = function () {
-       this.prepFeature();
-       return !!this.feature[1] && (this.feature[1] & (1 << 9));
-};
-UChar.prototype.getCanonicalClass = function () {
-       this.prepFeature();
-       return !!this.feature[1] ? (this.feature[1] & 0xff) : 0;
-};
-UChar.prototype.getComposite = function (following) {
-       var cp;
-       this.prepFeature();
-       if (!this.feature[2]) return null;
-       cp = this.feature[2][following.codepoint];
-       return cp ? UChar.fromCharCode(cp) : null;
-};
-
-UCharIterator = function (str) {
-       this.str = str;
-       this.cursor = 0;
-};
-UCharIterator.prototype.next = function () {
-       if (!!this.str && this.cursor < this.str.length) {
-               var cp = this.str.charCodeAt(this.cursor++), d;
-               if (UChar.isHighSurrogate(cp) && this.cursor < this.str.length &&
-                               UChar.isLowSurrogate((d = this.str.charCodeAt(this.cursor)))) {
-                       cp = (cp - 0xD800) * 0x400 + (d - 0xDC00) + 0x10000;
-                       ++this.cursor;
-               }
-               return UChar.fromCharCode(cp);
-       }
-       this.str = null;
-       return null;
-};
-
-RecursDecompIterator = function (it, cano) {
-       this.it = it;
-       this.canonical = cano;
-       this.resBuf = [];
-};
-
-RecursDecompIterator.prototype.next = function () {
-       var recursiveDecomp, uchar;
-       recursiveDecomp = function (cano, uchar) {
-               var decomp = uchar.getDecomp(), ret, i, a, j;
-               if (!!decomp && !(cano && uchar.isCompatibility())) {
-                       ret = [];
-                       for (i = 0; i < decomp.length; ++i) {
-                               a = recursiveDecomp(cano, UChar.fromCharCode(decomp[i]));
-                               //ret.concat(a); //<-why does not this work?
-                               //following block is a workaround.
-                               for (j = 0; j < a.length; ++j) ret.push(a[j]);
-                       }
-                       return ret;
-               }
-               return [uchar];
-       };
-       if (this.resBuf.length === 0) {
-               uchar = this.it.next();
-               if (!uchar) return null;
-               this.resBuf = recursiveDecomp(this.canonical, uchar);
-       }
-       return this.resBuf.shift();
-};
-
-DecompIterator = function (it) {
-       this.it = it;
-       this.resBuf = [];
-};
-
-DecompIterator.prototype.next = function () {
-       var cc, uchar, inspt, uchar2, cc2;
-       if (this.resBuf.length === 0) {
-               do {
-                       uchar = this.it.next();
-                       if (!uchar) break;
-                       cc = uchar.getCanonicalClass();
-                       inspt = this.resBuf.length;
-                       if (cc !== 0) {
-                               for (inspt; inspt > 0; --inspt) {
-                                       uchar2 = this.resBuf[inspt - 1];
-                                       cc2 = uchar2.getCanonicalClass();
-                                       if (cc2 <= cc) break;
-                               }
-                       }
-                       this.resBuf.splice(inspt, 0, uchar);
-               } while (cc !== 0);
-       }
-       return this.resBuf.shift();
-};
-
-CompIterator = function (it) {
-       this.it = it;
-       this.procBuf = [];
-       this.resBuf = [];
-       this.lastClass = null;
-};
-
-CompIterator.prototype.next = function () {
-       var uchar, starter, composite, cc;
-       while (this.resBuf.length === 0) {
-               uchar = this.it.next();
-               if (!uchar) {
-                       this.resBuf = this.procBuf;
-                       this.procBuf = [];
-                       break;
-               }
-               if (this.procBuf.length === 0) {
-                       this.lastClass = uchar.getCanonicalClass();
-                       this.procBuf.push(uchar);
-               } else {
-                       starter = this.procBuf[0];
-                       composite = starter.getComposite(uchar);
-                       cc = uchar.getCanonicalClass();
-                       if (!!composite && (this.lastClass < cc || this.lastClass === 0)) {
-                               this.procBuf[0] = composite;
-                       } else {
-                               if (cc === 0) {
-                                       this.resBuf = this.procBuf;
-                                       this.procBuf = [];
-                               }
-                               this.lastClass = cc;
-                               this.procBuf.push(uchar);
-                       }
-               }
-       }
-       return this.resBuf.shift();
-};
-
-createIterator = function (mode, str) {
-       switch (mode) {
-       case "NFD":
-               return new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), true)
-               );
-       case "NFKD":
-               return new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), false)
-               );
-       case "NFC":
-               return new CompIterator(new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), true)
-               ));
-       case "NFKC":
-               return new CompIterator(new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), false)
-               ));
-       }
-       throw mode + " is invalid";
-};
-normalize = function (mode, str) {
-       var it = createIterator(mode, str), ret = "", uchar;
-       while (!!(uchar = it.next())) ret += uchar.toString();
-       return ret;
-};
-
-/* Unicode data */
-UChar.udata =  data;
-
-module.exports = function (/*form*/) {
-       var str = String(validValue(this)), form = arguments[0];
-       if (form === undefined) form = 'NFC';
-       else form = String(form);
-       if (!forms[form]) throw new RangeError('Invalid normalization form: ' + form);
-       return normalize(form, str);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/pad.js
deleted file mode 100644 (file)
index f227f23..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var toInteger = require('../../number/to-integer')
-  , value     = require('../../object/valid-value')
-  , repeat    = require('./repeat')
-
-  , abs = Math.abs, max = Math.max;
-
-module.exports = function (fill/*, length*/) {
-       var self = String(value(this))
-         , sLength = self.length
-         , length = arguments[1];
-
-       length = isNaN(length) ? 1 : toInteger(length);
-       fill = repeat.call(String(fill), abs(length));
-       if (length >= 0) return fill.slice(0, max(0, length - sLength)) + self;
-       return self + (((sLength + length) >= 0) ? '' : fill.slice(length + sLength));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace-all.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace-all.js
deleted file mode 100644 (file)
index 678b1cb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function (search, replace) {
-       var index, pos = 0, str = String(value(this)), sl, rl;
-       search = String(search);
-       replace = String(replace);
-       sl = search.length;
-       rl = replace.length;
-       while ((index = str.indexOf(search, pos)) !== -1) {
-               str = str.slice(0, index) + replace + str.slice(index + sl);
-               pos = index + rl;
-       }
-       return str;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/plain-replace.js
deleted file mode 100644 (file)
index 24ce16d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var indexOf = String.prototype.indexOf, slice = String.prototype.slice;
-
-module.exports = function (search, replace) {
-       var index = indexOf.call(this, search);
-       if (index === -1) return String(this);
-       return slice.call(this, 0, index) + replace +
-               slice.call(this, index + String(search).length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/implement.js
deleted file mode 100644 (file)
index 4c39b9f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'repeat',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/index.js
deleted file mode 100644 (file)
index 15a800e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.repeat
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/is-implemented.js
deleted file mode 100644 (file)
index f7b8750..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'foo';
-
-module.exports = function () {
-       if (typeof str.repeat !== 'function') return false;
-       return (str.repeat(2) === 'foofoo');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/repeat/shim.js
deleted file mode 100644 (file)
index 0a3928b..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-// Thanks: http://www.2ality.com/2014/01/efficient-string-repeat.html
-
-'use strict';
-
-var value     = require('../../../object/valid-value')
-  , toInteger = require('../../../number/to-integer');
-
-module.exports = function (count) {
-       var str = String(value(this)), result;
-       count = toInteger(count);
-       if (count < 0) throw new RangeError("Count must be >= 0");
-       if (!isFinite(count)) throw new RangeError("Count must be < ∞");
-       result = '';
-       if (!count) return result;
-       while (true) {
-               if (count & 1) result += str;
-               count >>>= 1;
-               if (count <= 0) break;
-               str += str;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/implement.js
deleted file mode 100644 (file)
index d4f1eaf..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'startsWith',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/index.js
deleted file mode 100644 (file)
index ec66a7c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.startsWith
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js
deleted file mode 100644 (file)
index a0556f1..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.startsWith !== 'function') return false;
-       return ((str.startsWith('trzy') === false) &&
-               (str.startsWith('raz') === true));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/#/starts-with/shim.js
deleted file mode 100644 (file)
index aa5aaf4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var value     = require('../../../object/valid-value')
-  , toInteger = require('../../../number/to-integer')
-
-  , max = Math.max, min = Math.min;
-
-module.exports = function (searchString/*, position*/) {
-       var start, self = String(value(this));
-       start = min(max(toInteger(arguments[1]), 0), self.length);
-       return (self.indexOf(searchString, start) === start);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/format-method.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/format-method.js
deleted file mode 100644 (file)
index f1de1e3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var isCallable = require('../object/is-callable')
-  , value      = require('../object/valid-value')
-
-  , call = Function.prototype.call;
-
-module.exports = function (fmap) {
-       fmap = Object(value(fmap));
-       return function (pattern) {
-               var context = value(this);
-               pattern = String(pattern);
-               return pattern.replace(/%([a-zA-Z]+)|\\([\u0000-\uffff])/g,
-                       function (match, token, escape) {
-                               var t, r;
-                               if (escape) return escape;
-                               t = token;
-                               while (t && !(r = fmap[t])) t = t.slice(0, -1);
-                               if (!r) return match;
-                               if (isCallable(r)) r = call.call(r, context);
-                               return r + token.slice(t.length);
-                       });
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/implement.js
deleted file mode 100644 (file)
index b062331..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String, 'fromCodePoint', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/index.js
deleted file mode 100644 (file)
index 3f3110b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.fromCodePoint
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/is-implemented.js
deleted file mode 100644 (file)
index 840a20e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var fromCodePoint = String.fromCodePoint;
-       if (typeof fromCodePoint !== 'function') return false;
-       return fromCodePoint(0x1D306, 0x61, 0x1D307) === '\ud834\udf06a\ud834\udf07';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/from-code-point/shim.js
deleted file mode 100644 (file)
index e902c8e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-// Based on:
-// http://norbertlindenberg.com/2012/05/ecmascript-supplementary-characters/
-// and:
-// https://github.com/mathiasbynens/String.fromCodePoint/blob/master
-// /fromcodepoint.js
-
-'use strict';
-
-var floor = Math.floor, fromCharCode = String.fromCharCode;
-
-module.exports = function (/* …codePoints*/) {
-       var chars = [], l = arguments.length, i, c, result = '';
-       for (i = 0; i < l; ++i) {
-               c = Number(arguments[i]);
-               if (!isFinite(c) || c < 0 || c > 0x10FFFF || floor(c) !== c) {
-                       throw new RangeError("Invalid code point " + c);
-               }
-
-               if (c < 0x10000) {
-                       chars.push(c);
-               } else {
-                       c -= 0x10000;
-                       chars.push((c >> 10) + 0xD800, (c % 0x400) + 0xDC00);
-               }
-               if (i + 1 !== l && chars.length <= 0x4000) continue;
-               result += fromCharCode.apply(null, chars);
-               chars.length = 0;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/index.js
deleted file mode 100644 (file)
index dbbcdf6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':           require('./#'),
-       formatMethod:  require('./format-method'),
-       fromCodePoint: require('./from-code-point'),
-       isString:      require('./is-string'),
-       randomUniq:    require('./random-uniq'),
-       raw:           require('./raw')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/is-string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/is-string.js
deleted file mode 100644 (file)
index 719aeec..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call('');
-
-module.exports = function (x) {
-       return (typeof x === 'string') || (x && (typeof x === 'object') &&
-               ((x instanceof String) || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/random-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/random-uniq.js
deleted file mode 100644 (file)
index 54ae6f8..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var generated = Object.create(null)
-
-  , random = Math.random;
-
-module.exports = function () {
-       var str;
-       do { str = random().toString(36).slice(2); } while (generated[str]);
-       return str;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/implement.js
deleted file mode 100644 (file)
index c417e65..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String, 'raw', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/index.js
deleted file mode 100644 (file)
index 504a5de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.raw
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/is-implemented.js
deleted file mode 100644 (file)
index d7204c0..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var raw = String.raw, test;
-       if (typeof raw !== 'function') return false;
-       test = ['foo\nbar', 'marko\n'];
-       test.raw = ['foo\\nbar', 'marko\\n'];
-       return raw(test, 'INSE\nRT') === 'foo\\nbarINSE\nRTmarko\\n';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/string/raw/shim.js
deleted file mode 100644 (file)
index 7096efb..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var toPosInt   = require('../../number/to-pos-integer')
-  , validValue = require('../../object/valid-value')
-
-  , reduce = Array.prototype.reduce;
-
-module.exports = function (callSite/*,  …substitutions*/) {
-       var args, rawValue = Object(validValue(Object(validValue(callSite)).raw));
-       if (!toPosInt(rawValue.length)) return '';
-       args = arguments;
-       return reduce.call(rawValue, function (a, b, i) {
-               return a + String(args[i]) + b;
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/__tad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/__tad.js
deleted file mode 100644 (file)
index 8845778..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-exports.context = null;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js
deleted file mode 100644 (file)
index f060539..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/@@iterator/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js
deleted file mode 100644 (file)
index e590d8f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: '1', done: false });
-       a.deep(iterator.next(), { value: '2', done: false });
-       a.deep(iterator.next(), { value: '3', done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/_compare-by-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/_compare-by-length.js
deleted file mode 100644 (file)
index e40c305..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [4, 5, 6], y = { length: 8 }, w = {}, z = { length: 1 };
-
-       a.deep([x, y, w, z].sort(t), [w, z, x, y]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/binary-search.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/binary-search.js
deleted file mode 100644 (file)
index cf33173..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var compare  = function (value) { return this - value; };
-
-module.exports = function (t, a) {
-       var arr;
-       arr = [2, 5, 5, 8, 34, 67, 98, 345, 678];
-
-       // highest, equal match
-       a(t.call(arr, compare.bind(1)), 0, "All higher");
-       a(t.call(arr, compare.bind(679)), arr.length - 1, "All lower");
-       a(t.call(arr, compare.bind(4)), 0, "Mid");
-       a(t.call(arr, compare.bind(5)), 2, "Match");
-       a(t.call(arr, compare.bind(6)), 2, "Above");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/clear.js
deleted file mode 100644 (file)
index a5b1c97..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [1, 2, {}, 4];
-       a(t.call(x), x, "Returns same array");
-       a.deep(x, [], "Empties array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/compact.js
deleted file mode 100644 (file)
index 6390eb2..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "": function (t, a) {
-               var o, x, y, z;
-               o = {};
-               x = [0, 1, "", null, o, false, undefined, true];
-               y = x.slice(0);
-
-               a.not(z = t.call(x), x, "Returns different object");
-               a.deep(x, y, "Origin not changed");
-               a.deep(z, [0, 1, "", o, false, true], "Result");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/implement.js
deleted file mode 100644 (file)
index 3bdbe86..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/concat/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/concat/shim.js
deleted file mode 100644 (file)
index c30eb7e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr = [1, 3, 45], x = {}, subArr, subArr2, result;
-
-       a.deep(t.call(arr, '2d', x, ['ere', 'fe', x], false, null),
-               [1, 3, 45, '2d', x, 'ere', 'fe', x, false, null], "Plain array");
-
-       subArr = new SubArray('lol', 'miszko');
-       subArr2 = new SubArray('elo', 'fol');
-
-       result = t.call(subArr, 'df', arr, 'fef', subArr2, null);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, ['lol', 'miszko', 'df', 1, 3, 45, 'fef', 'elo', 'fol', null],
-               "Spreable by default");
-
-       SubArray.prototype['@@isConcatSpreadable'] = false;
-
-       result = t.call(subArr, 'df', arr, 'fef', subArr2, null);
-       a.deep(result, ['lol', 'miszko', 'df', 1, 3, 45, 'fef', subArr2, null],
-               "Non spreadable");
-
-       delete SubArray.prototype['@@isConcatSpreadable'];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/contains.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/contains.js
deleted file mode 100644 (file)
index 21404a1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this, this[1]), true, "Contains");
-               a(t.call(this, {}), false, "Does Not contain");
-       },
-       "": function (t, a) {
-               var o, x = {}, y = {};
-
-               o = [1, 'raz', x];
-
-               a(t.call(o, 1), true, "First");
-               a(t.call(o, '1'), false, "Type coercion");
-               a(t.call(o, 'raz'), true, "Primitive");
-               a(t.call(o, 'foo'), false, "Primitive not found");
-               a(t.call(o, x), true, "Object found");
-               a(t.call(o, y), false, "Object not found");
-               a(t.call(o, 1, 1), false, "Position");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/implement.js
deleted file mode 100644 (file)
index 3607047..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/copy-within/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/copy-within/shim.js
deleted file mode 100644 (file)
index 50b03e8..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var args, x;
-
-       a.h1("2 args");
-       x = [1, 2, 3, 4, 5];
-       t.call(x, 0, 3);
-       a.deep(x, [4, 5, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 3), [1, 4, 5, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 2), [1, 3, 4, 5, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 2, 2), [1, 2, 3, 4, 5]);
-
-       a.h1("3 args");
-       a.deep(t.call([1, 2, 3, 4, 5], 0, 3, 4), [4, 2, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 3, 4), [1, 4, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 2, 4), [1, 3, 4, 4, 5]);
-
-       a.h1("Negative args");
-       a.deep(t.call([1, 2, 3, 4, 5], 0, -2), [4, 5, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 0, -2, -1), [4, 2, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3, -2), [1, 3, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3, -1), [1, 3, 4, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3), [1, 3, 4, 5, 5]);
-
-       a.h1("Array-likes");
-       args = (function () { return arguments; }(1, 2, 3));
-       a.deep(t.call(args, -2, 0), [1, 1, 2]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/diff.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/diff.js
deleted file mode 100644 (file)
index bcfa3a0..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this), []);
-       },
-       "": function (t, a) {
-               var x = {}, y = {};
-
-               a.deep(t.call([1, 'raz', x, 2, 'trzy', y], [x, 2, 'trzy']), [1, 'raz', y],
-                       "Scope longer");
-               a.deep(t.call([1, 'raz', x], [x, 2, 'trzy', 1, y]), ['raz'],
-                       "Arg longer");
-               a.deep(t.call([1, 'raz', x], []), [1, 'raz', x], "Empty arg");
-               a.deep(t.call([], [1, y, 'sdfs']), [], "Empty scope");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-index-of.js
deleted file mode 100644 (file)
index 4cf6c63..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([3, 'raz', {}, x, {}], x), 3, "Regular");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN), 2, "NaN");
-       a(t.call([3, 'raz', 0, {}, -0], -0), 2, "-0");
-       a(t.call([3, 'raz', -0, {}, 0], +0), 2, "+0");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, 3), 4, "fromIndex");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -1), 4, "fromIndex negative #1");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -2), 4, "fromIndex negative #2");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -3), 2, "fromIndex negative #3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-last-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/e-last-index-of.js
deleted file mode 100644 (file)
index ed4f700..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([3, 'raz', {}, x, {}, x], x), 5, "Regular");
-       a(t.call([3, 'raz', NaN, {}, x], NaN), 2, "NaN");
-       a(t.call([3, 'raz', 0, {}, -0], -0), 4, "-0");
-       a(t.call([3, 'raz', -0, {}, 0], +0), 4, "+0");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, 3), 2, "fromIndex");
-       a(t.call([3, 'raz', NaN, 2, NaN], NaN, -1), 4, "Negative fromIndex #1");
-       a(t.call([3, 'raz', NaN, 2, NaN], NaN, -2), 2, "Negative fromIndex #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/implement.js
deleted file mode 100644 (file)
index 733209a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/entries/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/entries/shim.js
deleted file mode 100644 (file)
index bf40d31..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: [0, '1'], done: false });
-       a.deep(iterator.next(), { value: [1, '2'], done: false });
-       a.deep(iterator.next(), { value: [2, '3'], done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/exclusion.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/exclusion.js
deleted file mode 100644 (file)
index 07b32d8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var x = {};
-               a.deep(t.call(this, this, [this[0], this[2], x]), [x]);
-       },
-       "": function (t, a) {
-               var x = {}, y = {};
-
-               a.deep(t.call([x, y]), [x, y], "No arguments");
-               a.deep(t.call([x, 1], [], []), [x, 1], "Empty arguments");
-               a.deep(t.call([1, 'raz', x], [2, 'raz', y], [2, 'raz', x]), [1, y]);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/implement.js
deleted file mode 100644 (file)
index 2a01d28..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/fill/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/fill/shim.js
deleted file mode 100644 (file)
index d67300f..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-// Taken from https://github.com/paulmillr/es6-shim/blob/master/test/array.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-
-       x = [1, 2, 3, 4, 5, 6];
-       a(t.call(x, -1), x, "Returns self object");
-       a.deep(x, [-1, -1, -1, -1, -1, -1], "Value");
-
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, 3), [1, 2, 3, -1, -1, -1],
-               "Positive start");
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, -3), [1, 2, 3, -1, -1, -1],
-               "Negative start");
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, 9), [1, 2, 3, 4, 5, 6],
-               "Large start");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/implement.js
deleted file mode 100644 (file)
index 6d6b87c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/filter/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/filter/shim.js
deleted file mode 100644 (file)
index e8b5c39..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, Boolean), ['foo', '2d', x], "Plain array");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, Boolean);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, ['foo', '2d', x], "Result of subclass");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/implement.js
deleted file mode 100644 (file)
index 8d85e61..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/find-index/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find-index/shim.js
deleted file mode 100644 (file)
index b5fee46..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var count = 0, o = {}, self = Object(this);
-       a(t.call(self, function (value, i, scope) {
-               a(value, this[i], "Value");
-               a(i, count++, "Index");
-               a(scope, this, "Scope");
-       }, self), -1, "Falsy result");
-       a(count, 3);
-
-       count = -1;
-       a(t.call(this, function () {
-               return ++count ? o : null;
-       }, this), 1, "Truthy result");
-       a(count, 1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/implement.js
deleted file mode 100644 (file)
index 29fac41..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/find/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/find/shim.js
deleted file mode 100644 (file)
index ad2e645..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var count = 0, o = {}, self = Object(this);
-       a(t.call(self, function (value, i, scope) {
-               a(value, this[i], "Value");
-               a(i, count++, "Index");
-               a(scope, this, "Scope");
-       }, self), undefined, "Falsy result");
-       a(count, 3);
-
-       count = -1;
-       a(t.call(this, function () {
-               return ++count ? o : null;
-       }, this), this[1], "Truthy result");
-       a(count, 1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first-index.js
deleted file mode 100644 (file)
index 4aebad6..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a(t.call([]), null, "Empty");
-       a(t.call([null]), 0, "One value");
-       a(t.call([1, 2, 3]), 0, "Many values");
-       a(t.call(new Array(1000)), null, "Sparse empty");
-       x = [];
-       x[883] = undefined;
-       x[890] = null;
-       a(t.call(x), 883, "Manual sparse, distant value");
-       x = new Array(1000);
-       x[657] = undefined;
-       x[700] = null;
-       a(t.call(x), 657, "Sparse, distant value");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/first.js
deleted file mode 100644 (file)
index 87fde03..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       a(t.call(this), this[0]);
-};
-exports[''] = function (t, a) {
-       var x;
-       a(t.call([]), undefined, "Empty");
-       a(t.call(new Array(234), undefined, "Sparse empty"));
-       x = new Array(2342);
-       x[434] = {};
-       a(t.call(x), x[434], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/flatten.js
deleted file mode 100644 (file)
index 65f1214..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var o = [1, 2, [3, 4, [5, 6], 7, 8], 9, 10];
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "Nested Arrays": function (t, a) {
-               a(t.call(o).length, 10);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/for-each-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/for-each-right.js
deleted file mode 100644 (file)
index 2d24569..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, first, last, x, icount = this.length;
-               t.call(this, function (item, index, col) {
-                       ++count;
-                       if (!first) {
-                               first = item;
-                       }
-                       last = item;
-                       x = col;
-                       a(index, --icount, "Index");
-               });
-               a(count, this.length, "Iterated");
-               a(first, this[this.length - 1], "First is last");
-               a(last, this[0], "Last is first");
-               a.deep(x, Object(this), "Collection as third argument"); //jslint: skip
-       },
-       "": function (t, a) {
-               var x = {}, y, count;
-               t.call([1], function () { y = this; }, x);
-               a(y, x, "Scope");
-               y = 0;
-               t.call([3, 4, 4], function (a, i) { y += i; });
-               a(y, 3, "Indexes");
-
-               x = [1, 3];
-               x[5] = 'x';
-               y = 0;
-               count = 0;
-               t.call(x, function (a, i) { ++count; y += i; });
-               a(y, 6, "Misssing Indexes");
-               a(count, 3, "Misssing Indexes, count");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/group.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/group.js
deleted file mode 100644 (file)
index 32dc8c2..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, self;
-
-               self = Object(this);
-               a.deep(t.call(self, function (v, i, scope) {
-                       a(v, this[i], "Value");
-                       a(i, count++, "Index");
-                       a(scope, this, "Scope");
-                       return i;
-               }, self), { 0: [this[0]], 1: [this[1]], 2: [this[2]] });
-       },
-       "": function (t, a) {
-               var r;
-               r = t.call([2, 3, 3, 4, 5, 6, 7, 7, 23, 45, 34, 56],
-                       function (v) {
-                               return v % 2 ? 'odd' : 'even';
-                       });
-               a.deep(r.odd, [3, 3, 5, 7, 7, 23, 45]);
-               a.deep(r.even, [2, 4, 6, 34, 56]);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/indexes-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/indexes-of.js
deleted file mode 100644 (file)
index 3364170..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this[1]), [1]);
-       },
-       "": function (t, a) {
-               var x = {};
-               a.deep(t.call([1, 3, 5, 3, 5], 6), [], "No result");
-               a.deep(t.call([1, 3, 5, 1, 3, 5, 1], 1), [0, 3, 6], "Some results");
-               a.deep(t.call([], x), [], "Empty array");
-               a.deep(t.call([x, 3, {}, x, 3, 5, x], x), [0, 3, 6], "Search for object");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/intersection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/intersection.js
deleted file mode 100644 (file)
index b72b2fb..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array');
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this, this), toArray(this));
-       },
-       "": function (t, a) {
-               var x = {}, y = {}, p, r;
-               a.deep(t.call([], [2, 3, 4]), [], "Empty #1");
-               a.deep(t.call([2, 3, 4], []), [], "Empty #2");
-               a.deep(t.call([2, 3, x], [y, 5, 7]), [], "Different");
-               p = t.call([3, 5, 'raz', {}, 'dwa', x], [1, 3, 'raz', 'dwa', 'trzy', x, {}],
-                       [3, 'raz', x, 65]);
-               r = [3, 'raz', x];
-               p.sort();
-               r.sort();
-               a.deep(p, r, "Same parts");
-               a.deep(t.call(r, r), r, "Same");
-               a.deep(t.call([1, 2, x, 4, 5, y, 7], [7, y, 5, 4, x, 2, 1]),
-                       [1, 2, x, 4, 5, y, 7], "Long reverse same");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-copy.js
deleted file mode 100644 (file)
index e7f80e7..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([], []), true, "Empty");
-       a(t.call([], {}), true, "Empty lists");
-       a(t.call([1, x, 'raz'], [1, x, 'raz']), true, "Same");
-       a(t.call([1, x, 'raz'], { 0: 1, 1: x, 2: 'raz', length: 3 }), true,
-                       "Same lists");
-       a(t.call([1, x, 'raz'], [x, 1, 'raz']), false, "Diff order");
-       a(t.call([1, x], [1, x, 'raz']), false, "Diff length #1");
-       a(t.call([1, x, 'raz'], [1, x]), false, "Diff length #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/is-uniq.js
deleted file mode 100644 (file)
index 7349ba3..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([]), true, "Empty");
-       a(t.call({}), true, "Empty lists");
-       a(t.call([1, x, 'raz']), true, "Uniq");
-       a(t.call([1, x, 1, 'raz']), false, "Not Uniq: primitive");
-       a(t.call([1, x, '1', 'raz']), true, "Uniq: primitive");
-       a(t.call([1, x, 1, {}, 'raz']), false, "Not Uniq: Obj");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/implement.js
deleted file mode 100644 (file)
index b0c1aa0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/keys/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/keys/shim.js
deleted file mode 100644 (file)
index a43c04c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: 0, done: false });
-       a.deep(iterator.next(), { value: 1, done: false });
-       a.deep(iterator.next(), { value: 2, done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last-index.js
deleted file mode 100644 (file)
index a1cac10..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a(t.call([]), null, "Empty");
-       a(t.call([null]), 0, "One value");
-       a(t.call([1, 2, 3]), 2, "Many values");
-       a(t.call(new Array(1000)), null, "Sparse empty");
-       x = [];
-       x[883] = null;
-       x[890] = undefined;
-       a(t.call(x), 890, "Manual sparse, distant value");
-       x = new Array(1000);
-       x[657] = null;
-       x[700] = undefined;
-       a(t.call(x), 700, "Sparse, distant value");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/last.js
deleted file mode 100644 (file)
index 8d051bc..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       a(t.call(this), this[this.length - 1]);
-};
-
-exports[''] = function (t, a) {
-       var x;
-       a(t.call([]), undefined, "Empty");
-       a(t.call(new Array(234), undefined, "Sparse empty"));
-       x = new Array(2342);
-       x[434] = {};
-       x[450] = {};
-       a(t.call(x), x[450], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/implement.js
deleted file mode 100644 (file)
index cdcbc8d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/map/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/map/shim.js
deleted file mode 100644 (file)
index bbfefe8..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, Boolean), [true, false, false, true, false, true, false],
-               "Plain array");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, Boolean);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [true, false, false, true, false, true, false],
-               "Result of subclass");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/remove.js
deleted file mode 100644 (file)
index 3ebdca2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var y = {}, z = {}, x = [9, z, 5, y, 'foo'];
-       t.call(x, y);
-       a.deep(x, [9, z, 5, 'foo']);
-       t.call(x, {});
-       a.deep(x, [9, z, 5, 'foo'], "Not existing");
-       t.call(x, 5);
-       a.deep(x, [9, z, 'foo'], "Primitive");
-       x = [9, z, 5, y, 'foo'];
-       t.call(x, z, 5, 'foo');
-       a.deep(x, [9, y], "More than one argument");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/separate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/separate.js
deleted file mode 100644 (file)
index 42918b5..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [], y = {}, z = {};
-       a.deep(t.call(x, y), [], "Empty");
-       a.not(t.call(x), x, "Returns copy");
-       a.deep(t.call([1], y), [1], "One");
-       a.deep(t.call([1, 'raz'], y), [1, y, 'raz'], "One");
-       a.deep(t.call([1, 'raz', x], y), [1, y, 'raz', y, x], "More");
-       x = new Array(1000);
-       x[23] = 2;
-       x[3453] = 'raz';
-       x[500] = z;
-       a.deep(t.call(x, y), [2, y, z, y, 'raz'], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/implement.js
deleted file mode 100644 (file)
index 855ae2f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/slice/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/slice/shim.js
deleted file mode 100644 (file)
index f674f34..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, 2, 4), [0, '2d'], "Plain array: result");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, 2, 4);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [0, '2d'], "Subclass: result");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/some-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/some-right.js
deleted file mode 100644 (file)
index 900771a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, first, last, x, icount = this.length;
-               t.call(this, function (item, index, col) {
-                       ++count;
-                       if (!first) {
-                               first = item;
-                       }
-                       last = item;
-                       x = col;
-                       a(index, --icount, "Index");
-               });
-               a(count, this.length, "Iterated");
-               a(first, this[this.length - 1], "First is last");
-               a(last, this[0], "Last is first");
-               a.deep(x, Object(this), "Collection as third argument"); //jslint: skip
-       },
-       "": function (t, a) {
-               var x = {}, y, count;
-               t.call([1], function () { y = this; }, x);
-               a(y, x, "Scope");
-               y = 0;
-               t.call([3, 4, 4], function (a, i) { y += i; });
-               a(y, 3, "Indexes");
-
-               x = [1, 3];
-               x[5] = 'x';
-               y = 0;
-               count = 0;
-               a(t.call(x, function (a, i) { ++count; y += i; }), false, "Return");
-               a(y, 6, "Misssing Indexes");
-               a(count, 3, "Misssing Indexes, count");
-
-               count = 0;
-               a(t.call([-2, -3, -4, 2, -5], function (item) {
-                       ++count;
-                       return item > 0;
-               }), true, "Return");
-               a(count, 2, "Break after true is returned");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/implement.js
deleted file mode 100644 (file)
index 0d9f461..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/splice/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/splice/shim.js
deleted file mode 100644 (file)
index 2c751e6..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, 2, 2, 'bar'), [0, '2d'], "Plain array: result");
-       a.deep(arr, ["foo", undefined, "bar", false, x, null], "Plain array: change");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, 2, 2, 'bar');
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [0, '2d'], "Subclass: result");
-       a.deep(subArr, ["foo", undefined, "bar", false, x, null], "Subclass: change");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/uniq.js
deleted file mode 100644 (file)
index 2f7e6c4..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "": function (t, a) {
-               var o, x = {}, y = {}, z = {}, w;
-               o = [1, 2, x, 3, 1, 'raz', '1', y, x, 'trzy', z, 'raz'];
-
-               a.not(w = t.call(o), o, "Returns different object");
-               a.deep(w, [1, 2, x, 3, 'raz', '1', y, 'trzy', z], "Result");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/implement.js
deleted file mode 100644 (file)
index 9f40138..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/values/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/#/values/shim.js
deleted file mode 100644 (file)
index e590d8f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: '1', done: false });
-       a.deep(iterator.next(), { value: '2', done: false });
-       a.deep(iterator.next(), { value: '3', done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/__scopes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/__scopes.js
deleted file mode 100644 (file)
index fc240d3..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.Array = ['1', '2', '3'];
-
-exports.Arguments = (function () {
-       return arguments;
-}('1', '2', '3'));
-
-exports.String = "123";
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_is-extensible.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_is-extensible.js
deleted file mode 100644 (file)
index d387126..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'boolean');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js
deleted file mode 100644 (file)
index 29d8699..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (t, a) {
-       t((t === null) || isArray(t.prototype), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/_sub-array-dummy.js
deleted file mode 100644 (file)
index 29d8699..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (t, a) {
-       t((t === null) || isArray(t.prototype), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/implement.js
deleted file mode 100644 (file)
index e0db846..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../array/from/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/from/shim.js
deleted file mode 100644 (file)
index 310302a..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-// Some tests taken from: https://github.com/mathiasbynens/Array.from/blob/master/tests/tests.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var o = [1, 2, 3], MyType;
-       a.not(t(o), o, "Array");
-       a.deep(t(o), o, "Array: same content");
-       a.deep(t('12r3v'), ['1', '2', 'r', '3', 'v'], "String");
-       a.deep(t((function () { return arguments; }(3, o, 'raz'))),
-               [3, o, 'raz'], "Arguments");
-       a.deep(t((function () { return arguments; }(3))), [3],
-               "Arguments with one numeric value");
-
-       a.deep(t({ 0: 'raz', 1: 'dwa', length: 2 }), ['raz', 'dwa'], "Other");
-
-       a.deep(t(o, function (val) { return (val + 2) * 10; }, 10), [30, 40, 50],
-               "Mapping");
-
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.deep(t(3), [], "Primitive");
-
-       a(t.length, 1, "Length");
-       a.deep(t({ length: 0 }), [], "No values Array-like");
-       a.deep(t({ length: -1 }), [], "Invalid length Array-like");
-       a.deep(t({ length: -Infinity }), [], "Invalid length Array-like #2");
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.deep(t(false), [], "Boolean");
-       a.deep(t(-Infinity), [], "Inifity");
-       a.deep(t(-0), [], "-0");
-       a.deep(t(+0), [], "+0");
-       a.deep(t(1), [], "1");
-       a.deep(t(+Infinity), [], "+Infinity");
-       a.deep(t({}), [], "Plain object");
-       a.deep(t({ length: 1 }), [undefined], "Sparse array-like");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return x + x; }), ['aa', 'bb'],
-               "Map");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return String(this); }, undefined),
-               ['undefined', 'undefined'], "Map context");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return String(this); }, 'x'),
-               ['x', 'x'], "Map primitive context");
-       a.throws(function () { t({}, 'foo', 'x'); }, TypeError, "Non callable for map");
-
-       a.deep(t.call(null, { length: 1, '0': 'a' }), ['a'], "Null context");
-
-       a(t({ __proto__: { '0': 'abc', length: 1 } })[0], 'abc', "Values on prototype");
-
-       a.throws(function () { t.call(function () { return Object.freeze({}); }, {}); },
-               TypeError, "Contructor producing freezed objects");
-
-       // Ensure no setters are called for the indexes
-       // Ensure no setters are called for the indexes
-       MyType = function () {};
-       Object.defineProperty(MyType.prototype, '0', {
-               set: function (x) { throw new Error('Setter called: ' + x); }
-       });
-       a.deep(t.call(MyType, { '0': 'abc', length: 1 }), { '0': 'abc', length: 1 },
-               "Defined not set");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/generate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/generate.js
deleted file mode 100644 (file)
index d72e056..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-       a.deep(t(3), [undefined, undefined, undefined], "Just length");
-       a.deep(t(0, 'x'), [], "No repeat");
-       a.deep(t(1, x, y), [x], "Arguments length larger than repeat number");
-       a.deep(t(3, x), [x, x, x], "Single argument");
-       a.deep(t(5, x, y), [x, y, x, y, x], "Many arguments");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/is-plain-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/is-plain-array.js
deleted file mode 100644 (file)
index 871a08a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var SubArray = require('../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr = [1, 2, 3];
-       a(t(arr), true, "Array");
-       a(t(null), false, "Null");
-       a(t(), false, "Undefined");
-       a(t('234'), false, "String");
-       a(t(23), false, "Number");
-       a(t({}), false, "Plain object");
-       a(t({ length: 1, 0: 'raz' }), false, "Array-like");
-       a(t(Object.create(arr)), false, "Array extension");
-       if (!SubArray) return;
-       a(t(new SubArray(23)), false, "Subclass instance");
-       a(t(Array.prototype), false, "Array.prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/implement.js
deleted file mode 100644 (file)
index 30d53be..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../array/of/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/of/shim.js
deleted file mode 100644 (file)
index e697442..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-// Most tests taken from https://github.com/mathiasbynens/Array.of/blob/master/tests/tests.js
-// Thanks @mathiasbynens
-
-'use strict';
-
-var defineProperty = Object.defineProperty;
-
-module.exports = function (t, a) {
-       var x = {}, testObject, MyType;
-
-       a.deep(t(), [], "No arguments");
-       a.deep(t(3), [3], "One numeric argument");
-       a.deep(t(3, 'raz', null, x, undefined), [3, 'raz', null, x, undefined],
-               "Many arguments");
-
-       a(t.length, 0, "Length");
-
-       a.deep(t('abc'), ['abc'], "String");
-       a.deep(t(undefined), [undefined], "Undefined");
-       a.deep(t(null), [null], "Null");
-       a.deep(t(false), [false], "Boolean");
-       a.deep(t(-Infinity), [-Infinity], "Infinity");
-       a.deep(t(-0), [-0], "-0");
-       a.deep(t(+0), [+0], "+0");
-       a.deep(t(1), [1], "1");
-       a.deep(t(1, 2, 3), [1, 2, 3], "Numeric args");
-       a.deep(t(+Infinity), [+Infinity], "+Infinity");
-       a.deep(t({ '0': 'a', '1': 'b', '2': 'c', length: 3 }),
-               [{ '0': 'a', '1': 'b', '2': 'c', length: 3 }], "Array like");
-       a.deep(t(undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity),
-               [undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity], "Falsy arguments");
-
-       a.h1("Null context");
-       a.deep(t.call(null, 'abc'), ['abc'], "String");
-       a.deep(t.call(null, undefined), [undefined], "Undefined");
-       a.deep(t.call(null, null), [null], "Null");
-       a.deep(t.call(null, false), [false], "Boolean");
-       a.deep(t.call(null, -Infinity), [-Infinity], "-Infinity");
-       a.deep(t.call(null, -0), [-0], "-0");
-       a.deep(t.call(null, +0), [+0], "+0");
-       a.deep(t.call(null, 1), [1], "1");
-       a.deep(t.call(null, 1, 2, 3), [1, 2, 3], "Numeric");
-       a.deep(t.call(null, +Infinity), [+Infinity], "+Infinity");
-       a.deep(t.call(null, { '0': 'a', '1': 'b', '2': 'c', length: 3 }),
-               [{ '0': 'a', '1': 'b', '2': 'c', length: 3 }], "Array-like");
-       a.deep(t.call(null, undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity),
-               [undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity], "Falsy");
-
-       a.h1("Other constructor context");
-       a.deep(t.call(Object, 1, 2, 3), { '0': 1, '1': 2, '2': 3, length: 3 }, "Many arguments");
-
-       testObject = Object(3);
-       testObject[0] = 1;
-       testObject[1] = 2;
-       testObject[2] = 3;
-       testObject.length = 3;
-       a.deep(t.call(Object, 1, 2, 3), testObject, "Test object");
-       a(t.call(Object).length, 0, "No arguments");
-       a.throws(function () { t.call(function () { return Object.freeze({}); }); }, TypeError,
-               "Frozen instance");
-
-       // Ensure no setters are called for the indexes
-       MyType = function () {};
-       defineProperty(MyType.prototype, '0', {
-               set: function (x) { throw new Error('Setter called: ' + x); }
-       });
-       a.deep(t.call(MyType, 'abc'), { '0': 'abc', length: 1 }, "Define, not set");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/to-array.js
deleted file mode 100644 (file)
index 4985b5e..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = [1, 2, 3];
-       a(t(o), o, "Array");
-       a.deep(t('12r3v'), ['1', '2', 'r', '3', 'v'], "String");
-       a.deep(t((function () { return arguments; }(3, o, 'raz'))),
-               [3, o, 'raz'], "Arguments");
-       a.deep(t((function () { return arguments; }(3))), [3],
-               "Arguments with one numeric value");
-
-       a.deep(t({ 0: 'raz', 1: 'dwa', length: 2 }), ['raz', 'dwa'], "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/valid-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/array/valid-array.js
deleted file mode 100644 (file)
index 3732192..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(0); }, TypeError, "Number");
-       a.throws(function () { t(true); }, TypeError, "Boolean");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t(function () {}); }, TypeError, "Function");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
-       a(t(x = []), x, "Array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/boolean/is-boolean.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/boolean/is-boolean.js
deleted file mode 100644 (file)
index 4e6b3cb..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(false), true, "Boolean");
-       a(t(new Boolean(false)), true, "Boolean object");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-       a(t(/a/), false, "Regular expression");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/copy.js
deleted file mode 100644 (file)
index 767c5e1..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = new Date(), o2;
-
-       o2 = t.call(o);
-       a.not(o, o2, "Different objects");
-       a.ok(o2 instanceof Date, "Instance of Date");
-       a(o.getTime(), o2.getTime(), "Same time");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/days-in-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/days-in-month.js
deleted file mode 100644 (file)
index 9ddba55..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2001, 0, 1)), 31, "January");
-       a(t.call(new Date(2001, 1, 1)), 28, "February");
-       a(t.call(new Date(2000, 1, 1)), 29, "February (leap)");
-       a(t.call(new Date(2001, 2, 1)), 31, "March");
-       a(t.call(new Date(2001, 3, 1)), 30, "April");
-       a(t.call(new Date(2001, 4, 1)), 31, "May");
-       a(t.call(new Date(2001, 5, 1)), 30, "June");
-       a(t.call(new Date(2001, 6, 1)), 31, "July");
-       a(t.call(new Date(2001, 7, 1)), 31, "August");
-       a(t.call(new Date(2001, 8, 1)), 30, "September");
-       a(t.call(new Date(2001, 9, 1)), 31, "October");
-       a(t.call(new Date(2001, 10, 1)), 30, "November");
-       a(t.call(new Date(2001, 11, 1)), 31, "December");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-day.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-day.js
deleted file mode 100644 (file)
index d4f4a90..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 0, 1, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-month.js
deleted file mode 100644 (file)
index b4a81be..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 0, 15, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-year.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/floor-year.js
deleted file mode 100644 (file)
index aae117e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 5, 13, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/format.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/#/format.js
deleted file mode 100644 (file)
index e68e4bf..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var dt = new Date(2011, 2, 3, 3, 5, 5, 32);
-       a(t.call(dt, ' %Y.%y.%m.%d.%H.%M.%S.%L '), ' 2011.11.03.03.03.05.05.032 ');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/is-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/is-date.js
deleted file mode 100644 (file)
index 109093d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(new Date()), true, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/valid-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/date/valid-date.js
deleted file mode 100644 (file)
index 98787e4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var d = new Date();
-       a(t(d), d, "Date");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t({ valueOf: function () { return 20; } });
-       }, "Number object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/#/throw.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/#/throw.js
deleted file mode 100644 (file)
index 1213cfc..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var e = new Error();
-       try {
-               t.call(e);
-       } catch (e2) {
-               a(e2, e);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/custom.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/custom.js
deleted file mode 100644 (file)
index d4ff500..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var T = t, err = new T('My Error', 'MY_ERROR', { errno: 123 });
-       a(err instanceof Error, true, "Instance of error");
-       a(err.constructor, Error, "Constructor");
-       a(err.name, 'Error', "Name");
-       a(String(err), 'Error: My Error', "String representation");
-       a(err.code, 'MY_ERROR', "Code");
-       a(err.errno, 123, "Errno");
-       a(typeof err.stack, 'string', "Stack trace");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/is-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/is-error.js
deleted file mode 100644 (file)
index f8b5e20..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), false, "Undefined");
-       a(t(1), false, "Primitive");
-       a(t({}), false, "Objectt");
-       a(t({ toString: function () { return '[object Error]'; } }), false,
-               "Fake error");
-       a(t(new Error()), true, "Error");
-       a(t(new EvalError()), true, "EvalError");
-       a(t(new RangeError()), true, "RangeError");
-       a(t(new ReferenceError()), true, "ReferenceError");
-       a(t(new SyntaxError()), true, "SyntaxError");
-       a(t(new TypeError()), true, "TypeError");
-       a(t(new URIError()), true, "URIError");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/valid-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/error/valid-error.js
deleted file mode 100644 (file)
index e04cdb3..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var e = new Error();
-       a(t(e), e, "Error");
-       a.throws(function () {
-               t({});
-       }, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/compose.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/compose.js
deleted file mode 100644 (file)
index 83de5e8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var f = function (a, b) { return ['a', arguments.length, a, b]; }
-  , g = function (a) { return ['b', arguments.length].concat(a); }
-  , h = function (a) { return ['c', arguments.length].concat(a); };
-
-module.exports = function (t, a) {
-       a.deep(t.call(h, g, f)(1, 2), ['c', 1, 'b', 1, 'a', 2, 1, 2]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/copy.js
deleted file mode 100644 (file)
index 7a22e2f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var foo = 'raz', bar = 'dwa'
-         , fn = function marko(a, b) { return this + a + b + foo + bar; }
-         , result, o = {};
-
-       fn.prototype = o;
-
-       fn.foo = 'raz';
-
-       result = t.call(fn);
-
-       a(result.length, fn.length, "Length");
-       a(result.name, fn.name, "Length");
-       a(result.call('marko', 'el', 'fe'), 'markoelferazdwa', "Body");
-       a(result.prototype, fn.prototype, "Prototype");
-       a(result.foo, fn.foo, "Custom property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/curry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/curry.js
deleted file mode 100644 (file)
index 18fb038..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array')
-
-  , f = function () { return toArray(arguments); };
-
-module.exports = function (t, a) {
-       var x, y = {}, z;
-       a.deep(t.call(f, 0, 1, 2)(3), [], "0 arguments");
-       x = t.call(f, 5, {});
-       a(x.length, 5, "Length #1");
-       z = x(1, 2);
-       a(z.length, 3, "Length #2");
-       z = z(3, 4);
-       a(z.length, 1, "Length #1");
-       a.deep(z(5, 6), [1, 2, 3, 4, 5], "Many arguments");
-       a.deep(x(8, 3)(y, 45)('raz', 6), [8, 3, y, 45, 'raz'], "Many arguments #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/lock.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/lock.js
deleted file mode 100644 (file)
index 44a12d7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(function () {
-               return arguments.length;
-       })(1, 2, 3), 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/not.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/not.js
deleted file mode 100644 (file)
index c0f5e9d..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var identity = require('../../../function/identity')
-  , noop     = require('../../../function/noop');
-
-module.exports = function (t, a) {
-       a(t.call(identity)(''), true, "Falsy");
-       a(t.call(noop)(), true, "Undefined");
-       a(t.call(identity)({}), false, "Any object");
-       a(t.call(identity)(true), false, "True");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/partial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/partial.js
deleted file mode 100644 (file)
index bd00ce7..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array')
-
-  , f = function () { return toArray(arguments); };
-
-module.exports = function (t, a) {
-       a.deep(t.call(f, 1)(2, 3), [1, 2, 3]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/spread.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/spread.js
deleted file mode 100644 (file)
index b82dfec..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var f = function (a, b) { return this[a] + this[b]; }
-  , o = { a: 3, b: 4 };
-
-module.exports = function (t, a) {
-       a(t.call(f).call(o, ['a', 'b']), 7);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/to-string-tokens.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/#/to-string-tokens.js
deleted file mode 100644 (file)
index 4c54d30..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t.call(function (a, b) { return this[a] + this[b]; }),
-               { args: 'a, b', body: ' return this[a] + this[b]; ' });
-       a.deep(t.call(function () {}),
-               { args: '', body: '' });
-       a.deep(t.call(function (raz) {}),
-               { args: 'raz', body: '' });
-       a.deep(t.call(function () { Object(); }),
-               { args: '', body: ' Object(); ' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/_define-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/_define-length.js
deleted file mode 100644 (file)
index 8f037e8..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var foo = 'raz', bar = 'dwa'
-         , fn = function (a, b) { return this + a + b + foo + bar; }
-         , result;
-
-       result = t(fn, 3);
-       a(result.call('marko', 'el', 'fe'), 'markoelferazdwa', "Content");
-       a(result.length, 3, "Length");
-       a(result.prototype, fn.prototype, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/constant.js
deleted file mode 100644 (file)
index fda52aa..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = {};
-
-module.exports = function (t, a) {
-       a(t(o)(), o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/identity.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/identity.js
deleted file mode 100644 (file)
index 8013e2e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = {};
-
-module.exports = function (t, a) {
-       a(t(o), o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/invoke.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/invoke.js
deleted file mode 100644 (file)
index fcce4aa..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var constant = require('../../function/constant')
-
-  , o = { b: constant('c') };
-
-module.exports = function (t, a) {
-       a(t('b')(o), 'c');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-arguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-arguments.js
deleted file mode 100644 (file)
index f8de881..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var args, dummy;
-       args = (function () { return arguments; }());
-       dummy = { '0': 1, '1': 2 };
-       Object.defineProperty(dummy, 'length', { value: 2 });
-       a(t(args), true, "Arguments");
-       a(t(dummy), false, "Dummy");
-       a(t([]), false, "Array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/is-function.js
deleted file mode 100644 (file)
index 83acc42..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var o = { call: Function.prototype.call, apply: Function.prototype.apply };
-
-module.exports = function (t, a) {
-       a(t(function () {}), true, "Function is function");
-       a(t(o), false, "Plain object is not function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/noop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/noop.js
deleted file mode 100644 (file)
index 4305c6f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t(1, 2, 3), 'undefined');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/pluck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/pluck.js
deleted file mode 100644 (file)
index 5bf9583..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = { foo: 'bar' };
-
-module.exports = function (t, a) {
-       a(t('foo')(o), o.foo);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/valid-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/function/valid-function.js
deleted file mode 100644 (file)
index 59b1623..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var f = function () {};
-       a(t(f), f, "Function");
-       f = new Function();
-       a(t(f), f, "Function");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t(/re/);
-       }, "RegExp");
-       a.throws(function () {
-               t({ call: function () { return 20; } });
-       }, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/global.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/global.js
deleted file mode 100644 (file)
index 1f452ae..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.ok(t && typeof t === 'object');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_pack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_pack-ieee754.js
deleted file mode 100644 (file)
index 9041431..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t(1.337, 8, 23), [63, 171, 34, 209]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_unpack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/_unpack-ieee754.js
deleted file mode 100644 (file)
index ca30b82..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t([63, 171, 34, 209], 8, 23), 1.3370000123977661);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/implement.js
deleted file mode 100644 (file)
index 01fb6d0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/acosh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/acosh/shim.js
deleted file mode 100644 (file)
index 3d710c7..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-1), NaN, "Negative");
-       a(t(0), NaN, "Zero");
-       a(t(0.5), NaN, "Below 1");
-       a(t(1), 0, "1");
-       a(t(2), 1.3169578969248166, "Other");
-       a(t(Infinity), Infinity, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/implement.js
deleted file mode 100644 (file)
index d1fcece..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/asinh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/asinh/shim.js
deleted file mode 100644 (file)
index d9fbe49..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(-2), -1.4436354751788103, "Negative");
-       a(t(2), 1.4436354751788103, "Positive");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/implement.js
deleted file mode 100644 (file)
index cba8fad..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/atanh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/atanh/shim.js
deleted file mode 100644 (file)
index a857b49..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-2), NaN, "Less than -1");
-       a(t(2), NaN, "Greater than 1");
-       a(t(-1), -Infinity, "-1");
-       a(t(1), Infinity, "1");
-       a(t(0), 0, "Zero");
-       a(t(0.5), 0.5493061443340549, "Ohter");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/implement.js
deleted file mode 100644 (file)
index 374d4b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/cbrt/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cbrt/shim.js
deleted file mode 100644 (file)
index 43ab68b..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(-1), -1, "-1");
-       a(t(1), 1, "1");
-       a(t(2), 1.2599210498948732, "Ohter");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/implement.js
deleted file mode 100644 (file)
index 44f8815..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/clz32/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/clz32/shim.js
deleted file mode 100644 (file)
index a769b39..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(1), 31, "1");
-       a(t(1000), 22, "1000");
-       a(t(), 32, "No arguments");
-       a(t(Infinity), 32, "Infinity");
-       a(t(-Infinity), 32, "-Infinity");
-       a(t("foo"), 32, "String");
-       a(t(true), 31, "Boolean");
-       a(t(3.5), 30, "Float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/implement.js
deleted file mode 100644 (file)
index f3c712b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/cosh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/cosh/shim.js
deleted file mode 100644 (file)
index 618ba26..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 1, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), Infinity, "-Infinity");
-       a(t(1), 1.5430806348152437, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/implement.js
deleted file mode 100644 (file)
index c212967..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/expm1/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/expm1/shim.js
deleted file mode 100644 (file)
index 15f0e79..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -1, "-Infinity");
-       a(t(1).toFixed(15), '1.718281828459045', "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/implement.js
deleted file mode 100644 (file)
index c909af7..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/fround/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/fround/shim.js
deleted file mode 100644 (file)
index 4ef6d4e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(1.337), 1.3370000123977661, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/implement.js
deleted file mode 100644 (file)
index 9946646..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/hypot/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/hypot/shim.js
deleted file mode 100644 (file)
index 91d950a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), 0, "No arguments");
-       a(t(0, -0, 0), 0, "Zeros");
-       a(t(4, NaN, Infinity), Infinity, "Infinity");
-       a(t(4, NaN, -Infinity), Infinity, "Infinity");
-       a(t(4, NaN, 34), NaN, "NaN");
-       a(t(3, 4), 5, "#1");
-       a(t(3, 4, 5), 7.0710678118654755, "#2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/implement.js
deleted file mode 100644 (file)
index 7b2a2a6..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/imul/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/imul/shim.js
deleted file mode 100644 (file)
index a2ca7fe..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), 0, "No arguments");
-       a(t(0, 0), 0, "Zeros");
-       a(t(2, 4), 8, "#1");
-       a(t(-1, 8), -8, "#2");
-       a(t(0xfffffffe, 5), -10, "#3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/implement.js
deleted file mode 100644 (file)
index 4b3b4a4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log10/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log10/shim.js
deleted file mode 100644 (file)
index 5fa0d5b..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-0.5), NaN, "Less than 0");
-       a(t(0), -Infinity, "0");
-       a(t(1), 0, "1");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(2), 0.3010299956639812, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/implement.js
deleted file mode 100644 (file)
index 5d269bd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log1p/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log1p/shim.js
deleted file mode 100644 (file)
index d495ce0..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-1.5), NaN, "Less than -1");
-       a(t(-1), -Infinity, "-1");
-       a(t(0), 0, "0");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(1), 0.6931471805599453, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/implement.js
deleted file mode 100644 (file)
index 92b501a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log2/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/log2/shim.js
deleted file mode 100644 (file)
index faa9c32..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-0.5), NaN, "Less than 0");
-       a(t(0), -Infinity, "0");
-       a(t(1), 0, "1");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(3).toFixed(15), '1.584962500721156', "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/implement.js
deleted file mode 100644 (file)
index 5875c42..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/sign/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sign/shim.js
deleted file mode 100644 (file)
index b6b89c1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var is = require('../../../object/is');
-
-module.exports = function (t, a) {
-       a(is(t(0), +0), true, "+0");
-       a(is(t(-0), -0), true, "-0");
-       a(t({}), NaN, true, "NaN");
-       a(t(-234234234), -1, "Negative");
-       a(t(234234234), 1, "Positive");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/implement.js
deleted file mode 100644 (file)
index e52089e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/sinh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/sinh/shim.js
deleted file mode 100644 (file)
index 4e9bf61..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(1), 1.1752011936438014, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/implement.js
deleted file mode 100644 (file)
index a96bf19..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/tanh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/tanh/shim.js
deleted file mode 100644 (file)
index 36bf724..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), 1, "Infinity");
-       a(t(-Infinity), -1, "-Infinity");
-       a(t(1), 0.7615941559557649, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/implement.js
deleted file mode 100644 (file)
index 1830e61..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/trunc/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/math/trunc/shim.js
deleted file mode 100644 (file)
index 9e5eed7..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var is = require('../../../object/is');
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(is(t(0.234), 0), true, "0");
-       a(is(t(-0.234), -0), true, "-0");
-       a(t(13.7), 13, "Positive #1");
-       a(t(12.3), 12, "Positive #2");
-       a(t(-12.3), -12, "Negative #1");
-       a(t(-14.7), -14, "Negative #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/#/pad.js
deleted file mode 100644 (file)
index e020823..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(78, 4), '0078');
-       a(t.call(65.12323, 4, 3), '0065.123', "Precision");
-       a(t.call(65, 4, 3), '0065.000', "Precision integer");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/implement.js
deleted file mode 100644 (file)
index 574da75..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/epsilon/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/implement.js
deleted file mode 100644 (file)
index b35345f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-finite/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-finite/shim.js
deleted file mode 100644 (file)
index 5205d1c..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/implement.js
deleted file mode 100644 (file)
index 127149c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-integer/shim.js
deleted file mode 100644 (file)
index 3f3985c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t(2.34), false, "Float");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/implement.js
deleted file mode 100644 (file)
index 2f01d6d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-nan/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-nan/shim.js
deleted file mode 100644 (file)
index 425723e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), false, "Number");
-       a(t({}), false, "Not numeric");
-       a(t(NaN), true, "NaN");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-number.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-number.js
deleted file mode 100644 (file)
index 2751334..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(0), true, "Zero");
-       a(t(NaN), true, "NaN");
-       a(t(Infinity), true, "Infinity");
-       a(t(12), true, "Number");
-       a(t(false), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new Number(2)), true, "Number object");
-       a(t('asdfaf'), false, "String");
-       a(t(''), false, "Empty String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js
deleted file mode 100644 (file)
index 33667e2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js
deleted file mode 100644 (file)
index 77e0667..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t(2.34), false, "Float");
-       a(t(Math.pow(2, 53)), false, "Too large");
-       a(t(Math.pow(2, 53) - 1), true, "Maximum");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js
deleted file mode 100644 (file)
index bef00ca..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/max-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js
deleted file mode 100644 (file)
index fa44024..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/min-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-integer.js
deleted file mode 100644 (file)
index ff326ba..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "NaN");
-       a(t(20), 20, "Positive integer");
-       a(t('-20'), -20, "String negative integer");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(15.343), 15, "Float");
-       a(t(-15.343), -15, "Negative float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-pos-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-pos-integer.js
deleted file mode 100644 (file)
index 2f3b4e6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "NaN");
-       a(t(20), 20, "Positive integer");
-       a(t(-20), 0, "Negative integer");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(15.343), 15, "Float");
-       a(t(-15.343), 0, "Negative float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-uint32.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/number/to-uint32.js
deleted file mode 100644 (file)
index 00d05bd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "Not numeric");
-       a(t(-4), 4294967292, "Negative");
-       a(t(133432), 133432, "Positive");
-       a(t(8589934592), 0, "Greater than maximum");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/_iterate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/_iterate.js
deleted file mode 100644 (file)
index 179afed..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { raz: 1, dwa: 2, trzy: 3 }
-         , o2 = {}, o3 = {}, arr, i = -1;
-
-       t = t('forEach');
-       t(o, function (value, name, self, index) {
-               o2[name] = value;
-               a(index, ++i, "Index");
-               a(self, o, "Self");
-               a(this, o3, "Scope");
-       }, o3);
-       a.deep(o2, o);
-
-       arr = [];
-       o2 = {};
-       i = -1;
-       t(o, function (value, name, self, index) {
-               arr.push(value);
-               o2[name] = value;
-               a(index, ++i, "Index");
-               a(self, o, "Self");
-               a(this, o3, "Scope");
-       }, o3, function (a, b) {
-               return o[b] - o[a];
-       });
-       a.deep(o2, o, "Sort by Values: Content");
-       a.deep(arr, [3, 2, 1], "Sort by Values: Order");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/implement.js
deleted file mode 100644 (file)
index 4006559..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../object/assign/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/assign/shim.js
deleted file mode 100644 (file)
index 9afe5f6..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o1 = { a: 1, b: 2 }
-         , o2 = { b: 3, c: 4 };
-
-       a(t(o1, o2), o1, "Returns self");
-       a.deep(o1, { a: 1, b: 3, c: 4 }, "Single: content");
-
-       a.deep(t({}, o1, o2), { a: 1, b: 3, c: 4 }, "Multi argument");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/clear.js
deleted file mode 100644 (file)
index bfc08cc..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var isEmpty = require('../../object/is-empty');
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t(x), x, "Empty: Returns same object");
-       a(isEmpty(x), true, "Empty: Not changed");
-       x.foo = 'raz';
-       x.bar = 'dwa';
-       a(t(x), x, "Same object");
-       a(isEmpty(x), true, "Emptied");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compact.js
deleted file mode 100644 (file)
index 9c9064c..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {}, z;
-       z = t(x);
-       a.not(z, x, "Returns different object");
-       a.deep(z, {}, "Empty on empty");
-
-       x = { foo: 'bar', a: 0, b: false, c: '', d: '0', e: null, bar: y,
-               elo: undefined };
-       z = t(x);
-       a.deep(z, { foo: 'bar', a: 0, b: false, c: '', d: '0', bar: y },
-               "Cleared null values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/compare.js
deleted file mode 100644 (file)
index cb94241..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var d = new Date();
-
-       a.ok(t(12, 3) > 0, "Numbers");
-       a.ok(t(2, 13) < 0, "Numbers #2");
-       a.ok(t("aaa", "aa") > 0, "Strings");
-       a.ok(t("aa", "ab") < 0, "Strings #2");
-       a(t("aa", "aa"), 0, "Strings same");
-       a(t(d, new Date(d.getTime())), 0, "Same date");
-       a.ok(t(d, new Date(d.getTime() + 1)) < 0, "Different date");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy-deep.js
deleted file mode 100644 (file)
index a4023bc..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var stringify = JSON.stringify;
-
-module.exports = function (t, a) {
-       var o = { 1: 'raz', 2: 'dwa', 3: 'trzy' }
-         , no = t(o);
-
-       a.not(no, o, "Return different object");
-       a(stringify(no), stringify(o), "Match properties and values");
-
-       o = { foo: 'bar', raz: { dwa: 'dwa',
-               trzy: { cztery: 'pięć', 'sześć': 'siedem' }, osiem: {},
-               'dziewięć': function () { } }, 'dziesięć': 10 };
-       o.raz.rec = o;
-
-       no = t(o);
-       a.not(o.raz, no.raz, "Deep");
-       a.not(o.raz.trzy, no.raz.trzy, "Deep #2");
-       a(stringify(o.raz.trzy), stringify(no.raz.trzy), "Deep content");
-       a(no.raz.rec, no, "Recursive");
-       a.not(o.raz.osiem, no.raz.osiem, "Empty object");
-       a(o.raz['dziewięć'], no.raz['dziewięć'], "Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/copy.js
deleted file mode 100644 (file)
index 2f222ef..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var stringify = JSON.stringify;
-
-module.exports = function (t, a) {
-       var o = { 1: 'raz', 2: 'dwa', 3: 'trzy' }
-         , no = t(o);
-
-       a.not(no, o, "Return different object");
-       a(stringify(no), stringify(o), "Match properties and values");
-
-       o = { foo: 'bar', raz: { dwa: 'dwa',
-               trzy: { cztery: 'pięć', 'sześć': 'siedem' }, osiem: {},
-               'dziewięć': function () { } }, 'dziesięć': 10 };
-       o.raz.rec = o;
-
-       no = t(o);
-       a(o.raz, no.raz, "Shallow");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/count.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/count.js
deleted file mode 100644 (file)
index 494f4f1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "Empty");
-       a(t({ raz: 1, dwa: null, trzy: undefined, cztery: 0 }), 4,
-               "Some properties");
-       a(t(Object.defineProperties({}, {
-               raz: { value: 'raz' },
-               dwa: { value: 'dwa', enumerable: true }
-       })), 1, "Some properties hidden");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/create.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/create.js
deleted file mode 100644 (file)
index 8b7be21..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../../object/set-prototype-of')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, obj;
-
-       a(getPrototypeOf(t(x)), x, "Normal object");
-       a(getPrototypeOf(t(null)),
-               (setPrototypeOf && setPrototypeOf.nullPolyfill) || null, "Null");
-
-       a.h1("Properties");
-       a.h2("Normal object");
-       a(getPrototypeOf(obj = t(x, { foo: { value: 'bar' } })), x, "Prototype");
-       a(obj.foo, 'bar', "Property");
-       a.h2("Null");
-       a(getPrototypeOf(obj = t(null, { foo: { value: 'bar2' } })),
-               (setPrototypeOf && setPrototypeOf.nullPolyfill) || null, "Prototype");
-       a(obj.foo, 'bar2', "Property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/eq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/eq.js
deleted file mode 100644 (file)
index 02b3f00..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = {};
-       a(t(o, {}), false, "Different objects");
-       a(t(o, o), true, "Same objects");
-       a(t('1', '1'), true, "Same primitive");
-       a(t('1', 1), false, "Different primitive types");
-       a(t(NaN, NaN), true, "NaN");
-       a(t(0, 0), true, "0,0");
-       a(t(0, -0), true, "0,-0");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/every.js
deleted file mode 100644 (file)
index 07d5bbb..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var o = { 1: 1, 2: 2, 3: 3 };
-
-module.exports = function (t, a) {
-       var o2 = {};
-       t(o, function (value, name) {
-               o2[name] = value;
-               return true;
-       });
-       a(JSON.stringify(o2), JSON.stringify(o), "Iterates");
-
-       a(t(o, function () {
-               return true;
-       }), true, "Succeeds");
-
-       a(t(o, function () {
-               return false;
-       }), false, "Fails");
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/filter.js
deleted file mode 100644 (file)
index 7307da8..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ 1: 1, 2: 2, 3: 3, 4: 4 },
-               function (value) { return Boolean(value % 2); }), { 1: 1, 3: 3 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/first-key.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/first-key.js
deleted file mode 100644 (file)
index 8169cd2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = Object.create(null);
-       a(t(x), null, "Normal: Empty");
-       a(t(y), null, "Null extension: Empty");
-       x.foo = 'raz';
-       x.bar = 343;
-       a(['foo', 'bar'].indexOf(t(x)) !== -1, true, "Normal");
-       y.elo = 'foo';
-       y.mar = 'wew';
-       a(['elo', 'mar'].indexOf(t(y)) !== -1, true, "Null extension");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/flatten.js
deleted file mode 100644 (file)
index ca342ea..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ a: { aa: 1, ab: 2 }, b: { ba: 3, bb: 4 } }),
-               { aa: 1, ab: 2, ba: 3, bb: 4 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/for-each.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/for-each.js
deleted file mode 100644 (file)
index 8690d1e..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { raz: 1, dwa: 2, trzy: 3 }
-         , o2 = {};
-       a(t(o, function (value, name) {
-               o2[name] = value;
-       }), undefined, "Return");
-       a.deep(o2, o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/get-property-names.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/get-property-names.js
deleted file mode 100644 (file)
index b91c3dd..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { first: 1, second: 4 }, r1, r2;
-       o = Object.create(o, {
-               third: { value: null }
-       });
-       o.first = 2;
-       o = Object.create(o);
-       o.fourth = 3;
-
-       r1 = t(o);
-       r1.sort();
-       r2 = ['first', 'second', 'third', 'fourth']
-               .concat(Object.getOwnPropertyNames(Object.prototype));
-       r2.sort();
-       a.deep(r1, r2);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-array-like.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-array-like.js
deleted file mode 100644 (file)
index 6295973..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t([]), true, "Array");
-       a(t(""), true, "String");
-       a(t((function () { return arguments; }())), true, "Arguments");
-       a(t({ length: 0 }), true, "List object");
-       a(t(function () {}), false, "Function");
-       a(t({}), false, "Plain object");
-       a(t(/raz/), false, "Regexp");
-       a(t(), false, "No argument");
-       a(t(null), false, "Null");
-       a(t(undefined), false, "Undefined");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-callable.js
deleted file mode 100644 (file)
index 625e221..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(function () {}), true, "Function");
-       a(t({}), false, "Object");
-       a(t(), false, "Undefined");
-       a(t(null), false, "Null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy-deep.js
deleted file mode 100644 (file)
index 4f14cbb..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x, y;
-
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 3 }), true, "Same");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Different property value");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2 }), false,
-               "Property only in source");
-       a(t({ 1: 1, 2: 2 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Property only in target");
-
-       a(t("raz", "dwa"), false, "String: diff");
-       a(t("raz", "raz"), true, "String: same");
-       a(t("32", 32), false, "String & Number");
-
-       a(t([1, 'raz', true], [1, 'raz', true]), true, "Array: same");
-       a(t([1, 'raz', undefined], [1, 'raz']), false, "Array: diff");
-       a(t(['foo'], ['one']), false, "Array: One value comparision");
-
-       x = { foo: { bar: { mar: {} } } };
-       y = { foo: { bar: { mar: {} } } };
-       a(t(x, y), true, "Deep");
-
-       a(t({ foo: { bar: { mar: 'foo' } } }, { foo: { bar: { mar: {} } } }),
-               false, "Deep: false");
-
-       x = { foo: { bar: { mar: {} } } };
-       x.rec = { foo: x };
-
-       y = { foo: { bar: { mar: {} } } };
-       y.rec = { foo: x };
-
-       a(t(x, y), true, "Object: Infinite Recursion: Same #1");
-
-       x.rec.foo = y;
-       a(t(x, y), true, "Object: Infinite Recursion: Same #2");
-
-       x.rec.foo = x;
-       y.rec.foo = y;
-       a(t(x, y), true, "Object: Infinite Recursion: Same #3");
-
-       y.foo.bar.mar = 'raz';
-       a(t(x, y), false, "Object: Infinite Recursion: Diff");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-copy.js
deleted file mode 100644 (file)
index 394e2ed..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 3 }), true, "Same");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Different property value");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2 }), false,
-               "Property only in source");
-       a(t({ 1: 1, 2: 2 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Property only in target");
-
-       a(t("raz", "dwa"), false, "String: diff");
-       a(t("raz", "raz"), true, "String: same");
-       a(t("32", 32), false, "String & Number");
-
-       a(t([1, 'raz', true], [1, 'raz', true]), true, "Array: same");
-       a(t([1, 'raz', undefined], [1, 'raz']), false, "Array: diff");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-empty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-empty.js
deleted file mode 100644 (file)
index b560c2c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), true, "Empty");
-       a(t({ 1: 1 }), false, "Not empty");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-object.js
deleted file mode 100644 (file)
index 72c8aa6..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(null), false, "Null");
-       a(t(new Date()), true, "Date");
-       a(t(new String('raz')), true, "String object");
-       a(t({}), true, "Plain object");
-       a(t(/a/), true, "Regular expression");
-       a(t(function () {}), true, "Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-plain-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is-plain-object.js
deleted file mode 100644 (file)
index e988829..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), true, "Empty {} is plain object");
-       a(t({ a: true }), true, "{} with property is plain object");
-       a(t({ prototype: 1, constructor: 2, __proto__:  3 }), true,
-               "{} with any property keys is plain object");
-       a(t(null), false, "Null is not plain object");
-       a(t('string'), false, "Primitive is not plain object");
-       a(t(function () {}), false, "Function is not plain object");
-       a(t(Object.create({})), false,
-               "Object whose prototype is not Object.prototype is not plain object");
-       a(t(Object.create(Object.prototype)), true,
-               "Object whose prototype is Object.prototype is plain object");
-       a(t(Object.create(null)), true,
-               "Object whose prototype is null is plain object");
-       a(t(Object.prototype), false, "Object.prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/is.js
deleted file mode 100644 (file)
index 4f8948c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = {};
-       a(t(o, {}), false, "Different objects");
-       a(t(o, o), true, "Same objects");
-       a(t('1', '1'), true, "Same primitive");
-       a(t('1', 1), false, "Different primitive types");
-       a(t(NaN, NaN), true, "NaN");
-       a(t(0, 0), true, "0,0");
-       a(t(0, -0), false, "0,-0");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/key-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/key-of.js
deleted file mode 100644 (file)
index a9225a0..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {}
-         , o = { foo: 'bar', raz: x, trzy: 'cztery', five: '6' };
-
-       a(t(o, 'bar'), 'foo', "First property");
-       a(t(o, 6), null, "Primitive that's not there");
-       a(t(o, x), 'raz', "Object");
-       a(t(o, y), null, "Object that's not there");
-       a(t(o, '6'), 'five', "Last property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/implement.js
deleted file mode 100644 (file)
index 179e1e5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../object/keys/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/keys/shim.js
deleted file mode 100644 (file)
index ed29eeb..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ foo: 'bar' }), ['foo'], "Object");
-       a.deep(t('raz'), ['0', '1', '2'], "Primitive");
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Undefined");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map-keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map-keys.js
deleted file mode 100644 (file)
index be84825..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ 1: 1, 2: 2, 3: 3 }, function (key, value) {
-               return 'x' + (key + value);
-       }), { x11: 1, x22: 2, x33: 3 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/map.js
deleted file mode 100644 (file)
index f9cc09c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var obj = { 1: 1, 2: 2, 3: 3 };
-       a.deep(t(obj, function (value, key, context) {
-               a(context, obj, "Context argument");
-               return (value + 1) + key;
-       }), { 1: '21', 2: '32', 3: '43' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin-prototypes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin-prototypes.js
deleted file mode 100644 (file)
index d1c727a..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o, o1, o2, x, y = {}, z = {};
-       o = { inherited: true, visible: 23 };
-       o1 = Object.create(o);
-       o1.visible = z;
-       o1.nonremovable = 'raz';
-       Object.defineProperty(o1, 'hidden', { value: 'hidden' });
-
-       o2 = Object.defineProperties({}, { nonremovable: { value: y } });
-       o2.other = 'other';
-
-       try { t(o2, o1); } catch (ignore) {}
-
-       a(o2.visible, z, "Enumerable");
-       a(o1.hidden, 'hidden', "Not Enumerable");
-       a(o2.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(o2.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(o2.inherited, true, "Extend deep");
-
-       a(o2.nonremovable, y, "Do not overwrite non configurable");
-       a(o2.other, 'other', "Own kept");
-
-       x = {};
-       t(x, o2);
-       try { t(x, o1); } catch (ignore) {}
-
-       a(x.visible, z, "Enumerable");
-       a(x.hidden, 'hidden', "Not Enumerable");
-       a(x.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(x.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(x.inherited, true, "Extend deep");
-
-       a(x.nonremovable, y, "Ignored non configurable");
-       a(x.other, 'other', "Other");
-
-       x.visible = 3;
-       a(x.visible, 3, "Writable is writable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               x.hidden = 3;
-       }, "Not writable is not writable");
-
-       x = {};
-       t(x, o1);
-       delete x.visible;
-       a.ok(!x.hasOwnProperty('visible'), "Configurable is configurable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               delete x.hidden;
-       }, "Not configurable is not configurable");
-
-       x = Object.defineProperty({}, 'foo',
-               { configurable: false, writable: true, enumerable: false, value: 'bar' });
-
-       try { t(x, { foo: 'lorem' }); } catch (ignore) {}
-       a(x.foo, 'bar', "Writable, not enumerable");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/mixin.js
deleted file mode 100644 (file)
index 866005b..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o, o1, o2, x, y = {}, z = {};
-       o = { inherited: true };
-       o1 = Object.create(o);
-       o1.visible = z;
-       o1.nonremovable = 'raz';
-       Object.defineProperty(o1, 'hidden', { value: 'hidden' });
-
-       o2 = Object.defineProperties({}, { nonremovable: { value: y } });
-       o2.other = 'other';
-
-       try { t(o2, o1); } catch (ignore) {}
-
-       a(o2.visible, z, "Enumerable");
-       a(o1.hidden, 'hidden', "Not Enumerable");
-       a(o2.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(o2.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(o2.hasOwnProperty('inherited'), false, "Extend only own");
-       a(o2.inherited, undefined, "Extend ony own: value");
-
-       a(o2.nonremovable, y, "Do not overwrite non configurable");
-       a(o2.other, 'other', "Own kept");
-
-       x = {};
-       t(x, o2);
-       try { t(x, o1); } catch (ignore) {}
-
-       a(x.visible, z, "Enumerable");
-       a(x.hidden, 'hidden', "Not Enumerable");
-       a(x.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(x.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(x.hasOwnProperty('inherited'), false, "Extend only own");
-       a(x.inherited, undefined, "Extend ony own: value");
-
-       a(x.nonremovable, y, "Ignored non configurable");
-       a(x.other, 'other', "Other");
-
-       x.visible = 3;
-       a(x.visible, 3, "Writable is writable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               x.hidden = 3;
-       }, "Not writable is not writable");
-
-       x = {};
-       t(x, o1);
-       delete x.visible;
-       a.ok(!x.hasOwnProperty('visible'), "Configurable is configurable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               delete x.hidden;
-       }, "Not configurable is not configurable");
-
-       x = Object.defineProperty({}, 'foo',
-               { configurable: false, writable: true, enumerable: false, value: 'bar' });
-
-       try { t(x, { foo: 'lorem' }); } catch (ignore) {}
-       a(x.foo, 'bar', "Writable, not enumerable");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/normalize-options.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/normalize-options.js
deleted file mode 100644 (file)
index 0d2d4da..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict';
-
-var create = Object.create, defineProperty = Object.defineProperty;
-
-module.exports = function (t, a) {
-       var x = { foo: 'raz', bar: 'dwa' }, y;
-       y = t(x);
-       a.not(y, x, "Returns copy");
-       a.deep(y, x, "Plain");
-
-       x = { raz: 'one', dwa: 'two' };
-       defineProperty(x, 'get', {
-               configurable: true,
-               enumerable: true,
-               get: function () { return this.dwa; }
-       });
-       x = create(x);
-       x.trzy = 'three';
-       x.cztery = 'four';
-       x = create(x);
-       x.dwa = 'two!';
-       x.trzy = 'three!';
-       x.piec = 'five';
-       x.szesc = 'six';
-
-       a.deep(t(x), { raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
-               piec: 'five', szesc: 'six', get: 'two!' }, "Deep object");
-
-       a.deep(t({ marko: 'raz', raz: 'foo' }, x, { szesc: 'elo', siedem: 'bibg' }),
-               { marko: 'raz', raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
-                       piec: 'five', szesc: 'elo', siedem: 'bibg', get: 'two!' }, "Multiple options");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/primitive-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/primitive-set.js
deleted file mode 100644 (file)
index 839857e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var getPropertyNames = require('../../object/get-property-names')
-  , isPlainObject    = require('../../object/is-plain-object');
-
-module.exports = function (t, a) {
-       var x = t();
-       a(isPlainObject(x), true, "Plain object");
-       a.deep(getPropertyNames(x), [], "No properties");
-       x.foo = 'bar';
-       a.deep(getPropertyNames(x), ['foo'], "Extensible");
-
-       a.deep(t('raz', 'dwa', 3), { raz: true, dwa: true, 3: true },
-               "Arguments handling");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/safe-traverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/safe-traverse.js
deleted file mode 100644 (file)
index d30cdef..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var obj = { foo: { bar: { lorem: 12  } } };
-       a(t(obj), obj, "No props");
-       a(t(obj, 'foo'), obj.foo, "One");
-       a(t(obj, 'raz'), undefined, "One: Fail");
-       a(t(obj, 'foo', 'bar'), obj.foo.bar, "Two");
-       a(t(obj, 'dsd', 'raz'), undefined, "Two: Fail #1");
-       a(t(obj, 'foo', 'raz'), undefined, "Two: Fail #2");
-       a(t(obj, 'foo', 'bar', 'lorem'), obj.foo.bar.lorem, "Three");
-       a(t(obj, 'dsd', 'raz', 'fef'), undefined, "Three: Fail #1");
-       a(t(obj, 'foo', 'raz', 'asdf'), undefined, "Three: Fail #2");
-       a(t(obj, 'foo', 'bar', 'asd'), undefined, "Three: Fail #3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/serialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/serialize.js
deleted file mode 100644 (file)
index 43eed6a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var fn = function (raz, dwa) { return raz + dwa; };
-       a(t(), 'undefined', "Undefined");
-       a(t(null), 'null', "Null");
-       a(t(null), 'null', "Null");
-       a(t('raz'), '"raz"', "String");
-       a(t('raz"ddwa\ntrzy'), '"raz\\"ddwa\\ntrzy"', "String with escape");
-       a(t(false), 'false', "Booelean");
-       a(t(fn), String(fn), "Function");
-
-       a(t(/raz-dwa/g), '/raz-dwa/g', "RegExp");
-       a(t(new Date(1234567)), 'new Date(1234567)', "Date");
-       a(t([]), '[]', "Empty array");
-       a(t([undefined, false, null, 'raz"ddwa\ntrzy', fn, /raz/g, new Date(1234567), ['foo']]),
-               '[undefined,false,null,"raz\\"ddwa\\ntrzy",' + String(fn) +
-               ',/raz/g,new Date(1234567),["foo"]]', "Rich Array");
-       a(t({}), '{}', "Empty object");
-       a(t({ raz: undefined, dwa: false, trzy: null, cztery: 'raz"ddwa\ntrzy', piec: fn, szesc: /raz/g,
-               siedem: new Date(1234567), osiem: ['foo', 32], dziewiec: { foo: 'bar', dwa: 343 } }),
-               '{"raz":undefined,"dwa":false,"trzy":null,"cztery":"raz\\"ddwa\\ntrzy","piec":' + String(fn) +
-               ',"szesc":/raz/g,"siedem":new Date(1234567),"osiem":["foo",32],' +
-               '"dziewiec":{"foo":"bar","dwa":343}}', "Rich object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js
deleted file mode 100644 (file)
index 30b2ac4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var create        = require('../../../object/create')
-  , isImplemented = require('../../../object/set-prototype-of/is-implemented');
-
-module.exports = function (a) { a(isImplemented(create), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/index.js
deleted file mode 100644 (file)
index aec2605..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var create = require('../../../object/create')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-
-       if (t === null) return;
-       a(t(x, y), x, "Return self object");
-       a(getPrototypeOf(x), y, "Object");
-       a.throws(function () { t(x); }, TypeError, "Undefined");
-       a.throws(function () { t('foo'); }, TypeError, "Primitive");
-       a(getPrototypeOf(t(x, null)), t.nullPolyfill || null, "Null");
-       x = create(null);
-       a.h1("Change null prototype");
-       a(t(x, y), x, "Result");
-       a(getPrototypeOf(x), y, "Prototype");
-       a.h1("Set null prototype");
-       a(t(y, null), y, "Result");
-       a(getPrototypeOf(y), t.nullPolyfill || null, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js
deleted file mode 100644 (file)
index aec2605..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var create = require('../../../object/create')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-
-       if (t === null) return;
-       a(t(x, y), x, "Return self object");
-       a(getPrototypeOf(x), y, "Object");
-       a.throws(function () { t(x); }, TypeError, "Undefined");
-       a.throws(function () { t('foo'); }, TypeError, "Primitive");
-       a(getPrototypeOf(t(x, null)), t.nullPolyfill || null, "Null");
-       x = create(null);
-       a.h1("Change null prototype");
-       a(t(x, y), x, "Result");
-       a(getPrototypeOf(x), y, "Prototype");
-       a.h1("Set null prototype");
-       a(t(y, null), y, "Result");
-       a(getPrototypeOf(y), t.nullPolyfill || null, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/some.js
deleted file mode 100644 (file)
index 490431e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var o = { 1: 1, 2: 2, 3: 3 };
-
-module.exports = function (t, a) {
-       var o2 = {}, i = 0;
-       t(o, function (value, name) {
-               o2[name] = value;
-               return false;
-       });
-       a(JSON.stringify(o2), JSON.stringify(o), "Iterates");
-
-       a(t(o, function () {
-               ++i;
-               return true;
-       }), true, "Succeeds");
-       a(i, 1, "Stops iteration after condition is met");
-
-       a(t(o, function () {
-               return false;
-       }), false, "Fails");
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/to-array.js
deleted file mode 100644 (file)
index 1f4beef..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { 1: 1, 2: 2, 3: 3 }, o1 = {}
-         , o2 = t(o, function (value, name, self) {
-               a(self, o, "Self");
-               a(this, o1, "Scope");
-               return value + Number(name);
-       }, o1);
-       a.deep(o2, [2, 4, 6]);
-
-       t(o).sort().forEach(function (item) {
-               a.deep(item, [item[0], o[item[0]]], "Default");
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/unserialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/unserialize.js
deleted file mode 100644 (file)
index 405eef1..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var fn = function (raz, dwa) { return raz + dwa; };
-       a(t('undefined'), undefined, "Undefined");
-       a(t('null'), null, "Null");
-       a(t('"raz"'), 'raz', "String");
-       a(t('"raz\\"ddwa\\ntrzy"'), 'raz"ddwa\ntrzy', "String with escape");
-       a(t('false'), false, "Booelean");
-       a(String(t(String(fn))), String(fn), "Function");
-
-       a.deep(t('/raz-dwa/g'), /raz-dwa/g, "RegExp");
-       a.deep(t('new Date(1234567)'), new Date(1234567), "Date");
-       a.deep(t('[]'), [], "Empty array");
-       a.deep(t('[undefined,false,null,"raz\\"ddwa\\ntrzy",/raz/g,new Date(1234567),["foo"]]'),
-               [undefined, false, null, 'raz"ddwa\ntrzy', /raz/g, new Date(1234567), ['foo']], "Rich Array");
-       a.deep(t('{}'), {}, "Empty object");
-       a.deep(t('{"raz":undefined,"dwa":false,"trzy":null,"cztery":"raz\\"ddwa\\ntrzy",' +
-               '"szesc":/raz/g,"siedem":new Date(1234567),"osiem":["foo",32],' +
-               '"dziewiec":{"foo":"bar","dwa":343}}'),
-               { raz: undefined, dwa: false, trzy: null, cztery: 'raz"ddwa\ntrzy', szesc: /raz/g,
-                       siedem: new Date(1234567), osiem: ['foo', 32], dziewiec: { foo: 'bar', dwa: 343 } },
-               "Rich object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-callable.js
deleted file mode 100644 (file)
index b40540b..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var f = function () {};
-       a(t(f), f, "Function");
-       a.throws(function () {
-               t({});
-       }, "Not Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-object.js
deleted file mode 100644 (file)
index eaa8e7b..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a.throws(function () { t(0); }, TypeError, "0");
-       a.throws(function () { t(false); }, TypeError, "false");
-       a.throws(function () { t(''); }, TypeError, "''");
-       a(t(x = {}), x, "Object");
-       a(t(x = function () {}), x, "Function");
-       a(t(x = new String('raz')), x, "String object"); //jslint: ignore
-       a(t(x = new Date()), x, "Date");
-
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/object/valid-value.js
deleted file mode 100644 (file)
index f1eeafa..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var numIsNaN = require('../../number/is-nan');
-
-module.exports = function (t, a) {
-       var x;
-       a(t(0), 0, "0");
-       a(t(false), false, "false");
-       a(t(''), '', "''");
-       a(numIsNaN(t(NaN)), true, "NaN");
-       a(t(x = {}), x, "{}");
-
-       a.throws(function () {
-               t();
-       }, "Undefined");
-       a.throws(function () {
-               t(null);
-       }, "null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/index.js
deleted file mode 100644 (file)
index ca2bd65..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexTest = require('tad/lib/utils/index-test')
-
-  , path = require('path').resolve(__dirname, '../../../reg-exp/#');
-
-module.exports = function (t, a, d) {
-       indexTest(indexTest.readDir(path).aside(function (data) {
-               delete data.sticky;
-               delete data.unicode;
-       }))(t, a, d);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js
deleted file mode 100644 (file)
index e154ac2..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var re;
-       a(t.call(/raz/), false, "Normal");
-       a(t.call(/raz/g), false, "Global");
-       try { re = new RegExp('raz', 'y'); } catch (ignore) {}
-       if (!re) return;
-       a(t.call(re), true, "Sticky");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js
deleted file mode 100644 (file)
index 2ffb9e8..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var re;
-       a(t.call(/raz/), false, "Normal");
-       a(t.call(/raz/g), false, "Global");
-       try { re = new RegExp('raz', 'u'); } catch (ignore) {}
-       if (!re) return;
-       a(t.call(re), true, "Unicode");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js
deleted file mode 100644 (file)
index 89825a4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/match/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js
deleted file mode 100644 (file)
index 5249139..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var result = ['foo'];
-       result.index = 0;
-       result.input = 'foobar';
-       a.deep(t.call(/foo/, 'foobar'), result);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js
deleted file mode 100644 (file)
index c32b23a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/replace/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js
deleted file mode 100644 (file)
index 2b378fd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(/foo/, 'foobar', 'mar'), 'marbar');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js
deleted file mode 100644 (file)
index ff1b808..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/search/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js
deleted file mode 100644 (file)
index 596bcdb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(/foo/, 'barfoo'), 3);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js
deleted file mode 100644 (file)
index 1cee441..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/split/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js
deleted file mode 100644 (file)
index 6a95cd0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t.call(/\|/, 'bar|foo'), ['bar', 'foo']);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js
deleted file mode 100644 (file)
index d94e7b9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/sticky/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js
deleted file mode 100644 (file)
index 9b1aa0f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/unicode/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/escape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/escape.js
deleted file mode 100644 (file)
index 5b00f67..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var str = "(?:^te|er)s{2}t\\[raz]+$";
-       a(RegExp('^' + t(str) + '$').test(str), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js
deleted file mode 100644 (file)
index 785ca28..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-       a(t(/a/), true, "Regular expression");
-       a(t(new RegExp('a')), true, "Regular expression via constructor");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js
deleted file mode 100644 (file)
index cd12cf1..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var r = /raz/;
-       a(t(r), r, "Direct");
-       r = new RegExp('foo');
-       a(t(r), r, "Constructor");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t(function () {});
-       }, "Function");
-       a.throws(function () {
-               t({ exec: function () { return 20; } });
-       }, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 09bf336..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/@@iterator/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js
deleted file mode 100644 (file)
index 3b0e0b7..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var it = t.call('r💩z');
-       a.deep(it.next(), { done: false, value: 'r' }, "#1");
-       a.deep(it.next(), { done: false, value: '💩' }, "#2");
-       a.deep(it.next(), { done: false, value: 'z' }, "#3");
-       a.deep(it.next(), { done: true, value: undefined }, "End");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/at.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/at.js
deleted file mode 100644 (file)
index 2447a9f..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-// See tests at https://github.com/mathiasbynens/String.prototype.at
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.length, 1, "Length");
-
-       a.h1("BMP");
-       a(t.call('abc\uD834\uDF06def', -Infinity), '', "-Infinity");
-       a(t.call('abc\uD834\uDF06def', -1), '', "-1");
-       a(t.call('abc\uD834\uDF06def', -0), 'a', "-0");
-       a(t.call('abc\uD834\uDF06def', +0), 'a', "+0");
-       a(t.call('abc\uD834\uDF06def', 1), 'b', "1");
-       a(t.call('abc\uD834\uDF06def', 3), '\uD834\uDF06', "3");
-       a(t.call('abc\uD834\uDF06def', 4), '\uDF06', "4");
-       a(t.call('abc\uD834\uDF06def', 5), 'd', "5");
-       a(t.call('abc\uD834\uDF06def', 42), '', "42");
-       a(t.call('abc\uD834\uDF06def', +Infinity), '', "+Infinity");
-       a(t.call('abc\uD834\uDF06def', null), 'a', "null");
-       a(t.call('abc\uD834\uDF06def', undefined), 'a', "undefined");
-       a(t.call('abc\uD834\uDF06def'), 'a', "No argument");
-       a(t.call('abc\uD834\uDF06def', false), 'a', "false");
-       a(t.call('abc\uD834\uDF06def', NaN), 'a', "NaN");
-       a(t.call('abc\uD834\uDF06def', ''), 'a', "Empty string");
-       a(t.call('abc\uD834\uDF06def', '_'), 'a', "_");
-       a(t.call('abc\uD834\uDF06def', '1'), 'b', "'1'");
-       a(t.call('abc\uD834\uDF06def', []), 'a', "[]");
-       a(t.call('abc\uD834\uDF06def', {}), 'a', "{}");
-       a(t.call('abc\uD834\uDF06def', -0.9), 'a', "-0.9");
-       a(t.call('abc\uD834\uDF06def', 1.9), 'b', "1.9");
-       a(t.call('abc\uD834\uDF06def', 7.9), 'f', "7.9");
-       a(t.call('abc\uD834\uDF06def', Math.pow(2, 32)), '', "Big number");
-
-       a.h1("Astral symbol");
-       a(t.call('\uD834\uDF06def', -Infinity), '', "-Infinity");
-       a(t.call('\uD834\uDF06def', -1), '', "-1");
-       a(t.call('\uD834\uDF06def', -0), '\uD834\uDF06', "-0");
-       a(t.call('\uD834\uDF06def', +0), '\uD834\uDF06', "+0");
-       a(t.call('\uD834\uDF06def', 1), '\uDF06', "1");
-       a(t.call('\uD834\uDF06def', 2), 'd', "2");
-       a(t.call('\uD834\uDF06def', 3), 'e', "3");
-       a(t.call('\uD834\uDF06def', 4), 'f', "4");
-       a(t.call('\uD834\uDF06def', 42), '', "42");
-       a(t.call('\uD834\uDF06def', +Infinity), '', "+Infinity");
-       a(t.call('\uD834\uDF06def', null), '\uD834\uDF06', "null");
-       a(t.call('\uD834\uDF06def', undefined), '\uD834\uDF06', "undefined");
-       a(t.call('\uD834\uDF06def'), '\uD834\uDF06', "No arguments");
-       a(t.call('\uD834\uDF06def', false), '\uD834\uDF06', "false");
-       a(t.call('\uD834\uDF06def', NaN), '\uD834\uDF06', "NaN");
-       a(t.call('\uD834\uDF06def', ''), '\uD834\uDF06', "Empty string");
-       a(t.call('\uD834\uDF06def', '_'), '\uD834\uDF06', "_");
-       a(t.call('\uD834\uDF06def', '1'), '\uDF06', "'1'");
-
-       a.h1("Lone high surrogates");
-       a(t.call('\uD834abc', -Infinity), '', "-Infinity");
-       a(t.call('\uD834abc', -1), '',  "-1");
-       a(t.call('\uD834abc', -0), '\uD834', "-0");
-       a(t.call('\uD834abc', +0), '\uD834', "+0");
-       a(t.call('\uD834abc', 1), 'a', "1");
-       a(t.call('\uD834abc', 42), '', "42");
-       a(t.call('\uD834abc', +Infinity), '', "Infinity");
-       a(t.call('\uD834abc', null), '\uD834', "null");
-       a(t.call('\uD834abc', undefined), '\uD834', "undefined");
-       a(t.call('\uD834abc'), '\uD834', "No arguments");
-       a(t.call('\uD834abc', false), '\uD834', "false");
-       a(t.call('\uD834abc', NaN), '\uD834', "NaN");
-       a(t.call('\uD834abc', ''), '\uD834', "Empty string");
-       a(t.call('\uD834abc', '_'), '\uD834', "_");
-       a(t.call('\uD834abc', '1'), 'a', "'a'");
-
-       a.h1("Lone low surrogates");
-       a(t.call('\uDF06abc', -Infinity), '', "-Infinity");
-       a(t.call('\uDF06abc', -1), '', "-1");
-       a(t.call('\uDF06abc', -0), '\uDF06', "-0");
-       a(t.call('\uDF06abc', +0), '\uDF06', "+0");
-       a(t.call('\uDF06abc', 1), 'a', "1");
-       a(t.call('\uDF06abc', 42), '', "42");
-       a(t.call('\uDF06abc', +Infinity), '', "+Infinity");
-       a(t.call('\uDF06abc', null), '\uDF06', "null");
-       a(t.call('\uDF06abc', undefined), '\uDF06', "undefined");
-       a(t.call('\uDF06abc'), '\uDF06', "No arguments");
-       a(t.call('\uDF06abc', false), '\uDF06', "false");
-       a(t.call('\uDF06abc', NaN), '\uDF06', "NaN");
-       a(t.call('\uDF06abc', ''), '\uDF06', "Empty string");
-       a(t.call('\uDF06abc', '_'), '\uDF06', "_");
-       a(t.call('\uDF06abc', '1'), 'a', "'1'");
-
-       a.h1("Context");
-       a.throws(function () { t.call(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t.call(undefined, 4); }, TypeError,
-               "Undefined + argument");
-       a.throws(function () { t.call(null); }, TypeError, "Null");
-       a.throws(function () { t.call(null, 4); }, TypeError, "Null + argument");
-       a(t.call(42, 0), '4', "Number #1");
-       a(t.call(42, 1), '2', "Number #2");
-       a(t.call({ toString: function () { return 'abc'; } }, 2), 'c', "Object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js
deleted file mode 100644 (file)
index 606c616..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razDwaTRzy4yFoo45My'), 'raz-dwa-trzy4y-foo45-my');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/capitalize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/capitalize.js
deleted file mode 100644 (file)
index fa11ff8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz'), 'Raz', "Word");
-       a(t.call('BLA'), 'BLA', "Uppercase");
-       a(t.call(''), '', "Empty");
-       a(t.call('a'), 'A', "One letter");
-       a(t.call('this is a test'), 'This is a test', "Sentence");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js
deleted file mode 100644 (file)
index 01a90c3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call("AA", "aa"), 0, "Same");
-       a.ok(t.call("Amber", "zebra") < 0, "Less");
-       a.ok(t.call("Zebra", "amber") > 0, "Greater");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js
deleted file mode 100644 (file)
index 5e33cd7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var isImplemented =
-       require('../../../../string/#/code-point-at/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js
deleted file mode 100644 (file)
index 0df4751..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-// Taken from: https://github.com/mathiasbynens/String.prototype.codePointAt
-//             /blob/master/tests/tests.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.length, 1, "Length");
-
-       // String that starts with a BMP symbol
-       a(t.call('abc\uD834\uDF06def', ''), 0x61);
-       a(t.call('abc\uD834\uDF06def', '_'), 0x61);
-       a(t.call('abc\uD834\uDF06def'), 0x61);
-       a(t.call('abc\uD834\uDF06def', -Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', -1), undefined);
-       a(t.call('abc\uD834\uDF06def', -0), 0x61);
-       a(t.call('abc\uD834\uDF06def', 0), 0x61);
-       a(t.call('abc\uD834\uDF06def', 3), 0x1D306);
-       a(t.call('abc\uD834\uDF06def', 4), 0xDF06);
-       a(t.call('abc\uD834\uDF06def', 5), 0x64);
-       a(t.call('abc\uD834\uDF06def', 42), undefined);
-       a(t.call('abc\uD834\uDF06def', Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', NaN), 0x61);
-       a(t.call('abc\uD834\uDF06def', false), 0x61);
-       a(t.call('abc\uD834\uDF06def', null), 0x61);
-       a(t.call('abc\uD834\uDF06def', undefined), 0x61);
-
-       // String that starts with an astral symbol
-       a(t.call('\uD834\uDF06def', ''), 0x1D306);
-       a(t.call('\uD834\uDF06def', '1'), 0xDF06);
-       a(t.call('\uD834\uDF06def', '_'), 0x1D306);
-       a(t.call('\uD834\uDF06def'), 0x1D306);
-       a(t.call('\uD834\uDF06def', -1), undefined);
-       a(t.call('\uD834\uDF06def', -0), 0x1D306);
-       a(t.call('\uD834\uDF06def', 0), 0x1D306);
-       a(t.call('\uD834\uDF06def', 1), 0xDF06);
-       a(t.call('\uD834\uDF06def', 42), undefined);
-       a(t.call('\uD834\uDF06def', false), 0x1D306);
-       a(t.call('\uD834\uDF06def', null), 0x1D306);
-       a(t.call('\uD834\uDF06def', undefined), 0x1D306);
-
-       // Lone high surrogates
-       a(t.call('\uD834abc', ''), 0xD834);
-       a(t.call('\uD834abc', '_'), 0xD834);
-       a(t.call('\uD834abc'), 0xD834);
-       a(t.call('\uD834abc', -1), undefined);
-       a(t.call('\uD834abc', -0), 0xD834);
-       a(t.call('\uD834abc', 0), 0xD834);
-       a(t.call('\uD834abc', false), 0xD834);
-       a(t.call('\uD834abc', NaN), 0xD834);
-       a(t.call('\uD834abc', null), 0xD834);
-       a(t.call('\uD834abc', undefined), 0xD834);
-
-       // Lone low surrogates
-       a(t.call('\uDF06abc', ''), 0xDF06);
-       a(t.call('\uDF06abc', '_'), 0xDF06);
-       a(t.call('\uDF06abc'), 0xDF06);
-       a(t.call('\uDF06abc', -1), undefined);
-       a(t.call('\uDF06abc', -0), 0xDF06);
-       a(t.call('\uDF06abc', 0), 0xDF06);
-       a(t.call('\uDF06abc', false), 0xDF06);
-       a(t.call('\uDF06abc', NaN), 0xDF06);
-       a(t.call('\uDF06abc', null), 0xDF06);
-       a(t.call('\uDF06abc', undefined), 0xDF06);
-
-       a.throws(function () { t.call(undefined); }, TypeError);
-       a.throws(function () { t.call(undefined, 4); }, TypeError);
-       a.throws(function () { t.call(null); }, TypeError);
-       a.throws(function () { t.call(null, 4); }, TypeError);
-       a(t.call(42, 0), 0x34);
-       a(t.call(42, 1), 0x32);
-       a(t.call({ toString: function () { return 'abc'; } }, 2), 0x63);
-
-       a.throws(function () { t.apply(undefined); }, TypeError);
-       a.throws(function () { t.apply(undefined, [4]); }, TypeError);
-       a.throws(function () { t.apply(null); }, TypeError);
-       a.throws(function () { t.apply(null, [4]); }, TypeError);
-       a(t.apply(42, [0]), 0x34);
-       a(t.apply(42, [1]), 0x32);
-       a(t.apply({ toString: function () { return 'abc'; } }, [2]), 0x63);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/implement.js
deleted file mode 100644 (file)
index 220f50d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/contains/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/contains/shim.js
deleted file mode 100644 (file)
index a0ea4db..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz', ''), true, "Empty");
-       a(t.call('', ''), true, "Both Empty");
-       a(t.call('raz', 'raz'), true, "Same");
-       a(t.call('razdwa', 'raz'), true, "Starts with");
-       a(t.call('razdwa', 'dwa'), true, "Ends with");
-       a(t.call('razdwa', 'zdw'), true, "In middle");
-       a(t.call('', 'raz'), false, "Something in empty");
-       a(t.call('az', 'raz'), false, "Longer");
-       a(t.call('azasdfasdf', 'azff'), false, "Not found");
-       a(t.call('razdwa', 'raz', 1), false, "Position");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/implement.js
deleted file mode 100644 (file)
index 93bd2dd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/ends-with/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/ends-with/shim.js
deleted file mode 100644 (file)
index e4b93c4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// In some parts copied from:
-// http://closure-library.googlecode.com/svn/trunk/closure/goog/
-// string/string_test.html
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('abc', ''), true, "Empty needle");
-       a(t.call('abcd', 'cd'), true, "Ends with needle");
-       a(t.call('abcd', 'abcd'), true, "Needle equals haystack");
-       a(t.call('abcd', 'ab'), false, "Doesn't end with needle");
-       a(t.call('abc', 'defg'), false, "Length trick");
-       a(t.call('razdwa', 'zd', 3), false, "Position: false");
-       a(t.call('razdwa', 'zd', 4), true, "Position: true");
-       a(t.call('razdwa', 'zd', 5), false, "Position: false #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js
deleted file mode 100644 (file)
index bd7ded4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz-dwa-t-rzy-4y-rtr4-tiu-45-pa'), 'razDwaTRzy4yRtr4Tiu45Pa');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/indent.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/indent.js
deleted file mode 100644 (file)
index eb92b36..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('ra\nzz', ''), 'ra\nzz', "Empty");
-       a(t.call('ra\nzz', '\t', 3), '\t\t\tra\n\t\t\tzz', "String repeat");
-       a(t.call('ra\nzz\nsss\nfff\n', '\t'), '\tra\n\tzz\n\tsss\n\tfff\n',
-               "Multi-line");
-       a(t.call('ra\n\nzz\n', '\t'), '\tra\n\n\tzz\n', "Don't touch empty lines");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/last.js
deleted file mode 100644 (file)
index ad36a21..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(''), null, "Null");
-       a(t.call('abcdef'), 'f', "String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/_data.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/_data.js
deleted file mode 100644 (file)
index c741add..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t[0], 'object'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/implement.js
deleted file mode 100644 (file)
index 4886c9b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/normalize/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/normalize/shim.js
deleted file mode 100644 (file)
index 28e27f5..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-// Taken from: https://github.com/walling/unorm/blob/master/test/es6-shim.js
-
-'use strict';
-
-var str = 'äiti';
-
-module.exports = function (t, a) {
-       a(t.call(str), "\u00e4iti");
-       a(t.call(str, "NFC"), "\u00e4iti");
-       a(t.call(str, "NFD"), "a\u0308iti");
-       a(t.call(str, "NFKC"), "\u00e4iti");
-       a(t.call(str, "NFKD"), "a\u0308iti");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/pad.js
deleted file mode 100644 (file)
index 28c3fca..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var partial = require('../../../function/#/partial');
-
-module.exports = {
-       Left: function (t, a) {
-               t = partial.call(t, 'x', 5);
-
-               a(t.call('yy'), 'xxxyy');
-               a(t.call(''), 'xxxxx', "Empty string");
-
-               a(t.call('yyyyy'), 'yyyyy', 'Equal length');
-               a(t.call('yyyyyyy'), 'yyyyyyy', 'Longer');
-       },
-       Right: function (t, a) {
-               t = partial.call(t, 'x', -5);
-
-               a(t.call('yy'), 'yyxxx');
-               a(t.call(''), 'xxxxx', "Empty string");
-
-               a(t.call('yyyyy'), 'yyyyy', 'Equal length');
-               a(t.call('yyyyyyy'), 'yyyyyyy', 'Longer');
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace-all.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace-all.js
deleted file mode 100644 (file)
index a425c87..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razdwatrzy', 'dwa', 'olera'), 'razoleratrzy', "Basic");
-       a(t.call('razdwatrzy', 'dwa', 'ole$&a'), 'razole$&atrzy', "Inserts");
-       a(t.call('razdwa', 'ola', 'sdfs'), 'razdwa', "No replace");
-
-       a(t.call('$raz$$dwa$trzy$', '$', '&&'), '&&raz&&&&dwa&&trzy&&', "Multi");
-       a(t.call('$raz$$dwa$$$$trzy$', '$$', '&'), '$raz&dwa&&trzy$',
-               "Multi many chars");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/plain-replace.js
deleted file mode 100644 (file)
index 54522ed..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razdwatrzy', 'dwa', 'olera'), 'razoleratrzy', "Basic");
-       a(t.call('razdwatrzy', 'dwa', 'ole$&a'), 'razole$&atrzy', "Inserts");
-       a(t.call('razdwa', 'ola', 'sdfs'), 'razdwa', "No replace");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/implement.js
deleted file mode 100644 (file)
index 7ff65a8..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/repeat/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/repeat/shim.js
deleted file mode 100644 (file)
index 7e0d077..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('a', 0), '', "Empty");
-       a(t.call('a', 1), 'a', "1");
-       a(t.call('\t', 5), '\t\t\t\t\t', "Whitespace");
-       a(t.call('raz', 3), 'razrazraz', "Many chars");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/implement.js
deleted file mode 100644 (file)
index fc8490f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/starts-with/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/#/starts-with/shim.js
deleted file mode 100644 (file)
index e0e123b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-// Inspired and in some parts copied from:
-// http://closure-library.googlecode.com/svn/trunk/closure/goog
-// /string/string_test.html
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('abc', ''), true, "Empty needle");
-       a(t.call('abcd', 'ab'), true, "Starts with needle");
-       a(t.call('abcd', 'abcd'), true, "Needle equals haystack");
-       a(t.call('abcd', 'bcde', 1), false, "Needle larger than haystack");
-       a(!t.call('abcd', 'cd'), true, "Doesn't start with needle");
-       a(t.call('abcd', 'bc', 1), true, "Position");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/format-method.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/format-method.js
deleted file mode 100644 (file)
index bb5561e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       t = t({ a: 'A', aa: 'B', ab: 'C', b: 'D',
-               c: function () { return ++this.a; } });
-       a(t.call({ a: 0 }, ' %a%aab%abb%b\\%aa%ab%c%c '), ' ABbCbD%aaC12 ');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/implement.js
deleted file mode 100644 (file)
index 0aceb97..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../string/from-code-point/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/from-code-point/shim.js
deleted file mode 100644 (file)
index fe8aa4e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// Taken from: https://github.com/mathiasbynens/String.fromCodePoint/blob/master
-//             /tests/tests.js
-
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (t, a) {
-       var counter, result;
-
-       a(t.length, 0, "Length");
-       a(String.propertyIsEnumerable('fromCodePoint'), false, "Not enumerable");
-
-       a(t(''), '\0', "Empty string");
-       a(t(), '', "No arguments");
-       a(t(-0), '\0', "-0");
-       a(t(0), '\0', "0");
-       a(t(0x1D306), '\uD834\uDF06', "Unicode");
-       a(t(0x1D306, 0x61, 0x1D307), '\uD834\uDF06a\uD834\uDF07', "Complex unicode");
-       a(t(0x61, 0x62, 0x1D307), 'ab\uD834\uDF07', "Complex");
-       a(t(false), '\0', "false");
-       a(t(null), '\0', "null");
-
-       a.throws(function () { t('_'); }, RangeError, "_");
-       a.throws(function () { t(Infinity); }, RangeError, "Infinity");
-       a.throws(function () { t(-Infinity); }, RangeError, "-Infinity");
-       a.throws(function () { t(-1); }, RangeError, "-1");
-       a.throws(function () { t(0x10FFFF + 1); }, RangeError, "Range error #1");
-       a.throws(function () { t(3.14); }, RangeError, "Range error #2");
-       a.throws(function () { t(3e-2); }, RangeError, "Range error #3");
-       a.throws(function () { t(-Infinity); }, RangeError, "Range error #4");
-       a.throws(function () { t(+Infinity); }, RangeError, "Range error #5");
-       a.throws(function () { t(NaN); }, RangeError, "Range error #6");
-       a.throws(function () { t(undefined); }, RangeError, "Range error #7");
-       a.throws(function () { t({}); }, RangeError, "Range error #8");
-       a.throws(function () { t(/re/); }, RangeError, "Range error #9");
-
-       counter = pow(2, 15) * 3 / 2;
-       result = [];
-       while (--counter >= 0) result.push(0); // one code unit per symbol
-       t.apply(null, result); // must not throw
-
-       counter = pow(2, 15) * 3 / 2;
-       result = [];
-       while (--counter >= 0) result.push(0xFFFF + 1); // two code units per symbol
-       t.apply(null, result); // must not throw
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/is-string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/is-string.js
deleted file mode 100644 (file)
index 32f5958..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(null), false, "Null");
-       a(t(''), true, "Empty string");
-       a(t(12), false, "Number");
-       a(t(false), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), true, "String object");
-       a(t('asdfaf'), true, "String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/random-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/random-uniq.js
deleted file mode 100644 (file)
index 6791ac2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isValidFormat = RegExp.prototype.test.bind(/^[a-z0-9]+$/);
-
-module.exports = function (t, a) {
-       a(typeof t(), 'string');
-       a.ok(t().length > 7);
-       a.not(t(), t());
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/implement.js
deleted file mode 100644 (file)
index 59416de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../string/raw/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/test/string/raw/shim.js
deleted file mode 100644 (file)
index 025ed78..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-// Partially taken from:
-// https://github.com/paulmillr/es6-shim/blob/master/test/string.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var callSite = [];
-
-       callSite.raw = ["The total is ", " ($", " with tax)"];
-       a(t(callSite, '{total}', '{total * 1.01}'),
-               'The total is {total} (${total * 1.01} with tax)');
-
-       callSite.raw = [];
-       a(t(callSite, '{total}', '{total * 1.01}'), '');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/#/chain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/#/chain.js
deleted file mode 100644 (file)
index 6dc1543..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , d              = require('d')
-  , Iterator       = require('../')
-  , validIterable  = require('../valid-iterable')
-
-  , push = Array.prototype.push
-  , defineProperties = Object.defineProperties
-  , IteratorChain;
-
-IteratorChain = function (iterators) {
-       defineProperties(this, {
-               __iterators__: d('', iterators),
-               __current__: d('w', iterators.shift())
-       });
-};
-if (setPrototypeOf) setPrototypeOf(IteratorChain, Iterator);
-
-IteratorChain.prototype = Object.create(Iterator.prototype, {
-       constructor: d(IteratorChain),
-       next: d(function () {
-               var result;
-               if (!this.__current__) return { done: true, value: undefined };
-               result = this.__current__.next();
-               while (result.done) {
-                       this.__current__ = this.__iterators__.shift();
-                       if (!this.__current__) return { done: true, value: undefined };
-                       result = this.__current__.next();
-               }
-               return result;
-       })
-});
-
-module.exports = function () {
-       var iterators = [this];
-       push.apply(iterators, arguments);
-       iterators.forEach(validIterable);
-       return new IteratorChain(iterators);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.lint
deleted file mode 100644 (file)
index cf54d81..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-@root
-
-module
-
-tabs
-indent 2
-maxlen 100
-
-ass
-nomen
-plusplus
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/.travis.yml
deleted file mode 100644 (file)
index 02c277c..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-iterator@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/CHANGES
deleted file mode 100644 (file)
index a2d1ec7..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-v0.1.3  --  2015.02.02
-* Update dependencies
-* Fix spelling of LICENSE
-
-v0.1.2  --  2014.11.19
-* Optimise internal `_next` to not verify internal's list length at all times
-  (#2 thanks @RReverser)
-* Fix documentation examples
-* Configure lint scripts
-
-v0.1.1  --  2014.04.29
-* Fix es6-symbol dependency version
-
-v0.1.0  --  2014.04.29
-* Assure strictly npm hosted dependencies
-* Remove sparse arrays dedicated handling (as per spec)
-* Add: isIterable, validIterable and chain (method)
-* Remove toArray, it's addressed by Array.from (polyfil can be found in es5-ext/array/from)
-* Add break possiblity to 'forOf' via 'doBreak' function argument
-* Provide dedicated iterator for array-likes (ArrayIterator) and for strings (StringIterator)
-* Provide @@toStringTag symbol
-* When available rely on @@iterator symbol
-* Remove 32bit integer maximum list length restriction
-* Improve Iterator internals
-* Update to use latest version of dependencies
-
-v0.0.0  --  2013.10.12
-Initial (dev version)
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/LICENSE
deleted file mode 100644 (file)
index 04724a3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/README.md
deleted file mode 100644 (file)
index 288373d..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-# es6-iterator
-## ECMAScript 6 Iterator interface
-
-### Installation
-
-       $ npm install es6-iterator
-       
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-## API
-
-### Constructors
-
-#### Iterator(list) _(es6-iterator)_
-
-Abstract Iterator interface. Meant for extensions and not to be used on its own.
-
-Accepts any _list_ object (technically object with numeric _length_ property).
-
-_Mind it doesn't iterate strings properly, for that use dedicated [StringIterator](#string-iterator)_
-
-```javascript
-var Iterator = require('es6-iterator')
-var iterator = new Iterator([1, 2, 3]);
-
-iterator.next(); // { value: 1, done: false }
-iterator.next(); // { value: 2, done: false }
-iterator.next(); // { value: 3, done: false }
-iterator.next(); // { value: undefined, done: true }
-```
-
-
-#### ArrayIterator(arrayLike[, kind]) _(es6-iterator/array)_
-
-Dedicated for arrays and array-likes. Supports three iteration kinds:
-* __value__ _(default)_ - Iterates values
-* __key__ - Iterates indexes
-* __key+value__ - Iterates keys and indexes, each iteration value is in _[key, value]_ form.
-
-
-```javascript
-var ArrayIterator = require('es6-iterator/array')
-var iterator = new ArrayIterator([1, 2, 3], 'key+value');
-
-iterator.next(); // { value: [0, 1], done: false }
-iterator.next(); // { value: [1, 2], done: false }
-iterator.next(); // { value: [2, 3], done: false }
-iterator.next(); // { value: undefined, done: true }
-```
-
-May also be used for _arguments_ objects:
-
-```javascript
-(function () {
-  var iterator = new ArrayIterator(arguments);
-
-  iterator.next(); // { value: 1, done: false }
-  iterator.next(); // { value: 2, done: false }
-  iterator.next(); // { value: 3, done: false }
-  iterator.next(); // { value: undefined, done: true }
-}(1, 2, 3));
-```
-
-#### StringIterator(str) _(es6-iterator/string)_
-
-Assures proper iteration over unicode symbols.  
-See: http://mathiasbynens.be/notes/javascript-unicode
-
-```javascript
-var StringIterator = require('es6-iterator/string');
-var iterator = new StringIterator('f🙈o🙉o🙊');
-
-iterator.next(); // { value: 'f', done: false }
-iterator.next(); // { value: '🙈', done: false }
-iterator.next(); // { value: 'o', done: false }
-iterator.next(); // { value: '🙉', done: false }
-iterator.next(); // { value: 'o', done: false }
-iterator.next(); // { value: '🙊', done: false }
-iterator.next(); // { value: undefined, done: true }
-```
-
-### Function utilities
-
-#### forOf(iterable, callback[, thisArg]) _(es6-iterator/for-of)_
-
-Polyfill for ECMAScript 6 [`for...of`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of) statement.
-
-```
-var forOf = require('es6-iterator/for-of');
-var result = [];
-
-forOf('🙈🙉🙊', function (monkey) { result.push(monkey); });
-console.log(result); // ['🙈', '🙉', '🙊'];
-```
-
-Optionally you can break iteration at any point:
-
-```javascript
-var result = [];
-
-forOf([1,2,3,4]', function (val, doBreak) {
-  result.push(monkey);
-  if (val >= 3) doBreak();
-});
-console.log(result); // [1, 2, 3];
-```
-
-#### get(obj) _(es6-iterator/get)_
-
-Return iterator for any iterable object.
-
-```javascript
-var getIterator = require('es6-iterator/get');
-var iterator = get([1,2,3]);
-
-iterator.next(); // { value: 1, done: false }
-iterator.next(); // { value: 2, done: false }
-iterator.next(); // { value: 3, done: false }
-iterator.next(); // { value: undefined, done: true }
-```
-
-#### isIterable(obj) _(es6-iterator/is-iterable)_
-
-Whether _obj_ is iterable
-
-```javascript
-var isIterable = require('es6-iterator/is-iterable');
-
-isIterable(null); // false
-isIterable(true); // false
-isIterable('str'); // true
-isIterable(['a', 'r', 'r']); // true
-isIterable(new ArrayIterator([])); // true
-```
-
-#### validIterable(obj) _(es6-iterator/valid-iterable)_
-
-If _obj_ is an iterable it is returned. Otherwise _TypeError_ is thrown.
-
-### Method extensions
-
-#### iterator.chain(iterator1[, …iteratorn]) _(es6-iterator/#/chain)_
-
-Chain multiple iterators into one.
-
-### Tests [![Build Status](https://travis-ci.org/medikoo/es6-iterator.png)](https://travis-ci.org/medikoo/es6-iterator)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/array.js
deleted file mode 100644 (file)
index 885ad0a..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , contains       = require('es5-ext/string/#/contains')
-  , d              = require('d')
-  , Iterator       = require('./')
-
-  , defineProperty = Object.defineProperty
-  , ArrayIterator;
-
-ArrayIterator = module.exports = function (arr, kind) {
-       if (!(this instanceof ArrayIterator)) return new ArrayIterator(arr, kind);
-       Iterator.call(this, arr);
-       if (!kind) kind = 'value';
-       else if (contains.call(kind, 'key+value')) kind = 'key+value';
-       else if (contains.call(kind, 'key')) kind = 'key';
-       else kind = 'value';
-       defineProperty(this, '__kind__', d('', kind));
-};
-if (setPrototypeOf) setPrototypeOf(ArrayIterator, Iterator);
-
-ArrayIterator.prototype = Object.create(Iterator.prototype, {
-       constructor: d(ArrayIterator),
-       _resolve: d(function (i) {
-               if (this.__kind__ === 'value') return this.__list__[i];
-               if (this.__kind__ === 'key+value') return [i, this.__list__[i]];
-               return i;
-       }),
-       toString: d(function () { return '[object Array Iterator]'; })
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/for-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/for-of.js
deleted file mode 100644 (file)
index 111f552..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-var callable = require('es5-ext/object/valid-callable')
-  , isString = require('es5-ext/string/is-string')
-  , get      = require('./get')
-
-  , isArray = Array.isArray, call = Function.prototype.call;
-
-module.exports = function (iterable, cb/*, thisArg*/) {
-       var mode, thisArg = arguments[2], result, doBreak, broken, i, l, char, code;
-       if (isArray(iterable)) mode = 'array';
-       else if (isString(iterable)) mode = 'string';
-       else iterable = get(iterable);
-
-       callable(cb);
-       doBreak = function () { broken = true; };
-       if (mode === 'array') {
-               iterable.some(function (value) {
-                       call.call(cb, thisArg, value, doBreak);
-                       if (broken) return true;
-               });
-               return;
-       }
-       if (mode === 'string') {
-               l = iterable.length;
-               for (i = 0; i < l; ++i) {
-                       char = iterable[i];
-                       if ((i + 1) < l) {
-                               code = char.charCodeAt(0);
-                               if ((code >= 0xD800) && (code <= 0xDBFF)) char += iterable[++i];
-                       }
-                       call.call(cb, thisArg, char, doBreak);
-                       if (broken) break;
-               }
-               return;
-       }
-       result = iterable.next();
-
-       while (!result.done) {
-               call.call(cb, thisArg, result.value, doBreak);
-               if (broken) return;
-               result = iterable.next();
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/get.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/get.js
deleted file mode 100644 (file)
index 38230fd..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var isString = require('es5-ext/string/is-string')
-  , ArrayIterator  = require('./array')
-  , StringIterator = require('./string')
-  , iterable       = require('./valid-iterable')
-  , iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function (obj) {
-       if (typeof iterable(obj)[iteratorSymbol] === 'function') return obj[iteratorSymbol]();
-       if (isString(obj)) return new StringIterator(obj);
-       return new ArrayIterator(obj);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/index.js
deleted file mode 100644 (file)
index 10fd089..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-'use strict';
-
-var clear    = require('es5-ext/array/#/clear')
-  , assign   = require('es5-ext/object/assign')
-  , callable = require('es5-ext/object/valid-callable')
-  , value    = require('es5-ext/object/valid-value')
-  , d        = require('d')
-  , autoBind = require('d/auto-bind')
-  , Symbol   = require('es6-symbol')
-
-  , defineProperty = Object.defineProperty
-  , defineProperties = Object.defineProperties
-  , Iterator;
-
-module.exports = Iterator = function (list, context) {
-       if (!(this instanceof Iterator)) return new Iterator(list, context);
-       defineProperties(this, {
-               __list__: d('w', value(list)),
-               __context__: d('w', context),
-               __nextIndex__: d('w', 0)
-       });
-       if (!context) return;
-       callable(context.on);
-       context.on('_add', this._onAdd);
-       context.on('_delete', this._onDelete);
-       context.on('_clear', this._onClear);
-};
-
-defineProperties(Iterator.prototype, assign({
-       constructor: d(Iterator),
-       _next: d(function () {
-               var i;
-               if (!this.__list__) return;
-               if (this.__redo__) {
-                       i = this.__redo__.shift();
-                       if (i !== undefined) return i;
-               }
-               if (this.__nextIndex__ < this.__list__.length) return this.__nextIndex__++;
-               this._unBind();
-       }),
-       next: d(function () { return this._createResult(this._next()); }),
-       _createResult: d(function (i) {
-               if (i === undefined) return { done: true, value: undefined };
-               return { done: false, value: this._resolve(i) };
-       }),
-       _resolve: d(function (i) { return this.__list__[i]; }),
-       _unBind: d(function () {
-               this.__list__ = null;
-               delete this.__redo__;
-               if (!this.__context__) return;
-               this.__context__.off('_add', this._onAdd);
-               this.__context__.off('_delete', this._onDelete);
-               this.__context__.off('_clear', this._onClear);
-               this.__context__ = null;
-       }),
-       toString: d(function () { return '[object Iterator]'; })
-}, autoBind({
-       _onAdd: d(function (index) {
-               if (index >= this.__nextIndex__) return;
-               ++this.__nextIndex__;
-               if (!this.__redo__) {
-                       defineProperty(this, '__redo__', d('c', [index]));
-                       return;
-               }
-               this.__redo__.forEach(function (redo, i) {
-                       if (redo >= index) this.__redo__[i] = ++redo;
-               }, this);
-               this.__redo__.push(index);
-       }),
-       _onDelete: d(function (index) {
-               var i;
-               if (index >= this.__nextIndex__) return;
-               --this.__nextIndex__;
-               if (!this.__redo__) return;
-               i = this.__redo__.indexOf(index);
-               if (i !== -1) this.__redo__.splice(i, 1);
-               this.__redo__.forEach(function (redo, i) {
-                       if (redo > index) this.__redo__[i] = --redo;
-               }, this);
-       }),
-       _onClear: d(function () {
-               if (this.__redo__) clear.call(this.__redo__);
-               this.__nextIndex__ = 0;
-       })
-})));
-
-defineProperty(Iterator.prototype, Symbol.iterator, d(function () {
-       return this;
-}));
-defineProperty(Iterator.prototype, Symbol.toStringTag, d('', 'Iterator'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/is-iterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/is-iterable.js
deleted file mode 100644 (file)
index bbcf104..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var isString       = require('es5-ext/string/is-string')
-  , iteratorSymbol = require('es6-symbol').iterator
-
-  , isArray = Array.isArray;
-
-module.exports = function (value) {
-       if (value == null) return false;
-       if (isArray(value)) return true;
-       if (isString(value)) return true;
-       return (typeof value[iteratorSymbol] === 'function');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.lint
deleted file mode 100644 (file)
index 1851752..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-@root
-
-module
-
-tabs
-indent 2
-maxlen 100
-
-ass
-nomen
-plusplus
-newcap
-vars
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/.travis.yml
deleted file mode 100644 (file)
index afd3509..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-symbol@medikoo.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/CHANGES
deleted file mode 100644 (file)
index df8c27e..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-v2.0.1  --  2015.01.28
-* Fix Symbol.prototype[Symbol.isPrimitive] implementation
-* Improve validation within Symbol.prototype.toString and
-  Symbol.prototype.valueOf
-
-v2.0.0  --  2015.01.28
-* Update up to changes in specification:
-  * Implement `for` and `keyFor`
-  * Remove `Symbol.create` and `Symbol.isRegExp`
-  * Add `Symbol.match`, `Symbol.replace`, `Symbol.search`, `Symbol.species` and
-    `Symbol.split`
-* Rename `validSymbol` to `validateSymbol`
-* Improve documentation
-* Remove dead test modules
-
-v1.0.0  --  2015.01.26
-* Fix enumerability for symbol properties set normally (e.g. obj[symbol] = value)
-* Introduce initialization via hidden constructor
-* Fix isSymbol handling of polyfill values when native Symbol is present
-* Fix spelling of LICENSE
-* Configure lint scripts
-
-v0.1.1  --  2014.10.07
-* Fix isImplemented, so it returns true in case of polyfill
-* Improve documentations
-
-v0.1.0  --  2014.04.28
-* Assure strictly npm dependencies
-* Update to use latest versions of dependencies
-* Fix implementation detection so it doesn't crash on `String(symbol)`
-* throw on `new Symbol()` (as decided by TC39)
-
-v0.0.0  --  2013.11.15
-* Initial (dev) version
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/LICENSE
deleted file mode 100644 (file)
index 04724a3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/README.md
deleted file mode 100644 (file)
index 95d6780..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-# es6-symbol
-## ECMAScript 6 Symbol polyfill
-
-For more information about symbols see following links
-- [Symbols in ECMAScript 6 by Axel Rauschmayer](http://www.2ality.com/2014/12/es6-symbols.html)
-- [MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol)
-- [Specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-symbol-constructor)
-
-### Limitations
-
-Underneath it uses real string property names which can easily be retrieved, however accidental collision with other property names is unlikely.
-
-### Usage
-
-If you'd like to use native version when it exists and fallback to polyfill if it doesn't (but without implementing `Symbol` on global scope), do:
-
-```javascript
-var Symbol = require('es6-symbol');
-```
-
-If you want to make sure your environment implements `Symbol`, do:
-
-```javascript
-require('es6-symbol/implement');
-```
-
-If you strictly want to use polyfill even if native `Symbol` exists (hard to find a good reason for that), do:
-
-```javascript
-var Symbol = require('es6-symbol/polyfill');
-```
-
-#### API
-
-Best is to refer to [specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-symbol-objects). Still if you want quick look, follow examples:
-
-```javascript
-var Symbol = require('es6-symbol');
-
-var symbol = Symbol('My custom symbol');
-var x = {};
-
-x[symbol] = 'foo';
-console.log(x[symbol]); 'foo'
-
-// Detect iterable:
-var iterator, result;
-if (possiblyIterable[Symbol.iterator]) {
-  iterator = possiblyIterable[Symbol.iterator]();
-  result = iterator.next();
-  while(!result.done) {
-    console.log(result.value);
-    result = iterator.next();
-  }
-}
-```
-
-### Installation
-#### NPM
-
-In your project path:
-
-       $ npm install es6-symbol
-
-##### Browser
-
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/es6-symbol.png)](https://travis-ci.org/medikoo/es6-symbol)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/implement.js
deleted file mode 100644 (file)
index 153edac..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(require('es5-ext/global'), 'Symbol',
-               { value: require('./polyfill'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/index.js
deleted file mode 100644 (file)
index 609f1fa..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Symbol : require('./polyfill');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-implemented.js
deleted file mode 100644 (file)
index 53759f3..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var symbol;
-       if (typeof Symbol !== 'function') return false;
-       symbol = Symbol('test symbol');
-       try { String(symbol); } catch (e) { return false; }
-       if (typeof Symbol.iterator === 'symbol') return true;
-
-       // Return 'true' for polyfills
-       if (typeof Symbol.isConcatSpreadable !== 'object') return false;
-       if (typeof Symbol.iterator !== 'object') return false;
-       if (typeof Symbol.toPrimitive !== 'object') return false;
-       if (typeof Symbol.toStringTag !== 'object') return false;
-       if (typeof Symbol.unscopables !== 'object') return false;
-
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-native-implemented.js
deleted file mode 100644 (file)
index a8cb8b8..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// Exports true if environment provides native `Symbol` implementation
-
-'use strict';
-
-module.exports = (function () {
-       if (typeof Symbol !== 'function') return false;
-       return (typeof Symbol.iterator === 'symbol');
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/is-symbol.js
deleted file mode 100644 (file)
index beeba2c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x) {
-       return (x && ((typeof x === 'symbol') || (x['@@toStringTag'] === 'Symbol'))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/package.json
deleted file mode 100644 (file)
index 5a2cda5..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_id": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-dhtcZ8/U8dGK+yNPaR1nhoLLO/M=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator/es6-symbol",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "name": "es6-symbol",
-    "escapedName": "es6-symbol",
-    "rawSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-symbol/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5"
-  },
-  "description": "ECMAScript6 Symbol polyfill",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-symbol#readme",
-  "keywords": [
-    "symbol",
-    "private",
-    "property",
-    "es6",
-    "ecmascript",
-    "harmony"
-  ],
-  "license": "MIT",
-  "name": "es6-symbol",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-symbol.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/polyfill.js
deleted file mode 100644 (file)
index 735eb67..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-'use strict';
-
-var d              = require('d')
-  , validateSymbol = require('./validate-symbol')
-
-  , create = Object.create, defineProperties = Object.defineProperties
-  , defineProperty = Object.defineProperty, objPrototype = Object.prototype
-  , Symbol, HiddenSymbol, globalSymbols = create(null);
-
-var generateName = (function () {
-       var created = create(null);
-       return function (desc) {
-               var postfix = 0, name;
-               while (created[desc + (postfix || '')]) ++postfix;
-               desc += (postfix || '');
-               created[desc] = true;
-               name = '@@' + desc;
-               defineProperty(objPrototype, name, d.gs(null, function (value) {
-                       defineProperty(this, name, d(value));
-               }));
-               return name;
-       };
-}());
-
-HiddenSymbol = function Symbol(description) {
-       if (this instanceof HiddenSymbol) throw new TypeError('TypeError: Symbol is not a constructor');
-       return Symbol(description);
-};
-module.exports = Symbol = function Symbol(description) {
-       var symbol;
-       if (this instanceof Symbol) throw new TypeError('TypeError: Symbol is not a constructor');
-       symbol = create(HiddenSymbol.prototype);
-       description = (description === undefined ? '' : String(description));
-       return defineProperties(symbol, {
-               __description__: d('', description),
-               __name__: d('', generateName(description))
-       });
-};
-defineProperties(Symbol, {
-       for: d(function (key) {
-               if (globalSymbols[key]) return globalSymbols[key];
-               return (globalSymbols[key] = Symbol(String(key)));
-       }),
-       keyFor: d(function (s) {
-               var key;
-               validateSymbol(s);
-               for (key in globalSymbols) if (globalSymbols[key] === s) return key;
-       }),
-       hasInstance: d('', Symbol('hasInstance')),
-       isConcatSpreadable: d('', Symbol('isConcatSpreadable')),
-       iterator: d('', Symbol('iterator')),
-       match: d('', Symbol('match')),
-       replace: d('', Symbol('replace')),
-       search: d('', Symbol('search')),
-       species: d('', Symbol('species')),
-       split: d('', Symbol('split')),
-       toPrimitive: d('', Symbol('toPrimitive')),
-       toStringTag: d('', Symbol('toStringTag')),
-       unscopables: d('', Symbol('unscopables'))
-});
-defineProperties(HiddenSymbol.prototype, {
-       constructor: d(Symbol),
-       toString: d('', function () { return this.__name__; })
-});
-
-defineProperties(Symbol.prototype, {
-       toString: d(function () { return 'Symbol (' + validateSymbol(this).__description__ + ')'; }),
-       valueOf: d(function () { return validateSymbol(this); })
-});
-defineProperty(Symbol.prototype, Symbol.toPrimitive, d('',
-       function () { return validateSymbol(this); }));
-defineProperty(Symbol.prototype, Symbol.toStringTag, d('c', 'Symbol'));
-
-defineProperty(HiddenSymbol.prototype, Symbol.toPrimitive,
-       d('c', Symbol.prototype[Symbol.toPrimitive]));
-defineProperty(HiddenSymbol.prototype, Symbol.toStringTag,
-       d('c', Symbol.prototype[Symbol.toStringTag]));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/implement.js
deleted file mode 100644 (file)
index eb35c30..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof Symbol, 'function'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/index.js
deleted file mode 100644 (file)
index 62b3296..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var d = require('d')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-implemented.js
deleted file mode 100644 (file)
index bb0d645..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var global   = require('es5-ext/global')
-  , polyfill = require('../polyfill');
-
-module.exports = function (t, a) {
-       var cache;
-       a(typeof t(), 'boolean');
-       cache = global.Symbol;
-       global.Symbol = polyfill;
-       a(t(), true);
-       if (cache === undefined) delete global.Symbol;
-       else global.Symbol = cache;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-native-implemented.js
deleted file mode 100644 (file)
index df8ba03..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t, 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/is-symbol.js
deleted file mode 100644 (file)
index ac24b9a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       a(t(undefined), false, "Undefined");
-       a(t(null), false, "Null");
-       a(t(true), false, "Primitive");
-       a(t('raz'), false, "String");
-       a(t({}), false, "Object");
-       a(t([]), false, "Array");
-       if (typeof Symbol !== 'undefined') {
-               a(t(Symbol()), true, "Native");
-       }
-       a(t(SymbolPoly()), true, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/polyfill.js
deleted file mode 100644 (file)
index 83fb5e9..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-var d        = require('d')
-  , isSymbol = require('../is-symbol')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-       a(x instanceof T, false);
-
-       a(isSymbol(symbol), true, "Symbol");
-       a(isSymbol(T.iterator), true, "iterator");
-       a(isSymbol(T.toStringTag), true, "toStringTag");
-
-       x = {};
-       x[symbol] = 'foo';
-       a.deep(Object.getOwnPropertyDescriptor(x, symbol), { configurable: true, enumerable: false,
-               value: 'foo', writable: true });
-       symbol = T.for('marko');
-       a(isSymbol(symbol), true);
-       a(T.for('marko'), symbol);
-       a(T.keyFor(symbol), 'marko');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/validate-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/test/validate-symbol.js
deleted file mode 100644 (file)
index 2c8f84c..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       var symbol;
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(true); }, TypeError, "Primitive");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t([]); }, TypeError, "Array");
-       if (typeof Symbol !== 'undefined') {
-               symbol = Symbol();
-               a(t(symbol), symbol, "Native");
-       }
-       symbol = SymbolPoly();
-       a(t(symbol), symbol, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/validate-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/node_modules/es6-symbol/validate-symbol.js
deleted file mode 100644 (file)
index 4275004..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSymbol = require('./is-symbol');
-
-module.exports = function (value) {
-       if (!isSymbol(value)) throw new TypeError(value + " is not a symbol");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/package.json
deleted file mode 100644 (file)
index a62e645..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_id": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-1vWLjE/EE8JJtLqhl2j45NfIlE4=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es6-iterator",
-  "_phantomChildren": {
-    "d": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "es5-ext": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-  },
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "name": "es6-iterator",
-    "escapedName": "es6-iterator",
-    "rawSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map",
-    "/grunt-standard/standard/eslint/escope/es6-map/es5-ext",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-set"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-iterator/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5",
-    "es6-symbol": "~2.0.1"
-  },
-  "description": "Iterator abstraction based on ES6 specification",
-  "devDependencies": {
-    "event-emitter": "~0.3.3",
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-iterator#readme",
-  "keywords": [
-    "iterator",
-    "array",
-    "list",
-    "set",
-    "map",
-    "generator"
-  ],
-  "license": "MIT",
-  "name": "es6-iterator",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-iterator.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/string.js
deleted file mode 100644 (file)
index cdb39ea..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-// Thanks @mathiasbynens
-// http://mathiasbynens.be/notes/javascript-unicode#iterating-over-symbols
-
-'use strict';
-
-var setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , d              = require('d')
-  , Iterator       = require('./')
-
-  , defineProperty = Object.defineProperty
-  , StringIterator;
-
-StringIterator = module.exports = function (str) {
-       if (!(this instanceof StringIterator)) return new StringIterator(str);
-       str = String(str);
-       Iterator.call(this, str);
-       defineProperty(this, '__length__', d('', str.length));
-
-};
-if (setPrototypeOf) setPrototypeOf(StringIterator, Iterator);
-
-StringIterator.prototype = Object.create(Iterator.prototype, {
-       constructor: d(StringIterator),
-       _next: d(function () {
-               if (!this.__list__) return;
-               if (this.__nextIndex__ < this.__length__) return this.__nextIndex__++;
-               this._unBind();
-       }),
-       _resolve: d(function (i) {
-               var char = this.__list__[i], code;
-               if (this.__nextIndex__ === this.__length__) return char;
-               code = char.charCodeAt(0);
-               if ((code >= 0xD800) && (code <= 0xDBFF)) return char + this.__list__[this.__nextIndex__++];
-               return char;
-       }),
-       toString: d(function () { return '[object String Iterator]'; })
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/#/chain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/#/chain.js
deleted file mode 100644 (file)
index a414c66..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var Iterator = require('../../');
-
-module.exports = function (t, a) {
-       var i1 = new Iterator(['raz', 'dwa', 'trzy'])
-         , i2 = new Iterator(['cztery', 'pięć', 'sześć'])
-         , i3 = new Iterator(['siedem', 'osiem', 'dziewięć'])
-
-         , iterator = t.call(i1, i2, i3);
-
-       a.deep(iterator.next(), { done: false, value: 'raz' }, "#1");
-       a.deep(iterator.next(), { done: false, value: 'dwa' }, "#2");
-       a.deep(iterator.next(), { done: false, value: 'trzy' }, "#3");
-       a.deep(iterator.next(), { done: false, value: 'cztery' }, "#4");
-       a.deep(iterator.next(), { done: false, value: 'pięć' }, "#5");
-       a.deep(iterator.next(), { done: false, value: 'sześć' }, "#6");
-       a.deep(iterator.next(), { done: false, value: 'siedem' }, "#7");
-       a.deep(iterator.next(), { done: false, value: 'osiem' }, "#8");
-       a.deep(iterator.next(), { done: false, value: 'dziewięć' }, "#9");
-       a.deep(iterator.next(), { done: true, value: undefined }, "Done #1");
-       a.deep(iterator.next(), { done: true, value: undefined }, "Done #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/array.js
deleted file mode 100644 (file)
index ae7c219..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function (T) {
-       return {
-               Values: function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it;
-
-                       it = new T(x);
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#1");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#2");
-                       x.splice(1, 0, 'elo');
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "Insert");
-                       a.deep(it.next(), { done: false, value: 'trzy' }, "#3");
-                       a.deep(it.next(), { done: false, value: 'cztery' }, "#4");
-                       x.pop();
-                       a.deep(it.next(), { done: false, value: 'pięć' }, "#5");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Keys & Values": function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it;
-
-                       it = new T(x, 'key+value');
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       a.deep(it.next(), { done: false, value: [0, 'raz'] }, "#1");
-                       a.deep(it.next(), { done: false, value: [1, 'dwa'] }, "#2");
-                       x.splice(1, 0, 'elo');
-                       a.deep(it.next(), { done: false, value: [2, 'dwa'] }, "Insert");
-                       a.deep(it.next(), { done: false, value: [3, 'trzy'] }, "#3");
-                       a.deep(it.next(), { done: false, value: [4, 'cztery'] }, "#4");
-                       x.pop();
-                       a.deep(it.next(), { done: false, value: [5, 'pięć'] }, "#5");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               Keys: function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it;
-
-                       it = new T(x, 'key');
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       a.deep(it.next(), { done: false, value: 0 }, "#1");
-                       a.deep(it.next(), { done: false, value: 1 }, "#2");
-                       x.splice(1, 0, 'elo');
-                       a.deep(it.next(), { done: false, value: 2 }, "Insert");
-                       a.deep(it.next(), { done: false, value: 3 }, "#3");
-                       a.deep(it.next(), { done: false, value: 4 }, "#4");
-                       x.pop();
-                       a.deep(it.next(), { done: false, value: 5 }, "#5");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               Sparse: function (a) {
-                       var x = new Array(6), it;
-
-                       x[2] = 'raz';
-                       x[4] = 'dwa';
-                       it = new T(x);
-                       a.deep(it.next(), { done: false, value: undefined }, "#1");
-                       a.deep(it.next(), { done: false, value: undefined }, "#2");
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#3");
-                       a.deep(it.next(), { done: false, value: undefined }, "#4");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#5");
-                       a.deep(it.next(), { done: false, value: undefined }, "#6");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/for-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/for-of.js
deleted file mode 100644 (file)
index 502e7b7..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('../array')
-
-  , slice = Array.prototype.slice;
-
-module.exports = function (t, a) {
-       var i = 0, x = ['raz', 'dwa', 'trzy'], y = {}, called = 0;
-       t(x, function () {
-               a.deep(slice.call(arguments, 0, 1), [x[i]], "Array " + i + "#");
-               a(this, y, "Array: context:  " + (i++) + "#");
-       }, y);
-       i = 0;
-       t(x = 'foo', function () {
-               a.deep(slice.call(arguments, 0, 1), [x[i]], "String " + i + "#");
-               a(this, y, "Regular String: context:  " + (i++) + "#");
-       }, y);
-       i = 0;
-       x = ['r', '💩', 'z'];
-       t('r💩z', function () {
-               a.deep(slice.call(arguments, 0, 1), [x[i]], "String " + i + "#");
-               a(this, y, "Unicode String: context:  " + (i++) + "#");
-       }, y);
-       i = 0;
-       t(new ArrayIterator(x), function () {
-               a.deep(slice.call(arguments, 0, 1), [x[i]], "Iterator " + i + "#");
-               a(this, y, "Iterator: context:  " + (i++) + "#");
-       }, y);
-
-       t(x = ['raz', 'dwa', 'trzy'], function (value, doBreak) {
-               ++called;
-               return doBreak();
-       });
-       a(called, 1, "Break");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/get.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/get.js
deleted file mode 100644 (file)
index 7309590..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , Iterator       = require('../');
-
-module.exports = function (t, a) {
-       var iterator;
-       a.throws(function () { t(); }, TypeError, "Null");
-       a.throws(function () { t({}); }, TypeError, "Plain object");
-       a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
-       iterator = {};
-       iterator[iteratorSymbol] = function () { return new Iterator([]); };
-       a(t(iterator) instanceof Iterator, true, "Iterator");
-       a(String(t([])), '[object Array Iterator]', " Array");
-       a(String(t('foo')), '[object String Iterator]', "String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/index.js
deleted file mode 100644 (file)
index ea3621a..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-'use strict';
-
-var ee             = require('event-emitter')
-  , iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function (T) {
-       return {
-               "": function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć'], it, y, z;
-
-                       it = new T(x);
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       y = it.next();
-                       a.deep(y, { done: false, value: 'raz' }, "#1");
-                       z = it.next();
-                       a.not(y, z, "Recreate result");
-                       a.deep(z, { done: false, value: 'dwa' }, "#2");
-                       a.deep(it.next(), { done: false, value: 'trzy' }, "#3");
-                       a.deep(it.next(), { done: false, value: 'cztery' }, "#4");
-                       a.deep(it.next(), { done: false, value: 'pięć' }, "#5");
-                       a.deep(y = it.next(), { done: true, value: undefined }, "End");
-                       a.not(y, it.next(), "Recreate result on dead");
-               },
-               Emited: function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć'], y, it;
-
-                       y = ee();
-                       it = new T(x, y);
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#1");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#2");
-                       y.emit('_add', x.push('sześć') - 1);
-                       a.deep(it.next(), { done: false, value: 'trzy' }, "#3");
-                       x.splice(1, 0, 'półtora');
-                       y.emit('_add', 1);
-                       a.deep(it.next(), { done: false, value: 'półtora' }, "Insert");
-                       x.splice(5, 1);
-                       y.emit('_delete', 5);
-                       a.deep(it.next(), { done: false, value: 'cztery' }, "#4");
-                       a.deep(it.next(), { done: false, value: 'sześć' }, "#5");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited #2": function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], y, it;
-
-                       y = ee();
-                       it = new T(x, y);
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#1");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#2");
-                       x.splice(1, 0, 'półtora');
-                       y.emit('_add', 1);
-                       x.splice(1, 0, '1.25');
-                       y.emit('_add', 1);
-                       x.splice(0, 1);
-                       y.emit('_delete', 0);
-                       a.deep(it.next(), { done: false, value: 'półtora' }, "Insert");
-                       a.deep(it.next(), { done: false, value: '1.25' }, "Insert #2");
-                       a.deep(it.next(), { done: false, value: 'trzy' }, "#3");
-                       a.deep(it.next(), { done: false, value: 'cztery' }, "#4");
-                       x.splice(5, 1);
-                       y.emit('_delete', 5);
-                       a.deep(it.next(), { done: false, value: 'sześć' }, "#5");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #1": function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], y, it;
-
-                       y = ee();
-                       it = new T(x, y);
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#1");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#2");
-                       x.length = 0;
-                       y.emit('_clear');
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #2": function (a) {
-                       var x = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], y, it;
-
-                       y = ee();
-                       it = new T(x, y);
-                       a.deep(it.next(), { done: false, value: 'raz' }, "#1");
-                       a.deep(it.next(), { done: false, value: 'dwa' }, "#2");
-                       x.length = 0;
-                       y.emit('_clear');
-                       x.push('foo');
-                       x.push('bar');
-                       a.deep(it.next(), { done: false, value: 'foo' }, "#3");
-                       a.deep(it.next(), { done: false, value: 'bar' }, "#4");
-                       x.splice(1, 0, 'półtora');
-                       y.emit('_add', 1);
-                       x.splice(1, 0, '1.25');
-                       y.emit('_add', 1);
-                       x.splice(0, 1);
-                       y.emit('_delete', 0);
-                       a.deep(it.next(), { done: false, value: 'półtora' }, "Insert");
-                       a.deep(it.next(), { done: false, value: '1.25' }, "Insert #2");
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/is-iterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/is-iterable.js
deleted file mode 100644 (file)
index 7c5c59b..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , Iterator       = require('../');
-
-module.exports = function (t, a) {
-       var iterator;
-       a(t(), false, "Undefined");
-       a(t(123), false, "Number");
-       a(t({}), false, "Plain object");
-       a(t({ length: 0 }), false, "Array-like");
-       iterator = {};
-       iterator[iteratorSymbol] = function () { return new Iterator([]); };
-       a(t(iterator), true, "Iterator");
-       a(t([]), true, "Array");
-       a(t('foo'), true, "String");
-       a(t(''), true, "Empty string");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/string.js
deleted file mode 100644 (file)
index d11855f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function (T, a) {
-       var it = new T('foobar');
-
-       a(it[iteratorSymbol](), it, "@@iterator");
-       a.deep(it.next(), { done: false, value: 'f' }, "#1");
-       a.deep(it.next(), { done: false, value: 'o' }, "#2");
-       a.deep(it.next(), { done: false, value: 'o' }, "#3");
-       a.deep(it.next(), { done: false, value: 'b' }, "#4");
-       a.deep(it.next(), { done: false, value: 'a' }, "#5");
-       a.deep(it.next(), { done: false, value: 'r' }, "#6");
-       a.deep(it.next(), { done: true, value: undefined }, "End");
-
-       a.h1("Outside of BMP");
-       it = new T('r💩z');
-       a.deep(it.next(), { done: false, value: 'r' }, "#1");
-       a.deep(it.next(), { done: false, value: '💩' }, "#2");
-       a.deep(it.next(), { done: false, value: 'z' }, "#3");
-       a.deep(it.next(), { done: true, value: undefined }, "End");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/valid-iterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/test/valid-iterable.js
deleted file mode 100644 (file)
index 7760b01..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , Iterator       = require('../');
-
-module.exports = function (t, a) {
-       var obj;
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t({}); }, TypeError, "Plain object");
-       a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
-       obj = {};
-       obj[iteratorSymbol] = function () { return new Iterator([]); };
-       a(t(obj), obj, "Iterator");
-       obj = [];
-       a(t(obj), obj, 'Array');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/valid-iterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-iterator/valid-iterable.js
deleted file mode 100644 (file)
index d330997..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isIterable = require('./is-iterable');
-
-module.exports = function (value) {
-       if (!isIterable(value)) throw new TypeError(value + " is not iterable");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.lint
deleted file mode 100644 (file)
index cf54d81..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-@root
-
-module
-
-tabs
-indent 2
-maxlen 100
-
-ass
-nomen
-plusplus
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/.travis.yml
deleted file mode 100644 (file)
index 4c4accb..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-set@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/CHANGES
deleted file mode 100644 (file)
index 79603bf..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-v0.1.1  --  2014.10.07
-* Fix isImplemented so it validates native Set properly
-* Add getFirst and getLast extensions
-* Configure linter scripts
-
-v0.1.0  --  2014.04.29
-* Assure strictly npm hosted dependencies
-* Introduce faster 'primitive' alternative (doesn't guarantee order of iteration)
-* Add isNativeImplemented, and some, every and copy method extensions
-* If native Set is provided polyfill extends it
-* Optimize forEach iteration
-* Remove comparator support (as it was removed from spec)
-* Provide @@toStringTag symbol, ad @@iterator symbols on iterators
-* Update to use latest dependencies versions
-* Improve interals
-
-v0.0.0  --  2013.10.12
-Initial (dev) version
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/LICENCE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/LICENCE
deleted file mode 100644 (file)
index aaf3528..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/README.md
deleted file mode 100644 (file)
index 95e9d35..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-# es6-set
-## Set collection as specified in ECMAScript6
-
-### Usage
-
-If you want to make sure your environment implements `Set`, do:
-
-```javascript
-require('es6-set/implement');
-```
-
-If you'd like to use native version when it exists and fallback to polyfill if it doesn't, but without implementing `Set` on global scope, do:
-
-```javascript
-var Set = require('es6-set');
-```
-
-If you strictly want to use polyfill even if native `Set` exists, do:
-
-```javascript
-var Set = require('es6-set/polyfill');
-```
-
-### Installation
-
-       $ npm install es6-set
-
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-#### API
-
-Best is to refer to [specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-set-objects). Still if you want quick look, follow examples:
-
-```javascript
-var Set = require('es6-set');
-
-var set = new Set(['raz', 'dwa', {}]);
-
-set.size;          // 3
-set.has('raz');    // true
-set.has('foo');    // false
-set.add('foo');    // set
-set.size           // 4
-set.has('foo');    // true
-set.has('dwa');    // true
-set.delete('dwa'); // true
-set.size;          // 3
-
-set.forEach(function (value) {
- // 'raz', {}, 'foo' iterated
-});
-
-// FF nightly only:
-for (value of set) {
- // 'raz', {}, 'foo' iterated
-}
-
-var iterator = set.values();
-
-iterator.next(); // { done: false, value: 'raz' }
-iterator.next(); // { done: false, value: {} }
-iterator.next(); // { done: false, value: 'foo' }
-iterator.next(); // { done: true, value: undefined }
-
-set.clear(); // undefined
-set.size; // 0
-```
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/es6-set.png)](https://travis-ci.org/medikoo/es6-set)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/copy.js
deleted file mode 100644 (file)
index a8fd5c2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var Set = require('../');
-
-module.exports = function () { return new Set(this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/every.js
deleted file mode 100644 (file)
index ea64ebc..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var callable = require('es5-ext/object/valid-callable')
-  , forOf    = require('es6-iterator/for-of')
-
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var thisArg = arguments[1], result = true;
-       callable(cb);
-       forOf(this, function (value, doBreak) {
-               if (!call.call(cb, thisArg, value)) {
-                       result = false;
-                       doBreak();
-               }
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-first.js
deleted file mode 100644 (file)
index b5d89fc..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return this.values().next().value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/get-last.js
deleted file mode 100644 (file)
index d22ce73..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var value, iterator = this.values(), item;
-       while (true) {
-               item = iterator.next();
-               if (item.done) break;
-               value = item.value;
-       }
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/ext/some.js
deleted file mode 100644 (file)
index 400a5a0..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var callable = require('es5-ext/object/valid-callable')
-  , forOf    = require('es6-iterator/for-of')
-
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var thisArg = arguments[1], result = false;
-       callable(cb);
-       forOf(this, function (value, doBreak) {
-               if (call.call(cb, thisArg, value)) {
-                       result = true;
-                       doBreak();
-               }
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/implement.js
deleted file mode 100644 (file)
index f03362e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(require('es5-ext/global'), 'Set',
-               { value: require('./polyfill'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/index.js
deleted file mode 100644 (file)
index daa7886..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Set : require('./polyfill');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-implemented.js
deleted file mode 100644 (file)
index d8b0cd7..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var set, iterator, result;
-       if (typeof Set !== 'function') return false;
-       set = new Set(['raz', 'dwa', 'trzy']);
-       if (set.size !== 3) return false;
-       if (typeof set.add !== 'function') return false;
-       if (typeof set.clear !== 'function') return false;
-       if (typeof set.delete !== 'function') return false;
-       if (typeof set.entries !== 'function') return false;
-       if (typeof set.forEach !== 'function') return false;
-       if (typeof set.has !== 'function') return false;
-       if (typeof set.keys !== 'function') return false;
-       if (typeof set.values !== 'function') return false;
-
-       iterator = set.values();
-       result = iterator.next();
-       if (result.done !== false) return false;
-       if (result.value !== 'raz') return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-native-implemented.js
deleted file mode 100644 (file)
index e8b0160..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Exports true if environment provides native `Set` implementation,
-// whatever that is.
-
-'use strict';
-
-module.exports = (function () {
-       if (typeof Set === 'undefined') return false;
-       return (Object.prototype.toString.call(Set.prototype) === '[object Set]');
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/is-set.js
deleted file mode 100644 (file)
index 19e4792..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var toString          = Object.prototype.toString
-  , toStringTagSymbol = require('es6-symbol').toStringTag
-
-  , id = '[object Set]'
-  , Global = (typeof Set === 'undefined') ? null : Set;
-
-module.exports = function (x) {
-       return (x && ((Global && (x instanceof Global)) ||
-                       (toString.call(x) === id) || (x[toStringTagSymbol] === 'Set'))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/iterator.js
deleted file mode 100644 (file)
index 4a7dac7..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-'use strict';
-
-var setPrototypeOf    = require('es5-ext/object/set-prototype-of')
-  , contains          = require('es5-ext/string/#/contains')
-  , d                 = require('d')
-  , Iterator          = require('es6-iterator')
-  , toStringTagSymbol = require('es6-symbol').toStringTag
-
-  , defineProperty = Object.defineProperty
-  , SetIterator;
-
-SetIterator = module.exports = function (set, kind) {
-       if (!(this instanceof SetIterator)) return new SetIterator(set, kind);
-       Iterator.call(this, set.__setData__, set);
-       if (!kind) kind = 'value';
-       else if (contains.call(kind, 'key+value')) kind = 'key+value';
-       else kind = 'value';
-       defineProperty(this, '__kind__', d('', kind));
-};
-if (setPrototypeOf) setPrototypeOf(SetIterator, Iterator);
-
-SetIterator.prototype = Object.create(Iterator.prototype, {
-       constructor: d(SetIterator),
-       _resolve: d(function (i) {
-               if (this.__kind__ === 'value') return this.__list__[i];
-               return [this.__list__[i], this.__list__[i]];
-       }),
-       toString: d(function () { return '[object Set Iterator]'; })
-});
-defineProperty(SetIterator.prototype, toStringTagSymbol,
-       d('c', 'Set Iterator'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/primitive-iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/lib/primitive-iterator.js
deleted file mode 100644 (file)
index 1f0326a..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-'use strict';
-
-var clear             = require('es5-ext/array/#/clear')
-  , assign            = require('es5-ext/object/assign')
-  , setPrototypeOf    = require('es5-ext/object/set-prototype-of')
-  , contains          = require('es5-ext/string/#/contains')
-  , d                 = require('d')
-  , autoBind          = require('d/auto-bind')
-  , Iterator          = require('es6-iterator')
-  , toStringTagSymbol = require('es6-symbol').toStringTag
-
-  , defineProperties = Object.defineProperties, keys = Object.keys
-  , unBind = Iterator.prototype._unBind
-  , PrimitiveSetIterator;
-
-PrimitiveSetIterator = module.exports = function (set, kind) {
-       if (!(this instanceof PrimitiveSetIterator)) {
-               return new PrimitiveSetIterator(set, kind);
-       }
-       Iterator.call(this, keys(set.__setData__), set);
-       kind = (!kind || !contains.call(kind, 'key+value')) ? 'value' : 'key+value';
-       defineProperties(this, {
-               __kind__: d('', kind),
-               __data__: d('w', set.__setData__)
-       });
-};
-if (setPrototypeOf) setPrototypeOf(PrimitiveSetIterator, Iterator);
-
-PrimitiveSetIterator.prototype = Object.create(Iterator.prototype, assign({
-       constructor: d(PrimitiveSetIterator),
-       _resolve: d(function (i) {
-               var value = this.__data__[this.__list__[i]];
-               return (this.__kind__ === 'value') ? value : [value, value];
-       }),
-       _unBind: d(function () {
-               this.__data__ = null;
-               unBind.call(this);
-       }),
-       toString: d(function () { return '[object Set Iterator]'; })
-}, autoBind({
-       _onAdd: d(function (key) { this.__list__.push(key); }),
-       _onDelete: d(function (key) {
-               var index = this.__list__.lastIndexOf(key);
-               if (index < this.__nextIndex__) return;
-               this.__list__.splice(index, 1);
-       }),
-       _onClear: d(function () {
-               clear.call(this.__list__);
-               this.__nextIndex__ = 0;
-       })
-})));
-Object.defineProperty(PrimitiveSetIterator.prototype, toStringTagSymbol,
-       d('c', 'Set Iterator'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/package.json
deleted file mode 100644 (file)
index e764503..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-set@https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-set@https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-  "_id": "es6-set@https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-SXzSNcmiaR9Mqg4z3XPvhr3nOKw=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es6-set",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-set@https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-    "name": "es6-set",
-    "escapedName": "es6-set",
-    "rawSpec": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-set/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.4",
-    "es6-iterator": "~0.1.1",
-    "es6-symbol": "~0.1.1",
-    "event-emitter": "~0.3.1"
-  },
-  "description": "ECMAScript6 Set polyfill",
-  "devDependencies": {
-    "tad": "0.2.x",
-    "xlint": "~0.2.1",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-set#readme",
-  "keywords": [
-    "set",
-    "collection",
-    "es6",
-    "harmony",
-    "list",
-    "hash"
-  ],
-  "license": "MIT",
-  "name": "es6-set",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-set.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/polyfill.js
deleted file mode 100644 (file)
index d272429..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-'use strict';
-
-var clear          = require('es5-ext/array/#/clear')
-  , eIndexOf       = require('es5-ext/array/#/e-index-of')
-  , setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , callable       = require('es5-ext/object/valid-callable')
-  , d              = require('d')
-  , ee             = require('event-emitter')
-  , Symbol         = require('es6-symbol')
-  , iterator       = require('es6-iterator/valid-iterable')
-  , forOf          = require('es6-iterator/for-of')
-  , Iterator       = require('./lib/iterator')
-  , isNative       = require('./is-native-implemented')
-
-  , call = Function.prototype.call, defineProperty = Object.defineProperty
-  , SetPoly, getValues;
-
-module.exports = SetPoly = function (/*iterable*/) {
-       var iterable = arguments[0];
-       if (!(this instanceof SetPoly)) return new SetPoly(iterable);
-       if (this.__setData__ !== undefined) {
-               throw new TypeError(this + " cannot be reinitialized");
-       }
-       if (iterable != null) iterator(iterable);
-       defineProperty(this, '__setData__', d('c', []));
-       if (!iterable) return;
-       forOf(iterable, function (value) {
-               if (eIndexOf.call(this, value) !== -1) return;
-               this.push(value);
-       }, this.__setData__);
-};
-
-if (isNative) {
-       if (setPrototypeOf) setPrototypeOf(SetPoly, Set);
-       SetPoly.prototype = Object.create(Set.prototype, {
-               constructor: d(SetPoly)
-       });
-}
-
-ee(Object.defineProperties(SetPoly.prototype, {
-       add: d(function (value) {
-               if (this.has(value)) return this;
-               this.emit('_add', this.__setData__.push(value) - 1, value);
-               return this;
-       }),
-       clear: d(function () {
-               if (!this.__setData__.length) return;
-               clear.call(this.__setData__);
-               this.emit('_clear');
-       }),
-       delete: d(function (value) {
-               var index = eIndexOf.call(this.__setData__, value);
-               if (index === -1) return false;
-               this.__setData__.splice(index, 1);
-               this.emit('_delete', index, value);
-               return true;
-       }),
-       entries: d(function () { return new Iterator(this, 'key+value'); }),
-       forEach: d(function (cb/*, thisArg*/) {
-               var thisArg = arguments[1], iterator, result, value;
-               callable(cb);
-               iterator = this.values();
-               result = iterator._next();
-               while (result !== undefined) {
-                       value = iterator._resolve(result);
-                       call.call(cb, thisArg, value, value, this);
-                       result = iterator._next();
-               }
-       }),
-       has: d(function (value) {
-               return (eIndexOf.call(this.__setData__, value) !== -1);
-       }),
-       keys: d(getValues = function () { return this.values(); }),
-       size: d.gs(function () { return this.__setData__.length; }),
-       values: d(function () { return new Iterator(this); }),
-       toString: d(function () { return '[object Set]'; })
-}));
-defineProperty(SetPoly.prototype, Symbol.iterator, d(getValues));
-defineProperty(SetPoly.prototype, Symbol.toStringTag, d('c', 'Set'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/primitive/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/primitive/index.js
deleted file mode 100644 (file)
index 4565887..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-'use strict';
-
-var callable       = require('es5-ext/object/valid-callable')
-  , clear          = require('es5-ext/object/clear')
-  , setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , d              = require('d')
-  , iterator       = require('es6-iterator/valid-iterable')
-  , forOf          = require('es6-iterator/for-of')
-  , Set            = require('../polyfill')
-  , Iterator       = require('../lib/primitive-iterator')
-
-  , create = Object.create, defineProperties = Object.defineProperties
-  , defineProperty = Object.defineProperty
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , PrimitiveSet;
-
-module.exports = PrimitiveSet = function (/*iterable, serialize*/) {
-       var iterable = arguments[0], serialize = arguments[1];
-       if (!(this instanceof PrimitiveSet)) {
-               return new PrimitiveSet(iterable, serialize);
-       }
-       if (this.__setData__ !== undefined) {
-               throw new TypeError(this + " cannot be reinitialized");
-       }
-       if (iterable != null) iterator(iterable);
-       if (serialize !== undefined) {
-               callable(serialize);
-               defineProperty(this, '_serialize', d('', serialize));
-       }
-       defineProperties(this, {
-               __setData__: d('c', create(null)),
-               __size__: d('w', 0)
-       });
-       if (!iterable) return;
-       forOf(iterable, function (value) {
-               var key = this._serialize(value);
-               if (key == null) throw new TypeError(value + " cannot be serialized");
-               if (hasOwnProperty.call(this.__setData__, key)) return;
-               this.__setData__[key] = value;
-               ++this.__size__;
-       }, this);
-};
-if (setPrototypeOf) setPrototypeOf(PrimitiveSet, Set);
-
-PrimitiveSet.prototype = create(Set.prototype, {
-       constructor: d(PrimitiveSet),
-       _serialize: d(function (value) {
-               if (value && (typeof value.toString !== 'function')) return null;
-               return String(value);
-       }),
-       add: d(function (value) {
-               var key = this._serialize(value);
-               if (key == null) throw new TypeError(value + " cannot be serialized");
-               if (hasOwnProperty.call(this.__setData__, key)) return this;
-               this.__setData__[key] = value;
-               ++this.__size__;
-               this.emit('_add', key);
-               return this;
-       }),
-       clear: d(function () {
-               if (!this.__size__) return;
-               clear(this.__setData__);
-               this.__size__ = 0;
-               this.emit('_clear');
-       }),
-       delete: d(function (value) {
-               var key = this._serialize(value);
-               if (key == null) return false;
-               if (!hasOwnProperty.call(this.__setData__, key)) return false;
-               delete this.__setData__[key];
-               --this.__size__;
-               this.emit('_delete', key);
-               return true;
-       }),
-       entries: d(function () { return new Iterator(this, 'key+value'); }),
-       get: d(function (key) {
-               key = this._serialize(key);
-               if (key == null) return;
-               return this.__setData__[key];
-       }),
-       has: d(function (value) {
-               var key = this._serialize(value);
-               if (key == null) return false;
-               return hasOwnProperty.call(this.__setData__, key);
-       }),
-       size: d.gs(function () { return this.__size__; }),
-       values: d(function () { return new Iterator(this); })
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/copy.js
deleted file mode 100644 (file)
index 84fe912..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var toArray = require('es5-ext/array/to-array')
-  , Set     = require('../../');
-
-module.exports = function (t, a) {
-       var content = ['raz', 2, true], set = new Set(content), copy;
-
-       copy = t.call(set);
-       a.not(copy, set, "Copy");
-       a.deep(toArray(copy), content, "Content");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/every.js
deleted file mode 100644 (file)
index f56ca38..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var Set = require('../../');
-
-module.exports = function (t, a) {
-       a(t.call(new Set(), Boolean), true, "Empty set");
-       a(t.call(new Set([2, 3, 4]), Boolean), true, "Truthy");
-       a(t.call(new Set([2, 0, 4]), Boolean), false, "Falsy");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-first.js
deleted file mode 100644 (file)
index f99829e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var Set     = require('../../');
-
-module.exports = function (t, a) {
-       var content = ['raz', 2, true], set = new Set(content);
-
-       a(t.call(set), 'raz');
-
-       set = new Set();
-       a(t.call(set), undefined);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/get-last.js
deleted file mode 100644 (file)
index 1dcc993..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var Set     = require('../../');
-
-module.exports = function (t, a) {
-       var content = ['raz', 2, true], set = new Set(content);
-
-       a(t.call(set), true);
-
-       set = new Set();
-       a(t.call(set), undefined);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/ext/some.js
deleted file mode 100644 (file)
index 84ce119..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var Set = require('../../');
-
-module.exports = function (t, a) {
-       a(t.call(new Set(), Boolean), false, "Empty set");
-       a(t.call(new Set([2, 3, 4]), Boolean), true, "All true");
-       a(t.call(new Set([0, false, 4]), Boolean), true, "Some false");
-       a(t.call(new Set([0, false, null]), Boolean), false, "All false");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/implement.js
deleted file mode 100644 (file)
index 4882d37..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof Set, 'function'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/index.js
deleted file mode 100644 (file)
index 19c6486..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (T, a) { a((new T(['raz', 'dwa'])).size, 2); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-implemented.js
deleted file mode 100644 (file)
index 124793e..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var global   = require('es5-ext/global')
-  , polyfill = require('../polyfill');
-
-module.exports = function (t, a) {
-       var cache;
-       a(typeof t(), 'boolean');
-       cache = global.Set;
-       global.Set = polyfill;
-       a(t(), true);
-       if (cache === undefined) delete global.Set;
-       else global.Set = cache;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-native-implemented.js
deleted file mode 100644 (file)
index df8ba03..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t, 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/is-set.js
deleted file mode 100644 (file)
index c969cce..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var SetPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       a(t(undefined), false, "Undefined");
-       a(t(null), false, "Null");
-       a(t(true), false, "Primitive");
-       a(t('raz'), false, "String");
-       a(t({}), false, "Object");
-       a(t([]), false, "Array");
-       if (typeof Set !== 'undefined') {
-               a(t(new Set()), true, "Native");
-       }
-       a(t(new SetPoly()), true, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/iterator.js
deleted file mode 100644 (file)
index 9e5cfb9..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var Set     = require('../../polyfill')
-  , toArray = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var set = new Set(['raz', 'dwa']);
-
-       a.deep(toArray(new T(set)), ['raz', 'dwa'], "Default");
-       a.deep(toArray(new T(set, 'key+value')), [['raz', 'raz'], ['dwa', 'dwa']],
-               "Key & Value");
-       a.deep(toArray(new T(set, 'value')), ['raz', 'dwa'], "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/primitive-iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/lib/primitive-iterator.js
deleted file mode 100644 (file)
index 2a4956b..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-'use strict';
-
-var Set            = require('../../primitive')
-  , toArray        = require('es5-ext/array/to-array')
-  , iteratorSymbol = require('es6-symbol').iterator
-
-  , compare, map;
-
-compare = function (a, b) {
-       if (!a.value) return -1;
-       if (!b.value) return 1;
-       return a.value.localeCompare(b.value);
-};
-
-map = function (arr) {
-       return arr.sort().map(function (value) {
-               return { done: false, value: value };
-       });
-};
-
-module.exports = function (T) {
-       return {
-               "": function (a) {
-                       var arr = ['raz', 'dwa', 'trzy', 'cztery', 'pięć'], it, y, z
-                         , set = new Set(arr), result = [];
-
-                       it = new T(set);
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       y = it.next();
-                       result.push(y);
-                       z = it.next();
-                       a.not(y, z, "Recreate result");
-                       result.push(z);
-                       result.push(it.next());
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), map(arr));
-                       a.deep(y = it.next(), { done: true, value: undefined }, "End");
-                       a.not(y, it.next(), "Recreate result on dead");
-               },
-               Emited: function (a) {
-                       var arr = ['raz', 'dwa', 'trzy', 'cztery', 'pięć'], it
-                         , set = new Set(arr), result = [];
-
-                       it = new T(set);
-                       result.push(it.next());
-                       result.push(it.next());
-                       set.add('sześć');
-                       arr.push('sześć');
-                       result.push(it.next());
-                       set.delete('pięć');
-                       arr.splice(4, 1);
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), map(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited #2": function (a) {
-                       var arr = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it
-                         , set = new Set(arr), result = [];
-
-                       it = new T(set);
-                       result.push(it.next());
-                       result.push(it.next());
-                       set.add('siedem');
-                       set.delete('siedem');
-                       result.push(it.next());
-                       result.push(it.next());
-                       set.delete('pięć');
-                       arr.splice(4, 1);
-                       result.push(it.next());
-                       a.deep(result.sort(compare), map(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #1": function (a) {
-                       var arr = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it
-                         , set = new Set(arr), result = [];
-
-                       it = new T(set);
-                       result.push(it.next());
-                       result.push(it.next());
-                       arr = ['raz', 'dwa'];
-                       set.clear();
-                       a.deep(result.sort(compare), map(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #2": function (a) {
-                       var arr = ['raz', 'dwa', 'trzy', 'cztery', 'pięć', 'sześć'], it
-                         , set = new Set(arr), result = [];
-
-                       it = new T(set);
-                       result.push(it.next());
-                       result.push(it.next());
-                       set.clear();
-                       set.add('foo');
-                       set.add('bar');
-                       arr = ['raz', 'dwa', 'foo', 'bar'];
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), map(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               Kinds: function (a) {
-                       var set = new Set(['raz', 'dwa']);
-
-                       a.deep(toArray(new T(set)).sort(), ['raz', 'dwa'].sort(), "Default");
-                       a.deep(toArray(new T(set, 'key+value')).sort(),
-                               [['raz', 'raz'], ['dwa', 'dwa']].sort(), "Key & Value");
-                       a.deep(toArray(new T(set, 'value')).sort(), ['raz', 'dwa'].sort(),
-                               "Other");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/polyfill.js
deleted file mode 100644 (file)
index 10ce6d3..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-var aFrom   = require('es5-ext/array/from')
-  , toArray = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var arr = ['raz', 'dwa', 'trzy'], set = new T(arr), x = {}, y = {}, i = 0;
-
-       a(set instanceof T, true, "Set");
-       a(set.size, 3, "Size");
-       a(set.has('raz'), true, "Has: true");
-       a(set.has(x), false, "Has: false");
-       a(set.add(x), set, "Add: return");
-       a(set.has(x), true, "Add");
-       a(set.size, 4, "Add: Size");
-       a(set.delete({}), false, "Delete: false");
-
-       arr.push(x);
-       set.forEach(function () {
-               a.deep(aFrom(arguments), [arr[i], arr[i], set],
-                       "ForEach: Arguments:  #" + i);
-               a(this, y, "ForEach: Context: #" + i);
-               if (i === 0) {
-                       a(set.delete('raz'), true, "Delete: true");
-                       a(set.has('raz'), false, "Delete");
-                       a(set.size, 3, "Delete: size");
-                       set.add('cztery');
-                       arr.push('cztery');
-               }
-               i++;
-       }, y);
-       arr.splice(0, 1);
-
-       a.deep(toArray(set.entries()), [['dwa', 'dwa'], ['trzy', 'trzy'], [x, x],
-               ['cztery', 'cztery']], "Entries");
-       a.deep(toArray(set.keys()), ['dwa', 'trzy', x, 'cztery'], "Keys");
-       a.deep(toArray(set.values()), ['dwa', 'trzy', x, 'cztery'], "Values");
-       a.deep(toArray(set), ['dwa', 'trzy', x, 'cztery'], "Iterator");
-
-       set.clear();
-       a(set.size, 0, "Clear: size");
-       a(set.has('trzy'), false, "Clear: has");
-       a.deep(toArray(set), [], "Clear: Values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/primitive/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/primitive/index.js
deleted file mode 100644 (file)
index 54765d2..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-var aFrom       = require('es5-ext/array/from')
-  , getIterator = require('es6-iterator/get')
-  , toArray     = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var arr = ['raz', 'dwa', 'trzy'], set = new T(arr), x = 'other', y = 'other2'
-         , i = 0, result = [];
-
-       a(set instanceof T, true, "Set");
-       a(set.size, 3, "Size");
-       a(set.has('raz'), true, "Has: true");
-       a(set.has(x), false, "Has: false");
-       a(set.add(x), set, "Add: return");
-       a(set.has(x), true, "Add");
-       a(set.size, 4, "Add: Size");
-       a(set.delete('else'), false, "Delete: false");
-       a(set.get('raz'), 'raz', "Get");
-
-       arr.push(x);
-       set.forEach(function () {
-               result.push(aFrom(arguments));
-               a(this, y, "ForEach: Context: #" + i);
-       }, y);
-
-       a.deep(result.sort(function (a, b) {
-               return a[0].localeCompare(b[0]);
-       }), arr.sort().map(function (val) { return [val, val, set]; }));
-
-       a.deep(toArray(set.entries()).sort(), [['dwa', 'dwa'], ['trzy', 'trzy'],
-               [x, x], ['raz', 'raz']].sort(), "Entries");
-       a.deep(toArray(set.keys()).sort(), ['dwa', 'trzy', x, 'raz'].sort(),
-               "Keys");
-       a.deep(toArray(set.values()).sort(), ['dwa', 'trzy', x, 'raz'].sort(),
-               "Values");
-       a.deep(toArray(getIterator(set)).sort(), ['dwa', 'trzy', x, 'raz'].sort(),
-               "Iterator");
-
-       set.clear();
-       a(set.size, 0, "Clear: size");
-       a(set.has('trzy'), false, "Clear: has");
-       a.deep(toArray(set.values()), [], "Clear: Values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/valid-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/test/valid-set.js
deleted file mode 100644 (file)
index 8c71f5f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SetPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       var set;
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(true); }, TypeError, "Primitive");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t([]); }, TypeError, "Array");
-       if (typeof Set !== 'undefined') {
-               set = new Set();
-               a(t(set), set, "Native");
-       }
-       set = new SetPoly();
-       a(t(set), set, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/valid-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-set/valid-set.js
deleted file mode 100644 (file)
index 9336fd3..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSet = require('./is-set');
-
-module.exports = function (x) {
-       if (!isSet(x)) throw new TypeError(x + " is not a Set");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.lint
deleted file mode 100644 (file)
index 701a50c..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-@root
-
-module
-
-tabs
-indent 2
-maxlen 80
-
-ass
-nomen
-plusplus
-
-newcap
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.npmignore
deleted file mode 100644 (file)
index 155e41f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/npm-debug.log
-/.lintcache
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/.travis.yml
deleted file mode 100644 (file)
index afd3509..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-notifications:
-  email:
-    - medikoo+es6-symbol@medikoo.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/CHANGES
deleted file mode 100644 (file)
index ff5e1b4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-v0.1.1  --  2014.10.07
-* Fix isImplemented, so it returns true in case of polyfill
-* Improve documentations
-
-v0.1.0  --  2014.04.28
-* Assure strictly npm dependencies
-* Update to use latest versions of dependencies
-* Fix implementation detection so it doesn't crash on `String(symbol)`
-* throw on `new Symbol()` (as decided by TC39)
-
-v0.0.0  --  2013.11.15
-* Initial (dev) version
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/LICENCE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/LICENCE
deleted file mode 100644 (file)
index aaf3528..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2013 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/README.md
deleted file mode 100644 (file)
index 978eb59..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-# es6-symbol
-## ECMAScript6 Symbol polyfill
-
-### Limitations
-
-- Underneath it uses real string property names which can easily be retrieved (however accidental collision with other property names is unlikely)
-- As it needs custom `toString` behavior to work properly. Original `Symbol.prototype.toString` couldn't be implemented as specified, still it's accessible as `Symbol.prototoype.properToString`
-
-### Usage
-
-If you want to make sure your environment implements `Symbol`, do:
-
-```javascript
-require('es6-symbol/implement');
-```
-
-If you'd like to use native version when it exists and fallback to polyfill if it doesn't, but without implementing `Symbol` on global scope, do:
-
-```javascript
-var Symbol = require('es6-symbol');
-```
-
-If you strictly want to use polyfill even if native `Symbol` exists (hard to find a good reason for that), do:
-
-```javascript
-var Symbol = require('es6-symbol/polyfill');
-```
-
-#### API
-
-Best is to refer to [specification](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-symbol-objects). Still if you want quick look, follow examples:
-
-```javascript
-var Symbol = require('es6-symbol');
-
-var symbol = Symbol('My custom symbol');
-var x = {};
-
-x[symbol] = 'foo';
-console.log(x[symbol]); 'foo'
-
-// Detect iterable:
-var iterator, result;
-if (possiblyIterable[Symbol.iterator]) {
-  iterator = possiblyIterable[Symbol.iterator]();
-  result = iterator.next();
-  while(!result.done) {
-    console.log(result.value);
-    result = iterator.next();
-  }
-}
-```
-
-### Installation
-#### NPM
-
-In your project path:
-
-       $ npm install es6-symbol
-
-##### Browser
-
-You can easily bundle _es6-symbol_ for browser with [modules-webmake](https://github.com/medikoo/modules-webmake)
-
-## Tests [![Build Status](https://travis-ci.org/medikoo/es6-symbol.png)](https://travis-ci.org/medikoo/es6-symbol)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/implement.js
deleted file mode 100644 (file)
index 153edac..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(require('es5-ext/global'), 'Symbol',
-               { value: require('./polyfill'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/index.js
deleted file mode 100644 (file)
index 609f1fa..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Symbol : require('./polyfill');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-implemented.js
deleted file mode 100644 (file)
index 02a06b5..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var symbol;
-       if (typeof Symbol !== 'function') return false;
-       symbol = Symbol('test symbol');
-       try { String(symbol); } catch (e) { return false; }
-       if (typeof Symbol.iterator === 'symbol') return true;
-
-       // Return 'true' for polyfills
-       if (typeof Symbol.isConcatSpreadable !== 'object') return false;
-       if (typeof Symbol.isRegExp !== 'object') return false;
-       if (typeof Symbol.iterator !== 'object') return false;
-       if (typeof Symbol.toPrimitive !== 'object') return false;
-       if (typeof Symbol.toStringTag !== 'object') return false;
-       if (typeof Symbol.unscopables !== 'object') return false;
-
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-native-implemented.js
deleted file mode 100644 (file)
index a8cb8b8..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// Exports true if environment provides native `Symbol` implementation
-
-'use strict';
-
-module.exports = (function () {
-       if (typeof Symbol !== 'function') return false;
-       return (typeof Symbol.iterator === 'symbol');
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/is-symbol.js
deleted file mode 100644 (file)
index dcf72c9..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var toString    = Object.prototype.toString
-  , toStringTag = require('./').toStringTag
-
-  , id = '[object Symbol]'
-  , Global = (typeof Symbol === 'undefined') ? null : Symbol;
-
-module.exports = function (x) {
-       return (x && ((Global && (x instanceof Global)) ||
-                       (toString.call(x) === id) || (x[toStringTag] === 'Symbol'))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/package.json
deleted file mode 100644 (file)
index c235fba..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-  "_id": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-nPf6su2v8bHaj+jmi/4/Wspsohg=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/es6-symbol",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-    "name": "es6-symbol",
-    "escapedName": "es6-symbol",
-    "rawSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-set"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-symbol/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.4"
-  },
-  "description": "ECMAScript6 Symbol polyfill",
-  "devDependencies": {
-    "tad": "0.2.x"
-  },
-  "homepage": "https://github.com/medikoo/es6-symbol#readme",
-  "keywords": [
-    "symbol",
-    "private",
-    "property",
-    "es6",
-    "ecmascript",
-    "harmony"
-  ],
-  "license": "MIT",
-  "name": "es6-symbol",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-symbol.git"
-  },
-  "scripts": {
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/polyfill.js
deleted file mode 100644 (file)
index f7dfa25..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-'use strict';
-
-var d = require('d')
-
-  , create = Object.create, defineProperties = Object.defineProperties
-  , generateName, Symbol;
-
-generateName = (function () {
-       var created = create(null);
-       return function (desc) {
-               var postfix = 0;
-               while (created[desc + (postfix || '')]) ++postfix;
-               desc += (postfix || '');
-               created[desc] = true;
-               return '@@' + desc;
-       };
-}());
-
-module.exports = Symbol = function (description) {
-       var symbol;
-       if (this instanceof Symbol) {
-               throw new TypeError('TypeError: Symbol is not a constructor');
-       }
-       symbol = create(Symbol.prototype);
-       description = (description === undefined ? '' : String(description));
-       return defineProperties(symbol, {
-               __description__: d('', description),
-               __name__: d('', generateName(description))
-       });
-};
-
-Object.defineProperties(Symbol, {
-       create: d('', Symbol('create')),
-       hasInstance: d('', Symbol('hasInstance')),
-       isConcatSpreadable: d('', Symbol('isConcatSpreadable')),
-       isRegExp: d('', Symbol('isRegExp')),
-       iterator: d('', Symbol('iterator')),
-       toPrimitive: d('', Symbol('toPrimitive')),
-       toStringTag: d('', Symbol('toStringTag')),
-       unscopables: d('', Symbol('unscopables'))
-});
-
-defineProperties(Symbol.prototype, {
-       properToString: d(function () {
-               return 'Symbol (' + this.__description__ + ')';
-       }),
-       toString: d('', function () { return this.__name__; })
-});
-Object.defineProperty(Symbol.prototype, Symbol.toPrimitive, d('',
-       function (hint) {
-               throw new TypeError("Conversion of symbol objects is not allowed");
-       }));
-Object.defineProperty(Symbol.prototype, Symbol.toStringTag, d('c', 'Symbol'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/implement.js
deleted file mode 100644 (file)
index eb35c30..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof Symbol, 'function'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/index.js
deleted file mode 100644 (file)
index 62b3296..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var d = require('d')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-implemented.js
deleted file mode 100644 (file)
index bb0d645..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var global   = require('es5-ext/global')
-  , polyfill = require('../polyfill');
-
-module.exports = function (t, a) {
-       var cache;
-       a(typeof t(), 'boolean');
-       cache = global.Symbol;
-       global.Symbol = polyfill;
-       a(t(), true);
-       if (cache === undefined) delete global.Symbol;
-       else global.Symbol = cache;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-native-implemented.js
deleted file mode 100644 (file)
index df8ba03..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t, 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/is-symbol.js
deleted file mode 100644 (file)
index ac24b9a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       a(t(undefined), false, "Undefined");
-       a(t(null), false, "Null");
-       a(t(true), false, "Primitive");
-       a(t('raz'), false, "String");
-       a(t({}), false, "Object");
-       a(t([]), false, "Array");
-       if (typeof Symbol !== 'undefined') {
-               a(t(Symbol()), true, "Native");
-       }
-       a(t(SymbolPoly()), true, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/polyfill.js
deleted file mode 100644 (file)
index cac9cd5..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var d        = require('d')
-  , isSymbol = require('../is-symbol')
-
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (T, a) {
-       var symbol = T('test'), x = {};
-       defineProperty(x, symbol, d('foo'));
-       a(x.test, undefined, "Name");
-       a(x[symbol], 'foo', "Get");
-
-       a(isSymbol(symbol), true, "Symbol");
-       a(isSymbol(T.iterator), true, "iterator");
-       a(isSymbol(T.toStringTag), true, "toStringTag");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-iterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-iterable.js
deleted file mode 100644 (file)
index d277bc9..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var Iterator = require('../');
-
-module.exports = function (t, a) {
-       var obj;
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t({}); }, TypeError, "Plain object");
-       a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
-       obj = { '@@iterator': function () { return new Iterator([]); } };
-       a(t(obj), obj, "Iterator");
-       obj = [];
-       a(t(obj), obj, 'Array');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/test/valid-symbol.js
deleted file mode 100644 (file)
index 2c8f84c..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SymbolPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       var symbol;
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(true); }, TypeError, "Primitive");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t([]); }, TypeError, "Array");
-       if (typeof Symbol !== 'undefined') {
-               symbol = Symbol();
-               a(t(symbol), symbol, "Native");
-       }
-       symbol = SymbolPoly();
-       a(t(symbol), symbol, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/valid-symbol.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/es6-symbol/valid-symbol.js
deleted file mode 100644 (file)
index 4275004..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSymbol = require('./is-symbol');
-
-module.exports = function (value) {
-       if (!isSymbol(value)) throw new TypeError(value + " is not a symbol");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.lint
deleted file mode 100644 (file)
index f76e528..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-@root
-
-module
-es5
-
-indent 2
-maxlen 80
-tabs
-
-ass
-plusplus
-nomen
-
-./benchmark
-predef+ console
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.npmignore
deleted file mode 100644 (file)
index 68ebfdd..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-.DS_Store
-/.lintcache
-/node_modules
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.testignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.testignore
deleted file mode 100644 (file)
index f9c8c38..0000000
+++ /dev/null
@@ -1 +0,0 @@
-/benchmark
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/.travis.yml
deleted file mode 100644 (file)
index a6ec240..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-before_install:
-  - mkdir node_modules; ln -s ../ node_modules/event-emitter
-
-notifications:
-  email:
-    - medikoo+event-emitter@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/CHANGES
deleted file mode 100644 (file)
index dbc1b17..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-v0.3.3  --  2015.01.30
-* Fix reference to module in benchmarks
-
-v0.3.2  --  2015.01.20
-* Improve documentation
-* Configure lint scripts
-* Fix spelling of LICENSE
-
-v0.3.1  --  2014.04.25
-* Fix redefinition of emit method in `pipe`
-* Allow custom emit method name in `pipe`
-
-v0.3.0  --  2014.04.24
-* Move out from lib folder
-* Do not expose all utilities on main module
-* Support objects which do not inherit from Object.prototype
-* Improve arguments validation
-* Improve internals
-* Remove Makefile
-* Improve documentation
-
-v0.2.2  --  2013.06.05
-* `unify` functionality
-
-v0.2.1  --  2012.09.21
-* hasListeners module
-* Simplified internal id (improves performance a little), now it starts with
-  underscore (hint it's private). Abstracted it to external module to have it
-  one place
-* Documentation cleanup
-
-v0.2.0  --  2012.09.19
-* Trashed poor implementation of v0.1 and came up with something solid
-
-Changes:
-* Improved performance
-* Fixed bugs event-emitter is now cross-prototype safe and not affected by
-  unexpected methods attached to Object.prototype
-* Removed support for optional "emitter" argument in `emit` method, it was
-  cumbersome to use, and should be solved just with event objects
-
-v0.1.5  --  2012.08.06
-* (maintanance) Do not use descriptors for internal objects, it exposes V8 bugs
-  (only Node v0.6 branch)
-
-v0.1.4  --  2012.06.13
-* Fix detachment of listeners added with 'once'
-
-v0.1.3  --  2012.05.28
-* Updated es5-ext to latest version (v0.8)
-* Cleared package.json so it's in npm friendly format
-
-v0.1.2  --  2012.01.22
-* Support for emitter argument in emit function, this allows some listeners not
-  to be notified about event
-* allOff - removes all listeners from object
-* All methods returns self object
-* Internal fixes
-* Travis CI integration
-
-v0.1.1  --  2011.08.08
-* Added TAD test suite to devDependencies, configured test commands.
-  Tests can be run with 'make test' or 'npm test'
-
-v0.1.0  --  2011.08.08
-Initial version
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/LICENSE
deleted file mode 100644 (file)
index ccb76f6..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2012-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/README.md
deleted file mode 100644 (file)
index 17f4524..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-# event-emitter
-## Environment agnostic event emitter
-
-### Installation
-
-       $ npm install event-emitter
-       
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-### Usage
-
-```javascript
-var ee = require('event-emitter');
-
-var emitter = ee({}), listener;
-
-emitter.on('test', listener = function (args) {
-  // …emitter logic
-});
-
-emitter.once('test', function (args) {
-  // …invoked only once(!)
-});
-
-emitter.emit('test', arg1, arg2/*…args*/); // Two above listeners invoked
-emitter.emit('test', arg1, arg2/*…args*/); // Only first listener invoked
-
-emitter.off('test', listener);              // Removed first listener
-emitter.emit('test', arg1, arg2/*…args*/); // No listeners invoked
-```
-### Additional utilities
-
-#### allOff(obj) _(event-emitter/all-off)_
-
-Removes all listeners from given event emitter object
-
-#### hasListeners(obj[, name]) _(event-emitter/has-listeners)_
-
-Whether object has some listeners attached to the object.
-When `name` is provided, it checks listeners for specific event name
-
-```javascript
-var emitter = ee();
-var hasListeners = require('event-emitter/has-listeners');
-var listener = function () {};
-
-hasListeners(emitter); // false
-
-emitter.on('foo', listener);
-hasListeners(emitter); // true
-hasListeners(emitter, 'foo'); // true
-hasListeners(emitter, 'bar'); // false
-
-emitter.off('foo', listener);
-hasListeners(emitter, 'foo'); // false
-```
-
-#### pipe(source, target[, emitMethodName]) _(event-emitter/pipe)_
-
-Pipes all events from _source_ emitter onto _target_ emitter (all events from _source_ emitter will be emitted also on _target_ emitter, but not other way).  
-Returns _pipe_ object which exposes `pipe.close` function. Invoke it to close configured _pipe_.  
-It works internally by redefinition of `emit` method, if in your interface this method is referenced differently, provide its name (or symbol) with third argument.
-
-#### unify(emitter1, emitter2) _(event-emitter/unify)_
-
-Unifies event handling for two objects. Events emitted on _emitter1_ would be also emitter on _emitter2_, and other way back.  
-Non reversible.
-
-```javascript
-var eeUnify = require('event-emitter/unify');
-
-var emitter1 = ee(), listener1, listener3;
-var emitter2 = ee(), listener2, listener4;
-
-emitter1.on('test', listener1 = function () { });
-emitter2.on('test', listener2 = function () { });
-
-emitter1.emit('test'); // Invoked listener1
-emitter2.emit('test'); // Invoked listener2
-
-var unify = eeUnify(emitter1, emitter2);
-
-emitter1.emit('test'); // Invoked listener1 and listener2
-emitter2.emit('test'); // Invoked listener1 and listener2
-
-emitter1.on('test', listener3 = function () { });
-emitter2.on('test', listener4 = function () { });
-
-emitter1.emit('test'); // Invoked listener1, listener2, listener3 and listener4
-emitter2.emit('test'); // Invoked listener1, listener2, listener3 and listener4
-```
-
-### Tests [![Build Status](https://travis-ci.org/medikoo/event-emitter.png)](https://travis-ci.org/medikoo/event-emitter)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/all-off.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/all-off.js
deleted file mode 100644 (file)
index 829be65..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var value = require('es5-ext/object/valid-object')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (emitter/*, type*/) {
-       var type = arguments[1], data;
-
-       value(emitter);
-
-       if (type !== undefined) {
-               data = hasOwnProperty.call(emitter, '__ee__') && emitter.__ee__;
-               if (!data) return;
-               if (data[type]) delete data[type];
-               return;
-       }
-       if (hasOwnProperty.call(emitter, '__ee__')) delete emitter.__ee__;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/many-on.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/many-on.js
deleted file mode 100644 (file)
index e09bfde..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-'use strict';
-
-// Benchmark comparing performance of event emit for many listeners
-// To run it, do following in memoizee package path:
-//
-// $ npm install eventemitter2 signals
-// $ node benchmark/many-on.js
-
-var forEach    = require('es5-ext/object/for-each')
-  , pad        = require('es5-ext/string/#/pad')
-
-  , now = Date.now
-
-  , time, count = 1000000, i, data = {}
-  , ee, native, ee2, signals, a = {}, b = {};
-
-ee = (function () {
-       var ee = require('../')();
-       ee.on('test', function () { return arguments; });
-       ee.on('test', function () { return arguments; });
-       return ee.on('test', function () { return arguments; });
-}());
-
-native = (function () {
-       var ee = require('events');
-       ee = new ee.EventEmitter();
-       ee.on('test', function () { return arguments; });
-       ee.on('test', function () { return arguments; });
-       return ee.on('test', function () { return arguments; });
-}());
-
-ee2 = (function () {
-       var ee = require('eventemitter2');
-       ee = new ee.EventEmitter2();
-       ee.on('test', function () { return arguments; });
-       ee.on('test', function () { return arguments; });
-       return ee.on('test', function () { return arguments; });
-}());
-
-signals = (function () {
-       var Signal = require('signals')
-         , ee = { test: new Signal() };
-       ee.test.add(function () { return arguments; });
-       ee.test.add(function () { return arguments; });
-       ee.test.add(function () { return arguments; });
-       return ee;
-}());
-
-console.log("Emit for 3 listeners", "x" + count + ":\n");
-
-i = count;
-time = now();
-while (i--) {
-       ee.emit('test', a, b);
-}
-data["event-emitter (this implementation)"] = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       native.emit('test', a, b);
-}
-data["EventEmitter (Node.js native)"] = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       ee2.emit('test', a, b);
-}
-data.EventEmitter2 = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       signals.test.dispatch(a, b);
-}
-data.Signals = now() - time;
-
-forEach(data, function (value, name, obj, index) {
-       console.log(index + 1 + ":",  pad.call(value, " ", 5), name);
-}, null, function (a, b) {
-       return this[a] - this[b];
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/single-on.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/benchmark/single-on.js
deleted file mode 100644 (file)
index 99decbd..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-'use strict';
-
-// Benchmark comparing performance of event emit for single listener
-// To run it, do following in memoizee package path:
-//
-// $ npm install eventemitter2 signals
-// $ node benchmark/single-on.js
-
-var forEach    = require('es5-ext/object/for-each')
-  , pad        = require('es5-ext/string/#/pad')
-
-  , now = Date.now
-
-  , time, count = 1000000, i, data = {}
-  , ee, native, ee2, signals, a = {}, b = {};
-
-ee = (function () {
-       var ee = require('../');
-       return ee().on('test', function () { return arguments; });
-}());
-
-native = (function () {
-       var ee = require('events');
-       return (new ee.EventEmitter()).on('test', function () { return arguments; });
-}());
-
-ee2 = (function () {
-       var ee = require('eventemitter2');
-       return (new ee.EventEmitter2()).on('test', function () { return arguments; });
-}());
-
-signals = (function () {
-       var Signal = require('signals')
-         , ee = { test: new Signal() };
-       ee.test.add(function () { return arguments; });
-       return ee;
-}());
-
-console.log("Emit for single listener", "x" + count + ":\n");
-
-i = count;
-time = now();
-while (i--) {
-       ee.emit('test', a, b);
-}
-data["event-emitter (this implementation)"] = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       native.emit('test', a, b);
-}
-data["EventEmitter (Node.js native)"] = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       ee2.emit('test', a, b);
-}
-data.EventEmitter2 = now() - time;
-
-i = count;
-time = now();
-while (i--) {
-       signals.test.dispatch(a, b);
-}
-data.Signals = now() - time;
-
-forEach(data, function (value, name, obj, index) {
-       console.log(index + 1 + ":",  pad.call(value, " ", 5), name);
-}, null, function (a, b) {
-       return this[a] - this[b];
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/has-listeners.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/has-listeners.js
deleted file mode 100644 (file)
index 8744522..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var isEmpty = require('es5-ext/object/is-empty')
-  , value   = require('es5-ext/object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (obj/*, type*/) {
-       var type;
-       value(obj);
-       type = arguments[1];
-       if (arguments.length > 1) {
-               return hasOwnProperty.call(obj, '__ee__') && Boolean(obj.__ee__[type]);
-       }
-       return obj.hasOwnProperty('__ee__') && !isEmpty(obj.__ee__);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/index.js
deleted file mode 100644 (file)
index c36d3e4..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-'use strict';
-
-var d        = require('d')
-  , callable = require('es5-ext/object/valid-callable')
-
-  , apply = Function.prototype.apply, call = Function.prototype.call
-  , create = Object.create, defineProperty = Object.defineProperty
-  , defineProperties = Object.defineProperties
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , descriptor = { configurable: true, enumerable: false, writable: true }
-
-  , on, once, off, emit, methods, descriptors, base;
-
-on = function (type, listener) {
-       var data;
-
-       callable(listener);
-
-       if (!hasOwnProperty.call(this, '__ee__')) {
-               data = descriptor.value = create(null);
-               defineProperty(this, '__ee__', descriptor);
-               descriptor.value = null;
-       } else {
-               data = this.__ee__;
-       }
-       if (!data[type]) data[type] = listener;
-       else if (typeof data[type] === 'object') data[type].push(listener);
-       else data[type] = [data[type], listener];
-
-       return this;
-};
-
-once = function (type, listener) {
-       var once, self;
-
-       callable(listener);
-       self = this;
-       on.call(this, type, once = function () {
-               off.call(self, type, once);
-               apply.call(listener, this, arguments);
-       });
-
-       once.__eeOnceListener__ = listener;
-       return this;
-};
-
-off = function (type, listener) {
-       var data, listeners, candidate, i;
-
-       callable(listener);
-
-       if (!hasOwnProperty.call(this, '__ee__')) return this;
-       data = this.__ee__;
-       if (!data[type]) return this;
-       listeners = data[type];
-
-       if (typeof listeners === 'object') {
-               for (i = 0; (candidate = listeners[i]); ++i) {
-                       if ((candidate === listener) ||
-                                       (candidate.__eeOnceListener__ === listener)) {
-                               if (listeners.length === 2) data[type] = listeners[i ? 0 : 1];
-                               else listeners.splice(i, 1);
-                       }
-               }
-       } else {
-               if ((listeners === listener) ||
-                               (listeners.__eeOnceListener__ === listener)) {
-                       delete data[type];
-               }
-       }
-
-       return this;
-};
-
-emit = function (type) {
-       var i, l, listener, listeners, args;
-
-       if (!hasOwnProperty.call(this, '__ee__')) return;
-       listeners = this.__ee__[type];
-       if (!listeners) return;
-
-       if (typeof listeners === 'object') {
-               l = arguments.length;
-               args = new Array(l - 1);
-               for (i = 1; i < l; ++i) args[i - 1] = arguments[i];
-
-               listeners = listeners.slice();
-               for (i = 0; (listener = listeners[i]); ++i) {
-                       apply.call(listener, this, args);
-               }
-       } else {
-               switch (arguments.length) {
-               case 1:
-                       call.call(listeners, this);
-                       break;
-               case 2:
-                       call.call(listeners, this, arguments[1]);
-                       break;
-               case 3:
-                       call.call(listeners, this, arguments[1], arguments[2]);
-                       break;
-               default:
-                       l = arguments.length;
-                       args = new Array(l - 1);
-                       for (i = 1; i < l; ++i) {
-                               args[i - 1] = arguments[i];
-                       }
-                       apply.call(listeners, this, args);
-               }
-       }
-};
-
-methods = {
-       on: on,
-       once: once,
-       off: off,
-       emit: emit
-};
-
-descriptors = {
-       on: d(on),
-       once: d(once),
-       off: d(off),
-       emit: d(emit)
-};
-
-base = defineProperties({}, descriptors);
-
-module.exports = exports = function (o) {
-       return (o == null) ? create(base) : defineProperties(Object(o), descriptors);
-};
-exports.methods = methods;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/package.json
deleted file mode 100644 (file)
index 014c8ae..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-{
-  "_args": [
-    [
-      "event-emitter@https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "event-emitter@https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-  "_id": "event-emitter@https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-346AZUHGirj/IKeaGEG5GrqhvuQ=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map/event-emitter",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "event-emitter@https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-    "name": "event-emitter",
-    "escapedName": "event-emitter",
-    "rawSpec": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-map",
-    "/grunt-standard/standard/eslint/escope/es6-map/es6-set"
-  ],
-  "_spec": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/event-emitter/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5"
-  },
-  "description": "Environment agnostic event emitter",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/event-emitter#readme",
-  "keywords": [
-    "event",
-    "events",
-    "trigger",
-    "observer",
-    "listener",
-    "emitter",
-    "pubsub"
-  ],
-  "license": "MIT",
-  "name": "event-emitter",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/event-emitter.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/pipe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/pipe.js
deleted file mode 100644 (file)
index 0088efe..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-var aFrom          = require('es5-ext/array/from')
-  , remove         = require('es5-ext/array/#/remove')
-  , value          = require('es5-ext/object/valid-object')
-  , d              = require('d')
-  , emit           = require('./').methods.emit
-
-  , defineProperty = Object.defineProperty
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
-
-module.exports = function (e1, e2/*, name*/) {
-       var pipes, pipe, desc, name;
-
-       (value(e1) && value(e2));
-       name = arguments[2];
-       if (name === undefined) name = 'emit';
-
-       pipe = {
-               close: function () { remove.call(pipes, e2); }
-       };
-       if (hasOwnProperty.call(e1, '__eePipes__')) {
-               (pipes = e1.__eePipes__).push(e2);
-               return pipe;
-       }
-       defineProperty(e1, '__eePipes__', d('c', pipes = [e2]));
-       desc = getOwnPropertyDescriptor(e1, name);
-       if (!desc) {
-               desc = d('c', undefined);
-       } else {
-               delete desc.get;
-               delete desc.set;
-       }
-       desc.value = function () {
-               var i, emitter, data = aFrom(pipes);
-               emit.apply(this, arguments);
-               for (i = 0; (emitter = data[i]); ++i) emit.apply(emitter, arguments);
-       };
-       defineProperty(e1, name, desc);
-       return pipe;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/all-off.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/all-off.js
deleted file mode 100644 (file)
index 8aa872e..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-'use strict';
-
-var ee = require('../');
-
-module.exports = function (t, a) {
-       var x, count, count2;
-
-       x = ee();
-       count = 0;
-       count2 = 0;
-       x.on('foo', function () {
-               ++count;
-       });
-       x.on('foo', function () {
-               ++count;
-       });
-       x.on('bar', function () {
-               ++count2;
-       });
-       x.on('bar', function () {
-               ++count2;
-       });
-       t(x, 'foo');
-       x.emit('foo');
-       x.emit('bar');
-       a(count, 0, "All off: type");
-       a(count2, 2, "All off: ohter type");
-
-       count = 0;
-       count2 = 0;
-       x.on('foo', function () {
-               ++count;
-       });
-       x.on('foo', function () {
-               ++count;
-       });
-       x.on('bar', function () {
-               ++count2;
-       });
-       x.on('bar', function () {
-               ++count2;
-       });
-       t(x);
-       x.emit('foo');
-       x.emit('bar');
-       a(count, 0, "All off: type");
-       a(count2, 0, "All off: other type");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/has-listeners.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/has-listeners.js
deleted file mode 100644 (file)
index 875b048..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-var ee = require('../');
-
-module.exports = function (t) {
-       var x, y;
-       return {
-               Any: function (a) {
-                       a(t(true), false, "Primitive");
-                       a(t({ events: [] }), false, "Other object");
-                       a(t(x = ee()), false, "Emitter: empty");
-
-                       x.on('test', y = function () {});
-                       a(t(x), true, "Emitter: full");
-                       x.off('test', y);
-                       a(t(x), false, "Emitter: empty but touched");
-                       x.once('test', y = function () {});
-                       a(t(x), true, "Emitter: full: Once");
-                       x.off('test', y);
-                       a(t(x), false, "Emitter: empty but touched by once");
-               },
-               Specific: function (a) {
-                       a(t(true, 'test'), false, "Primitive");
-                       a(t({ events: [] }, 'test'), false, "Other object");
-                       a(t(x = ee(), 'test'), false, "Emitter: empty");
-
-                       x.on('test', y = function () {});
-                       a(t(x, 'test'), true, "Emitter: full");
-                       a(t(x, 'foo'), false, "Emitter: full, other event");
-                       x.off('test', y);
-                       a(t(x, 'test'), false, "Emitter: empty but touched");
-                       a(t(x, 'foo'), false, "Emitter: empty but touched, other event");
-
-                       x.once('test', y = function () {});
-                       a(t(x, 'test'), true, "Emitter: full: Once");
-                       a(t(x, 'foo'), false, "Emitter: full: Once,  other event");
-                       x.off('test', y);
-                       a(t(x, 'test'), false, "Emitter: empty but touched by once");
-                       a(t(x, 'foo'), false, "Emitter: empty but touched by once, other event");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/index.js
deleted file mode 100644 (file)
index c7c3f24..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = t(), y, count, count2, count3, count4, test, listener1, listener2;
-
-       x.emit('none');
-
-       test = "Once: ";
-       count = 0;
-       x.once('foo', function (a1, a2, a3) {
-               a(this, x, test + "Context");
-               a.deep([a1, a2, a3], ['foo', x, 15], test + "Arguments");
-               ++count;
-       });
-
-       x.emit('foobar');
-       a(count, 0, test + "Not invoked on other event");
-       x.emit('foo', 'foo', x, 15);
-       a(count, 1, test + "Emitted");
-       x.emit('foo');
-       a(count, 1, test + "Emitted once");
-
-       test = "On & Once: ";
-       count = 0;
-       x.on('foo', listener1 = function (a1, a2, a3) {
-               a(this, x, test + "Context");
-               a.deep([a1, a2, a3], ['foo', x, 15], test + "Arguments");
-               ++count;
-       });
-       count2 = 0;
-       x.once('foo', listener2 = function (a1, a2, a3) {
-               a(this, x, test + "Context");
-               a.deep([a1, a2, a3], ['foo', x, 15], test + "Arguments");
-               ++count2;
-       });
-
-       x.emit('foobar');
-       a(count, 0, test + "Not invoked on other event");
-       x.emit('foo', 'foo', x, 15);
-       a(count, 1, test + "Emitted");
-       x.emit('foo', 'foo', x, 15);
-       a(count, 2, test + "Emitted twice");
-       a(count2, 1, test + "Emitted once");
-       x.off('foo', listener1);
-       x.emit('foo');
-       a(count, 2, test + "Not emitter after off");
-
-       count = 0;
-       x.once('foo', listener1 = function () { ++count; });
-
-       x.off('foo', listener1);
-       x.emit('foo');
-       a(count, 0, "Once Off: Not emitted");
-
-       count = 0;
-       x.on('foo', listener2 = function () {});
-       x.once('foo', listener1 = function () { ++count; });
-
-       x.off('foo', listener1);
-       x.emit('foo');
-       a(count, 0, "Once Off (multi): Not emitted");
-       x.off('foo', listener2);
-
-       test = "Prototype Share: ";
-
-       y = Object.create(x);
-
-       count = 0;
-       count2 = 0;
-       count3 = 0;
-       count4 = 0;
-       x.on('foo', function () {
-               ++count;
-       });
-       y.on('foo', function () {
-               ++count2;
-       });
-       x.once('foo', function () {
-               ++count3;
-       });
-       y.once('foo', function () {
-               ++count4;
-       });
-       x.emit('foo');
-       a(count, 1, test + "x on count");
-       a(count2, 0, test + "y on count");
-       a(count3, 1, test + "x once count");
-       a(count4, 0, test + "y once count");
-
-       y.emit('foo');
-       a(count, 1, test + "x on count");
-       a(count2, 1, test + "y on count");
-       a(count3, 1, test + "x once count");
-       a(count4, 1, test + "y once count");
-
-       x.emit('foo');
-       a(count, 2, test + "x on count");
-       a(count2, 1, test + "y on count");
-       a(count3, 1, test + "x once count");
-       a(count4, 1, test + "y once count");
-
-       y.emit('foo');
-       a(count, 2, test + "x on count");
-       a(count2, 2, test + "y on count");
-       a(count3, 1, test + "x once count");
-       a(count4, 1, test + "y once count");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/pipe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/pipe.js
deleted file mode 100644 (file)
index 9d15d6d..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-'use strict';
-
-var ee = require('../');
-
-module.exports = function (t, a) {
-       var x = {}, y = {}, z = {}, count, count2, count3, pipe;
-
-       ee(x);
-       x = Object.create(x);
-       ee(y);
-       ee(z);
-
-       count = 0;
-       count2 = 0;
-       count3 = 0;
-       x.on('foo', function () {
-               ++count;
-       });
-       y.on('foo', function () {
-               ++count2;
-       });
-       z.on('foo', function () {
-               ++count3;
-       });
-
-       x.emit('foo');
-       a(count, 1, "Pre pipe, x");
-       a(count2, 0, "Pre pipe, y");
-       a(count3, 0, "Pre pipe, z");
-
-       pipe = t(x, y);
-       x.emit('foo');
-       a(count, 2, "Post pipe, x");
-       a(count2, 1, "Post pipe, y");
-       a(count3, 0, "Post pipe, z");
-
-       y.emit('foo');
-       a(count, 2, "Post pipe, on y, x");
-       a(count2, 2, "Post pipe, on y, y");
-       a(count3, 0, "Post pipe, on y, z");
-
-       t(x, z);
-       x.emit('foo');
-       a(count, 3, "Post pipe z, x");
-       a(count2, 3, "Post pipe z, y");
-       a(count3, 1, "Post pipe z, z");
-
-       pipe.close();
-       x.emit('foo');
-       a(count, 4, "Close pipe y, x");
-       a(count2, 3, "Close pipe y, y");
-       a(count3, 2, "Close pipe y, z");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/unify.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/test/unify.js
deleted file mode 100644 (file)
index 69295e0..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-'use strict';
-
-var ee = require('../');
-
-module.exports = function (t) {
-
-       return {
-               "": function (a) {
-                       var x = {}, y = {}, z = {}, count, count2, count3;
-
-                       ee(x);
-                       ee(y);
-                       ee(z);
-
-                       count = 0;
-                       count2 = 0;
-                       count3 = 0;
-                       x.on('foo', function () { ++count; });
-                       y.on('foo', function () { ++count2; });
-                       z.on('foo', function () { ++count3; });
-
-                       x.emit('foo');
-                       a(count, 1, "Pre unify, x");
-                       a(count2, 0, "Pre unify, y");
-                       a(count3, 0, "Pre unify, z");
-
-                       t(x, y);
-                       a(x.__ee__, y.__ee__, "Post unify y");
-                       x.emit('foo');
-                       a(count, 2, "Post unify, x");
-                       a(count2, 1, "Post unify, y");
-                       a(count3, 0, "Post unify, z");
-
-                       y.emit('foo');
-                       a(count, 3, "Post unify, on y, x");
-                       a(count2, 2, "Post unify, on y, y");
-                       a(count3, 0, "Post unify, on y, z");
-
-                       t(x, z);
-                       a(x.__ee__, x.__ee__, "Post unify z");
-                       x.emit('foo');
-                       a(count, 4, "Post unify z, x");
-                       a(count2, 3, "Post unify z, y");
-                       a(count3, 1, "Post unify z, z");
-               },
-               "On empty": function (a) {
-                       var x = {}, y = {}, z = {}, count, count2, count3;
-
-                       ee(x);
-                       ee(y);
-                       ee(z);
-
-                       count = 0;
-                       count2 = 0;
-                       count3 = 0;
-                       y.on('foo', function () { ++count2; });
-                       x.emit('foo');
-                       a(count, 0, "Pre unify, x");
-                       a(count2, 0, "Pre unify, y");
-                       a(count3, 0, "Pre unify, z");
-
-                       t(x, y);
-                       a(x.__ee__, y.__ee__, "Post unify y");
-                       x.on('foo', function () { ++count; });
-                       x.emit('foo');
-                       a(count, 1, "Post unify, x");
-                       a(count2, 1, "Post unify, y");
-                       a(count3, 0, "Post unify, z");
-
-                       y.emit('foo');
-                       a(count, 2, "Post unify, on y, x");
-                       a(count2, 2, "Post unify, on y, y");
-                       a(count3, 0, "Post unify, on y, z");
-
-                       t(x, z);
-                       a(x.__ee__, z.__ee__, "Post unify z");
-                       z.on('foo', function () { ++count3; });
-                       x.emit('foo');
-                       a(count, 3, "Post unify z, x");
-                       a(count2, 3, "Post unify z, y");
-                       a(count3, 1, "Post unify z, z");
-               },
-               Many: function (a) {
-                       var x = {}, y = {}, z = {}, count, count2, count3;
-
-                       ee(x);
-                       ee(y);
-                       ee(z);
-
-                       count = 0;
-                       count2 = 0;
-                       count3 = 0;
-                       x.on('foo', function () { ++count; });
-                       y.on('foo', function () { ++count2; });
-                       y.on('foo', function () { ++count2; });
-                       z.on('foo', function () { ++count3; });
-
-                       x.emit('foo');
-                       a(count, 1, "Pre unify, x");
-                       a(count2, 0, "Pre unify, y");
-                       a(count3, 0, "Pre unify, z");
-
-                       t(x, y);
-                       a(x.__ee__, y.__ee__, "Post unify y");
-                       x.emit('foo');
-                       a(count, 2, "Post unify, x");
-                       a(count2, 2, "Post unify, y");
-                       a(count3, 0, "Post unify, z");
-
-                       y.emit('foo');
-                       a(count, 3, "Post unify, on y, x");
-                       a(count2, 4, "Post unify, on y, y");
-                       a(count3, 0, "Post unify, on y, z");
-
-                       t(x, z);
-                       a(x.__ee__, x.__ee__, "Post unify z");
-                       x.emit('foo');
-                       a(count, 4, "Post unify z, x");
-                       a(count2, 6, "Post unify z, y");
-                       a(count3, 1, "Post unify z, z");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/unify.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/node_modules/event-emitter/unify.js
deleted file mode 100644 (file)
index c6a858a..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-'use strict';
-
-var forEach    = require('es5-ext/object/for-each')
-  , validValue = require('es5-ext/object/valid-object')
-
-  , push = Array.prototype.apply, defineProperty = Object.defineProperty
-  , create = Object.create, hasOwnProperty = Object.prototype.hasOwnProperty
-  , d = { configurable: true, enumerable: false, writable: true };
-
-module.exports = function (e1, e2) {
-       var data;
-       (validValue(e1) && validValue(e2));
-       if (!hasOwnProperty.call(e1, '__ee__')) {
-               if (!hasOwnProperty.call(e2, '__ee__')) {
-                       d.value = create(null);
-                       defineProperty(e1, '__ee__', d);
-                       defineProperty(e2, '__ee__', d);
-                       d.value = null;
-                       return;
-               }
-               d.value = e2.__ee__;
-               defineProperty(e1, '__ee__', d);
-               d.value = null;
-               return;
-       }
-       data = d.value = e1.__ee__;
-       if (!hasOwnProperty.call(e2, '__ee__')) {
-               defineProperty(e2, '__ee__', d);
-               d.value = null;
-               return;
-       }
-       if (data === e2.__ee__) return;
-       forEach(e2.__ee__, function (listener, name) {
-               if (!data[name]) {
-                       data[name] = listener;
-                       return;
-               }
-               if (typeof data[name] === 'object') {
-                       if (typeof listener === 'object') push.apply(data[name], listener);
-                       else data[name].push(listener);
-               } else if (typeof listener === 'object') {
-                       listener.unshift(data[name]);
-                       data[name] = listener;
-               } else {
-                       data[name] = [data[name], listener];
-               }
-       });
-       defineProperty(e2, '__ee__', d);
-       d.value = null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/package.json
deleted file mode 100644 (file)
index e12c975..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-map@https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-map@https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-  "_id": "es6-map@https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-uHkjnteBngsIxAum4Z+gR8p8jR0=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-map",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-map@https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-    "name": "es6-map",
-    "escapedName": "es6-map",
-    "rawSpec": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-map/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.4",
-    "es6-iterator": "~0.1.1",
-    "es6-set": "~0.1.1",
-    "es6-symbol": "~0.1.1",
-    "event-emitter": "~0.3.1"
-  },
-  "description": "ECMAScript6 Map polyfill",
-  "devDependencies": {
-    "tad": "0.2.x",
-    "xlint": "~0.2.1",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-map#readme",
-  "keywords": [
-    "collection",
-    "es6",
-    "shim",
-    "harmony",
-    "list",
-    "hash",
-    "map",
-    "polyfill",
-    "ecmascript"
-  ],
-  "license": "MIT",
-  "name": "es6-map",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-map.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/polyfill.js
deleted file mode 100644 (file)
index fc44527..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-'use strict';
-
-var clear          = require('es5-ext/array/#/clear')
-  , eIndexOf       = require('es5-ext/array/#/e-index-of')
-  , setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , callable       = require('es5-ext/object/valid-callable')
-  , validValue     = require('es5-ext/object/valid-value')
-  , d              = require('d')
-  , ee             = require('event-emitter')
-  , Symbol         = require('es6-symbol')
-  , iterator       = require('es6-iterator/valid-iterable')
-  , forOf          = require('es6-iterator/for-of')
-  , Iterator       = require('./lib/iterator')
-  , isNative       = require('./is-native-implemented')
-
-  , call = Function.prototype.call, defineProperties = Object.defineProperties
-  , MapPoly;
-
-module.exports = MapPoly = function (/*iterable*/) {
-       var iterable = arguments[0], keys, values;
-       if (!(this instanceof MapPoly)) return new MapPoly(iterable);
-       if (this.__mapKeysData__ !== undefined) {
-               throw new TypeError(this + " cannot be reinitialized");
-       }
-       if (iterable != null) iterator(iterable);
-       defineProperties(this, {
-               __mapKeysData__: d('c', keys = []),
-               __mapValuesData__: d('c', values = [])
-       });
-       if (!iterable) return;
-       forOf(iterable, function (value) {
-               var key = validValue(value)[0];
-               value = value[1];
-               if (eIndexOf.call(keys, key) !== -1) return;
-               keys.push(key);
-               values.push(value);
-       }, this);
-};
-
-if (isNative) {
-       if (setPrototypeOf) setPrototypeOf(MapPoly, Map);
-       MapPoly.prototype = Object.create(Map.prototype, {
-               constructor: d(MapPoly)
-       });
-}
-
-ee(defineProperties(MapPoly.prototype, {
-       clear: d(function () {
-               if (!this.__mapKeysData__.length) return;
-               clear.call(this.__mapKeysData__);
-               clear.call(this.__mapValuesData__);
-               this.emit('_clear');
-       }),
-       delete: d(function (key) {
-               var index = eIndexOf.call(this.__mapKeysData__, key);
-               if (index === -1) return false;
-               this.__mapKeysData__.splice(index, 1);
-               this.__mapValuesData__.splice(index, 1);
-               this.emit('_delete', index, key);
-               return true;
-       }),
-       entries: d(function () { return new Iterator(this, 'key+value'); }),
-       forEach: d(function (cb/*, thisArg*/) {
-               var thisArg = arguments[1], iterator, result;
-               callable(cb);
-               iterator = this.entries();
-               result = iterator._next();
-               while (result !== undefined) {
-                       call.call(cb, thisArg, this.__mapValuesData__[result],
-                               this.__mapKeysData__[result], this);
-                       result = iterator._next();
-               }
-       }),
-       get: d(function (key) {
-               var index = eIndexOf.call(this.__mapKeysData__, key);
-               if (index === -1) return;
-               return this.__mapValuesData__[index];
-       }),
-       has: d(function (key) {
-               return (eIndexOf.call(this.__mapKeysData__, key) !== -1);
-       }),
-       keys: d(function () { return new Iterator(this, 'key'); }),
-       set: d(function (key, value) {
-               var index = eIndexOf.call(this.__mapKeysData__, key), emit;
-               if (index === -1) {
-                       index = this.__mapKeysData__.push(key) - 1;
-                       emit = true;
-               }
-               this.__mapValuesData__[index] = value;
-               if (emit) this.emit('_add', index, key);
-               return this;
-       }),
-       size: d.gs(function () { return this.__mapKeysData__.length; }),
-       values: d(function () { return new Iterator(this, 'value'); }),
-       toString: d(function () { return '[object Map]'; })
-}));
-Object.defineProperty(MapPoly.prototype, Symbol.iterator, d(function () {
-       return this.entries();
-}));
-Object.defineProperty(MapPoly.prototype, Symbol.toStringTag, d('c', 'Map'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/primitive/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/primitive/index.js
deleted file mode 100644 (file)
index 425d482..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-'use strict';
-
-var clear          = require('es5-ext/object/clear')
-  , setPrototypeOf = require('es5-ext/object/set-prototype-of')
-  , validValue     = require('es5-ext/object/valid-value')
-  , callable       = require('es5-ext/object/valid-callable')
-  , d              = require('d')
-  , iterator       = require('es6-iterator/valid-iterable')
-  , forOf          = require('es6-iterator/for-of')
-  , Map            = require('../polyfill')
-  , Iterator       = require('../lib/primitive-iterator')
-
-  , call = Function.prototype.call
-  , defineProperty = Object.defineProperty
-  , create = Object.create, defineProperties = Object.defineProperties
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , PrimitiveMap;
-
-module.exports = PrimitiveMap = function (/*iterable, serialize*/) {
-       var iterable = arguments[0], serialize = arguments[1];
-       if (!(this instanceof PrimitiveMap)) {
-               return new PrimitiveMap(iterable, serialize);
-       }
-       if (this.__mapData__ !== undefined) {
-               throw new TypeError(this + " cannot be reinitialized");
-       }
-       if (iterable != null) iterator(iterable);
-       if (serialize !== undefined) {
-               callable(serialize);
-               defineProperty(this, '_serialize', d('', serialize));
-       }
-       defineProperties(this, {
-               __mapKeysData__: d('c', create(null)),
-               __mapValuesData__: d('c', create(null)),
-               __size__: d('w', 0)
-       });
-       if (!iterable) return;
-       forOf(iterable, function (value) {
-               var key = validValue(value)[0], sKey = this._serialize(key);
-               if (sKey == null) throw new TypeError(key + " cannot be serialized");
-               value = value[1];
-               if (hasOwnProperty.call(this.__mapKeysData__, sKey)) {
-                       if (this.__mapValuesData__[sKey] === value) return;
-               } else {
-                       ++this.__size__;
-               }
-               this.__mapKeysData__[sKey] = key;
-               this.__mapValuesData__[sKey] = value;
-       }, this);
-};
-if (setPrototypeOf) setPrototypeOf(PrimitiveMap, Map);
-
-PrimitiveMap.prototype = create(Map.prototype, {
-       constructor: d(PrimitiveMap),
-       _serialize: d(function (value) {
-               if (value && (typeof value.toString !== 'function')) return null;
-               return String(value);
-       }),
-       clear: d(function () {
-               if (!this.__size__) return;
-               clear(this.__mapKeysData__);
-               clear(this.__mapValuesData__);
-               this.__size__ = 0;
-               this.emit('_clear');
-       }),
-       delete: d(function (key) {
-               var sKey = this._serialize(key);
-               if (sKey == null) return false;
-               if (!hasOwnProperty.call(this.__mapKeysData__, sKey)) return false;
-               delete this.__mapKeysData__[sKey];
-               delete this.__mapValuesData__[sKey];
-               --this.__size__;
-               this.emit('_delete', sKey);
-               return true;
-       }),
-       entries: d(function () { return new Iterator(this, 'key+value'); }),
-       forEach: d(function (cb/*, thisArg*/) {
-               var thisArg = arguments[1], iterator, result, sKey;
-               callable(cb);
-               iterator = this.entries();
-               result = iterator._next();
-               while (result !== undefined) {
-                       sKey = iterator.__list__[result];
-                       call.call(cb, thisArg, this.__mapValuesData__[sKey],
-                               this.__mapKeysData__[sKey], this);
-                       result = iterator._next();
-               }
-       }),
-       get: d(function (key) {
-               var sKey = this._serialize(key);
-               if (sKey == null) return;
-               return this.__mapValuesData__[sKey];
-       }),
-       has: d(function (key) {
-               var sKey = this._serialize(key);
-               if (sKey == null) return false;
-               return hasOwnProperty.call(this.__mapKeysData__, sKey);
-       }),
-       keys: d(function () { return new Iterator(this, 'key'); }),
-       size: d.gs(function () { return this.__size__; }),
-       set: d(function (key, value) {
-               var sKey = this._serialize(key);
-               if (sKey == null) throw new TypeError(key + " cannot be serialized");
-               if (hasOwnProperty.call(this.__mapKeysData__, sKey)) {
-                       if (this.__mapValuesData__[sKey] === value) return this;
-               } else {
-                       ++this.__size__;
-               }
-               this.__mapKeysData__[sKey] = key;
-               this.__mapValuesData__[sKey] = value;
-               this.emit('_add', sKey);
-               return this;
-       }),
-       values: d(function () { return new Iterator(this, 'value'); })
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/implement.js
deleted file mode 100644 (file)
index 3569df6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof Map, 'function'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/index.js
deleted file mode 100644 (file)
index 907b8c5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (T, a) {
-       a((new T([['raz', 1], ['dwa', 2]])).size, 2);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-implemented.js
deleted file mode 100644 (file)
index 06df91c..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var global   = require('es5-ext/global')
-  , polyfill = require('../polyfill');
-
-module.exports = function (t, a) {
-       var cache;
-       a(typeof t(), 'boolean');
-       cache = global.Map;
-       global.Map = polyfill;
-       a(t(), true);
-       if (cache === undefined) delete global.Map;
-       else global.Map = cache;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-map.js
deleted file mode 100644 (file)
index f600b22..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var MapPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       a(t(undefined), false, "Undefined");
-       a(t(null), false, "Null");
-       a(t(true), false, "Primitive");
-       a(t('raz'), false, "String");
-       a(t({}), false, "Object");
-       a(t([]), false, "Array");
-       if (typeof Map !== 'undefined') {
-               a(t(new Map()), true, "Native");
-       }
-       a(t(new MapPoly()), true, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-native-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/is-native-implemented.js
deleted file mode 100644 (file)
index df8ba03..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t, 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator-kinds.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator-kinds.js
deleted file mode 100644 (file)
index 41ea10c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t, { key: true, value: true, 'key+value': true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/iterator.js
deleted file mode 100644 (file)
index 2688ed2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var Map     = require('../../polyfill')
-  , toArray = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var arr = [['raz', 'one'], ['dwa', 'two']], map = new Map(arr);
-
-       a.deep(toArray(new T(map)), arr, "Default");
-       a.deep(toArray(new T(map, 'key+value')), arr, "Key & Value");
-       a.deep(toArray(new T(map, 'value')), ['one', 'two'], "Value");
-       a.deep(toArray(new T(map, 'key')), ['raz', 'dwa'], "Value");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/primitive-iterator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/lib/primitive-iterator.js
deleted file mode 100644 (file)
index ed2790d..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , toArray        = require('es5-ext/array/to-array')
-  , Map            = require('../../primitive')
-
-  , compare, mapToResults;
-
-compare = function (a, b) {
-       if (!a.value) return -1;
-       if (!b.value) return 1;
-       return a.value[0].localeCompare(b.value[0]);
-};
-
-mapToResults = function (arr) {
-       return arr.sort().map(function (value) {
-               return { done: false, value: value };
-       });
-};
-
-module.exports = function (T) {
-       return {
-               "": function (a) {
-                       var arr, it, y, z, map, result = [];
-
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three'],
-                               ['cztery', 'four'], ['pięć', 'five']];
-                       map = new Map(arr);
-
-                       it = new T(map);
-                       a(it[iteratorSymbol](), it, "@@iterator");
-                       y = it.next();
-                       result.push(y);
-                       z = it.next();
-                       a.not(y, z, "Recreate result");
-                       result.push(z);
-                       result.push(it.next());
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), mapToResults(arr));
-                       a.deep(y = it.next(), { done: true, value: undefined }, "End");
-                       a.not(y, it.next(), "Recreate result on dead");
-               },
-               Emited: function (a) {
-                       var arr, it, map, result = [];
-
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three'],
-                               ['cztery', 'four'], ['pięć', 'five']];
-                       map = new Map(arr);
-
-                       it = new T(map);
-                       result.push(it.next());
-                       result.push(it.next());
-                       map.set('sześć', 'six');
-                       arr.push(['sześć', 'six']);
-                       result.push(it.next());
-                       map.delete('pięć');
-                       arr.splice(4, 1);
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), mapToResults(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited #2": function (a) {
-                       var arr, it, map, result = [];
-
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three'],
-                               ['cztery', 'four'], ['pięć', 'five'], ['sześć', 'six']];
-                       map = new Map(arr);
-
-                       it = new T(map);
-                       result.push(it.next());
-                       result.push(it.next());
-                       map.set('siedem', 'seven');
-                       map.delete('siedem');
-                       result.push(it.next());
-                       result.push(it.next());
-                       map.delete('pięć');
-                       arr.splice(4, 1);
-                       result.push(it.next());
-                       a.deep(result.sort(compare), mapToResults(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #1": function (a) {
-                       var arr, it, map, result = [];
-
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three'],
-                               ['cztery', 'four'], ['pięć', 'five'], ['sześć', 'six']];
-                       map = new Map(arr);
-
-                       it = new T(map);
-                       result.push(it.next());
-                       result.push(it.next());
-                       arr = [['raz', 'one'], ['dwa', 'two']];
-                       map.clear();
-                       a.deep(result.sort(compare), mapToResults(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               "Emited: Clear #2": function (a) {
-                       var arr, it, map, result = [];
-
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three'],
-                               ['cztery', 'four'], ['pięć', 'five'], ['sześć', 'six']];
-                       map = new Map(arr);
-
-                       it = new T(map);
-                       result.push(it.next());
-                       result.push(it.next());
-                       map.clear();
-                       map.set('foo', 'bru');
-                       map.set('bar', 'far');
-                       arr = [['raz', 'one'], ['dwa', 'two'], ['foo', 'bru'], ['bar', 'far']];
-                       result.push(it.next());
-                       result.push(it.next());
-                       a.deep(result.sort(compare), mapToResults(arr));
-                       a.deep(it.next(), { done: true, value: undefined }, "End");
-               },
-               Kinds: function (a) {
-                       var arr = [['raz', 'one'], ['dwa', 'two']], map = new Map(arr);
-
-                       a.deep(toArray(new T(map)).sort(), arr.sort(), "Default");
-                       a.deep(toArray(new T(map, 'key+value')).sort(), arr.sort(),
-                               "Key + Value");
-                       a.deep(toArray(new T(map, 'value')).sort(), ['one', 'two'].sort(),
-                               "Value");
-                       a.deep(toArray(new T(map, 'key')).sort(), ['raz', 'dwa'].sort(),
-                               "Key");
-               }
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/polyfill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/polyfill.js
deleted file mode 100644 (file)
index 6640e35..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-'use strict';
-
-var aFrom   = require('es5-ext/array/from')
-  , toArray = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three']]
-         , map = new T(arr), x = {}, y = {}, i = 0;
-
-       a(map instanceof T, true, "Map");
-       a(map.size, 3, "Size");
-       a(map.get('raz'), 'one', "Get: contained");
-       a(map.get(x), undefined, "Get: not contained");
-       a(map.has('raz'), true, "Has: contained");
-       a(map.has(x), false, "Has: not contained");
-       a(map.set(x, y), map, "Set: return");
-       a(map.has(x), true, "Set: has");
-       a(map.get(x), y, "Set: get");
-       a(map.size, 4, "Set: Size");
-       map.set('dwa', x);
-       a(map.get('dwa'), x, "Overwrite: get");
-       a(map.size, 4, "Overwrite: size");
-
-       a(map.delete({}), false, "Delete: false");
-
-       arr.push([x, y]);
-       arr[1][1] = x;
-       map.forEach(function () {
-               a.deep(aFrom(arguments), [arr[i][1], arr[i][0], map],
-                       "ForEach: Arguments:  #" + i);
-               a(this, y, "ForEach: Context: #" + i);
-               if (i === 0) {
-                       a(map.delete('raz'), true, "Delete: true");
-                       a(map.has('raz'), false, "Delete");
-                       a(map.size, 3, "Delete: size");
-                       map.set('cztery', 'four');
-                       arr.push(['cztery', 'four']);
-               }
-               i++;
-       }, y);
-       arr.splice(0, 1);
-
-       a.deep(toArray(map.entries()), [['dwa', x], ['trzy', 'three'], [x, y],
-               ['cztery', 'four']], "Entries");
-       a.deep(toArray(map.keys()), ['dwa', 'trzy', x, 'cztery'], "Keys");
-       a.deep(toArray(map.values()), [x, 'three', y, 'four'], "Values");
-       a.deep(toArray(map), [['dwa', x], ['trzy', 'three'], [x, y],
-               ['cztery', 'four']], "Iterator");
-
-       map.clear();
-       a(map.size, 0, "Clear: size");
-       a(map.has('trzy'), false, "Clear: has");
-       a.deep(toArray(map), [], "Clear: Values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/primitive/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/primitive/index.js
deleted file mode 100644 (file)
index 1167d2e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-'use strict';
-
-var aFrom       = require('es5-ext/array/from')
-  , getIterator = require('es6-iterator/get')
-  , toArray     = require('es5-ext/array/to-array');
-
-module.exports = function (T, a) {
-       var arr = [['raz', 'one'], ['dwa', 'two'], ['trzy', 'three']]
-         , map = new T(arr), x = 'other', y = 'other2'
-         , i = 0, result = [];
-
-       a(map instanceof T, true, "Map");
-       a(map.size, 3, "Size");
-       a(map.get('raz'), 'one', "Get: contained");
-       a(map.get(x), undefined, "Get: not contained");
-       a(map.has('raz'), true, "Has: true");
-       a(map.has(x), false, "Has: false");
-       a(map.set(x, y), map, "Add: return");
-       a(map.has(x), true, "Add");
-       a(map.size, 4, "Add: Size");
-       map.set('dwa', x);
-       a(map.get('dwa'), x, "Overwrite: get");
-       a(map.size, 4, "Overwrite: size");
-
-       a(map.delete('else'), false, "Delete: false");
-
-       arr.push([x, y]);
-       arr[1][1] = x;
-       map.forEach(function () {
-               result.push(aFrom(arguments));
-               a(this, y, "ForEach: Context: #" + i);
-       }, y);
-
-       a.deep(result.sort(function (a, b) {
-               return String([a[1], a[0]]).localeCompare([b[1], b[0]]);
-       }), arr.sort().map(function (val) { return [val[1], val[0], map]; }),
-               "ForEach: Arguments");
-
-       a.deep(toArray(map.entries()).sort(), [['dwa', x], ['trzy', 'three'],
-               [x, y], ['raz', 'one']].sort(), "Entries");
-       a.deep(toArray(map.keys()).sort(), ['dwa', 'trzy', x, 'raz'].sort(),
-               "Keys");
-       a.deep(toArray(map.values()).sort(), [x, 'three', y, 'one'].sort(),
-               "Values");
-       a.deep(toArray(getIterator(map)).sort(), [['dwa', x], ['trzy', 'three'],
-               [x, y], ['raz', 'one']].sort(),
-               "Iterator");
-
-       map.clear();
-       a(map.size, 0, "Clear: size");
-       a(map.has('trzy'), false, "Clear: has");
-       a.deep(toArray(map.values()), [], "Clear: Values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/valid-map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/test/valid-map.js
deleted file mode 100644 (file)
index ac03149..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var MapPoly = require('../polyfill');
-
-module.exports = function (t, a) {
-       var map;
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(true); }, TypeError, "Primitive");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t([]); }, TypeError, "Array");
-       if (typeof Map !== 'undefined') {
-               map = new Map();
-               a(t(map), map, "Native");
-       }
-       map = new MapPoly();
-       a(t(map), map, "Polyfill");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/valid-map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-map/valid-map.js
deleted file mode 100644 (file)
index e2aca87..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isMap = require('./is-map');
-
-module.exports = function (x) {
-       if (!isMap(x)) throw new TypeError(x + " is not a Map");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/d/package.json
deleted file mode 100644 (file)
index e3940a8..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-{
-  "_args": [
-    [
-      "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_id": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2hhMU10Y2O57oqoim5FACfrhEwk=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-weak-map/d",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "d@https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "name": "d",
-    "escapedName": "d",
-    "rawSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-weak-map",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-iterator",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-symbol"
-  ],
-  "_spec": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/d/issues"
-  },
-  "dependencies": {
-    "es5-ext": "~0.10.2"
-  },
-  "description": "Property descriptor factory",
-  "devDependencies": {
-    "tad": "~0.1.21"
-  },
-  "homepage": "https://github.com/medikoo/d#readme",
-  "keywords": [
-    "descriptor",
-    "es",
-    "ecmascript",
-    "ecma",
-    "property",
-    "descriptors",
-    "meta",
-    "properties"
-  ],
-  "license": "MIT",
-  "name": "d",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/d.git"
-  },
-  "scripts": {
-    "test": "node node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/d/-/d-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lint b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lint
deleted file mode 100644 (file)
index d1da610..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-@root
-
-module
-
-indent 2
-maxlen 100
-tabs
-
-ass
-continue
-forin
-nomen
-plusplus
-vars
-
-./global.js
-./function/_define-length.js
-./function/#/copy.js
-./object/unserialize.js
-./test/function/valid-function.js
-evil
-
-./math/_pack-ieee754.js
-./math/_unpack-ieee754.js
-./math/clz32/shim.js
-./math/imul/shim.js
-./number/to-uint32.js
-./string/#/at.js
-bitwise
-
-./math/fround/shim.js
-predef+ Float32Array
-
-./object/first-key.js
-forin
-
-./test/reg-exp/#/index.js
-predef+ __dirname
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lintignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.lintignore
deleted file mode 100644 (file)
index ed703ed..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/string/#/normalize/_data.js
-/test/boolean/is-boolean.js
-/test/date/is-date.js
-/test/number/is-number.js
-/test/object/is-copy.js
-/test/object/is-object.js
-/test/reg-exp/is-reg-exp.js
-/test/string/is-string.js
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.npmignore
deleted file mode 100644 (file)
index eb09b50..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-.DS_Store
-/node_modules
-/.lintcache
-/npm-debug.log
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/.travis.yml
deleted file mode 100644 (file)
index b98b5a8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-language: node_js
-node_js:
-  - 0.8
-  - 0.10
-  - 0.11
-
-before_install:
-  - mkdir node_modules; ln -s ../ node_modules/es5-ext
-
-notifications:
-  email:
-    - medikoo+es5-ext@medikoo.com
-
-script: "npm test && npm run lint"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/CHANGES b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/CHANGES
deleted file mode 100644 (file)
index e72d34a..0000000
+++ /dev/null
@@ -1,591 +0,0 @@
-v0.10.6  --  2015.02.02
-* Fix handling of infinite values in Math.trunc
-* Fix handling of getters in Object.normalizeOptions
-
-v0.10.5  --  2015.01.20
-* Add Function#toStringTokens
-* Add Object.serialize and Object.unserialize
-* Add String.randomUniq
-* Fix Strin#camelToHyphen issue with tokens that end with digit
-* Optimise Number.isInteger logic
-* Improve documentation
-* Configure lint scripts
-* Fix spelling of LICENSE
-
-v0.10.4  --  2014.04.30
-* Assure maximum spec compliance of Array.of and Array.from (thanks @mathiasbynens)
-* Improve documentations
-
-v0.10.3  --  2014.04.29
-Provide accurate iterators handling:
-* Array.from improvements:
-  * Assure right unicode symbols resolution when processing strings in Array.from
-  * Rely on ES6 symbol shim and use native @@iterator Symbol if provided by environment
-* Add methods:
-  * Array.prototype.entries
-  * Array.prototype.keys
-  * Array.prototype.values
-  * Array.prototype[@@iterator]
-  * String.prototype[@@iterator]
-
-Improve documentation
-
-v0.10.2  --  2014.04.24
-- Simplify and deprecate `isCallable`. It seems in ES5 based engines there are
-  no callable objects which are `typeof obj !== 'function'`
-- Update Array.from map callback signature (up to latest resolution of TC39)
-- Improve documentation
-
-v0.10.1  --  2014.04.14
-Bump version for npm
-(Workaround for accidental premature publish & unpublish of v0.10.0 a while ago)
-
-v0.10.0  --  2014.04.13
-Major update:
-- All methods and function specified for ECMAScript 6 are now introduced as
-  shims accompanied with functions through which (optionally) they can be
-  implementend on native objects
-- Filename convention was changed to shorter and strictly lower case names. e.g.
-  `lib/String/prototype/starts-with` became `string/#/starts-with`
-- Generated functions are guaranteed to have expected length
-- Objects with null prototype (created via `Object.create(null)`) are widely
-  supported (older version have crashed due to implied `obj.hasOwnProperty` and
-  related invocations)
-- Support array subclasses
-- When handling lists do not limit its length to Uint32 range
-- Use newly introduced `Object.eq` for strict equality in place of `Object.is`
-- Iteration of Object have been improved so properties that were hidden or
-  removed after iteration started are not iterated.
-
-Additions:
-- `Array.isPlainArray`
-- `Array.validArray`
-- `Array.prototype.concat` (as updated with ES6)
-- `Array.prototype.copyWithin` (as introduced with ES6)
-- `Array.prototype.fill` (as introduced with ES6)
-- `Array.prototype.filter` (as updated with ES6)
-- `Array.prototype.findIndex` (as introduced with ES6)
-- `Array.prototype.map` (as updated with ES6)
-- `Array.prototype.separate`
-- `Array.prototype.slice` (as updated with ES6)
-- `Array.prototype.splice` (as updated with ES6)
-- `Function.prototype.copy`
-- `Math.acosh` (as introduced with ES6)
-- `Math.atanh` (as introduced with ES6)
-- `Math.cbrt` (as introduced with ES6)
-- `Math.clz32` (as introduced with ES6)
-- `Math.cosh` (as introduced with ES6)
-- `Math.expm1` (as introduced with ES6)
-- `Math.fround` (as introduced with ES6)
-- `Math.hypot` (as introduced with ES6)
-- `Math.imul` (as introduced with ES6)
-- `Math.log2` (as introduced with ES6)
-- `Math.log10` (as introduced with ES6)
-- `Math.log1p` (as introduced with ES6)
-- `Math.sinh` (as introduced with ES6)
-- `Math.tanh` (as introduced with ES6)
-- `Math.trunc` (as introduced with ES6)
-- `Number.EPSILON` (as introduced with ES6)
-- `Number.MIN_SAFE_INTEGER` (as introduced with ES6)
-- `Number.MAX_SAFE_INTEGER` (as introduced with ES6)
-- `Number.isFinite` (as introduced with ES6)
-- `Number.isInteger` (as introduced with ES6)
-- `Number.isSafeInteger` (as introduced with ES6)
-- `Object.create` (with fix for V8 issue which disallows prototype turn of
-  objects derived from null
-- `Object.eq` - Less restrictive version of `Object.is` based on SameValueZero
-  algorithm
-- `Object.firstKey`
-- `Object.keys` (as updated with ES6)
-- `Object.mixinPrototypes`
-- `Object.primitiveSet`
-- `Object.setPrototypeOf` (as introduced with ES6)
-- `Object.validObject`
-- `RegExp.escape`
-- `RegExp.prototype.match` (as introduced with ES6)
-- `RegExp.prototype.replace` (as introduced with ES6)
-- `RegExp.prototype.search` (as introduced with ES6)
-- `RegExp.prototype.split` (as introduced with ES6)
-- `RegExp.prototype.sticky` (as introduced with ES6)
-- `RegExp.prototype.unicode` (as introduced with ES6)
-- `String.fromCodePoint` (as introduced with ES6)
-- `String.raw` (as introduced with ES6)
-- `String.prototype.at`
-- `String.prototype.codePointAt` (as introduced with ES6)
-- `String.prototype.normalize` (as introduced with ES6)
-- `String.prototype.plainReplaceAll`
-
-Removals:
-- `reserved` set
-- `Array.prototype.commonLeft`
-- `Function.insert`
-- `Function.remove`
-- `Function.prototype.silent`
-- `Function.prototype.wrap`
-- `Object.descriptor` Move to external `d` project.
-  See: https://github.com/medikoo/d
-- `Object.diff`
-- `Object.extendDeep`
-- `Object.reduce`
-- `Object.values`
-- `String.prototype.trimCommonLeft`
-
-Renames:
-- `Function.i` into `Function.identity`
-- `Function.k` into `Function.constant`
-- `Number.toInt` into `Number.toInteger`
-- `Number.toUint` into `Number.toPosInteger`
-- `Object.extend` into `Object.assign` (as introduced in ES 6)
-- `Object.extendProperties` into `Object.mixin`, with improved internal
-  handling, so it matches temporarily specified `Object.mixin` for ECMAScript 6
-- `Object.isList` into `Object.isArrayLike`
-- `Object.mapToArray` into `Object.toArray` (with fixed function length)
-- `Object.toPlainObject` into `Object.normalizeOptions` (as this is the real
-  use case where we use this function)
-- `Function.prototype.chain` into `Function.prototype.compose`
-- `Function.prototype.match` into `Function.prototype.spread`
-- `String.prototype.format` into `String.formatMethod`
-
-Improvements & Fixes:
-- Remove workaround for primitive values handling in object iterators
-- `Array.from`: Update so it follows ES 6 spec
-- `Array.prototype.compact`: filters just null and undefined values
-  (not all falsies)
-- `Array.prototype.eIndexOf` and `Array.prototype.eLastIndexOf`: fix position
-  handling, improve internals
-- `Array.prototype.find`: return undefined not null, in case of not found
-  (follow ES 6)
-- `Array.prototype.remove` fix function length
-- `Error.custom`: simplify, Custom class case is addressed by outer
-  `error-create` project -> https://github.com/medikoo/error-create
-- `Error.isError` true only for Error instances (remove detection of host
-  Exception objects)
-- `Number.prototype.pad`: Normalize negative pad
-- `Object.clear`: Handle errors same way as in `Object.assign`
-- `Object.compact`: filters just null and undefined values (not all falsies)
-- `Object.compare`: Take into account NaN values
-- `Object.copy`: Split into `Object.copy` and `Object.copyDeep`
-- `Object.isCopy`: Separate into `Object.isCopy` and `Object.isCopyDeep`, where
-  `isCopyDeep` handles nested plain objects and plain arrays only
-- `String.prototype.endsWith`: Adjust up to ES6 specification
-- `String.prototype.repeat`: Adjust up to ES6 specification and improve algorithm
-- `String.prototype.simpleReplace`: Rename into `String.prototype.plainReplace`
-- `String.prototype.startsWith`: Adjust up to ES6 specification
-- Update lint rules, and adjust code to that
-- Update Travis CI configuration
-- Remove Makefile (it's cross-env utility)
-
-v0.9.2  --  2013.03.11
-Added:
-* Array.prototype.isCopy
-* Array.prototype.isUniq
-* Error.CustomError
-* Function.validFunction
-* Object.extendDeep
-* Object.descriptor.binder
-* Object.safeTraverse
-* RegExp.validRegExp
-* String.prototype.capitalize
-* String.prototype.simpleReplace
-
-Fixed:
-* Fix Array.prototype.diff for sparse arrays
-* Accept primitive objects as input values in Object iteration methods and
-  Object.clear, Object.count, Object.diff, Object.extend,
-  Object.getPropertyNames, Object.values
-* Pass expected arguments to callbacks of Object.filter, Object.mapKeys,
-  Object.mapToArray, Object.map
-* Improve callable callback support in Object.mapToArray
-
-v0.9.1  --  2012.09.17
-* Object.reduce - reduce for hash-like collections
-* Accapt any callable object as callback in Object.filter, mapKeys and map
-* Convention cleanup
-
-v0.9.0  --  2012.09.13
-We're getting to real solid API
-
-Removed:
-* Function#memoize - it's grown up to be external package, to be soon published
-  as 'memoizee'
-* String.guid - it doesn't fit es5-ext (extensions) concept, will be provided as
-  external package
-# Function.arguments - obsolete
-# Function.context - obsolete
-# Function#flip - not readable when used, so it was never used
-# Object.clone - obsolete and confusing
-
-Added:
-* String#camelToHyphen - String format convertion
-
-Renamed:
-* String#dashToCamelCase -> String#hyphenToCamel
-
-Fixes:
-* Object.isObject - Quote names in literals that match reserved keywords
-  (older implementations crashed on that)
-* String#repeat - Do not accept negative values (coerce them to 1)
-
-Improvements:
-* Array#remove - Accepts many arguments, we can now remove many values at once
-* Object iterators (forEach, map, some) - Compare function invoked with scope
-  object bound to this
-* Function#curry - Algorithm cleanup
-* Object.isCopy - Support for all types, not just plain objects
-* Object.isPlainObject - Support for cross-frame objects
-* Do not memoize any of the functions, it shouldn't be decided internally
-* Remove Object.freeze calls in reserved, it's not up to convention
-* Improved documentation
-* Better linting (hard-core approach using both JSLint mod and JSHint)
-* Optional arguments are now documented in funtions signature
-
-v0.8.2  --  2012.06.22
-Fix errors in Array's intersection and exclusion methods, related to improper
-usage of contains method
-
-v0.8.1  --  2012.06.13
-Reorganized internal logic of Function.prototype.memoize. So it's more safe now
-and clears cache properly. Additionally preventCache option was provided.
-
-v0.8.0  --  2012.05.28
-Again, major overhaul. Probably last experimental stuff was trashed, all API
-looks more like standard extensions now.
-
-Changes:
-* Turn all Object.prototype extensions into functions and move them to Object
-namespace. We learned that extending Object.prototype is bad idea in any case.
-* Rename Function.prototype.curry into Function.prototype.partial. This function
-  is really doing partial application while currying is slightly different
-  concept.
-* Convert Function.prototype.ncurry to new implementation of
-  Function.prototype.curry, it now serves real curry concept additionaly it
-  covers use cases for aritize and hold, which were removed.
-* Rename Array's peek to last, and provide support for sparse arrays in it
-* Rename Date's monthDaysCount into daysInMonth
-* Simplify object iterators, now order of iteration can be configured with just
-  compareFn argument (no extra byKeys option)
-* Rename Object.isDuplicate to Object.isCopy
-* Rename Object.isEqual to Object.is which is compatible with future 'is'
-  keyword
-* Function.memoize is now Function.prototype.memoize. Additionally clear cache
-  functionality is added, and access to original arguments object.
-* Rename validation functions: assertNotNull to validValue, assertCallable to
-  validCallable. validValue was moved to Object namespace. On success they now
-  return validated value instead of true, it supports better composition.
-  Additionally created Date.validDate and Error.validError
-* All documentation is now held in README.md not in code files.
-* Move guid to String namespace. All guids now start with numbers.
-* Array.generate: fill argument is now optional
-* Object.toArray is now Array.from (as new ES6 specification draft suggests)
-* All methods that rely on indexOf or lastIndexOf, now rely on egal (Object.is)
-  versions of them (eIndexOf, eLastIndexOf)
-* Turn all get* functions that returned methods into actuall methods (get*
-  functionality can still be achieved with help of Function.prototype.partial).
-  So: Date.getFormat is now Date.prototype.format,
-  Number.getPad is now Number.prototype.pad,
-  String.getFormat is now String.prototype.format,
-  String.getIndent is now String.prototype.indent,
-  String.getPad is now String.prototype.pad
-* Refactored Object.descriptor, it is now just two functions, main one and
-  main.gs, main is for describing values, and gs for describing getters and
-  setters. Configuration is passed with first argument as string e.g. 'ce' for
-  configurable and enumerable. If no configuration string is provided then by
-  default it returns configurable and writable but not enumerable for value or
-  configurable but not enumerable for getter/setter
-* Function.prototype.silent now returns prepared function (it was
-  expected to be fixed for 0.7)
-* Reserved keywords map (reserved) is now array not hash.
-* Object.merge is now Object.extend (while former Object.extend was completely
-  removed) - 'extend' implies that we change object, not creating new one (as
-  'merge' may imply). Similarily Object.mergeProperties was renamed to
-  Object.extendProperties
-* Position argument support in Array.prototype.contains and
-  String.prototype.contains (so it follows ES6 specification draft)
-* endPosition argument support in String.prototype.endsWith and fromPosition
-  argument support in String.prototype.startsWith (so it follows ES6
-  specification draft)
-* Better and cleaner String.prototype.indent implementation. No default value
-  for indent string argument, optional nest value (defaults to 1), remove
-  nostart argument
-* Correct length values for most methods (so they reflect length of similar
-  methods in standard)
-* Length argument is now optional in number and string pad methods.
-* Improve arguments validation in general, so it adheres to standard conventions
-* Fixed format of package.json
-
-Removed methods and functions:
-* Object.prototype.slice - Object is not ordered collection, so slice doesn't
-  make sense.
-* Function's rcurry, rncurry, s - too cumbersome for JS, not many use cases for
-  that
-* Function.prototype.aritize and Function.prototype.hold - same functionality
-  can be achieved with new Function.prototype.curry
-* Function.prototype.log - provided more generic Function.prototype.wrap for
-  same use case
-* getNextIdGenerator - no use case for that (String.guid should be used if
-  needed)
-* Object.toObject - Can be now acheived with Object(validValue(x))
-* Array.prototype.someValue - no real use case (personally used once and
-  case was already controversial)
-* Date.prototype.duration - moved to external package
-* Number.getAutoincrement - No real use case
-* Object.prototype.extend, Object.prototype.override,
-  Object.prototype.plainCreate, Object.prototype.plainExtend - It was probably
-  too complex, same should be achieved just with Object.create,
-  Object.descriptor and by saving references to super methods in local scope.
-* Object.getCompareBy - Functions should be created individually for each use
-  case
-* Object.get, Object.getSet, Object.set, Object.unset - Not many use cases and
-  same can be easily achieved with simple inline function
-* String.getPrefixWith - Not real use case for something that can be easily
-  achieved with '+' operator
-* Object.isPrimitive - It's just negation of Object.isObject
-* Number.prototype.isLess, Number.prototype.isLessOrEqual - they shouldn't be in
-  Number namespace and should rather be addressed with simple inline functions.
-* Number.prototype.subtract - Should rather be addressed with simple inline
-  function
-
-New methods and functions:
-* Array.prototype.lastIndex - Returns last declared index in array
-* String.prototype.last - last for strings
-* Function.prototype.wrap - Wrap function with other, it allows to specify
-  before and after behavior transform return value or prevent original function
-  from being called.
-* Math.sign - Returns sign of a number (already in ES6 specification draft)
-* Number.toInt - Converts value to integer (already in ES6 specification draft)
-* Number.isNaN - Returns true if value is NaN (already in ES6 specification
-  draft)
-* Number.toUint - Converts value to unsigned integer
-* Number.toUint32 - Converts value to 32bit unsigned integer
-* Array.prototype.eIndexOf, eLastIndexOf - Egal version (that uses Object.is) of
-  standard methods (all methods that were using native indexOf or lastIndexOf
-  now uses eIndexOf and elastIndexOf respectively)
-* Array.of - as it's specified for ES6
-
-Fixes:
-* Fixed binarySearch so it always returns valid list index
-* Object.isList - it failed on lists that are callable (e.g. NodeList in Nitro
-  engine)
-* Object.map now supports third argument for callback
-
-v0.7.1  --  2012.01.05
-New methods:
-* Array.prototype.firstIndex - returns first valid index of array (for
-       sparse arrays it may not be '0'
-
-Improvements:
-* Array.prototype.first - now returns value for index returned by firstIndex
-* Object.prototype.mapToArray - can be called without callback, then array of
-       key-value pairs is returned
-
-Fixes
-* Array.prototype.forEachRight, object's length read through UInt32 conversion
-
-v0.7.0  --  2011.12.27
-Major update.
-Stepped back from experimental ideas and introduced more standard approach
-taking example from how ES5 methods and functions are designed. One exceptions
-is that, we don’t refrain from declaring methods for Object.prototype - it’s up
-to developer whether how he decides to use it in his context (as function or as
-method).
-
-In general:
-* Removed any method 'functionalization' and functionalize method itself.
-       es5-ext declares plain methods, which can be configured to work as functions
-       with call.bind(method) - see documentation.
-* Removed separation of Object methods for ES5 (with descriptors) and
-       ES3 (plain) - we're following ES5 idea on that, some methods are intended just
-       for enumerable properties and some are for all properties, all are declared
-       for Object.prototype
-* Removed separation of Array generic (collected in List folder) and not generic
-       methods (collected in Array folder). Now all methods are generic and are in
-       Array/prototype folder. This separation also meant, that methods in Array are
-       usually destructive. We don’t do that separation now, there’s generally no use
-       case for destructive iterators, we should be fine with one version of each
-       method, (same as ES5 is fine with  e.g. one, non destructive 'filter' method)
-* Folder structure resembles tree of native ES5 Objects
-* All methods are written with ES5 conventions in mind, it means that most
-       methods are generic and can be run on any object. In more detail:
-       ** Array.prototype and Object.prototype methods can be run on any object (any
-               not null or undefined value),
-       ** Date.prototype methods should be called only on Date instances.
-       ** Function.prototype methods can be called on any callable objects (not
-               necessarily functions)
-       ** Number.prototype & String.prototype methods can be called on any value, in
-               case of Number it it’ll be degraded to number, in case of string it’ll be
-               degraded to string.
-* Travis CI support (only for Node v0.6 branch, as v0.4 has buggy V8 version)
-
-Improvements for existing functions and methods:
-* Function.memoize (was Function.cache) is now fully generic, can operate on any
-       type of arguments and it’s NaN safe (all NaN objects are considered equal)
-* Method properties passed to Object.prototype.extend or
-       Object.prototype.override can aside of _super optionally take prototype object
-       via _proto argument
-* Object iterators: forEach, mapToArray and every can now iterate in specified
-       order
-* pluck, invoke and other functions that return reusable functions or methods
-       have now their results memoized.
-
-New methods:
-* Global: assertNotNull, getNextIdGenerator, guid, isEqual, isPrimitive,
-       toObject
-* Array: generate
-* Array.prototype: binarySearch, clear, contains, diff, exclusion, find, first,
-       forEachRight, group, indexesOf, intersection, remove, someRight, someValue
-* Boolean: isBoolean
-* Date: isDate
-* Function: arguments, context, insert, isArguments, remove
-* Function.prototype: not, silent
-* Number: getAutoincrement, isNumber
-* Number.prototype: isLessOrEqual, isLess, subtract
-* Object: assertCallable, descriptor (functions for clean descriptors),
-       getCompareBy, isCallable, isObject
-* Object.prototype: clone (real clone), compact, count, diff, empty,
-       getPropertyNames, get, keyOf, mapKeys, override, plainCreate, plainExtend,
-       slice, some, unset
-* RegExp: isRegExp
-* String: getPrefixWith, isString
-* String.prototype: caseInsensitiveCompare, contains, isNumeric
-
-Renamed methods:
-* Date.clone -> Date.prototype.copy
-* Date.format -> Date.getFormat
-* Date/day/floor -> Date.prototype.floorDay
-* Date/month/floor -> Date.prototype.floorMonth
-* Date/month/year -> Date.prototype.floorYear
-* Function.cache -> Function.memoize
-* Function.getApplyArg -> Function.prototype.match
-* Function.sequence -> Function.prototype.chain
-* List.findSameStartLength -> Array.prototype.commonLeft
-* Number.pad -> Number.getPad
-* Object/plain/clone -> Object.prototype.copy
-* Object/plain/elevate -> Object.prototype.flatten
-* Object/plain/same -> Object.prototype.isDuplicate
-* Object/plain/setValue -> Object.getSet
-* String.format -> String.getFormat
-* String.indent -> String.getIndent
-* String.pad -> String.getPad
-* String.trimLeftStr -> String.prototype.trimCommonLeft
-* Object.merge -> Object.prototype.mergeProperties
-* Object/plain/pluck -> Object.prototype.get
-* Array.clone is now Array.prototype.copy and can be used also on any array-like
-       objects
-* List.isList -> Object.isList
-* List.toArray -> Object.prototype.toArray
-* String/convert/dashToCamelCase -> String.prototype.dashToCamelCase
-
-Removed methods:
-* Array.compact - removed destructive version (that operated on same array), we
-       have now non destructive version as Array.prototype.compact.
-* Function.applyBind -> use apply.bind directly
-* Function.bindBind -> use bind.bind directly
-* Function.callBind -> use call.bind directly
-* Fuction.clone -> no valid use case
-* Function.dscope -> controversial approach, shouldn’t be considered seriously
-* Function.functionalize -> It was experimental but standards are standards
-* List/sort/length -> It can be easy obtained by Object.getCompareBy(‘length’)
-* List.concat -> Concat’s for array-like’s makes no sense, just convert to array
-       first
-* List.every -> Use Array.prototype.every directly
-* List.filter -> Use Array.prototype.filter directly
-* List.forEach -> User Array.prototype.forEach directly
-* List.isListObject -> No valid use case, do: isList(list) && (typeof list ===
-       'object’)
-* List.map -> Use Array.prototype.map directly
-* List.reduce -> Use Array.prototype.reduce directly
-* List.shiftSame -> Use Array.prototype.commonLeft and do slice
-* List.slice -> Use Array.prototype.slice directly
-* List.some -> Use Array.prototype.some directly
-* Object.bindMethods -> it was version that considered descriptors, we have now
-       Object.prototype.bindMethods which operates only on enumerable properties
-* Object.every -> version that considered all properties, we have now
-       Object.prototype.every which iterates only enumerables
-* Object.invoke -> no use case
-* Object.mergeDeep -> no use case
-* Object.pluck -> no use case
-* Object.same -> it considered descriptors, now there’s only Object.isDuplicate
-       which compares only enumerable properties
-* Object.sameType -> no use case
-* Object.toDescriptor and Object.toDescriptors -> replaced by much nicer
-       Object.descriptor functions
-* Object/plain/link -> no use case (it was used internally only by
-       Object/plain/merge)
-* Object/plain/setTrue -> now easily configurable by more universal
-       Object.getSet(true)
-* String.trimRightStr -> Eventually String.prototype.trimCommonRight will be
-       added
-
-v0.6.3  --  2011.12.12
-* Cleared npm warning for misnamed property in package.json
-
-v0.6.2  --  2011.08.12
-* Calling String.indent without scope (global scope then) now treated as calling
-  it with null scope, it allows more direct invocations when using default nest
-  string: indent().call(str, nest)
-
-v0.6.1  --  2011.08.08
-* Added TAD test suite to devDependencies, configured test commands.
-  Tests can be run with 'make test' or 'npm test'
-
-v0.6.0  --  2011.08.07
-New methods:
-* Array: clone, compact (in place)
-* Date: format, duration, clone, monthDaysCount, day.floor, month.floor,
-  year.floor
-* Function: getApplyArg, , ncurry, rncurry, hold, cache, log
-* List: findSameStartLength, shiftSame, peek, isListObject
-* Number: pad
-* Object: sameType, toString, mapToArray, mergeDeep, toDescriptor,
-  toDescriptors, invoke
-* String: startsWith, endsWith, indent, trimLeftStr, trimRightStr, pad, format
-
-Fixed:
-* Object.extend does now prototypal extend as exptected
-* Object.merge now tries to overwrite only configurable properties
-* Function.flip
-
-Improved:
-* Faster List.toArray
-* Better global retrieval
-* Functionalized all Function methods
-* Renamed bindApply and bindCall to applyBind and callBind
-* Removed Function.inherit (as it's unintuitive curry clone)
-* Straightforward logic in Function.k
-* Fixed naming of some tests files (letter case issue)
-* Renamed Function.saturate into Function.lock
-* String.dashToCamelCase digits support
-* Strings now considered as List objects
-* Improved List.compact
-* Concise logic for List.concat
-* Test wit TAD in clean ES5 context
-
-v0.5.1  --  2011.07.11
-* Function's bindBind, bindCall and bindApply now more versatile
-
-v0.5.0  --  2011.07.07
-* Removed Object.is and List.apply
-* Renamed Object.plain.is to Object.plain.isPlainObject (keep naming convention
-  consistent)
-* Improved documentation
-
-v0.4.0  --  2011.07.05
-* Take most functions on Object to Object.plain to keep them away from object
-  descriptors
-* Object functions with ES5 standard in mind (object descriptors)
-
-v0.3.0  --  2011.06.24
-* New functions
-* Consistent file naming (dash instead of camelCase)
-
-v0.2.1  --  2011.05.28
-* Renamed Functions.K and Function.S to to lowercase versions (use consistent
-  naming)
-
-v0.2.0  --  2011.05.28
-* Renamed Array folder to List (as its generic functions for array-like objects)
-* Added Makefile
-* Added various functions
-
-v0.1.0  --  2011.05.24
-* Initial version
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/LICENSE
deleted file mode 100644 (file)
index de39071..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (C) 2011-2015 Mariusz Nowak (www.medikoo.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/README.md
deleted file mode 100644 (file)
index 11d8a34..0000000
+++ /dev/null
@@ -1,993 +0,0 @@
-# es5-ext
-## ECMAScript 5 extensions
-### (with respect to ECMAScript 6 standard)
-
-Shims for upcoming ES6 standard and other goodies implemented strictly with ECMAScript conventions in mind.
-
-It's designed to be used in compliant ECMAScript 5 or ECMAScript 6 environments. Older environments are not supported, although most of the features should work with correct ECMAScript 5 shim on board.
-
-When used in ECMAScript 6 environment, native implementation (if valid) takes precedence over shims.
-
-### Installation
-
-       $ npm install es5-ext
-       
-To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
-
-### Usage
-
-#### ECMAScript 6 features
-
-You can force ES6 features to be implemented in your environment, e.g. following will assign `from` function to `Array` (only if it's not implemented already).
-
-```javascript
-require('es5-ext/array/from/implement');
-Array.from('foo'); // ['f', 'o', 'o']
-```
-
-You can also access shims directly, without fixing native objects. Following will return native `Array.from` if it's available and fallback to shim if it's not.
-
-```javascript
-var aFrom = require('es5-ext/array/from');
-aFrom('foo'); // ['f', 'o', 'o']
-```
-
-If you want to use shim unconditionally (even if native implementation exists) do:
-
-```javascript
-var aFrom = require('es5-ext/array/from/shim');
-aFrom('foo'); // ['f', 'o', 'o']
-```
-
-##### List of ES6 shims
-
-It's about properties introduced with ES6 and those that have been updated in new spec.
-
-- `Array.from` -> `require('es5-ext/array/from')`
-- `Array.of` -> `require('es5-ext/array/of')`
-- `Array.prototype.concat` -> `require('es5-ext/array/#/concat')`
-- `Array.prototype.copyWithin` -> `require('es5-ext/array/#/copy-within')`
-- `Array.prototype.entries` -> `require('es5-ext/array/#/entries')`
-- `Array.prototype.fill` -> `require('es5-ext/array/#/fill')`
-- `Array.prototype.filter` -> `require('es5-ext/array/#/filter')`
-- `Array.prototype.find` -> `require('es5-ext/array/#/find')`
-- `Array.prototype.findIndex` -> `require('es5-ext/array/#/find-index')`
-- `Array.prototype.keys` -> `require('es5-ext/array/#/keys')`
-- `Array.prototype.map` -> `require('es5-ext/array/#/map')`
-- `Array.prototype.slice` -> `require('es5-ext/array/#/slice')`
-- `Array.prototype.splice` -> `require('es5-ext/array/#/splice')`
-- `Array.prototype.values` -> `require('es5-ext/array/#/values')`
-- `Array.prototype[@@iterator]` -> `require('es5-ext/array/#/@@iterator')`
-- `Math.acosh` -> `require('es5-ext/math/acosh')`
-- `Math.asinh` -> `require('es5-ext/math/asinh')`
-- `Math.atanh` -> `require('es5-ext/math/atanh')`
-- `Math.cbrt` -> `require('es5-ext/math/cbrt')`
-- `Math.clz32` -> `require('es5-ext/math/clz32')`
-- `Math.cosh` -> `require('es5-ext/math/cosh')`
-- `Math.exmp1` -> `require('es5-ext/math/expm1')`
-- `Math.fround` -> `require('es5-ext/math/fround')`
-- `Math.hypot` -> `require('es5-ext/math/hypot')`
-- `Math.imul` -> `require('es5-ext/math/imul')`
-- `Math.log1p` -> `require('es5-ext/math/log1p')`
-- `Math.log2` -> `require('es5-ext/math/log2')`
-- `Math.log10` -> `require('es5-ext/math/log10')`
-- `Math.sign` -> `require('es5-ext/math/sign')`
-- `Math.signh` -> `require('es5-ext/math/signh')`
-- `Math.tanh` -> `require('es5-ext/math/tanh')`
-- `Math.trunc` -> `require('es5-ext/math/trunc')`
-- `Number.EPSILON` -> `require('es5-ext/number/epsilon')`
-- `Number.MAX_SAFE_INTEGER` -> `require('es5-ext/number/max-safe-integer')`
-- `Number.MIN_SAFE_INTEGER` -> `require('es5-ext/number/min-safe-integer')`
-- `Number.isFinite` -> `require('es5-ext/number/is-finite')`
-- `Number.isInteger` -> `require('es5-ext/number/is-integer')`
-- `Number.isNaN` -> `require('es5-ext/number/is-nan')`
-- `Number.isSafeInteger` -> `require('es5-ext/number/is-safe-integer')`
-- `Object.assign` -> `require('es5-ext/object/assign')`
-- `Object.keys` -> `require('es5-ext/object/keys')`
-- `Object.setPrototypeOf` -> `require('es5-ext/object/set-prototype-of')`
-- `RegExp.prototype.match` -> `require('es5-ext/reg-exp/#/match')`
-- `RegExp.prototype.replace` -> `require('es5-ext/reg-exp/#/replace')`
-- `RegExp.prototype.search` -> `require('es5-ext/reg-exp/#/search')`
-- `RegExp.prototype.split` -> `require('es5-ext/reg-exp/#/split')`
-- `RegExp.prototype.sticky` -> Implement with `require('es5-ext/reg-exp/#/sticky/implement')`, use as function with `require('es5-ext/reg-exp/#/is-sticky')`
-- `RegExp.prototype.unicode` -> Implement with `require('es5-ext/reg-exp/#/unicode/implement')`, use as function with `require('es5-ext/reg-exp/#/is-unicode')`
-- `String.fromCodePoint` -> `require('es5-ext/string/from-code-point')`
-- `String.raw` -> `require('es5-ext/string/raw')`
-- `String.prototype.codePointAt` -> `require('es5-ext/string/#/code-point-at')`
-- `String.prototype.contains` -> `require('es5-ext/string/#/contains')`
-- `String.prototype.endsWith` -> `require('es5-ext/string/#/ends-with')`
-- `String.prototype.normalize` -> `require('es5-ext/string/#/normalize')`
-- `String.prototype.repeat` -> `require('es5-ext/string/#/repeat')`
-- `String.prototype.startsWith` -> `require('es5-ext/string/#/starts-with')`
-- `String.prototype[@@iterator]` -> `require('es5-ext/string/#/@@iterator')`
-
-#### Non ECMAScript standard features
-
-__es5-ext__ provides also other utils, and implements them as if they were proposed for a standard. It mostly offers methods (not functions) which can directly be assigned to native prototypes:
-
-```javascript
-Object.defineProperty(Function.prototype, 'partial', { value: require('es5-ext/function/#/partial'),
-  configurable: true, enumerable: false, writable: true });
-Object.defineProperty(Array.prototype, 'flatten', { value: require('es5-ext/array/#/flatten'),
-  configurable: true, enumerable: false, writable: true });
-Object.defineProperty(String.prototype, 'capitalize', { value: require('es5-ext/string/#/capitalize'),
-  configurable: true, enumerable: false, writable: true });
-```
-
-See [es5-extend](https://github.com/wookieb/es5-extend#es5-extend), a great utility that automatically will extend natives for you. 
-
-__Important:__ Remember to __not__ extend natives in scope of generic reusable packages (e.g. ones you intend to publish to npm). Extending natives is fine __only__ if you're the _owner_ of the global scope, so e.g. in final project you lead development of.
-
-When you're in situation when native extensions are not good idea, then you should use methods indirectly:
-
-
-```javascript
-var flatten = require('es5-ext/array/#/flatten');
-
-flatten.call([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-for better convenience you can turn methods into functions:
-
-
-```javascript
-var call = Function.prototype.call
-var flatten = call.bind(require('es5-ext/array/#/flatten'));
-
-flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-You can configure custom toolkit (like [underscorejs](http://underscorejs.org/)), and use it throughout your application
-
-```javascript
-var util = {};
-util.partial = call.bind(require('es5-ext/function/#/partial'));
-util.flatten = call.bind(require('es5-ext/array/#/flatten'));
-util.startsWith = call.bind(require('es5-ext/string/#/starts-with'));
-
-util.flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
-```
-
-As with native ones most methods are generic and can be run on any type of object.
-
-## API
-
-### Global extensions
-
-#### global _(es5-ext/global)_
-
-Object that represents global scope
-
-### Array Constructor extensions
-
-#### from(arrayLike[, mapFn[, thisArg]]) _(es5-ext/array/from)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from).  
-Returns array representation of _iterable_ or _arrayLike_. If _arrayLike_ is an instance of array, its copy is returned.
-
-#### generate([length[, …fill]]) _(es5-ext/array/generate)_
-
-Generate an array of pre-given _length_ built of repeated arguments.
-
-#### isPlainArray(x) _(es5-ext/array/is-plain-array)_
-
-Returns true if object is plain array (not instance of one of the Array's extensions).
-
-#### of([…items]) _(es5-ext/array/of)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.of).  
-Create an array from given arguments.
-
-#### toArray(obj) _(es5-ext/array/to-array)_
-
-Returns array representation of `obj`. If `obj` is already an array, `obj` is returned back.
-
-#### validArray(obj) _(es5-ext/array/valid-array)_
-
-Returns `obj` if it's an array, otherwise throws `TypeError`
-
-### Array Prototype extensions
-
-#### arr.binarySearch(compareFn) _(es5-ext/array/#/binary-search)_
-
-In __sorted__ list search for index of item for which _compareFn_ returns value closest to _0_.  
-It's variant of binary search algorithm
-
-#### arr.clear() _(es5-ext/array/#/clear)_
-
-Clears the array
-
-#### arr.compact() _(es5-ext/array/#/compact)_
-
-Returns a copy of the context with all non-values (`null` or `undefined`) removed.
-
-#### arr.concat() _(es5-ext/array/#/concat)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.concat).  
-ES6's version of `concat`. Supports `isConcatSpreadable` symbol, and returns array of same type as the context.
-
-#### arr.contains(searchElement[, position]) _(es5-ext/array/#/contains)_
-
-Whether list contains the given value.
-
-#### arr.copyWithin(target, start[, end]) _(es5-ext/array/#/copy-within)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.copywithin).  
-
-#### arr.diff(other) _(es5-ext/array/#/diff)_
-
-Returns the array of elements that are present in context list but not present in other list.
-
-#### arr.eIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-index-of)_
-
-_egal_ version of `indexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
-
-#### arr.eLastIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-last-index-of)_
-
-_egal_ version of `lastIndexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
-
-#### arr.entries() _(es5-ext/array/#/entries)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.entries).  
-Returns iterator object, which traverses the array. Each value is represented with an array, where first value is an index and second is corresponding to index value.
-
-#### arr.exclusion([…lists]]) _(es5-ext/array/#/exclusion)_
-
-Returns the array of elements that are found only in one of the lists (either context list or list provided in arguments).
-
-#### arr.fill(value[, start, end]) _(es5-ext/array/#/fill)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.fill).  
-
-#### arr.filter(callback[, thisArg]) _(es5-ext/array/#/filter)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.filter).  
-ES6's version of `filter`, returns array of same type as the context.
-
-#### arr.find(predicate[, thisArg]) _(es5-ext/array/#/find)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.find).  
-Return first element for which given function returns true
-
-#### arr.findIndex(predicate[, thisArg]) _(es5-ext/array/#/find-index)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.findindex).  
-Return first index for which given function returns true
-
-#### arr.first() _(es5-ext/array/#/first)_
-
-Returns value for first defined index
-
-#### arr.firstIndex() _(es5-ext/array/#/first-index)_
-
-Returns first declared index of the array
-
-#### arr.flatten() _(es5-ext/array/#/flatten)_
-
-Returns flattened version of the array
-
-#### arr.forEachRight(cb[, thisArg]) _(es5-ext/array/#/for-each-right)_
-
-`forEach` starting from last element
-
-#### arr.group(cb[, thisArg]) _(es5-ext/array/#/group)_
-
-Group list elements by value returned by _cb_ function
-
-#### arr.indexesOf(searchElement[, fromIndex]) _(es5-ext/array/#/indexes-of)_
-
-Returns array of all indexes of given value
-
-#### arr.intersection([…lists]) _(es5-ext/array/#/intersection)_
-
-Computes the array of values that are the intersection of all lists (context list and lists given in arguments)
-
-#### arr.isCopy(other) _(es5-ext/array/#/is-copy)_
-
-Returns true if both context and _other_ lists have same content
-
-#### arr.isUniq() _(es5-ext/array/#/is-uniq)_
-
-Returns true if all values in array are unique
-
-#### arr.keys() _(es5-ext/array/#/keys)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.keys).  
-Returns iterator object, which traverses all array indexes.
-
-#### arr.last() _(es5-ext/array/#/last)_
-
-Returns value of last defined index
-
-#### arr.lastIndex() _(es5-ext/array/#/last)_
-
-Returns last defined index of the array
-
-#### arr.map(callback[, thisArg]) _(es5-ext/array/#/map)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.map).  
-ES6's version of `map`, returns array of same type as the context.
-
-#### arr.remove(value[, …valuen]) _(es5-ext/array/#/remove)_
-
-Remove values from the array
-
-#### arr.separate(sep) _(es5-ext/array/#/separate)_
-
-Returns array with items separated with `sep` value
-
-#### arr.slice(callback[, thisArg]) _(es5-ext/array/#/slice)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.slice).  
-ES6's version of `slice`, returns array of same type as the context.
-
-#### arr.someRight(cb[, thisArg]) _(es5-ext/array/#/someRight)_
-
-`some` starting from last element
-
-#### arr.splice(callback[, thisArg]) _(es5-ext/array/#/splice)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.splice).  
-ES6's version of `splice`, returns array of same type as the context.
-
-#### arr.uniq() _(es5-ext/array/#/uniq)_
-
-Returns duplicate-free version of the array
-
-#### arr.values() _(es5-ext/array/#/values)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.values).  
-Returns iterator object which traverses all array values.
-
-#### arr[@@iterator] _(es5-ext/array/#/@@iterator)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype-@@iterator).  
-Returns iterator object which traverses all array values.
-
-### Boolean Constructor extensions
-
-#### isBoolean(x) _(es5-ext/boolean/is-boolean)_
-
-Whether value is boolean
-
-### Date Constructor extensions
-
-#### isDate(x) _(es5-ext/date/is-date)_
-
-Whether value is date instance
-
-#### validDate(x) _(es5-ext/date/valid-date)_
-
-If given object is not date throw TypeError in other case return it.
-
-### Date Prototype extensions
-
-#### date.copy(date) _(es5-ext/date/#/copy)_
-
-Returns a copy of the date object
-
-#### date.daysInMonth() _(es5-ext/date/#/days-in-month)_
-
-Returns number of days of date's month
-
-#### date.floorDay() _(es5-ext/date/#/floor-day)_
-
-Sets the date time to 00:00:00.000
-
-#### date.floorMonth() _(es5-ext/date/#/floor-month)_
-
-Sets date day to 1 and date time to 00:00:00.000
-
-#### date.floorYear() _(es5-ext/date/#/floor-year)_
-
-Sets date month to 0, day to 1 and date time to 00:00:00.000
-
-#### date.format(pattern) _(es5-ext/date/#/format)_
-
-Formats date up to given string. Supported patterns:
-
-* `%Y` - Year with century, 1999, 2003
-* `%y` - Year without century, 99, 03
-* `%m` - Month, 01..12
-* `%d` - Day of the month 01..31
-* `%H` - Hour (24-hour clock), 00..23
-* `%M` - Minute, 00..59
-* `%S` - Second, 00..59
-* `%L` - Milliseconds, 000..999
-
-### Error Constructor extensions
-
-#### custom(message/*, code, ext*/) _(es5-ext/error/custom)_
-
-Creates custom error object, optinally extended with `code` and other extension properties (provided with `ext` object)  
-
-#### isError(x) _(es5-ext/error/is-error)_
-
-Whether value is an error (instance of `Error`).  
-
-#### validError(x) _(es5-ext/error/valid-error)_
-
-If given object is not error throw TypeError in other case return it.
-
-### Error Prototype extensions
-
-#### err.throw() _(es5-ext/error/#/throw)_
-
-Throws error
-
-### Function Constructor extensions
-
-Some of the functions were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
-
-#### constant(x) _(es5-ext/function/constant)_
-
-Returns a constant function that returns pregiven argument
-
-_k(x)(y)  =def  x_
-
-#### identity(x) _(es5-ext/function/identity)_
-
-Identity function. Returns first argument
-
-_i(x)  =def  x_
-
-#### invoke(name[, …args]) _(es5-ext/function/invoke)_
-
-Returns a function that takes an object as an argument, and applies object's
-_name_ method to arguments.  
-_name_ can be name of the method or method itself.
-
-_invoke(name, …args)(object, …args2)  =def  object\[name\]\(…args, …args2\)_
-
-#### isArguments(x) _(es5-ext/function/is-arguments)_
-
-Whether value is arguments object
-
-#### isFunction(arg) _(es5-ext/function/is-function)_
-
-Wether value is instance of function
-
-#### noop() _(es5-ext/function/noop)_
-
-No operation function
-
-#### pluck(name) _(es5-ext/function/pluck)_
-
-Returns a function that takes an object, and returns the value of its _name_
-property
-
-_pluck(name)(obj)  =def  obj[name]_
-
-#### validFunction(arg) _(es5-ext/function/valid-function)_
-
-If given object is not function throw TypeError in other case return it.
-
-### Function Prototype extensions
-
-Some of the methods were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
-
-#### fn.compose([…fns]) _(es5-ext/function/#/compose)_
-
-Applies the functions in reverse argument-list order.
-
-_f1.compose(f2, f3, f4)(…args)  =def  f1(f2(f3(f4(…arg))))_
-
-#### fn.copy() _(es5-ext/function/#/copy)_
-
-Produces copy of given function
-
-#### fn.curry([n]) _(es5-ext/function/#/curry)_
-
-Invoking the function returned by this function only _n_ arguments are passed to the underlying function. If the underlying function is not saturated, the result is a function that passes all its arguments to the underlying function.  
-If _n_ is not provided then it defaults to context function length
-
-_f.curry(4)(arg1, arg2)(arg3)(arg4)  =def  f(arg1, args2, arg3, arg4)_
-
-#### fn.lock([…args]) _(es5-ext/function/#/lock)_
-
-Returns a function that applies the underlying function to _args_, and ignores its own arguments.
-
-_f.lock(…args)(…args2)  =def  f(…args)_
-
-_Named after it's counterpart in Google Closure_
-
-#### fn.not() _(es5-ext/function/#/not)_
-
-Returns a function that returns boolean negation of value returned by underlying function.
-
-_f.not()(…args)  =def !f(…args)_
-
-#### fn.partial([…args]) _(es5-ext/function/#/partial)_
-
-Returns a function that when called will behave like context function called with initially passed arguments. If more arguments are suplilied, they are appended to initial args.
-
-_f.partial(…args1)(…args2)  =def  f(…args1, …args2)_
-
-#### fn.spread() _(es5-ext/function/#/spread)_
-
-Returns a function that applies underlying function with first list argument
-
-_f.match()(args)  =def  f.apply(null, args)_
-
-#### fn.toStringTokens() _(es5-ext/function/#/to-string-tokens)_
-
-Serializes function into two (arguments and body) string tokens. Result is plain object with `args` and `body` properties.
-
-### Math extensions
-
-#### acosh(x) _(es5-ext/math/acosh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.acosh).  
-
-#### asinh(x) _(es5-ext/math/asinh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.asinh).  
-
-#### atanh(x) _(es5-ext/math/atanh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.atanh).  
-
-#### cbrt(x) _(es5-ext/math/cbrt)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cbrt).  
-
-#### clz32(x) _(es5-ext/math/clz32)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.clz32).  
-
-#### cosh(x) _(es5-ext/math/cosh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cosh).  
-
-#### expm1(x) _(es5-ext/math/expm1)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.expm1).  
-
-#### fround(x) _(es5-ext/math/fround)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.fround).  
-
-#### hypot([…values]) _(es5-ext/math/hypot)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.hypot).  
-
-#### imul(x, y) _(es5-ext/math/imul)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.imul).  
-
-#### log1p(x) _(es5-ext/math/log1p)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log1p).  
-
-#### log2(x) _(es5-ext/math/log2)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log2).  
-
-#### log10(x) _(es5-ext/math/log10)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log10).  
-
-#### sign(x) _(es5-ext/math/sign)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sign).  
-
-#### sinh(x) _(es5-ext/math/sinh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sinh).  
-
-#### tanh(x) _(es5-ext/math/tanh)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.tanh).  
-
-#### trunc(x) _(es5-ext/math/trunc)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.trunc).  
-
-### Number Constructor extensions
-
-#### EPSILON _(es5-ext/number/epsilon)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.epsilon).  
-
-The difference between 1 and the smallest value greater than 1 that is representable as a Number value, which is approximately 2.2204460492503130808472633361816 x 10-16.
-
-#### isFinite(x) _(es5-ext/number/is-finite)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).  
-Whether value is finite. Differs from global isNaN that it doesn't do type coercion.
-
-#### isInteger(x) _(es5-ext/number/is-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger).  
-Whether value is integer.
-
-#### isNaN(x) _(es5-ext/number/is-nan)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isnan).  
-Whether value is NaN. Differs from global isNaN that it doesn't do type coercion.
-
-#### isNumber(x) _(es5-ext/number/is-number)_
-
-Whether given value is number
-
-#### isSafeInteger(x) _(es5-ext/number/is-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.issafeinteger).  
-
-#### MAX_SAFE_INTEGER _(es5-ext/number/max-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.maxsafeinteger).  
-The value of Number.MAX_SAFE_INTEGER is 9007199254740991.
-
-#### MIN_SAFE_INTEGER _(es5-ext/number/min-safe-integer)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.minsafeinteger).  
-The value of Number.MIN_SAFE_INTEGER is -9007199254740991 (253-1).
-
-#### toInteger(x) _(es5-ext/number/to-integer)_
-
-Converts value to integer
-
-#### toPosInteger(x) _(es5-ext/number/to-pos-integer)_
-
-Converts value to positive integer. If provided value is less than 0, then 0 is returned
-
-#### toUint32(x) _(es5-ext/number/to-uint32)_
-
-Converts value to unsigned 32 bit integer. This type is used for array lengths.
-See: http://www.2ality.com/2012/02/js-integers.html
-
-### Number Prototype extensions
-
-#### num.pad(length[, precision]) _(es5-ext/number/#/pad)_
-
-Pad given number with zeros. Returns string
-
-### Object Constructor extensions
-
-#### assign(target, source[, …sourcen]) _(es5-ext/object/assign)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).  
-Extend _target_ by enumerable own properties of other objects. If properties are already set on target object, they will be overwritten.
-
-#### clear(obj) _(es5-ext/object/clear)_
-
-Remove all enumerable own properties of the object
-
-#### compact(obj) _(es5-ext/object/compact)_
-
-Returns copy of the object with all enumerable properties that have no falsy values
-
-#### compare(obj1, obj2) _(es5-ext/object/compare)_
-
-Universal cross-type compare function. To be used for e.g. array sort.
-
-#### copy(obj) _(es5-ext/object/copy)_
-
-Returns copy of the object with all enumerable properties.
-
-#### copyDeep(obj) _(es5-ext/object/copy-deep)_
-
-Returns deep copy of the object with all enumerable properties.
-
-#### count(obj) _(es5-ext/object/count)_
-
-Counts number of enumerable own properties on object
-
-#### create(obj[, properties]) _(es5-ext/object/create)_
-
-`Object.create` alternative that provides workaround for [V8 issue](http://code.google.com/p/v8/issues/detail?id=2804).
-
-When `null` is provided as a prototype, it's substituted with specially prepared object that derives from Object.prototype but has all Object.prototype properties shadowed with undefined.
-
-It's quirky solution that allows us to have plain objects with no truthy properties but with turnable prototype.
-
-Use only for objects that you plan to switch prototypes of and be aware of limitations of this workaround.
-
-#### eq(x, y) _(es5-ext/object/eq)_
-
-Whether two values are equal, using [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
-
-#### every(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/every)_
-
-Analogous to Array.prototype.every. Returns true if every key-value pair in this object satisfies the provided testing function.  
-Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### filter(obj, cb[, thisArg]) _(es5-ext/object/filter)_
-
-Analogous to Array.prototype.filter. Returns new object with properites for which _cb_ function returned truthy value.
-
-#### firstKey(obj) _(es5-ext/object/first-key)_
-
-Returns first enumerable key of the object, as keys are unordered by specification, it can be any key of an object.
-
-#### flatten(obj) _(es5-ext/object/flatten)_
-
-Returns new object, with flatten properties of input object
-
-_flatten({ a: { b: 1 }, c: { d: 1 } })  =def  { b: 1, d: 1 }_
-
-#### forEach(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/for-each)_
-
-Analogous to Array.prototype.forEach. Calls a function for each key-value pair found in object
-Optionally _compareFn_ can be provided which assures that properties are iterated in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### getPropertyNames() _(es5-ext/object/get-property-names)_
-
-Get all (not just own) property names of the object
-
-#### is(x, y) _(es5-ext/object/is)_
-
-Whether two values are equal, using [_SameValue_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
-
-#### isArrayLike(x) _(es5-ext/object/is-array-like)_
-
-Whether object is array-like object
-
-#### isCopy(x, y) _(es5-ext/object/is-copy)_
-
-Two values are considered a copy of same value when all of their own enumerable properties have same values.
-
-#### isCopyDeep(x, y) _(es5-ext/object/is-copy-deep)_
-
-Deep comparision of objects
-
-#### isEmpty(obj) _(es5-ext/object/is-empty)_
-
-True if object doesn't have any own enumerable property
-
-#### isObject(arg) _(es5-ext/object/is-object)_
-
-Whether value is not primitive
-
-#### isPlainObject(arg) _(es5-ext/object/is-plain-object)_
-
-Whether object is plain object, its protototype should be Object.prototype and it cannot be host object.
-
-#### keyOf(obj, searchValue) _(es5-ext/object/key-of)_
-
-Search object for value
-
-#### keys(obj) _(es5-ext/object/keys)_
-
-[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys).  
-ES6's version of `keys`, doesn't throw on primitive input
-
-#### map(obj, cb[, thisArg]) _(es5-ext/object/map)_
-
-Analogous to Array.prototype.map. Creates a new object with properties which values are results of calling a provided function on every key-value pair in this object.
-
-#### mapKeys(obj, cb[, thisArg]) _(es5-ext/object/map-keys)_
-
-Create new object with same values, but remapped keys
-
-#### mixin(target, source) _(es5-ext/object/mixin)_
-
-Extend _target_ by all own properties of other objects. Properties found in both objects will be overwritten (unless they're not configurable and cannot be overwritten).
-_It was for a moment part of ECMAScript 6 draft._
-
-#### mixinPrototypes(target, …source]) _(es5-ext/object/mixin-prototypes)_
-
-Extends _target_, with all source and source's prototype properties.
-Useful as an alternative for `setPrototypeOf` in environments in which it cannot be shimmed (no `__proto__` support).
-
-#### normalizeOptions(options) _(es5-ext/object/normalize-options)_
-
-Normalizes options object into flat plain object.  
-
-Useful for functions in which we either need to keep options object for future reference or need to modify it for internal use.
-
-- It never returns input `options` object back (always a copy is created)
-- `options` can be undefined in such case empty plain object is returned.
-- Copies all enumerable properties found down prototype chain.
-
-#### primitiveSet([…names]) _(es5-ext/object/primitive-set)_
-
-Creates `null` prototype based plain object, and sets on it all property names provided in arguments to true.
-
-#### safeTraverse(obj[, …names]) _(es5-ext/object/safe-traverse)_
-
-Safe navigation of object properties. See http://wiki.ecmascript.org/doku.php?id=strawman:existential_operator
-
-#### serialize(value) _(es5-ext/object/serialize)_
-
-Serialize value into string. Differs from [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify) that it serializes also dates, functions and regular expresssions.
-
-#### setPrototypeOf(object, proto) _(es5-ext/object/set-prototype-of)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.setprototypeof).  
-If native version is not provided, it depends on existence of `__proto__` functionality, if it's missing, `null` instead of function is exposed.
-
-#### some(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/some)_
-
-Analogous to Array.prototype.some Returns true if any key-value pair satisfies the provided
-testing function.  
-Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### toArray(obj[, cb[, thisArg[, compareFn]]]) _(es5-ext/object/to-array)_
-
-Creates an array of results of calling a provided function on every key-value pair in this object.  
-Optionally _compareFn_ can be provided which assures that results are added in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
-
-#### unserialize(str) _(es5-ext/object/unserialize)_
-
-Userializes value previously serialized with [serialize](#serializevalue-es5-extobjectserialize)
-
-#### validCallable(x) _(es5-ext/object/valid-callable)_
-
-If given object is not callable throw TypeError in other case return it.
-
-#### validObject(x) _(es5-ext/object/valid-object)_
-
-Throws error if given value is not an object, otherwise it is returned.
-
-#### validValue(x) _(es5-ext/object/valid-value)_
-
-Throws error if given value is `null` or `undefined`, otherwise returns value.
-
-### RegExp Constructor extensions
-
-#### escape(str) _(es5-ext/reg-exp/escape)_
-
-Escapes string to be used in regular expression
-
-#### isRegExp(x) _(es5-ext/reg-exp/is-reg-exp)_
-
-Whether object is regular expression
-
-#### validRegExp(x) _(es5-ext/reg-exp/valid-reg-exp)_
-
-If object is regular expression it is returned, otherwise TypeError is thrown.
-
-### RegExp Prototype extensions
-
-#### re.isSticky(x) _(es5-ext/reg-exp/#/is-sticky)_
-
-Whether regular expression has `sticky` flag.
-
-It's to be used as counterpart to [regExp.sticky](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.sticky) if it's not implemented.
-
-#### re.isUnicode(x) _(es5-ext/reg-exp/#/is-unicode)_
-
-Whether regular expression has `unicode` flag.
-
-It's to be used as counterpart to [regExp.unicode](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.unicode) if it's not implemented.
-
-#### re.match(string) _(es5-ext/reg-exp/#/match)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.match).  
-
-#### re.replace(string, replaceValue) _(es5-ext/reg-exp/#/replace)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.replace).  
-
-#### re.search(string) _(es5-ext/reg-exp/#/search)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.search).  
-
-#### re.split(string) _(es5-ext/reg-exp/#/search)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.split).  
-
-#### re.sticky _(es5-ext/reg-exp/#/sticky/implement)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.sticky).  
-It's a getter, so only `implement` and `is-implemented` modules are provided.
-
-#### re.unicode _(es5-ext/reg-exp/#/unicode/implement)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.unicode).  
-It's a getter, so only `implement` and `is-implemented` modules are provided.
-
-### String Constructor extensions
-
-#### formatMethod(fMap) _(es5-ext/string/format-method)_
-
-Creates format method. It's used e.g. to create `Date.prototype.format` method
-
-#### fromCodePoint([…codePoints]) _(es5-ext/string/from-code-point)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.fromcodepoint)
-
-#### isString(x) _(es5-ext/string/is-string)_
-
-Whether object is string
-
-#### randomUniq() _(es5-ext/string/random-uniq)_
-
-Returns randomly generated id, with guarantee of local uniqueness (no same id will be returned twice)
-
-#### raw(callSite[, …substitutions]) _(es5-ext/string/raw)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.raw)
-
-### String Prototype extensions
-
-#### str.at(pos) _(es5-ext/string/#/at)_
-
-_Proposed for ECMAScript 6/7 standard, but not (yet) in a draft_
-
-Returns a string at given position in Unicode-safe manner.
-Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.at).
-
-#### str.camelToHyphen() _(es5-ext/string/#/camel-to-hyphen)_
-
-Convert camelCase string to hyphen separated, e.g. one-two-three -> oneTwoThree.
-Useful when converting names from js property convention into filename convention.
-
-#### str.capitalize() _(es5-ext/string/#/capitalize)_
-
-Capitalize first character of a string
-
-#### str.caseInsensitiveCompare(str) _(es5-ext/string/#/case-insensitive-compare)_
-
-Case insensitive compare
-
-#### str.codePointAt(pos) _(es5-ext/string/#/code-point-at)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.codepointat)
-
-Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.codePointAt).
-
-#### str.contains(searchString[, position]) _(es5-ext/string/#/contains)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.contains)
-
-Whether string contains given string.
-
-#### str.endsWith(searchString[, endPosition]) _(es5-ext/string/#/ends-with)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.endswith).  
-Whether strings ends with given string
-
-#### str.hyphenToCamel() _(es5-ext/string/#/hyphen-to-camel)_
-
-Convert hyphen separated string to camelCase, e.g. one-two-three -> oneTwoThree.
-Useful when converting names from filename convention to js property name convention.
-
-#### str.indent(str[, count]) _(es5-ext/string/#/indent)_
-
-Indents each line with provided _str_ (if _count_ given then _str_ is repeated _count_ times).
-
-#### str.last() _(es5-ext/string/#/last)_
-
-Return last character
-
-#### str.normalize([form]) _(es5-ext/string/#/normalize)_
-
-[_Introduced with ECMAScript 6_](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize).  
-Returns the Unicode Normalization Form of a given string.  
-Based on Matsuza's version. Code used for integrated shim can be found at [github.com/walling/unorm](https://github.com/walling/unorm/blob/master/lib/unorm.js)
-
-#### str.pad(fill[, length]) _(es5-ext/string/#/pad)_
-
-Pad string with _fill_.
-If _length_ si given than _fill_ is reapated _length_ times.
-If _length_ is negative then pad is applied from right.
-
-#### str.repeat(n) _(es5-ext/string/#/repeat)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.repeat).  
-Repeat given string _n_ times
-
-#### str.plainReplace(search, replace) _(es5-ext/string/#/plain-replace)_
-
-Simple `replace` version. Doesn't support regular expressions. Replaces just first occurrence of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
-
-#### str.plainReplaceAll(search, replace) _(es5-ext/string/#/plain-replace-all)_
-
-Simple `replace` version. Doesn't support regular expressions. Replaces all occurrences of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
-
-#### str.startsWith(searchString[, position]) _(es5-ext/string/#/starts-with)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.startswith).  
-Whether strings starts with given string
-
-#### str[@@iterator] _(es5-ext/string/#/@@iterator)_
-
-[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype-@@iterator).  
-Returns iterator object which traverses all string characters (with respect to unicode symbols)
-
-### Tests [![Build Status](https://travis-ci.org/medikoo/es5-ext.png)](https://travis-ci.org/medikoo/es5-ext)
-
-       $ npm test
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 0f714a1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, require('es6-symbol').iterator, { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/index.js
deleted file mode 100644 (file)
index a694626..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype[require('es6-symbol').iterator] : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 72eb1f8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function () {
-       var arr = ['foo', 1], iterator, result;
-       if (typeof arr[iteratorSymbol] !== 'function') return false;
-       iterator = arr[iteratorSymbol]();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 'foo') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/@@iterator/shim.js
deleted file mode 100644 (file)
index ff295df..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('../values/shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/_compare-by-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/_compare-by-length.js
deleted file mode 100644 (file)
index d8343ce..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Used internally to sort array of lists by length
-
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer');
-
-module.exports = function (a, b) {
-       return toPosInt(a.length) - toPosInt(b.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/binary-search.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/binary-search.js
deleted file mode 100644 (file)
index 8eb4567..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , floor    = Math.floor;
-
-module.exports = function (compareFn) {
-       var length, low, high, middle;
-
-       value(this);
-       callable(compareFn);
-
-       length = toPosInt(this.length);
-       low = 0;
-       high = length - 1;
-
-       while (low <= high) {
-               middle = floor((low + high) / 2);
-               if (compareFn(this[middle]) < 0) high = middle - 1;
-               else low = middle + 1;
-       }
-
-       if (high < 0) return 0;
-       if (high >= length) return length - 1;
-       return high;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/clear.js
deleted file mode 100644 (file)
index 3587bdf..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-// Inspired by Google Closure:
-// http://closure-library.googlecode.com/svn/docs/
-// closure_goog_array_array.js.html#goog.array.clear
-
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       value(this).length = 0;
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/compact.js
deleted file mode 100644 (file)
index d529d5a..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Inspired by: http://documentcloud.github.com/underscore/#compact
-
-'use strict';
-
-var filter = Array.prototype.filter;
-
-module.exports = function () {
-       return filter.call(this, function (val) { return val != null; });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/implement.js
deleted file mode 100644 (file)
index 80c67cb..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'concat', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/index.js
deleted file mode 100644 (file)
index db205ea..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.concat : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/is-implemented.js
deleted file mode 100644 (file)
index cab8bc9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).concat('foo') instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/concat/shim.js
deleted file mode 100644 (file)
index 8b28e4a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , toPosInt     = require('../../../number/to-pos-integer')
-  , isObject     = require('../../../object/is-object')
-
-  , isArray = Array.isArray, concat = Array.prototype.concat
-  , forEach = Array.prototype.forEach
-
-  , isSpreadable;
-
-isSpreadable = function (value) {
-       if (!value) return false;
-       if (!isObject(value)) return false;
-       if (value['@@isConcatSpreadable'] !== undefined) {
-               return Boolean(value['@@isConcatSpreadable']);
-       }
-       return isArray(value);
-};
-
-module.exports = function (item/*, …items*/) {
-       var result;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return concat.apply(this, arguments);
-       }
-       result = new this.constructor(this.length);
-       forEach.call(this, function (val, i) { result[i] = val; });
-       forEach.call(arguments, function (arg) {
-               var base;
-               if (isSpreadable(arg)) {
-                       base = result.length;
-                       result.length += toPosInt(arg.length);
-                       forEach.call(arg, function (val, i) { result[base + i] = val; });
-                       return;
-               }
-               result.push(arg);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/contains.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/contains.js
deleted file mode 100644 (file)
index 4a2f9f6..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of');
-
-module.exports = function (searchElement/*, position*/) {
-       return indexOf.call(this, searchElement, arguments[1]) > -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/implement.js
deleted file mode 100644 (file)
index eedbad7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'copyWithin',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/index.js
deleted file mode 100644 (file)
index bb89d0b..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.copyWithin : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/is-implemented.js
deleted file mode 100644 (file)
index 8f17e06..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5];
-       if (typeof arr.copyWithin !== 'function') return false;
-       return String(arr.copyWithin(1, 3)) === '1,4,5,4,5';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/copy-within/shim.js
deleted file mode 100644 (file)
index c0bfb8b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-// Taken from: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , toPosInt   = require('../../../number/to-pos-integer')
-  , validValue = require('../../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , max = Math.max, min = Math.min;
-
-module.exports = function (target, start/*, end*/) {
-       var o = validValue(this), end = arguments[2], l = toPosInt(o.length)
-         , to, from, fin, count, direction;
-
-       target = toInteger(target);
-       start = toInteger(start);
-       end = (end === undefined) ? l : toInteger(end);
-
-       to = target < 0 ? max(l + target, 0) : min(target, l);
-       from = start < 0 ? max(l + start, 0) : min(start, l);
-       fin = end < 0 ? max(l + end, 0) : min(end, l);
-       count = min(fin - from, l - to);
-       direction = 1;
-
-       if ((from < to) && (to < (from + count))) {
-               direction = -1;
-               from += count - 1;
-               to += count - 1;
-       }
-       while (count > 0) {
-               if (hasOwnProperty.call(o, from)) o[to] = o[from];
-               else delete o[from];
-               from += direction;
-               to += direction;
-               count -= 1;
-       }
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/diff.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/diff.js
deleted file mode 100644 (file)
index a1f9541..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , contains = require('./contains')
-
-  , filter = Array.prototype.filter;
-
-module.exports = function (other) {
-       (value(this) && value(other));
-       return filter.call(this, function (item) {
-               return !contains.call(other, item);
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-index-of.js
deleted file mode 100644 (file)
index 80864d0..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , indexOf = Array.prototype.indexOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (searchElement/*, fromIndex*/) {
-       var i, l, fromIndex, val;
-       if (searchElement === searchElement) { //jslint: ignore
-               return indexOf.apply(this, arguments);
-       }
-
-       l = toPosInt(value(this).length);
-       fromIndex = arguments[1];
-       if (isNaN(fromIndex)) fromIndex = 0;
-       else if (fromIndex >= 0) fromIndex = floor(fromIndex);
-       else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
-
-       for (i = fromIndex; i < l; ++i) {
-               if (hasOwnProperty.call(this, i)) {
-                       val = this[i];
-                       if (val !== val) return i; //jslint: ignore
-               }
-       }
-       return -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-last-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/e-last-index-of.js
deleted file mode 100644 (file)
index 4fc536b..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , lastIndexOf = Array.prototype.lastIndexOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (searchElement/*, fromIndex*/) {
-       var i, fromIndex, val;
-       if (searchElement === searchElement) { //jslint: ignore
-               return lastIndexOf.apply(this, arguments);
-       }
-
-       value(this);
-       fromIndex = arguments[1];
-       if (isNaN(fromIndex)) fromIndex = (toPosInt(this.length) - 1);
-       else if (fromIndex >= 0) fromIndex = floor(fromIndex);
-       else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
-
-       for (i = fromIndex; i >= 0; --i) {
-               if (hasOwnProperty.call(this, i)) {
-                       val = this[i];
-                       if (val !== val) return i; //jslint: ignore
-               }
-       }
-       return -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/implement.js
deleted file mode 100644 (file)
index 490de60..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'entries', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/index.js
deleted file mode 100644 (file)
index 292792c..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.entries : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/is-implemented.js
deleted file mode 100644 (file)
index e186c17..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 'foo'], iterator, result;
-       if (typeof arr.entries !== 'function') return false;
-       iterator = arr.entries();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result || !result.value) return false;
-       if (result.value[0] !== 0) return false;
-       if (result.value[1] !== 1) return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/entries/shim.js
deleted file mode 100644 (file)
index c052b53..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'key+value'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/exclusion.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/exclusion.js
deleted file mode 100644 (file)
index f08adc8..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , aFrom    = require('../from')
-  , toArray  = require('../to-array')
-  , contains = require('./contains')
-  , byLength = require('./_compare-by-length')
-
-  , filter = Array.prototype.filter, push = Array.prototype.push;
-
-module.exports = function (/*…lists*/) {
-       var lists, seen, result;
-       if (!arguments.length) return aFrom(this);
-       push.apply(lists = [this], arguments);
-       lists.forEach(value);
-       seen = [];
-       result = [];
-       lists.sort(byLength).forEach(function (list) {
-               result = result.filter(function (item) {
-                       return !contains.call(list, item);
-               }).concat(filter.call(list, function (x) {
-                       return !contains.call(seen, x);
-               }));
-               push.apply(seen, toArray(list));
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/implement.js
deleted file mode 100644 (file)
index 2251191..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'fill', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/index.js
deleted file mode 100644 (file)
index 36c1f66..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.fill : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/is-implemented.js
deleted file mode 100644 (file)
index b8e5468..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.fill !== 'function') return false;
-       return String(arr.fill(-1, -3)) === '1,2,3,-1,-1,-1';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/fill/shim.js
deleted file mode 100644 (file)
index 45823be..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-// Taken from: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , toPosInt   = require('../../../number/to-pos-integer')
-  , validValue = require('../../../object/valid-value')
-
-  , max = Math.max, min = Math.min;
-
-module.exports = function (value/*, start, end*/) {
-       var o = validValue(this), start = arguments[1], end = arguments[2]
-         , l = toPosInt(o.length), relativeStart, i;
-
-       start = (start === undefined) ? 0 : toInteger(start);
-       end = (end === undefined) ? l : toInteger(end);
-
-       relativeStart = start < 0 ? max(l + start, 0) : min(start, l);
-       for (i = relativeStart; i < l && i < end; ++i) o[i] = value;
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/implement.js
deleted file mode 100644 (file)
index 090c5f1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'filter', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/index.js
deleted file mode 100644 (file)
index bcf0268..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.filter : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/is-implemented.js
deleted file mode 100644 (file)
index 5577273..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe')
-
-  , pass = function () { return true; };
-
-module.exports = function () {
-       return (new SubArray()).filter(pass) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/filter/shim.js
deleted file mode 100644 (file)
index b0116de..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , callable     = require('../../../object/valid-callable')
-
-  , isArray = Array.isArray, filter = Array.prototype.filter
-  , forEach = Array.prototype.forEach, call = Function.prototype.call;
-
-module.exports = function (callbackFn/*, thisArg*/) {
-       var result, thisArg, i;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return filter.apply(this, arguments);
-       }
-       callable(callbackFn);
-       thisArg = arguments[1];
-       result = new this.constructor();
-       i = 0;
-       forEach.call(this, function (val, j, self) {
-               if (call.call(callbackFn, thisArg, val, j, self)) result[i++] = val;
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/implement.js
deleted file mode 100644 (file)
index 556cb84..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'findIndex',
-               { value: require('./shim'),
-                       configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/index.js
deleted file mode 100644 (file)
index 03a987e..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.findIndex : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/is-implemented.js
deleted file mode 100644 (file)
index dbd3c81..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var fn = function (x) { return x > 3; };
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.findIndex !== 'function') return false;
-       return arr.findIndex(fn) === 3;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find-index/shim.js
deleted file mode 100644 (file)
index 957939f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var callable = require('../../../object/valid-callable')
-  , value    = require('../../../object/valid-value')
-
-  , some = Array.prototype.some, apply = Function.prototype.apply;
-
-module.exports = function (predicate/*, thisArg*/) {
-       var k, self;
-       self = Object(value(this));
-       callable(predicate);
-
-       return some.call(self, function (value, index) {
-               if (apply.call(predicate, this, arguments)) {
-                       k = index;
-                       return true;
-               }
-               return false;
-       }, arguments[1]) ? k : -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/implement.js
deleted file mode 100644 (file)
index 0f37104..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'find', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/index.js
deleted file mode 100644 (file)
index 96819d0..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.find : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/is-implemented.js
deleted file mode 100644 (file)
index cc7ec77..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var fn = function (x) { return x > 3; };
-
-module.exports = function () {
-       var arr = [1, 2, 3, 4, 5, 6];
-       if (typeof arr.find !== 'function') return false;
-       return arr.find(fn) === 4;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/find/shim.js
deleted file mode 100644 (file)
index c7ee906..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var findIndex = require('../find-index/shim');
-
-module.exports = function (predicate/*, thisArg*/) {
-       var index = findIndex.apply(this, arguments);
-       return (index === -1) ? undefined : this[index];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first-index.js
deleted file mode 100644 (file)
index 7a9e4c3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function () {
-       var i, l;
-       if (!(l = toPosInt(value(this).length))) return null;
-       i = 0;
-       while (!hasOwnProperty.call(this, i)) {
-               if (++i === l) return null;
-       }
-       return i;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/first.js
deleted file mode 100644 (file)
index 11df571..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var firstIndex = require('./first-index');
-
-module.exports = function () {
-       var i;
-       if ((i = firstIndex.call(this)) !== null) return this[i];
-       return undefined;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/flatten.js
deleted file mode 100644 (file)
index c95407d..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray, forEach = Array.prototype.forEach
-  , push = Array.prototype.push;
-
-module.exports = function flatten() {
-       var r = [];
-       forEach.call(this, function (x) {
-               push.apply(r, isArray(x) ? flatten.call(x) : [x]);
-       });
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/for-each-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/for-each-right.js
deleted file mode 100644 (file)
index 2f0ffae..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var i, self, thisArg;
-
-       self = Object(value(this));
-       callable(cb);
-       thisArg = arguments[1];
-
-       for (i = toPosInt(self.length); i >= 0; --i) {
-               if (hasOwnProperty.call(self, i)) call.call(cb, thisArg, self[i], i, self);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/group.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/group.js
deleted file mode 100644 (file)
index fbb178c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-// Inspired by Underscore's groupBy:
-// http://documentcloud.github.com/underscore/#groupBy
-
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , forEach = Array.prototype.forEach, apply = Function.prototype.apply;
-
-module.exports = function (cb/*, thisArg*/) {
-       var r;
-
-       (value(this) && callable(cb));
-
-       r = {};
-       forEach.call(this, function (v) {
-               var key = apply.call(cb, this, arguments);
-               if (!r.hasOwnProperty(key)) r[key] = [];
-               r[key].push(v);
-       }, arguments[1]);
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/index.js
deleted file mode 100644 (file)
index f5b788e..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-'use strict';
-
-module.exports = {
-       binarySearch:   require('./binary-search'),
-       clear:          require('./clear'),
-       compact:        require('./compact'),
-       concat:         require('./concat'),
-       contains:       require('./contains'),
-       copyWithin:     require('./copy-within'),
-       diff:           require('./diff'),
-       eIndexOf:       require('./e-index-of'),
-       eLastIndexOf:   require('./e-last-index-of'),
-       entries:        require('./entries'),
-       exclusion:      require('./exclusion'),
-       fill:           require('./fill'),
-       filter:         require('./filter'),
-       find:           require('./find'),
-       findIndex:      require('./find-index'),
-       first:          require('./first'),
-       firstIndex:     require('./first-index'),
-       flatten:        require('./flatten'),
-       forEachRight:   require('./for-each-right'),
-       keys:           require('./keys'),
-       group:          require('./group'),
-       indexesOf:      require('./indexes-of'),
-       intersection:   require('./intersection'),
-       isCopy:         require('./is-copy'),
-       isUniq:         require('./is-uniq'),
-       last:           require('./last'),
-       lastIndex:      require('./last-index'),
-       map:            require('./map'),
-       remove:         require('./remove'),
-       separate:       require('./separate'),
-       slice:          require('./slice'),
-       someRight:      require('./some-right'),
-       splice:         require('./splice'),
-       uniq:           require('./uniq'),
-       values:         require('./values')
-};
-module.exports[require('es6-symbol').iterator] = require('./@@iterator');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/indexes-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/indexes-of.js
deleted file mode 100644 (file)
index 6b89157..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of');
-
-module.exports = function (value/*, fromIndex*/) {
-       var r = [], i, fromIndex = arguments[1];
-       while ((i = indexOf.call(this, value, fromIndex)) !== -1) {
-               r.push(i);
-               fromIndex = i + 1;
-       }
-       return r;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/intersection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/intersection.js
deleted file mode 100644 (file)
index fadcb52..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var value    = require('../../object/valid-value')
-  , contains = require('./contains')
-  , byLength = require('./_compare-by-length')
-
-  , filter = Array.prototype.filter, push = Array.prototype.push
-  , slice = Array.prototype.slice;
-
-module.exports = function (/*…list*/) {
-       var lists;
-       if (!arguments.length) slice.call(this);
-       push.apply(lists = [this], arguments);
-       lists.forEach(value);
-       lists.sort(byLength);
-       return lists.reduce(function (a, b) {
-               return filter.call(a, function (x) { return contains.call(b, x); });
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-copy.js
deleted file mode 100644 (file)
index ac7c79b..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , eq    = require('../../object/eq')
-  , value = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (other) {
-       var i, l;
-       (value(this) && value(other));
-       l = toPosInt(this.length);
-       if (l !== toPosInt(other.length)) return false;
-       for (i = 0; i < l; ++i) {
-               if (hasOwnProperty.call(this, i) !== hasOwnProperty.call(other, i)) {
-                       return false;
-               }
-               if (!eq(this[i], other[i])) return false;
-       }
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/is-uniq.js
deleted file mode 100644 (file)
index b14f461..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , every = Array.prototype.every
-  , isFirst;
-
-isFirst = function (value, index) {
-       return indexOf.call(this, value) === index;
-};
-
-module.exports = function () { return every.call(this, isFirst, this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/implement.js
deleted file mode 100644 (file)
index e18e617..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'keys', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/index.js
deleted file mode 100644 (file)
index 2f89cff..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.keys : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/is-implemented.js
deleted file mode 100644 (file)
index 06bd87b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = [1, 'foo'], iterator, result;
-       if (typeof arr.keys !== 'function') return false;
-       iterator = arr.keys();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 0) return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/keys/shim.js
deleted file mode 100644 (file)
index 83773f6..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'key'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last-index.js
deleted file mode 100644 (file)
index a191d6e..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toPosInt = require('../../number/to-pos-integer')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function () {
-       var i, l;
-       if (!(l = toPosInt(value(this).length))) return null;
-       i = l - 1;
-       while (!hasOwnProperty.call(this, i)) {
-               if (--i === -1) return null;
-       }
-       return i;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/last.js
deleted file mode 100644 (file)
index bf9d2f2..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var lastIndex = require('./last-index');
-
-module.exports = function () {
-       var i;
-       if ((i = lastIndex.call(this)) !== null) return this[i];
-       return undefined;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/implement.js
deleted file mode 100644 (file)
index 3aabb87..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'map', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/index.js
deleted file mode 100644 (file)
index 66f6660..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ?
-               Array.prototype.map : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/is-implemented.js
deleted file mode 100644 (file)
index c328b47..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var identity = require('../../../function/identity')
-  , SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).map(identity) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/map/shim.js
deleted file mode 100644 (file)
index 2ee7313..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-  , callable     = require('../../../object/valid-callable')
-
-  , isArray = Array.isArray, map = Array.prototype.map
-  , forEach = Array.prototype.forEach, call = Function.prototype.call;
-
-module.exports = function (callbackFn/*, thisArg*/) {
-       var result, thisArg;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return map.apply(this, arguments);
-       }
-       callable(callbackFn);
-       thisArg = arguments[1];
-       result = new this.constructor(this.length);
-       forEach.call(this, function (val, i, self) {
-               result[i] = call.call(callbackFn, thisArg, val, i, self);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/remove.js
deleted file mode 100644 (file)
index dcf8433..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , forEach = Array.prototype.forEach, splice = Array.prototype.splice;
-
-module.exports = function (item/*, …item*/) {
-       forEach.call(arguments, function (item) {
-               var index = indexOf.call(this, item);
-               if (index !== -1) splice.call(this, index, 1);
-       }, this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/separate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/separate.js
deleted file mode 100644 (file)
index dc974b8..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach;
-
-module.exports = function (sep) {
-       var result = [];
-       forEach.call(this, function (val, i) { result.push(val, sep); });
-       result.pop();
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/implement.js
deleted file mode 100644 (file)
index cd488a0..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'slice', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/index.js
deleted file mode 100644 (file)
index 72200ca..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype.slice : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/is-implemented.js
deleted file mode 100644 (file)
index ec1985e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).slice() instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/slice/shim.js
deleted file mode 100644 (file)
index 2761a1a..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-var toInteger    = require('../../../number/to-integer')
-  , toPosInt     = require('../../../number/to-pos-integer')
-  , isPlainArray = require('../../is-plain-array')
-
-  , isArray = Array.isArray, slice = Array.prototype.slice
-  , hasOwnProperty = Object.prototype.hasOwnProperty, max = Math.max;
-
-module.exports = function (start, end) {
-       var length, result, i;
-       if (!this || !isArray(this) || isPlainArray(this)) {
-               return slice.apply(this, arguments);
-       }
-       length = toPosInt(this.length);
-       start = toInteger(start);
-       if (start < 0) start = max(length + start, 0);
-       else if (start > length) start = length;
-       if (end === undefined) {
-               end = length;
-       } else {
-               end = toInteger(end);
-               if (end < 0) end = max(length + end, 0);
-               else if (end > length) end = length;
-       }
-       if (start > end) start = end;
-       result = new this.constructor(end - start);
-       i = 0;
-       while (start !== end) {
-               if (hasOwnProperty.call(this, start)) result[i] = this[start];
-               ++i;
-               ++start;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/some-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/some-right.js
deleted file mode 100644 (file)
index de7460d..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , value    = require('../../object/valid-value')
-
-  , hasOwnProperty = Object.prototype.hasOwnProperty
-  , call = Function.prototype.call;
-
-module.exports = function (cb/*, thisArg*/) {
-       var i, self, thisArg;
-       self = Object(value(this));
-       callable(cb);
-       thisArg = arguments[1];
-
-       for (i = self.length; i >= 0; --i) {
-               if (hasOwnProperty.call(self, i) &&
-                               call.call(cb, thisArg, self[i], i, self)) {
-                       return true;
-               }
-       }
-       return false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/implement.js
deleted file mode 100644 (file)
index aab1f8e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'splice', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/index.js
deleted file mode 100644 (file)
index e8ecf3c..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.prototype.splice : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/is-implemented.js
deleted file mode 100644 (file)
index ffddaa8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var SubArray = require('../../_sub-array-dummy-safe');
-
-module.exports = function () {
-       return (new SubArray()).splice(0) instanceof SubArray;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/splice/shim.js
deleted file mode 100644 (file)
index a8505a2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isPlainArray = require('../../is-plain-array')
-
-  , isArray = Array.isArray, splice = Array.prototype.splice
-  , forEach = Array.prototype.forEach;
-
-module.exports = function (start, deleteCount/*, …items*/) {
-       var arr = splice.apply(this, arguments), result;
-       if (!this || !isArray(this) || isPlainArray(this)) return arr;
-       result = new this.constructor(arr.length);
-       forEach.call(arr, function (val, i) { result[i] = val; });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/uniq.js
deleted file mode 100644 (file)
index db01465..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var indexOf = require('./e-index-of')
-
-  , filter = Array.prototype.filter
-
-  , isFirst;
-
-isFirst = function (value, index) {
-       return indexOf.call(this, value) === index;
-};
-
-module.exports = function () { return filter.call(this, isFirst, this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/implement.js
deleted file mode 100644 (file)
index 237281f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array.prototype, 'values', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/index.js
deleted file mode 100644 (file)
index c0832c3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')() ? Array.prototype.values : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/is-implemented.js
deleted file mode 100644 (file)
index cc0c629..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var arr = ['foo', 1], iterator, result;
-       if (typeof arr.values !== 'function') return false;
-       iterator = arr.values();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== 'foo') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/#/values/shim.js
deleted file mode 100644 (file)
index f6555fd..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-var ArrayIterator = require('es6-iterator/array');
-module.exports = function () { return new ArrayIterator(this, 'value'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_is-extensible.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_is-extensible.js
deleted file mode 100644 (file)
index 6123206..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = (function () {
-       var SubArray = require('./_sub-array-dummy'), arr;
-
-       if (!SubArray) return false;
-       arr = new SubArray();
-       if (!Array.isArray(arr)) return false;
-       if (!(arr instanceof SubArray)) return false;
-
-       arr[34] = 'foo';
-       return (arr.length === 35);
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy-safe.js
deleted file mode 100644 (file)
index 5baf8a8..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../object/set-prototype-of')
-  , isExtensible   = require('./_is-extensible');
-
-module.exports = (function () {
-       var SubArray;
-
-       if (isExtensible) return require('./_sub-array-dummy');
-
-       if (!setPrototypeOf) return null;
-       SubArray = function () {
-               var arr = Array.apply(this, arguments);
-               setPrototypeOf(arr, SubArray.prototype);
-               return arr;
-       };
-       setPrototypeOf(SubArray, Array);
-       SubArray.prototype = Object.create(Array.prototype, {
-               constructor: { value: SubArray, enumerable: false, writable: true,
-                       configurable: true }
-       });
-       return SubArray;
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/_sub-array-dummy.js
deleted file mode 100644 (file)
index a926d1a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../object/set-prototype-of');
-
-module.exports = (function () {
-       var SubArray;
-
-       if (!setPrototypeOf) return null;
-       SubArray = function () { Array.apply(this, arguments); };
-       setPrototypeOf(SubArray, Array);
-       SubArray.prototype = Object.create(Array.prototype, {
-               constructor: { value: SubArray, enumerable: false, writable: true,
-                       configurable: true }
-       });
-       return SubArray;
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/implement.js
deleted file mode 100644 (file)
index f3411b1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array, 'from', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/index.js
deleted file mode 100644 (file)
index 3b99cda..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.from
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/is-implemented.js
deleted file mode 100644 (file)
index 63ff2a5..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var from = Array.from, arr, result;
-       if (typeof from !== 'function') return false;
-       arr = ['raz', 'dwa'];
-       result = from(arr);
-       return Boolean(result && (result !== arr) && (result[1] === 'dwa'));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/from/shim.js
deleted file mode 100644 (file)
index a90ba2f..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator
-  , isArguments    = require('../../function/is-arguments')
-  , isFunction     = require('../../function/is-function')
-  , toPosInt       = require('../../number/to-pos-integer')
-  , callable       = require('../../object/valid-callable')
-  , validValue     = require('../../object/valid-value')
-  , isString       = require('../../string/is-string')
-
-  , isArray = Array.isArray, call = Function.prototype.call
-  , desc = { configurable: true, enumerable: true, writable: true, value: null }
-  , defineProperty = Object.defineProperty;
-
-module.exports = function (arrayLike/*, mapFn, thisArg*/) {
-       var mapFn = arguments[1], thisArg = arguments[2], Constructor, i, j, arr, l, code, iterator
-         , result, getIterator, value;
-
-       arrayLike = Object(validValue(arrayLike));
-
-       if (mapFn != null) callable(mapFn);
-       if (!this || (this === Array) || !isFunction(this)) {
-               // Result: Plain array
-               if (!mapFn) {
-                       if (isArguments(arrayLike)) {
-                               // Source: Arguments
-                               l = arrayLike.length;
-                               if (l !== 1) return Array.apply(null, arrayLike);
-                               arr = new Array(1);
-                               arr[0] = arrayLike[0];
-                               return arr;
-                       }
-                       if (isArray(arrayLike)) {
-                               // Source: Array
-                               arr = new Array(l = arrayLike.length);
-                               for (i = 0; i < l; ++i) arr[i] = arrayLike[i];
-                               return arr;
-                       }
-               }
-               arr = [];
-       } else {
-               // Result: Non plain array
-               Constructor = this;
-       }
-
-       if (!isArray(arrayLike)) {
-               if ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {
-                       // Source: Iterator
-                       iterator = callable(getIterator).call(arrayLike);
-                       if (Constructor) arr = new Constructor();
-                       result = iterator.next();
-                       i = 0;
-                       while (!result.done) {
-                               value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;
-                               if (!Constructor) {
-                                       arr[i] = value;
-                               } else {
-                                       desc.value = value;
-                                       defineProperty(arr, i, desc);
-                               }
-                               result = iterator.next();
-                               ++i;
-                       }
-                       l = i;
-               } else if (isString(arrayLike)) {
-                       // Source: String
-                       l = arrayLike.length;
-                       if (Constructor) arr = new Constructor();
-                       for (i = 0, j = 0; i < l; ++i) {
-                               value = arrayLike[i];
-                               if ((i + 1) < l) {
-                                       code = value.charCodeAt(0);
-                                       if ((code >= 0xD800) && (code <= 0xDBFF)) value += arrayLike[++i];
-                               }
-                               value = mapFn ? call.call(mapFn, thisArg, value, j) : value;
-                               if (!Constructor) {
-                                       arr[j] = value;
-                               } else {
-                                       desc.value = value;
-                                       defineProperty(arr, j, desc);
-                               }
-                               ++j;
-                       }
-                       l = j;
-               }
-       }
-       if (l === undefined) {
-               // Source: array or array-like
-               l = toPosInt(arrayLike.length);
-               if (Constructor) arr = new Constructor(l);
-               for (i = 0; i < l; ++i) {
-                       value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];
-                       if (!Constructor) {
-                               arr[i] = value;
-                       } else {
-                               desc.value = value;
-                               defineProperty(arr, i, desc);
-                       }
-               }
-       }
-       if (Constructor) {
-               desc.value = null;
-               arr.length = l;
-       }
-       return arr;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/generate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/generate.js
deleted file mode 100644 (file)
index 5e06675..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var toPosInt = require('../number/to-pos-integer')
-  , value    = require('../object/valid-value')
-
-  , slice = Array.prototype.slice;
-
-module.exports = function (length/*, …fill*/) {
-       var arr, l;
-       length = toPosInt(value(length));
-       if (length === 0) return [];
-
-       arr = (arguments.length < 2) ? [undefined] :
-                       slice.call(arguments, 1, 1 + length);
-
-       while ((l = arr.length) < length) {
-               arr = arr.concat(arr.slice(0, length - l));
-       }
-       return arr;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/index.js
deleted file mode 100644 (file)
index 7a68678..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':          require('./#'),
-       from:         require('./from'),
-       generate:     require('./generate'),
-       isPlainArray: require('./is-plain-array'),
-       of:           require('./of'),
-       toArray:      require('./to-array'),
-       validArray:   require('./valid-array')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/is-plain-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/is-plain-array.js
deleted file mode 100644 (file)
index 6b37e40..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray, getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (obj) {
-       var proto;
-       if (!obj || !isArray(obj)) return false;
-       proto = getPrototypeOf(obj);
-       if (!isArray(proto)) return false;
-       return !isArray(getPrototypeOf(proto));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/implement.js
deleted file mode 100644 (file)
index bf2a5a5..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Array, 'of', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/index.js
deleted file mode 100644 (file)
index 07ee54d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Array.of
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/is-implemented.js
deleted file mode 100644 (file)
index 4390a10..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var of = Array.of, result;
-       if (typeof of !== 'function') return false;
-       result = of('foo', 'bar');
-       return Boolean(result && (result[1] === 'bar'));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/of/shim.js
deleted file mode 100644 (file)
index de72bc9..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var isFunction = require('../../function/is-function')
-
-  , slice = Array.prototype.slice, defineProperty = Object.defineProperty
-  , desc = { configurable: true, enumerable: true, writable: true, value: null };
-
-module.exports = function (/*…items*/) {
-       var result, i, l;
-       if (!this || (this === Array) || !isFunction(this)) return slice.call(arguments);
-       result = new this(l = arguments.length);
-       for (i = 0; i < l; ++i) {
-               desc.value = arguments[i];
-               defineProperty(result, i, desc);
-       }
-       desc.value = null;
-       result.length = l;
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/to-array.js
deleted file mode 100644 (file)
index ce908dd..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var from = require('./from')
-
-  , isArray = Array.isArray;
-
-module.exports = function (arrayLike) {
-       return isArray(arrayLike) ? arrayLike : from(arrayLike);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/valid-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/array/valid-array.js
deleted file mode 100644 (file)
index d86a8f5..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (value) {
-       if (isArray(value)) return value;
-       throw new TypeError(value + " is not an array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/index.js
deleted file mode 100644 (file)
index c193b94..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       isBoolean: require('./is-boolean')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/is-boolean.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/boolean/is-boolean.js
deleted file mode 100644 (file)
index 5d1a802..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(true);
-
-module.exports = function (x) {
-       return (typeof x === 'boolean') || ((typeof x === 'object') &&
-               ((x instanceof Boolean) || (toString.call(x) === id)));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/copy.js
deleted file mode 100644 (file)
index 69e2eb0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var getTime = Date.prototype.getTime;
-
-module.exports = function () { return new Date(getTime.call(this)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/days-in-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/days-in-month.js
deleted file mode 100644 (file)
index e780efe..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var getMonth = Date.prototype.getMonth;
-
-module.exports = function () {
-       switch (getMonth.call(this)) {
-       case 1:
-               return this.getFullYear() % 4 ? 28 : 29;
-       case 3:
-       case 5:
-       case 8:
-       case 10:
-               return 30;
-       default:
-               return 31;
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-day.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-day.js
deleted file mode 100644 (file)
index 0c9eb8b..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var setHours = Date.prototype.setHours;
-
-module.exports = function () {
-       setHours.call(this, 0, 0, 0, 0);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-month.js
deleted file mode 100644 (file)
index 7328c25..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var floorDay = require('./floor-day');
-
-module.exports = function () {
-       floorDay.call(this).setDate(1);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-year.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/floor-year.js
deleted file mode 100644 (file)
index 9c50853..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var floorMonth = require('./floor-month');
-
-module.exports = function () {
-       floorMonth.call(this).setMonth(0);
-       return this;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/format.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/format.js
deleted file mode 100644 (file)
index 15bd95f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var pad       = require('../../number/#/pad')
-  , date      = require('../valid-date')
-
-  , format;
-
-format = require('../../string/format-method')({
-       Y: function () { return String(this.getFullYear()); },
-       y: function () { return String(this.getFullYear()).slice(-2); },
-       m: function () { return pad.call(this.getMonth() + 1, 2); },
-       d: function () { return pad.call(this.getDate(), 2); },
-       H: function () { return pad.call(this.getHours(), 2); },
-       M: function () { return pad.call(this.getMinutes(), 2); },
-       S: function () { return pad.call(this.getSeconds(), 2); },
-       L: function () { return pad.call(this.getMilliseconds(), 3); }
-});
-
-module.exports = function (pattern) {
-       return format.call(date(this), pattern);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/#/index.js
deleted file mode 100644 (file)
index f71b295..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       copy:        require('./copy'),
-       daysInMonth: require('./days-in-month'),
-       floorDay:    require('./floor-day'),
-       floorMonth:  require('./floor-month'),
-       floorYear:   require('./floor-year'),
-       format:      require('./format')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/index.js
deleted file mode 100644 (file)
index eac33fb..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':       require('./#'),
-       isDate:    require('./is-date'),
-       validDate: require('./valid-date')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/is-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/is-date.js
deleted file mode 100644 (file)
index 6ba236e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(new Date());
-
-module.exports = function (x) {
-       return (x && ((x instanceof Date) || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/valid-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/date/valid-date.js
deleted file mode 100644 (file)
index 7d1a9b6..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isDate = require('./is-date');
-
-module.exports = function (x) {
-       if (!isDate(x)) throw new TypeError(x + " is not a Date object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/index.js
deleted file mode 100644 (file)
index b984aa9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       throw: require('./throw')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/throw.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/#/throw.js
deleted file mode 100644 (file)
index 7e15ebd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var error = require('../valid-error');
-
-module.exports = function () { throw error(this); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/custom.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/custom.js
deleted file mode 100644 (file)
index bbc2dc2..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var assign = require('../object/assign')
-
-  , captureStackTrace = Error.captureStackTrace;
-
-exports = module.exports = function (message/*, code, ext*/) {
-       var err = new Error(), code = arguments[1], ext = arguments[2];
-       if (ext == null) {
-               if (code && (typeof code === 'object')) {
-                       ext = code;
-                       code = null;
-               }
-       }
-       if (ext != null) assign(err, ext);
-       err.message = String(message);
-       if (code != null) err.code = String(code);
-       if (captureStackTrace) captureStackTrace(err, exports);
-       return err;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/index.js
deleted file mode 100644 (file)
index 62984b5..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':        require('./#'),
-       custom:     require('./custom'),
-       isError:    require('./is-error'),
-       validError: require('./valid-error')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/is-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/is-error.js
deleted file mode 100644 (file)
index 422705f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(new Error());
-
-module.exports = function (x) {
-       return (x && ((x instanceof Error) || (toString.call(x)) === id)) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/valid-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/error/valid-error.js
deleted file mode 100644 (file)
index 0bef768..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isError = require('./is-error');
-
-module.exports = function (x) {
-       if (!isError(x)) throw new TypeError(x + " is not an Error object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/compose.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/compose.js
deleted file mode 100644 (file)
index 1da5e01..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-  , aFrom    = require('../../array/from')
-
-  , apply = Function.prototype.apply, call = Function.prototype.call
-  , callFn = function (arg, fn) { return call.call(fn, this, arg); };
-
-module.exports = function (fn/*, …fnn*/) {
-       var fns, first;
-       if (!fn) callable(fn);
-       fns = [this].concat(aFrom(arguments));
-       fns.forEach(callable);
-       fns = fns.reverse();
-       first = fns[0];
-       fns = fns.slice(1);
-       return function (arg) {
-               return fns.reduce(callFn, apply.call(first, this, arguments));
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/copy.js
deleted file mode 100644 (file)
index e1467f7..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var mixin         = require('../../object/mixin')
-  , validFunction = require('../valid-function')
-
-  , re = /^\s*function\s*([\0-'\)-\uffff]+)*\s*\(([\0-\(\*-\uffff]*)\)\s*\{/;
-
-module.exports = function () {
-       var match = String(validFunction(this)).match(re), fn;
-
-       fn = new Function('fn', 'return function ' + match[1].trim() + '(' +
-               match[2] + ') { return fn.apply(this, arguments); };')(this);
-       try { mixin(fn, this); } catch (ignore) {}
-       return fn;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/curry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/curry.js
deleted file mode 100644 (file)
index 943d6fa..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var toPosInt     = require('../../number/to-pos-integer')
-  , callable     = require('../../object/valid-callable')
-  , defineLength = require('../_define-length')
-
-  , slice = Array.prototype.slice, apply = Function.prototype.apply
-  , curry;
-
-curry = function self(fn, length, preArgs) {
-       return defineLength(function () {
-               var args = preArgs ?
-                               preArgs.concat(slice.call(arguments, 0, length - preArgs.length)) :
-                               slice.call(arguments, 0, length);
-               return (args.length === length) ? apply.call(fn, this, args) :
-                               self(fn, length, args);
-       }, preArgs ? (length - preArgs.length) : length);
-};
-
-module.exports = function (/*length*/) {
-       var length = arguments[0];
-       return curry(callable(this),
-               isNaN(length) ? toPosInt(this.length) : toPosInt(length));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/index.js
deleted file mode 100644 (file)
index 8d0da00..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = {
-       compose:        require('./compose'),
-       copy:           require('./copy'),
-       curry:          require('./curry'),
-       lock:           require('./lock'),
-       not:            require('./not'),
-       partial:        require('./partial'),
-       spread:         require('./spread'),
-       toStringTokens: require('./to-string-tokens')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/lock.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/lock.js
deleted file mode 100644 (file)
index 91e1a65..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-
-  , apply    = Function.prototype.apply;
-
-module.exports = function (/*…args*/) {
-       var fn = callable(this)
-         , args = arguments;
-
-       return function () { return apply.call(fn, this, args); };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/not.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/not.js
deleted file mode 100644 (file)
index c6dbe97..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var callable     = require('../../object/valid-callable')
-  , defineLength = require('../_define-length')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function () {
-       var fn = callable(this);
-
-       return defineLength(function () {
-               return !apply.call(fn, this, arguments);
-       }, fn.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/partial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/partial.js
deleted file mode 100644 (file)
index bf31a35..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var callable     = require('../../object/valid-callable')
-  , aFrom        = require('../../array/from')
-  , defineLength = require('../_define-length')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function (/*…args*/) {
-       var fn = callable(this)
-         , args = aFrom(arguments);
-
-       return defineLength(function () {
-               return apply.call(fn, this, args.concat(aFrom(arguments)));
-       }, fn.length - args.length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/spread.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/spread.js
deleted file mode 100644 (file)
index d7c93b7..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var callable = require('../../object/valid-callable')
-
-  , apply = Function.prototype.apply;
-
-module.exports = function () {
-       var fn = callable(this);
-       return function (args) { return apply.call(fn, this, args); };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/to-string-tokens.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/#/to-string-tokens.js
deleted file mode 100644 (file)
index 67afeae..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var validFunction = require('../valid-function')
-
-  , re = new RegExp('^\\s*function[\\0-\'\\)-\\uffff]*' +
-       '\\(([\\0-\\(\\*-\\uffff]*)\\)\\s*\\{([\\0-\\uffff]*)\\}\\s*$');
-
-module.exports = function () {
-       var data = String(validFunction(this)).match(re);
-       return { args: data[1], body: data[2] };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/_define-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/_define-length.js
deleted file mode 100644 (file)
index 496ea62..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-var toPosInt = require('../number/to-pos-integer')
-
-  , test = function (a, b) {}, desc, defineProperty
-  , generate, mixin;
-
-try {
-       Object.defineProperty(test, 'length', { configurable: true, writable: false,
-               enumerable: false, value: 1 });
-} catch (ignore) {}
-
-if (test.length === 1) {
-       // ES6
-       desc = { configurable: true, writable: false, enumerable: false };
-       defineProperty = Object.defineProperty;
-       module.exports = function (fn, length) {
-               length = toPosInt(length);
-               if (fn.length === length) return fn;
-               desc.value = length;
-               return defineProperty(fn, 'length', desc);
-       };
-} else {
-       mixin = require('../object/mixin');
-       generate = (function () {
-               var cache = [];
-               return function (l) {
-                       var args, i = 0;
-                       if (cache[l]) return cache[l];
-                       args = [];
-                       while (l--) args.push('a' + (++i).toString(36));
-                       return new Function('fn', 'return function (' + args.join(', ') +
-                               ') { return fn.apply(this, arguments); };');
-               };
-       }());
-       module.exports = function (src, length) {
-               var target;
-               length = toPosInt(length);
-               if (src.length === length) return src;
-               target = generate(length)(src);
-               try { mixin(target, src); } catch (ignore) {}
-               return target;
-       };
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/constant.js
deleted file mode 100644 (file)
index 10f1e20..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x) {
-       return function () { return x; };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/identity.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/identity.js
deleted file mode 100644 (file)
index a9289f0..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (x) { return x; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/index.js
deleted file mode 100644 (file)
index cfad3f3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-// Export all modules.
-
-'use strict';
-
-module.exports = {
-       '#':           require('./#'),
-       constant:      require('./constant'),
-       identity:      require('./identity'),
-       invoke:        require('./invoke'),
-       isArguments:   require('./is-arguments'),
-       isFunction:    require('./is-function'),
-       noop:          require('./noop'),
-       pluck:         require('./pluck'),
-       validFunction: require('./valid-function')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/invoke.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/invoke.js
deleted file mode 100644 (file)
index 9195afd..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var isCallable = require('../object/is-callable')
-  , value      = require('../object/valid-value')
-
-  , slice = Array.prototype.slice, apply = Function.prototype.apply;
-
-module.exports = function (name/*, …args*/) {
-       var args = slice.call(arguments, 1), isFn = isCallable(name);
-       return function (obj) {
-               value(obj);
-               return apply.call(isFn ? name : obj[name], obj,
-                       args.concat(slice.call(arguments, 1)));
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-arguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-arguments.js
deleted file mode 100644 (file)
index 9a29855..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call((function () { return arguments; }()));
-
-module.exports = function (x) { return (toString.call(x) === id); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/is-function.js
deleted file mode 100644 (file)
index ab4399c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(require('./noop'));
-
-module.exports = function (f) {
-       return (typeof f === "function") && (toString.call(f) === id);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/noop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/noop.js
deleted file mode 100644 (file)
index aa43bae..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function () {};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/pluck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/pluck.js
deleted file mode 100644 (file)
index 7f70a30..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var value   = require('../object/valid-value');
-
-module.exports = function (name) {
-       return function (o) { return value(o)[name]; };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/valid-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/function/valid-function.js
deleted file mode 100644 (file)
index 05fdee2..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isFunction = require('./is-function');
-
-module.exports = function (x) {
-       if (!isFunction(x)) throw new TypeError(x + " is not a function");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/global.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/global.js
deleted file mode 100644 (file)
index 872a40e..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = new Function("return this")();
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/index.js
deleted file mode 100644 (file)
index d065b71..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = {
-       global:   require('./global'),
-
-       array:    require('./array'),
-       boolean:  require('./boolean'),
-       date:     require('./date'),
-       error:    require('./error'),
-       function: require('./function'),
-       math:     require('./math'),
-       number:   require('./number'),
-       object:   require('./object'),
-       regExp:   require('./reg-exp'),
-       string:   require('./string')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_pack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_pack-ieee754.js
deleted file mode 100644 (file)
index eecda56..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var abs = Math.abs, floor = Math.floor, log = Math.log, min = Math.min
-  , pow = Math.pow, LN2 = Math.LN2
-  , roundToEven;
-
-roundToEven = function (n) {
-       var w = floor(n), f = n - w;
-       if (f < 0.5) return w;
-       if (f > 0.5) return w + 1;
-       return w % 2 ? w + 1 : w;
-};
-
-module.exports = function (v, ebits, fbits) {
-       var bias = (1 << (ebits - 1)) - 1, s, e, f, i, bits, str, bytes;
-
-       // Compute sign, exponent, fraction
-       if (isNaN(v)) {
-               // NaN
-               // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
-               e = (1 << ebits) - 1;
-               f = pow(2, fbits - 1);
-               s = 0;
-       } else if (v === Infinity || v === -Infinity) {
-               e = (1 << ebits) - 1;
-               f = 0;
-               s = (v < 0) ? 1 : 0;
-       } else if (v === 0) {
-               e = 0;
-               f = 0;
-               s = (1 / v === -Infinity) ? 1 : 0;
-       } else {
-               s = v < 0;
-               v = abs(v);
-
-               if (v >= pow(2, 1 - bias)) {
-                       e = min(floor(log(v) / LN2), 1023);
-                       f = roundToEven(v / pow(2, e) * pow(2, fbits));
-                       if (f / pow(2, fbits) >= 2) {
-                               e = e + 1;
-                               f = 1;
-                       }
-                       if (e > bias) {
-                               // Overflow
-                               e = (1 << ebits) - 1;
-                               f = 0;
-                       } else {
-                               // Normal
-                               e = e + bias;
-                               f = f - pow(2, fbits);
-                       }
-               } else {
-                       // Subnormal
-                       e = 0;
-                       f = roundToEven(v / pow(2, 1 - bias - fbits));
-               }
-       }
-
-       // Pack sign, exponent, fraction
-       bits = [];
-       for (i = fbits; i; i -= 1) {
-               bits.push(f % 2 ? 1 : 0);
-               f = floor(f / 2);
-       }
-       for (i = ebits; i; i -= 1) {
-               bits.push(e % 2 ? 1 : 0);
-               e = floor(e / 2);
-       }
-       bits.push(s ? 1 : 0);
-       bits.reverse();
-       str = bits.join('');
-
-       // Bits to bytes
-       bytes = [];
-       while (str.length) {
-               bytes.push(parseInt(str.substring(0, 8), 2));
-               str = str.substring(8);
-       }
-       return bytes;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_unpack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/_unpack-ieee754.js
deleted file mode 100644 (file)
index c9f26f2..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/
-
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (bytes, ebits, fbits) {
-       // Bytes to bits
-       var bits = [], i, j, b, str,
-       bias, s, e, f;
-
-       for (i = bytes.length; i; i -= 1) {
-               b = bytes[i - 1];
-               for (j = 8; j; j -= 1) {
-                       bits.push(b % 2 ? 1 : 0);
-                       b = b >> 1;
-               }
-       }
-       bits.reverse();
-       str = bits.join('');
-
-       // Unpack sign, exponent, fraction
-       bias = (1 << (ebits - 1)) - 1;
-       s = parseInt(str.substring(0, 1), 2) ? -1 : 1;
-       e = parseInt(str.substring(1, 1 + ebits), 2);
-       f = parseInt(str.substring(1 + ebits), 2);
-
-       // Produce number
-       if (e === (1 << ebits) - 1) return f !== 0 ? NaN : s * Infinity;
-       if (e > 0) return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
-       if (f !== 0) return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
-       return s < 0 ? -0 : 0;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/implement.js
deleted file mode 100644 (file)
index f48ad11..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'acosh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/index.js
deleted file mode 100644 (file)
index 00ddea6..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.acosh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/is-implemented.js
deleted file mode 100644 (file)
index 363f0d8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var acosh = Math.acosh;
-       if (typeof acosh !== 'function') return false;
-       return acosh(2) === 1.3169578969248166;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/acosh/shim.js
deleted file mode 100644 (file)
index 89a24b5..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var log = Math.log, sqrt = Math.sqrt;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 1) return NaN;
-       if (x === 1) return 0;
-       if (x === Infinity) return x;
-       return log(x + sqrt(x * x - 1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/implement.js
deleted file mode 100644 (file)
index 21f64d5..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'asinh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/index.js
deleted file mode 100644 (file)
index d415144..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.asinh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/is-implemented.js
deleted file mode 100644 (file)
index 6c205f4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var asinh = Math.asinh;
-       if (typeof asinh !== 'function') return false;
-       return asinh(2) === 1.4436354751788103;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/asinh/shim.js
deleted file mode 100644 (file)
index 42fbf14..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var log = Math.log, sqrt = Math.sqrt;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       if (x < 0) {
-               x = -x;
-               return -log(x + sqrt(x * x + 1));
-       }
-       return log(x + sqrt(x * x + 1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/implement.js
deleted file mode 100644 (file)
index 1a48513..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'atanh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/index.js
deleted file mode 100644 (file)
index 785b3de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.atanh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/is-implemented.js
deleted file mode 100644 (file)
index dbaf18e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var atanh = Math.atanh;
-       if (typeof atanh !== 'function') return false;
-       return atanh(0.5) === 0.5493061443340549;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/atanh/shim.js
deleted file mode 100644 (file)
index 531e289..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < -1) return NaN;
-       if (x > 1) return NaN;
-       if (x === -1) return -Infinity;
-       if (x === 1) return Infinity;
-       if (x === 0) return x;
-       return 0.5 * log((1 + x) / (1 - x));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/implement.js
deleted file mode 100644 (file)
index 3a12dde..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'cbrt', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/index.js
deleted file mode 100644 (file)
index 89f966d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.cbrt
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/is-implemented.js
deleted file mode 100644 (file)
index 69809f3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var cbrt = Math.cbrt;
-       if (typeof cbrt !== 'function') return false;
-       return cbrt(2) === 1.2599210498948732;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cbrt/shim.js
deleted file mode 100644 (file)
index bca1960..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       if (x < 0) return -pow(-x, 1 / 3);
-       return pow(x, 1 / 3);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/implement.js
deleted file mode 100644 (file)
index 339df33..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'clz32', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/index.js
deleted file mode 100644 (file)
index 1687b33..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.clz32
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/is-implemented.js
deleted file mode 100644 (file)
index ccc8f71..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var clz32 = Math.clz32;
-       if (typeof clz32 !== 'function') return false;
-       return clz32(1000) === 22;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/clz32/shim.js
deleted file mode 100644 (file)
index 2a582da..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       value = value >>> 0;
-       return value ? 32 - value.toString(2).length : 32;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/implement.js
deleted file mode 100644 (file)
index f90d830..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'cosh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/index.js
deleted file mode 100644 (file)
index 000636a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.cosh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/is-implemented.js
deleted file mode 100644 (file)
index c796bcb..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var cosh = Math.cosh;
-       if (typeof cosh !== 'function') return false;
-       return cosh(1) === 1.5430806348152437;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/cosh/shim.js
deleted file mode 100644 (file)
index f9062bd..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return 1;
-       if (!isFinite(x)) return Infinity;
-       return (exp(x) + exp(-x)) / 2;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/implement.js
deleted file mode 100644 (file)
index fc20c8c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'expm1', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/index.js
deleted file mode 100644 (file)
index 4c1bc77..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.expm1
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/is-implemented.js
deleted file mode 100644 (file)
index 3b106d5..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var expm1 = Math.expm1;
-       if (typeof expm1 !== 'function') return false;
-       return expm1(1).toFixed(15) === '1.718281828459045';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/expm1/shim.js
deleted file mode 100644 (file)
index 9c8c236..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// Thanks: https://github.com/monolithed/ECMAScript-6
-
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-       if (x === -Infinity) return -1;
-
-       if ((x > -1.0e-6) && (x < 1.0e-6)) return x + x * x / 2;
-       return exp(x) - 1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/implement.js
deleted file mode 100644 (file)
index c55b26c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'fround', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/index.js
deleted file mode 100644 (file)
index a077ed0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.fround
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/is-implemented.js
deleted file mode 100644 (file)
index ffbf094..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var fround = Math.fround;
-       if (typeof fround !== 'function') return false;
-       return fround(1.337) === 1.3370000123977661;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/fround/shim.js
deleted file mode 100644 (file)
index f2c86e4..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Credit: https://github.com/paulmillr/es6-shim/blob/master/es6-shim.js
-
-'use strict';
-
-var toFloat32;
-
-if (typeof Float32Array !== 'undefined') {
-       toFloat32 = (function () {
-               var float32Array = new Float32Array(1);
-               return function (x) {
-                       float32Array[0] = x;
-                       return float32Array[0];
-               };
-       }());
-} else {
-       toFloat32 = (function () {
-               var pack   = require('../_pack-ieee754')
-                 , unpack = require('../_unpack-ieee754');
-
-               return function (x) {
-                       return unpack(pack(x, 8, 23), 8, 23);
-               };
-       }());
-}
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-
-       return toFloat32(x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/implement.js
deleted file mode 100644 (file)
index b27fda7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'hypot', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/index.js
deleted file mode 100644 (file)
index 334bc58..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.hypot
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/is-implemented.js
deleted file mode 100644 (file)
index e75c5d3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var hypot = Math.hypot;
-       if (typeof hypot !== 'function') return false;
-       return hypot(3, 4) === 5;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/hypot/shim.js
deleted file mode 100644 (file)
index 3d0988b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-// Thanks for hints: https://github.com/paulmillr/es6-shim
-
-'use strict';
-
-var some = Array.prototype.some, abs = Math.abs, sqrt = Math.sqrt
-
-  , compare = function (a, b) { return b - a; }
-  , divide = function (x) { return x / this; }
-  , add = function (sum, number) { return sum + number * number; };
-
-module.exports = function (val1, val2/*, …valn*/) {
-       var result, numbers;
-       if (!arguments.length) return 0;
-       some.call(arguments, function (val) {
-               if (isNaN(val)) {
-                       result = NaN;
-                       return;
-               }
-               if (!isFinite(val)) {
-                       result = Infinity;
-                       return true;
-               }
-               if (result !== undefined) return;
-               val = Number(val);
-               if (val === 0) return;
-               if (!numbers) numbers = [abs(val)];
-               else numbers.push(abs(val));
-       });
-       if (result !== undefined) return result;
-       if (!numbers) return 0;
-
-       numbers.sort(compare);
-       return numbers[0] * sqrt(numbers.map(divide, numbers[0]).reduce(add, 0));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/implement.js
deleted file mode 100644 (file)
index ed207bd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'imul', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/index.js
deleted file mode 100644 (file)
index 41e5d5f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.imul
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/is-implemented.js
deleted file mode 100644 (file)
index d8495de..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var imul = Math.imul;
-       if (typeof imul !== 'function') return false;
-       return imul(-1, 8) === -8;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/imul/shim.js
deleted file mode 100644 (file)
index 8fd8a8d..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-// Thanks: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
-//         /Global_Objects/Math/imul
-
-'use strict';
-
-module.exports = function (x, y) {
-       var xh  = (x >>> 16) & 0xffff, xl = x & 0xffff
-         , yh  = (y >>> 16) & 0xffff, yl = y & 0xffff;
-
-       // the shift by 0 fixes the sign on the high part
-       // the final |0 converts the unsigned value into a signed value
-       return ((xl * yl) + (((xh * yl + xl * yh) << 16) >>> 0) | 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/index.js
deleted file mode 100644 (file)
index d112d0b..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       acosh:  require('./acosh'),
-       asinh:  require('./asinh'),
-       atanh:  require('./atanh'),
-       cbrt:   require('./cbrt'),
-       clz32:  require('./clz32'),
-       cosh:   require('./cosh'),
-       expm1:  require('./expm1'),
-       fround: require('./fround'),
-       hypot:  require('./hypot'),
-       imul:   require('./imul'),
-       log10:  require('./log10'),
-       log2:   require('./log2'),
-       log1p:  require('./log1p'),
-       sign:   require('./sign'),
-       sinh:   require('./sinh'),
-       tanh:   require('./tanh'),
-       trunc:  require('./trunc')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/implement.js
deleted file mode 100644 (file)
index dd96edd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log10', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/index.js
deleted file mode 100644 (file)
index a9eee51..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log10
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/is-implemented.js
deleted file mode 100644 (file)
index c7f40ee..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log10 = Math.log10;
-       if (typeof log10 !== 'function') return false;
-       return log10(2) === 0.3010299956639812;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log10/shim.js
deleted file mode 100644 (file)
index fc77287..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log, LOG10E = Math.LOG10E;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 0) return NaN;
-       if (x === 0) return -Infinity;
-       if (x === 1) return 0;
-       if (x === Infinity) return Infinity;
-
-       return log(x) * LOG10E;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/implement.js
deleted file mode 100644 (file)
index f62f91f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log1p', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/index.js
deleted file mode 100644 (file)
index 107b114..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log1p
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/is-implemented.js
deleted file mode 100644 (file)
index 61e9097..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log1p = Math.log1p;
-       if (typeof log1p !== 'function') return false;
-       return log1p(1) === 0.6931471805599453;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log1p/shim.js
deleted file mode 100644 (file)
index 10acebc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-// Thanks: https://github.com/monolithed/ECMAScript-6/blob/master/ES6.js
-
-'use strict';
-
-var log = Math.log;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < -1) return NaN;
-       if (x === -1) return -Infinity;
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-
-       if (x > -1.0e-8 && x < 1.0e-8) return (x - x * x / 2);
-       return log(1 + x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/implement.js
deleted file mode 100644 (file)
index 8483f09..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'log2', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/index.js
deleted file mode 100644 (file)
index 87e9050..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.log2
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/is-implemented.js
deleted file mode 100644 (file)
index 802322f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var log2 = Math.log2;
-       if (typeof log2 !== 'function') return false;
-       return log2(3).toFixed(15) === '1.584962500721156';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/log2/shim.js
deleted file mode 100644 (file)
index cd80994..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var log = Math.log, LOG2E = Math.LOG2E;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x < 0) return NaN;
-       if (x === 0) return -Infinity;
-       if (x === 1) return 0;
-       if (x === Infinity) return Infinity;
-
-       return log(x) * LOG2E;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/implement.js
deleted file mode 100644 (file)
index b0db2f4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'sign', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/index.js
deleted file mode 100644 (file)
index b232633..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.sign
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/is-implemented.js
deleted file mode 100644 (file)
index 6d0de47..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var sign = Math.sign;
-       if (typeof sign !== 'function') return false;
-       return ((sign(10) === 1) && (sign(-20) === -1));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sign/shim.js
deleted file mode 100644 (file)
index 4df9c95..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       value = Number(value);
-       if (isNaN(value) || (value === 0)) return value;
-       return (value > 0) ? 1 : -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/implement.js
deleted file mode 100644 (file)
index f259a63..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'sinh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/index.js
deleted file mode 100644 (file)
index e5bea57..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.sinh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/is-implemented.js
deleted file mode 100644 (file)
index 927c8af..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var sinh = Math.sinh;
-       if (typeof sinh !== 'function') return false;
-       return sinh(1) === 1.1752011936438014;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/sinh/shim.js
deleted file mode 100644 (file)
index 2cc8d66..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (!isFinite(x)) return x;
-       return (exp(x) - exp(-x)) / 2;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/implement.js
deleted file mode 100644 (file)
index 5199a02..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'tanh', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/index.js
deleted file mode 100644 (file)
index 6099c40..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.tanh
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/is-implemented.js
deleted file mode 100644 (file)
index 1a59173..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var tanh = Math.tanh;
-       if (typeof tanh !== 'function') return false;
-       return tanh(1) === 0.7615941559557649;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/tanh/shim.js
deleted file mode 100644 (file)
index 28994c6..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var exp = Math.exp;
-
-module.exports = function (x) {
-       var a, b;
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return 1;
-       if (x === -Infinity) return -1;
-       a = exp(x);
-       b = exp(-x);
-       return (a - b) / (a + b);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/implement.js
deleted file mode 100644 (file)
index 3ee80ab..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Math, 'trunc', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/index.js
deleted file mode 100644 (file)
index 0b0f9b2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Math.trunc
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/is-implemented.js
deleted file mode 100644 (file)
index 3e8cde1..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var trunc = Math.trunc;
-       if (typeof trunc !== 'function') return false;
-       return (trunc(13.67) === 13) && (trunc(-13.67) === -13);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/math/trunc/shim.js
deleted file mode 100644 (file)
index 02e2c2a..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var floor = Math.floor;
-
-module.exports = function (x) {
-       if (isNaN(x)) return NaN;
-       x = Number(x);
-       if (x === 0) return x;
-       if (x === Infinity) return Infinity;
-       if (x === -Infinity) return -Infinity;
-       if (x > 0) return floor(x);
-       return -floor(-x);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/index.js
deleted file mode 100644 (file)
index 3248117..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = {
-       pad: require('./pad')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/#/pad.js
deleted file mode 100644 (file)
index 4478f6a..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var pad      = require('../../string/#/pad')
-  , toPosInt = require('../to-pos-integer')
-
-  , toFixed = Number.prototype.toFixed;
-
-module.exports = function (length/*, precision*/) {
-       var precision;
-       length = toPosInt(length);
-       precision = toPosInt(arguments[1]);
-
-       return pad.call(precision ? toFixed.call(this, precision) : this,
-               '0', length + (precision ? (1 + precision) : 0));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/implement.js
deleted file mode 100644 (file)
index f0a670a..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'EPSILON', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/index.js
deleted file mode 100644 (file)
index 4e4b621..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = 2.220446049250313e-16;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/epsilon/is-implemented.js
deleted file mode 100644 (file)
index 141f5d2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.EPSILON === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/index.js
deleted file mode 100644 (file)
index 35daf78..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':              require('./#'),
-       EPSILON:          require('./epsilon'),
-       isFinite:         require('./is-finite'),
-       isInteger:        require('./is-integer'),
-       isNaN:            require('./is-nan'),
-       isNumber:         require('./is-number'),
-       isSafeInteger:    require('./is-safe-integer'),
-       MAX_SAFE_INTEGER: require('./max-safe-integer'),
-       MIN_SAFE_INTEGER: require('./min-safe-integer'),
-       toInteger:        require('./to-integer'),
-       toPosInteger:     require('./to-pos-integer'),
-       toUint32:         require('./to-uint32')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/implement.js
deleted file mode 100644 (file)
index 51d7cac..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isFinite', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/index.js
deleted file mode 100644 (file)
index 15d5f40..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isFinite
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/is-implemented.js
deleted file mode 100644 (file)
index 556e396..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isFinite = Number.isFinite;
-       if (typeof isFinite !== 'function') return false;
-       return !isFinite('23') && isFinite(34) && !isFinite(Infinity);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-finite/shim.js
deleted file mode 100644 (file)
index e3aee55..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       return (typeof value === 'number') && isFinite(value);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/implement.js
deleted file mode 100644 (file)
index fe53f28..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isInteger', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/index.js
deleted file mode 100644 (file)
index 55e039a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isInteger
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/is-implemented.js
deleted file mode 100644 (file)
index a0e573b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isInteger = Number.isInteger;
-       if (typeof isInteger !== 'function') return false;
-       return !isInteger('23') && isInteger(34) && !isInteger(32.34);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-integer/shim.js
deleted file mode 100644 (file)
index 5402939..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// Credit: http://www.2ality.com/2014/05/is-integer.html
-
-'use strict';
-
-module.exports = function (value) {
-       if (typeof value !== 'number') return false;
-       return (value % 1 === 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/implement.js
deleted file mode 100644 (file)
index e1c5dee..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isNaN', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/index.js
deleted file mode 100644 (file)
index 3b2c4ca..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isNaN
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/is-implemented.js
deleted file mode 100644 (file)
index 4cf2766..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isNaN = Number.isNaN;
-       if (typeof isNaN !== 'function') return false;
-       return !isNaN({}) && isNaN(NaN) && !isNaN(34);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-nan/shim.js
deleted file mode 100644 (file)
index 070d96c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (value) { return (value !== value); } //jslint: ignore
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-number.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-number.js
deleted file mode 100644 (file)
index 19a99e4..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(1);
-
-module.exports = function (x) {
-       return ((typeof x === 'number') ||
-               ((x instanceof Number) ||
-                       ((typeof x === 'object') && (toString.call(x) === id))));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/implement.js
deleted file mode 100644 (file)
index 51cef96..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'isSafeInteger', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/index.js
deleted file mode 100644 (file)
index 49adeaa..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Number.isSafeInteger
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 510b60e..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var isSafeInteger = Number.isSafeInteger;
-       if (typeof isSafeInteger !== 'function') return false;
-       return !isSafeInteger('23') && isSafeInteger(34232322323) &&
-                       !isSafeInteger(9007199254740992);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/is-safe-integer/shim.js
deleted file mode 100644 (file)
index 692acdd..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var isInteger = require('../is-integer/shim')
-  , maxValue  = require('../max-safe-integer')
-
-  , abs = Math.abs;
-
-module.exports = function (value) {
-       if (!isInteger(value)) return false;
-       return abs(value) <= maxValue;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/implement.js
deleted file mode 100644 (file)
index 4e0bb57..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'MAX_SAFE_INTEGER', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/index.js
deleted file mode 100644 (file)
index ed5d6a5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = Math.pow(2, 53) - 1;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/max-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 7bd08a9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.MAX_SAFE_INTEGER === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/implement.js
deleted file mode 100644 (file)
index e3f110e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Number, 'MIN_SAFE_INTEGER', { value: require('./'),
-               configurable: false, enumerable: false, writable: false });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/index.js
deleted file mode 100644 (file)
index 1c6cc27..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = -(Math.pow(2, 53) - 1);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/min-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index efc9875..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return (typeof Number.MIN_SAFE_INTEGER === 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-integer.js
deleted file mode 100644 (file)
index 60e798c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var sign = require('../math/sign')
-
-  , abs = Math.abs, floor = Math.floor;
-
-module.exports = function (value) {
-       if (isNaN(value)) return 0;
-       value = Number(value);
-       if ((value === 0) || !isFinite(value)) return value;
-       return sign(value) * floor(abs(value));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-pos-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-pos-integer.js
deleted file mode 100644 (file)
index 605a302..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toInteger = require('./to-integer')
-
-  , max = Math.max;
-
-module.exports = function (value) { return max(0, toInteger(value)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-uint32.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/number/to-uint32.js
deleted file mode 100644 (file)
index 6263e85..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (value) { return value >>> 0; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/_iterate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/_iterate.js
deleted file mode 100644 (file)
index bf2c55d..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Internal method, used by iteration functions.
-// Calls a function for each key-value pair found in object
-// Optionally takes compareFn to iterate object in specific order
-
-'use strict';
-
-var isCallable = require('./is-callable')
-  , callable   = require('./valid-callable')
-  , value      = require('./valid-value')
-
-  , call = Function.prototype.call, keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (method, defVal) {
-       return function (obj, cb/*, thisArg, compareFn*/) {
-               var list, thisArg = arguments[2], compareFn = arguments[3];
-               obj = Object(value(obj));
-               callable(cb);
-
-               list = keys(obj);
-               if (compareFn) {
-                       list.sort(isCallable(compareFn) ? compareFn.bind(obj) : undefined);
-               }
-               return list[method](function (key, index) {
-                       if (!propertyIsEnumerable.call(obj, key)) return defVal;
-                       return call.call(cb, thisArg, obj[key], key, obj, index);
-               });
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/implement.js
deleted file mode 100644 (file)
index 3bcc68e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Object, 'assign', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/index.js
deleted file mode 100644 (file)
index ab0f9f2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.assign
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/is-implemented.js
deleted file mode 100644 (file)
index 579ad2d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var assign = Object.assign, obj;
-       if (typeof assign !== 'function') return false;
-       obj = { foo: 'raz' };
-       assign(obj, { bar: 'dwa' }, { trzy: 'trzy' });
-       return (obj.foo + obj.bar + obj.trzy) === 'razdwatrzy';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/assign/shim.js
deleted file mode 100644 (file)
index 74da11a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var keys  = require('../keys')
-  , value = require('../valid-value')
-
-  , max = Math.max;
-
-module.exports = function (dest, src/*, …srcn*/) {
-       var error, i, l = max(arguments.length, 2), assign;
-       dest = Object(value(dest));
-       assign = function (key) {
-               try { dest[key] = src[key]; } catch (e) {
-                       if (!error) error = e;
-               }
-       };
-       for (i = 1; i < l; ++i) {
-               src = arguments[i];
-               keys(src).forEach(assign);
-       }
-       if (error !== undefined) throw error;
-       return dest;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/clear.js
deleted file mode 100644 (file)
index 85e4637..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var keys = require('./keys');
-
-module.exports = function (obj) {
-       var error;
-       keys(obj).forEach(function (key) {
-               try {
-                       delete this[key];
-               } catch (e) {
-                       if (!error) error = e;
-               }
-       }, obj);
-       if (error !== undefined) throw error;
-       return obj;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compact.js
deleted file mode 100644 (file)
index d021da4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var filter = require('./filter');
-
-module.exports = function (obj) {
-       return filter(obj, function (val) { return val != null; });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/compare.js
deleted file mode 100644 (file)
index 2ab11f1..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-var strCompare = require('../string/#/case-insensitive-compare')
-  , isObject   = require('./is-object')
-
-  , resolve, typeMap;
-
-typeMap = {
-       undefined: 0,
-       object: 1,
-       boolean: 2,
-       string: 3,
-       number: 4
-};
-
-resolve = function (a) {
-       if (isObject(a)) {
-               if (typeof a.valueOf !== 'function') return NaN;
-               a = a.valueOf();
-               if (isObject(a)) {
-                       if (typeof a.toString !== 'function') return NaN;
-                       a = a.toString();
-                       if (typeof a !== 'string') return NaN;
-               }
-       }
-       return a;
-};
-
-module.exports = function (a, b) {
-       if (a === b) return 0; // Same
-
-       a = resolve(a);
-       b = resolve(b);
-       if (a == b) return typeMap[typeof a] - typeMap[typeof b]; //jslint: ignore
-       if (a == null) return -1;
-       if (b == null) return 1;
-       if ((typeof a === 'string') || (typeof b === 'string')) {
-               return strCompare.call(a, b);
-       }
-       if ((a !== a) && (b !== b)) return 0; //jslint: ignore
-       return Number(a) - Number(b);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy-deep.js
deleted file mode 100644 (file)
index 548e3ee..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-var isPlainObject = require('./is-plain-object')
-  , value         = require('./valid-value')
-
-  , keys = Object.keys
-  , copy;
-
-copy = function (source) {
-       var target = {};
-       this[0].push(source);
-       this[1].push(target);
-       keys(source).forEach(function (key) {
-               var index;
-               if (!isPlainObject(source[key])) {
-                       target[key] = source[key];
-                       return;
-               }
-               index = this[0].indexOf(source[key]);
-               if (index === -1) target[key] = copy.call(this, source[key]);
-               else target[key] = this[1][index];
-       }, this);
-       return target;
-};
-
-module.exports = function (source) {
-       var obj = Object(value(source));
-       if (obj !== source) return obj;
-       return copy.call([[], []], obj);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/copy.js
deleted file mode 100644 (file)
index 4d71772..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var assign = require('./assign')
-  , value  = require('./valid-value');
-
-module.exports = function (obj) {
-       var copy = Object(value(obj));
-       if (copy !== obj) return copy;
-       return assign({}, obj);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/count.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/count.js
deleted file mode 100644 (file)
index 29cfbb5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var keys  = require('./keys');
-
-module.exports = function (obj) { return keys(obj).length; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/create.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/create.js
deleted file mode 100644 (file)
index f813b46..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-// Workaround for http://code.google.com/p/v8/issues/detail?id=2804
-
-'use strict';
-
-var create = Object.create, shim;
-
-if (!require('./set-prototype-of/is-implemented')()) {
-       shim = require('./set-prototype-of/shim');
-}
-
-module.exports = (function () {
-       var nullObject, props, desc;
-       if (!shim) return create;
-       if (shim.level !== 1) return create;
-
-       nullObject = {};
-       props = {};
-       desc = { configurable: false, enumerable: false, writable: true,
-               value: undefined };
-       Object.getOwnPropertyNames(Object.prototype).forEach(function (name) {
-               if (name === '__proto__') {
-                       props[name] = { configurable: true, enumerable: false, writable: true,
-                               value: undefined };
-                       return;
-               }
-               props[name] = desc;
-       });
-       Object.defineProperties(nullObject, props);
-
-       Object.defineProperty(shim, 'nullPolyfill', { configurable: false,
-               enumerable: false, writable: false, value: nullObject });
-
-       return function (prototype, props) {
-               return create((prototype === null) ? nullObject : prototype, props);
-       };
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/eq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/eq.js
deleted file mode 100644 (file)
index 037937e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (x, y) {
-       return ((x === y) || ((x !== x) && (y !== y))); //jslint: ignore
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/every.js
deleted file mode 100644 (file)
index 1303db2..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('every', true);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/filter.js
deleted file mode 100644 (file)
index e5edb49..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               if (call.call(cb, thisArg, value, key, obj, index)) o[key] = obj[key];
-       });
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/first-key.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/first-key.js
deleted file mode 100644 (file)
index 7df10b2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (obj) {
-       var i;
-       value(obj);
-       for (i in obj) {
-               if (propertyIsEnumerable.call(obj, i)) return i;
-       }
-       return null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/flatten.js
deleted file mode 100644 (file)
index e8b4044..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var isPlainObject = require('./is-plain-object')
-  , forEach       = require('./for-each')
-
-  , process;
-
-process = function self(value, key) {
-       if (isPlainObject(value)) forEach(value, self, this);
-       else this[key] = value;
-};
-
-module.exports = function (obj) {
-       var flattened = {};
-       forEach(obj, process, flattened);
-       return flattened;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/for-each.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/for-each.js
deleted file mode 100644 (file)
index 6674f8a..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('forEach');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/get-property-names.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/get-property-names.js
deleted file mode 100644 (file)
index 54a01e5..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var uniq  = require('../array/#/uniq')
-  , value = require('./valid-value')
-
-  , push = Array.prototype.push
-  , getOwnPropertyNames = Object.getOwnPropertyNames
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (obj) {
-       var keys;
-       obj = Object(value(obj));
-       keys = getOwnPropertyNames(obj);
-       while ((obj = getPrototypeOf(obj))) {
-               push.apply(keys, getOwnPropertyNames(obj));
-       }
-       return uniq.call(keys);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/index.js
deleted file mode 100644 (file)
index 0b7b0fe..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-module.exports = {
-       assign:           require('./assign'),
-       clear:            require('./clear'),
-       compact:          require('./compact'),
-       compare:          require('./compare'),
-       copy:             require('./copy'),
-       copyDeep:         require('./copy-deep'),
-       count:            require('./count'),
-       create:           require('./create'),
-       eq:               require('./eq'),
-       every:            require('./every'),
-       filter:           require('./filter'),
-       firstKey:         require('./first-key'),
-       flatten:          require('./flatten'),
-       forEach:          require('./for-each'),
-       getPropertyNames: require('./get-property-names'),
-       is:               require('./is'),
-       isArrayLike:      require('./is-array-like'),
-       isCallable:       require('./is-callable'),
-       isCopy:           require('./is-copy'),
-       isCopyDeep:       require('./is-copy-deep'),
-       isEmpty:          require('./is-empty'),
-       isObject:         require('./is-object'),
-       isPlainObject:    require('./is-plain-object'),
-       keyOf:            require('./key-of'),
-       keys:             require('./keys'),
-       map:              require('./map'),
-       mapKeys:          require('./map-keys'),
-       normalizeOptions: require('./normalize-options'),
-       mixin:            require('./mixin'),
-       mixinPrototypes:  require('./mixin-prototypes'),
-       primitiveSet:     require('./primitive-set'),
-       safeTraverse:     require('./safe-traverse'),
-       serialize:        require('./serialize'),
-       setPrototypeOf:   require('./set-prototype-of'),
-       some:             require('./some'),
-       toArray:          require('./to-array'),
-       unserialize:      require('./unserialize'),
-       validCallable:    require('./valid-callable'),
-       validObject:      require('./valid-object'),
-       validValue:       require('./valid-value')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-array-like.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-array-like.js
deleted file mode 100644 (file)
index b8beed2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isFunction = require('../function/is-function')
-  , isObject   = require('./is-object');
-
-module.exports = function (x) {
-       return ((x != null) && (typeof x.length === 'number') &&
-
-               // Just checking ((typeof x === 'object') && (typeof x !== 'function'))
-               // won't work right for some cases, e.g.:
-               // type of instance of NodeList in Safari is a 'function'
-
-               ((isObject(x) && !isFunction(x)) || (typeof x === "string"))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-callable.js
deleted file mode 100644 (file)
index 5d5d4b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// Deprecated
-
-'use strict';
-
-module.exports = function (obj) { return typeof obj === 'function'; };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy-deep.js
deleted file mode 100644 (file)
index c4b2b42..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-'use strict';
-
-var eq            = require('./eq')
-  , isPlainObject = require('./is-plain-object')
-  , value         = require('./valid-value')
-
-  , isArray = Array.isArray, keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable
-
-  , eqArr, eqVal, eqObj;
-
-eqArr = function (a, b, recMap) {
-       var i, l = a.length;
-       if (l !== b.length) return false;
-       for (i = 0; i < l; ++i) {
-               if (a.hasOwnProperty(i) !== b.hasOwnProperty(i)) return false;
-               if (!eqVal(a[i], b[i], recMap)) return false;
-       }
-       return true;
-};
-
-eqObj = function (a, b, recMap) {
-       var k1 = keys(a), k2 = keys(b);
-       if (k1.length !== k2.length) return false;
-       return k1.every(function (key) {
-               if (!propertyIsEnumerable.call(b, key)) return false;
-               return eqVal(a[key], b[key], recMap);
-       });
-};
-
-eqVal = function (a, b, recMap) {
-       var i, eqX, c1, c2;
-       if (eq(a, b)) return true;
-       if (isPlainObject(a)) {
-               if (!isPlainObject(b)) return false;
-               eqX = eqObj;
-       } else if (isArray(a) && isArray(b)) {
-               eqX = eqArr;
-       } else {
-               return false;
-       }
-       c1 = recMap[0];
-       c2 = recMap[1];
-       i = c1.indexOf(a);
-       if (i !== -1) {
-               if (c2[i].indexOf(b) !== -1) return true;
-       } else {
-               i = c1.push(a) - 1;
-               c2[i] = [];
-       }
-       c2[i].push(b);
-       return eqX(a, b, recMap);
-};
-
-module.exports = function (a, b) {
-       if (eq(value(a), value(b))) return true;
-       return eqVal(Object(a), Object(b), [[], []]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-copy.js
deleted file mode 100644 (file)
index 4fe639d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var eq     = require('./eq')
-  , value  = require('./valid-value')
-
-  , keys = Object.keys
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (a, b) {
-       var k1, k2;
-
-       if (eq(value(a), value(b))) return true;
-
-       a = Object(a);
-       b = Object(b);
-
-       k1 = keys(a);
-       k2 = keys(b);
-       if (k1.length !== k2.length) return false;
-       return k1.every(function (key) {
-               if (!propertyIsEnumerable.call(b, key)) return false;
-               return eq(a[key], b[key]);
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-empty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-empty.js
deleted file mode 100644 (file)
index 7b51a87..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
-
-module.exports = function (obj) {
-       var i;
-       value(obj);
-       for (i in obj) { //jslint: ignore
-               if (propertyIsEnumerable.call(obj, i)) return false;
-       }
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-object.js
deleted file mode 100644 (file)
index a86facf..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var map = { function: true, object: true };
-
-module.exports = function (x) {
-       return ((x != null) && map[typeof x]) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-plain-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is-plain-object.js
deleted file mode 100644 (file)
index 9a28231..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-var getPrototypeOf = Object.getPrototypeOf, prototype = Object.prototype
-  , toString = prototype.toString
-
-  , id = Object().toString();
-
-module.exports = function (value) {
-       var proto, constructor;
-       if (!value || (typeof value !== 'object') || (toString.call(value) !== id)) {
-               return false;
-       }
-       proto = getPrototypeOf(value);
-       if (proto === null) {
-               constructor = value.constructor;
-               if (typeof constructor !== 'function') return true;
-               return (constructor.prototype !== value);
-       }
-       return (proto === prototype) || (getPrototypeOf(proto) === null);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/is.js
deleted file mode 100644 (file)
index 5778b50..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-// Implementation credits go to:
-// http://wiki.ecmascript.org/doku.php?id=harmony:egal
-
-'use strict';
-
-module.exports = function (x, y) {
-       return (x === y) ?
-                       ((x !== 0) || ((1 / x) === (1 / y))) :
-                       ((x !== x) && (y !== y)); //jslint: ignore
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/key-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/key-of.js
deleted file mode 100644 (file)
index 8c44c8d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var eq   = require('./eq')
-  , some = require('./some');
-
-module.exports = function (obj, searchValue) {
-       var r;
-       return some(obj, function (value, name) {
-               if (eq(value, searchValue)) {
-                       r = name;
-                       return true;
-               }
-               return false;
-       }) ? r : null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/implement.js
deleted file mode 100644 (file)
index c6872bd..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(Object, 'keys', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/index.js
deleted file mode 100644 (file)
index 5ef0522..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.keys
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/is-implemented.js
deleted file mode 100644 (file)
index 40c32c3..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       try {
-               Object.keys('primitive');
-               return true;
-       } catch (e) { return false; }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/keys/shim.js
deleted file mode 100644 (file)
index 034b6b2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var keys = Object.keys;
-
-module.exports = function (object) {
-       return keys(object == null ? object : Object(object));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map-keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map-keys.js
deleted file mode 100644 (file)
index 26f0eca..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               o[call.call(cb, thisArg, key, value, this, index)] = value;
-       }, obj);
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/map.js
deleted file mode 100644 (file)
index 6b39d3c..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call;
-
-module.exports = function (obj, cb/*, thisArg*/) {
-       var o = {}, thisArg = arguments[2];
-       callable(cb);
-       forEach(obj, function (value, key, obj, index) {
-               o[key] = call.call(cb, thisArg, value, key, obj, index);
-       });
-       return o;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin-prototypes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin-prototypes.js
deleted file mode 100644 (file)
index 1ef5756..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-  , mixin = require('./mixin')
-
-  , defineProperty = Object.defineProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor
-  , getOwnPropertyNames = Object.getOwnPropertyNames
-  , getPrototypeOf = Object.getPrototypeOf
-  , hasOwnProperty = Object.prototype.hasOwnProperty;
-
-module.exports = function (target, source) {
-       var error, end, define;
-       target = Object(value(target));
-       source = Object(value(source));
-       end = getPrototypeOf(target);
-       if (source === end) return target;
-       try {
-               mixin(target, source);
-       } catch (e) { error = e; }
-       source = getPrototypeOf(source);
-       define = function (name) {
-               if (hasOwnProperty.call(target, name)) return;
-               try {
-                       defineProperty(target, name, getOwnPropertyDescriptor(source, name));
-               } catch (e) { error = e; }
-       };
-       while (source && (source !== end)) {
-               getOwnPropertyNames(source).forEach(define);
-               source = getPrototypeOf(source);
-       }
-       if (error) throw error;
-       return target;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/mixin.js
deleted file mode 100644 (file)
index 80b5df5..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var value = require('./valid-value')
-
-  , defineProperty = Object.defineProperty
-  , getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor
-  , getOwnPropertyNames = Object.getOwnPropertyNames;
-
-module.exports = function (target, source) {
-       var error;
-       target = Object(value(target));
-       getOwnPropertyNames(Object(value(source))).forEach(function (name) {
-               try {
-                       defineProperty(target, name, getOwnPropertyDescriptor(source, name));
-               } catch (e) { error = e; }
-       });
-       if (error !== undefined) throw error;
-       return target;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/normalize-options.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/normalize-options.js
deleted file mode 100644 (file)
index cf8ed8d..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach, create = Object.create;
-
-var process = function (src, obj) {
-       var key;
-       for (key in src) obj[key] = src[key];
-};
-
-module.exports = function (options/*, …options*/) {
-       var result = create(null);
-       forEach.call(arguments, function (options) {
-               if (options == null) return;
-               process(Object(options), result);
-       });
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/primitive-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/primitive-set.js
deleted file mode 100644 (file)
index ada1095..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var forEach = Array.prototype.forEach, create = Object.create;
-
-module.exports = function (arg/*, …args*/) {
-       var set = create(null);
-       forEach.call(arguments, function (name) { set[name] = true; });
-       return set;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/safe-traverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/safe-traverse.js
deleted file mode 100644 (file)
index 7e1b5f4..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var value = require('./valid-value');
-
-module.exports = function (obj/*, …names*/) {
-       var length, current = 1;
-       value(obj);
-       length = arguments.length - 1;
-       if (!length) return obj;
-       while (current < length) {
-               obj = obj[arguments[current++]];
-               if (obj == null) return undefined;
-       }
-       return obj[arguments[current]];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/serialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/serialize.js
deleted file mode 100644 (file)
index 8113b68..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-'use strict';
-
-var toArray  = require('./to-array')
-  , isDate   = require('../date/is-date')
-  , isRegExp = require('../reg-exp/is-reg-exp')
-
-  , isArray = Array.isArray, stringify = JSON.stringify
-  , keyValueToString = function (value, key) { return stringify(key) + ':' + exports(value); };
-
-var sparseMap = function (arr) {
-       var i, l = arr.length, result = new Array(l);
-       for (i = 0; i < l; ++i) {
-               if (!arr.hasOwnProperty(i)) continue;
-               result[i] = exports(arr[i]);
-       }
-       return result;
-};
-
-module.exports = exports = function (obj) {
-       if (obj == null) return String(obj);
-       switch (typeof obj) {
-       case 'string':
-               return stringify(obj);
-       case 'number':
-       case 'boolean':
-       case 'function':
-               return String(obj);
-       case 'object':
-               if (isArray(obj)) return '[' + sparseMap(obj) + ']';
-               if (isRegExp(obj)) return String(obj);
-               if (isDate(obj)) return 'new Date(' + obj.valueOf() + ')';
-               return '{' + toArray(obj, keyValueToString) + '}';
-       default:
-               throw new TypeError("Serialization of " + String(obj) + "is unsupported");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/implement.js
deleted file mode 100644 (file)
index 000e6bd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var shim;
-
-if (!require('./is-implemented')() && (shim = require('./shim'))) {
-       Object.defineProperty(Object, 'setPrototypeOf',
-               { value: shim, configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/index.js
deleted file mode 100644 (file)
index ccc4099..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? Object.setPrototypeOf
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/is-implemented.js
deleted file mode 100644 (file)
index 98d0c84..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var create = Object.create, getPrototypeOf = Object.getPrototypeOf
-  , x = {};
-
-module.exports = function (/*customCreate*/) {
-       var setPrototypeOf = Object.setPrototypeOf
-         , customCreate = arguments[0] || create;
-       if (typeof setPrototypeOf !== 'function') return false;
-       return getPrototypeOf(setPrototypeOf(customCreate(null), x)) === x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/set-prototype-of/shim.js
deleted file mode 100644 (file)
index 4ec9446..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-// Big thanks to @WebReflection for sorting this out
-// https://gist.github.com/WebReflection/5593554
-
-'use strict';
-
-var isObject      = require('../is-object')
-  , value         = require('../valid-value')
-
-  , isPrototypeOf = Object.prototype.isPrototypeOf
-  , defineProperty = Object.defineProperty
-  , nullDesc = { configurable: true, enumerable: false, writable: true,
-               value: undefined }
-  , validate;
-
-validate = function (obj, prototype) {
-       value(obj);
-       if ((prototype === null) || isObject(prototype)) return obj;
-       throw new TypeError('Prototype must be null or an object');
-};
-
-module.exports = (function (status) {
-       var fn, set;
-       if (!status) return null;
-       if (status.level === 2) {
-               if (status.set) {
-                       set = status.set;
-                       fn = function (obj, prototype) {
-                               set.call(validate(obj, prototype), prototype);
-                               return obj;
-                       };
-               } else {
-                       fn = function (obj, prototype) {
-                               validate(obj, prototype).__proto__ = prototype;
-                               return obj;
-                       };
-               }
-       } else {
-               fn = function self(obj, prototype) {
-                       var isNullBase;
-                       validate(obj, prototype);
-                       isNullBase = isPrototypeOf.call(self.nullPolyfill, obj);
-                       if (isNullBase) delete self.nullPolyfill.__proto__;
-                       if (prototype === null) prototype = self.nullPolyfill;
-                       obj.__proto__ = prototype;
-                       if (isNullBase) defineProperty(self.nullPolyfill, '__proto__', nullDesc);
-                       return obj;
-               };
-       }
-       return Object.defineProperty(fn, 'level', { configurable: false,
-               enumerable: false, writable: false, value: status.level });
-}((function () {
-       var x = Object.create(null), y = {}, set
-         , desc = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__');
-
-       if (desc) {
-               try {
-                       set = desc.set; // Opera crashes at this point
-                       set.call(x, y);
-               } catch (ignore) { }
-               if (Object.getPrototypeOf(x) === y) return { set: set, level: 2 };
-       }
-
-       x.__proto__ = y;
-       if (Object.getPrototypeOf(x) === y) return { level: 2 };
-
-       x = {};
-       x.__proto__ = y;
-       if (Object.getPrototypeOf(x) === y) return { level: 1 };
-
-       return false;
-}())));
-
-require('../create');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/some.js
deleted file mode 100644 (file)
index cde5dde..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./_iterate')('some', false);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/to-array.js
deleted file mode 100644 (file)
index a954abb..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var callable = require('./valid-callable')
-  , forEach  = require('./for-each')
-
-  , call = Function.prototype.call
-
-  , defaultCb = function (value, key) { return [key, value]; };
-
-module.exports = function (obj/*, cb, thisArg, compareFn*/) {
-       var a = [], cb = arguments[1], thisArg = arguments[2];
-       cb = (cb == null) ? defaultCb : callable(cb);
-
-       forEach(obj, function (value, key, obj, index) {
-               a.push(call.call(cb, thisArg, value, key, this, index));
-       }, obj, arguments[3]);
-       return a;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/unserialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/unserialize.js
deleted file mode 100644 (file)
index ce68e40..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var value  = require('./valid-value');
-
-module.exports = exports = function (code) {
-       return (new Function('return ' + value(code)))();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-callable.js
deleted file mode 100644 (file)
index c977527..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (fn) {
-       if (typeof fn !== 'function') throw new TypeError(fn + " is not a function");
-       return fn;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-object.js
deleted file mode 100644 (file)
index f82bd51..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isObject = require('./is-object');
-
-module.exports = function (value) {
-       if (!isObject(value)) throw new TypeError(value + " is not an Object");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/object/valid-value.js
deleted file mode 100644 (file)
index 36c8ec3..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (value) {
-       if (value == null) throw new TypeError("Cannot use null or undefined");
-       return value;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/package.json
deleted file mode 100644 (file)
index c67ae84..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-{
-  "_args": [
-    [
-      "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_id": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-4n1XUEAaEcCCWeO5tdO90ygd8Ao=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-weak-map/es5-ext",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es5-ext@https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "name": "es5-ext",
-    "escapedName": "es5-ext",
-    "rawSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-weak-map",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/d",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-iterator",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-symbol"
-  ],
-  "_spec": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es5-ext/issues"
-  },
-  "dependencies": {
-    "es6-iterator": "~0.1.3",
-    "es6-symbol": "~2.0.1"
-  },
-  "description": "ECMAScript 5 extensions and ES6 shims",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es5-ext#readme",
-  "keywords": [
-    "ecmascript",
-    "ecmascript5",
-    "ecmascript6",
-    "es5",
-    "es6",
-    "extensions",
-    "ext",
-    "addons",
-    "extras",
-    "harmony",
-    "javascript",
-    "polyfill",
-    "shim",
-    "util",
-    "utils",
-    "utilities"
-  ],
-  "license": "MIT",
-  "name": "es5-ext",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es5-ext.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/index.js
deleted file mode 100644 (file)
index f7e7a58..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       isSticky:  require('./is-sticky'),
-       isUnicode: require('./is-unicode'),
-       match:     require('./match'),
-       replace:   require('./replace'),
-       search:    require('./search'),
-       split:     require('./split')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-sticky.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-sticky.js
deleted file mode 100644 (file)
index 830a481..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var validRegExp = require('../valid-reg-exp')
-
-  , re = /\/[a-xz]*y[a-xz]*$/;
-
-module.exports = function () {
-       return Boolean(String(validRegExp(this)).match(re));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-unicode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/is-unicode.js
deleted file mode 100644 (file)
index b005f6d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var validRegExp = require('../valid-reg-exp')
-
-  , re = /\/[a-xz]*u[a-xz]*$/;
-
-module.exports = function () {
-       return Boolean(String(validRegExp(this)).match(re));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/implement.js
deleted file mode 100644 (file)
index 921c936..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'match', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/index.js
deleted file mode 100644 (file)
index 0534ac3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.match
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/is-implemented.js
deleted file mode 100644 (file)
index b7e9964..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.match !== 'function') return false;
-       return re.match('barfoobar') && !re.match('elo');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/match/shim.js
deleted file mode 100644 (file)
index 4f99cf4..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).match(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/implement.js
deleted file mode 100644 (file)
index ad580de..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'replace', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/index.js
deleted file mode 100644 (file)
index 5658177..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.replace
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js
deleted file mode 100644 (file)
index 1b42d25..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.replace !== 'function') return false;
-       return re.replace('foobar', 'mar') === 'marbar';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/replace/shim.js
deleted file mode 100644 (file)
index c3e6aeb..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string, replaceValue) {
-       validRegExp(this);
-       return String(string).replace(this, replaceValue);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/implement.js
deleted file mode 100644 (file)
index 3804f4e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'search', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/index.js
deleted file mode 100644 (file)
index 67995d4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.search
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/is-implemented.js
deleted file mode 100644 (file)
index efba889..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /foo/;
-
-module.exports = function () {
-       if (typeof re.search !== 'function') return false;
-       return re.search('barfoo') === 3;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/search/shim.js
deleted file mode 100644 (file)
index 6d9dcae..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).search(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/implement.js
deleted file mode 100644 (file)
index 50facb6..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'split', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/index.js
deleted file mode 100644 (file)
index f101f5a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? RegExp.prototype.split
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/is-implemented.js
deleted file mode 100644 (file)
index 7244c99..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var re = /\|/;
-
-module.exports = function () {
-       if (typeof re.split !== 'function') return false;
-       return re.split('bar|foo')[1] === 'foo';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/split/shim.js
deleted file mode 100644 (file)
index 76154e7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var validRegExp = require('../../valid-reg-exp');
-
-module.exports = function (string) {
-       validRegExp(this);
-       return String(string).split(this);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/implement.js
deleted file mode 100644 (file)
index 7e8af1d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isSticky = require('../is-sticky');
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'sticky', { configurable: true,
-               enumerable: false, get: isSticky });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js
deleted file mode 100644 (file)
index 379c4a5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return RegExp.prototype.sticky === false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/implement.js
deleted file mode 100644 (file)
index 5a82a4d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isUnicode = require('../is-unicode');
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(RegExp.prototype, 'unicode', { configurable: true,
-               enumerable: false, get: isUnicode });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js
deleted file mode 100644 (file)
index a8b15b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       return RegExp.prototype.unicode === false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/escape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/escape.js
deleted file mode 100644 (file)
index a2363fc..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// Thanks to Andrew Clover:
-// http://stackoverflow.com/questions/3561493
-// /is-there-a-regexp-escape-function-in-javascript
-
-'use strict';
-
-var re = /[\-\/\\\^$*+?.()|\[\]{}]/g;
-
-module.exports = function (str) { return String(str).replace(re, '\\$&'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/index.js
deleted file mode 100644 (file)
index 75ea313..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':         require('./#'),
-       escape:      require('./escape'),
-       isRegExp:    require('./is-reg-exp'),
-       validRegExp: require('./valid-reg-exp')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/is-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/is-reg-exp.js
deleted file mode 100644 (file)
index 6eb1297..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call(/a/);
-
-module.exports = function (x) {
-       return (x && (x instanceof RegExp || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/reg-exp/valid-reg-exp.js
deleted file mode 100644 (file)
index d3a7764..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var isRegExp = require('./is-reg-exp');
-
-module.exports = function (x) {
-       if (!isRegExp(x)) throw new TypeError(x + " is not a RegExp object");
-       return x;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 4494d7b..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, require('es6-symbol').iterator,
-               { value: require('./shim'), configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/index.js
deleted file mode 100644 (file)
index 22f15e6..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype[require('es6-symbol').iterator] : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index f5c462d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var iteratorSymbol = require('es6-symbol').iterator;
-
-module.exports = function () {
-       var str = '🙈f', iterator, result;
-       if (typeof str[iteratorSymbol] !== 'function') return false;
-       iterator = str[iteratorSymbol]();
-       if (!iterator) return false;
-       if (typeof iterator.next !== 'function') return false;
-       result = iterator.next();
-       if (!result) return false;
-       if (result.value !== '🙈') return false;
-       if (result.done !== false) return false;
-       return true;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/@@iterator/shim.js
deleted file mode 100644 (file)
index 0be3029..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var StringIterator = require('es6-iterator/string')
-  , value          = require('../../../object/valid-value');
-
-module.exports = function () { return new StringIterator(value(this)); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/at.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/at.js
deleted file mode 100644 (file)
index 77bd251..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Based on: https://github.com/mathiasbynens/String.prototype.at
-// Thanks @mathiasbynens !
-
-'use strict';
-
-var toInteger  = require('../../number/to-integer')
-  , validValue = require('../../object/valid-value');
-
-module.exports = function (pos) {
-       var str = String(validValue(this)), size = str.length
-         , cuFirst, cuSecond, nextPos, len;
-       pos = toInteger(pos);
-
-       // Account for out-of-bounds indices
-       // The odd lower bound is because the ToInteger operation is
-       // going to round `n` to `0` for `-1 < n <= 0`.
-       if (pos <= -1 || pos >= size) return '';
-
-       // Second half of `ToInteger`
-       pos = pos | 0;
-       // Get the first code unit and code unit value
-       cuFirst = str.charCodeAt(pos);
-       nextPos = pos + 1;
-       len = 1;
-       if ( // check if it’s the start of a surrogate pair
-               (cuFirst >= 0xD800) && (cuFirst <= 0xDBFF) && // high surrogate
-                       (size > nextPos) // there is a next code unit
-       ) {
-               cuSecond = str.charCodeAt(nextPos);
-               if (cuSecond >= 0xDC00 && cuSecond <= 0xDFFF) len = 2; // low surrogate
-       }
-       return str.slice(pos, pos + len);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/camel-to-hyphen.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/camel-to-hyphen.js
deleted file mode 100644 (file)
index 6898097..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var replace = String.prototype.replace
-  , re = /([a-z\d])([A-Z])/g;
-
-module.exports = function () {
-       return replace.call(this, re, "$1-$2").toLowerCase();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/capitalize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/capitalize.js
deleted file mode 100644 (file)
index ed76827..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       var str = String(value(this));
-       return str.charAt(0).toUpperCase() + str.slice(1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/case-insensitive-compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/case-insensitive-compare.js
deleted file mode 100644 (file)
index 599cb83..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var toLowerCase = String.prototype.toLowerCase;
-
-module.exports = function (other) {
-       return toLowerCase.call(this).localeCompare(toLowerCase.call(String(other)));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/implement.js
deleted file mode 100644 (file)
index 1e7a37b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'codePointAt',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/index.js
deleted file mode 100644 (file)
index 7e91d83..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.codePointAt
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/is-implemented.js
deleted file mode 100644 (file)
index b271589..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'abc\uD834\uDF06def';
-
-module.exports = function () {
-       if (typeof str.codePointAt !== 'function') return false;
-       return str.codePointAt(3) === 0x1D306;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/code-point-at/shim.js
deleted file mode 100644 (file)
index 1c9038b..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-// Based on: https://github.com/mathiasbynens/String.prototype.codePointAt
-// Thanks @mathiasbynens !
-
-'use strict';
-
-var toInteger  = require('../../../number/to-integer')
-  , validValue = require('../../../object/valid-value');
-
-module.exports = function (pos) {
-       var str = String(validValue(this)), l = str.length, first, second;
-       pos = toInteger(pos);
-
-       // Account for out-of-bounds indices:
-       if (pos < 0 || pos >= l) return undefined;
-
-       // Get the first code unit
-       first = str.charCodeAt(pos);
-       if ((first >= 0xD800) && (first <= 0xDBFF) && (l > pos + 1)) {
-               second = str.charCodeAt(pos + 1);
-               if (second >= 0xDC00 && second <= 0xDFFF) {
-                       // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
-                       return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;
-               }
-       }
-       return first;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/implement.js
deleted file mode 100644 (file)
index 6b7a3c0..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'contains',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/index.js
deleted file mode 100644 (file)
index abb3e37..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.contains
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/is-implemented.js
deleted file mode 100644 (file)
index 6f7d4b7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.contains !== 'function') return false;
-       return ((str.contains('dwa') === true) && (str.contains('foo') === false));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/contains/shim.js
deleted file mode 100644 (file)
index 89e39e7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var indexOf = String.prototype.indexOf;
-
-module.exports = function (searchString/*, position*/) {
-       return indexOf.call(this, searchString, arguments[1]) > -1;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/implement.js
deleted file mode 100644 (file)
index 0b09025..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'endsWith',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/index.js
deleted file mode 100644 (file)
index d2d9484..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.endsWith
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/is-implemented.js
deleted file mode 100644 (file)
index f3bb008..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.endsWith !== 'function') return false;
-       return ((str.endsWith('trzy') === true) && (str.endsWith('raz') === false));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/ends-with/shim.js
deleted file mode 100644 (file)
index 26cbdb1..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var toInteger = require('../../../number/to-integer')
-  , value     = require('../../../object/valid-value')
-
-  , min = Math.min, max = Math.max;
-
-module.exports = function (searchString/*, endPosition*/) {
-       var self, start, endPos;
-       self = String(value(this));
-       searchString = String(searchString);
-       endPos = arguments[1];
-       start = ((endPos == null) ? self.length :
-                       min(max(toInteger(endPos), 0), self.length)) - searchString.length;
-       return (start < 0) ? false : (self.indexOf(searchString, start) === start);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/hyphen-to-camel.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/hyphen-to-camel.js
deleted file mode 100644 (file)
index 8928b02..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var replace = String.prototype.replace
-
-  , re = /-([a-z0-9])/g
-  , toUpperCase = function (m, a) { return a.toUpperCase(); };
-
-module.exports = function () { return replace.call(this, re, toUpperCase); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/indent.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/indent.js
deleted file mode 100644 (file)
index 223bd82..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var repeat = require('./repeat')
-
-  , replace = String.prototype.replace
-  , re = /(\r\n|[\n\r\u2028\u2029])([\u0000-\u0009\u000b-\uffff]+)/g;
-
-module.exports = function (indent/*, count*/) {
-       var count = arguments[1];
-       indent = repeat.call(String(indent), (count == null) ? 1 : count);
-       return indent + replace.call(this, re, '$1' + indent + '$2');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/index.js
deleted file mode 100644 (file)
index 2b24694..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       at:                     require('./at'),
-       camelToHyphen:          require('./camel-to-hyphen'),
-       capitalize:             require('./capitalize'),
-       caseInsensitiveCompare: require('./case-insensitive-compare'),
-       codePointAt:            require('./code-point-at'),
-       contains:               require('./contains'),
-       hyphenToCamel:          require('./hyphen-to-camel'),
-       endsWith:               require('./ends-with'),
-       indent:                 require('./indent'),
-       last:                   require('./last'),
-       normalize:              require('./normalize'),
-       pad:                    require('./pad'),
-       plainReplace:           require('./plain-replace'),
-       plainReplaceAll:        require('./plain-replace-all'),
-       repeat:                 require('./repeat'),
-       startsWith:             require('./starts-with')
-};
-module.exports[require('es6-symbol').iterator] = require('./@@iterator');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/last.js
deleted file mode 100644 (file)
index d5cf46e..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function () {
-       var self = String(value(this)), l = self.length;
-       return l ? self[l - 1] : null;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/_data.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/_data.js
deleted file mode 100644 (file)
index e4e00a3..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-'use strict';
-
-module.exports = { 0:{60:[,,{824:8814}],61:[,,{824:8800}],62:[,,{824:8815}],65:[,,{768:192,769:193,770:194,771:195,772:256,774:258,775:550,776:196,777:7842,778:197,780:461,783:512,785:514,803:7840,805:7680,808:260}],66:[,,{775:7682,803:7684,817:7686}],67:[,,{769:262,770:264,775:266,780:268,807:199}],68:[,,{775:7690,780:270,803:7692,807:7696,813:7698,817:7694}],69:[,,{768:200,769:201,770:202,771:7868,772:274,774:276,775:278,776:203,777:7866,780:282,783:516,785:518,803:7864,807:552,808:280,813:7704,816:7706}],70:[,,{775:7710}],71:[,,{769:500,770:284,772:7712,774:286,775:288,780:486,807:290}],72:[,,{770:292,775:7714,776:7718,780:542,803:7716,807:7720,814:7722}],73:[,,{768:204,769:205,770:206,771:296,772:298,774:300,775:304,776:207,777:7880,780:463,783:520,785:522,803:7882,808:302,816:7724}],74:[,,{770:308}],75:[,,{769:7728,780:488,803:7730,807:310,817:7732}],76:[,,{769:313,780:317,803:7734,807:315,813:7740,817:7738}],77:[,,{769:7742,775:7744,803:7746}],78:[,,{768:504,769:323,771:209,775:7748,780:327,803:7750,807:325,813:7754,817:7752}],79:[,,{768:210,769:211,770:212,771:213,772:332,774:334,775:558,776:214,777:7886,779:336,780:465,783:524,785:526,795:416,803:7884,808:490}],80:[,,{769:7764,775:7766}],82:[,,{769:340,775:7768,780:344,783:528,785:530,803:7770,807:342,817:7774}],83:[,,{769:346,770:348,775:7776,780:352,803:7778,806:536,807:350}],84:[,,{775:7786,780:356,803:7788,806:538,807:354,813:7792,817:7790}],85:[,,{768:217,769:218,770:219,771:360,772:362,774:364,776:220,777:7910,778:366,779:368,780:467,783:532,785:534,795:431,803:7908,804:7794,808:370,813:7798,816:7796}],86:[,,{771:7804,803:7806}],87:[,,{768:7808,769:7810,770:372,775:7814,776:7812,803:7816}],88:[,,{775:7818,776:7820}],89:[,,{768:7922,769:221,770:374,771:7928,772:562,775:7822,776:376,777:7926,803:7924}],90:[,,{769:377,770:7824,775:379,780:381,803:7826,817:7828}],97:[,,{768:224,769:225,770:226,771:227,772:257,774:259,775:551,776:228,777:7843,778:229,780:462,783:513,785:515,803:7841,805:7681,808:261}],98:[,,{775:7683,803:7685,817:7687}],99:[,,{769:263,770:265,775:267,780:269,807:231}],100:[,,{775:7691,780:271,803:7693,807:7697,813:7699,817:7695}],101:[,,{768:232,769:233,770:234,771:7869,772:275,774:277,775:279,776:235,777:7867,780:283,783:517,785:519,803:7865,807:553,808:281,813:7705,816:7707}],102:[,,{775:7711}],103:[,,{769:501,770:285,772:7713,774:287,775:289,780:487,807:291}],104:[,,{770:293,775:7715,776:7719,780:543,803:7717,807:7721,814:7723,817:7830}],105:[,,{768:236,769:237,770:238,771:297,772:299,774:301,776:239,777:7881,780:464,783:521,785:523,803:7883,808:303,816:7725}],106:[,,{770:309,780:496}],107:[,,{769:7729,780:489,803:7731,807:311,817:7733}],108:[,,{769:314,780:318,803:7735,807:316,813:7741,817:7739}],109:[,,{769:7743,775:7745,803:7747}],110:[,,{768:505,769:324,771:241,775:7749,780:328,803:7751,807:326,813:7755,817:7753}],111:[,,{768:242,769:243,770:244,771:245,772:333,774:335,775:559,776:246,777:7887,779:337,780:466,783:525,785:527,795:417,803:7885,808:491}],112:[,,{769:7765,775:7767}],114:[,,{769:341,775:7769,780:345,783:529,785:531,803:7771,807:343,817:7775}],115:[,,{769:347,770:349,775:7777,780:353,803:7779,806:537,807:351}],116:[,,{775:7787,776:7831,780:357,803:7789,806:539,807:355,813:7793,817:7791}],117:[,,{768:249,769:250,770:251,771:361,772:363,774:365,776:252,777:7911,778:367,779:369,780:468,783:533,785:535,795:432,803:7909,804:7795,808:371,813:7799,816:7797}],118:[,,{771:7805,803:7807}],119:[,,{768:7809,769:7811,770:373,775:7815,776:7813,778:7832,803:7817}],120:[,,{775:7819,776:7821}],121:[,,{768:7923,769:253,770:375,771:7929,772:563,775:7823,776:255,777:7927,778:7833,803:7925}],122:[,,{769:378,770:7825,775:380,780:382,803:7827,817:7829}],160:[[32],256],168:[[32,776],256,{768:8173,769:901,834:8129}],170:[[97],256],175:[[32,772],256],178:[[50],256],179:[[51],256],180:[[32,769],256],181:[[956],256],184:[[32,807],256],185:[[49],256],186:[[111],256],188:[[49,8260,52],256],189:[[49,8260,50],256],190:[[51,8260,52],256],192:[[65,768]],193:[[65,769]],194:[[65,770],,{768:7846,769:7844,771:7850,777:7848}],195:[[65,771]],196:[[65,776],,{772:478}],197:[[65,778],,{769:506}],198:[,,{769:508,772:482}],199:[[67,807],,{769:7688}],200:[[69,768]],201:[[69,769]],202:[[69,770],,{768:7872,769:7870,771:7876,777:7874}],203:[[69,776]],204:[[73,768]],205:[[73,769]],206:[[73,770]],207:[[73,776],,{769:7726}],209:[[78,771]],210:[[79,768]],211:[[79,769]],212:[[79,770],,{768:7890,769:7888,771:7894,777:7892}],213:[[79,771],,{769:7756,772:556,776:7758}],214:[[79,776],,{772:554}],216:[,,{769:510}],217:[[85,768]],218:[[85,769]],219:[[85,770]],220:[[85,776],,{768:475,769:471,772:469,780:473}],221:[[89,769]],224:[[97,768]],225:[[97,769]],226:[[97,770],,{768:7847,769:7845,771:7851,777:7849}],227:[[97,771]],228:[[97,776],,{772:479}],229:[[97,778],,{769:507}],230:[,,{769:509,772:483}],231:[[99,807],,{769:7689}],232:[[101,768]],233:[[101,769]],234:[[101,770],,{768:7873,769:7871,771:7877,777:7875}],235:[[101,776]],236:[[105,768]],237:[[105,769]],238:[[105,770]],239:[[105,776],,{769:7727}],241:[[110,771]],242:[[111,768]],243:[[111,769]],244:[[111,770],,{768:7891,769:7889,771:7895,777:7893}],245:[[111,771],,{769:7757,772:557,776:7759}],246:[[111,776],,{772:555}],248:[,,{769:511}],249:[[117,768]],250:[[117,769]],251:[[117,770]],252:[[117,776],,{768:476,769:472,772:470,780:474}],253:[[121,769]],255:[[121,776]]},
-       256:{256:[[65,772]],257:[[97,772]],258:[[65,774],,{768:7856,769:7854,771:7860,777:7858}],259:[[97,774],,{768:7857,769:7855,771:7861,777:7859}],260:[[65,808]],261:[[97,808]],262:[[67,769]],263:[[99,769]],264:[[67,770]],265:[[99,770]],266:[[67,775]],267:[[99,775]],268:[[67,780]],269:[[99,780]],270:[[68,780]],271:[[100,780]],274:[[69,772],,{768:7700,769:7702}],275:[[101,772],,{768:7701,769:7703}],276:[[69,774]],277:[[101,774]],278:[[69,775]],279:[[101,775]],280:[[69,808]],281:[[101,808]],282:[[69,780]],283:[[101,780]],284:[[71,770]],285:[[103,770]],286:[[71,774]],287:[[103,774]],288:[[71,775]],289:[[103,775]],290:[[71,807]],291:[[103,807]],292:[[72,770]],293:[[104,770]],296:[[73,771]],297:[[105,771]],298:[[73,772]],299:[[105,772]],300:[[73,774]],301:[[105,774]],302:[[73,808]],303:[[105,808]],304:[[73,775]],306:[[73,74],256],307:[[105,106],256],308:[[74,770]],309:[[106,770]],310:[[75,807]],311:[[107,807]],313:[[76,769]],314:[[108,769]],315:[[76,807]],316:[[108,807]],317:[[76,780]],318:[[108,780]],319:[[76,183],256],320:[[108,183],256],323:[[78,769]],324:[[110,769]],325:[[78,807]],326:[[110,807]],327:[[78,780]],328:[[110,780]],329:[[700,110],256],332:[[79,772],,{768:7760,769:7762}],333:[[111,772],,{768:7761,769:7763}],334:[[79,774]],335:[[111,774]],336:[[79,779]],337:[[111,779]],340:[[82,769]],341:[[114,769]],342:[[82,807]],343:[[114,807]],344:[[82,780]],345:[[114,780]],346:[[83,769],,{775:7780}],347:[[115,769],,{775:7781}],348:[[83,770]],349:[[115,770]],350:[[83,807]],351:[[115,807]],352:[[83,780],,{775:7782}],353:[[115,780],,{775:7783}],354:[[84,807]],355:[[116,807]],356:[[84,780]],357:[[116,780]],360:[[85,771],,{769:7800}],361:[[117,771],,{769:7801}],362:[[85,772],,{776:7802}],363:[[117,772],,{776:7803}],364:[[85,774]],365:[[117,774]],366:[[85,778]],367:[[117,778]],368:[[85,779]],369:[[117,779]],370:[[85,808]],371:[[117,808]],372:[[87,770]],373:[[119,770]],374:[[89,770]],375:[[121,770]],376:[[89,776]],377:[[90,769]],378:[[122,769]],379:[[90,775]],380:[[122,775]],381:[[90,780]],382:[[122,780]],383:[[115],256,{775:7835}],416:[[79,795],,{768:7900,769:7898,771:7904,777:7902,803:7906}],417:[[111,795],,{768:7901,769:7899,771:7905,777:7903,803:7907}],431:[[85,795],,{768:7914,769:7912,771:7918,777:7916,803:7920}],432:[[117,795],,{768:7915,769:7913,771:7919,777:7917,803:7921}],439:[,,{780:494}],452:[[68,381],256],453:[[68,382],256],454:[[100,382],256],455:[[76,74],256],456:[[76,106],256],457:[[108,106],256],458:[[78,74],256],459:[[78,106],256],460:[[110,106],256],461:[[65,780]],462:[[97,780]],463:[[73,780]],464:[[105,780]],465:[[79,780]],466:[[111,780]],467:[[85,780]],468:[[117,780]],469:[[220,772]],470:[[252,772]],471:[[220,769]],472:[[252,769]],473:[[220,780]],474:[[252,780]],475:[[220,768]],476:[[252,768]],478:[[196,772]],479:[[228,772]],480:[[550,772]],481:[[551,772]],482:[[198,772]],483:[[230,772]],486:[[71,780]],487:[[103,780]],488:[[75,780]],489:[[107,780]],490:[[79,808],,{772:492}],491:[[111,808],,{772:493}],492:[[490,772]],493:[[491,772]],494:[[439,780]],495:[[658,780]],496:[[106,780]],497:[[68,90],256],498:[[68,122],256],499:[[100,122],256],500:[[71,769]],501:[[103,769]],504:[[78,768]],505:[[110,768]],506:[[197,769]],507:[[229,769]],508:[[198,769]],509:[[230,769]],510:[[216,769]],511:[[248,769]],66045:[,220]},
-       512:{512:[[65,783]],513:[[97,783]],514:[[65,785]],515:[[97,785]],516:[[69,783]],517:[[101,783]],518:[[69,785]],519:[[101,785]],520:[[73,783]],521:[[105,783]],522:[[73,785]],523:[[105,785]],524:[[79,783]],525:[[111,783]],526:[[79,785]],527:[[111,785]],528:[[82,783]],529:[[114,783]],530:[[82,785]],531:[[114,785]],532:[[85,783]],533:[[117,783]],534:[[85,785]],535:[[117,785]],536:[[83,806]],537:[[115,806]],538:[[84,806]],539:[[116,806]],542:[[72,780]],543:[[104,780]],550:[[65,775],,{772:480}],551:[[97,775],,{772:481}],552:[[69,807],,{774:7708}],553:[[101,807],,{774:7709}],554:[[214,772]],555:[[246,772]],556:[[213,772]],557:[[245,772]],558:[[79,775],,{772:560}],559:[[111,775],,{772:561}],560:[[558,772]],561:[[559,772]],562:[[89,772]],563:[[121,772]],658:[,,{780:495}],688:[[104],256],689:[[614],256],690:[[106],256],691:[[114],256],692:[[633],256],693:[[635],256],694:[[641],256],695:[[119],256],696:[[121],256],728:[[32,774],256],729:[[32,775],256],730:[[32,778],256],731:[[32,808],256],732:[[32,771],256],733:[[32,779],256],736:[[611],256],737:[[108],256],738:[[115],256],739:[[120],256],740:[[661],256]},
-       768:{768:[,230],769:[,230],770:[,230],771:[,230],772:[,230],773:[,230],774:[,230],775:[,230],776:[,230,{769:836}],777:[,230],778:[,230],779:[,230],780:[,230],781:[,230],782:[,230],783:[,230],784:[,230],785:[,230],786:[,230],787:[,230],788:[,230],789:[,232],790:[,220],791:[,220],792:[,220],793:[,220],794:[,232],795:[,216],796:[,220],797:[,220],798:[,220],799:[,220],800:[,220],801:[,202],802:[,202],803:[,220],804:[,220],805:[,220],806:[,220],807:[,202],808:[,202],809:[,220],810:[,220],811:[,220],812:[,220],813:[,220],814:[,220],815:[,220],816:[,220],817:[,220],818:[,220],819:[,220],820:[,1],821:[,1],822:[,1],823:[,1],824:[,1],825:[,220],826:[,220],827:[,220],828:[,220],829:[,230],830:[,230],831:[,230],832:[[768],230],833:[[769],230],834:[,230],835:[[787],230],836:[[776,769],230],837:[,240],838:[,230],839:[,220],840:[,220],841:[,220],842:[,230],843:[,230],844:[,230],845:[,220],846:[,220],848:[,230],849:[,230],850:[,230],851:[,220],852:[,220],853:[,220],854:[,220],855:[,230],856:[,232],857:[,220],858:[,220],859:[,230],860:[,233],861:[,234],862:[,234],863:[,233],864:[,234],865:[,234],866:[,233],867:[,230],868:[,230],869:[,230],870:[,230],871:[,230],872:[,230],873:[,230],874:[,230],875:[,230],876:[,230],877:[,230],878:[,230],879:[,230],884:[[697]],890:[[32,837],256],894:[[59]],900:[[32,769],256],901:[[168,769]],902:[[913,769]],903:[[183]],904:[[917,769]],905:[[919,769]],906:[[921,769]],908:[[927,769]],910:[[933,769]],911:[[937,769]],912:[[970,769]],913:[,,{768:8122,769:902,772:8121,774:8120,787:7944,788:7945,837:8124}],917:[,,{768:8136,769:904,787:7960,788:7961}],919:[,,{768:8138,769:905,787:7976,788:7977,837:8140}],921:[,,{768:8154,769:906,772:8153,774:8152,776:938,787:7992,788:7993}],927:[,,{768:8184,769:908,787:8008,788:8009}],929:[,,{788:8172}],933:[,,{768:8170,769:910,772:8169,774:8168,776:939,788:8025}],937:[,,{768:8186,769:911,787:8040,788:8041,837:8188}],938:[[921,776]],939:[[933,776]],940:[[945,769],,{837:8116}],941:[[949,769]],942:[[951,769],,{837:8132}],943:[[953,769]],944:[[971,769]],945:[,,{768:8048,769:940,772:8113,774:8112,787:7936,788:7937,834:8118,837:8115}],949:[,,{768:8050,769:941,787:7952,788:7953}],951:[,,{768:8052,769:942,787:7968,788:7969,834:8134,837:8131}],953:[,,{768:8054,769:943,772:8145,774:8144,776:970,787:7984,788:7985,834:8150}],959:[,,{768:8056,769:972,787:8000,788:8001}],961:[,,{787:8164,788:8165}],965:[,,{768:8058,769:973,772:8161,774:8160,776:971,787:8016,788:8017,834:8166}],969:[,,{768:8060,769:974,787:8032,788:8033,834:8182,837:8179}],970:[[953,776],,{768:8146,769:912,834:8151}],971:[[965,776],,{768:8162,769:944,834:8167}],972:[[959,769]],973:[[965,769]],974:[[969,769],,{837:8180}],976:[[946],256],977:[[952],256],978:[[933],256,{769:979,776:980}],979:[[978,769]],980:[[978,776]],981:[[966],256],982:[[960],256],1008:[[954],256],1009:[[961],256],1010:[[962],256],1012:[[920],256],1013:[[949],256],1017:[[931],256]},
-       1024:{1024:[[1045,768]],1025:[[1045,776]],1027:[[1043,769]],1030:[,,{776:1031}],1031:[[1030,776]],1036:[[1050,769]],1037:[[1048,768]],1038:[[1059,774]],1040:[,,{774:1232,776:1234}],1043:[,,{769:1027}],1045:[,,{768:1024,774:1238,776:1025}],1046:[,,{774:1217,776:1244}],1047:[,,{776:1246}],1048:[,,{768:1037,772:1250,774:1049,776:1252}],1049:[[1048,774]],1050:[,,{769:1036}],1054:[,,{776:1254}],1059:[,,{772:1262,774:1038,776:1264,779:1266}],1063:[,,{776:1268}],1067:[,,{776:1272}],1069:[,,{776:1260}],1072:[,,{774:1233,776:1235}],1075:[,,{769:1107}],1077:[,,{768:1104,774:1239,776:1105}],1078:[,,{774:1218,776:1245}],1079:[,,{776:1247}],1080:[,,{768:1117,772:1251,774:1081,776:1253}],1081:[[1080,774]],1082:[,,{769:1116}],1086:[,,{776:1255}],1091:[,,{772:1263,774:1118,776:1265,779:1267}],1095:[,,{776:1269}],1099:[,,{776:1273}],1101:[,,{776:1261}],1104:[[1077,768]],1105:[[1077,776]],1107:[[1075,769]],1110:[,,{776:1111}],1111:[[1110,776]],1116:[[1082,769]],1117:[[1080,768]],1118:[[1091,774]],1140:[,,{783:1142}],1141:[,,{783:1143}],1142:[[1140,783]],1143:[[1141,783]],1155:[,230],1156:[,230],1157:[,230],1158:[,230],1159:[,230],1217:[[1046,774]],1218:[[1078,774]],1232:[[1040,774]],1233:[[1072,774]],1234:[[1040,776]],1235:[[1072,776]],1238:[[1045,774]],1239:[[1077,774]],1240:[,,{776:1242}],1241:[,,{776:1243}],1242:[[1240,776]],1243:[[1241,776]],1244:[[1046,776]],1245:[[1078,776]],1246:[[1047,776]],1247:[[1079,776]],1250:[[1048,772]],1251:[[1080,772]],1252:[[1048,776]],1253:[[1080,776]],1254:[[1054,776]],1255:[[1086,776]],1256:[,,{776:1258}],1257:[,,{776:1259}],1258:[[1256,776]],1259:[[1257,776]],1260:[[1069,776]],1261:[[1101,776]],1262:[[1059,772]],1263:[[1091,772]],1264:[[1059,776]],1265:[[1091,776]],1266:[[1059,779]],1267:[[1091,779]],1268:[[1063,776]],1269:[[1095,776]],1272:[[1067,776]],1273:[[1099,776]]},
-       1280:{1415:[[1381,1410],256],1425:[,220],1426:[,230],1427:[,230],1428:[,230],1429:[,230],1430:[,220],1431:[,230],1432:[,230],1433:[,230],1434:[,222],1435:[,220],1436:[,230],1437:[,230],1438:[,230],1439:[,230],1440:[,230],1441:[,230],1442:[,220],1443:[,220],1444:[,220],1445:[,220],1446:[,220],1447:[,220],1448:[,230],1449:[,230],1450:[,220],1451:[,230],1452:[,230],1453:[,222],1454:[,228],1455:[,230],1456:[,10],1457:[,11],1458:[,12],1459:[,13],1460:[,14],1461:[,15],1462:[,16],1463:[,17],1464:[,18],1465:[,19],1466:[,19],1467:[,20],1468:[,21],1469:[,22],1471:[,23],1473:[,24],1474:[,25],1476:[,230],1477:[,220],1479:[,18]},
-       1536:{1552:[,230],1553:[,230],1554:[,230],1555:[,230],1556:[,230],1557:[,230],1558:[,230],1559:[,230],1560:[,30],1561:[,31],1562:[,32],1570:[[1575,1619]],1571:[[1575,1620]],1572:[[1608,1620]],1573:[[1575,1621]],1574:[[1610,1620]],1575:[,,{1619:1570,1620:1571,1621:1573}],1608:[,,{1620:1572}],1610:[,,{1620:1574}],1611:[,27],1612:[,28],1613:[,29],1614:[,30],1615:[,31],1616:[,32],1617:[,33],1618:[,34],1619:[,230],1620:[,230],1621:[,220],1622:[,220],1623:[,230],1624:[,230],1625:[,230],1626:[,230],1627:[,230],1628:[,220],1629:[,230],1630:[,230],1631:[,220],1648:[,35],1653:[[1575,1652],256],1654:[[1608,1652],256],1655:[[1735,1652],256],1656:[[1610,1652],256],1728:[[1749,1620]],1729:[,,{1620:1730}],1730:[[1729,1620]],1746:[,,{1620:1747}],1747:[[1746,1620]],1749:[,,{1620:1728}],1750:[,230],1751:[,230],1752:[,230],1753:[,230],1754:[,230],1755:[,230],1756:[,230],1759:[,230],1760:[,230],1761:[,230],1762:[,230],1763:[,220],1764:[,230],1767:[,230],1768:[,230],1770:[,220],1771:[,230],1772:[,230],1773:[,220]},
-       1792:{1809:[,36],1840:[,230],1841:[,220],1842:[,230],1843:[,230],1844:[,220],1845:[,230],1846:[,230],1847:[,220],1848:[,220],1849:[,220],1850:[,230],1851:[,220],1852:[,220],1853:[,230],1854:[,220],1855:[,230],1856:[,230],1857:[,230],1858:[,220],1859:[,230],1860:[,220],1861:[,230],1862:[,220],1863:[,230],1864:[,220],1865:[,230],1866:[,230],2027:[,230],2028:[,230],2029:[,230],2030:[,230],2031:[,230],2032:[,230],2033:[,230],2034:[,220],2035:[,230]},
-       2048:{2070:[,230],2071:[,230],2072:[,230],2073:[,230],2075:[,230],2076:[,230],2077:[,230],2078:[,230],2079:[,230],2080:[,230],2081:[,230],2082:[,230],2083:[,230],2085:[,230],2086:[,230],2087:[,230],2089:[,230],2090:[,230],2091:[,230],2092:[,230],2093:[,230],2137:[,220],2138:[,220],2139:[,220],2276:[,230],2277:[,230],2278:[,220],2279:[,230],2280:[,230],2281:[,220],2282:[,230],2283:[,230],2284:[,230],2285:[,220],2286:[,220],2287:[,220],2288:[,27],2289:[,28],2290:[,29],2291:[,230],2292:[,230],2293:[,230],2294:[,220],2295:[,230],2296:[,230],2297:[,220],2298:[,220],2299:[,230],2300:[,230],2301:[,230],2302:[,230]},
-       2304:{2344:[,,{2364:2345}],2345:[[2344,2364]],2352:[,,{2364:2353}],2353:[[2352,2364]],2355:[,,{2364:2356}],2356:[[2355,2364]],2364:[,7],2381:[,9],2385:[,230],2386:[,220],2387:[,230],2388:[,230],2392:[[2325,2364],512],2393:[[2326,2364],512],2394:[[2327,2364],512],2395:[[2332,2364],512],2396:[[2337,2364],512],2397:[[2338,2364],512],2398:[[2347,2364],512],2399:[[2351,2364],512],2492:[,7],2503:[,,{2494:2507,2519:2508}],2507:[[2503,2494]],2508:[[2503,2519]],2509:[,9],2524:[[2465,2492],512],2525:[[2466,2492],512],2527:[[2479,2492],512]},
-       2560:{2611:[[2610,2620],512],2614:[[2616,2620],512],2620:[,7],2637:[,9],2649:[[2582,2620],512],2650:[[2583,2620],512],2651:[[2588,2620],512],2654:[[2603,2620],512],2748:[,7],2765:[,9],68109:[,220],68111:[,230],68152:[,230],68153:[,1],68154:[,220],68159:[,9]},
-       2816:{2876:[,7],2887:[,,{2878:2891,2902:2888,2903:2892}],2888:[[2887,2902]],2891:[[2887,2878]],2892:[[2887,2903]],2893:[,9],2908:[[2849,2876],512],2909:[[2850,2876],512],2962:[,,{3031:2964}],2964:[[2962,3031]],3014:[,,{3006:3018,3031:3020}],3015:[,,{3006:3019}],3018:[[3014,3006]],3019:[[3015,3006]],3020:[[3014,3031]],3021:[,9]},
-       3072:{3142:[,,{3158:3144}],3144:[[3142,3158]],3149:[,9],3157:[,84],3158:[,91],3260:[,7],3263:[,,{3285:3264}],3264:[[3263,3285]],3270:[,,{3266:3274,3285:3271,3286:3272}],3271:[[3270,3285]],3272:[[3270,3286]],3274:[[3270,3266],,{3285:3275}],3275:[[3274,3285]],3277:[,9]},
-       3328:{3398:[,,{3390:3402,3415:3404}],3399:[,,{3390:3403}],3402:[[3398,3390]],3403:[[3399,3390]],3404:[[3398,3415]],3405:[,9],3530:[,9],3545:[,,{3530:3546,3535:3548,3551:3550}],3546:[[3545,3530]],3548:[[3545,3535],,{3530:3549}],3549:[[3548,3530]],3550:[[3545,3551]]},
-       3584:{3635:[[3661,3634],256],3640:[,103],3641:[,103],3642:[,9],3656:[,107],3657:[,107],3658:[,107],3659:[,107],3763:[[3789,3762],256],3768:[,118],3769:[,118],3784:[,122],3785:[,122],3786:[,122],3787:[,122],3804:[[3755,3737],256],3805:[[3755,3745],256]},
-       3840:{3852:[[3851],256],3864:[,220],3865:[,220],3893:[,220],3895:[,220],3897:[,216],3907:[[3906,4023],512],3917:[[3916,4023],512],3922:[[3921,4023],512],3927:[[3926,4023],512],3932:[[3931,4023],512],3945:[[3904,4021],512],3953:[,129],3954:[,130],3955:[[3953,3954],512],3956:[,132],3957:[[3953,3956],512],3958:[[4018,3968],512],3959:[[4018,3969],256],3960:[[4019,3968],512],3961:[[4019,3969],256],3962:[,130],3963:[,130],3964:[,130],3965:[,130],3968:[,130],3969:[[3953,3968],512],3970:[,230],3971:[,230],3972:[,9],3974:[,230],3975:[,230],3987:[[3986,4023],512],3997:[[3996,4023],512],4002:[[4001,4023],512],4007:[[4006,4023],512],4012:[[4011,4023],512],4025:[[3984,4021],512],4038:[,220]},
-       4096:{4133:[,,{4142:4134}],4134:[[4133,4142]],4151:[,7],4153:[,9],4154:[,9],4237:[,220],4348:[[4316],256],69702:[,9],69785:[,,{69818:69786}],69786:[[69785,69818]],69787:[,,{69818:69788}],69788:[[69787,69818]],69797:[,,{69818:69803}],69803:[[69797,69818]],69817:[,9],69818:[,7]},
-       4352:{69888:[,230],69889:[,230],69890:[,230],69934:[[69937,69927]],69935:[[69938,69927]],69937:[,,{69927:69934}],69938:[,,{69927:69935}],69939:[,9],69940:[,9],70080:[,9]},
-       4864:{4957:[,230],4958:[,230],4959:[,230]},
-       5632:{71350:[,9],71351:[,7]},
-       5888:{5908:[,9],5940:[,9],6098:[,9],6109:[,230]},
-       6144:{6313:[,228]},
-       6400:{6457:[,222],6458:[,230],6459:[,220]},
-       6656:{6679:[,230],6680:[,220],6752:[,9],6773:[,230],6774:[,230],6775:[,230],6776:[,230],6777:[,230],6778:[,230],6779:[,230],6780:[,230],6783:[,220]},
-       6912:{6917:[,,{6965:6918}],6918:[[6917,6965]],6919:[,,{6965:6920}],6920:[[6919,6965]],6921:[,,{6965:6922}],6922:[[6921,6965]],6923:[,,{6965:6924}],6924:[[6923,6965]],6925:[,,{6965:6926}],6926:[[6925,6965]],6929:[,,{6965:6930}],6930:[[6929,6965]],6964:[,7],6970:[,,{6965:6971}],6971:[[6970,6965]],6972:[,,{6965:6973}],6973:[[6972,6965]],6974:[,,{6965:6976}],6975:[,,{6965:6977}],6976:[[6974,6965]],6977:[[6975,6965]],6978:[,,{6965:6979}],6979:[[6978,6965]],6980:[,9],7019:[,230],7020:[,220],7021:[,230],7022:[,230],7023:[,230],7024:[,230],7025:[,230],7026:[,230],7027:[,230],7082:[,9],7083:[,9],7142:[,7],7154:[,9],7155:[,9]},
-       7168:{7223:[,7],7376:[,230],7377:[,230],7378:[,230],7380:[,1],7381:[,220],7382:[,220],7383:[,220],7384:[,220],7385:[,220],7386:[,230],7387:[,230],7388:[,220],7389:[,220],7390:[,220],7391:[,220],7392:[,230],7394:[,1],7395:[,1],7396:[,1],7397:[,1],7398:[,1],7399:[,1],7400:[,1],7405:[,220],7412:[,230]},
-       7424:{7468:[[65],256],7469:[[198],256],7470:[[66],256],7472:[[68],256],7473:[[69],256],7474:[[398],256],7475:[[71],256],7476:[[72],256],7477:[[73],256],7478:[[74],256],7479:[[75],256],7480:[[76],256],7481:[[77],256],7482:[[78],256],7484:[[79],256],7485:[[546],256],7486:[[80],256],7487:[[82],256],7488:[[84],256],7489:[[85],256],7490:[[87],256],7491:[[97],256],7492:[[592],256],7493:[[593],256],7494:[[7426],256],7495:[[98],256],7496:[[100],256],7497:[[101],256],7498:[[601],256],7499:[[603],256],7500:[[604],256],7501:[[103],256],7503:[[107],256],7504:[[109],256],7505:[[331],256],7506:[[111],256],7507:[[596],256],7508:[[7446],256],7509:[[7447],256],7510:[[112],256],7511:[[116],256],7512:[[117],256],7513:[[7453],256],7514:[[623],256],7515:[[118],256],7516:[[7461],256],7517:[[946],256],7518:[[947],256],7519:[[948],256],7520:[[966],256],7521:[[967],256],7522:[[105],256],7523:[[114],256],7524:[[117],256],7525:[[118],256],7526:[[946],256],7527:[[947],256],7528:[[961],256],7529:[[966],256],7530:[[967],256],7544:[[1085],256],7579:[[594],256],7580:[[99],256],7581:[[597],256],7582:[[240],256],7583:[[604],256],7584:[[102],256],7585:[[607],256],7586:[[609],256],7587:[[613],256],7588:[[616],256],7589:[[617],256],7590:[[618],256],7591:[[7547],256],7592:[[669],256],7593:[[621],256],7594:[[7557],256],7595:[[671],256],7596:[[625],256],7597:[[624],256],7598:[[626],256],7599:[[627],256],7600:[[628],256],7601:[[629],256],7602:[[632],256],7603:[[642],256],7604:[[643],256],7605:[[427],256],7606:[[649],256],7607:[[650],256],7608:[[7452],256],7609:[[651],256],7610:[[652],256],7611:[[122],256],7612:[[656],256],7613:[[657],256],7614:[[658],256],7615:[[952],256],7616:[,230],7617:[,230],7618:[,220],7619:[,230],7620:[,230],7621:[,230],7622:[,230],7623:[,230],7624:[,230],7625:[,230],7626:[,220],7627:[,230],7628:[,230],7629:[,234],7630:[,214],7631:[,220],7632:[,202],7633:[,230],7634:[,230],7635:[,230],7636:[,230],7637:[,230],7638:[,230],7639:[,230],7640:[,230],7641:[,230],7642:[,230],7643:[,230],7644:[,230],7645:[,230],7646:[,230],7647:[,230],7648:[,230],7649:[,230],7650:[,230],7651:[,230],7652:[,230],7653:[,230],7654:[,230],7676:[,233],7677:[,220],7678:[,230],7679:[,220]},
-       7680:{7680:[[65,805]],7681:[[97,805]],7682:[[66,775]],7683:[[98,775]],7684:[[66,803]],7685:[[98,803]],7686:[[66,817]],7687:[[98,817]],7688:[[199,769]],7689:[[231,769]],7690:[[68,775]],7691:[[100,775]],7692:[[68,803]],7693:[[100,803]],7694:[[68,817]],7695:[[100,817]],7696:[[68,807]],7697:[[100,807]],7698:[[68,813]],7699:[[100,813]],7700:[[274,768]],7701:[[275,768]],7702:[[274,769]],7703:[[275,769]],7704:[[69,813]],7705:[[101,813]],7706:[[69,816]],7707:[[101,816]],7708:[[552,774]],7709:[[553,774]],7710:[[70,775]],7711:[[102,775]],7712:[[71,772]],7713:[[103,772]],7714:[[72,775]],7715:[[104,775]],7716:[[72,803]],7717:[[104,803]],7718:[[72,776]],7719:[[104,776]],7720:[[72,807]],7721:[[104,807]],7722:[[72,814]],7723:[[104,814]],7724:[[73,816]],7725:[[105,816]],7726:[[207,769]],7727:[[239,769]],7728:[[75,769]],7729:[[107,769]],7730:[[75,803]],7731:[[107,803]],7732:[[75,817]],7733:[[107,817]],7734:[[76,803],,{772:7736}],7735:[[108,803],,{772:7737}],7736:[[7734,772]],7737:[[7735,772]],7738:[[76,817]],7739:[[108,817]],7740:[[76,813]],7741:[[108,813]],7742:[[77,769]],7743:[[109,769]],7744:[[77,775]],7745:[[109,775]],7746:[[77,803]],7747:[[109,803]],7748:[[78,775]],7749:[[110,775]],7750:[[78,803]],7751:[[110,803]],7752:[[78,817]],7753:[[110,817]],7754:[[78,813]],7755:[[110,813]],7756:[[213,769]],7757:[[245,769]],7758:[[213,776]],7759:[[245,776]],7760:[[332,768]],7761:[[333,768]],7762:[[332,769]],7763:[[333,769]],7764:[[80,769]],7765:[[112,769]],7766:[[80,775]],7767:[[112,775]],7768:[[82,775]],7769:[[114,775]],7770:[[82,803],,{772:7772}],7771:[[114,803],,{772:7773}],7772:[[7770,772]],7773:[[7771,772]],7774:[[82,817]],7775:[[114,817]],7776:[[83,775]],7777:[[115,775]],7778:[[83,803],,{775:7784}],7779:[[115,803],,{775:7785}],7780:[[346,775]],7781:[[347,775]],7782:[[352,775]],7783:[[353,775]],7784:[[7778,775]],7785:[[7779,775]],7786:[[84,775]],7787:[[116,775]],7788:[[84,803]],7789:[[116,803]],7790:[[84,817]],7791:[[116,817]],7792:[[84,813]],7793:[[116,813]],7794:[[85,804]],7795:[[117,804]],7796:[[85,816]],7797:[[117,816]],7798:[[85,813]],7799:[[117,813]],7800:[[360,769]],7801:[[361,769]],7802:[[362,776]],7803:[[363,776]],7804:[[86,771]],7805:[[118,771]],7806:[[86,803]],7807:[[118,803]],7808:[[87,768]],7809:[[119,768]],7810:[[87,769]],7811:[[119,769]],7812:[[87,776]],7813:[[119,776]],7814:[[87,775]],7815:[[119,775]],7816:[[87,803]],7817:[[119,803]],7818:[[88,775]],7819:[[120,775]],7820:[[88,776]],7821:[[120,776]],7822:[[89,775]],7823:[[121,775]],7824:[[90,770]],7825:[[122,770]],7826:[[90,803]],7827:[[122,803]],7828:[[90,817]],7829:[[122,817]],7830:[[104,817]],7831:[[116,776]],7832:[[119,778]],7833:[[121,778]],7834:[[97,702],256],7835:[[383,775]],7840:[[65,803],,{770:7852,774:7862}],7841:[[97,803],,{770:7853,774:7863}],7842:[[65,777]],7843:[[97,777]],7844:[[194,769]],7845:[[226,769]],7846:[[194,768]],7847:[[226,768]],7848:[[194,777]],7849:[[226,777]],7850:[[194,771]],7851:[[226,771]],7852:[[7840,770]],7853:[[7841,770]],7854:[[258,769]],7855:[[259,769]],7856:[[258,768]],7857:[[259,768]],7858:[[258,777]],7859:[[259,777]],7860:[[258,771]],7861:[[259,771]],7862:[[7840,774]],7863:[[7841,774]],7864:[[69,803],,{770:7878}],7865:[[101,803],,{770:7879}],7866:[[69,777]],7867:[[101,777]],7868:[[69,771]],7869:[[101,771]],7870:[[202,769]],7871:[[234,769]],7872:[[202,768]],7873:[[234,768]],7874:[[202,777]],7875:[[234,777]],7876:[[202,771]],7877:[[234,771]],7878:[[7864,770]],7879:[[7865,770]],7880:[[73,777]],7881:[[105,777]],7882:[[73,803]],7883:[[105,803]],7884:[[79,803],,{770:7896}],7885:[[111,803],,{770:7897}],7886:[[79,777]],7887:[[111,777]],7888:[[212,769]],7889:[[244,769]],7890:[[212,768]],7891:[[244,768]],7892:[[212,777]],7893:[[244,777]],7894:[[212,771]],7895:[[244,771]],7896:[[7884,770]],7897:[[7885,770]],7898:[[416,769]],7899:[[417,769]],7900:[[416,768]],7901:[[417,768]],7902:[[416,777]],7903:[[417,777]],7904:[[416,771]],7905:[[417,771]],7906:[[416,803]],7907:[[417,803]],7908:[[85,803]],7909:[[117,803]],7910:[[85,777]],7911:[[117,777]],7912:[[431,769]],7913:[[432,769]],7914:[[431,768]],7915:[[432,768]],7916:[[431,777]],7917:[[432,777]],7918:[[431,771]],7919:[[432,771]],7920:[[431,803]],7921:[[432,803]],7922:[[89,768]],7923:[[121,768]],7924:[[89,803]],7925:[[121,803]],7926:[[89,777]],7927:[[121,777]],7928:[[89,771]],7929:[[121,771]]},
-       7936:{7936:[[945,787],,{768:7938,769:7940,834:7942,837:8064}],7937:[[945,788],,{768:7939,769:7941,834:7943,837:8065}],7938:[[7936,768],,{837:8066}],7939:[[7937,768],,{837:8067}],7940:[[7936,769],,{837:8068}],7941:[[7937,769],,{837:8069}],7942:[[7936,834],,{837:8070}],7943:[[7937,834],,{837:8071}],7944:[[913,787],,{768:7946,769:7948,834:7950,837:8072}],7945:[[913,788],,{768:7947,769:7949,834:7951,837:8073}],7946:[[7944,768],,{837:8074}],7947:[[7945,768],,{837:8075}],7948:[[7944,769],,{837:8076}],7949:[[7945,769],,{837:8077}],7950:[[7944,834],,{837:8078}],7951:[[7945,834],,{837:8079}],7952:[[949,787],,{768:7954,769:7956}],7953:[[949,788],,{768:7955,769:7957}],7954:[[7952,768]],7955:[[7953,768]],7956:[[7952,769]],7957:[[7953,769]],7960:[[917,787],,{768:7962,769:7964}],7961:[[917,788],,{768:7963,769:7965}],7962:[[7960,768]],7963:[[7961,768]],7964:[[7960,769]],7965:[[7961,769]],7968:[[951,787],,{768:7970,769:7972,834:7974,837:8080}],7969:[[951,788],,{768:7971,769:7973,834:7975,837:8081}],7970:[[7968,768],,{837:8082}],7971:[[7969,768],,{837:8083}],7972:[[7968,769],,{837:8084}],7973:[[7969,769],,{837:8085}],7974:[[7968,834],,{837:8086}],7975:[[7969,834],,{837:8087}],7976:[[919,787],,{768:7978,769:7980,834:7982,837:8088}],7977:[[919,788],,{768:7979,769:7981,834:7983,837:8089}],7978:[[7976,768],,{837:8090}],7979:[[7977,768],,{837:8091}],7980:[[7976,769],,{837:8092}],7981:[[7977,769],,{837:8093}],7982:[[7976,834],,{837:8094}],7983:[[7977,834],,{837:8095}],7984:[[953,787],,{768:7986,769:7988,834:7990}],7985:[[953,788],,{768:7987,769:7989,834:7991}],7986:[[7984,768]],7987:[[7985,768]],7988:[[7984,769]],7989:[[7985,769]],7990:[[7984,834]],7991:[[7985,834]],7992:[[921,787],,{768:7994,769:7996,834:7998}],7993:[[921,788],,{768:7995,769:7997,834:7999}],7994:[[7992,768]],7995:[[7993,768]],7996:[[7992,769]],7997:[[7993,769]],7998:[[7992,834]],7999:[[7993,834]],8000:[[959,787],,{768:8002,769:8004}],8001:[[959,788],,{768:8003,769:8005}],8002:[[8000,768]],8003:[[8001,768]],8004:[[8000,769]],8005:[[8001,769]],8008:[[927,787],,{768:8010,769:8012}],8009:[[927,788],,{768:8011,769:8013}],8010:[[8008,768]],8011:[[8009,768]],8012:[[8008,769]],8013:[[8009,769]],8016:[[965,787],,{768:8018,769:8020,834:8022}],8017:[[965,788],,{768:8019,769:8021,834:8023}],8018:[[8016,768]],8019:[[8017,768]],8020:[[8016,769]],8021:[[8017,769]],8022:[[8016,834]],8023:[[8017,834]],8025:[[933,788],,{768:8027,769:8029,834:8031}],8027:[[8025,768]],8029:[[8025,769]],8031:[[8025,834]],8032:[[969,787],,{768:8034,769:8036,834:8038,837:8096}],8033:[[969,788],,{768:8035,769:8037,834:8039,837:8097}],8034:[[8032,768],,{837:8098}],8035:[[8033,768],,{837:8099}],8036:[[8032,769],,{837:8100}],8037:[[8033,769],,{837:8101}],8038:[[8032,834],,{837:8102}],8039:[[8033,834],,{837:8103}],8040:[[937,787],,{768:8042,769:8044,834:8046,837:8104}],8041:[[937,788],,{768:8043,769:8045,834:8047,837:8105}],8042:[[8040,768],,{837:8106}],8043:[[8041,768],,{837:8107}],8044:[[8040,769],,{837:8108}],8045:[[8041,769],,{837:8109}],8046:[[8040,834],,{837:8110}],8047:[[8041,834],,{837:8111}],8048:[[945,768],,{837:8114}],8049:[[940]],8050:[[949,768]],8051:[[941]],8052:[[951,768],,{837:8130}],8053:[[942]],8054:[[953,768]],8055:[[943]],8056:[[959,768]],8057:[[972]],8058:[[965,768]],8059:[[973]],8060:[[969,768],,{837:8178}],8061:[[974]],8064:[[7936,837]],8065:[[7937,837]],8066:[[7938,837]],8067:[[7939,837]],8068:[[7940,837]],8069:[[7941,837]],8070:[[7942,837]],8071:[[7943,837]],8072:[[7944,837]],8073:[[7945,837]],8074:[[7946,837]],8075:[[7947,837]],8076:[[7948,837]],8077:[[7949,837]],8078:[[7950,837]],8079:[[7951,837]],8080:[[7968,837]],8081:[[7969,837]],8082:[[7970,837]],8083:[[7971,837]],8084:[[7972,837]],8085:[[7973,837]],8086:[[7974,837]],8087:[[7975,837]],8088:[[7976,837]],8089:[[7977,837]],8090:[[7978,837]],8091:[[7979,837]],8092:[[7980,837]],8093:[[7981,837]],8094:[[7982,837]],8095:[[7983,837]],8096:[[8032,837]],8097:[[8033,837]],8098:[[8034,837]],8099:[[8035,837]],8100:[[8036,837]],8101:[[8037,837]],8102:[[8038,837]],8103:[[8039,837]],8104:[[8040,837]],8105:[[8041,837]],8106:[[8042,837]],8107:[[8043,837]],8108:[[8044,837]],8109:[[8045,837]],8110:[[8046,837]],8111:[[8047,837]],8112:[[945,774]],8113:[[945,772]],8114:[[8048,837]],8115:[[945,837]],8116:[[940,837]],8118:[[945,834],,{837:8119}],8119:[[8118,837]],8120:[[913,774]],8121:[[913,772]],8122:[[913,768]],8123:[[902]],8124:[[913,837]],8125:[[32,787],256],8126:[[953]],8127:[[32,787],256,{768:8141,769:8142,834:8143}],8128:[[32,834],256],8129:[[168,834]],8130:[[8052,837]],8131:[[951,837]],8132:[[942,837]],8134:[[951,834],,{837:8135}],8135:[[8134,837]],8136:[[917,768]],8137:[[904]],8138:[[919,768]],8139:[[905]],8140:[[919,837]],8141:[[8127,768]],8142:[[8127,769]],8143:[[8127,834]],8144:[[953,774]],8145:[[953,772]],8146:[[970,768]],8147:[[912]],8150:[[953,834]],8151:[[970,834]],8152:[[921,774]],8153:[[921,772]],8154:[[921,768]],8155:[[906]],8157:[[8190,768]],8158:[[8190,769]],8159:[[8190,834]],8160:[[965,774]],8161:[[965,772]],8162:[[971,768]],8163:[[944]],8164:[[961,787]],8165:[[961,788]],8166:[[965,834]],8167:[[971,834]],8168:[[933,774]],8169:[[933,772]],8170:[[933,768]],8171:[[910]],8172:[[929,788]],8173:[[168,768]],8174:[[901]],8175:[[96]],8178:[[8060,837]],8179:[[969,837]],8180:[[974,837]],8182:[[969,834],,{837:8183}],8183:[[8182,837]],8184:[[927,768]],8185:[[908]],8186:[[937,768]],8187:[[911]],8188:[[937,837]],8189:[[180]],8190:[[32,788],256,{768:8157,769:8158,834:8159}]},
-       8192:{8192:[[8194]],8193:[[8195]],8194:[[32],256],8195:[[32],256],8196:[[32],256],8197:[[32],256],8198:[[32],256],8199:[[32],256],8200:[[32],256],8201:[[32],256],8202:[[32],256],8209:[[8208],256],8215:[[32,819],256],8228:[[46],256],8229:[[46,46],256],8230:[[46,46,46],256],8239:[[32],256],8243:[[8242,8242],256],8244:[[8242,8242,8242],256],8246:[[8245,8245],256],8247:[[8245,8245,8245],256],8252:[[33,33],256],8254:[[32,773],256],8263:[[63,63],256],8264:[[63,33],256],8265:[[33,63],256],8279:[[8242,8242,8242,8242],256],8287:[[32],256],8304:[[48],256],8305:[[105],256],8308:[[52],256],8309:[[53],256],8310:[[54],256],8311:[[55],256],8312:[[56],256],8313:[[57],256],8314:[[43],256],8315:[[8722],256],8316:[[61],256],8317:[[40],256],8318:[[41],256],8319:[[110],256],8320:[[48],256],8321:[[49],256],8322:[[50],256],8323:[[51],256],8324:[[52],256],8325:[[53],256],8326:[[54],256],8327:[[55],256],8328:[[56],256],8329:[[57],256],8330:[[43],256],8331:[[8722],256],8332:[[61],256],8333:[[40],256],8334:[[41],256],8336:[[97],256],8337:[[101],256],8338:[[111],256],8339:[[120],256],8340:[[601],256],8341:[[104],256],8342:[[107],256],8343:[[108],256],8344:[[109],256],8345:[[110],256],8346:[[112],256],8347:[[115],256],8348:[[116],256],8360:[[82,115],256],8400:[,230],8401:[,230],8402:[,1],8403:[,1],8404:[,230],8405:[,230],8406:[,230],8407:[,230],8408:[,1],8409:[,1],8410:[,1],8411:[,230],8412:[,230],8417:[,230],8421:[,1],8422:[,1],8423:[,230],8424:[,220],8425:[,230],8426:[,1],8427:[,1],8428:[,220],8429:[,220],8430:[,220],8431:[,220],8432:[,230]},
-       8448:{8448:[[97,47,99],256],8449:[[97,47,115],256],8450:[[67],256],8451:[[176,67],256],8453:[[99,47,111],256],8454:[[99,47,117],256],8455:[[400],256],8457:[[176,70],256],8458:[[103],256],8459:[[72],256],8460:[[72],256],8461:[[72],256],8462:[[104],256],8463:[[295],256],8464:[[73],256],8465:[[73],256],8466:[[76],256],8467:[[108],256],8469:[[78],256],8470:[[78,111],256],8473:[[80],256],8474:[[81],256],8475:[[82],256],8476:[[82],256],8477:[[82],256],8480:[[83,77],256],8481:[[84,69,76],256],8482:[[84,77],256],8484:[[90],256],8486:[[937]],8488:[[90],256],8490:[[75]],8491:[[197]],8492:[[66],256],8493:[[67],256],8495:[[101],256],8496:[[69],256],8497:[[70],256],8499:[[77],256],8500:[[111],256],8501:[[1488],256],8502:[[1489],256],8503:[[1490],256],8504:[[1491],256],8505:[[105],256],8507:[[70,65,88],256],8508:[[960],256],8509:[[947],256],8510:[[915],256],8511:[[928],256],8512:[[8721],256],8517:[[68],256],8518:[[100],256],8519:[[101],256],8520:[[105],256],8521:[[106],256],8528:[[49,8260,55],256],8529:[[49,8260,57],256],8530:[[49,8260,49,48],256],8531:[[49,8260,51],256],8532:[[50,8260,51],256],8533:[[49,8260,53],256],8534:[[50,8260,53],256],8535:[[51,8260,53],256],8536:[[52,8260,53],256],8537:[[49,8260,54],256],8538:[[53,8260,54],256],8539:[[49,8260,56],256],8540:[[51,8260,56],256],8541:[[53,8260,56],256],8542:[[55,8260,56],256],8543:[[49,8260],256],8544:[[73],256],8545:[[73,73],256],8546:[[73,73,73],256],8547:[[73,86],256],8548:[[86],256],8549:[[86,73],256],8550:[[86,73,73],256],8551:[[86,73,73,73],256],8552:[[73,88],256],8553:[[88],256],8554:[[88,73],256],8555:[[88,73,73],256],8556:[[76],256],8557:[[67],256],8558:[[68],256],8559:[[77],256],8560:[[105],256],8561:[[105,105],256],8562:[[105,105,105],256],8563:[[105,118],256],8564:[[118],256],8565:[[118,105],256],8566:[[118,105,105],256],8567:[[118,105,105,105],256],8568:[[105,120],256],8569:[[120],256],8570:[[120,105],256],8571:[[120,105,105],256],8572:[[108],256],8573:[[99],256],8574:[[100],256],8575:[[109],256],8585:[[48,8260,51],256],8592:[,,{824:8602}],8594:[,,{824:8603}],8596:[,,{824:8622}],8602:[[8592,824]],8603:[[8594,824]],8622:[[8596,824]],8653:[[8656,824]],8654:[[8660,824]],8655:[[8658,824]],8656:[,,{824:8653}],8658:[,,{824:8655}],8660:[,,{824:8654}]},
-       8704:{8707:[,,{824:8708}],8708:[[8707,824]],8712:[,,{824:8713}],8713:[[8712,824]],8715:[,,{824:8716}],8716:[[8715,824]],8739:[,,{824:8740}],8740:[[8739,824]],8741:[,,{824:8742}],8742:[[8741,824]],8748:[[8747,8747],256],8749:[[8747,8747,8747],256],8751:[[8750,8750],256],8752:[[8750,8750,8750],256],8764:[,,{824:8769}],8769:[[8764,824]],8771:[,,{824:8772}],8772:[[8771,824]],8773:[,,{824:8775}],8775:[[8773,824]],8776:[,,{824:8777}],8777:[[8776,824]],8781:[,,{824:8813}],8800:[[61,824]],8801:[,,{824:8802}],8802:[[8801,824]],8804:[,,{824:8816}],8805:[,,{824:8817}],8813:[[8781,824]],8814:[[60,824]],8815:[[62,824]],8816:[[8804,824]],8817:[[8805,824]],8818:[,,{824:8820}],8819:[,,{824:8821}],8820:[[8818,824]],8821:[[8819,824]],8822:[,,{824:8824}],8823:[,,{824:8825}],8824:[[8822,824]],8825:[[8823,824]],8826:[,,{824:8832}],8827:[,,{824:8833}],8828:[,,{824:8928}],8829:[,,{824:8929}],8832:[[8826,824]],8833:[[8827,824]],8834:[,,{824:8836}],8835:[,,{824:8837}],8836:[[8834,824]],8837:[[8835,824]],8838:[,,{824:8840}],8839:[,,{824:8841}],8840:[[8838,824]],8841:[[8839,824]],8849:[,,{824:8930}],8850:[,,{824:8931}],8866:[,,{824:8876}],8872:[,,{824:8877}],8873:[,,{824:8878}],8875:[,,{824:8879}],8876:[[8866,824]],8877:[[8872,824]],8878:[[8873,824]],8879:[[8875,824]],8882:[,,{824:8938}],8883:[,,{824:8939}],8884:[,,{824:8940}],8885:[,,{824:8941}],8928:[[8828,824]],8929:[[8829,824]],8930:[[8849,824]],8931:[[8850,824]],8938:[[8882,824]],8939:[[8883,824]],8940:[[8884,824]],8941:[[8885,824]]},
-       8960:{9001:[[12296]],9002:[[12297]]},
-       9216:{9312:[[49],256],9313:[[50],256],9314:[[51],256],9315:[[52],256],9316:[[53],256],9317:[[54],256],9318:[[55],256],9319:[[56],256],9320:[[57],256],9321:[[49,48],256],9322:[[49,49],256],9323:[[49,50],256],9324:[[49,51],256],9325:[[49,52],256],9326:[[49,53],256],9327:[[49,54],256],9328:[[49,55],256],9329:[[49,56],256],9330:[[49,57],256],9331:[[50,48],256],9332:[[40,49,41],256],9333:[[40,50,41],256],9334:[[40,51,41],256],9335:[[40,52,41],256],9336:[[40,53,41],256],9337:[[40,54,41],256],9338:[[40,55,41],256],9339:[[40,56,41],256],9340:[[40,57,41],256],9341:[[40,49,48,41],256],9342:[[40,49,49,41],256],9343:[[40,49,50,41],256],9344:[[40,49,51,41],256],9345:[[40,49,52,41],256],9346:[[40,49,53,41],256],9347:[[40,49,54,41],256],9348:[[40,49,55,41],256],9349:[[40,49,56,41],256],9350:[[40,49,57,41],256],9351:[[40,50,48,41],256],9352:[[49,46],256],9353:[[50,46],256],9354:[[51,46],256],9355:[[52,46],256],9356:[[53,46],256],9357:[[54,46],256],9358:[[55,46],256],9359:[[56,46],256],9360:[[57,46],256],9361:[[49,48,46],256],9362:[[49,49,46],256],9363:[[49,50,46],256],9364:[[49,51,46],256],9365:[[49,52,46],256],9366:[[49,53,46],256],9367:[[49,54,46],256],9368:[[49,55,46],256],9369:[[49,56,46],256],9370:[[49,57,46],256],9371:[[50,48,46],256],9372:[[40,97,41],256],9373:[[40,98,41],256],9374:[[40,99,41],256],9375:[[40,100,41],256],9376:[[40,101,41],256],9377:[[40,102,41],256],9378:[[40,103,41],256],9379:[[40,104,41],256],9380:[[40,105,41],256],9381:[[40,106,41],256],9382:[[40,107,41],256],9383:[[40,108,41],256],9384:[[40,109,41],256],9385:[[40,110,41],256],9386:[[40,111,41],256],9387:[[40,112,41],256],9388:[[40,113,41],256],9389:[[40,114,41],256],9390:[[40,115,41],256],9391:[[40,116,41],256],9392:[[40,117,41],256],9393:[[40,118,41],256],9394:[[40,119,41],256],9395:[[40,120,41],256],9396:[[40,121,41],256],9397:[[40,122,41],256],9398:[[65],256],9399:[[66],256],9400:[[67],256],9401:[[68],256],9402:[[69],256],9403:[[70],256],9404:[[71],256],9405:[[72],256],9406:[[73],256],9407:[[74],256],9408:[[75],256],9409:[[76],256],9410:[[77],256],9411:[[78],256],9412:[[79],256],9413:[[80],256],9414:[[81],256],9415:[[82],256],9416:[[83],256],9417:[[84],256],9418:[[85],256],9419:[[86],256],9420:[[87],256],9421:[[88],256],9422:[[89],256],9423:[[90],256],9424:[[97],256],9425:[[98],256],9426:[[99],256],9427:[[100],256],9428:[[101],256],9429:[[102],256],9430:[[103],256],9431:[[104],256],9432:[[105],256],9433:[[106],256],9434:[[107],256],9435:[[108],256],9436:[[109],256],9437:[[110],256],9438:[[111],256],9439:[[112],256],9440:[[113],256],9441:[[114],256],9442:[[115],256],9443:[[116],256],9444:[[117],256],9445:[[118],256],9446:[[119],256],9447:[[120],256],9448:[[121],256],9449:[[122],256],9450:[[48],256]},
-       10752:{10764:[[8747,8747,8747,8747],256],10868:[[58,58,61],256],10869:[[61,61],256],10870:[[61,61,61],256],10972:[[10973,824],512]},
-       11264:{11388:[[106],256],11389:[[86],256],11503:[,230],11504:[,230],11505:[,230]},
-       11520:{11631:[[11617],256],11647:[,9],11744:[,230],11745:[,230],11746:[,230],11747:[,230],11748:[,230],11749:[,230],11750:[,230],11751:[,230],11752:[,230],11753:[,230],11754:[,230],11755:[,230],11756:[,230],11757:[,230],11758:[,230],11759:[,230],11760:[,230],11761:[,230],11762:[,230],11763:[,230],11764:[,230],11765:[,230],11766:[,230],11767:[,230],11768:[,230],11769:[,230],11770:[,230],11771:[,230],11772:[,230],11773:[,230],11774:[,230],11775:[,230]},
-       11776:{11935:[[27597],256],12019:[[40863],256]},
-       12032:{12032:[[19968],256],12033:[[20008],256],12034:[[20022],256],12035:[[20031],256],12036:[[20057],256],12037:[[20101],256],12038:[[20108],256],12039:[[20128],256],12040:[[20154],256],12041:[[20799],256],12042:[[20837],256],12043:[[20843],256],12044:[[20866],256],12045:[[20886],256],12046:[[20907],256],12047:[[20960],256],12048:[[20981],256],12049:[[20992],256],12050:[[21147],256],12051:[[21241],256],12052:[[21269],256],12053:[[21274],256],12054:[[21304],256],12055:[[21313],256],12056:[[21340],256],12057:[[21353],256],12058:[[21378],256],12059:[[21430],256],12060:[[21448],256],12061:[[21475],256],12062:[[22231],256],12063:[[22303],256],12064:[[22763],256],12065:[[22786],256],12066:[[22794],256],12067:[[22805],256],12068:[[22823],256],12069:[[22899],256],12070:[[23376],256],12071:[[23424],256],12072:[[23544],256],12073:[[23567],256],12074:[[23586],256],12075:[[23608],256],12076:[[23662],256],12077:[[23665],256],12078:[[24027],256],12079:[[24037],256],12080:[[24049],256],12081:[[24062],256],12082:[[24178],256],12083:[[24186],256],12084:[[24191],256],12085:[[24308],256],12086:[[24318],256],12087:[[24331],256],12088:[[24339],256],12089:[[24400],256],12090:[[24417],256],12091:[[24435],256],12092:[[24515],256],12093:[[25096],256],12094:[[25142],256],12095:[[25163],256],12096:[[25903],256],12097:[[25908],256],12098:[[25991],256],12099:[[26007],256],12100:[[26020],256],12101:[[26041],256],12102:[[26080],256],12103:[[26085],256],12104:[[26352],256],12105:[[26376],256],12106:[[26408],256],12107:[[27424],256],12108:[[27490],256],12109:[[27513],256],12110:[[27571],256],12111:[[27595],256],12112:[[27604],256],12113:[[27611],256],12114:[[27663],256],12115:[[27668],256],12116:[[27700],256],12117:[[28779],256],12118:[[29226],256],12119:[[29238],256],12120:[[29243],256],12121:[[29247],256],12122:[[29255],256],12123:[[29273],256],12124:[[29275],256],12125:[[29356],256],12126:[[29572],256],12127:[[29577],256],12128:[[29916],256],12129:[[29926],256],12130:[[29976],256],12131:[[29983],256],12132:[[29992],256],12133:[[30000],256],12134:[[30091],256],12135:[[30098],256],12136:[[30326],256],12137:[[30333],256],12138:[[30382],256],12139:[[30399],256],12140:[[30446],256],12141:[[30683],256],12142:[[30690],256],12143:[[30707],256],12144:[[31034],256],12145:[[31160],256],12146:[[31166],256],12147:[[31348],256],12148:[[31435],256],12149:[[31481],256],12150:[[31859],256],12151:[[31992],256],12152:[[32566],256],12153:[[32593],256],12154:[[32650],256],12155:[[32701],256],12156:[[32769],256],12157:[[32780],256],12158:[[32786],256],12159:[[32819],256],12160:[[32895],256],12161:[[32905],256],12162:[[33251],256],12163:[[33258],256],12164:[[33267],256],12165:[[33276],256],12166:[[33292],256],12167:[[33307],256],12168:[[33311],256],12169:[[33390],256],12170:[[33394],256],12171:[[33400],256],12172:[[34381],256],12173:[[34411],256],12174:[[34880],256],12175:[[34892],256],12176:[[34915],256],12177:[[35198],256],12178:[[35211],256],12179:[[35282],256],12180:[[35328],256],12181:[[35895],256],12182:[[35910],256],12183:[[35925],256],12184:[[35960],256],12185:[[35997],256],12186:[[36196],256],12187:[[36208],256],12188:[[36275],256],12189:[[36523],256],12190:[[36554],256],12191:[[36763],256],12192:[[36784],256],12193:[[36789],256],12194:[[37009],256],12195:[[37193],256],12196:[[37318],256],12197:[[37324],256],12198:[[37329],256],12199:[[38263],256],12200:[[38272],256],12201:[[38428],256],12202:[[38582],256],12203:[[38585],256],12204:[[38632],256],12205:[[38737],256],12206:[[38750],256],12207:[[38754],256],12208:[[38761],256],12209:[[38859],256],12210:[[38893],256],12211:[[38899],256],12212:[[38913],256],12213:[[39080],256],12214:[[39131],256],12215:[[39135],256],12216:[[39318],256],12217:[[39321],256],12218:[[39340],256],12219:[[39592],256],12220:[[39640],256],12221:[[39647],256],12222:[[39717],256],12223:[[39727],256],12224:[[39730],256],12225:[[39740],256],12226:[[39770],256],12227:[[40165],256],12228:[[40565],256],12229:[[40575],256],12230:[[40613],256],12231:[[40635],256],12232:[[40643],256],12233:[[40653],256],12234:[[40657],256],12235:[[40697],256],12236:[[40701],256],12237:[[40718],256],12238:[[40723],256],12239:[[40736],256],12240:[[40763],256],12241:[[40778],256],12242:[[40786],256],12243:[[40845],256],12244:[[40860],256],12245:[[40864],256]},
-       12288:{12288:[[32],256],12330:[,218],12331:[,228],12332:[,232],12333:[,222],12334:[,224],12335:[,224],12342:[[12306],256],12344:[[21313],256],12345:[[21316],256],12346:[[21317],256],12358:[,,{12441:12436}],12363:[,,{12441:12364}],12364:[[12363,12441]],12365:[,,{12441:12366}],12366:[[12365,12441]],12367:[,,{12441:12368}],12368:[[12367,12441]],12369:[,,{12441:12370}],12370:[[12369,12441]],12371:[,,{12441:12372}],12372:[[12371,12441]],12373:[,,{12441:12374}],12374:[[12373,12441]],12375:[,,{12441:12376}],12376:[[12375,12441]],12377:[,,{12441:12378}],12378:[[12377,12441]],12379:[,,{12441:12380}],12380:[[12379,12441]],12381:[,,{12441:12382}],12382:[[12381,12441]],12383:[,,{12441:12384}],12384:[[12383,12441]],12385:[,,{12441:12386}],12386:[[12385,12441]],12388:[,,{12441:12389}],12389:[[12388,12441]],12390:[,,{12441:12391}],12391:[[12390,12441]],12392:[,,{12441:12393}],12393:[[12392,12441]],12399:[,,{12441:12400,12442:12401}],12400:[[12399,12441]],12401:[[12399,12442]],12402:[,,{12441:12403,12442:12404}],12403:[[12402,12441]],12404:[[12402,12442]],12405:[,,{12441:12406,12442:12407}],12406:[[12405,12441]],12407:[[12405,12442]],12408:[,,{12441:12409,12442:12410}],12409:[[12408,12441]],12410:[[12408,12442]],12411:[,,{12441:12412,12442:12413}],12412:[[12411,12441]],12413:[[12411,12442]],12436:[[12358,12441]],12441:[,8],12442:[,8],12443:[[32,12441],256],12444:[[32,12442],256],12445:[,,{12441:12446}],12446:[[12445,12441]],12447:[[12424,12426],256],12454:[,,{12441:12532}],12459:[,,{12441:12460}],12460:[[12459,12441]],12461:[,,{12441:12462}],12462:[[12461,12441]],12463:[,,{12441:12464}],12464:[[12463,12441]],12465:[,,{12441:12466}],12466:[[12465,12441]],12467:[,,{12441:12468}],12468:[[12467,12441]],12469:[,,{12441:12470}],12470:[[12469,12441]],12471:[,,{12441:12472}],12472:[[12471,12441]],12473:[,,{12441:12474}],12474:[[12473,12441]],12475:[,,{12441:12476}],12476:[[12475,12441]],12477:[,,{12441:12478}],12478:[[12477,12441]],12479:[,,{12441:12480}],12480:[[12479,12441]],12481:[,,{12441:12482}],12482:[[12481,12441]],12484:[,,{12441:12485}],12485:[[12484,12441]],12486:[,,{12441:12487}],12487:[[12486,12441]],12488:[,,{12441:12489}],12489:[[12488,12441]],12495:[,,{12441:12496,12442:12497}],12496:[[12495,12441]],12497:[[12495,12442]],12498:[,,{12441:12499,12442:12500}],12499:[[12498,12441]],12500:[[12498,12442]],12501:[,,{12441:12502,12442:12503}],12502:[[12501,12441]],12503:[[12501,12442]],12504:[,,{12441:12505,12442:12506}],12505:[[12504,12441]],12506:[[12504,12442]],12507:[,,{12441:12508,12442:12509}],12508:[[12507,12441]],12509:[[12507,12442]],12527:[,,{12441:12535}],12528:[,,{12441:12536}],12529:[,,{12441:12537}],12530:[,,{12441:12538}],12532:[[12454,12441]],12535:[[12527,12441]],12536:[[12528,12441]],12537:[[12529,12441]],12538:[[12530,12441]],12541:[,,{12441:12542}],12542:[[12541,12441]],12543:[[12467,12488],256]},
-       12544:{12593:[[4352],256],12594:[[4353],256],12595:[[4522],256],12596:[[4354],256],12597:[[4524],256],12598:[[4525],256],12599:[[4355],256],12600:[[4356],256],12601:[[4357],256],12602:[[4528],256],12603:[[4529],256],12604:[[4530],256],12605:[[4531],256],12606:[[4532],256],12607:[[4533],256],12608:[[4378],256],12609:[[4358],256],12610:[[4359],256],12611:[[4360],256],12612:[[4385],256],12613:[[4361],256],12614:[[4362],256],12615:[[4363],256],12616:[[4364],256],12617:[[4365],256],12618:[[4366],256],12619:[[4367],256],12620:[[4368],256],12621:[[4369],256],12622:[[4370],256],12623:[[4449],256],12624:[[4450],256],12625:[[4451],256],12626:[[4452],256],12627:[[4453],256],12628:[[4454],256],12629:[[4455],256],12630:[[4456],256],12631:[[4457],256],12632:[[4458],256],12633:[[4459],256],12634:[[4460],256],12635:[[4461],256],12636:[[4462],256],12637:[[4463],256],12638:[[4464],256],12639:[[4465],256],12640:[[4466],256],12641:[[4467],256],12642:[[4468],256],12643:[[4469],256],12644:[[4448],256],12645:[[4372],256],12646:[[4373],256],12647:[[4551],256],12648:[[4552],256],12649:[[4556],256],12650:[[4558],256],12651:[[4563],256],12652:[[4567],256],12653:[[4569],256],12654:[[4380],256],12655:[[4573],256],12656:[[4575],256],12657:[[4381],256],12658:[[4382],256],12659:[[4384],256],12660:[[4386],256],12661:[[4387],256],12662:[[4391],256],12663:[[4393],256],12664:[[4395],256],12665:[[4396],256],12666:[[4397],256],12667:[[4398],256],12668:[[4399],256],12669:[[4402],256],12670:[[4406],256],12671:[[4416],256],12672:[[4423],256],12673:[[4428],256],12674:[[4593],256],12675:[[4594],256],12676:[[4439],256],12677:[[4440],256],12678:[[4441],256],12679:[[4484],256],12680:[[4485],256],12681:[[4488],256],12682:[[4497],256],12683:[[4498],256],12684:[[4500],256],12685:[[4510],256],12686:[[4513],256],12690:[[19968],256],12691:[[20108],256],12692:[[19977],256],12693:[[22235],256],12694:[[19978],256],12695:[[20013],256],12696:[[19979],256],12697:[[30002],256],12698:[[20057],256],12699:[[19993],256],12700:[[19969],256],12701:[[22825],256],12702:[[22320],256],12703:[[20154],256]},
-       12800:{12800:[[40,4352,41],256],12801:[[40,4354,41],256],12802:[[40,4355,41],256],12803:[[40,4357,41],256],12804:[[40,4358,41],256],12805:[[40,4359,41],256],12806:[[40,4361,41],256],12807:[[40,4363,41],256],12808:[[40,4364,41],256],12809:[[40,4366,41],256],12810:[[40,4367,41],256],12811:[[40,4368,41],256],12812:[[40,4369,41],256],12813:[[40,4370,41],256],12814:[[40,4352,4449,41],256],12815:[[40,4354,4449,41],256],12816:[[40,4355,4449,41],256],12817:[[40,4357,4449,41],256],12818:[[40,4358,4449,41],256],12819:[[40,4359,4449,41],256],12820:[[40,4361,4449,41],256],12821:[[40,4363,4449,41],256],12822:[[40,4364,4449,41],256],12823:[[40,4366,4449,41],256],12824:[[40,4367,4449,41],256],12825:[[40,4368,4449,41],256],12826:[[40,4369,4449,41],256],12827:[[40,4370,4449,41],256],12828:[[40,4364,4462,41],256],12829:[[40,4363,4457,4364,4453,4523,41],256],12830:[[40,4363,4457,4370,4462,41],256],12832:[[40,19968,41],256],12833:[[40,20108,41],256],12834:[[40,19977,41],256],12835:[[40,22235,41],256],12836:[[40,20116,41],256],12837:[[40,20845,41],256],12838:[[40,19971,41],256],12839:[[40,20843,41],256],12840:[[40,20061,41],256],12841:[[40,21313,41],256],12842:[[40,26376,41],256],12843:[[40,28779,41],256],12844:[[40,27700,41],256],12845:[[40,26408,41],256],12846:[[40,37329,41],256],12847:[[40,22303,41],256],12848:[[40,26085,41],256],12849:[[40,26666,41],256],12850:[[40,26377,41],256],12851:[[40,31038,41],256],12852:[[40,21517,41],256],12853:[[40,29305,41],256],12854:[[40,36001,41],256],12855:[[40,31069,41],256],12856:[[40,21172,41],256],12857:[[40,20195,41],256],12858:[[40,21628,41],256],12859:[[40,23398,41],256],12860:[[40,30435,41],256],12861:[[40,20225,41],256],12862:[[40,36039,41],256],12863:[[40,21332,41],256],12864:[[40,31085,41],256],12865:[[40,20241,41],256],12866:[[40,33258,41],256],12867:[[40,33267,41],256],12868:[[21839],256],12869:[[24188],256],12870:[[25991],256],12871:[[31631],256],12880:[[80,84,69],256],12881:[[50,49],256],12882:[[50,50],256],12883:[[50,51],256],12884:[[50,52],256],12885:[[50,53],256],12886:[[50,54],256],12887:[[50,55],256],12888:[[50,56],256],12889:[[50,57],256],12890:[[51,48],256],12891:[[51,49],256],12892:[[51,50],256],12893:[[51,51],256],12894:[[51,52],256],12895:[[51,53],256],12896:[[4352],256],12897:[[4354],256],12898:[[4355],256],12899:[[4357],256],12900:[[4358],256],12901:[[4359],256],12902:[[4361],256],12903:[[4363],256],12904:[[4364],256],12905:[[4366],256],12906:[[4367],256],12907:[[4368],256],12908:[[4369],256],12909:[[4370],256],12910:[[4352,4449],256],12911:[[4354,4449],256],12912:[[4355,4449],256],12913:[[4357,4449],256],12914:[[4358,4449],256],12915:[[4359,4449],256],12916:[[4361,4449],256],12917:[[4363,4449],256],12918:[[4364,4449],256],12919:[[4366,4449],256],12920:[[4367,4449],256],12921:[[4368,4449],256],12922:[[4369,4449],256],12923:[[4370,4449],256],12924:[[4366,4449,4535,4352,4457],256],12925:[[4364,4462,4363,4468],256],12926:[[4363,4462],256],12928:[[19968],256],12929:[[20108],256],12930:[[19977],256],12931:[[22235],256],12932:[[20116],256],12933:[[20845],256],12934:[[19971],256],12935:[[20843],256],12936:[[20061],256],12937:[[21313],256],12938:[[26376],256],12939:[[28779],256],12940:[[27700],256],12941:[[26408],256],12942:[[37329],256],12943:[[22303],256],12944:[[26085],256],12945:[[26666],256],12946:[[26377],256],12947:[[31038],256],12948:[[21517],256],12949:[[29305],256],12950:[[36001],256],12951:[[31069],256],12952:[[21172],256],12953:[[31192],256],12954:[[30007],256],12955:[[22899],256],12956:[[36969],256],12957:[[20778],256],12958:[[21360],256],12959:[[27880],256],12960:[[38917],256],12961:[[20241],256],12962:[[20889],256],12963:[[27491],256],12964:[[19978],256],12965:[[20013],256],12966:[[19979],256],12967:[[24038],256],12968:[[21491],256],12969:[[21307],256],12970:[[23447],256],12971:[[23398],256],12972:[[30435],256],12973:[[20225],256],12974:[[36039],256],12975:[[21332],256],12976:[[22812],256],12977:[[51,54],256],12978:[[51,55],256],12979:[[51,56],256],12980:[[51,57],256],12981:[[52,48],256],12982:[[52,49],256],12983:[[52,50],256],12984:[[52,51],256],12985:[[52,52],256],12986:[[52,53],256],12987:[[52,54],256],12988:[[52,55],256],12989:[[52,56],256],12990:[[52,57],256],12991:[[53,48],256],12992:[[49,26376],256],12993:[[50,26376],256],12994:[[51,26376],256],12995:[[52,26376],256],12996:[[53,26376],256],12997:[[54,26376],256],12998:[[55,26376],256],12999:[[56,26376],256],13000:[[57,26376],256],13001:[[49,48,26376],256],13002:[[49,49,26376],256],13003:[[49,50,26376],256],13004:[[72,103],256],13005:[[101,114,103],256],13006:[[101,86],256],13007:[[76,84,68],256],13008:[[12450],256],13009:[[12452],256],13010:[[12454],256],13011:[[12456],256],13012:[[12458],256],13013:[[12459],256],13014:[[12461],256],13015:[[12463],256],13016:[[12465],256],13017:[[12467],256],13018:[[12469],256],13019:[[12471],256],13020:[[12473],256],13021:[[12475],256],13022:[[12477],256],13023:[[12479],256],13024:[[12481],256],13025:[[12484],256],13026:[[12486],256],13027:[[12488],256],13028:[[12490],256],13029:[[12491],256],13030:[[12492],256],13031:[[12493],256],13032:[[12494],256],13033:[[12495],256],13034:[[12498],256],13035:[[12501],256],13036:[[12504],256],13037:[[12507],256],13038:[[12510],256],13039:[[12511],256],13040:[[12512],256],13041:[[12513],256],13042:[[12514],256],13043:[[12516],256],13044:[[12518],256],13045:[[12520],256],13046:[[12521],256],13047:[[12522],256],13048:[[12523],256],13049:[[12524],256],13050:[[12525],256],13051:[[12527],256],13052:[[12528],256],13053:[[12529],256],13054:[[12530],256]},
-       13056:{13056:[[12450,12497,12540,12488],256],13057:[[12450,12523,12501,12449],256],13058:[[12450,12531,12506,12450],256],13059:[[12450,12540,12523],256],13060:[[12452,12491,12531,12464],256],13061:[[12452,12531,12481],256],13062:[[12454,12457,12531],256],13063:[[12456,12473,12463,12540,12489],256],13064:[[12456,12540,12459,12540],256],13065:[[12458,12531,12473],256],13066:[[12458,12540,12512],256],13067:[[12459,12452,12522],256],13068:[[12459,12521,12483,12488],256],13069:[[12459,12525,12522,12540],256],13070:[[12460,12525,12531],256],13071:[[12460,12531,12510],256],13072:[[12462,12460],256],13073:[[12462,12491,12540],256],13074:[[12461,12517,12522,12540],256],13075:[[12462,12523,12480,12540],256],13076:[[12461,12525],256],13077:[[12461,12525,12464,12521,12512],256],13078:[[12461,12525,12513,12540,12488,12523],256],13079:[[12461,12525,12527,12483,12488],256],13080:[[12464,12521,12512],256],13081:[[12464,12521,12512,12488,12531],256],13082:[[12463,12523,12476,12452,12525],256],13083:[[12463,12525,12540,12493],256],13084:[[12465,12540,12473],256],13085:[[12467,12523,12490],256],13086:[[12467,12540,12509],256],13087:[[12469,12452,12463,12523],256],13088:[[12469,12531,12481,12540,12512],256],13089:[[12471,12522,12531,12464],256],13090:[[12475,12531,12481],256],13091:[[12475,12531,12488],256],13092:[[12480,12540,12473],256],13093:[[12487,12471],256],13094:[[12489,12523],256],13095:[[12488,12531],256],13096:[[12490,12494],256],13097:[[12494,12483,12488],256],13098:[[12495,12452,12484],256],13099:[[12497,12540,12475,12531,12488],256],13100:[[12497,12540,12484],256],13101:[[12496,12540,12524,12523],256],13102:[[12500,12450,12473,12488,12523],256],13103:[[12500,12463,12523],256],13104:[[12500,12467],256],13105:[[12499,12523],256],13106:[[12501,12449,12521,12483,12489],256],13107:[[12501,12451,12540,12488],256],13108:[[12502,12483,12471,12455,12523],256],13109:[[12501,12521,12531],256],13110:[[12504,12463,12479,12540,12523],256],13111:[[12506,12477],256],13112:[[12506,12491,12498],256],13113:[[12504,12523,12484],256],13114:[[12506,12531,12473],256],13115:[[12506,12540,12472],256],13116:[[12505,12540,12479],256],13117:[[12509,12452,12531,12488],256],13118:[[12508,12523,12488],256],13119:[[12507,12531],256],13120:[[12509,12531,12489],256],13121:[[12507,12540,12523],256],13122:[[12507,12540,12531],256],13123:[[12510,12452,12463,12525],256],13124:[[12510,12452,12523],256],13125:[[12510,12483,12495],256],13126:[[12510,12523,12463],256],13127:[[12510,12531,12471,12519,12531],256],13128:[[12511,12463,12525,12531],256],13129:[[12511,12522],256],13130:[[12511,12522,12496,12540,12523],256],13131:[[12513,12460],256],13132:[[12513,12460,12488,12531],256],13133:[[12513,12540,12488,12523],256],13134:[[12516,12540,12489],256],13135:[[12516,12540,12523],256],13136:[[12518,12450,12531],256],13137:[[12522,12483,12488,12523],256],13138:[[12522,12521],256],13139:[[12523,12500,12540],256],13140:[[12523,12540,12502,12523],256],13141:[[12524,12512],256],13142:[[12524,12531,12488,12466,12531],256],13143:[[12527,12483,12488],256],13144:[[48,28857],256],13145:[[49,28857],256],13146:[[50,28857],256],13147:[[51,28857],256],13148:[[52,28857],256],13149:[[53,28857],256],13150:[[54,28857],256],13151:[[55,28857],256],13152:[[56,28857],256],13153:[[57,28857],256],13154:[[49,48,28857],256],13155:[[49,49,28857],256],13156:[[49,50,28857],256],13157:[[49,51,28857],256],13158:[[49,52,28857],256],13159:[[49,53,28857],256],13160:[[49,54,28857],256],13161:[[49,55,28857],256],13162:[[49,56,28857],256],13163:[[49,57,28857],256],13164:[[50,48,28857],256],13165:[[50,49,28857],256],13166:[[50,50,28857],256],13167:[[50,51,28857],256],13168:[[50,52,28857],256],13169:[[104,80,97],256],13170:[[100,97],256],13171:[[65,85],256],13172:[[98,97,114],256],13173:[[111,86],256],13174:[[112,99],256],13175:[[100,109],256],13176:[[100,109,178],256],13177:[[100,109,179],256],13178:[[73,85],256],13179:[[24179,25104],256],13180:[[26157,21644],256],13181:[[22823,27491],256],13182:[[26126,27835],256],13183:[[26666,24335,20250,31038],256],13184:[[112,65],256],13185:[[110,65],256],13186:[[956,65],256],13187:[[109,65],256],13188:[[107,65],256],13189:[[75,66],256],13190:[[77,66],256],13191:[[71,66],256],13192:[[99,97,108],256],13193:[[107,99,97,108],256],13194:[[112,70],256],13195:[[110,70],256],13196:[[956,70],256],13197:[[956,103],256],13198:[[109,103],256],13199:[[107,103],256],13200:[[72,122],256],13201:[[107,72,122],256],13202:[[77,72,122],256],13203:[[71,72,122],256],13204:[[84,72,122],256],13205:[[956,8467],256],13206:[[109,8467],256],13207:[[100,8467],256],13208:[[107,8467],256],13209:[[102,109],256],13210:[[110,109],256],13211:[[956,109],256],13212:[[109,109],256],13213:[[99,109],256],13214:[[107,109],256],13215:[[109,109,178],256],13216:[[99,109,178],256],13217:[[109,178],256],13218:[[107,109,178],256],13219:[[109,109,179],256],13220:[[99,109,179],256],13221:[[109,179],256],13222:[[107,109,179],256],13223:[[109,8725,115],256],13224:[[109,8725,115,178],256],13225:[[80,97],256],13226:[[107,80,97],256],13227:[[77,80,97],256],13228:[[71,80,97],256],13229:[[114,97,100],256],13230:[[114,97,100,8725,115],256],13231:[[114,97,100,8725,115,178],256],13232:[[112,115],256],13233:[[110,115],256],13234:[[956,115],256],13235:[[109,115],256],13236:[[112,86],256],13237:[[110,86],256],13238:[[956,86],256],13239:[[109,86],256],13240:[[107,86],256],13241:[[77,86],256],13242:[[112,87],256],13243:[[110,87],256],13244:[[956,87],256],13245:[[109,87],256],13246:[[107,87],256],13247:[[77,87],256],13248:[[107,937],256],13249:[[77,937],256],13250:[[97,46,109,46],256],13251:[[66,113],256],13252:[[99,99],256],13253:[[99,100],256],13254:[[67,8725,107,103],256],13255:[[67,111,46],256],13256:[[100,66],256],13257:[[71,121],256],13258:[[104,97],256],13259:[[72,80],256],13260:[[105,110],256],13261:[[75,75],256],13262:[[75,77],256],13263:[[107,116],256],13264:[[108,109],256],13265:[[108,110],256],13266:[[108,111,103],256],13267:[[108,120],256],13268:[[109,98],256],13269:[[109,105,108],256],13270:[[109,111,108],256],13271:[[80,72],256],13272:[[112,46,109,46],256],13273:[[80,80,77],256],13274:[[80,82],256],13275:[[115,114],256],13276:[[83,118],256],13277:[[87,98],256],13278:[[86,8725,109],256],13279:[[65,8725,109],256],13280:[[49,26085],256],13281:[[50,26085],256],13282:[[51,26085],256],13283:[[52,26085],256],13284:[[53,26085],256],13285:[[54,26085],256],13286:[[55,26085],256],13287:[[56,26085],256],13288:[[57,26085],256],13289:[[49,48,26085],256],13290:[[49,49,26085],256],13291:[[49,50,26085],256],13292:[[49,51,26085],256],13293:[[49,52,26085],256],13294:[[49,53,26085],256],13295:[[49,54,26085],256],13296:[[49,55,26085],256],13297:[[49,56,26085],256],13298:[[49,57,26085],256],13299:[[50,48,26085],256],13300:[[50,49,26085],256],13301:[[50,50,26085],256],13302:[[50,51,26085],256],13303:[[50,52,26085],256],13304:[[50,53,26085],256],13305:[[50,54,26085],256],13306:[[50,55,26085],256],13307:[[50,56,26085],256],13308:[[50,57,26085],256],13309:[[51,48,26085],256],13310:[[51,49,26085],256],13311:[[103,97,108],256]},
-       42496:{42607:[,230],42612:[,230],42613:[,230],42614:[,230],42615:[,230],42616:[,230],42617:[,230],42618:[,230],42619:[,230],42620:[,230],42621:[,230],42655:[,230],42736:[,230],42737:[,230]},
-       42752:{42864:[[42863],256],43000:[[294],256],43001:[[339],256]},
-       43008:{43014:[,9],43204:[,9],43232:[,230],43233:[,230],43234:[,230],43235:[,230],43236:[,230],43237:[,230],43238:[,230],43239:[,230],43240:[,230],43241:[,230],43242:[,230],43243:[,230],43244:[,230],43245:[,230],43246:[,230],43247:[,230],43248:[,230],43249:[,230]},
-       43264:{43307:[,220],43308:[,220],43309:[,220],43347:[,9],43443:[,7],43456:[,9]},
-       43520:{43696:[,230],43698:[,230],43699:[,230],43700:[,220],43703:[,230],43704:[,230],43710:[,230],43711:[,230],43713:[,230],43766:[,9]},
-       43776:{44013:[,9]},
-       53504:{119134:[[119127,119141],512],119135:[[119128,119141],512],119136:[[119135,119150],512],119137:[[119135,119151],512],119138:[[119135,119152],512],119139:[[119135,119153],512],119140:[[119135,119154],512],119141:[,216],119142:[,216],119143:[,1],119144:[,1],119145:[,1],119149:[,226],119150:[,216],119151:[,216],119152:[,216],119153:[,216],119154:[,216],119163:[,220],119164:[,220],119165:[,220],119166:[,220],119167:[,220],119168:[,220],119169:[,220],119170:[,220],119173:[,230],119174:[,230],119175:[,230],119176:[,230],119177:[,230],119178:[,220],119179:[,220],119210:[,230],119211:[,230],119212:[,230],119213:[,230],119227:[[119225,119141],512],119228:[[119226,119141],512],119229:[[119227,119150],512],119230:[[119228,119150],512],119231:[[119227,119151],512],119232:[[119228,119151],512]},
-       53760:{119362:[,230],119363:[,230],119364:[,230]},
-       54272:{119808:[[65],256],119809:[[66],256],119810:[[67],256],119811:[[68],256],119812:[[69],256],119813:[[70],256],119814:[[71],256],119815:[[72],256],119816:[[73],256],119817:[[74],256],119818:[[75],256],119819:[[76],256],119820:[[77],256],119821:[[78],256],119822:[[79],256],119823:[[80],256],119824:[[81],256],119825:[[82],256],119826:[[83],256],119827:[[84],256],119828:[[85],256],119829:[[86],256],119830:[[87],256],119831:[[88],256],119832:[[89],256],119833:[[90],256],119834:[[97],256],119835:[[98],256],119836:[[99],256],119837:[[100],256],119838:[[101],256],119839:[[102],256],119840:[[103],256],119841:[[104],256],119842:[[105],256],119843:[[106],256],119844:[[107],256],119845:[[108],256],119846:[[109],256],119847:[[110],256],119848:[[111],256],119849:[[112],256],119850:[[113],256],119851:[[114],256],119852:[[115],256],119853:[[116],256],119854:[[117],256],119855:[[118],256],119856:[[119],256],119857:[[120],256],119858:[[121],256],119859:[[122],256],119860:[[65],256],119861:[[66],256],119862:[[67],256],119863:[[68],256],119864:[[69],256],119865:[[70],256],119866:[[71],256],119867:[[72],256],119868:[[73],256],119869:[[74],256],119870:[[75],256],119871:[[76],256],119872:[[77],256],119873:[[78],256],119874:[[79],256],119875:[[80],256],119876:[[81],256],119877:[[82],256],119878:[[83],256],119879:[[84],256],119880:[[85],256],119881:[[86],256],119882:[[87],256],119883:[[88],256],119884:[[89],256],119885:[[90],256],119886:[[97],256],119887:[[98],256],119888:[[99],256],119889:[[100],256],119890:[[101],256],119891:[[102],256],119892:[[103],256],119894:[[105],256],119895:[[106],256],119896:[[107],256],119897:[[108],256],119898:[[109],256],119899:[[110],256],119900:[[111],256],119901:[[112],256],119902:[[113],256],119903:[[114],256],119904:[[115],256],119905:[[116],256],119906:[[117],256],119907:[[118],256],119908:[[119],256],119909:[[120],256],119910:[[121],256],119911:[[122],256],119912:[[65],256],119913:[[66],256],119914:[[67],256],119915:[[68],256],119916:[[69],256],119917:[[70],256],119918:[[71],256],119919:[[72],256],119920:[[73],256],119921:[[74],256],119922:[[75],256],119923:[[76],256],119924:[[77],256],119925:[[78],256],119926:[[79],256],119927:[[80],256],119928:[[81],256],119929:[[82],256],119930:[[83],256],119931:[[84],256],119932:[[85],256],119933:[[86],256],119934:[[87],256],119935:[[88],256],119936:[[89],256],119937:[[90],256],119938:[[97],256],119939:[[98],256],119940:[[99],256],119941:[[100],256],119942:[[101],256],119943:[[102],256],119944:[[103],256],119945:[[104],256],119946:[[105],256],119947:[[106],256],119948:[[107],256],119949:[[108],256],119950:[[109],256],119951:[[110],256],119952:[[111],256],119953:[[112],256],119954:[[113],256],119955:[[114],256],119956:[[115],256],119957:[[116],256],119958:[[117],256],119959:[[118],256],119960:[[119],256],119961:[[120],256],119962:[[121],256],119963:[[122],256],119964:[[65],256],119966:[[67],256],119967:[[68],256],119970:[[71],256],119973:[[74],256],119974:[[75],256],119977:[[78],256],119978:[[79],256],119979:[[80],256],119980:[[81],256],119982:[[83],256],119983:[[84],256],119984:[[85],256],119985:[[86],256],119986:[[87],256],119987:[[88],256],119988:[[89],256],119989:[[90],256],119990:[[97],256],119991:[[98],256],119992:[[99],256],119993:[[100],256],119995:[[102],256],119997:[[104],256],119998:[[105],256],119999:[[106],256],120000:[[107],256],120001:[[108],256],120002:[[109],256],120003:[[110],256],120005:[[112],256],120006:[[113],256],120007:[[114],256],120008:[[115],256],120009:[[116],256],120010:[[117],256],120011:[[118],256],120012:[[119],256],120013:[[120],256],120014:[[121],256],120015:[[122],256],120016:[[65],256],120017:[[66],256],120018:[[67],256],120019:[[68],256],120020:[[69],256],120021:[[70],256],120022:[[71],256],120023:[[72],256],120024:[[73],256],120025:[[74],256],120026:[[75],256],120027:[[76],256],120028:[[77],256],120029:[[78],256],120030:[[79],256],120031:[[80],256],120032:[[81],256],120033:[[82],256],120034:[[83],256],120035:[[84],256],120036:[[85],256],120037:[[86],256],120038:[[87],256],120039:[[88],256],120040:[[89],256],120041:[[90],256],120042:[[97],256],120043:[[98],256],120044:[[99],256],120045:[[100],256],120046:[[101],256],120047:[[102],256],120048:[[103],256],120049:[[104],256],120050:[[105],256],120051:[[106],256],120052:[[107],256],120053:[[108],256],120054:[[109],256],120055:[[110],256],120056:[[111],256],120057:[[112],256],120058:[[113],256],120059:[[114],256],120060:[[115],256],120061:[[116],256],120062:[[117],256],120063:[[118],256]},
-       54528:{120064:[[119],256],120065:[[120],256],120066:[[121],256],120067:[[122],256],120068:[[65],256],120069:[[66],256],120071:[[68],256],120072:[[69],256],120073:[[70],256],120074:[[71],256],120077:[[74],256],120078:[[75],256],120079:[[76],256],120080:[[77],256],120081:[[78],256],120082:[[79],256],120083:[[80],256],120084:[[81],256],120086:[[83],256],120087:[[84],256],120088:[[85],256],120089:[[86],256],120090:[[87],256],120091:[[88],256],120092:[[89],256],120094:[[97],256],120095:[[98],256],120096:[[99],256],120097:[[100],256],120098:[[101],256],120099:[[102],256],120100:[[103],256],120101:[[104],256],120102:[[105],256],120103:[[106],256],120104:[[107],256],120105:[[108],256],120106:[[109],256],120107:[[110],256],120108:[[111],256],120109:[[112],256],120110:[[113],256],120111:[[114],256],120112:[[115],256],120113:[[116],256],120114:[[117],256],120115:[[118],256],120116:[[119],256],120117:[[120],256],120118:[[121],256],120119:[[122],256],120120:[[65],256],120121:[[66],256],120123:[[68],256],120124:[[69],256],120125:[[70],256],120126:[[71],256],120128:[[73],256],120129:[[74],256],120130:[[75],256],120131:[[76],256],120132:[[77],256],120134:[[79],256],120138:[[83],256],120139:[[84],256],120140:[[85],256],120141:[[86],256],120142:[[87],256],120143:[[88],256],120144:[[89],256],120146:[[97],256],120147:[[98],256],120148:[[99],256],120149:[[100],256],120150:[[101],256],120151:[[102],256],120152:[[103],256],120153:[[104],256],120154:[[105],256],120155:[[106],256],120156:[[107],256],120157:[[108],256],120158:[[109],256],120159:[[110],256],120160:[[111],256],120161:[[112],256],120162:[[113],256],120163:[[114],256],120164:[[115],256],120165:[[116],256],120166:[[117],256],120167:[[118],256],120168:[[119],256],120169:[[120],256],120170:[[121],256],120171:[[122],256],120172:[[65],256],120173:[[66],256],120174:[[67],256],120175:[[68],256],120176:[[69],256],120177:[[70],256],120178:[[71],256],120179:[[72],256],120180:[[73],256],120181:[[74],256],120182:[[75],256],120183:[[76],256],120184:[[77],256],120185:[[78],256],120186:[[79],256],120187:[[80],256],120188:[[81],256],120189:[[82],256],120190:[[83],256],120191:[[84],256],120192:[[85],256],120193:[[86],256],120194:[[87],256],120195:[[88],256],120196:[[89],256],120197:[[90],256],120198:[[97],256],120199:[[98],256],120200:[[99],256],120201:[[100],256],120202:[[101],256],120203:[[102],256],120204:[[103],256],120205:[[104],256],120206:[[105],256],120207:[[106],256],120208:[[107],256],120209:[[108],256],120210:[[109],256],120211:[[110],256],120212:[[111],256],120213:[[112],256],120214:[[113],256],120215:[[114],256],120216:[[115],256],120217:[[116],256],120218:[[117],256],120219:[[118],256],120220:[[119],256],120221:[[120],256],120222:[[121],256],120223:[[122],256],120224:[[65],256],120225:[[66],256],120226:[[67],256],120227:[[68],256],120228:[[69],256],120229:[[70],256],120230:[[71],256],120231:[[72],256],120232:[[73],256],120233:[[74],256],120234:[[75],256],120235:[[76],256],120236:[[77],256],120237:[[78],256],120238:[[79],256],120239:[[80],256],120240:[[81],256],120241:[[82],256],120242:[[83],256],120243:[[84],256],120244:[[85],256],120245:[[86],256],120246:[[87],256],120247:[[88],256],120248:[[89],256],120249:[[90],256],120250:[[97],256],120251:[[98],256],120252:[[99],256],120253:[[100],256],120254:[[101],256],120255:[[102],256],120256:[[103],256],120257:[[104],256],120258:[[105],256],120259:[[106],256],120260:[[107],256],120261:[[108],256],120262:[[109],256],120263:[[110],256],120264:[[111],256],120265:[[112],256],120266:[[113],256],120267:[[114],256],120268:[[115],256],120269:[[116],256],120270:[[117],256],120271:[[118],256],120272:[[119],256],120273:[[120],256],120274:[[121],256],120275:[[122],256],120276:[[65],256],120277:[[66],256],120278:[[67],256],120279:[[68],256],120280:[[69],256],120281:[[70],256],120282:[[71],256],120283:[[72],256],120284:[[73],256],120285:[[74],256],120286:[[75],256],120287:[[76],256],120288:[[77],256],120289:[[78],256],120290:[[79],256],120291:[[80],256],120292:[[81],256],120293:[[82],256],120294:[[83],256],120295:[[84],256],120296:[[85],256],120297:[[86],256],120298:[[87],256],120299:[[88],256],120300:[[89],256],120301:[[90],256],120302:[[97],256],120303:[[98],256],120304:[[99],256],120305:[[100],256],120306:[[101],256],120307:[[102],256],120308:[[103],256],120309:[[104],256],120310:[[105],256],120311:[[106],256],120312:[[107],256],120313:[[108],256],120314:[[109],256],120315:[[110],256],120316:[[111],256],120317:[[112],256],120318:[[113],256],120319:[[114],256]},
-       54784:{120320:[[115],256],120321:[[116],256],120322:[[117],256],120323:[[118],256],120324:[[119],256],120325:[[120],256],120326:[[121],256],120327:[[122],256],120328:[[65],256],120329:[[66],256],120330:[[67],256],120331:[[68],256],120332:[[69],256],120333:[[70],256],120334:[[71],256],120335:[[72],256],120336:[[73],256],120337:[[74],256],120338:[[75],256],120339:[[76],256],120340:[[77],256],120341:[[78],256],120342:[[79],256],120343:[[80],256],120344:[[81],256],120345:[[82],256],120346:[[83],256],120347:[[84],256],120348:[[85],256],120349:[[86],256],120350:[[87],256],120351:[[88],256],120352:[[89],256],120353:[[90],256],120354:[[97],256],120355:[[98],256],120356:[[99],256],120357:[[100],256],120358:[[101],256],120359:[[102],256],120360:[[103],256],120361:[[104],256],120362:[[105],256],120363:[[106],256],120364:[[107],256],120365:[[108],256],120366:[[109],256],120367:[[110],256],120368:[[111],256],120369:[[112],256],120370:[[113],256],120371:[[114],256],120372:[[115],256],120373:[[116],256],120374:[[117],256],120375:[[118],256],120376:[[119],256],120377:[[120],256],120378:[[121],256],120379:[[122],256],120380:[[65],256],120381:[[66],256],120382:[[67],256],120383:[[68],256],120384:[[69],256],120385:[[70],256],120386:[[71],256],120387:[[72],256],120388:[[73],256],120389:[[74],256],120390:[[75],256],120391:[[76],256],120392:[[77],256],120393:[[78],256],120394:[[79],256],120395:[[80],256],120396:[[81],256],120397:[[82],256],120398:[[83],256],120399:[[84],256],120400:[[85],256],120401:[[86],256],120402:[[87],256],120403:[[88],256],120404:[[89],256],120405:[[90],256],120406:[[97],256],120407:[[98],256],120408:[[99],256],120409:[[100],256],120410:[[101],256],120411:[[102],256],120412:[[103],256],120413:[[104],256],120414:[[105],256],120415:[[106],256],120416:[[107],256],120417:[[108],256],120418:[[109],256],120419:[[110],256],120420:[[111],256],120421:[[112],256],120422:[[113],256],120423:[[114],256],120424:[[115],256],120425:[[116],256],120426:[[117],256],120427:[[118],256],120428:[[119],256],120429:[[120],256],120430:[[121],256],120431:[[122],256],120432:[[65],256],120433:[[66],256],120434:[[67],256],120435:[[68],256],120436:[[69],256],120437:[[70],256],120438:[[71],256],120439:[[72],256],120440:[[73],256],120441:[[74],256],120442:[[75],256],120443:[[76],256],120444:[[77],256],120445:[[78],256],120446:[[79],256],120447:[[80],256],120448:[[81],256],120449:[[82],256],120450:[[83],256],120451:[[84],256],120452:[[85],256],120453:[[86],256],120454:[[87],256],120455:[[88],256],120456:[[89],256],120457:[[90],256],120458:[[97],256],120459:[[98],256],120460:[[99],256],120461:[[100],256],120462:[[101],256],120463:[[102],256],120464:[[103],256],120465:[[104],256],120466:[[105],256],120467:[[106],256],120468:[[107],256],120469:[[108],256],120470:[[109],256],120471:[[110],256],120472:[[111],256],120473:[[112],256],120474:[[113],256],120475:[[114],256],120476:[[115],256],120477:[[116],256],120478:[[117],256],120479:[[118],256],120480:[[119],256],120481:[[120],256],120482:[[121],256],120483:[[122],256],120484:[[305],256],120485:[[567],256],120488:[[913],256],120489:[[914],256],120490:[[915],256],120491:[[916],256],120492:[[917],256],120493:[[918],256],120494:[[919],256],120495:[[920],256],120496:[[921],256],120497:[[922],256],120498:[[923],256],120499:[[924],256],120500:[[925],256],120501:[[926],256],120502:[[927],256],120503:[[928],256],120504:[[929],256],120505:[[1012],256],120506:[[931],256],120507:[[932],256],120508:[[933],256],120509:[[934],256],120510:[[935],256],120511:[[936],256],120512:[[937],256],120513:[[8711],256],120514:[[945],256],120515:[[946],256],120516:[[947],256],120517:[[948],256],120518:[[949],256],120519:[[950],256],120520:[[951],256],120521:[[952],256],120522:[[953],256],120523:[[954],256],120524:[[955],256],120525:[[956],256],120526:[[957],256],120527:[[958],256],120528:[[959],256],120529:[[960],256],120530:[[961],256],120531:[[962],256],120532:[[963],256],120533:[[964],256],120534:[[965],256],120535:[[966],256],120536:[[967],256],120537:[[968],256],120538:[[969],256],120539:[[8706],256],120540:[[1013],256],120541:[[977],256],120542:[[1008],256],120543:[[981],256],120544:[[1009],256],120545:[[982],256],120546:[[913],256],120547:[[914],256],120548:[[915],256],120549:[[916],256],120550:[[917],256],120551:[[918],256],120552:[[919],256],120553:[[920],256],120554:[[921],256],120555:[[922],256],120556:[[923],256],120557:[[924],256],120558:[[925],256],120559:[[926],256],120560:[[927],256],120561:[[928],256],120562:[[929],256],120563:[[1012],256],120564:[[931],256],120565:[[932],256],120566:[[933],256],120567:[[934],256],120568:[[935],256],120569:[[936],256],120570:[[937],256],120571:[[8711],256],120572:[[945],256],120573:[[946],256],120574:[[947],256],120575:[[948],256]},
-       55040:{120576:[[949],256],120577:[[950],256],120578:[[951],256],120579:[[952],256],120580:[[953],256],120581:[[954],256],120582:[[955],256],120583:[[956],256],120584:[[957],256],120585:[[958],256],120586:[[959],256],120587:[[960],256],120588:[[961],256],120589:[[962],256],120590:[[963],256],120591:[[964],256],120592:[[965],256],120593:[[966],256],120594:[[967],256],120595:[[968],256],120596:[[969],256],120597:[[8706],256],120598:[[1013],256],120599:[[977],256],120600:[[1008],256],120601:[[981],256],120602:[[1009],256],120603:[[982],256],120604:[[913],256],120605:[[914],256],120606:[[915],256],120607:[[916],256],120608:[[917],256],120609:[[918],256],120610:[[919],256],120611:[[920],256],120612:[[921],256],120613:[[922],256],120614:[[923],256],120615:[[924],256],120616:[[925],256],120617:[[926],256],120618:[[927],256],120619:[[928],256],120620:[[929],256],120621:[[1012],256],120622:[[931],256],120623:[[932],256],120624:[[933],256],120625:[[934],256],120626:[[935],256],120627:[[936],256],120628:[[937],256],120629:[[8711],256],120630:[[945],256],120631:[[946],256],120632:[[947],256],120633:[[948],256],120634:[[949],256],120635:[[950],256],120636:[[951],256],120637:[[952],256],120638:[[953],256],120639:[[954],256],120640:[[955],256],120641:[[956],256],120642:[[957],256],120643:[[958],256],120644:[[959],256],120645:[[960],256],120646:[[961],256],120647:[[962],256],120648:[[963],256],120649:[[964],256],120650:[[965],256],120651:[[966],256],120652:[[967],256],120653:[[968],256],120654:[[969],256],120655:[[8706],256],120656:[[1013],256],120657:[[977],256],120658:[[1008],256],120659:[[981],256],120660:[[1009],256],120661:[[982],256],120662:[[913],256],120663:[[914],256],120664:[[915],256],120665:[[916],256],120666:[[917],256],120667:[[918],256],120668:[[919],256],120669:[[920],256],120670:[[921],256],120671:[[922],256],120672:[[923],256],120673:[[924],256],120674:[[925],256],120675:[[926],256],120676:[[927],256],120677:[[928],256],120678:[[929],256],120679:[[1012],256],120680:[[931],256],120681:[[932],256],120682:[[933],256],120683:[[934],256],120684:[[935],256],120685:[[936],256],120686:[[937],256],120687:[[8711],256],120688:[[945],256],120689:[[946],256],120690:[[947],256],120691:[[948],256],120692:[[949],256],120693:[[950],256],120694:[[951],256],120695:[[952],256],120696:[[953],256],120697:[[954],256],120698:[[955],256],120699:[[956],256],120700:[[957],256],120701:[[958],256],120702:[[959],256],120703:[[960],256],120704:[[961],256],120705:[[962],256],120706:[[963],256],120707:[[964],256],120708:[[965],256],120709:[[966],256],120710:[[967],256],120711:[[968],256],120712:[[969],256],120713:[[8706],256],120714:[[1013],256],120715:[[977],256],120716:[[1008],256],120717:[[981],256],120718:[[1009],256],120719:[[982],256],120720:[[913],256],120721:[[914],256],120722:[[915],256],120723:[[916],256],120724:[[917],256],120725:[[918],256],120726:[[919],256],120727:[[920],256],120728:[[921],256],120729:[[922],256],120730:[[923],256],120731:[[924],256],120732:[[925],256],120733:[[926],256],120734:[[927],256],120735:[[928],256],120736:[[929],256],120737:[[1012],256],120738:[[931],256],120739:[[932],256],120740:[[933],256],120741:[[934],256],120742:[[935],256],120743:[[936],256],120744:[[937],256],120745:[[8711],256],120746:[[945],256],120747:[[946],256],120748:[[947],256],120749:[[948],256],120750:[[949],256],120751:[[950],256],120752:[[951],256],120753:[[952],256],120754:[[953],256],120755:[[954],256],120756:[[955],256],120757:[[956],256],120758:[[957],256],120759:[[958],256],120760:[[959],256],120761:[[960],256],120762:[[961],256],120763:[[962],256],120764:[[963],256],120765:[[964],256],120766:[[965],256],120767:[[966],256],120768:[[967],256],120769:[[968],256],120770:[[969],256],120771:[[8706],256],120772:[[1013],256],120773:[[977],256],120774:[[1008],256],120775:[[981],256],120776:[[1009],256],120777:[[982],256],120778:[[988],256],120779:[[989],256],120782:[[48],256],120783:[[49],256],120784:[[50],256],120785:[[51],256],120786:[[52],256],120787:[[53],256],120788:[[54],256],120789:[[55],256],120790:[[56],256],120791:[[57],256],120792:[[48],256],120793:[[49],256],120794:[[50],256],120795:[[51],256],120796:[[52],256],120797:[[53],256],120798:[[54],256],120799:[[55],256],120800:[[56],256],120801:[[57],256],120802:[[48],256],120803:[[49],256],120804:[[50],256],120805:[[51],256],120806:[[52],256],120807:[[53],256],120808:[[54],256],120809:[[55],256],120810:[[56],256],120811:[[57],256],120812:[[48],256],120813:[[49],256],120814:[[50],256],120815:[[51],256],120816:[[52],256],120817:[[53],256],120818:[[54],256],120819:[[55],256],120820:[[56],256],120821:[[57],256],120822:[[48],256],120823:[[49],256],120824:[[50],256],120825:[[51],256],120826:[[52],256],120827:[[53],256],120828:[[54],256],120829:[[55],256],120830:[[56],256],120831:[[57],256]},
-       60928:{126464:[[1575],256],126465:[[1576],256],126466:[[1580],256],126467:[[1583],256],126469:[[1608],256],126470:[[1586],256],126471:[[1581],256],126472:[[1591],256],126473:[[1610],256],126474:[[1603],256],126475:[[1604],256],126476:[[1605],256],126477:[[1606],256],126478:[[1587],256],126479:[[1593],256],126480:[[1601],256],126481:[[1589],256],126482:[[1602],256],126483:[[1585],256],126484:[[1588],256],126485:[[1578],256],126486:[[1579],256],126487:[[1582],256],126488:[[1584],256],126489:[[1590],256],126490:[[1592],256],126491:[[1594],256],126492:[[1646],256],126493:[[1722],256],126494:[[1697],256],126495:[[1647],256],126497:[[1576],256],126498:[[1580],256],126500:[[1607],256],126503:[[1581],256],126505:[[1610],256],126506:[[1603],256],126507:[[1604],256],126508:[[1605],256],126509:[[1606],256],126510:[[1587],256],126511:[[1593],256],126512:[[1601],256],126513:[[1589],256],126514:[[1602],256],126516:[[1588],256],126517:[[1578],256],126518:[[1579],256],126519:[[1582],256],126521:[[1590],256],126523:[[1594],256],126530:[[1580],256],126535:[[1581],256],126537:[[1610],256],126539:[[1604],256],126541:[[1606],256],126542:[[1587],256],126543:[[1593],256],126545:[[1589],256],126546:[[1602],256],126548:[[1588],256],126551:[[1582],256],126553:[[1590],256],126555:[[1594],256],126557:[[1722],256],126559:[[1647],256],126561:[[1576],256],126562:[[1580],256],126564:[[1607],256],126567:[[1581],256],126568:[[1591],256],126569:[[1610],256],126570:[[1603],256],126572:[[1605],256],126573:[[1606],256],126574:[[1587],256],126575:[[1593],256],126576:[[1601],256],126577:[[1589],256],126578:[[1602],256],126580:[[1588],256],126581:[[1578],256],126582:[[1579],256],126583:[[1582],256],126585:[[1590],256],126586:[[1592],256],126587:[[1594],256],126588:[[1646],256],126590:[[1697],256],126592:[[1575],256],126593:[[1576],256],126594:[[1580],256],126595:[[1583],256],126596:[[1607],256],126597:[[1608],256],126598:[[1586],256],126599:[[1581],256],126600:[[1591],256],126601:[[1610],256],126603:[[1604],256],126604:[[1605],256],126605:[[1606],256],126606:[[1587],256],126607:[[1593],256],126608:[[1601],256],126609:[[1589],256],126610:[[1602],256],126611:[[1585],256],126612:[[1588],256],126613:[[1578],256],126614:[[1579],256],126615:[[1582],256],126616:[[1584],256],126617:[[1590],256],126618:[[1592],256],126619:[[1594],256],126625:[[1576],256],126626:[[1580],256],126627:[[1583],256],126629:[[1608],256],126630:[[1586],256],126631:[[1581],256],126632:[[1591],256],126633:[[1610],256],126635:[[1604],256],126636:[[1605],256],126637:[[1606],256],126638:[[1587],256],126639:[[1593],256],126640:[[1601],256],126641:[[1589],256],126642:[[1602],256],126643:[[1585],256],126644:[[1588],256],126645:[[1578],256],126646:[[1579],256],126647:[[1582],256],126648:[[1584],256],126649:[[1590],256],126650:[[1592],256],126651:[[1594],256]},
-       61696:{127232:[[48,46],256],127233:[[48,44],256],127234:[[49,44],256],127235:[[50,44],256],127236:[[51,44],256],127237:[[52,44],256],127238:[[53,44],256],127239:[[54,44],256],127240:[[55,44],256],127241:[[56,44],256],127242:[[57,44],256],127248:[[40,65,41],256],127249:[[40,66,41],256],127250:[[40,67,41],256],127251:[[40,68,41],256],127252:[[40,69,41],256],127253:[[40,70,41],256],127254:[[40,71,41],256],127255:[[40,72,41],256],127256:[[40,73,41],256],127257:[[40,74,41],256],127258:[[40,75,41],256],127259:[[40,76,41],256],127260:[[40,77,41],256],127261:[[40,78,41],256],127262:[[40,79,41],256],127263:[[40,80,41],256],127264:[[40,81,41],256],127265:[[40,82,41],256],127266:[[40,83,41],256],127267:[[40,84,41],256],127268:[[40,85,41],256],127269:[[40,86,41],256],127270:[[40,87,41],256],127271:[[40,88,41],256],127272:[[40,89,41],256],127273:[[40,90,41],256],127274:[[12308,83,12309],256],127275:[[67],256],127276:[[82],256],127277:[[67,68],256],127278:[[87,90],256],127280:[[65],256],127281:[[66],256],127282:[[67],256],127283:[[68],256],127284:[[69],256],127285:[[70],256],127286:[[71],256],127287:[[72],256],127288:[[73],256],127289:[[74],256],127290:[[75],256],127291:[[76],256],127292:[[77],256],127293:[[78],256],127294:[[79],256],127295:[[80],256],127296:[[81],256],127297:[[82],256],127298:[[83],256],127299:[[84],256],127300:[[85],256],127301:[[86],256],127302:[[87],256],127303:[[88],256],127304:[[89],256],127305:[[90],256],127306:[[72,86],256],127307:[[77,86],256],127308:[[83,68],256],127309:[[83,83],256],127310:[[80,80,86],256],127311:[[87,67],256],127338:[[77,67],256],127339:[[77,68],256],127376:[[68,74],256]},
-       61952:{127488:[[12411,12363],256],127489:[[12467,12467],256],127490:[[12469],256],127504:[[25163],256],127505:[[23383],256],127506:[[21452],256],127507:[[12487],256],127508:[[20108],256],127509:[[22810],256],127510:[[35299],256],127511:[[22825],256],127512:[[20132],256],127513:[[26144],256],127514:[[28961],256],127515:[[26009],256],127516:[[21069],256],127517:[[24460],256],127518:[[20877],256],127519:[[26032],256],127520:[[21021],256],127521:[[32066],256],127522:[[29983],256],127523:[[36009],256],127524:[[22768],256],127525:[[21561],256],127526:[[28436],256],127527:[[25237],256],127528:[[25429],256],127529:[[19968],256],127530:[[19977],256],127531:[[36938],256],127532:[[24038],256],127533:[[20013],256],127534:[[21491],256],127535:[[25351],256],127536:[[36208],256],127537:[[25171],256],127538:[[31105],256],127539:[[31354],256],127540:[[21512],256],127541:[[28288],256],127542:[[26377],256],127543:[[26376],256],127544:[[30003],256],127545:[[21106],256],127546:[[21942],256],127552:[[12308,26412,12309],256],127553:[[12308,19977,12309],256],127554:[[12308,20108,12309],256],127555:[[12308,23433,12309],256],127556:[[12308,28857,12309],256],127557:[[12308,25171,12309],256],127558:[[12308,30423,12309],256],127559:[[12308,21213,12309],256],127560:[[12308,25943,12309],256],127568:[[24471],256],127569:[[21487],256]},
-       63488:{194560:[[20029]],194561:[[20024]],194562:[[20033]],194563:[[131362]],194564:[[20320]],194565:[[20398]],194566:[[20411]],194567:[[20482]],194568:[[20602]],194569:[[20633]],194570:[[20711]],194571:[[20687]],194572:[[13470]],194573:[[132666]],194574:[[20813]],194575:[[20820]],194576:[[20836]],194577:[[20855]],194578:[[132380]],194579:[[13497]],194580:[[20839]],194581:[[20877]],194582:[[132427]],194583:[[20887]],194584:[[20900]],194585:[[20172]],194586:[[20908]],194587:[[20917]],194588:[[168415]],194589:[[20981]],194590:[[20995]],194591:[[13535]],194592:[[21051]],194593:[[21062]],194594:[[21106]],194595:[[21111]],194596:[[13589]],194597:[[21191]],194598:[[21193]],194599:[[21220]],194600:[[21242]],194601:[[21253]],194602:[[21254]],194603:[[21271]],194604:[[21321]],194605:[[21329]],194606:[[21338]],194607:[[21363]],194608:[[21373]],194609:[[21375]],194610:[[21375]],194611:[[21375]],194612:[[133676]],194613:[[28784]],194614:[[21450]],194615:[[21471]],194616:[[133987]],194617:[[21483]],194618:[[21489]],194619:[[21510]],194620:[[21662]],194621:[[21560]],194622:[[21576]],194623:[[21608]],194624:[[21666]],194625:[[21750]],194626:[[21776]],194627:[[21843]],194628:[[21859]],194629:[[21892]],194630:[[21892]],194631:[[21913]],194632:[[21931]],194633:[[21939]],194634:[[21954]],194635:[[22294]],194636:[[22022]],194637:[[22295]],194638:[[22097]],194639:[[22132]],194640:[[20999]],194641:[[22766]],194642:[[22478]],194643:[[22516]],194644:[[22541]],194645:[[22411]],194646:[[22578]],194647:[[22577]],194648:[[22700]],194649:[[136420]],194650:[[22770]],194651:[[22775]],194652:[[22790]],194653:[[22810]],194654:[[22818]],194655:[[22882]],194656:[[136872]],194657:[[136938]],194658:[[23020]],194659:[[23067]],194660:[[23079]],194661:[[23000]],194662:[[23142]],194663:[[14062]],194664:[[14076]],194665:[[23304]],194666:[[23358]],194667:[[23358]],194668:[[137672]],194669:[[23491]],194670:[[23512]],194671:[[23527]],194672:[[23539]],194673:[[138008]],194674:[[23551]],194675:[[23558]],194676:[[24403]],194677:[[23586]],194678:[[14209]],194679:[[23648]],194680:[[23662]],194681:[[23744]],194682:[[23693]],194683:[[138724]],194684:[[23875]],194685:[[138726]],194686:[[23918]],194687:[[23915]],194688:[[23932]],194689:[[24033]],194690:[[24034]],194691:[[14383]],194692:[[24061]],194693:[[24104]],194694:[[24125]],194695:[[24169]],194696:[[14434]],194697:[[139651]],194698:[[14460]],194699:[[24240]],194700:[[24243]],194701:[[24246]],194702:[[24266]],194703:[[172946]],194704:[[24318]],194705:[[140081]],194706:[[140081]],194707:[[33281]],194708:[[24354]],194709:[[24354]],194710:[[14535]],194711:[[144056]],194712:[[156122]],194713:[[24418]],194714:[[24427]],194715:[[14563]],194716:[[24474]],194717:[[24525]],194718:[[24535]],194719:[[24569]],194720:[[24705]],194721:[[14650]],194722:[[14620]],194723:[[24724]],194724:[[141012]],194725:[[24775]],194726:[[24904]],194727:[[24908]],194728:[[24910]],194729:[[24908]],194730:[[24954]],194731:[[24974]],194732:[[25010]],194733:[[24996]],194734:[[25007]],194735:[[25054]],194736:[[25074]],194737:[[25078]],194738:[[25104]],194739:[[25115]],194740:[[25181]],194741:[[25265]],194742:[[25300]],194743:[[25424]],194744:[[142092]],194745:[[25405]],194746:[[25340]],194747:[[25448]],194748:[[25475]],194749:[[25572]],194750:[[142321]],194751:[[25634]],194752:[[25541]],194753:[[25513]],194754:[[14894]],194755:[[25705]],194756:[[25726]],194757:[[25757]],194758:[[25719]],194759:[[14956]],194760:[[25935]],194761:[[25964]],194762:[[143370]],194763:[[26083]],194764:[[26360]],194765:[[26185]],194766:[[15129]],194767:[[26257]],194768:[[15112]],194769:[[15076]],194770:[[20882]],194771:[[20885]],194772:[[26368]],194773:[[26268]],194774:[[32941]],194775:[[17369]],194776:[[26391]],194777:[[26395]],194778:[[26401]],194779:[[26462]],194780:[[26451]],194781:[[144323]],194782:[[15177]],194783:[[26618]],194784:[[26501]],194785:[[26706]],194786:[[26757]],194787:[[144493]],194788:[[26766]],194789:[[26655]],194790:[[26900]],194791:[[15261]],194792:[[26946]],194793:[[27043]],194794:[[27114]],194795:[[27304]],194796:[[145059]],194797:[[27355]],194798:[[15384]],194799:[[27425]],194800:[[145575]],194801:[[27476]],194802:[[15438]],194803:[[27506]],194804:[[27551]],194805:[[27578]],194806:[[27579]],194807:[[146061]],194808:[[138507]],194809:[[146170]],194810:[[27726]],194811:[[146620]],194812:[[27839]],194813:[[27853]],194814:[[27751]],194815:[[27926]]},
-       63744:{63744:[[35912]],63745:[[26356]],63746:[[36554]],63747:[[36040]],63748:[[28369]],63749:[[20018]],63750:[[21477]],63751:[[40860]],63752:[[40860]],63753:[[22865]],63754:[[37329]],63755:[[21895]],63756:[[22856]],63757:[[25078]],63758:[[30313]],63759:[[32645]],63760:[[34367]],63761:[[34746]],63762:[[35064]],63763:[[37007]],63764:[[27138]],63765:[[27931]],63766:[[28889]],63767:[[29662]],63768:[[33853]],63769:[[37226]],63770:[[39409]],63771:[[20098]],63772:[[21365]],63773:[[27396]],63774:[[29211]],63775:[[34349]],63776:[[40478]],63777:[[23888]],63778:[[28651]],63779:[[34253]],63780:[[35172]],63781:[[25289]],63782:[[33240]],63783:[[34847]],63784:[[24266]],63785:[[26391]],63786:[[28010]],63787:[[29436]],63788:[[37070]],63789:[[20358]],63790:[[20919]],63791:[[21214]],63792:[[25796]],63793:[[27347]],63794:[[29200]],63795:[[30439]],63796:[[32769]],63797:[[34310]],63798:[[34396]],63799:[[36335]],63800:[[38706]],63801:[[39791]],63802:[[40442]],63803:[[30860]],63804:[[31103]],63805:[[32160]],63806:[[33737]],63807:[[37636]],63808:[[40575]],63809:[[35542]],63810:[[22751]],63811:[[24324]],63812:[[31840]],63813:[[32894]],63814:[[29282]],63815:[[30922]],63816:[[36034]],63817:[[38647]],63818:[[22744]],63819:[[23650]],63820:[[27155]],63821:[[28122]],63822:[[28431]],63823:[[32047]],63824:[[32311]],63825:[[38475]],63826:[[21202]],63827:[[32907]],63828:[[20956]],63829:[[20940]],63830:[[31260]],63831:[[32190]],63832:[[33777]],63833:[[38517]],63834:[[35712]],63835:[[25295]],63836:[[27138]],63837:[[35582]],63838:[[20025]],63839:[[23527]],63840:[[24594]],63841:[[29575]],63842:[[30064]],63843:[[21271]],63844:[[30971]],63845:[[20415]],63846:[[24489]],63847:[[19981]],63848:[[27852]],63849:[[25976]],63850:[[32034]],63851:[[21443]],63852:[[22622]],63853:[[30465]],63854:[[33865]],63855:[[35498]],63856:[[27578]],63857:[[36784]],63858:[[27784]],63859:[[25342]],63860:[[33509]],63861:[[25504]],63862:[[30053]],63863:[[20142]],63864:[[20841]],63865:[[20937]],63866:[[26753]],63867:[[31975]],63868:[[33391]],63869:[[35538]],63870:[[37327]],63871:[[21237]],63872:[[21570]],63873:[[22899]],63874:[[24300]],63875:[[26053]],63876:[[28670]],63877:[[31018]],63878:[[38317]],63879:[[39530]],63880:[[40599]],63881:[[40654]],63882:[[21147]],63883:[[26310]],63884:[[27511]],63885:[[36706]],63886:[[24180]],63887:[[24976]],63888:[[25088]],63889:[[25754]],63890:[[28451]],63891:[[29001]],63892:[[29833]],63893:[[31178]],63894:[[32244]],63895:[[32879]],63896:[[36646]],63897:[[34030]],63898:[[36899]],63899:[[37706]],63900:[[21015]],63901:[[21155]],63902:[[21693]],63903:[[28872]],63904:[[35010]],63905:[[35498]],63906:[[24265]],63907:[[24565]],63908:[[25467]],63909:[[27566]],63910:[[31806]],63911:[[29557]],63912:[[20196]],63913:[[22265]],63914:[[23527]],63915:[[23994]],63916:[[24604]],63917:[[29618]],63918:[[29801]],63919:[[32666]],63920:[[32838]],63921:[[37428]],63922:[[38646]],63923:[[38728]],63924:[[38936]],63925:[[20363]],63926:[[31150]],63927:[[37300]],63928:[[38584]],63929:[[24801]],63930:[[20102]],63931:[[20698]],63932:[[23534]],63933:[[23615]],63934:[[26009]],63935:[[27138]],63936:[[29134]],63937:[[30274]],63938:[[34044]],63939:[[36988]],63940:[[40845]],63941:[[26248]],63942:[[38446]],63943:[[21129]],63944:[[26491]],63945:[[26611]],63946:[[27969]],63947:[[28316]],63948:[[29705]],63949:[[30041]],63950:[[30827]],63951:[[32016]],63952:[[39006]],63953:[[20845]],63954:[[25134]],63955:[[38520]],63956:[[20523]],63957:[[23833]],63958:[[28138]],63959:[[36650]],63960:[[24459]],63961:[[24900]],63962:[[26647]],63963:[[29575]],63964:[[38534]],63965:[[21033]],63966:[[21519]],63967:[[23653]],63968:[[26131]],63969:[[26446]],63970:[[26792]],63971:[[27877]],63972:[[29702]],63973:[[30178]],63974:[[32633]],63975:[[35023]],63976:[[35041]],63977:[[37324]],63978:[[38626]],63979:[[21311]],63980:[[28346]],63981:[[21533]],63982:[[29136]],63983:[[29848]],63984:[[34298]],63985:[[38563]],63986:[[40023]],63987:[[40607]],63988:[[26519]],63989:[[28107]],63990:[[33256]],63991:[[31435]],63992:[[31520]],63993:[[31890]],63994:[[29376]],63995:[[28825]],63996:[[35672]],63997:[[20160]],63998:[[33590]],63999:[[21050]],194816:[[27966]],194817:[[28023]],194818:[[27969]],194819:[[28009]],194820:[[28024]],194821:[[28037]],194822:[[146718]],194823:[[27956]],194824:[[28207]],194825:[[28270]],194826:[[15667]],194827:[[28363]],194828:[[28359]],194829:[[147153]],194830:[[28153]],194831:[[28526]],194832:[[147294]],194833:[[147342]],194834:[[28614]],194835:[[28729]],194836:[[28702]],194837:[[28699]],194838:[[15766]],194839:[[28746]],194840:[[28797]],194841:[[28791]],194842:[[28845]],194843:[[132389]],194844:[[28997]],194845:[[148067]],194846:[[29084]],194847:[[148395]],194848:[[29224]],194849:[[29237]],194850:[[29264]],194851:[[149000]],194852:[[29312]],194853:[[29333]],194854:[[149301]],194855:[[149524]],194856:[[29562]],194857:[[29579]],194858:[[16044]],194859:[[29605]],194860:[[16056]],194861:[[16056]],194862:[[29767]],194863:[[29788]],194864:[[29809]],194865:[[29829]],194866:[[29898]],194867:[[16155]],194868:[[29988]],194869:[[150582]],194870:[[30014]],194871:[[150674]],194872:[[30064]],194873:[[139679]],194874:[[30224]],194875:[[151457]],194876:[[151480]],194877:[[151620]],194878:[[16380]],194879:[[16392]],194880:[[30452]],194881:[[151795]],194882:[[151794]],194883:[[151833]],194884:[[151859]],194885:[[30494]],194886:[[30495]],194887:[[30495]],194888:[[30538]],194889:[[16441]],194890:[[30603]],194891:[[16454]],194892:[[16534]],194893:[[152605]],194894:[[30798]],194895:[[30860]],194896:[[30924]],194897:[[16611]],194898:[[153126]],194899:[[31062]],194900:[[153242]],194901:[[153285]],194902:[[31119]],194903:[[31211]],194904:[[16687]],194905:[[31296]],194906:[[31306]],194907:[[31311]],194908:[[153980]],194909:[[154279]],194910:[[154279]],194911:[[31470]],194912:[[16898]],194913:[[154539]],194914:[[31686]],194915:[[31689]],194916:[[16935]],194917:[[154752]],194918:[[31954]],194919:[[17056]],194920:[[31976]],194921:[[31971]],194922:[[32000]],194923:[[155526]],194924:[[32099]],194925:[[17153]],194926:[[32199]],194927:[[32258]],194928:[[32325]],194929:[[17204]],194930:[[156200]],194931:[[156231]],194932:[[17241]],194933:[[156377]],194934:[[32634]],194935:[[156478]],194936:[[32661]],194937:[[32762]],194938:[[32773]],194939:[[156890]],194940:[[156963]],194941:[[32864]],194942:[[157096]],194943:[[32880]],194944:[[144223]],194945:[[17365]],194946:[[32946]],194947:[[33027]],194948:[[17419]],194949:[[33086]],194950:[[23221]],194951:[[157607]],194952:[[157621]],194953:[[144275]],194954:[[144284]],194955:[[33281]],194956:[[33284]],194957:[[36766]],194958:[[17515]],194959:[[33425]],194960:[[33419]],194961:[[33437]],194962:[[21171]],194963:[[33457]],194964:[[33459]],194965:[[33469]],194966:[[33510]],194967:[[158524]],194968:[[33509]],194969:[[33565]],194970:[[33635]],194971:[[33709]],194972:[[33571]],194973:[[33725]],194974:[[33767]],194975:[[33879]],194976:[[33619]],194977:[[33738]],194978:[[33740]],194979:[[33756]],194980:[[158774]],194981:[[159083]],194982:[[158933]],194983:[[17707]],194984:[[34033]],194985:[[34035]],194986:[[34070]],194987:[[160714]],194988:[[34148]],194989:[[159532]],194990:[[17757]],194991:[[17761]],194992:[[159665]],194993:[[159954]],194994:[[17771]],194995:[[34384]],194996:[[34396]],194997:[[34407]],194998:[[34409]],194999:[[34473]],195000:[[34440]],195001:[[34574]],195002:[[34530]],195003:[[34681]],195004:[[34600]],195005:[[34667]],195006:[[34694]],195007:[[17879]],195008:[[34785]],195009:[[34817]],195010:[[17913]],195011:[[34912]],195012:[[34915]],195013:[[161383]],195014:[[35031]],195015:[[35038]],195016:[[17973]],195017:[[35066]],195018:[[13499]],195019:[[161966]],195020:[[162150]],195021:[[18110]],195022:[[18119]],195023:[[35488]],195024:[[35565]],195025:[[35722]],195026:[[35925]],195027:[[162984]],195028:[[36011]],195029:[[36033]],195030:[[36123]],195031:[[36215]],195032:[[163631]],195033:[[133124]],195034:[[36299]],195035:[[36284]],195036:[[36336]],195037:[[133342]],195038:[[36564]],195039:[[36664]],195040:[[165330]],195041:[[165357]],195042:[[37012]],195043:[[37105]],195044:[[37137]],195045:[[165678]],195046:[[37147]],195047:[[37432]],195048:[[37591]],195049:[[37592]],195050:[[37500]],195051:[[37881]],195052:[[37909]],195053:[[166906]],195054:[[38283]],195055:[[18837]],195056:[[38327]],195057:[[167287]],195058:[[18918]],195059:[[38595]],195060:[[23986]],195061:[[38691]],195062:[[168261]],195063:[[168474]],195064:[[19054]],195065:[[19062]],195066:[[38880]],195067:[[168970]],195068:[[19122]],195069:[[169110]],195070:[[38923]],195071:[[38923]]},
-       64000:{64000:[[20999]],64001:[[24230]],64002:[[25299]],64003:[[31958]],64004:[[23429]],64005:[[27934]],64006:[[26292]],64007:[[36667]],64008:[[34892]],64009:[[38477]],64010:[[35211]],64011:[[24275]],64012:[[20800]],64013:[[21952]],64016:[[22618]],64018:[[26228]],64021:[[20958]],64022:[[29482]],64023:[[30410]],64024:[[31036]],64025:[[31070]],64026:[[31077]],64027:[[31119]],64028:[[38742]],64029:[[31934]],64030:[[32701]],64032:[[34322]],64034:[[35576]],64037:[[36920]],64038:[[37117]],64042:[[39151]],64043:[[39164]],64044:[[39208]],64045:[[40372]],64046:[[37086]],64047:[[38583]],64048:[[20398]],64049:[[20711]],64050:[[20813]],64051:[[21193]],64052:[[21220]],64053:[[21329]],64054:[[21917]],64055:[[22022]],64056:[[22120]],64057:[[22592]],64058:[[22696]],64059:[[23652]],64060:[[23662]],64061:[[24724]],64062:[[24936]],64063:[[24974]],64064:[[25074]],64065:[[25935]],64066:[[26082]],64067:[[26257]],64068:[[26757]],64069:[[28023]],64070:[[28186]],64071:[[28450]],64072:[[29038]],64073:[[29227]],64074:[[29730]],64075:[[30865]],64076:[[31038]],64077:[[31049]],64078:[[31048]],64079:[[31056]],64080:[[31062]],64081:[[31069]],64082:[[31117]],64083:[[31118]],64084:[[31296]],64085:[[31361]],64086:[[31680]],64087:[[32244]],64088:[[32265]],64089:[[32321]],64090:[[32626]],64091:[[32773]],64092:[[33261]],64093:[[33401]],64094:[[33401]],64095:[[33879]],64096:[[35088]],64097:[[35222]],64098:[[35585]],64099:[[35641]],64100:[[36051]],64101:[[36104]],64102:[[36790]],64103:[[36920]],64104:[[38627]],64105:[[38911]],64106:[[38971]],64107:[[24693]],64108:[[148206]],64109:[[33304]],64112:[[20006]],64113:[[20917]],64114:[[20840]],64115:[[20352]],64116:[[20805]],64117:[[20864]],64118:[[21191]],64119:[[21242]],64120:[[21917]],64121:[[21845]],64122:[[21913]],64123:[[21986]],64124:[[22618]],64125:[[22707]],64126:[[22852]],64127:[[22868]],64128:[[23138]],64129:[[23336]],64130:[[24274]],64131:[[24281]],64132:[[24425]],64133:[[24493]],64134:[[24792]],64135:[[24910]],64136:[[24840]],64137:[[24974]],64138:[[24928]],64139:[[25074]],64140:[[25140]],64141:[[25540]],64142:[[25628]],64143:[[25682]],64144:[[25942]],64145:[[26228]],64146:[[26391]],64147:[[26395]],64148:[[26454]],64149:[[27513]],64150:[[27578]],64151:[[27969]],64152:[[28379]],64153:[[28363]],64154:[[28450]],64155:[[28702]],64156:[[29038]],64157:[[30631]],64158:[[29237]],64159:[[29359]],64160:[[29482]],64161:[[29809]],64162:[[29958]],64163:[[30011]],64164:[[30237]],64165:[[30239]],64166:[[30410]],64167:[[30427]],64168:[[30452]],64169:[[30538]],64170:[[30528]],64171:[[30924]],64172:[[31409]],64173:[[31680]],64174:[[31867]],64175:[[32091]],64176:[[32244]],64177:[[32574]],64178:[[32773]],64179:[[33618]],64180:[[33775]],64181:[[34681]],64182:[[35137]],64183:[[35206]],64184:[[35222]],64185:[[35519]],64186:[[35576]],64187:[[35531]],64188:[[35585]],64189:[[35582]],64190:[[35565]],64191:[[35641]],64192:[[35722]],64193:[[36104]],64194:[[36664]],64195:[[36978]],64196:[[37273]],64197:[[37494]],64198:[[38524]],64199:[[38627]],64200:[[38742]],64201:[[38875]],64202:[[38911]],64203:[[38923]],64204:[[38971]],64205:[[39698]],64206:[[40860]],64207:[[141386]],64208:[[141380]],64209:[[144341]],64210:[[15261]],64211:[[16408]],64212:[[16441]],64213:[[152137]],64214:[[154832]],64215:[[163539]],64216:[[40771]],64217:[[40846]],195072:[[38953]],195073:[[169398]],195074:[[39138]],195075:[[19251]],195076:[[39209]],195077:[[39335]],195078:[[39362]],195079:[[39422]],195080:[[19406]],195081:[[170800]],195082:[[39698]],195083:[[40000]],195084:[[40189]],195085:[[19662]],195086:[[19693]],195087:[[40295]],195088:[[172238]],195089:[[19704]],195090:[[172293]],195091:[[172558]],195092:[[172689]],195093:[[40635]],195094:[[19798]],195095:[[40697]],195096:[[40702]],195097:[[40709]],195098:[[40719]],195099:[[40726]],195100:[[40763]],195101:[[173568]]},
-       64256:{64256:[[102,102],256],64257:[[102,105],256],64258:[[102,108],256],64259:[[102,102,105],256],64260:[[102,102,108],256],64261:[[383,116],256],64262:[[115,116],256],64275:[[1396,1398],256],64276:[[1396,1381],256],64277:[[1396,1387],256],64278:[[1406,1398],256],64279:[[1396,1389],256],64285:[[1497,1460],512],64286:[,26],64287:[[1522,1463],512],64288:[[1506],256],64289:[[1488],256],64290:[[1491],256],64291:[[1492],256],64292:[[1499],256],64293:[[1500],256],64294:[[1501],256],64295:[[1512],256],64296:[[1514],256],64297:[[43],256],64298:[[1513,1473],512],64299:[[1513,1474],512],64300:[[64329,1473],512],64301:[[64329,1474],512],64302:[[1488,1463],512],64303:[[1488,1464],512],64304:[[1488,1468],512],64305:[[1489,1468],512],64306:[[1490,1468],512],64307:[[1491,1468],512],64308:[[1492,1468],512],64309:[[1493,1468],512],64310:[[1494,1468],512],64312:[[1496,1468],512],64313:[[1497,1468],512],64314:[[1498,1468],512],64315:[[1499,1468],512],64316:[[1500,1468],512],64318:[[1502,1468],512],64320:[[1504,1468],512],64321:[[1505,1468],512],64323:[[1507,1468],512],64324:[[1508,1468],512],64326:[[1510,1468],512],64327:[[1511,1468],512],64328:[[1512,1468],512],64329:[[1513,1468],512],64330:[[1514,1468],512],64331:[[1493,1465],512],64332:[[1489,1471],512],64333:[[1499,1471],512],64334:[[1508,1471],512],64335:[[1488,1500],256],64336:[[1649],256],64337:[[1649],256],64338:[[1659],256],64339:[[1659],256],64340:[[1659],256],64341:[[1659],256],64342:[[1662],256],64343:[[1662],256],64344:[[1662],256],64345:[[1662],256],64346:[[1664],256],64347:[[1664],256],64348:[[1664],256],64349:[[1664],256],64350:[[1658],256],64351:[[1658],256],64352:[[1658],256],64353:[[1658],256],64354:[[1663],256],64355:[[1663],256],64356:[[1663],256],64357:[[1663],256],64358:[[1657],256],64359:[[1657],256],64360:[[1657],256],64361:[[1657],256],64362:[[1700],256],64363:[[1700],256],64364:[[1700],256],64365:[[1700],256],64366:[[1702],256],64367:[[1702],256],64368:[[1702],256],64369:[[1702],256],64370:[[1668],256],64371:[[1668],256],64372:[[1668],256],64373:[[1668],256],64374:[[1667],256],64375:[[1667],256],64376:[[1667],256],64377:[[1667],256],64378:[[1670],256],64379:[[1670],256],64380:[[1670],256],64381:[[1670],256],64382:[[1671],256],64383:[[1671],256],64384:[[1671],256],64385:[[1671],256],64386:[[1677],256],64387:[[1677],256],64388:[[1676],256],64389:[[1676],256],64390:[[1678],256],64391:[[1678],256],64392:[[1672],256],64393:[[1672],256],64394:[[1688],256],64395:[[1688],256],64396:[[1681],256],64397:[[1681],256],64398:[[1705],256],64399:[[1705],256],64400:[[1705],256],64401:[[1705],256],64402:[[1711],256],64403:[[1711],256],64404:[[1711],256],64405:[[1711],256],64406:[[1715],256],64407:[[1715],256],64408:[[1715],256],64409:[[1715],256],64410:[[1713],256],64411:[[1713],256],64412:[[1713],256],64413:[[1713],256],64414:[[1722],256],64415:[[1722],256],64416:[[1723],256],64417:[[1723],256],64418:[[1723],256],64419:[[1723],256],64420:[[1728],256],64421:[[1728],256],64422:[[1729],256],64423:[[1729],256],64424:[[1729],256],64425:[[1729],256],64426:[[1726],256],64427:[[1726],256],64428:[[1726],256],64429:[[1726],256],64430:[[1746],256],64431:[[1746],256],64432:[[1747],256],64433:[[1747],256],64467:[[1709],256],64468:[[1709],256],64469:[[1709],256],64470:[[1709],256],64471:[[1735],256],64472:[[1735],256],64473:[[1734],256],64474:[[1734],256],64475:[[1736],256],64476:[[1736],256],64477:[[1655],256],64478:[[1739],256],64479:[[1739],256],64480:[[1733],256],64481:[[1733],256],64482:[[1737],256],64483:[[1737],256],64484:[[1744],256],64485:[[1744],256],64486:[[1744],256],64487:[[1744],256],64488:[[1609],256],64489:[[1609],256],64490:[[1574,1575],256],64491:[[1574,1575],256],64492:[[1574,1749],256],64493:[[1574,1749],256],64494:[[1574,1608],256],64495:[[1574,1608],256],64496:[[1574,1735],256],64497:[[1574,1735],256],64498:[[1574,1734],256],64499:[[1574,1734],256],64500:[[1574,1736],256],64501:[[1574,1736],256],64502:[[1574,1744],256],64503:[[1574,1744],256],64504:[[1574,1744],256],64505:[[1574,1609],256],64506:[[1574,1609],256],64507:[[1574,1609],256],64508:[[1740],256],64509:[[1740],256],64510:[[1740],256],64511:[[1740],256]},
-       64512:{64512:[[1574,1580],256],64513:[[1574,1581],256],64514:[[1574,1605],256],64515:[[1574,1609],256],64516:[[1574,1610],256],64517:[[1576,1580],256],64518:[[1576,1581],256],64519:[[1576,1582],256],64520:[[1576,1605],256],64521:[[1576,1609],256],64522:[[1576,1610],256],64523:[[1578,1580],256],64524:[[1578,1581],256],64525:[[1578,1582],256],64526:[[1578,1605],256],64527:[[1578,1609],256],64528:[[1578,1610],256],64529:[[1579,1580],256],64530:[[1579,1605],256],64531:[[1579,1609],256],64532:[[1579,1610],256],64533:[[1580,1581],256],64534:[[1580,1605],256],64535:[[1581,1580],256],64536:[[1581,1605],256],64537:[[1582,1580],256],64538:[[1582,1581],256],64539:[[1582,1605],256],64540:[[1587,1580],256],64541:[[1587,1581],256],64542:[[1587,1582],256],64543:[[1587,1605],256],64544:[[1589,1581],256],64545:[[1589,1605],256],64546:[[1590,1580],256],64547:[[1590,1581],256],64548:[[1590,1582],256],64549:[[1590,1605],256],64550:[[1591,1581],256],64551:[[1591,1605],256],64552:[[1592,1605],256],64553:[[1593,1580],256],64554:[[1593,1605],256],64555:[[1594,1580],256],64556:[[1594,1605],256],64557:[[1601,1580],256],64558:[[1601,1581],256],64559:[[1601,1582],256],64560:[[1601,1605],256],64561:[[1601,1609],256],64562:[[1601,1610],256],64563:[[1602,1581],256],64564:[[1602,1605],256],64565:[[1602,1609],256],64566:[[1602,1610],256],64567:[[1603,1575],256],64568:[[1603,1580],256],64569:[[1603,1581],256],64570:[[1603,1582],256],64571:[[1603,1604],256],64572:[[1603,1605],256],64573:[[1603,1609],256],64574:[[1603,1610],256],64575:[[1604,1580],256],64576:[[1604,1581],256],64577:[[1604,1582],256],64578:[[1604,1605],256],64579:[[1604,1609],256],64580:[[1604,1610],256],64581:[[1605,1580],256],64582:[[1605,1581],256],64583:[[1605,1582],256],64584:[[1605,1605],256],64585:[[1605,1609],256],64586:[[1605,1610],256],64587:[[1606,1580],256],64588:[[1606,1581],256],64589:[[1606,1582],256],64590:[[1606,1605],256],64591:[[1606,1609],256],64592:[[1606,1610],256],64593:[[1607,1580],256],64594:[[1607,1605],256],64595:[[1607,1609],256],64596:[[1607,1610],256],64597:[[1610,1580],256],64598:[[1610,1581],256],64599:[[1610,1582],256],64600:[[1610,1605],256],64601:[[1610,1609],256],64602:[[1610,1610],256],64603:[[1584,1648],256],64604:[[1585,1648],256],64605:[[1609,1648],256],64606:[[32,1612,1617],256],64607:[[32,1613,1617],256],64608:[[32,1614,1617],256],64609:[[32,1615,1617],256],64610:[[32,1616,1617],256],64611:[[32,1617,1648],256],64612:[[1574,1585],256],64613:[[1574,1586],256],64614:[[1574,1605],256],64615:[[1574,1606],256],64616:[[1574,1609],256],64617:[[1574,1610],256],64618:[[1576,1585],256],64619:[[1576,1586],256],64620:[[1576,1605],256],64621:[[1576,1606],256],64622:[[1576,1609],256],64623:[[1576,1610],256],64624:[[1578,1585],256],64625:[[1578,1586],256],64626:[[1578,1605],256],64627:[[1578,1606],256],64628:[[1578,1609],256],64629:[[1578,1610],256],64630:[[1579,1585],256],64631:[[1579,1586],256],64632:[[1579,1605],256],64633:[[1579,1606],256],64634:[[1579,1609],256],64635:[[1579,1610],256],64636:[[1601,1609],256],64637:[[1601,1610],256],64638:[[1602,1609],256],64639:[[1602,1610],256],64640:[[1603,1575],256],64641:[[1603,1604],256],64642:[[1603,1605],256],64643:[[1603,1609],256],64644:[[1603,1610],256],64645:[[1604,1605],256],64646:[[1604,1609],256],64647:[[1604,1610],256],64648:[[1605,1575],256],64649:[[1605,1605],256],64650:[[1606,1585],256],64651:[[1606,1586],256],64652:[[1606,1605],256],64653:[[1606,1606],256],64654:[[1606,1609],256],64655:[[1606,1610],256],64656:[[1609,1648],256],64657:[[1610,1585],256],64658:[[1610,1586],256],64659:[[1610,1605],256],64660:[[1610,1606],256],64661:[[1610,1609],256],64662:[[1610,1610],256],64663:[[1574,1580],256],64664:[[1574,1581],256],64665:[[1574,1582],256],64666:[[1574,1605],256],64667:[[1574,1607],256],64668:[[1576,1580],256],64669:[[1576,1581],256],64670:[[1576,1582],256],64671:[[1576,1605],256],64672:[[1576,1607],256],64673:[[1578,1580],256],64674:[[1578,1581],256],64675:[[1578,1582],256],64676:[[1578,1605],256],64677:[[1578,1607],256],64678:[[1579,1605],256],64679:[[1580,1581],256],64680:[[1580,1605],256],64681:[[1581,1580],256],64682:[[1581,1605],256],64683:[[1582,1580],256],64684:[[1582,1605],256],64685:[[1587,1580],256],64686:[[1587,1581],256],64687:[[1587,1582],256],64688:[[1587,1605],256],64689:[[1589,1581],256],64690:[[1589,1582],256],64691:[[1589,1605],256],64692:[[1590,1580],256],64693:[[1590,1581],256],64694:[[1590,1582],256],64695:[[1590,1605],256],64696:[[1591,1581],256],64697:[[1592,1605],256],64698:[[1593,1580],256],64699:[[1593,1605],256],64700:[[1594,1580],256],64701:[[1594,1605],256],64702:[[1601,1580],256],64703:[[1601,1581],256],64704:[[1601,1582],256],64705:[[1601,1605],256],64706:[[1602,1581],256],64707:[[1602,1605],256],64708:[[1603,1580],256],64709:[[1603,1581],256],64710:[[1603,1582],256],64711:[[1603,1604],256],64712:[[1603,1605],256],64713:[[1604,1580],256],64714:[[1604,1581],256],64715:[[1604,1582],256],64716:[[1604,1605],256],64717:[[1604,1607],256],64718:[[1605,1580],256],64719:[[1605,1581],256],64720:[[1605,1582],256],64721:[[1605,1605],256],64722:[[1606,1580],256],64723:[[1606,1581],256],64724:[[1606,1582],256],64725:[[1606,1605],256],64726:[[1606,1607],256],64727:[[1607,1580],256],64728:[[1607,1605],256],64729:[[1607,1648],256],64730:[[1610,1580],256],64731:[[1610,1581],256],64732:[[1610,1582],256],64733:[[1610,1605],256],64734:[[1610,1607],256],64735:[[1574,1605],256],64736:[[1574,1607],256],64737:[[1576,1605],256],64738:[[1576,1607],256],64739:[[1578,1605],256],64740:[[1578,1607],256],64741:[[1579,1605],256],64742:[[1579,1607],256],64743:[[1587,1605],256],64744:[[1587,1607],256],64745:[[1588,1605],256],64746:[[1588,1607],256],64747:[[1603,1604],256],64748:[[1603,1605],256],64749:[[1604,1605],256],64750:[[1606,1605],256],64751:[[1606,1607],256],64752:[[1610,1605],256],64753:[[1610,1607],256],64754:[[1600,1614,1617],256],64755:[[1600,1615,1617],256],64756:[[1600,1616,1617],256],64757:[[1591,1609],256],64758:[[1591,1610],256],64759:[[1593,1609],256],64760:[[1593,1610],256],64761:[[1594,1609],256],64762:[[1594,1610],256],64763:[[1587,1609],256],64764:[[1587,1610],256],64765:[[1588,1609],256],64766:[[1588,1610],256],64767:[[1581,1609],256]},
-       64768:{64768:[[1581,1610],256],64769:[[1580,1609],256],64770:[[1580,1610],256],64771:[[1582,1609],256],64772:[[1582,1610],256],64773:[[1589,1609],256],64774:[[1589,1610],256],64775:[[1590,1609],256],64776:[[1590,1610],256],64777:[[1588,1580],256],64778:[[1588,1581],256],64779:[[1588,1582],256],64780:[[1588,1605],256],64781:[[1588,1585],256],64782:[[1587,1585],256],64783:[[1589,1585],256],64784:[[1590,1585],256],64785:[[1591,1609],256],64786:[[1591,1610],256],64787:[[1593,1609],256],64788:[[1593,1610],256],64789:[[1594,1609],256],64790:[[1594,1610],256],64791:[[1587,1609],256],64792:[[1587,1610],256],64793:[[1588,1609],256],64794:[[1588,1610],256],64795:[[1581,1609],256],64796:[[1581,1610],256],64797:[[1580,1609],256],64798:[[1580,1610],256],64799:[[1582,1609],256],64800:[[1582,1610],256],64801:[[1589,1609],256],64802:[[1589,1610],256],64803:[[1590,1609],256],64804:[[1590,1610],256],64805:[[1588,1580],256],64806:[[1588,1581],256],64807:[[1588,1582],256],64808:[[1588,1605],256],64809:[[1588,1585],256],64810:[[1587,1585],256],64811:[[1589,1585],256],64812:[[1590,1585],256],64813:[[1588,1580],256],64814:[[1588,1581],256],64815:[[1588,1582],256],64816:[[1588,1605],256],64817:[[1587,1607],256],64818:[[1588,1607],256],64819:[[1591,1605],256],64820:[[1587,1580],256],64821:[[1587,1581],256],64822:[[1587,1582],256],64823:[[1588,1580],256],64824:[[1588,1581],256],64825:[[1588,1582],256],64826:[[1591,1605],256],64827:[[1592,1605],256],64828:[[1575,1611],256],64829:[[1575,1611],256],64848:[[1578,1580,1605],256],64849:[[1578,1581,1580],256],64850:[[1578,1581,1580],256],64851:[[1578,1581,1605],256],64852:[[1578,1582,1605],256],64853:[[1578,1605,1580],256],64854:[[1578,1605,1581],256],64855:[[1578,1605,1582],256],64856:[[1580,1605,1581],256],64857:[[1580,1605,1581],256],64858:[[1581,1605,1610],256],64859:[[1581,1605,1609],256],64860:[[1587,1581,1580],256],64861:[[1587,1580,1581],256],64862:[[1587,1580,1609],256],64863:[[1587,1605,1581],256],64864:[[1587,1605,1581],256],64865:[[1587,1605,1580],256],64866:[[1587,1605,1605],256],64867:[[1587,1605,1605],256],64868:[[1589,1581,1581],256],64869:[[1589,1581,1581],256],64870:[[1589,1605,1605],256],64871:[[1588,1581,1605],256],64872:[[1588,1581,1605],256],64873:[[1588,1580,1610],256],64874:[[1588,1605,1582],256],64875:[[1588,1605,1582],256],64876:[[1588,1605,1605],256],64877:[[1588,1605,1605],256],64878:[[1590,1581,1609],256],64879:[[1590,1582,1605],256],64880:[[1590,1582,1605],256],64881:[[1591,1605,1581],256],64882:[[1591,1605,1581],256],64883:[[1591,1605,1605],256],64884:[[1591,1605,1610],256],64885:[[1593,1580,1605],256],64886:[[1593,1605,1605],256],64887:[[1593,1605,1605],256],64888:[[1593,1605,1609],256],64889:[[1594,1605,1605],256],64890:[[1594,1605,1610],256],64891:[[1594,1605,1609],256],64892:[[1601,1582,1605],256],64893:[[1601,1582,1605],256],64894:[[1602,1605,1581],256],64895:[[1602,1605,1605],256],64896:[[1604,1581,1605],256],64897:[[1604,1581,1610],256],64898:[[1604,1581,1609],256],64899:[[1604,1580,1580],256],64900:[[1604,1580,1580],256],64901:[[1604,1582,1605],256],64902:[[1604,1582,1605],256],64903:[[1604,1605,1581],256],64904:[[1604,1605,1581],256],64905:[[1605,1581,1580],256],64906:[[1605,1581,1605],256],64907:[[1605,1581,1610],256],64908:[[1605,1580,1581],256],64909:[[1605,1580,1605],256],64910:[[1605,1582,1580],256],64911:[[1605,1582,1605],256],64914:[[1605,1580,1582],256],64915:[[1607,1605,1580],256],64916:[[1607,1605,1605],256],64917:[[1606,1581,1605],256],64918:[[1606,1581,1609],256],64919:[[1606,1580,1605],256],64920:[[1606,1580,1605],256],64921:[[1606,1580,1609],256],64922:[[1606,1605,1610],256],64923:[[1606,1605,1609],256],64924:[[1610,1605,1605],256],64925:[[1610,1605,1605],256],64926:[[1576,1582,1610],256],64927:[[1578,1580,1610],256],64928:[[1578,1580,1609],256],64929:[[1578,1582,1610],256],64930:[[1578,1582,1609],256],64931:[[1578,1605,1610],256],64932:[[1578,1605,1609],256],64933:[[1580,1605,1610],256],64934:[[1580,1581,1609],256],64935:[[1580,1605,1609],256],64936:[[1587,1582,1609],256],64937:[[1589,1581,1610],256],64938:[[1588,1581,1610],256],64939:[[1590,1581,1610],256],64940:[[1604,1580,1610],256],64941:[[1604,1605,1610],256],64942:[[1610,1581,1610],256],64943:[[1610,1580,1610],256],64944:[[1610,1605,1610],256],64945:[[1605,1605,1610],256],64946:[[1602,1605,1610],256],64947:[[1606,1581,1610],256],64948:[[1602,1605,1581],256],64949:[[1604,1581,1605],256],64950:[[1593,1605,1610],256],64951:[[1603,1605,1610],256],64952:[[1606,1580,1581],256],64953:[[1605,1582,1610],256],64954:[[1604,1580,1605],256],64955:[[1603,1605,1605],256],64956:[[1604,1580,1605],256],64957:[[1606,1580,1581],256],64958:[[1580,1581,1610],256],64959:[[1581,1580,1610],256],64960:[[1605,1580,1610],256],64961:[[1601,1605,1610],256],64962:[[1576,1581,1610],256],64963:[[1603,1605,1605],256],64964:[[1593,1580,1605],256],64965:[[1589,1605,1605],256],64966:[[1587,1582,1610],256],64967:[[1606,1580,1610],256],65008:[[1589,1604,1746],256],65009:[[1602,1604,1746],256],65010:[[1575,1604,1604,1607],256],65011:[[1575,1603,1576,1585],256],65012:[[1605,1581,1605,1583],256],65013:[[1589,1604,1593,1605],256],65014:[[1585,1587,1608,1604],256],65015:[[1593,1604,1610,1607],256],65016:[[1608,1587,1604,1605],256],65017:[[1589,1604,1609],256],65018:[[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605],256],65019:[[1580,1604,32,1580,1604,1575,1604,1607],256],65020:[[1585,1740,1575,1604],256]},
-       65024:{65040:[[44],256],65041:[[12289],256],65042:[[12290],256],65043:[[58],256],65044:[[59],256],65045:[[33],256],65046:[[63],256],65047:[[12310],256],65048:[[12311],256],65049:[[8230],256],65056:[,230],65057:[,230],65058:[,230],65059:[,230],65060:[,230],65061:[,230],65062:[,230],65072:[[8229],256],65073:[[8212],256],65074:[[8211],256],65075:[[95],256],65076:[[95],256],65077:[[40],256],65078:[[41],256],65079:[[123],256],65080:[[125],256],65081:[[12308],256],65082:[[12309],256],65083:[[12304],256],65084:[[12305],256],65085:[[12298],256],65086:[[12299],256],65087:[[12296],256],65088:[[12297],256],65089:[[12300],256],65090:[[12301],256],65091:[[12302],256],65092:[[12303],256],65095:[[91],256],65096:[[93],256],65097:[[8254],256],65098:[[8254],256],65099:[[8254],256],65100:[[8254],256],65101:[[95],256],65102:[[95],256],65103:[[95],256],65104:[[44],256],65105:[[12289],256],65106:[[46],256],65108:[[59],256],65109:[[58],256],65110:[[63],256],65111:[[33],256],65112:[[8212],256],65113:[[40],256],65114:[[41],256],65115:[[123],256],65116:[[125],256],65117:[[12308],256],65118:[[12309],256],65119:[[35],256],65120:[[38],256],65121:[[42],256],65122:[[43],256],65123:[[45],256],65124:[[60],256],65125:[[62],256],65126:[[61],256],65128:[[92],256],65129:[[36],256],65130:[[37],256],65131:[[64],256],65136:[[32,1611],256],65137:[[1600,1611],256],65138:[[32,1612],256],65140:[[32,1613],256],65142:[[32,1614],256],65143:[[1600,1614],256],65144:[[32,1615],256],65145:[[1600,1615],256],65146:[[32,1616],256],65147:[[1600,1616],256],65148:[[32,1617],256],65149:[[1600,1617],256],65150:[[32,1618],256],65151:[[1600,1618],256],65152:[[1569],256],65153:[[1570],256],65154:[[1570],256],65155:[[1571],256],65156:[[1571],256],65157:[[1572],256],65158:[[1572],256],65159:[[1573],256],65160:[[1573],256],65161:[[1574],256],65162:[[1574],256],65163:[[1574],256],65164:[[1574],256],65165:[[1575],256],65166:[[1575],256],65167:[[1576],256],65168:[[1576],256],65169:[[1576],256],65170:[[1576],256],65171:[[1577],256],65172:[[1577],256],65173:[[1578],256],65174:[[1578],256],65175:[[1578],256],65176:[[1578],256],65177:[[1579],256],65178:[[1579],256],65179:[[1579],256],65180:[[1579],256],65181:[[1580],256],65182:[[1580],256],65183:[[1580],256],65184:[[1580],256],65185:[[1581],256],65186:[[1581],256],65187:[[1581],256],65188:[[1581],256],65189:[[1582],256],65190:[[1582],256],65191:[[1582],256],65192:[[1582],256],65193:[[1583],256],65194:[[1583],256],65195:[[1584],256],65196:[[1584],256],65197:[[1585],256],65198:[[1585],256],65199:[[1586],256],65200:[[1586],256],65201:[[1587],256],65202:[[1587],256],65203:[[1587],256],65204:[[1587],256],65205:[[1588],256],65206:[[1588],256],65207:[[1588],256],65208:[[1588],256],65209:[[1589],256],65210:[[1589],256],65211:[[1589],256],65212:[[1589],256],65213:[[1590],256],65214:[[1590],256],65215:[[1590],256],65216:[[1590],256],65217:[[1591],256],65218:[[1591],256],65219:[[1591],256],65220:[[1591],256],65221:[[1592],256],65222:[[1592],256],65223:[[1592],256],65224:[[1592],256],65225:[[1593],256],65226:[[1593],256],65227:[[1593],256],65228:[[1593],256],65229:[[1594],256],65230:[[1594],256],65231:[[1594],256],65232:[[1594],256],65233:[[1601],256],65234:[[1601],256],65235:[[1601],256],65236:[[1601],256],65237:[[1602],256],65238:[[1602],256],65239:[[1602],256],65240:[[1602],256],65241:[[1603],256],65242:[[1603],256],65243:[[1603],256],65244:[[1603],256],65245:[[1604],256],65246:[[1604],256],65247:[[1604],256],65248:[[1604],256],65249:[[1605],256],65250:[[1605],256],65251:[[1605],256],65252:[[1605],256],65253:[[1606],256],65254:[[1606],256],65255:[[1606],256],65256:[[1606],256],65257:[[1607],256],65258:[[1607],256],65259:[[1607],256],65260:[[1607],256],65261:[[1608],256],65262:[[1608],256],65263:[[1609],256],65264:[[1609],256],65265:[[1610],256],65266:[[1610],256],65267:[[1610],256],65268:[[1610],256],65269:[[1604,1570],256],65270:[[1604,1570],256],65271:[[1604,1571],256],65272:[[1604,1571],256],65273:[[1604,1573],256],65274:[[1604,1573],256],65275:[[1604,1575],256],65276:[[1604,1575],256]},
-       65280:{65281:[[33],256],65282:[[34],256],65283:[[35],256],65284:[[36],256],65285:[[37],256],65286:[[38],256],65287:[[39],256],65288:[[40],256],65289:[[41],256],65290:[[42],256],65291:[[43],256],65292:[[44],256],65293:[[45],256],65294:[[46],256],65295:[[47],256],65296:[[48],256],65297:[[49],256],65298:[[50],256],65299:[[51],256],65300:[[52],256],65301:[[53],256],65302:[[54],256],65303:[[55],256],65304:[[56],256],65305:[[57],256],65306:[[58],256],65307:[[59],256],65308:[[60],256],65309:[[61],256],65310:[[62],256],65311:[[63],256],65312:[[64],256],65313:[[65],256],65314:[[66],256],65315:[[67],256],65316:[[68],256],65317:[[69],256],65318:[[70],256],65319:[[71],256],65320:[[72],256],65321:[[73],256],65322:[[74],256],65323:[[75],256],65324:[[76],256],65325:[[77],256],65326:[[78],256],65327:[[79],256],65328:[[80],256],65329:[[81],256],65330:[[82],256],65331:[[83],256],65332:[[84],256],65333:[[85],256],65334:[[86],256],65335:[[87],256],65336:[[88],256],65337:[[89],256],65338:[[90],256],65339:[[91],256],65340:[[92],256],65341:[[93],256],65342:[[94],256],65343:[[95],256],65344:[[96],256],65345:[[97],256],65346:[[98],256],65347:[[99],256],65348:[[100],256],65349:[[101],256],65350:[[102],256],65351:[[103],256],65352:[[104],256],65353:[[105],256],65354:[[106],256],65355:[[107],256],65356:[[108],256],65357:[[109],256],65358:[[110],256],65359:[[111],256],65360:[[112],256],65361:[[113],256],65362:[[114],256],65363:[[115],256],65364:[[116],256],65365:[[117],256],65366:[[118],256],65367:[[119],256],65368:[[120],256],65369:[[121],256],65370:[[122],256],65371:[[123],256],65372:[[124],256],65373:[[125],256],65374:[[126],256],65375:[[10629],256],65376:[[10630],256],65377:[[12290],256],65378:[[12300],256],65379:[[12301],256],65380:[[12289],256],65381:[[12539],256],65382:[[12530],256],65383:[[12449],256],65384:[[12451],256],65385:[[12453],256],65386:[[12455],256],65387:[[12457],256],65388:[[12515],256],65389:[[12517],256],65390:[[12519],256],65391:[[12483],256],65392:[[12540],256],65393:[[12450],256],65394:[[12452],256],65395:[[12454],256],65396:[[12456],256],65397:[[12458],256],65398:[[12459],256],65399:[[12461],256],65400:[[12463],256],65401:[[12465],256],65402:[[12467],256],65403:[[12469],256],65404:[[12471],256],65405:[[12473],256],65406:[[12475],256],65407:[[12477],256],65408:[[12479],256],65409:[[12481],256],65410:[[12484],256],65411:[[12486],256],65412:[[12488],256],65413:[[12490],256],65414:[[12491],256],65415:[[12492],256],65416:[[12493],256],65417:[[12494],256],65418:[[12495],256],65419:[[12498],256],65420:[[12501],256],65421:[[12504],256],65422:[[12507],256],65423:[[12510],256],65424:[[12511],256],65425:[[12512],256],65426:[[12513],256],65427:[[12514],256],65428:[[12516],256],65429:[[12518],256],65430:[[12520],256],65431:[[12521],256],65432:[[12522],256],65433:[[12523],256],65434:[[12524],256],65435:[[12525],256],65436:[[12527],256],65437:[[12531],256],65438:[[12441],256],65439:[[12442],256],65440:[[12644],256],65441:[[12593],256],65442:[[12594],256],65443:[[12595],256],65444:[[12596],256],65445:[[12597],256],65446:[[12598],256],65447:[[12599],256],65448:[[12600],256],65449:[[12601],256],65450:[[12602],256],65451:[[12603],256],65452:[[12604],256],65453:[[12605],256],65454:[[12606],256],65455:[[12607],256],65456:[[12608],256],65457:[[12609],256],65458:[[12610],256],65459:[[12611],256],65460:[[12612],256],65461:[[12613],256],65462:[[12614],256],65463:[[12615],256],65464:[[12616],256],65465:[[12617],256],65466:[[12618],256],65467:[[12619],256],65468:[[12620],256],65469:[[12621],256],65470:[[12622],256],65474:[[12623],256],65475:[[12624],256],65476:[[12625],256],65477:[[12626],256],65478:[[12627],256],65479:[[12628],256],65482:[[12629],256],65483:[[12630],256],65484:[[12631],256],65485:[[12632],256],65486:[[12633],256],65487:[[12634],256],65490:[[12635],256],65491:[[12636],256],65492:[[12637],256],65493:[[12638],256],65494:[[12639],256],65495:[[12640],256],65498:[[12641],256],65499:[[12642],256],65500:[[12643],256],65504:[[162],256],65505:[[163],256],65506:[[172],256],65507:[[175],256],65508:[[166],256],65509:[[165],256],65510:[[8361],256],65512:[[9474],256],65513:[[8592],256],65514:[[8593],256],65515:[[8594],256],65516:[[8595],256],65517:[[9632],256],65518:[[9675],256]}
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/implement.js
deleted file mode 100644 (file)
index cfc710e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'normalize',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/index.js
deleted file mode 100644 (file)
index 619b096..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.normalize
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/is-implemented.js
deleted file mode 100644 (file)
index 67c8d8d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'æøåäüö';
-
-module.exports = function () {
-       if (typeof str.normalize !== 'function') return false;
-       return str.normalize('NFKD') === 'æøåäüö';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/normalize/shim.js
deleted file mode 100644 (file)
index a379989..0000000
+++ /dev/null
@@ -1,289 +0,0 @@
-// Taken from: https://github.com/walling/unorm/blob/master/lib/unorm.js
-
-/*
-       * UnicodeNormalizer 1.0.0
-       * Copyright (c) 2008 Matsuza
-       * Dual licensed under the MIT (MIT-LICENSE.txt) and
-       * GPL (GPL-LICENSE.txt) licenses.
-       * $Date: 2008-06-05 16:44:17 +0200 (Thu, 05 Jun 2008) $
-       * $Rev: 13309 $
-*/
-
-'use strict';
-
-var primitiveSet = require('../../../object/primitive-set')
-  , validValue   = require('../../../object/valid-value')
-  , data         = require('./_data')
-
-  , floor = Math.floor
-  , forms = primitiveSet('NFC', 'NFD', 'NFKC', 'NFKD')
-
-  , DEFAULT_FEATURE = [null, 0, {}], CACHE_THRESHOLD = 10, SBase = 0xAC00
-  , LBase = 0x1100, VBase = 0x1161, TBase = 0x11A7, LCount = 19, VCount = 21
-  , TCount = 28, NCount = VCount * TCount, SCount = LCount * NCount
-  , UChar, cache = {}, cacheCounter = [], i, fromCache, fromData, fromCpOnly
-  , fromRuleBasedJamo, fromCpFilter, strategies, UCharIterator
-  , RecursDecompIterator, DecompIterator, CompIterator, createIterator
-  , normalize;
-
-UChar = function (cp, feature) {
-       this.codepoint = cp;
-       this.feature = feature;
-};
-
-// Strategies
-for (i = 0; i <= 0xFF; ++i) cacheCounter[i] = 0;
-
-fromCache = function (next, cp, needFeature) {
-       var ret = cache[cp];
-       if (!ret) {
-               ret = next(cp, needFeature);
-               if (!!ret.feature && ++cacheCounter[(cp >> 8) & 0xFF] > CACHE_THRESHOLD) {
-                       cache[cp] = ret;
-               }
-       }
-       return ret;
-};
-
-fromData = function (next, cp, needFeature) {
-       var hash = cp & 0xFF00, dunit = UChar.udata[hash] || {}, f = dunit[cp];
-       return f ? new UChar(cp, f) : new UChar(cp, DEFAULT_FEATURE);
-};
-fromCpOnly = function (next, cp, needFeature) {
-       return !!needFeature ? next(cp, needFeature) : new UChar(cp, null);
-};
-
-fromRuleBasedJamo = function (next, cp, needFeature) {
-       var c, base, i, arr, SIndex, TIndex, feature, j;
-       if (cp < LBase || (LBase + LCount <= cp && cp < SBase) ||
-                       (SBase + SCount < cp)) {
-               return next(cp, needFeature);
-       }
-       if (LBase <= cp && cp < LBase + LCount) {
-               c = {};
-               base = (cp - LBase) * VCount;
-               for (i = 0; i < VCount; ++i) {
-                       c[VBase + i] = SBase + TCount * (i + base);
-               }
-               arr = new Array(3);
-               arr[2] = c;
-               return new UChar(cp, arr);
-       }
-
-       SIndex = cp - SBase;
-       TIndex = SIndex % TCount;
-       feature = [];
-       if (TIndex !== 0) {
-               feature[0] = [SBase + SIndex - TIndex, TBase + TIndex];
-       } else {
-               feature[0] = [LBase + floor(SIndex / NCount), VBase +
-                       floor((SIndex % NCount) / TCount)];
-               feature[2] = {};
-               for (j = 1; j < TCount; ++j) {
-                       feature[2][TBase + j] = cp + j;
-               }
-       }
-       return new UChar(cp, feature);
-};
-
-fromCpFilter = function (next, cp, needFeature) {
-       return (cp < 60) || ((13311 < cp) && (cp < 42607))
-               ? new UChar(cp, DEFAULT_FEATURE) : next(cp, needFeature);
-};
-
-strategies = [fromCpFilter, fromCache, fromCpOnly, fromRuleBasedJamo, fromData];
-
-UChar.fromCharCode = strategies.reduceRight(function (next, strategy) {
-       return function (cp, needFeature) { return strategy(next, cp, needFeature); };
-}, null);
-
-UChar.isHighSurrogate = function (cp) { return cp >= 0xD800 && cp <= 0xDBFF; };
-UChar.isLowSurrogate = function (cp) { return cp >= 0xDC00 && cp <= 0xDFFF; };
-
-UChar.prototype.prepFeature = function () {
-       if (!this.feature) {
-               this.feature = UChar.fromCharCode(this.codepoint, true).feature;
-       }
-};
-
-UChar.prototype.toString = function () {
-       var x;
-       if (this.codepoint < 0x10000) return String.fromCharCode(this.codepoint);
-       x = this.codepoint - 0x10000;
-       return String.fromCharCode(floor(x / 0x400) + 0xD800, x % 0x400 + 0xDC00);
-};
-
-UChar.prototype.getDecomp = function () {
-       this.prepFeature();
-       return this.feature[0] || null;
-};
-
-UChar.prototype.isCompatibility = function () {
-       this.prepFeature();
-       return !!this.feature[1] && (this.feature[1] & (1 << 8));
-};
-UChar.prototype.isExclude = function () {
-       this.prepFeature();
-       return !!this.feature[1] && (this.feature[1] & (1 << 9));
-};
-UChar.prototype.getCanonicalClass = function () {
-       this.prepFeature();
-       return !!this.feature[1] ? (this.feature[1] & 0xff) : 0;
-};
-UChar.prototype.getComposite = function (following) {
-       var cp;
-       this.prepFeature();
-       if (!this.feature[2]) return null;
-       cp = this.feature[2][following.codepoint];
-       return cp ? UChar.fromCharCode(cp) : null;
-};
-
-UCharIterator = function (str) {
-       this.str = str;
-       this.cursor = 0;
-};
-UCharIterator.prototype.next = function () {
-       if (!!this.str && this.cursor < this.str.length) {
-               var cp = this.str.charCodeAt(this.cursor++), d;
-               if (UChar.isHighSurrogate(cp) && this.cursor < this.str.length &&
-                               UChar.isLowSurrogate((d = this.str.charCodeAt(this.cursor)))) {
-                       cp = (cp - 0xD800) * 0x400 + (d - 0xDC00) + 0x10000;
-                       ++this.cursor;
-               }
-               return UChar.fromCharCode(cp);
-       }
-       this.str = null;
-       return null;
-};
-
-RecursDecompIterator = function (it, cano) {
-       this.it = it;
-       this.canonical = cano;
-       this.resBuf = [];
-};
-
-RecursDecompIterator.prototype.next = function () {
-       var recursiveDecomp, uchar;
-       recursiveDecomp = function (cano, uchar) {
-               var decomp = uchar.getDecomp(), ret, i, a, j;
-               if (!!decomp && !(cano && uchar.isCompatibility())) {
-                       ret = [];
-                       for (i = 0; i < decomp.length; ++i) {
-                               a = recursiveDecomp(cano, UChar.fromCharCode(decomp[i]));
-                               //ret.concat(a); //<-why does not this work?
-                               //following block is a workaround.
-                               for (j = 0; j < a.length; ++j) ret.push(a[j]);
-                       }
-                       return ret;
-               }
-               return [uchar];
-       };
-       if (this.resBuf.length === 0) {
-               uchar = this.it.next();
-               if (!uchar) return null;
-               this.resBuf = recursiveDecomp(this.canonical, uchar);
-       }
-       return this.resBuf.shift();
-};
-
-DecompIterator = function (it) {
-       this.it = it;
-       this.resBuf = [];
-};
-
-DecompIterator.prototype.next = function () {
-       var cc, uchar, inspt, uchar2, cc2;
-       if (this.resBuf.length === 0) {
-               do {
-                       uchar = this.it.next();
-                       if (!uchar) break;
-                       cc = uchar.getCanonicalClass();
-                       inspt = this.resBuf.length;
-                       if (cc !== 0) {
-                               for (inspt; inspt > 0; --inspt) {
-                                       uchar2 = this.resBuf[inspt - 1];
-                                       cc2 = uchar2.getCanonicalClass();
-                                       if (cc2 <= cc) break;
-                               }
-                       }
-                       this.resBuf.splice(inspt, 0, uchar);
-               } while (cc !== 0);
-       }
-       return this.resBuf.shift();
-};
-
-CompIterator = function (it) {
-       this.it = it;
-       this.procBuf = [];
-       this.resBuf = [];
-       this.lastClass = null;
-};
-
-CompIterator.prototype.next = function () {
-       var uchar, starter, composite, cc;
-       while (this.resBuf.length === 0) {
-               uchar = this.it.next();
-               if (!uchar) {
-                       this.resBuf = this.procBuf;
-                       this.procBuf = [];
-                       break;
-               }
-               if (this.procBuf.length === 0) {
-                       this.lastClass = uchar.getCanonicalClass();
-                       this.procBuf.push(uchar);
-               } else {
-                       starter = this.procBuf[0];
-                       composite = starter.getComposite(uchar);
-                       cc = uchar.getCanonicalClass();
-                       if (!!composite && (this.lastClass < cc || this.lastClass === 0)) {
-                               this.procBuf[0] = composite;
-                       } else {
-                               if (cc === 0) {
-                                       this.resBuf = this.procBuf;
-                                       this.procBuf = [];
-                               }
-                               this.lastClass = cc;
-                               this.procBuf.push(uchar);
-                       }
-               }
-       }
-       return this.resBuf.shift();
-};
-
-createIterator = function (mode, str) {
-       switch (mode) {
-       case "NFD":
-               return new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), true)
-               );
-       case "NFKD":
-               return new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), false)
-               );
-       case "NFC":
-               return new CompIterator(new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), true)
-               ));
-       case "NFKC":
-               return new CompIterator(new DecompIterator(
-                       new RecursDecompIterator(new UCharIterator(str), false)
-               ));
-       }
-       throw mode + " is invalid";
-};
-normalize = function (mode, str) {
-       var it = createIterator(mode, str), ret = "", uchar;
-       while (!!(uchar = it.next())) ret += uchar.toString();
-       return ret;
-};
-
-/* Unicode data */
-UChar.udata =  data;
-
-module.exports = function (/*form*/) {
-       var str = String(validValue(this)), form = arguments[0];
-       if (form === undefined) form = 'NFC';
-       else form = String(form);
-       if (!forms[form]) throw new RangeError('Invalid normalization form: ' + form);
-       return normalize(form, str);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/pad.js
deleted file mode 100644 (file)
index f227f23..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var toInteger = require('../../number/to-integer')
-  , value     = require('../../object/valid-value')
-  , repeat    = require('./repeat')
-
-  , abs = Math.abs, max = Math.max;
-
-module.exports = function (fill/*, length*/) {
-       var self = String(value(this))
-         , sLength = self.length
-         , length = arguments[1];
-
-       length = isNaN(length) ? 1 : toInteger(length);
-       fill = repeat.call(String(fill), abs(length));
-       if (length >= 0) return fill.slice(0, max(0, length - sLength)) + self;
-       return self + (((sLength + length) >= 0) ? '' : fill.slice(length + sLength));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace-all.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace-all.js
deleted file mode 100644 (file)
index 678b1cb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var value = require('../../object/valid-value');
-
-module.exports = function (search, replace) {
-       var index, pos = 0, str = String(value(this)), sl, rl;
-       search = String(search);
-       replace = String(replace);
-       sl = search.length;
-       rl = replace.length;
-       while ((index = str.indexOf(search, pos)) !== -1) {
-               str = str.slice(0, index) + replace + str.slice(index + sl);
-               pos = index + rl;
-       }
-       return str;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/plain-replace.js
deleted file mode 100644 (file)
index 24ce16d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var indexOf = String.prototype.indexOf, slice = String.prototype.slice;
-
-module.exports = function (search, replace) {
-       var index = indexOf.call(this, search);
-       if (index === -1) return String(this);
-       return slice.call(this, 0, index) + replace +
-               slice.call(this, index + String(search).length);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/implement.js
deleted file mode 100644 (file)
index 4c39b9f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'repeat',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/index.js
deleted file mode 100644 (file)
index 15a800e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.repeat
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/is-implemented.js
deleted file mode 100644 (file)
index f7b8750..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var str = 'foo';
-
-module.exports = function () {
-       if (typeof str.repeat !== 'function') return false;
-       return (str.repeat(2) === 'foofoo');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/repeat/shim.js
deleted file mode 100644 (file)
index 0a3928b..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-// Thanks: http://www.2ality.com/2014/01/efficient-string-repeat.html
-
-'use strict';
-
-var value     = require('../../../object/valid-value')
-  , toInteger = require('../../../number/to-integer');
-
-module.exports = function (count) {
-       var str = String(value(this)), result;
-       count = toInteger(count);
-       if (count < 0) throw new RangeError("Count must be >= 0");
-       if (!isFinite(count)) throw new RangeError("Count must be < ∞");
-       result = '';
-       if (!count) return result;
-       while (true) {
-               if (count & 1) result += str;
-               count >>>= 1;
-               if (count <= 0) break;
-               str += str;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/implement.js
deleted file mode 100644 (file)
index d4f1eaf..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String.prototype, 'startsWith',
-               { value: require('./shim'), configurable: true, enumerable: false,
-                       writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/index.js
deleted file mode 100644 (file)
index ec66a7c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.prototype.startsWith
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/is-implemented.js
deleted file mode 100644 (file)
index a0556f1..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var str = 'razdwatrzy';
-
-module.exports = function () {
-       if (typeof str.startsWith !== 'function') return false;
-       return ((str.startsWith('trzy') === false) &&
-               (str.startsWith('raz') === true));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/#/starts-with/shim.js
deleted file mode 100644 (file)
index aa5aaf4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var value     = require('../../../object/valid-value')
-  , toInteger = require('../../../number/to-integer')
-
-  , max = Math.max, min = Math.min;
-
-module.exports = function (searchString/*, position*/) {
-       var start, self = String(value(this));
-       start = min(max(toInteger(arguments[1]), 0), self.length);
-       return (self.indexOf(searchString, start) === start);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/format-method.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/format-method.js
deleted file mode 100644 (file)
index f1de1e3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var isCallable = require('../object/is-callable')
-  , value      = require('../object/valid-value')
-
-  , call = Function.prototype.call;
-
-module.exports = function (fmap) {
-       fmap = Object(value(fmap));
-       return function (pattern) {
-               var context = value(this);
-               pattern = String(pattern);
-               return pattern.replace(/%([a-zA-Z]+)|\\([\u0000-\uffff])/g,
-                       function (match, token, escape) {
-                               var t, r;
-                               if (escape) return escape;
-                               t = token;
-                               while (t && !(r = fmap[t])) t = t.slice(0, -1);
-                               if (!r) return match;
-                               if (isCallable(r)) r = call.call(r, context);
-                               return r + token.slice(t.length);
-                       });
-       };
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/implement.js
deleted file mode 100644 (file)
index b062331..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String, 'fromCodePoint', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/index.js
deleted file mode 100644 (file)
index 3f3110b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.fromCodePoint
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/is-implemented.js
deleted file mode 100644 (file)
index 840a20e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var fromCodePoint = String.fromCodePoint;
-       if (typeof fromCodePoint !== 'function') return false;
-       return fromCodePoint(0x1D306, 0x61, 0x1D307) === '\ud834\udf06a\ud834\udf07';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/from-code-point/shim.js
deleted file mode 100644 (file)
index e902c8e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-// Based on:
-// http://norbertlindenberg.com/2012/05/ecmascript-supplementary-characters/
-// and:
-// https://github.com/mathiasbynens/String.fromCodePoint/blob/master
-// /fromcodepoint.js
-
-'use strict';
-
-var floor = Math.floor, fromCharCode = String.fromCharCode;
-
-module.exports = function (/* …codePoints*/) {
-       var chars = [], l = arguments.length, i, c, result = '';
-       for (i = 0; i < l; ++i) {
-               c = Number(arguments[i]);
-               if (!isFinite(c) || c < 0 || c > 0x10FFFF || floor(c) !== c) {
-                       throw new RangeError("Invalid code point " + c);
-               }
-
-               if (c < 0x10000) {
-                       chars.push(c);
-               } else {
-                       c -= 0x10000;
-                       chars.push((c >> 10) + 0xD800, (c % 0x400) + 0xDC00);
-               }
-               if (i + 1 !== l && chars.length <= 0x4000) continue;
-               result += fromCharCode.apply(null, chars);
-               chars.length = 0;
-       }
-       return result;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/index.js
deleted file mode 100644 (file)
index dbbcdf6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-       '#':           require('./#'),
-       formatMethod:  require('./format-method'),
-       fromCodePoint: require('./from-code-point'),
-       isString:      require('./is-string'),
-       randomUniq:    require('./random-uniq'),
-       raw:           require('./raw')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/is-string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/is-string.js
deleted file mode 100644 (file)
index 719aeec..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-var toString = Object.prototype.toString
-
-  , id = toString.call('');
-
-module.exports = function (x) {
-       return (typeof x === 'string') || (x && (typeof x === 'object') &&
-               ((x instanceof String) || (toString.call(x) === id))) || false;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/random-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/random-uniq.js
deleted file mode 100644 (file)
index 54ae6f8..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var generated = Object.create(null)
-
-  , random = Math.random;
-
-module.exports = function () {
-       var str;
-       do { str = random().toString(36).slice(2); } while (generated[str]);
-       return str;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/implement.js
deleted file mode 100644 (file)
index c417e65..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-if (!require('./is-implemented')()) {
-       Object.defineProperty(String, 'raw', { value: require('./shim'),
-               configurable: true, enumerable: false, writable: true });
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/index.js
deleted file mode 100644 (file)
index 504a5de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = require('./is-implemented')()
-       ? String.raw
-       : require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/is-implemented.js
deleted file mode 100644 (file)
index d7204c0..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function () {
-       var raw = String.raw, test;
-       if (typeof raw !== 'function') return false;
-       test = ['foo\nbar', 'marko\n'];
-       test.raw = ['foo\\nbar', 'marko\\n'];
-       return raw(test, 'INSE\nRT') === 'foo\\nbarINSE\nRTmarko\\n';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/string/raw/shim.js
deleted file mode 100644 (file)
index 7096efb..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var toPosInt   = require('../../number/to-pos-integer')
-  , validValue = require('../../object/valid-value')
-
-  , reduce = Array.prototype.reduce;
-
-module.exports = function (callSite/*,  …substitutions*/) {
-       var args, rawValue = Object(validValue(Object(validValue(callSite)).raw));
-       if (!toPosInt(rawValue.length)) return '';
-       args = arguments;
-       return reduce.call(rawValue, function (a, b, i) {
-               return a + String(args[i]) + b;
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/__tad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/__tad.js
deleted file mode 100644 (file)
index 8845778..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-exports.context = null;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/implement.js
deleted file mode 100644 (file)
index f060539..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/@@iterator/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/@@iterator/shim.js
deleted file mode 100644 (file)
index e590d8f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: '1', done: false });
-       a.deep(iterator.next(), { value: '2', done: false });
-       a.deep(iterator.next(), { value: '3', done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/_compare-by-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/_compare-by-length.js
deleted file mode 100644 (file)
index e40c305..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [4, 5, 6], y = { length: 8 }, w = {}, z = { length: 1 };
-
-       a.deep([x, y, w, z].sort(t), [w, z, x, y]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/binary-search.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/binary-search.js
deleted file mode 100644 (file)
index cf33173..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var compare  = function (value) { return this - value; };
-
-module.exports = function (t, a) {
-       var arr;
-       arr = [2, 5, 5, 8, 34, 67, 98, 345, 678];
-
-       // highest, equal match
-       a(t.call(arr, compare.bind(1)), 0, "All higher");
-       a(t.call(arr, compare.bind(679)), arr.length - 1, "All lower");
-       a(t.call(arr, compare.bind(4)), 0, "Mid");
-       a(t.call(arr, compare.bind(5)), 2, "Match");
-       a(t.call(arr, compare.bind(6)), 2, "Above");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/clear.js
deleted file mode 100644 (file)
index a5b1c97..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [1, 2, {}, 4];
-       a(t.call(x), x, "Returns same array");
-       a.deep(x, [], "Empties array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/compact.js
deleted file mode 100644 (file)
index 6390eb2..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "": function (t, a) {
-               var o, x, y, z;
-               o = {};
-               x = [0, 1, "", null, o, false, undefined, true];
-               y = x.slice(0);
-
-               a.not(z = t.call(x), x, "Returns different object");
-               a.deep(x, y, "Origin not changed");
-               a.deep(z, [0, 1, "", o, false, true], "Result");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/implement.js
deleted file mode 100644 (file)
index 3bdbe86..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/concat/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/concat/shim.js
deleted file mode 100644 (file)
index c30eb7e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr = [1, 3, 45], x = {}, subArr, subArr2, result;
-
-       a.deep(t.call(arr, '2d', x, ['ere', 'fe', x], false, null),
-               [1, 3, 45, '2d', x, 'ere', 'fe', x, false, null], "Plain array");
-
-       subArr = new SubArray('lol', 'miszko');
-       subArr2 = new SubArray('elo', 'fol');
-
-       result = t.call(subArr, 'df', arr, 'fef', subArr2, null);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, ['lol', 'miszko', 'df', 1, 3, 45, 'fef', 'elo', 'fol', null],
-               "Spreable by default");
-
-       SubArray.prototype['@@isConcatSpreadable'] = false;
-
-       result = t.call(subArr, 'df', arr, 'fef', subArr2, null);
-       a.deep(result, ['lol', 'miszko', 'df', 1, 3, 45, 'fef', subArr2, null],
-               "Non spreadable");
-
-       delete SubArray.prototype['@@isConcatSpreadable'];
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/contains.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/contains.js
deleted file mode 100644 (file)
index 21404a1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this, this[1]), true, "Contains");
-               a(t.call(this, {}), false, "Does Not contain");
-       },
-       "": function (t, a) {
-               var o, x = {}, y = {};
-
-               o = [1, 'raz', x];
-
-               a(t.call(o, 1), true, "First");
-               a(t.call(o, '1'), false, "Type coercion");
-               a(t.call(o, 'raz'), true, "Primitive");
-               a(t.call(o, 'foo'), false, "Primitive not found");
-               a(t.call(o, x), true, "Object found");
-               a(t.call(o, y), false, "Object not found");
-               a(t.call(o, 1, 1), false, "Position");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/implement.js
deleted file mode 100644 (file)
index 3607047..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/copy-within/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/copy-within/shim.js
deleted file mode 100644 (file)
index 50b03e8..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var args, x;
-
-       a.h1("2 args");
-       x = [1, 2, 3, 4, 5];
-       t.call(x, 0, 3);
-       a.deep(x, [4, 5, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 3), [1, 4, 5, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 2), [1, 3, 4, 5, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 2, 2), [1, 2, 3, 4, 5]);
-
-       a.h1("3 args");
-       a.deep(t.call([1, 2, 3, 4, 5], 0, 3, 4), [4, 2, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 3, 4), [1, 4, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 1, 2, 4), [1, 3, 4, 4, 5]);
-
-       a.h1("Negative args");
-       a.deep(t.call([1, 2, 3, 4, 5], 0, -2), [4, 5, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], 0, -2, -1), [4, 2, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3, -2), [1, 3, 3, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3, -1), [1, 3, 4, 4, 5]);
-       a.deep(t.call([1, 2, 3, 4, 5], -4, -3), [1, 3, 4, 5, 5]);
-
-       a.h1("Array-likes");
-       args = (function () { return arguments; }(1, 2, 3));
-       a.deep(t.call(args, -2, 0), [1, 1, 2]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/diff.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/diff.js
deleted file mode 100644 (file)
index bcfa3a0..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this), []);
-       },
-       "": function (t, a) {
-               var x = {}, y = {};
-
-               a.deep(t.call([1, 'raz', x, 2, 'trzy', y], [x, 2, 'trzy']), [1, 'raz', y],
-                       "Scope longer");
-               a.deep(t.call([1, 'raz', x], [x, 2, 'trzy', 1, y]), ['raz'],
-                       "Arg longer");
-               a.deep(t.call([1, 'raz', x], []), [1, 'raz', x], "Empty arg");
-               a.deep(t.call([], [1, y, 'sdfs']), [], "Empty scope");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-index-of.js
deleted file mode 100644 (file)
index 4cf6c63..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([3, 'raz', {}, x, {}], x), 3, "Regular");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN), 2, "NaN");
-       a(t.call([3, 'raz', 0, {}, -0], -0), 2, "-0");
-       a(t.call([3, 'raz', -0, {}, 0], +0), 2, "+0");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, 3), 4, "fromIndex");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -1), 4, "fromIndex negative #1");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -2), 4, "fromIndex negative #2");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, -3), 2, "fromIndex negative #3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-last-index-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/e-last-index-of.js
deleted file mode 100644 (file)
index ed4f700..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([3, 'raz', {}, x, {}, x], x), 5, "Regular");
-       a(t.call([3, 'raz', NaN, {}, x], NaN), 2, "NaN");
-       a(t.call([3, 'raz', 0, {}, -0], -0), 4, "-0");
-       a(t.call([3, 'raz', -0, {}, 0], +0), 4, "+0");
-       a(t.call([3, 'raz', NaN, {}, NaN], NaN, 3), 2, "fromIndex");
-       a(t.call([3, 'raz', NaN, 2, NaN], NaN, -1), 4, "Negative fromIndex #1");
-       a(t.call([3, 'raz', NaN, 2, NaN], NaN, -2), 2, "Negative fromIndex #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/implement.js
deleted file mode 100644 (file)
index 733209a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/entries/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/entries/shim.js
deleted file mode 100644 (file)
index bf40d31..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: [0, '1'], done: false });
-       a.deep(iterator.next(), { value: [1, '2'], done: false });
-       a.deep(iterator.next(), { value: [2, '3'], done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/exclusion.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/exclusion.js
deleted file mode 100644 (file)
index 07b32d8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var x = {};
-               a.deep(t.call(this, this, [this[0], this[2], x]), [x]);
-       },
-       "": function (t, a) {
-               var x = {}, y = {};
-
-               a.deep(t.call([x, y]), [x, y], "No arguments");
-               a.deep(t.call([x, 1], [], []), [x, 1], "Empty arguments");
-               a.deep(t.call([1, 'raz', x], [2, 'raz', y], [2, 'raz', x]), [1, y]);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/implement.js
deleted file mode 100644 (file)
index 2a01d28..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/fill/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/fill/shim.js
deleted file mode 100644 (file)
index d67300f..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-// Taken from https://github.com/paulmillr/es6-shim/blob/master/test/array.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-
-       x = [1, 2, 3, 4, 5, 6];
-       a(t.call(x, -1), x, "Returns self object");
-       a.deep(x, [-1, -1, -1, -1, -1, -1], "Value");
-
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, 3), [1, 2, 3, -1, -1, -1],
-               "Positive start");
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, -3), [1, 2, 3, -1, -1, -1],
-               "Negative start");
-       a.deep(t.call([1, 2, 3, 4, 5, 6], -1, 9), [1, 2, 3, 4, 5, 6],
-               "Large start");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/implement.js
deleted file mode 100644 (file)
index 6d6b87c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/filter/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/filter/shim.js
deleted file mode 100644 (file)
index e8b5c39..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, Boolean), ['foo', '2d', x], "Plain array");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, Boolean);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, ['foo', '2d', x], "Result of subclass");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/implement.js
deleted file mode 100644 (file)
index 8d85e61..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/find-index/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find-index/shim.js
deleted file mode 100644 (file)
index b5fee46..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var count = 0, o = {}, self = Object(this);
-       a(t.call(self, function (value, i, scope) {
-               a(value, this[i], "Value");
-               a(i, count++, "Index");
-               a(scope, this, "Scope");
-       }, self), -1, "Falsy result");
-       a(count, 3);
-
-       count = -1;
-       a(t.call(this, function () {
-               return ++count ? o : null;
-       }, this), 1, "Truthy result");
-       a(count, 1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/implement.js
deleted file mode 100644 (file)
index 29fac41..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/find/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/find/shim.js
deleted file mode 100644 (file)
index ad2e645..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var count = 0, o = {}, self = Object(this);
-       a(t.call(self, function (value, i, scope) {
-               a(value, this[i], "Value");
-               a(i, count++, "Index");
-               a(scope, this, "Scope");
-       }, self), undefined, "Falsy result");
-       a(count, 3);
-
-       count = -1;
-       a(t.call(this, function () {
-               return ++count ? o : null;
-       }, this), this[1], "Truthy result");
-       a(count, 1);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first-index.js
deleted file mode 100644 (file)
index 4aebad6..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a(t.call([]), null, "Empty");
-       a(t.call([null]), 0, "One value");
-       a(t.call([1, 2, 3]), 0, "Many values");
-       a(t.call(new Array(1000)), null, "Sparse empty");
-       x = [];
-       x[883] = undefined;
-       x[890] = null;
-       a(t.call(x), 883, "Manual sparse, distant value");
-       x = new Array(1000);
-       x[657] = undefined;
-       x[700] = null;
-       a(t.call(x), 657, "Sparse, distant value");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/first.js
deleted file mode 100644 (file)
index 87fde03..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       a(t.call(this), this[0]);
-};
-exports[''] = function (t, a) {
-       var x;
-       a(t.call([]), undefined, "Empty");
-       a(t.call(new Array(234), undefined, "Sparse empty"));
-       x = new Array(2342);
-       x[434] = {};
-       a(t.call(x), x[434], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/flatten.js
deleted file mode 100644 (file)
index 65f1214..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var o = [1, 2, [3, 4, [5, 6], 7, 8], 9, 10];
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "Nested Arrays": function (t, a) {
-               a(t.call(o).length, 10);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/for-each-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/for-each-right.js
deleted file mode 100644 (file)
index 2d24569..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, first, last, x, icount = this.length;
-               t.call(this, function (item, index, col) {
-                       ++count;
-                       if (!first) {
-                               first = item;
-                       }
-                       last = item;
-                       x = col;
-                       a(index, --icount, "Index");
-               });
-               a(count, this.length, "Iterated");
-               a(first, this[this.length - 1], "First is last");
-               a(last, this[0], "Last is first");
-               a.deep(x, Object(this), "Collection as third argument"); //jslint: skip
-       },
-       "": function (t, a) {
-               var x = {}, y, count;
-               t.call([1], function () { y = this; }, x);
-               a(y, x, "Scope");
-               y = 0;
-               t.call([3, 4, 4], function (a, i) { y += i; });
-               a(y, 3, "Indexes");
-
-               x = [1, 3];
-               x[5] = 'x';
-               y = 0;
-               count = 0;
-               t.call(x, function (a, i) { ++count; y += i; });
-               a(y, 6, "Misssing Indexes");
-               a(count, 3, "Misssing Indexes, count");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/group.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/group.js
deleted file mode 100644 (file)
index 32dc8c2..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, self;
-
-               self = Object(this);
-               a.deep(t.call(self, function (v, i, scope) {
-                       a(v, this[i], "Value");
-                       a(i, count++, "Index");
-                       a(scope, this, "Scope");
-                       return i;
-               }, self), { 0: [this[0]], 1: [this[1]], 2: [this[2]] });
-       },
-       "": function (t, a) {
-               var r;
-               r = t.call([2, 3, 3, 4, 5, 6, 7, 7, 23, 45, 34, 56],
-                       function (v) {
-                               return v % 2 ? 'odd' : 'even';
-                       });
-               a.deep(r.odd, [3, 3, 5, 7, 7, 23, 45]);
-               a.deep(r.even, [2, 4, 6, 34, 56]);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/indexes-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/indexes-of.js
deleted file mode 100644 (file)
index 3364170..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this[1]), [1]);
-       },
-       "": function (t, a) {
-               var x = {};
-               a.deep(t.call([1, 3, 5, 3, 5], 6), [], "No result");
-               a.deep(t.call([1, 3, 5, 1, 3, 5, 1], 1), [0, 3, 6], "Some results");
-               a.deep(t.call([], x), [], "Empty array");
-               a.deep(t.call([x, 3, {}, x, 3, 5, x], x), [0, 3, 6], "Search for object");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/intersection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/intersection.js
deleted file mode 100644 (file)
index b72b2fb..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array');
-
-module.exports = {
-       __generic: function (t, a) {
-               a.deep(t.call(this, this, this), toArray(this));
-       },
-       "": function (t, a) {
-               var x = {}, y = {}, p, r;
-               a.deep(t.call([], [2, 3, 4]), [], "Empty #1");
-               a.deep(t.call([2, 3, 4], []), [], "Empty #2");
-               a.deep(t.call([2, 3, x], [y, 5, 7]), [], "Different");
-               p = t.call([3, 5, 'raz', {}, 'dwa', x], [1, 3, 'raz', 'dwa', 'trzy', x, {}],
-                       [3, 'raz', x, 65]);
-               r = [3, 'raz', x];
-               p.sort();
-               r.sort();
-               a.deep(p, r, "Same parts");
-               a.deep(t.call(r, r), r, "Same");
-               a.deep(t.call([1, 2, x, 4, 5, y, 7], [7, y, 5, 4, x, 2, 1]),
-                       [1, 2, x, 4, 5, y, 7], "Long reverse same");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-copy.js
deleted file mode 100644 (file)
index e7f80e7..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([], []), true, "Empty");
-       a(t.call([], {}), true, "Empty lists");
-       a(t.call([1, x, 'raz'], [1, x, 'raz']), true, "Same");
-       a(t.call([1, x, 'raz'], { 0: 1, 1: x, 2: 'raz', length: 3 }), true,
-                       "Same lists");
-       a(t.call([1, x, 'raz'], [x, 1, 'raz']), false, "Diff order");
-       a(t.call([1, x], [1, x, 'raz']), false, "Diff length #1");
-       a(t.call([1, x, 'raz'], [1, x]), false, "Diff length #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/is-uniq.js
deleted file mode 100644 (file)
index 7349ba3..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t.call([]), true, "Empty");
-       a(t.call({}), true, "Empty lists");
-       a(t.call([1, x, 'raz']), true, "Uniq");
-       a(t.call([1, x, 1, 'raz']), false, "Not Uniq: primitive");
-       a(t.call([1, x, '1', 'raz']), true, "Uniq: primitive");
-       a(t.call([1, x, 1, {}, 'raz']), false, "Not Uniq: Obj");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/implement.js
deleted file mode 100644 (file)
index b0c1aa0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/keys/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/keys/shim.js
deleted file mode 100644 (file)
index a43c04c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: 0, done: false });
-       a.deep(iterator.next(), { value: 1, done: false });
-       a.deep(iterator.next(), { value: 2, done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last-index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last-index.js
deleted file mode 100644 (file)
index a1cac10..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a(t.call([]), null, "Empty");
-       a(t.call([null]), 0, "One value");
-       a(t.call([1, 2, 3]), 2, "Many values");
-       a(t.call(new Array(1000)), null, "Sparse empty");
-       x = [];
-       x[883] = null;
-       x[890] = undefined;
-       a(t.call(x), 890, "Manual sparse, distant value");
-       x = new Array(1000);
-       x[657] = null;
-       x[700] = undefined;
-       a(t.call(x), 700, "Sparse, distant value");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/last.js
deleted file mode 100644 (file)
index 8d051bc..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       a(t.call(this), this[this.length - 1]);
-};
-
-exports[''] = function (t, a) {
-       var x;
-       a(t.call([]), undefined, "Empty");
-       a(t.call(new Array(234), undefined, "Sparse empty"));
-       x = new Array(2342);
-       x[434] = {};
-       x[450] = {};
-       a(t.call(x), x[450], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/implement.js
deleted file mode 100644 (file)
index cdcbc8d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/map/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/map/shim.js
deleted file mode 100644 (file)
index bbfefe8..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, Boolean), [true, false, false, true, false, true, false],
-               "Plain array");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, Boolean);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [true, false, false, true, false, true, false],
-               "Result of subclass");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/remove.js
deleted file mode 100644 (file)
index 3ebdca2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var y = {}, z = {}, x = [9, z, 5, y, 'foo'];
-       t.call(x, y);
-       a.deep(x, [9, z, 5, 'foo']);
-       t.call(x, {});
-       a.deep(x, [9, z, 5, 'foo'], "Not existing");
-       t.call(x, 5);
-       a.deep(x, [9, z, 'foo'], "Primitive");
-       x = [9, z, 5, y, 'foo'];
-       t.call(x, z, 5, 'foo');
-       a.deep(x, [9, y], "More than one argument");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/separate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/separate.js
deleted file mode 100644 (file)
index 42918b5..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = [], y = {}, z = {};
-       a.deep(t.call(x, y), [], "Empty");
-       a.not(t.call(x), x, "Returns copy");
-       a.deep(t.call([1], y), [1], "One");
-       a.deep(t.call([1, 'raz'], y), [1, y, 'raz'], "One");
-       a.deep(t.call([1, 'raz', x], y), [1, y, 'raz', y, x], "More");
-       x = new Array(1000);
-       x[23] = 2;
-       x[3453] = 'raz';
-       x[500] = z;
-       a.deep(t.call(x, y), [2, y, z, y, 'raz'], "Sparse");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/implement.js
deleted file mode 100644 (file)
index 855ae2f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/slice/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/slice/shim.js
deleted file mode 100644 (file)
index f674f34..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, 2, 4), [0, '2d'], "Plain array: result");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, 2, 4);
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [0, '2d'], "Subclass: result");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/some-right.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/some-right.js
deleted file mode 100644 (file)
index 900771a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               var count = 0, first, last, x, icount = this.length;
-               t.call(this, function (item, index, col) {
-                       ++count;
-                       if (!first) {
-                               first = item;
-                       }
-                       last = item;
-                       x = col;
-                       a(index, --icount, "Index");
-               });
-               a(count, this.length, "Iterated");
-               a(first, this[this.length - 1], "First is last");
-               a(last, this[0], "Last is first");
-               a.deep(x, Object(this), "Collection as third argument"); //jslint: skip
-       },
-       "": function (t, a) {
-               var x = {}, y, count;
-               t.call([1], function () { y = this; }, x);
-               a(y, x, "Scope");
-               y = 0;
-               t.call([3, 4, 4], function (a, i) { y += i; });
-               a(y, 3, "Indexes");
-
-               x = [1, 3];
-               x[5] = 'x';
-               y = 0;
-               count = 0;
-               a(t.call(x, function (a, i) { ++count; y += i; }), false, "Return");
-               a(y, 6, "Misssing Indexes");
-               a(count, 3, "Misssing Indexes, count");
-
-               count = 0;
-               a(t.call([-2, -3, -4, 2, -5], function (item) {
-                       ++count;
-                       return item > 0;
-               }), true, "Return");
-               a(count, 2, "Break after true is returned");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/implement.js
deleted file mode 100644 (file)
index 0d9f461..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/splice/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/splice/shim.js
deleted file mode 100644 (file)
index 2c751e6..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var SubArray = require('../../../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr, x = {}, subArr, result;
-
-       arr = ['foo', undefined, 0, '2d', false, x, null];
-
-       a.deep(t.call(arr, 2, 2, 'bar'), [0, '2d'], "Plain array: result");
-       a.deep(arr, ["foo", undefined, "bar", false, x, null], "Plain array: change");
-
-       subArr = new SubArray('foo', undefined, 0, '2d', false, x, null);
-
-       result = t.call(subArr, 2, 2, 'bar');
-       a(result instanceof SubArray, true, "Instance of subclass");
-       a.deep(result, [0, '2d'], "Subclass: result");
-       a.deep(subArr, ["foo", undefined, "bar", false, x, null], "Subclass: change");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/uniq.js
deleted file mode 100644 (file)
index 2f7e6c4..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = {
-       __generic: function (t, a) {
-               a(t.call(this).length, 3);
-       },
-       "": function (t, a) {
-               var o, x = {}, y = {}, z = {}, w;
-               o = [1, 2, x, 3, 1, 'raz', '1', y, x, 'trzy', z, 'raz'];
-
-               a.not(w = t.call(o), o, "Returns different object");
-               a.deep(w, [1, 2, x, 3, 'raz', '1', y, 'trzy', z], "Result");
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/implement.js
deleted file mode 100644 (file)
index 9f40138..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../array/#/values/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/#/values/shim.js
deleted file mode 100644 (file)
index e590d8f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.__generic = function (t, a) {
-       var iterator = t.call(this);
-       a.deep(iterator.next(), { value: '1', done: false });
-       a.deep(iterator.next(), { value: '2', done: false });
-       a.deep(iterator.next(), { value: '3', done: false });
-       a.deep(iterator.next(), { value: undefined, done: true });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/__scopes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/__scopes.js
deleted file mode 100644 (file)
index fc240d3..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-exports.Array = ['1', '2', '3'];
-
-exports.Arguments = (function () {
-       return arguments;
-}('1', '2', '3'));
-
-exports.String = "123";
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_is-extensible.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_is-extensible.js
deleted file mode 100644 (file)
index d387126..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'boolean');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js
deleted file mode 100644 (file)
index 29d8699..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (t, a) {
-       t((t === null) || isArray(t.prototype), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/_sub-array-dummy.js
deleted file mode 100644 (file)
index 29d8699..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var isArray = Array.isArray;
-
-module.exports = function (t, a) {
-       t((t === null) || isArray(t.prototype), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/implement.js
deleted file mode 100644 (file)
index e0db846..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../array/from/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/from/shim.js
deleted file mode 100644 (file)
index 310302a..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-// Some tests taken from: https://github.com/mathiasbynens/Array.from/blob/master/tests/tests.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var o = [1, 2, 3], MyType;
-       a.not(t(o), o, "Array");
-       a.deep(t(o), o, "Array: same content");
-       a.deep(t('12r3v'), ['1', '2', 'r', '3', 'v'], "String");
-       a.deep(t((function () { return arguments; }(3, o, 'raz'))),
-               [3, o, 'raz'], "Arguments");
-       a.deep(t((function () { return arguments; }(3))), [3],
-               "Arguments with one numeric value");
-
-       a.deep(t({ 0: 'raz', 1: 'dwa', length: 2 }), ['raz', 'dwa'], "Other");
-
-       a.deep(t(o, function (val) { return (val + 2) * 10; }, 10), [30, 40, 50],
-               "Mapping");
-
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.deep(t(3), [], "Primitive");
-
-       a(t.length, 1, "Length");
-       a.deep(t({ length: 0 }), [], "No values Array-like");
-       a.deep(t({ length: -1 }), [], "Invalid length Array-like");
-       a.deep(t({ length: -Infinity }), [], "Invalid length Array-like #2");
-       a.throws(function () { t(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.deep(t(false), [], "Boolean");
-       a.deep(t(-Infinity), [], "Inifity");
-       a.deep(t(-0), [], "-0");
-       a.deep(t(+0), [], "+0");
-       a.deep(t(1), [], "1");
-       a.deep(t(+Infinity), [], "+Infinity");
-       a.deep(t({}), [], "Plain object");
-       a.deep(t({ length: 1 }), [undefined], "Sparse array-like");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return x + x; }), ['aa', 'bb'],
-               "Map");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return String(this); }, undefined),
-               ['undefined', 'undefined'], "Map context");
-       a.deep(t({ '0': 'a', '1': 'b', length: 2 }, function (x) { return String(this); }, 'x'),
-               ['x', 'x'], "Map primitive context");
-       a.throws(function () { t({}, 'foo', 'x'); }, TypeError, "Non callable for map");
-
-       a.deep(t.call(null, { length: 1, '0': 'a' }), ['a'], "Null context");
-
-       a(t({ __proto__: { '0': 'abc', length: 1 } })[0], 'abc', "Values on prototype");
-
-       a.throws(function () { t.call(function () { return Object.freeze({}); }, {}); },
-               TypeError, "Contructor producing freezed objects");
-
-       // Ensure no setters are called for the indexes
-       // Ensure no setters are called for the indexes
-       MyType = function () {};
-       Object.defineProperty(MyType.prototype, '0', {
-               set: function (x) { throw new Error('Setter called: ' + x); }
-       });
-       a.deep(t.call(MyType, { '0': 'abc', length: 1 }), { '0': 'abc', length: 1 },
-               "Defined not set");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/generate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/generate.js
deleted file mode 100644 (file)
index d72e056..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-       a.deep(t(3), [undefined, undefined, undefined], "Just length");
-       a.deep(t(0, 'x'), [], "No repeat");
-       a.deep(t(1, x, y), [x], "Arguments length larger than repeat number");
-       a.deep(t(3, x), [x, x, x], "Single argument");
-       a.deep(t(5, x, y), [x, y, x, y, x], "Many arguments");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/is-plain-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/is-plain-array.js
deleted file mode 100644 (file)
index 871a08a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var SubArray = require('../../array/_sub-array-dummy-safe');
-
-module.exports = function (t, a) {
-       var arr = [1, 2, 3];
-       a(t(arr), true, "Array");
-       a(t(null), false, "Null");
-       a(t(), false, "Undefined");
-       a(t('234'), false, "String");
-       a(t(23), false, "Number");
-       a(t({}), false, "Plain object");
-       a(t({ length: 1, 0: 'raz' }), false, "Array-like");
-       a(t(Object.create(arr)), false, "Array extension");
-       if (!SubArray) return;
-       a(t(new SubArray(23)), false, "Subclass instance");
-       a(t(Array.prototype), false, "Array.prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/implement.js
deleted file mode 100644 (file)
index 30d53be..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../array/of/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/of/shim.js
deleted file mode 100644 (file)
index e697442..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-// Most tests taken from https://github.com/mathiasbynens/Array.of/blob/master/tests/tests.js
-// Thanks @mathiasbynens
-
-'use strict';
-
-var defineProperty = Object.defineProperty;
-
-module.exports = function (t, a) {
-       var x = {}, testObject, MyType;
-
-       a.deep(t(), [], "No arguments");
-       a.deep(t(3), [3], "One numeric argument");
-       a.deep(t(3, 'raz', null, x, undefined), [3, 'raz', null, x, undefined],
-               "Many arguments");
-
-       a(t.length, 0, "Length");
-
-       a.deep(t('abc'), ['abc'], "String");
-       a.deep(t(undefined), [undefined], "Undefined");
-       a.deep(t(null), [null], "Null");
-       a.deep(t(false), [false], "Boolean");
-       a.deep(t(-Infinity), [-Infinity], "Infinity");
-       a.deep(t(-0), [-0], "-0");
-       a.deep(t(+0), [+0], "+0");
-       a.deep(t(1), [1], "1");
-       a.deep(t(1, 2, 3), [1, 2, 3], "Numeric args");
-       a.deep(t(+Infinity), [+Infinity], "+Infinity");
-       a.deep(t({ '0': 'a', '1': 'b', '2': 'c', length: 3 }),
-               [{ '0': 'a', '1': 'b', '2': 'c', length: 3 }], "Array like");
-       a.deep(t(undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity),
-               [undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity], "Falsy arguments");
-
-       a.h1("Null context");
-       a.deep(t.call(null, 'abc'), ['abc'], "String");
-       a.deep(t.call(null, undefined), [undefined], "Undefined");
-       a.deep(t.call(null, null), [null], "Null");
-       a.deep(t.call(null, false), [false], "Boolean");
-       a.deep(t.call(null, -Infinity), [-Infinity], "-Infinity");
-       a.deep(t.call(null, -0), [-0], "-0");
-       a.deep(t.call(null, +0), [+0], "+0");
-       a.deep(t.call(null, 1), [1], "1");
-       a.deep(t.call(null, 1, 2, 3), [1, 2, 3], "Numeric");
-       a.deep(t.call(null, +Infinity), [+Infinity], "+Infinity");
-       a.deep(t.call(null, { '0': 'a', '1': 'b', '2': 'c', length: 3 }),
-               [{ '0': 'a', '1': 'b', '2': 'c', length: 3 }], "Array-like");
-       a.deep(t.call(null, undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity),
-               [undefined, null, false, -Infinity, -0, +0, 1, 2, +Infinity], "Falsy");
-
-       a.h1("Other constructor context");
-       a.deep(t.call(Object, 1, 2, 3), { '0': 1, '1': 2, '2': 3, length: 3 }, "Many arguments");
-
-       testObject = Object(3);
-       testObject[0] = 1;
-       testObject[1] = 2;
-       testObject[2] = 3;
-       testObject.length = 3;
-       a.deep(t.call(Object, 1, 2, 3), testObject, "Test object");
-       a(t.call(Object).length, 0, "No arguments");
-       a.throws(function () { t.call(function () { return Object.freeze({}); }); }, TypeError,
-               "Frozen instance");
-
-       // Ensure no setters are called for the indexes
-       MyType = function () {};
-       defineProperty(MyType.prototype, '0', {
-               set: function (x) { throw new Error('Setter called: ' + x); }
-       });
-       a.deep(t.call(MyType, 'abc'), { '0': 'abc', length: 1 }, "Define, not set");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/to-array.js
deleted file mode 100644 (file)
index 4985b5e..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = [1, 2, 3];
-       a(t(o), o, "Array");
-       a.deep(t('12r3v'), ['1', '2', 'r', '3', 'v'], "String");
-       a.deep(t((function () { return arguments; }(3, o, 'raz'))),
-               [3, o, 'raz'], "Arguments");
-       a.deep(t((function () { return arguments; }(3))), [3],
-               "Arguments with one numeric value");
-
-       a.deep(t({ 0: 'raz', 1: 'dwa', length: 2 }), ['raz', 'dwa'], "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/valid-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/array/valid-array.js
deleted file mode 100644 (file)
index 3732192..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Null");
-       a.throws(function () { t(0); }, TypeError, "Number");
-       a.throws(function () { t(true); }, TypeError, "Boolean");
-       a.throws(function () { t('raz'); }, TypeError, "String");
-       a.throws(function () { t(function () {}); }, TypeError, "Function");
-       a.throws(function () { t({}); }, TypeError, "Object");
-       a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
-       a(t(x = []), x, "Array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/boolean/is-boolean.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/boolean/is-boolean.js
deleted file mode 100644 (file)
index 4e6b3cb..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(false), true, "Boolean");
-       a(t(new Boolean(false)), true, "Boolean object");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-       a(t(/a/), false, "Regular expression");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/copy.js
deleted file mode 100644 (file)
index 767c5e1..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = new Date(), o2;
-
-       o2 = t.call(o);
-       a.not(o, o2, "Different objects");
-       a.ok(o2 instanceof Date, "Instance of Date");
-       a(o.getTime(), o2.getTime(), "Same time");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/days-in-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/days-in-month.js
deleted file mode 100644 (file)
index 9ddba55..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2001, 0, 1)), 31, "January");
-       a(t.call(new Date(2001, 1, 1)), 28, "February");
-       a(t.call(new Date(2000, 1, 1)), 29, "February (leap)");
-       a(t.call(new Date(2001, 2, 1)), 31, "March");
-       a(t.call(new Date(2001, 3, 1)), 30, "April");
-       a(t.call(new Date(2001, 4, 1)), 31, "May");
-       a(t.call(new Date(2001, 5, 1)), 30, "June");
-       a(t.call(new Date(2001, 6, 1)), 31, "July");
-       a(t.call(new Date(2001, 7, 1)), 31, "August");
-       a(t.call(new Date(2001, 8, 1)), 30, "September");
-       a(t.call(new Date(2001, 9, 1)), 31, "October");
-       a(t.call(new Date(2001, 10, 1)), 30, "November");
-       a(t.call(new Date(2001, 11, 1)), 31, "December");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-day.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-day.js
deleted file mode 100644 (file)
index d4f4a90..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 0, 1, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-month.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-month.js
deleted file mode 100644 (file)
index b4a81be..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 0, 15, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-year.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/floor-year.js
deleted file mode 100644 (file)
index aae117e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(new Date(2000, 5, 13, 13, 32, 34, 234)).valueOf(),
-               new Date(2000, 0, 1).valueOf());
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/format.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/#/format.js
deleted file mode 100644 (file)
index e68e4bf..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var dt = new Date(2011, 2, 3, 3, 5, 5, 32);
-       a(t.call(dt, ' %Y.%y.%m.%d.%H.%M.%S.%L '), ' 2011.11.03.03.03.05.05.032 ');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/is-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/is-date.js
deleted file mode 100644 (file)
index 109093d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(new Date()), true, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/valid-date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/date/valid-date.js
deleted file mode 100644 (file)
index 98787e4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var d = new Date();
-       a(t(d), d, "Date");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t({ valueOf: function () { return 20; } });
-       }, "Number object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/#/throw.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/#/throw.js
deleted file mode 100644 (file)
index 1213cfc..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var e = new Error();
-       try {
-               t.call(e);
-       } catch (e2) {
-               a(e2, e);
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/custom.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/custom.js
deleted file mode 100644 (file)
index d4ff500..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var T = t, err = new T('My Error', 'MY_ERROR', { errno: 123 });
-       a(err instanceof Error, true, "Instance of error");
-       a(err.constructor, Error, "Constructor");
-       a(err.name, 'Error', "Name");
-       a(String(err), 'Error: My Error', "String representation");
-       a(err.code, 'MY_ERROR', "Code");
-       a(err.errno, 123, "Errno");
-       a(typeof err.stack, 'string', "Stack trace");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/is-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/is-error.js
deleted file mode 100644 (file)
index f8b5e20..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), false, "Undefined");
-       a(t(1), false, "Primitive");
-       a(t({}), false, "Objectt");
-       a(t({ toString: function () { return '[object Error]'; } }), false,
-               "Fake error");
-       a(t(new Error()), true, "Error");
-       a(t(new EvalError()), true, "EvalError");
-       a(t(new RangeError()), true, "RangeError");
-       a(t(new ReferenceError()), true, "ReferenceError");
-       a(t(new SyntaxError()), true, "SyntaxError");
-       a(t(new TypeError()), true, "TypeError");
-       a(t(new URIError()), true, "URIError");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/valid-error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/error/valid-error.js
deleted file mode 100644 (file)
index e04cdb3..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var e = new Error();
-       a(t(e), e, "Error");
-       a.throws(function () {
-               t({});
-       }, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/compose.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/compose.js
deleted file mode 100644 (file)
index 83de5e8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var f = function (a, b) { return ['a', arguments.length, a, b]; }
-  , g = function (a) { return ['b', arguments.length].concat(a); }
-  , h = function (a) { return ['c', arguments.length].concat(a); };
-
-module.exports = function (t, a) {
-       a.deep(t.call(h, g, f)(1, 2), ['c', 1, 'b', 1, 'a', 2, 1, 2]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/copy.js
deleted file mode 100644 (file)
index 7a22e2f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var foo = 'raz', bar = 'dwa'
-         , fn = function marko(a, b) { return this + a + b + foo + bar; }
-         , result, o = {};
-
-       fn.prototype = o;
-
-       fn.foo = 'raz';
-
-       result = t.call(fn);
-
-       a(result.length, fn.length, "Length");
-       a(result.name, fn.name, "Length");
-       a(result.call('marko', 'el', 'fe'), 'markoelferazdwa', "Body");
-       a(result.prototype, fn.prototype, "Prototype");
-       a(result.foo, fn.foo, "Custom property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/curry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/curry.js
deleted file mode 100644 (file)
index 18fb038..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array')
-
-  , f = function () { return toArray(arguments); };
-
-module.exports = function (t, a) {
-       var x, y = {}, z;
-       a.deep(t.call(f, 0, 1, 2)(3), [], "0 arguments");
-       x = t.call(f, 5, {});
-       a(x.length, 5, "Length #1");
-       z = x(1, 2);
-       a(z.length, 3, "Length #2");
-       z = z(3, 4);
-       a(z.length, 1, "Length #1");
-       a.deep(z(5, 6), [1, 2, 3, 4, 5], "Many arguments");
-       a.deep(x(8, 3)(y, 45)('raz', 6), [8, 3, y, 45, 'raz'], "Many arguments #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/lock.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/lock.js
deleted file mode 100644 (file)
index 44a12d7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(function () {
-               return arguments.length;
-       })(1, 2, 3), 0);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/not.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/not.js
deleted file mode 100644 (file)
index c0f5e9d..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var identity = require('../../../function/identity')
-  , noop     = require('../../../function/noop');
-
-module.exports = function (t, a) {
-       a(t.call(identity)(''), true, "Falsy");
-       a(t.call(noop)(), true, "Undefined");
-       a(t.call(identity)({}), false, "Any object");
-       a(t.call(identity)(true), false, "True");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/partial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/partial.js
deleted file mode 100644 (file)
index bd00ce7..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var toArray = require('../../../array/to-array')
-
-  , f = function () { return toArray(arguments); };
-
-module.exports = function (t, a) {
-       a.deep(t.call(f, 1)(2, 3), [1, 2, 3]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/spread.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/spread.js
deleted file mode 100644 (file)
index b82dfec..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var f = function (a, b) { return this[a] + this[b]; }
-  , o = { a: 3, b: 4 };
-
-module.exports = function (t, a) {
-       a(t.call(f).call(o, ['a', 'b']), 7);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/to-string-tokens.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/#/to-string-tokens.js
deleted file mode 100644 (file)
index 4c54d30..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t.call(function (a, b) { return this[a] + this[b]; }),
-               { args: 'a, b', body: ' return this[a] + this[b]; ' });
-       a.deep(t.call(function () {}),
-               { args: '', body: '' });
-       a.deep(t.call(function (raz) {}),
-               { args: 'raz', body: '' });
-       a.deep(t.call(function () { Object(); }),
-               { args: '', body: ' Object(); ' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/_define-length.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/_define-length.js
deleted file mode 100644 (file)
index 8f037e8..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var foo = 'raz', bar = 'dwa'
-         , fn = function (a, b) { return this + a + b + foo + bar; }
-         , result;
-
-       result = t(fn, 3);
-       a(result.call('marko', 'el', 'fe'), 'markoelferazdwa', "Content");
-       a(result.length, 3, "Length");
-       a(result.prototype, fn.prototype, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/constant.js
deleted file mode 100644 (file)
index fda52aa..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = {};
-
-module.exports = function (t, a) {
-       a(t(o)(), o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/identity.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/identity.js
deleted file mode 100644 (file)
index 8013e2e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = {};
-
-module.exports = function (t, a) {
-       a(t(o), o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/invoke.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/invoke.js
deleted file mode 100644 (file)
index fcce4aa..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-var constant = require('../../function/constant')
-
-  , o = { b: constant('c') };
-
-module.exports = function (t, a) {
-       a(t('b')(o), 'c');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-arguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-arguments.js
deleted file mode 100644 (file)
index f8de881..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var args, dummy;
-       args = (function () { return arguments; }());
-       dummy = { '0': 1, '1': 2 };
-       Object.defineProperty(dummy, 'length', { value: 2 });
-       a(t(args), true, "Arguments");
-       a(t(dummy), false, "Dummy");
-       a(t([]), false, "Array");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/is-function.js
deleted file mode 100644 (file)
index 83acc42..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var o = { call: Function.prototype.call, apply: Function.prototype.apply };
-
-module.exports = function (t, a) {
-       a(t(function () {}), true, "Function is function");
-       a(t(o), false, "Plain object is not function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/noop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/noop.js
deleted file mode 100644 (file)
index 4305c6f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t(1, 2, 3), 'undefined');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/pluck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/pluck.js
deleted file mode 100644 (file)
index 5bf9583..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-var o = { foo: 'bar' };
-
-module.exports = function (t, a) {
-       a(t('foo')(o), o.foo);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/valid-function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/function/valid-function.js
deleted file mode 100644 (file)
index 59b1623..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var f = function () {};
-       a(t(f), f, "Function");
-       f = new Function();
-       a(t(f), f, "Function");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t(/re/);
-       }, "RegExp");
-       a.throws(function () {
-               t({ call: function () { return 20; } });
-       }, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/global.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/global.js
deleted file mode 100644 (file)
index 1f452ae..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.ok(t && typeof t === 'object');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_pack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_pack-ieee754.js
deleted file mode 100644 (file)
index 9041431..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t(1.337, 8, 23), [63, 171, 34, 209]);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_unpack-ieee754.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/_unpack-ieee754.js
deleted file mode 100644 (file)
index ca30b82..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t([63, 171, 34, 209], 8, 23), 1.3370000123977661);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/implement.js
deleted file mode 100644 (file)
index 01fb6d0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/acosh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/acosh/shim.js
deleted file mode 100644 (file)
index 3d710c7..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-1), NaN, "Negative");
-       a(t(0), NaN, "Zero");
-       a(t(0.5), NaN, "Below 1");
-       a(t(1), 0, "1");
-       a(t(2), 1.3169578969248166, "Other");
-       a(t(Infinity), Infinity, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/implement.js
deleted file mode 100644 (file)
index d1fcece..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/asinh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/asinh/shim.js
deleted file mode 100644 (file)
index d9fbe49..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(-2), -1.4436354751788103, "Negative");
-       a(t(2), 1.4436354751788103, "Positive");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/implement.js
deleted file mode 100644 (file)
index cba8fad..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/atanh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/atanh/shim.js
deleted file mode 100644 (file)
index a857b49..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-2), NaN, "Less than -1");
-       a(t(2), NaN, "Greater than 1");
-       a(t(-1), -Infinity, "-1");
-       a(t(1), Infinity, "1");
-       a(t(0), 0, "Zero");
-       a(t(0.5), 0.5493061443340549, "Ohter");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/implement.js
deleted file mode 100644 (file)
index 374d4b3..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/cbrt/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cbrt/shim.js
deleted file mode 100644 (file)
index 43ab68b..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(-1), -1, "-1");
-       a(t(1), 1, "1");
-       a(t(2), 1.2599210498948732, "Ohter");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/implement.js
deleted file mode 100644 (file)
index 44f8815..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/clz32/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/clz32/shim.js
deleted file mode 100644 (file)
index a769b39..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(1), 31, "1");
-       a(t(1000), 22, "1000");
-       a(t(), 32, "No arguments");
-       a(t(Infinity), 32, "Infinity");
-       a(t(-Infinity), 32, "-Infinity");
-       a(t("foo"), 32, "String");
-       a(t(true), 31, "Boolean");
-       a(t(3.5), 30, "Float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/implement.js
deleted file mode 100644 (file)
index f3c712b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/cosh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/cosh/shim.js
deleted file mode 100644 (file)
index 618ba26..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 1, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), Infinity, "-Infinity");
-       a(t(1), 1.5430806348152437, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/implement.js
deleted file mode 100644 (file)
index c212967..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/expm1/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/expm1/shim.js
deleted file mode 100644 (file)
index 15f0e79..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -1, "-Infinity");
-       a(t(1).toFixed(15), '1.718281828459045', "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/implement.js
deleted file mode 100644 (file)
index c909af7..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/fround/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/fround/shim.js
deleted file mode 100644 (file)
index 4ef6d4e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(1.337), 1.3370000123977661, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/implement.js
deleted file mode 100644 (file)
index 9946646..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/hypot/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/hypot/shim.js
deleted file mode 100644 (file)
index 91d950a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), 0, "No arguments");
-       a(t(0, -0, 0), 0, "Zeros");
-       a(t(4, NaN, Infinity), Infinity, "Infinity");
-       a(t(4, NaN, -Infinity), Infinity, "Infinity");
-       a(t(4, NaN, 34), NaN, "NaN");
-       a(t(3, 4), 5, "#1");
-       a(t(3, 4, 5), 7.0710678118654755, "#2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/implement.js
deleted file mode 100644 (file)
index 7b2a2a6..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/imul/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/imul/shim.js
deleted file mode 100644 (file)
index a2ca7fe..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(), 0, "No arguments");
-       a(t(0, 0), 0, "Zeros");
-       a(t(2, 4), 8, "#1");
-       a(t(-1, 8), -8, "#2");
-       a(t(0xfffffffe, 5), -10, "#3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/implement.js
deleted file mode 100644 (file)
index 4b3b4a4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log10/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log10/shim.js
deleted file mode 100644 (file)
index 5fa0d5b..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-0.5), NaN, "Less than 0");
-       a(t(0), -Infinity, "0");
-       a(t(1), 0, "1");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(2), 0.3010299956639812, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/implement.js
deleted file mode 100644 (file)
index 5d269bd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log1p/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log1p/shim.js
deleted file mode 100644 (file)
index d495ce0..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-1.5), NaN, "Less than -1");
-       a(t(-1), -Infinity, "-1");
-       a(t(0), 0, "0");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(1), 0.6931471805599453, "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/implement.js
deleted file mode 100644 (file)
index 92b501a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/log2/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/log2/shim.js
deleted file mode 100644 (file)
index faa9c32..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(-0.5), NaN, "Less than 0");
-       a(t(0), -Infinity, "0");
-       a(t(1), 0, "1");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(3).toFixed(15), '1.584962500721156', "Other");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/implement.js
deleted file mode 100644 (file)
index 5875c42..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/sign/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sign/shim.js
deleted file mode 100644 (file)
index b6b89c1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-var is = require('../../../object/is');
-
-module.exports = function (t, a) {
-       a(is(t(0), +0), true, "+0");
-       a(is(t(-0), -0), true, "-0");
-       a(t({}), NaN, true, "NaN");
-       a(t(-234234234), -1, "Negative");
-       a(t(234234234), 1, "Positive");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/implement.js
deleted file mode 100644 (file)
index e52089e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/sinh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/sinh/shim.js
deleted file mode 100644 (file)
index 4e9bf61..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(t(1), 1.1752011936438014, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/implement.js
deleted file mode 100644 (file)
index a96bf19..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/tanh/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/tanh/shim.js
deleted file mode 100644 (file)
index 36bf724..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), 1, "Infinity");
-       a(t(-Infinity), -1, "-Infinity");
-       a(t(1), 0.7615941559557649, "1");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/implement.js
deleted file mode 100644 (file)
index 1830e61..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../math/trunc/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/math/trunc/shim.js
deleted file mode 100644 (file)
index 9e5eed7..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-
-var is = require('../../../object/is');
-
-module.exports = function (t, a) {
-       a(t({}), NaN, "NaN");
-       a(t(0), 0, "Zero");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(-Infinity), -Infinity, "-Infinity");
-       a(is(t(0.234), 0), true, "0");
-       a(is(t(-0.234), -0), true, "-0");
-       a(t(13.7), 13, "Positive #1");
-       a(t(12.3), 12, "Positive #2");
-       a(t(-12.3), -12, "Negative #1");
-       a(t(-14.7), -14, "Negative #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/#/pad.js
deleted file mode 100644 (file)
index e020823..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(78, 4), '0078');
-       a(t.call(65.12323, 4, 3), '0065.123', "Precision");
-       a(t.call(65, 4, 3), '0065.000', "Precision integer");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/implement.js
deleted file mode 100644 (file)
index 574da75..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/epsilon/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/epsilon/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/implement.js
deleted file mode 100644 (file)
index b35345f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-finite/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-finite/shim.js
deleted file mode 100644 (file)
index 5205d1c..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/implement.js
deleted file mode 100644 (file)
index 127149c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-integer/shim.js
deleted file mode 100644 (file)
index 3f3985c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t(2.34), false, "Float");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/implement.js
deleted file mode 100644 (file)
index 2f01d6d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-nan/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-nan/shim.js
deleted file mode 100644 (file)
index 425723e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), false, "Number");
-       a(t({}), false, "Not numeric");
-       a(t(NaN), true, "NaN");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-number.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-number.js
deleted file mode 100644 (file)
index 2751334..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(0), true, "Zero");
-       a(t(NaN), true, "NaN");
-       a(t(Infinity), true, "Infinity");
-       a(t(12), true, "Number");
-       a(t(false), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new Number(2)), true, "Number object");
-       a(t('asdfaf'), false, "String");
-       a(t(''), false, "Empty String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/implement.js
deleted file mode 100644 (file)
index 33667e2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/is-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/is-safe-integer/shim.js
deleted file mode 100644 (file)
index 77e0667..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(2), true, "Number");
-       a(t(2.34), false, "Float");
-       a(t(Math.pow(2, 53)), false, "Too large");
-       a(t(Math.pow(2, 53) - 1), true, "Maximum");
-       a(t('23'), false, "Not numeric");
-       a(t(NaN), false, "NaN");
-       a(t(Infinity), false, "Infinity");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/implement.js
deleted file mode 100644 (file)
index bef00ca..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/max-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/implement.js
deleted file mode 100644 (file)
index fa44024..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../number/min-safe-integer/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/index.js
deleted file mode 100644 (file)
index c892fd4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(typeof t, 'number');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-integer.js
deleted file mode 100644 (file)
index ff326ba..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "NaN");
-       a(t(20), 20, "Positive integer");
-       a(t('-20'), -20, "String negative integer");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(15.343), 15, "Float");
-       a(t(-15.343), -15, "Negative float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-pos-integer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-pos-integer.js
deleted file mode 100644 (file)
index 2f3b4e6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "NaN");
-       a(t(20), 20, "Positive integer");
-       a(t(-20), 0, "Negative integer");
-       a(t(Infinity), Infinity, "Infinity");
-       a(t(15.343), 15, "Float");
-       a(t(-15.343), 0, "Negative float");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-uint32.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/number/to-uint32.js
deleted file mode 100644 (file)
index 00d05bd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "Not numeric");
-       a(t(-4), 4294967292, "Negative");
-       a(t(133432), 133432, "Positive");
-       a(t(8589934592), 0, "Greater than maximum");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/_iterate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/_iterate.js
deleted file mode 100644 (file)
index 179afed..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { raz: 1, dwa: 2, trzy: 3 }
-         , o2 = {}, o3 = {}, arr, i = -1;
-
-       t = t('forEach');
-       t(o, function (value, name, self, index) {
-               o2[name] = value;
-               a(index, ++i, "Index");
-               a(self, o, "Self");
-               a(this, o3, "Scope");
-       }, o3);
-       a.deep(o2, o);
-
-       arr = [];
-       o2 = {};
-       i = -1;
-       t(o, function (value, name, self, index) {
-               arr.push(value);
-               o2[name] = value;
-               a(index, ++i, "Index");
-               a(self, o, "Self");
-               a(this, o3, "Scope");
-       }, o3, function (a, b) {
-               return o[b] - o[a];
-       });
-       a.deep(o2, o, "Sort by Values: Content");
-       a.deep(arr, [3, 2, 1], "Sort by Values: Order");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/implement.js
deleted file mode 100644 (file)
index 4006559..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../object/assign/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/assign/shim.js
deleted file mode 100644 (file)
index 9afe5f6..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o1 = { a: 1, b: 2 }
-         , o2 = { b: 3, c: 4 };
-
-       a(t(o1, o2), o1, "Returns self");
-       a.deep(o1, { a: 1, b: 3, c: 4 }, "Single: content");
-
-       a.deep(t({}, o1, o2), { a: 1, b: 3, c: 4 }, "Multi argument");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/clear.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/clear.js
deleted file mode 100644 (file)
index bfc08cc..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-var isEmpty = require('../../object/is-empty');
-
-module.exports = function (t, a) {
-       var x = {};
-       a(t(x), x, "Empty: Returns same object");
-       a(isEmpty(x), true, "Empty: Not changed");
-       x.foo = 'raz';
-       x.bar = 'dwa';
-       a(t(x), x, "Same object");
-       a(isEmpty(x), true, "Emptied");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compact.js
deleted file mode 100644 (file)
index 9c9064c..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {}, z;
-       z = t(x);
-       a.not(z, x, "Returns different object");
-       a.deep(z, {}, "Empty on empty");
-
-       x = { foo: 'bar', a: 0, b: false, c: '', d: '0', e: null, bar: y,
-               elo: undefined };
-       z = t(x);
-       a.deep(z, { foo: 'bar', a: 0, b: false, c: '', d: '0', bar: y },
-               "Cleared null values");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/compare.js
deleted file mode 100644 (file)
index cb94241..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var d = new Date();
-
-       a.ok(t(12, 3) > 0, "Numbers");
-       a.ok(t(2, 13) < 0, "Numbers #2");
-       a.ok(t("aaa", "aa") > 0, "Strings");
-       a.ok(t("aa", "ab") < 0, "Strings #2");
-       a(t("aa", "aa"), 0, "Strings same");
-       a(t(d, new Date(d.getTime())), 0, "Same date");
-       a.ok(t(d, new Date(d.getTime() + 1)) < 0, "Different date");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy-deep.js
deleted file mode 100644 (file)
index a4023bc..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var stringify = JSON.stringify;
-
-module.exports = function (t, a) {
-       var o = { 1: 'raz', 2: 'dwa', 3: 'trzy' }
-         , no = t(o);
-
-       a.not(no, o, "Return different object");
-       a(stringify(no), stringify(o), "Match properties and values");
-
-       o = { foo: 'bar', raz: { dwa: 'dwa',
-               trzy: { cztery: 'pięć', 'sześć': 'siedem' }, osiem: {},
-               'dziewięć': function () { } }, 'dziesięć': 10 };
-       o.raz.rec = o;
-
-       no = t(o);
-       a.not(o.raz, no.raz, "Deep");
-       a.not(o.raz.trzy, no.raz.trzy, "Deep #2");
-       a(stringify(o.raz.trzy), stringify(no.raz.trzy), "Deep content");
-       a(no.raz.rec, no, "Recursive");
-       a.not(o.raz.osiem, no.raz.osiem, "Empty object");
-       a(o.raz['dziewięć'], no.raz['dziewięć'], "Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/copy.js
deleted file mode 100644 (file)
index 2f222ef..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var stringify = JSON.stringify;
-
-module.exports = function (t, a) {
-       var o = { 1: 'raz', 2: 'dwa', 3: 'trzy' }
-         , no = t(o);
-
-       a.not(no, o, "Return different object");
-       a(stringify(no), stringify(o), "Match properties and values");
-
-       o = { foo: 'bar', raz: { dwa: 'dwa',
-               trzy: { cztery: 'pięć', 'sześć': 'siedem' }, osiem: {},
-               'dziewięć': function () { } }, 'dziesięć': 10 };
-       o.raz.rec = o;
-
-       no = t(o);
-       a(o.raz, no.raz, "Shallow");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/count.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/count.js
deleted file mode 100644 (file)
index 494f4f1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), 0, "Empty");
-       a(t({ raz: 1, dwa: null, trzy: undefined, cztery: 0 }), 4,
-               "Some properties");
-       a(t(Object.defineProperties({}, {
-               raz: { value: 'raz' },
-               dwa: { value: 'dwa', enumerable: true }
-       })), 1, "Some properties hidden");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/create.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/create.js
deleted file mode 100644 (file)
index 8b7be21..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-var setPrototypeOf = require('../../object/set-prototype-of')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, obj;
-
-       a(getPrototypeOf(t(x)), x, "Normal object");
-       a(getPrototypeOf(t(null)),
-               (setPrototypeOf && setPrototypeOf.nullPolyfill) || null, "Null");
-
-       a.h1("Properties");
-       a.h2("Normal object");
-       a(getPrototypeOf(obj = t(x, { foo: { value: 'bar' } })), x, "Prototype");
-       a(obj.foo, 'bar', "Property");
-       a.h2("Null");
-       a(getPrototypeOf(obj = t(null, { foo: { value: 'bar2' } })),
-               (setPrototypeOf && setPrototypeOf.nullPolyfill) || null, "Prototype");
-       a(obj.foo, 'bar2', "Property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/eq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/eq.js
deleted file mode 100644 (file)
index 02b3f00..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = {};
-       a(t(o, {}), false, "Different objects");
-       a(t(o, o), true, "Same objects");
-       a(t('1', '1'), true, "Same primitive");
-       a(t('1', 1), false, "Different primitive types");
-       a(t(NaN, NaN), true, "NaN");
-       a(t(0, 0), true, "0,0");
-       a(t(0, -0), true, "0,-0");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/every.js
deleted file mode 100644 (file)
index 07d5bbb..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-var o = { 1: 1, 2: 2, 3: 3 };
-
-module.exports = function (t, a) {
-       var o2 = {};
-       t(o, function (value, name) {
-               o2[name] = value;
-               return true;
-       });
-       a(JSON.stringify(o2), JSON.stringify(o), "Iterates");
-
-       a(t(o, function () {
-               return true;
-       }), true, "Succeeds");
-
-       a(t(o, function () {
-               return false;
-       }), false, "Fails");
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/filter.js
deleted file mode 100644 (file)
index 7307da8..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ 1: 1, 2: 2, 3: 3, 4: 4 },
-               function (value) { return Boolean(value % 2); }), { 1: 1, 3: 3 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/first-key.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/first-key.js
deleted file mode 100644 (file)
index 8169cd2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = Object.create(null);
-       a(t(x), null, "Normal: Empty");
-       a(t(y), null, "Null extension: Empty");
-       x.foo = 'raz';
-       x.bar = 343;
-       a(['foo', 'bar'].indexOf(t(x)) !== -1, true, "Normal");
-       y.elo = 'foo';
-       y.mar = 'wew';
-       a(['elo', 'mar'].indexOf(t(y)) !== -1, true, "Null extension");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/flatten.js
deleted file mode 100644 (file)
index ca342ea..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ a: { aa: 1, ab: 2 }, b: { ba: 3, bb: 4 } }),
-               { aa: 1, ab: 2, ba: 3, bb: 4 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/for-each.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/for-each.js
deleted file mode 100644 (file)
index 8690d1e..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { raz: 1, dwa: 2, trzy: 3 }
-         , o2 = {};
-       a(t(o, function (value, name) {
-               o2[name] = value;
-       }), undefined, "Return");
-       a.deep(o2, o);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/get-property-names.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/get-property-names.js
deleted file mode 100644 (file)
index b91c3dd..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { first: 1, second: 4 }, r1, r2;
-       o = Object.create(o, {
-               third: { value: null }
-       });
-       o.first = 2;
-       o = Object.create(o);
-       o.fourth = 3;
-
-       r1 = t(o);
-       r1.sort();
-       r2 = ['first', 'second', 'third', 'fourth']
-               .concat(Object.getOwnPropertyNames(Object.prototype));
-       r2.sort();
-       a.deep(r1, r2);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-array-like.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-array-like.js
deleted file mode 100644 (file)
index 6295973..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t([]), true, "Array");
-       a(t(""), true, "String");
-       a(t((function () { return arguments; }())), true, "Arguments");
-       a(t({ length: 0 }), true, "List object");
-       a(t(function () {}), false, "Function");
-       a(t({}), false, "Plain object");
-       a(t(/raz/), false, "Regexp");
-       a(t(), false, "No argument");
-       a(t(null), false, "Null");
-       a(t(undefined), false, "Undefined");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-callable.js
deleted file mode 100644 (file)
index 625e221..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(function () {}), true, "Function");
-       a(t({}), false, "Object");
-       a(t(), false, "Undefined");
-       a(t(null), false, "Null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy-deep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy-deep.js
deleted file mode 100644 (file)
index 4f14cbb..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x, y;
-
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 3 }), true, "Same");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Different property value");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2 }), false,
-               "Property only in source");
-       a(t({ 1: 1, 2: 2 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Property only in target");
-
-       a(t("raz", "dwa"), false, "String: diff");
-       a(t("raz", "raz"), true, "String: same");
-       a(t("32", 32), false, "String & Number");
-
-       a(t([1, 'raz', true], [1, 'raz', true]), true, "Array: same");
-       a(t([1, 'raz', undefined], [1, 'raz']), false, "Array: diff");
-       a(t(['foo'], ['one']), false, "Array: One value comparision");
-
-       x = { foo: { bar: { mar: {} } } };
-       y = { foo: { bar: { mar: {} } } };
-       a(t(x, y), true, "Deep");
-
-       a(t({ foo: { bar: { mar: 'foo' } } }, { foo: { bar: { mar: {} } } }),
-               false, "Deep: false");
-
-       x = { foo: { bar: { mar: {} } } };
-       x.rec = { foo: x };
-
-       y = { foo: { bar: { mar: {} } } };
-       y.rec = { foo: x };
-
-       a(t(x, y), true, "Object: Infinite Recursion: Same #1");
-
-       x.rec.foo = y;
-       a(t(x, y), true, "Object: Infinite Recursion: Same #2");
-
-       x.rec.foo = x;
-       y.rec.foo = y;
-       a(t(x, y), true, "Object: Infinite Recursion: Same #3");
-
-       y.foo.bar.mar = 'raz';
-       a(t(x, y), false, "Object: Infinite Recursion: Diff");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-copy.js
deleted file mode 100644 (file)
index 394e2ed..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 3 }), true, "Same");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Different property value");
-       a(t({ 1: 1, 2: 2, 3: 3 }, { 1: 1, 2: 2 }), false,
-               "Property only in source");
-       a(t({ 1: 1, 2: 2 }, { 1: 1, 2: 2, 3: 4 }), false,
-               "Property only in target");
-
-       a(t("raz", "dwa"), false, "String: diff");
-       a(t("raz", "raz"), true, "String: same");
-       a(t("32", 32), false, "String & Number");
-
-       a(t([1, 'raz', true], [1, 'raz', true]), true, "Array: same");
-       a(t([1, 'raz', undefined], [1, 'raz']), false, "Array: diff");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-empty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-empty.js
deleted file mode 100644 (file)
index b560c2c..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), true, "Empty");
-       a(t({ 1: 1 }), false, "Not empty");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-object.js
deleted file mode 100644 (file)
index 72c8aa6..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(null), false, "Null");
-       a(t(new Date()), true, "Date");
-       a(t(new String('raz')), true, "String object");
-       a(t({}), true, "Plain object");
-       a(t(/a/), true, "Regular expression");
-       a(t(function () {}), true, "Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-plain-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is-plain-object.js
deleted file mode 100644 (file)
index e988829..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t({}), true, "Empty {} is plain object");
-       a(t({ a: true }), true, "{} with property is plain object");
-       a(t({ prototype: 1, constructor: 2, __proto__:  3 }), true,
-               "{} with any property keys is plain object");
-       a(t(null), false, "Null is not plain object");
-       a(t('string'), false, "Primitive is not plain object");
-       a(t(function () {}), false, "Function is not plain object");
-       a(t(Object.create({})), false,
-               "Object whose prototype is not Object.prototype is not plain object");
-       a(t(Object.create(Object.prototype)), true,
-               "Object whose prototype is Object.prototype is plain object");
-       a(t(Object.create(null)), true,
-               "Object whose prototype is null is plain object");
-       a(t(Object.prototype), false, "Object.prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/is.js
deleted file mode 100644 (file)
index 4f8948c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = {};
-       a(t(o, {}), false, "Different objects");
-       a(t(o, o), true, "Same objects");
-       a(t('1', '1'), true, "Same primitive");
-       a(t('1', 1), false, "Different primitive types");
-       a(t(NaN, NaN), true, "NaN");
-       a(t(0, 0), true, "0,0");
-       a(t(0, -0), false, "0,-0");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/key-of.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/key-of.js
deleted file mode 100644 (file)
index a9225a0..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x = {}, y = {}
-         , o = { foo: 'bar', raz: x, trzy: 'cztery', five: '6' };
-
-       a(t(o, 'bar'), 'foo', "First property");
-       a(t(o, 6), null, "Primitive that's not there");
-       a(t(o, x), 'raz', "Object");
-       a(t(o, y), null, "Object that's not there");
-       a(t(o, '6'), 'five', "Last property");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/implement.js
deleted file mode 100644 (file)
index 179e1e5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../object/keys/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/keys/shim.js
deleted file mode 100644 (file)
index ed29eeb..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ foo: 'bar' }), ['foo'], "Object");
-       a.deep(t('raz'), ['0', '1', '2'], "Primitive");
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "Undefined");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map-keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map-keys.js
deleted file mode 100644 (file)
index be84825..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t({ 1: 1, 2: 2, 3: 3 }, function (key, value) {
-               return 'x' + (key + value);
-       }), { x11: 1, x22: 2, x33: 3 });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/map.js
deleted file mode 100644 (file)
index f9cc09c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var obj = { 1: 1, 2: 2, 3: 3 };
-       a.deep(t(obj, function (value, key, context) {
-               a(context, obj, "Context argument");
-               return (value + 1) + key;
-       }), { 1: '21', 2: '32', 3: '43' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin-prototypes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin-prototypes.js
deleted file mode 100644 (file)
index d1c727a..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o, o1, o2, x, y = {}, z = {};
-       o = { inherited: true, visible: 23 };
-       o1 = Object.create(o);
-       o1.visible = z;
-       o1.nonremovable = 'raz';
-       Object.defineProperty(o1, 'hidden', { value: 'hidden' });
-
-       o2 = Object.defineProperties({}, { nonremovable: { value: y } });
-       o2.other = 'other';
-
-       try { t(o2, o1); } catch (ignore) {}
-
-       a(o2.visible, z, "Enumerable");
-       a(o1.hidden, 'hidden', "Not Enumerable");
-       a(o2.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(o2.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(o2.inherited, true, "Extend deep");
-
-       a(o2.nonremovable, y, "Do not overwrite non configurable");
-       a(o2.other, 'other', "Own kept");
-
-       x = {};
-       t(x, o2);
-       try { t(x, o1); } catch (ignore) {}
-
-       a(x.visible, z, "Enumerable");
-       a(x.hidden, 'hidden', "Not Enumerable");
-       a(x.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(x.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(x.inherited, true, "Extend deep");
-
-       a(x.nonremovable, y, "Ignored non configurable");
-       a(x.other, 'other', "Other");
-
-       x.visible = 3;
-       a(x.visible, 3, "Writable is writable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               x.hidden = 3;
-       }, "Not writable is not writable");
-
-       x = {};
-       t(x, o1);
-       delete x.visible;
-       a.ok(!x.hasOwnProperty('visible'), "Configurable is configurable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               delete x.hidden;
-       }, "Not configurable is not configurable");
-
-       x = Object.defineProperty({}, 'foo',
-               { configurable: false, writable: true, enumerable: false, value: 'bar' });
-
-       try { t(x, { foo: 'lorem' }); } catch (ignore) {}
-       a(x.foo, 'bar', "Writable, not enumerable");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/mixin.js
deleted file mode 100644 (file)
index 866005b..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o, o1, o2, x, y = {}, z = {};
-       o = { inherited: true };
-       o1 = Object.create(o);
-       o1.visible = z;
-       o1.nonremovable = 'raz';
-       Object.defineProperty(o1, 'hidden', { value: 'hidden' });
-
-       o2 = Object.defineProperties({}, { nonremovable: { value: y } });
-       o2.other = 'other';
-
-       try { t(o2, o1); } catch (ignore) {}
-
-       a(o2.visible, z, "Enumerable");
-       a(o1.hidden, 'hidden', "Not Enumerable");
-       a(o2.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(o2.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(o2.hasOwnProperty('inherited'), false, "Extend only own");
-       a(o2.inherited, undefined, "Extend ony own: value");
-
-       a(o2.nonremovable, y, "Do not overwrite non configurable");
-       a(o2.other, 'other', "Own kept");
-
-       x = {};
-       t(x, o2);
-       try { t(x, o1); } catch (ignore) {}
-
-       a(x.visible, z, "Enumerable");
-       a(x.hidden, 'hidden', "Not Enumerable");
-       a(x.propertyIsEnumerable('visible'), true, "Enumerable is enumerable");
-       a(x.propertyIsEnumerable('hidden'), false,
-               "Not enumerable is not enumerable");
-
-       a(x.hasOwnProperty('inherited'), false, "Extend only own");
-       a(x.inherited, undefined, "Extend ony own: value");
-
-       a(x.nonremovable, y, "Ignored non configurable");
-       a(x.other, 'other', "Other");
-
-       x.visible = 3;
-       a(x.visible, 3, "Writable is writable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               x.hidden = 3;
-       }, "Not writable is not writable");
-
-       x = {};
-       t(x, o1);
-       delete x.visible;
-       a.ok(!x.hasOwnProperty('visible'), "Configurable is configurable");
-
-       x = {};
-       t(x, o1);
-       a.throws(function () {
-               delete x.hidden;
-       }, "Not configurable is not configurable");
-
-       x = Object.defineProperty({}, 'foo',
-               { configurable: false, writable: true, enumerable: false, value: 'bar' });
-
-       try { t(x, { foo: 'lorem' }); } catch (ignore) {}
-       a(x.foo, 'bar', "Writable, not enumerable");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js
deleted file mode 100644 (file)
index 0d2d4da..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict';
-
-var create = Object.create, defineProperty = Object.defineProperty;
-
-module.exports = function (t, a) {
-       var x = { foo: 'raz', bar: 'dwa' }, y;
-       y = t(x);
-       a.not(y, x, "Returns copy");
-       a.deep(y, x, "Plain");
-
-       x = { raz: 'one', dwa: 'two' };
-       defineProperty(x, 'get', {
-               configurable: true,
-               enumerable: true,
-               get: function () { return this.dwa; }
-       });
-       x = create(x);
-       x.trzy = 'three';
-       x.cztery = 'four';
-       x = create(x);
-       x.dwa = 'two!';
-       x.trzy = 'three!';
-       x.piec = 'five';
-       x.szesc = 'six';
-
-       a.deep(t(x), { raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
-               piec: 'five', szesc: 'six', get: 'two!' }, "Deep object");
-
-       a.deep(t({ marko: 'raz', raz: 'foo' }, x, { szesc: 'elo', siedem: 'bibg' }),
-               { marko: 'raz', raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
-                       piec: 'five', szesc: 'elo', siedem: 'bibg', get: 'two!' }, "Multiple options");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/primitive-set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/primitive-set.js
deleted file mode 100644 (file)
index 839857e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-var getPropertyNames = require('../../object/get-property-names')
-  , isPlainObject    = require('../../object/is-plain-object');
-
-module.exports = function (t, a) {
-       var x = t();
-       a(isPlainObject(x), true, "Plain object");
-       a.deep(getPropertyNames(x), [], "No properties");
-       x.foo = 'bar';
-       a.deep(getPropertyNames(x), ['foo'], "Extensible");
-
-       a.deep(t('raz', 'dwa', 3), { raz: true, dwa: true, 3: true },
-               "Arguments handling");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/safe-traverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/safe-traverse.js
deleted file mode 100644 (file)
index d30cdef..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var obj = { foo: { bar: { lorem: 12  } } };
-       a(t(obj), obj, "No props");
-       a(t(obj, 'foo'), obj.foo, "One");
-       a(t(obj, 'raz'), undefined, "One: Fail");
-       a(t(obj, 'foo', 'bar'), obj.foo.bar, "Two");
-       a(t(obj, 'dsd', 'raz'), undefined, "Two: Fail #1");
-       a(t(obj, 'foo', 'raz'), undefined, "Two: Fail #2");
-       a(t(obj, 'foo', 'bar', 'lorem'), obj.foo.bar.lorem, "Three");
-       a(t(obj, 'dsd', 'raz', 'fef'), undefined, "Three: Fail #1");
-       a(t(obj, 'foo', 'raz', 'asdf'), undefined, "Three: Fail #2");
-       a(t(obj, 'foo', 'bar', 'asd'), undefined, "Three: Fail #3");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/serialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/serialize.js
deleted file mode 100644 (file)
index 43eed6a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var fn = function (raz, dwa) { return raz + dwa; };
-       a(t(), 'undefined', "Undefined");
-       a(t(null), 'null', "Null");
-       a(t(null), 'null', "Null");
-       a(t('raz'), '"raz"', "String");
-       a(t('raz"ddwa\ntrzy'), '"raz\\"ddwa\\ntrzy"', "String with escape");
-       a(t(false), 'false', "Booelean");
-       a(t(fn), String(fn), "Function");
-
-       a(t(/raz-dwa/g), '/raz-dwa/g', "RegExp");
-       a(t(new Date(1234567)), 'new Date(1234567)', "Date");
-       a(t([]), '[]', "Empty array");
-       a(t([undefined, false, null, 'raz"ddwa\ntrzy', fn, /raz/g, new Date(1234567), ['foo']]),
-               '[undefined,false,null,"raz\\"ddwa\\ntrzy",' + String(fn) +
-               ',/raz/g,new Date(1234567),["foo"]]', "Rich Array");
-       a(t({}), '{}', "Empty object");
-       a(t({ raz: undefined, dwa: false, trzy: null, cztery: 'raz"ddwa\ntrzy', piec: fn, szesc: /raz/g,
-               siedem: new Date(1234567), osiem: ['foo', 32], dziewiec: { foo: 'bar', dwa: 343 } }),
-               '{"raz":undefined,"dwa":false,"trzy":null,"cztery":"raz\\"ddwa\\ntrzy","piec":' + String(fn) +
-               ',"szesc":/raz/g,"siedem":new Date(1234567),"osiem":["foo",32],' +
-               '"dziewiec":{"foo":"bar","dwa":343}}', "Rich object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/implement.js
deleted file mode 100644 (file)
index 30b2ac4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var create        = require('../../../object/create')
-  , isImplemented = require('../../../object/set-prototype-of/is-implemented');
-
-module.exports = function (a) { a(isImplemented(create), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/index.js
deleted file mode 100644 (file)
index aec2605..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var create = require('../../../object/create')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-
-       if (t === null) return;
-       a(t(x, y), x, "Return self object");
-       a(getPrototypeOf(x), y, "Object");
-       a.throws(function () { t(x); }, TypeError, "Undefined");
-       a.throws(function () { t('foo'); }, TypeError, "Primitive");
-       a(getPrototypeOf(t(x, null)), t.nullPolyfill || null, "Null");
-       x = create(null);
-       a.h1("Change null prototype");
-       a(t(x, y), x, "Result");
-       a(getPrototypeOf(x), y, "Prototype");
-       a.h1("Set null prototype");
-       a(t(y, null), y, "Result");
-       a(getPrototypeOf(y), t.nullPolyfill || null, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/set-prototype-of/shim.js
deleted file mode 100644 (file)
index aec2605..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var create = require('../../../object/create')
-
-  , getPrototypeOf = Object.getPrototypeOf;
-
-module.exports = function (t, a) {
-       var x = {}, y = {};
-
-       if (t === null) return;
-       a(t(x, y), x, "Return self object");
-       a(getPrototypeOf(x), y, "Object");
-       a.throws(function () { t(x); }, TypeError, "Undefined");
-       a.throws(function () { t('foo'); }, TypeError, "Primitive");
-       a(getPrototypeOf(t(x, null)), t.nullPolyfill || null, "Null");
-       x = create(null);
-       a.h1("Change null prototype");
-       a(t(x, y), x, "Result");
-       a(getPrototypeOf(x), y, "Prototype");
-       a.h1("Set null prototype");
-       a(t(y, null), y, "Result");
-       a(getPrototypeOf(y), t.nullPolyfill || null, "Prototype");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/some.js
deleted file mode 100644 (file)
index 490431e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-var o = { 1: 1, 2: 2, 3: 3 };
-
-module.exports = function (t, a) {
-       var o2 = {}, i = 0;
-       t(o, function (value, name) {
-               o2[name] = value;
-               return false;
-       });
-       a(JSON.stringify(o2), JSON.stringify(o), "Iterates");
-
-       a(t(o, function () {
-               ++i;
-               return true;
-       }), true, "Succeeds");
-       a(i, 1, "Stops iteration after condition is met");
-
-       a(t(o, function () {
-               return false;
-       }), false, "Fails");
-
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/to-array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/to-array.js
deleted file mode 100644 (file)
index 1f4beef..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var o = { 1: 1, 2: 2, 3: 3 }, o1 = {}
-         , o2 = t(o, function (value, name, self) {
-               a(self, o, "Self");
-               a(this, o1, "Scope");
-               return value + Number(name);
-       }, o1);
-       a.deep(o2, [2, 4, 6]);
-
-       t(o).sort().forEach(function (item) {
-               a.deep(item, [item[0], o[item[0]]], "Default");
-       });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/unserialize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/unserialize.js
deleted file mode 100644 (file)
index 405eef1..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var fn = function (raz, dwa) { return raz + dwa; };
-       a(t('undefined'), undefined, "Undefined");
-       a(t('null'), null, "Null");
-       a(t('"raz"'), 'raz', "String");
-       a(t('"raz\\"ddwa\\ntrzy"'), 'raz"ddwa\ntrzy', "String with escape");
-       a(t('false'), false, "Booelean");
-       a(String(t(String(fn))), String(fn), "Function");
-
-       a.deep(t('/raz-dwa/g'), /raz-dwa/g, "RegExp");
-       a.deep(t('new Date(1234567)'), new Date(1234567), "Date");
-       a.deep(t('[]'), [], "Empty array");
-       a.deep(t('[undefined,false,null,"raz\\"ddwa\\ntrzy",/raz/g,new Date(1234567),["foo"]]'),
-               [undefined, false, null, 'raz"ddwa\ntrzy', /raz/g, new Date(1234567), ['foo']], "Rich Array");
-       a.deep(t('{}'), {}, "Empty object");
-       a.deep(t('{"raz":undefined,"dwa":false,"trzy":null,"cztery":"raz\\"ddwa\\ntrzy",' +
-               '"szesc":/raz/g,"siedem":new Date(1234567),"osiem":["foo",32],' +
-               '"dziewiec":{"foo":"bar","dwa":343}}'),
-               { raz: undefined, dwa: false, trzy: null, cztery: 'raz"ddwa\ntrzy', szesc: /raz/g,
-                       siedem: new Date(1234567), osiem: ['foo', 32], dziewiec: { foo: 'bar', dwa: 343 } },
-               "Rich object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-callable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-callable.js
deleted file mode 100644 (file)
index b40540b..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var f = function () {};
-       a(t(f), f, "Function");
-       a.throws(function () {
-               t({});
-       }, "Not Function");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-object.js
deleted file mode 100644 (file)
index eaa8e7b..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var x;
-       a.throws(function () { t(0); }, TypeError, "0");
-       a.throws(function () { t(false); }, TypeError, "false");
-       a.throws(function () { t(''); }, TypeError, "''");
-       a(t(x = {}), x, "Object");
-       a(t(x = function () {}), x, "Function");
-       a(t(x = new String('raz')), x, "String object"); //jslint: ignore
-       a(t(x = new Date()), x, "Date");
-
-       a.throws(function () { t(); }, TypeError, "Undefined");
-       a.throws(function () { t(null); }, TypeError, "null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/valid-value.js
deleted file mode 100644 (file)
index f1eeafa..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-'use strict';
-
-var numIsNaN = require('../../number/is-nan');
-
-module.exports = function (t, a) {
-       var x;
-       a(t(0), 0, "0");
-       a(t(false), false, "false");
-       a(t(''), '', "''");
-       a(numIsNaN(t(NaN)), true, "NaN");
-       a(t(x = {}), x, "{}");
-
-       a.throws(function () {
-               t();
-       }, "Undefined");
-       a.throws(function () {
-               t(null);
-       }, "null");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/index.js
deleted file mode 100644 (file)
index ca2bd65..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var indexTest = require('tad/lib/utils/index-test')
-
-  , path = require('path').resolve(__dirname, '../../../reg-exp/#');
-
-module.exports = function (t, a, d) {
-       indexTest(indexTest.readDir(path).aside(function (data) {
-               delete data.sticky;
-               delete data.unicode;
-       }))(t, a, d);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-sticky.js
deleted file mode 100644 (file)
index e154ac2..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var re;
-       a(t.call(/raz/), false, "Normal");
-       a(t.call(/raz/g), false, "Global");
-       try { re = new RegExp('raz', 'y'); } catch (ignore) {}
-       if (!re) return;
-       a(t.call(re), true, "Sticky");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/is-unicode.js
deleted file mode 100644 (file)
index 2ffb9e8..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var re;
-       a(t.call(/raz/), false, "Normal");
-       a(t.call(/raz/g), false, "Global");
-       try { re = new RegExp('raz', 'u'); } catch (ignore) {}
-       if (!re) return;
-       a(t.call(re), true, "Unicode");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/implement.js
deleted file mode 100644 (file)
index 89825a4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/match/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/match/shim.js
deleted file mode 100644 (file)
index 5249139..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var result = ['foo'];
-       result.index = 0;
-       result.input = 'foobar';
-       a.deep(t.call(/foo/, 'foobar'), result);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/implement.js
deleted file mode 100644 (file)
index c32b23a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/replace/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/replace/shim.js
deleted file mode 100644 (file)
index 2b378fd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(/foo/, 'foobar', 'mar'), 'marbar');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/implement.js
deleted file mode 100644 (file)
index ff1b808..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/search/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/search/shim.js
deleted file mode 100644 (file)
index 596bcdb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(/foo/, 'barfoo'), 3);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/implement.js
deleted file mode 100644 (file)
index 1cee441..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/split/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/split/shim.js
deleted file mode 100644 (file)
index 6a95cd0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a.deep(t.call(/\|/, 'bar|foo'), ['bar', 'foo']);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js
deleted file mode 100644 (file)
index d94e7b9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/sticky/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js
deleted file mode 100644 (file)
index 9b1aa0f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../reg-exp/#/unicode/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/escape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/escape.js
deleted file mode 100644 (file)
index 5b00f67..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var str = "(?:^te|er)s{2}t\\[raz]+$";
-       a(RegExp('^' + t(str) + '$').test(str), true);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/is-reg-exp.js
deleted file mode 100644 (file)
index 785ca28..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t('arar'), false, "String");
-       a(t(12), false, "Number");
-       a(t(true), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), false, "String object");
-       a(t({}), false, "Plain object");
-       a(t(/a/), true, "Regular expression");
-       a(t(new RegExp('a')), true, "Regular expression via constructor");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js
deleted file mode 100644 (file)
index cd12cf1..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var r = /raz/;
-       a(t(r), r, "Direct");
-       r = new RegExp('foo');
-       a(t(r), r, "Constructor");
-       a.throws(function () {
-               t({});
-       }, "Object");
-       a.throws(function () {
-               t(function () {});
-       }, "Function");
-       a.throws(function () {
-               t({ exec: function () { return 20; } });
-       }, "Plain object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/implement.js
deleted file mode 100644 (file)
index 09bf336..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/@@iterator/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/@@iterator/shim.js
deleted file mode 100644 (file)
index 3b0e0b7..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       var it = t.call('r💩z');
-       a.deep(it.next(), { done: false, value: 'r' }, "#1");
-       a.deep(it.next(), { done: false, value: '💩' }, "#2");
-       a.deep(it.next(), { done: false, value: 'z' }, "#3");
-       a.deep(it.next(), { done: true, value: undefined }, "End");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/at.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/at.js
deleted file mode 100644 (file)
index 2447a9f..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-// See tests at https://github.com/mathiasbynens/String.prototype.at
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.length, 1, "Length");
-
-       a.h1("BMP");
-       a(t.call('abc\uD834\uDF06def', -Infinity), '', "-Infinity");
-       a(t.call('abc\uD834\uDF06def', -1), '', "-1");
-       a(t.call('abc\uD834\uDF06def', -0), 'a', "-0");
-       a(t.call('abc\uD834\uDF06def', +0), 'a', "+0");
-       a(t.call('abc\uD834\uDF06def', 1), 'b', "1");
-       a(t.call('abc\uD834\uDF06def', 3), '\uD834\uDF06', "3");
-       a(t.call('abc\uD834\uDF06def', 4), '\uDF06', "4");
-       a(t.call('abc\uD834\uDF06def', 5), 'd', "5");
-       a(t.call('abc\uD834\uDF06def', 42), '', "42");
-       a(t.call('abc\uD834\uDF06def', +Infinity), '', "+Infinity");
-       a(t.call('abc\uD834\uDF06def', null), 'a', "null");
-       a(t.call('abc\uD834\uDF06def', undefined), 'a', "undefined");
-       a(t.call('abc\uD834\uDF06def'), 'a', "No argument");
-       a(t.call('abc\uD834\uDF06def', false), 'a', "false");
-       a(t.call('abc\uD834\uDF06def', NaN), 'a', "NaN");
-       a(t.call('abc\uD834\uDF06def', ''), 'a', "Empty string");
-       a(t.call('abc\uD834\uDF06def', '_'), 'a', "_");
-       a(t.call('abc\uD834\uDF06def', '1'), 'b', "'1'");
-       a(t.call('abc\uD834\uDF06def', []), 'a', "[]");
-       a(t.call('abc\uD834\uDF06def', {}), 'a', "{}");
-       a(t.call('abc\uD834\uDF06def', -0.9), 'a', "-0.9");
-       a(t.call('abc\uD834\uDF06def', 1.9), 'b', "1.9");
-       a(t.call('abc\uD834\uDF06def', 7.9), 'f', "7.9");
-       a(t.call('abc\uD834\uDF06def', Math.pow(2, 32)), '', "Big number");
-
-       a.h1("Astral symbol");
-       a(t.call('\uD834\uDF06def', -Infinity), '', "-Infinity");
-       a(t.call('\uD834\uDF06def', -1), '', "-1");
-       a(t.call('\uD834\uDF06def', -0), '\uD834\uDF06', "-0");
-       a(t.call('\uD834\uDF06def', +0), '\uD834\uDF06', "+0");
-       a(t.call('\uD834\uDF06def', 1), '\uDF06', "1");
-       a(t.call('\uD834\uDF06def', 2), 'd', "2");
-       a(t.call('\uD834\uDF06def', 3), 'e', "3");
-       a(t.call('\uD834\uDF06def', 4), 'f', "4");
-       a(t.call('\uD834\uDF06def', 42), '', "42");
-       a(t.call('\uD834\uDF06def', +Infinity), '', "+Infinity");
-       a(t.call('\uD834\uDF06def', null), '\uD834\uDF06', "null");
-       a(t.call('\uD834\uDF06def', undefined), '\uD834\uDF06', "undefined");
-       a(t.call('\uD834\uDF06def'), '\uD834\uDF06', "No arguments");
-       a(t.call('\uD834\uDF06def', false), '\uD834\uDF06', "false");
-       a(t.call('\uD834\uDF06def', NaN), '\uD834\uDF06', "NaN");
-       a(t.call('\uD834\uDF06def', ''), '\uD834\uDF06', "Empty string");
-       a(t.call('\uD834\uDF06def', '_'), '\uD834\uDF06', "_");
-       a(t.call('\uD834\uDF06def', '1'), '\uDF06', "'1'");
-
-       a.h1("Lone high surrogates");
-       a(t.call('\uD834abc', -Infinity), '', "-Infinity");
-       a(t.call('\uD834abc', -1), '',  "-1");
-       a(t.call('\uD834abc', -0), '\uD834', "-0");
-       a(t.call('\uD834abc', +0), '\uD834', "+0");
-       a(t.call('\uD834abc', 1), 'a', "1");
-       a(t.call('\uD834abc', 42), '', "42");
-       a(t.call('\uD834abc', +Infinity), '', "Infinity");
-       a(t.call('\uD834abc', null), '\uD834', "null");
-       a(t.call('\uD834abc', undefined), '\uD834', "undefined");
-       a(t.call('\uD834abc'), '\uD834', "No arguments");
-       a(t.call('\uD834abc', false), '\uD834', "false");
-       a(t.call('\uD834abc', NaN), '\uD834', "NaN");
-       a(t.call('\uD834abc', ''), '\uD834', "Empty string");
-       a(t.call('\uD834abc', '_'), '\uD834', "_");
-       a(t.call('\uD834abc', '1'), 'a', "'a'");
-
-       a.h1("Lone low surrogates");
-       a(t.call('\uDF06abc', -Infinity), '', "-Infinity");
-       a(t.call('\uDF06abc', -1), '', "-1");
-       a(t.call('\uDF06abc', -0), '\uDF06', "-0");
-       a(t.call('\uDF06abc', +0), '\uDF06', "+0");
-       a(t.call('\uDF06abc', 1), 'a', "1");
-       a(t.call('\uDF06abc', 42), '', "42");
-       a(t.call('\uDF06abc', +Infinity), '', "+Infinity");
-       a(t.call('\uDF06abc', null), '\uDF06', "null");
-       a(t.call('\uDF06abc', undefined), '\uDF06', "undefined");
-       a(t.call('\uDF06abc'), '\uDF06', "No arguments");
-       a(t.call('\uDF06abc', false), '\uDF06', "false");
-       a(t.call('\uDF06abc', NaN), '\uDF06', "NaN");
-       a(t.call('\uDF06abc', ''), '\uDF06', "Empty string");
-       a(t.call('\uDF06abc', '_'), '\uDF06', "_");
-       a(t.call('\uDF06abc', '1'), 'a', "'1'");
-
-       a.h1("Context");
-       a.throws(function () { t.call(undefined); }, TypeError, "Undefined");
-       a.throws(function () { t.call(undefined, 4); }, TypeError,
-               "Undefined + argument");
-       a.throws(function () { t.call(null); }, TypeError, "Null");
-       a.throws(function () { t.call(null, 4); }, TypeError, "Null + argument");
-       a(t.call(42, 0), '4', "Number #1");
-       a(t.call(42, 1), '2', "Number #2");
-       a(t.call({ toString: function () { return 'abc'; } }, 2), 'c', "Object");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/camel-to-hyphen.js
deleted file mode 100644 (file)
index 606c616..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razDwaTRzy4yFoo45My'), 'raz-dwa-trzy4y-foo45-my');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/capitalize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/capitalize.js
deleted file mode 100644 (file)
index fa11ff8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz'), 'Raz', "Word");
-       a(t.call('BLA'), 'BLA', "Uppercase");
-       a(t.call(''), '', "Empty");
-       a(t.call('a'), 'A', "One letter");
-       a(t.call('this is a test'), 'This is a test', "Sentence");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/case-insensitive-compare.js
deleted file mode 100644 (file)
index 01a90c3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call("AA", "aa"), 0, "Same");
-       a.ok(t.call("Amber", "zebra") < 0, "Less");
-       a.ok(t.call("Zebra", "amber") > 0, "Greater");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/implement.js
deleted file mode 100644 (file)
index 5e33cd7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-var isImplemented =
-       require('../../../../string/#/code-point-at/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/code-point-at/shim.js
deleted file mode 100644 (file)
index 0df4751..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-// Taken from: https://github.com/mathiasbynens/String.prototype.codePointAt
-//             /blob/master/tests/tests.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.length, 1, "Length");
-
-       // String that starts with a BMP symbol
-       a(t.call('abc\uD834\uDF06def', ''), 0x61);
-       a(t.call('abc\uD834\uDF06def', '_'), 0x61);
-       a(t.call('abc\uD834\uDF06def'), 0x61);
-       a(t.call('abc\uD834\uDF06def', -Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', -1), undefined);
-       a(t.call('abc\uD834\uDF06def', -0), 0x61);
-       a(t.call('abc\uD834\uDF06def', 0), 0x61);
-       a(t.call('abc\uD834\uDF06def', 3), 0x1D306);
-       a(t.call('abc\uD834\uDF06def', 4), 0xDF06);
-       a(t.call('abc\uD834\uDF06def', 5), 0x64);
-       a(t.call('abc\uD834\uDF06def', 42), undefined);
-       a(t.call('abc\uD834\uDF06def', Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', Infinity), undefined);
-       a(t.call('abc\uD834\uDF06def', NaN), 0x61);
-       a(t.call('abc\uD834\uDF06def', false), 0x61);
-       a(t.call('abc\uD834\uDF06def', null), 0x61);
-       a(t.call('abc\uD834\uDF06def', undefined), 0x61);
-
-       // String that starts with an astral symbol
-       a(t.call('\uD834\uDF06def', ''), 0x1D306);
-       a(t.call('\uD834\uDF06def', '1'), 0xDF06);
-       a(t.call('\uD834\uDF06def', '_'), 0x1D306);
-       a(t.call('\uD834\uDF06def'), 0x1D306);
-       a(t.call('\uD834\uDF06def', -1), undefined);
-       a(t.call('\uD834\uDF06def', -0), 0x1D306);
-       a(t.call('\uD834\uDF06def', 0), 0x1D306);
-       a(t.call('\uD834\uDF06def', 1), 0xDF06);
-       a(t.call('\uD834\uDF06def', 42), undefined);
-       a(t.call('\uD834\uDF06def', false), 0x1D306);
-       a(t.call('\uD834\uDF06def', null), 0x1D306);
-       a(t.call('\uD834\uDF06def', undefined), 0x1D306);
-
-       // Lone high surrogates
-       a(t.call('\uD834abc', ''), 0xD834);
-       a(t.call('\uD834abc', '_'), 0xD834);
-       a(t.call('\uD834abc'), 0xD834);
-       a(t.call('\uD834abc', -1), undefined);
-       a(t.call('\uD834abc', -0), 0xD834);
-       a(t.call('\uD834abc', 0), 0xD834);
-       a(t.call('\uD834abc', false), 0xD834);
-       a(t.call('\uD834abc', NaN), 0xD834);
-       a(t.call('\uD834abc', null), 0xD834);
-       a(t.call('\uD834abc', undefined), 0xD834);
-
-       // Lone low surrogates
-       a(t.call('\uDF06abc', ''), 0xDF06);
-       a(t.call('\uDF06abc', '_'), 0xDF06);
-       a(t.call('\uDF06abc'), 0xDF06);
-       a(t.call('\uDF06abc', -1), undefined);
-       a(t.call('\uDF06abc', -0), 0xDF06);
-       a(t.call('\uDF06abc', 0), 0xDF06);
-       a(t.call('\uDF06abc', false), 0xDF06);
-       a(t.call('\uDF06abc', NaN), 0xDF06);
-       a(t.call('\uDF06abc', null), 0xDF06);
-       a(t.call('\uDF06abc', undefined), 0xDF06);
-
-       a.throws(function () { t.call(undefined); }, TypeError);
-       a.throws(function () { t.call(undefined, 4); }, TypeError);
-       a.throws(function () { t.call(null); }, TypeError);
-       a.throws(function () { t.call(null, 4); }, TypeError);
-       a(t.call(42, 0), 0x34);
-       a(t.call(42, 1), 0x32);
-       a(t.call({ toString: function () { return 'abc'; } }, 2), 0x63);
-
-       a.throws(function () { t.apply(undefined); }, TypeError);
-       a.throws(function () { t.apply(undefined, [4]); }, TypeError);
-       a.throws(function () { t.apply(null); }, TypeError);
-       a.throws(function () { t.apply(null, [4]); }, TypeError);
-       a(t.apply(42, [0]), 0x34);
-       a(t.apply(42, [1]), 0x32);
-       a(t.apply({ toString: function () { return 'abc'; } }, [2]), 0x63);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/implement.js
deleted file mode 100644 (file)
index 220f50d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/contains/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/contains/shim.js
deleted file mode 100644 (file)
index a0ea4db..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz', ''), true, "Empty");
-       a(t.call('', ''), true, "Both Empty");
-       a(t.call('raz', 'raz'), true, "Same");
-       a(t.call('razdwa', 'raz'), true, "Starts with");
-       a(t.call('razdwa', 'dwa'), true, "Ends with");
-       a(t.call('razdwa', 'zdw'), true, "In middle");
-       a(t.call('', 'raz'), false, "Something in empty");
-       a(t.call('az', 'raz'), false, "Longer");
-       a(t.call('azasdfasdf', 'azff'), false, "Not found");
-       a(t.call('razdwa', 'raz', 1), false, "Position");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/implement.js
deleted file mode 100644 (file)
index 93bd2dd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/ends-with/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/ends-with/shim.js
deleted file mode 100644 (file)
index e4b93c4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// In some parts copied from:
-// http://closure-library.googlecode.com/svn/trunk/closure/goog/
-// string/string_test.html
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('abc', ''), true, "Empty needle");
-       a(t.call('abcd', 'cd'), true, "Ends with needle");
-       a(t.call('abcd', 'abcd'), true, "Needle equals haystack");
-       a(t.call('abcd', 'ab'), false, "Doesn't end with needle");
-       a(t.call('abc', 'defg'), false, "Length trick");
-       a(t.call('razdwa', 'zd', 3), false, "Position: false");
-       a(t.call('razdwa', 'zd', 4), true, "Position: true");
-       a(t.call('razdwa', 'zd', 5), false, "Position: false #2");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/hyphen-to-camel.js
deleted file mode 100644 (file)
index bd7ded4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('raz-dwa-t-rzy-4y-rtr4-tiu-45-pa'), 'razDwaTRzy4yRtr4Tiu45Pa');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/indent.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/indent.js
deleted file mode 100644 (file)
index eb92b36..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('ra\nzz', ''), 'ra\nzz', "Empty");
-       a(t.call('ra\nzz', '\t', 3), '\t\t\tra\n\t\t\tzz', "String repeat");
-       a(t.call('ra\nzz\nsss\nfff\n', '\t'), '\tra\n\tzz\n\tsss\n\tfff\n',
-               "Multi-line");
-       a(t.call('ra\n\nzz\n', '\t'), '\tra\n\n\tzz\n', "Don't touch empty lines");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/last.js
deleted file mode 100644 (file)
index ad36a21..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call(''), null, "Null");
-       a(t.call('abcdef'), 'f', "String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/_data.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/_data.js
deleted file mode 100644 (file)
index c741add..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t[0], 'object'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/implement.js
deleted file mode 100644 (file)
index 4886c9b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/normalize/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/normalize/shim.js
deleted file mode 100644 (file)
index 28e27f5..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-// Taken from: https://github.com/walling/unorm/blob/master/test/es6-shim.js
-
-'use strict';
-
-var str = 'äiti';
-
-module.exports = function (t, a) {
-       a(t.call(str), "\u00e4iti");
-       a(t.call(str, "NFC"), "\u00e4iti");
-       a(t.call(str, "NFD"), "a\u0308iti");
-       a(t.call(str, "NFKC"), "\u00e4iti");
-       a(t.call(str, "NFKD"), "a\u0308iti");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/pad.js
deleted file mode 100644 (file)
index 28c3fca..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-var partial = require('../../../function/#/partial');
-
-module.exports = {
-       Left: function (t, a) {
-               t = partial.call(t, 'x', 5);
-
-               a(t.call('yy'), 'xxxyy');
-               a(t.call(''), 'xxxxx', "Empty string");
-
-               a(t.call('yyyyy'), 'yyyyy', 'Equal length');
-               a(t.call('yyyyyyy'), 'yyyyyyy', 'Longer');
-       },
-       Right: function (t, a) {
-               t = partial.call(t, 'x', -5);
-
-               a(t.call('yy'), 'yyxxx');
-               a(t.call(''), 'xxxxx', "Empty string");
-
-               a(t.call('yyyyy'), 'yyyyy', 'Equal length');
-               a(t.call('yyyyyyy'), 'yyyyyyy', 'Longer');
-       }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace-all.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace-all.js
deleted file mode 100644 (file)
index a425c87..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razdwatrzy', 'dwa', 'olera'), 'razoleratrzy', "Basic");
-       a(t.call('razdwatrzy', 'dwa', 'ole$&a'), 'razole$&atrzy', "Inserts");
-       a(t.call('razdwa', 'ola', 'sdfs'), 'razdwa', "No replace");
-
-       a(t.call('$raz$$dwa$trzy$', '$', '&&'), '&&raz&&&&dwa&&trzy&&', "Multi");
-       a(t.call('$raz$$dwa$$$$trzy$', '$$', '&'), '$raz&dwa&&trzy$',
-               "Multi many chars");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/plain-replace.js
deleted file mode 100644 (file)
index 54522ed..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('razdwatrzy', 'dwa', 'olera'), 'razoleratrzy', "Basic");
-       a(t.call('razdwatrzy', 'dwa', 'ole$&a'), 'razole$&atrzy', "Inserts");
-       a(t.call('razdwa', 'ola', 'sdfs'), 'razdwa', "No replace");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/implement.js
deleted file mode 100644 (file)
index 7ff65a8..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/repeat/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/repeat/shim.js
deleted file mode 100644 (file)
index 7e0d077..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('a', 0), '', "Empty");
-       a(t.call('a', 1), 'a', "1");
-       a(t.call('\t', 5), '\t\t\t\t\t', "Whitespace");
-       a(t.call('raz', 3), 'razrazraz', "Many chars");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/implement.js
deleted file mode 100644 (file)
index fc8490f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../../string/#/starts-with/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/#/starts-with/shim.js
deleted file mode 100644 (file)
index e0e123b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-// Inspired and in some parts copied from:
-// http://closure-library.googlecode.com/svn/trunk/closure/goog
-// /string/string_test.html
-
-'use strict';
-
-module.exports = function (t, a) {
-       a(t.call('abc', ''), true, "Empty needle");
-       a(t.call('abcd', 'ab'), true, "Starts with needle");
-       a(t.call('abcd', 'abcd'), true, "Needle equals haystack");
-       a(t.call('abcd', 'bcde', 1), false, "Needle larger than haystack");
-       a(!t.call('abcd', 'cd'), true, "Doesn't start with needle");
-       a(t.call('abcd', 'bc', 1), true, "Position");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/format-method.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/format-method.js
deleted file mode 100644 (file)
index bb5561e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       t = t({ a: 'A', aa: 'B', ab: 'C', b: 'D',
-               c: function () { return ++this.a; } });
-       a(t.call({ a: 0 }, ' %a%aab%abb%b\\%aa%ab%c%c '), ' ABbCbD%aaC12 ');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/implement.js
deleted file mode 100644 (file)
index 0aceb97..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../string/from-code-point/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/from-code-point/shim.js
deleted file mode 100644 (file)
index fe8aa4e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// Taken from: https://github.com/mathiasbynens/String.fromCodePoint/blob/master
-//             /tests/tests.js
-
-'use strict';
-
-var pow = Math.pow;
-
-module.exports = function (t, a) {
-       var counter, result;
-
-       a(t.length, 0, "Length");
-       a(String.propertyIsEnumerable('fromCodePoint'), false, "Not enumerable");
-
-       a(t(''), '\0', "Empty string");
-       a(t(), '', "No arguments");
-       a(t(-0), '\0', "-0");
-       a(t(0), '\0', "0");
-       a(t(0x1D306), '\uD834\uDF06', "Unicode");
-       a(t(0x1D306, 0x61, 0x1D307), '\uD834\uDF06a\uD834\uDF07', "Complex unicode");
-       a(t(0x61, 0x62, 0x1D307), 'ab\uD834\uDF07', "Complex");
-       a(t(false), '\0', "false");
-       a(t(null), '\0', "null");
-
-       a.throws(function () { t('_'); }, RangeError, "_");
-       a.throws(function () { t(Infinity); }, RangeError, "Infinity");
-       a.throws(function () { t(-Infinity); }, RangeError, "-Infinity");
-       a.throws(function () { t(-1); }, RangeError, "-1");
-       a.throws(function () { t(0x10FFFF + 1); }, RangeError, "Range error #1");
-       a.throws(function () { t(3.14); }, RangeError, "Range error #2");
-       a.throws(function () { t(3e-2); }, RangeError, "Range error #3");
-       a.throws(function () { t(-Infinity); }, RangeError, "Range error #4");
-       a.throws(function () { t(+Infinity); }, RangeError, "Range error #5");
-       a.throws(function () { t(NaN); }, RangeError, "Range error #6");
-       a.throws(function () { t(undefined); }, RangeError, "Range error #7");
-       a.throws(function () { t({}); }, RangeError, "Range error #8");
-       a.throws(function () { t(/re/); }, RangeError, "Range error #9");
-
-       counter = pow(2, 15) * 3 / 2;
-       result = [];
-       while (--counter >= 0) result.push(0); // one code unit per symbol
-       t.apply(null, result); // must not throw
-
-       counter = pow(2, 15) * 3 / 2;
-       result = [];
-       while (--counter >= 0) result.push(0xFFFF + 1); // two code units per symbol
-       t.apply(null, result); // must not throw
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/is-string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/is-string.js
deleted file mode 100644 (file)
index 32f5958..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) {
-       a(t(null), false, "Null");
-       a(t(''), true, "Empty string");
-       a(t(12), false, "Number");
-       a(t(false), false, "Boolean");
-       a(t(new Date()), false, "Date");
-       a(t(new String('raz')), true, "String object");
-       a(t('asdfaf'), true, "String");
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/random-uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/random-uniq.js
deleted file mode 100644 (file)
index 6791ac2..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-var isValidFormat = RegExp.prototype.test.bind(/^[a-z0-9]+$/);
-
-module.exports = function (t, a) {
-       a(typeof t(), 'string');
-       a.ok(t().length > 7);
-       a.not(t(), t());
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-       a.ok(isValidFormat(t()));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/implement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/implement.js
deleted file mode 100644 (file)
index 59416de..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-var isImplemented = require('../../../string/raw/is-implemented');
-
-module.exports = function (a) { a(isImplemented(), true); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/index.js
deleted file mode 100644 (file)
index 2e0bfa3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./shim');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/is-implemented.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/is-implemented.js
deleted file mode 100644 (file)
index 1a88328..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = function (t, a) { a(typeof t(), 'boolean'); };
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/shim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/string/raw/shim.js
deleted file mode 100644 (file)
index 025ed78..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-// Partially taken from:
-// https://github.com/paulmillr/es6-shim/blob/master/test/string.js
-
-'use strict';
-
-module.exports = function (t, a) {
-       var callSite = [];
-
-       callSite.raw = ["The total is ", " ($", " with tax)"];
-       a(t(callSite, '{total}', '{total * 1.01}'),
-               'The total is {total} (${total * 1.01} with tax)');
-
-       callSite.raw = [];
-       a(t(callSite, '{total}', '{total * 1.01}'), '');
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-iterator/package.json
deleted file mode 100644 (file)
index 4e0a42f..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_id": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-1vWLjE/EE8JJtLqhl2j45NfIlE4=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-iterator",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-iterator@https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "name": "es6-iterator",
-    "escapedName": "es6-iterator",
-    "rawSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-weak-map",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es5-ext"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-iterator/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5",
-    "es6-symbol": "~2.0.1"
-  },
-  "description": "Iterator abstraction based on ES6 specification",
-  "devDependencies": {
-    "event-emitter": "~0.3.3",
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-iterator#readme",
-  "keywords": [
-    "iterator",
-    "array",
-    "list",
-    "set",
-    "map",
-    "generator"
-  ],
-  "license": "MIT",
-  "name": "es6-iterator",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-iterator.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es6-symbol/package.json
deleted file mode 100644 (file)
index 646b6d3..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_id": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-dhtcZ8/U8dGK+yNPaR1nhoLLO/M=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-symbol",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-symbol@https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "name": "es6-symbol",
-    "escapedName": "es6-symbol",
-    "rawSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope/es6-weak-map",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es5-ext",
-    "/grunt-standard/standard/eslint/escope/es6-weak-map/es6-iterator"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-symbol/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.5"
-  },
-  "description": "ECMAScript6 Symbol polyfill",
-  "devDependencies": {
-    "tad": "~0.2.1",
-    "xlint": "~0.2.2",
-    "xlint-jslint-medikoo": "~0.1.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-symbol#readme",
-  "keywords": [
-    "symbol",
-    "private",
-    "property",
-    "es6",
-    "ecmascript",
-    "harmony"
-  ],
-  "license": "MIT",
-  "name": "es6-symbol",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-symbol.git"
-  },
-  "scripts": {
-    "lint": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --no-cache --no-stream",
-    "lint-console": "node node_modules/xlint/bin/xlint --linter=node_modules/xlint-jslint-medikoo/index.js --watch",
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/es6-weak-map/package.json
deleted file mode 100644 (file)
index 502fb7c..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "es6-weak-map@https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "es6-weak-map@https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-  "_id": "es6-weak-map@https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-cGzvnpmqI2undmwjnIueKG6n0ig=",
-  "_location": "/grunt-standard/standard/eslint/escope/es6-weak-map",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "es6-weak-map@https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-    "name": "es6-weak-map",
-    "escapedName": "es6-weak-map",
-    "rawSpec": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope"
-  ],
-  "_spec": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mariusz Nowak",
-    "email": "medyk@medikoo.com",
-    "url": "http://www.medikoo.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/medikoo/es6-weak-map/issues"
-  },
-  "dependencies": {
-    "d": "~0.1.1",
-    "es5-ext": "~0.10.6",
-    "es6-iterator": "~0.1.3",
-    "es6-symbol": "~2.0.1"
-  },
-  "description": "ECMAScript6 WeakMap polyfill",
-  "devDependencies": {
-    "tad": "~0.2.2"
-  },
-  "homepage": "https://github.com/medikoo/es6-weak-map#readme",
-  "keywords": [
-    "map",
-    "weakmap",
-    "collection",
-    "es6",
-    "harmony",
-    "list",
-    "hash",
-    "gc"
-  ],
-  "license": "MIT",
-  "name": "es6-weak-map",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/medikoo/es6-weak-map.git"
-  },
-  "scripts": {
-    "test": "node ./node_modules/tad/bin/tad"
-  },
-  "version": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/esrecurse/package.json
deleted file mode 100644 (file)
index 53be4d4..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "esrecurse@https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esrecurse@https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-  "_id": "esrecurse@https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-JeOzq3atih2i046Tk/12uEVqcG8=",
-  "_location": "/grunt-standard/standard/eslint/escope/esrecurse",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esrecurse@https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-    "name": "esrecurse",
-    "escapedName": "esrecurse",
-    "rawSpec": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope"
-  ],
-  "_spec": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/estools/esrecurse/issues"
-  },
-  "dependencies": {
-    "estraverse": ">=1.9.0"
-  },
-  "description": "ECMAScript scope analyzer",
-  "devDependencies": {
-    "chai": "~1.10.0",
-    "coffee-script": "~1.8.0",
-    "esprima": "~1.2.2",
-    "gulp": "~3.8.10",
-    "gulp-eslint": "^0.2.0",
-    "gulp-mocha": "~2.0.0",
-    "jsdoc": "~3.3.0-alpha10",
-    "minimist": "^1.1.0"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "homepage": "http://github.com/estools/esrecurse",
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/estools/esrecurse/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "esrecurse.js",
-  "maintainers": [
-    {
-      "name": "Yusuke Suzuki",
-      "email": "utatane.tea@gmail.com",
-      "url": "http://github.com/Constellation"
-    }
-  ],
-  "name": "esrecurse",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/estools/esrecurse.git"
-  },
-  "scripts": {
-    "lint": "gulp lint",
-    "test": "gulp travis",
-    "unit-test": "gulp test"
-  },
-  "version": "https://registry.npmjs.org/esrecurse/-/esrecurse-1.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/node_modules/util-extend/package.json
deleted file mode 100644 (file)
index b42e864..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-{
-  "_args": [
-    [
-      "util-extend@https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "util-extend@https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-  "_id": "util-extend@https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-u3A7eUgCk93Nz7PGqf6iD0g0Fbw=",
-  "_location": "/grunt-standard/standard/eslint/escope/util-extend",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "util-extend@https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-    "name": "util-extend",
-    "escapedName": "util-extend",
-    "rawSpec": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/escope"
-  ],
-  "_spec": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": "",
-  "bugs": {
-    "url": "https://github.com/isaacs/util-extend/issues"
-  },
-  "description": "Node's internal object extension function",
-  "homepage": "https://github.com/isaacs/util-extend#readme",
-  "license": "MIT",
-  "main": "extend.js",
-  "name": "util-extend",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/util-extend.git"
-  },
-  "scripts": {
-    "test": "node test.js"
-  },
-  "version": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/escope/package.json
deleted file mode 100644 (file)
index 119bb8f..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-{
-  "_args": [
-    [
-      "escope@https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "escope@https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-  "_id": "escope@https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-wbrCSHBgW7OEugc9zgQXyTBe3es=",
-  "_location": "/grunt-standard/standard/eslint/escope",
-  "_phantomChildren": {
-    "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz"
-  },
-  "_requested": {
-    "type": "remote",
-    "raw": "escope@https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-    "name": "escope",
-    "escapedName": "escope",
-    "rawSpec": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/estools/escope/issues"
-  },
-  "dependencies": {
-    "es6-map": "^0.1.1",
-    "es6-weak-map": "^0.1.2",
-    "esrecurse": "^1.2.0",
-    "estraverse": ">=1.9.0",
-    "util-extend": "^1.0.1"
-  },
-  "description": "ECMAScript scope analyzer",
-  "devDependencies": {
-    "browserify": "^7.0.0",
-    "chai": "~1.10.0",
-    "coffee-script": "~1.8.0",
-    "esprima": "~1.2.2",
-    "gulp": "~3.8.10",
-    "gulp-eslint": "^0.2.0",
-    "gulp-mocha": "~2.0.0",
-    "jsdoc": "~3.3.0-alpha10",
-    "minimist": "^1.1.0",
-    "vinyl-source-stream": "^1.0.0"
-  },
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "homepage": "http://github.com/estools/escope.html",
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/estools/escope/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "escope.js",
-  "maintainers": [
-    {
-      "name": "Yusuke Suzuki",
-      "email": "utatane.tea@gmail.com",
-      "url": "http://github.com/Constellation"
-    }
-  ],
-  "name": "escope",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/estools/escope.git"
-  },
-  "scripts": {
-    "jsdoc": "jsdoc escope.js README.md",
-    "lint": "gulp lint",
-    "test": "gulp travis",
-    "unit-test": "gulp test"
-  },
-  "version": "https://registry.npmjs.org/escope/-/escope-2.0.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/espree/package.json
deleted file mode 100644 (file)
index e693afd..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-{
-  "_args": [
-    [
-      "espree@https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "espree@https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-  "_id": "espree@https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-BM7q2pG9oHejjAQMEluhhrE7s8w=",
-  "_location": "/grunt-standard/standard/eslint/espree",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "espree@https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-    "name": "espree",
-    "escapedName": "espree",
-    "rawSpec": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Nicholas C. Zakas",
-    "email": "nicholas+npm@nczconsulting.com"
-  },
-  "bin": {
-    "esparse": "./bin/esparse.js",
-    "esvalidate": "./bin/esvalidate.js"
-  },
-  "bugs": {
-    "url": "http://github.com/eslint/espree.git"
-  },
-  "dependencies": {},
-  "description": "An actively-maintained fork of Esprima, the ECMAScript parsing infrastructure for multipurpose analysis",
-  "devDependencies": {
-    "browserify": "^7.0.0",
-    "chai": "^1.10.0",
-    "complexity-report": "~0.6.1",
-    "dateformat": "^1.0.11",
-    "eslint": "^0.9.2",
-    "esprima": "git://github.com/ariya/esprima.git#harmony",
-    "esprima-fb": "^8001.2001.0-dev-harmony-fb",
-    "istanbul": "~0.2.6",
-    "json-diff": "~0.3.1",
-    "leche": "^1.0.1",
-    "mocha": "^2.0.1",
-    "npm-license": "^0.2.3",
-    "optimist": "~0.6.0",
-    "regenerate": "~0.5.4",
-    "semver": "^4.1.1",
-    "shelljs": "^0.3.0",
-    "shelljs-nodecli": "^0.1.1",
-    "unicode-6.3.0": "~0.1.0"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "bin",
-    "lib",
-    "test/run.js",
-    "test/runner.js",
-    "test/test.js",
-    "test/compat.js",
-    "test/reflect.js",
-    "espree.js"
-  ],
-  "homepage": "https://github.com/eslint/espree",
-  "keywords": [
-    "ast",
-    "ecmascript",
-    "javascript",
-    "parser",
-    "syntax"
-  ],
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/nzakas/espree/raw/master/LICENSE"
-    }
-  ],
-  "main": "espree.js",
-  "name": "espree",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/eslint/espree.git"
-  },
-  "scripts": {
-    "analyze-complexity": "node tools/list-complexity.js",
-    "analyze-coverage": "node node_modules/istanbul/lib/cli.js cover test/runner.js",
-    "benchmark": "node test/benchmarks.js",
-    "benchmark-quick": "node test/benchmarks.js quick",
-    "browserify": "node Makefile.js browserify",
-    "check-complexity": "node node_modules/complexity-report/src/cli.js --maxcc 14 --silent -l -w espree.js",
-    "check-coverage": "node node_modules/istanbul/lib/cli.js check-coverage --statement 99 --branch 99 --function 99",
-    "complexity": "npm run-script analyze-complexity && npm run-script check-complexity",
-    "coverage": "npm run-script analyze-coverage && npm run-script check-coverage",
-    "generate-regex": "node tools/generate-identifier-regex.js",
-    "lint": "node Makefile.js lint",
-    "major": "node Makefile.js major",
-    "minor": "node Makefile.js minor",
-    "patch": "node Makefile.js patch",
-    "test": "npm run-script lint && node Makefile.js test && node test/run.js"
-  },
-  "version": "https://registry.npmjs.org/espree/-/espree-1.12.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.npmignore
deleted file mode 100644 (file)
index da23d0d..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-# Logs
-logs
-*.log
-
-# Runtime data
-pids
-*.pid
-*.seed
-
-# Directory for instrumented libs generated by jscoverage/JSCover
-lib-cov
-
-# Coverage directory used by tools like istanbul
-coverage
-
-# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
-.grunt
-
-# Compiled binary addons (http://nodejs.org/api/addons.html)
-build/Release
-
-# Dependency directory
-# Deployed apps should consider commenting this line out:
-# see https://npmjs.org/doc/faq.html#Should-I-check-my-node_modules-folder-into-git
-node_modules
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/.travis.yml
deleted file mode 100644 (file)
index ffb9f71..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-language: node_js
-node_js: '0.10'
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/LICENSE
deleted file mode 100644 (file)
index 54530b3..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014 Ingvar Stepanyan
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/README.md
deleted file mode 100644 (file)
index 20b0296..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-estraverse-fb
-=============
-[![Build Status](https://travis-ci.org/RReverser/estraverse-fb.svg?branch=master)](https://travis-ci.org/RReverser/estraverse-fb)
-
-Drop-in for estraverse that enables traversal over React's JSX and Flow nodes using monkey-patching technique.
-
-You can use estraverse-fb in two possible ways:
-
-* by default, you just require it and it injects needed keys into your installed version of estraverse (it's installed automatically if you don't have it yet):
-    ```javascript
-    var estraverse = require('estraverse-fb');
-    /* same as:
-        require('estraverse-fb');
-        var estraverse = require('estraverse');
-    */
-
-    estraverse.traverse(ast, {
-        enter: ...,
-        leave: ...
-    });
-    ```
-
-* alternatively, you can use it manually for selected traversals:
-    ```javascript
-    var jsxKeys = require('estraverse-fb/keys');
-
-    estraverse.traverse(ast, {
-        enter: ...,
-        leave: ...,
-        keys: jsxKeys
-    })
-```
-
-Check out [estraverse page](https://github.com/Constellation/estraverse) for detailed usage.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/estraverse-fb.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/estraverse-fb.js
deleted file mode 100644 (file)
index 795ec40..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-var estraverse = module.exports = require('estraverse');
-
-var VisitorKeys = require('./keys');
-
-for (var nodeType in VisitorKeys) {
-       estraverse.Syntax[nodeType] = nodeType;
-
-       var keys = VisitorKeys[nodeType];
-
-       if (keys) {
-               estraverse.VisitorKeys[nodeType] = keys;
-       }
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/keys.js
deleted file mode 100644 (file)
index 47df04a..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-var unprefixedKeys = {
-       Identifier: [],
-       NamespacedName: ['namespace', 'name'],
-       MemberExpression: ['object', 'property'],
-       EmptyExpression: [],
-       ExpressionContainer: ['expression'],
-       Element: ['openingElement', 'closingElement', 'children'],
-       ClosingElement: ['name'],
-       OpeningElement: ['name', 'attributes'],
-       Attribute: ['name', 'value'],
-       Text: null,
-       SpreadAttribute: ['argument']
-};
-
-var flowKeys = {
-       Type: [],
-       AnyTypeAnnotation: [],
-       VoidTypeAnnotation: [],
-       NumberTypeAnnotation: [],
-       StringTypeAnnotation: [],
-       StringLiteralTypeAnnotation: ["value", "raw"],
-       BooleanTypeAnnotation: [],
-       TypeAnnotation: ["typeAnnotation"],
-       NullableTypeAnnotation: ["typeAnnotation"],
-       FunctionTypeAnnotation: ["params", "returnType", "rest", "typeParameters"],
-       FunctionTypeParam: ["name", "typeAnnotation", "optional"],
-       ObjectTypeAnnotation: ["properties"],
-       ObjectTypeProperty: ["key", "value", "optional"],
-       ObjectTypeIndexer: ["id", "key", "value"],
-       ObjectTypeCallProperty: ["value"],
-       QualifiedTypeIdentifier: ["qualification", "id"],
-       GenericTypeAnnotation: ["id", "typeParameters"],
-       MemberTypeAnnotation: ["object", "property"],
-       UnionTypeAnnotation: ["types"],
-       IntersectionTypeAnnotation: ["types"],
-       TypeofTypeAnnotation: ["argument"],
-       TypeParameterDeclaration: ["params"],
-       TypeParameterInstantiation: ["params"],
-       ClassProperty: ["key", "typeAnnotation"],
-       ClassImplements: [],
-       InterfaceDeclaration: ["id", "body", "extends"],
-       InterfaceExtends: ["id"],
-       TypeAlias: ["id", "typeParameters", "right"],
-       TupleTypeAnnotation: ["types"],
-       DeclareVariable: ["id"],
-       DeclareFunction: ["id"],
-       DeclareClass: ["id"],
-       DeclareModule: ["id", "body"]
-};
-
-for (var key in unprefixedKeys) {
-       exports['XJS' + key] = exports['JSX' + key] = unprefixedKeys[key];
-}
-
-for (var key in flowKeys) {
-       exports[key] = flowKeys[key];
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/package.json
deleted file mode 100644 (file)
index 37464d0..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{
-  "_args": [
-    [
-      "estraverse-fb@https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "estraverse-fb@https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-  "_id": "estraverse-fb@https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Fg51qA5gWwjOiUvM4v4+Qpq/kr8=",
-  "_location": "/grunt-standard/standard/eslint/estraverse-fb",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "estraverse-fb@https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-    "name": "estraverse-fb",
-    "escapedName": "estraverse-fb",
-    "rawSpec": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Ingvar Stepanyan",
-    "email": "me@rreverser.com",
-    "url": "https://github.com/RReverser"
-  },
-  "bugs": {
-    "url": "https://github.com/RReverser/estraverse-fb/issues"
-  },
-  "description": "Drop-in for estraverse that enables traversal over React's JSX nodes.",
-  "devDependencies": {
-    "chai": "^1.9.1",
-    "esprima-fb": "^8001.1001.0-dev-harmony-fb",
-    "estraverse": "^1.7.0",
-    "mocha": "^1.20.0"
-  },
-  "homepage": "https://github.com/RReverser/estraverse-fb#readme",
-  "keywords": [
-    "traverse",
-    "ast",
-    "react",
-    "jsx"
-  ],
-  "license": "MIT",
-  "main": "estraverse-fb.js",
-  "name": "estraverse-fb",
-  "peerDependencies": {
-    "estraverse": "*"
-  },
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/RReverser/estraverse-fb.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse-fb/test.js
deleted file mode 100644 (file)
index e0fca88..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-var assert = require('chai').assert;
-var parse = require('esprima-fb').parse;
-var originalKeys = require('./keys');
-
-describe('works', function () {
-       var code = ['class MyClass{',
-               'x: number;',
-               'y: number;',
-               'constructor(x: number, y: number){',
-                       'this.x = x;',
-                       'this.y = y;',
-               '}',
-               'render(){',
-                       'return <namespace:tag textAttr="value" exprAttr={expr} {...spreadAttr}><object.prop>!</object.prop>{}</namespace:tag>',
-               '}',
-       '}'].join('\n');
-
-       var ast = parse(code);
-
-       var expectedKeys = [
-               'ClassProperty',
-               'TypeAnnotation',
-               'NumberTypeAnnotation',
-               'ClassProperty',
-               'TypeAnnotation',
-               'NumberTypeAnnotation',
-               'XJSElement',
-               'XJSOpeningElement',
-               'XJSNamespacedName',
-               'XJSIdentifier',
-               'XJSIdentifier',
-               'XJSAttribute',
-               'XJSIdentifier',
-               'XJSAttribute',
-               'XJSIdentifier',
-               'XJSExpressionContainer',
-               'XJSSpreadAttribute',
-               'XJSClosingElement',
-               'XJSNamespacedName',
-               'XJSIdentifier',
-               'XJSIdentifier',
-               'XJSElement',
-               'XJSOpeningElement',
-               'XJSMemberExpression',
-               'XJSIdentifier',
-               'XJSIdentifier',
-               'XJSClosingElement',
-               'XJSMemberExpression',
-               'XJSIdentifier',
-               'XJSIdentifier',
-               'XJSExpressionContainer',
-               'XJSEmptyExpression'
-       ];
-
-       beforeEach(function () {
-               for (var key in require.cache) {
-                       delete require.cache[key];
-               }
-       });
-
-       it('directly from dependency', function () {
-               var traverse = require('./').traverse;
-               var actualKeys = [];
-               var actualTypeKeys = [];
-
-               traverse(ast, {
-                       enter: function (node) {
-                               if (originalKeys[node.type] != null) {
-                                       actualKeys.push(node.type);
-                               }
-                       }
-               });
-
-               assert.deepEqual(actualKeys, expectedKeys);
-       });
-
-       it('in injected mode', function () {
-               require('./');
-               var traverse = require('estraverse').traverse;
-               var actualKeys = [];
-
-               traverse(ast, {
-                       enter: function (node) {
-                               if (originalKeys[node.type] != null) {
-                                       actualKeys.push(node.type);
-                               }
-                       }
-               });
-
-               assert.deepEqual(actualKeys, expectedKeys);
-       });
-
-       it('in single-pass mode', function () {
-               var traverse = require('estraverse').traverse;
-               var keys = require('./keys');
-
-               var actualKeys = [];
-
-               traverse(ast, {
-                       enter: function (node) {
-                               if (originalKeys[node.type] != null) {
-                                       actualKeys.push(node.type);
-                               }
-                       },
-                       keys: keys
-               });
-
-               assert.throws(function () {
-                       traverse(ast, {
-                               enter: function () {}
-                       });
-               });
-
-               assert.deepEqual(actualKeys, expectedKeys);
-       });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/estraverse/package.json
deleted file mode 100644 (file)
index 83ef7bf..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-{
-  "_args": [
-    [
-      "estraverse@https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "estraverse@https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-  "_id": "estraverse@https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-WuRpYyQ2ACBmdMyySgnhZnT83KE=",
-  "_location": "/grunt-standard/standard/eslint/estraverse",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "estraverse@https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-    "name": "estraverse",
-    "escapedName": "estraverse",
-    "rawSpec": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint",
-    "/grunt-standard/standard/eslint/escope",
-    "/grunt-standard/standard/eslint/escope/esrecurse"
-  ],
-  "_spec": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/estools/estraverse/issues"
-  },
-  "description": "ECMAScript JS AST traversal functions",
-  "devDependencies": {
-    "chai": "^2.1.1",
-    "coffee-script": "^1.8.0",
-    "espree": "^1.11.0",
-    "gulp": "^3.8.10",
-    "gulp-bump": "^0.2.2",
-    "gulp-filter": "^2.0.0",
-    "gulp-git": "^1.0.1",
-    "gulp-tag-version": "^1.2.1",
-    "jshint": "^2.5.6",
-    "mocha": "^2.1.0"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "homepage": "https://github.com/estools/estraverse",
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "http://github.com/estools/estraverse/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "estraverse.js",
-  "maintainers": [
-    {
-      "name": "Yusuke Suzuki",
-      "email": "utatane.tea@gmail.com",
-      "url": "http://github.com/Constellation"
-    }
-  ],
-  "name": "estraverse",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/estools/estraverse.git"
-  },
-  "scripts": {
-    "lint": "jshint estraverse.js",
-    "test": "npm run-script lint && npm run-script unit-test",
-    "unit-test": "mocha --compilers coffee:coffee-script/register"
-  },
-  "version": "https://registry.npmjs.org/estraverse/-/estraverse-2.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/globals/package.json
deleted file mode 100644 (file)
index a215e42..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "globals@https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "globals@https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-  "_id": "globals@https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hJgDKzttHMge68X3lpDY/in6v08=",
-  "_location": "/grunt-standard/standard/eslint/globals",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "globals@https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-    "name": "globals",
-    "escapedName": "globals",
-    "rawSpec": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/globals/issues"
-  },
-  "description": "Global identifiers from different JavaScript environments",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js",
-    "globals.json"
-  ],
-  "homepage": "https://github.com/sindresorhus/globals#readme",
-  "keywords": [
-    "globals",
-    "global",
-    "identifiers",
-    "variables",
-    "vars",
-    "jshint",
-    "eslint",
-    "environments"
-  ],
-  "license": "MIT",
-  "name": "globals",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/globals.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/CHANGELOG.md
deleted file mode 100644 (file)
index 4e5fa77..0000000
+++ /dev/null
@@ -1,285 +0,0 @@
-3.2.7 / 2015-02-19
-------------------
-
-- Maintenance release.
-- Updated dependencies.
-- HISTORY.md -> CHANGELOG.md
-
-
-3.2.6 / 2015-02-07
-------------------
-
-- Fixed encoding of UTF-16 surrogate pairs. (e.g. "\U0001F431" CAT FACE).
-- Fixed demo dates dump (#113, thanks to @Hypercubed).
-
-
-3.2.5 / 2014-12-28
-------------------
-
-- Fixed resolving of all built-in types on empty nodes.
-- Fixed invalid warning on empty lines within quoted scalars and flow collections.
-- Fixed bug: Tag on an empty node didn't resolve in some cases.
-
-
-3.2.4 / 2014-12-19
-------------------
-
-- Fixed resolving of !!null tag on an empty node.
-
-
-3.2.3 / 2014-11-08
-------------------
-
-- Implemented dumping of objects with circular and cross references.
-- Partially fixed aliasing of constructed objects. (see issue #141 for details)
-
-
-3.2.2 / 2014-09-07
-------------------
-
-- Fixed infinite loop on unindented block scalars.
-- Rewritten base64 encode/decode in binary type, to keep code licence clear.
-
-
-3.2.1 / 2014-08-24
-------------------
-
-- Nothig new. Just fix npm publish error.
-
-
-3.2.0 / 2014-08-24
-------------------
-
-- Added input piping support to CLI.
-- Fixed typo, that could cause hand on initial indent (#139).
-
-
-3.1.0 / 2014-07-07
-------------------
-
-- 1.5x-2x speed boost.
-- Removed deprecated `require('xxx.yml')` support.
-- Significant code cleanup and refactoring.
-- Internal API changed. If you used custom types - see updated examples.
-  Others are not affected.
-- Even if the input string has no trailing line break character,
-  it will be parsed as if it has one.
-- Added benchmark scripts.
-- Moved bower files to /dist folder
-- Bugfixes.
-
-
-3.0.2 / 2014-02-27
-------------------
-
-- Fixed bug: "constructor" string parsed as `null`.
-
-
-3.0.1 / 2013-12-22
-------------------
-
-- Fixed parsing of literal scalars. (issue #108)
-- Prevented adding unnecessary spaces in object dumps. (issue #68)
-- Fixed dumping of objects with very long (> 1024 in length) keys.
-
-
-3.0.0 / 2013-12-16
-------------------
-
-- Refactored code. Changed API for custom types.
-- Removed output colors in CLI, dump json by default.
-- Removed big dependencies from browser version (esprima, buffer)
-  - load `esprima` manually, if !!js/function needed
-  - !!bin now returns Array in browser
-- AMD support.
-- Don't quote dumped strings because of `-` & `?` (if not first char).
-- __Deprecated__ loading yaml files via `require()`, as not recommended
-  behaviour for node.
-
-
-2.1.3 / 2013-10-16
-------------------
-
-- Fix wrong loading of empty block scalars.
-
-
-2.1.2 / 2013-10-07
-------------------
-
-- Fix unwanted line breaks in folded scalars.
-
-
-2.1.1 / 2013-10-02
-------------------
-
-- Dumper now respects deprecated booleans syntax from YAML 1.0/1.1
-- Fixed reader bug in JSON-like sequences/mappings.
-
-
-2.1.0 / 2013-06-05
-------------------
-
-- Add standard YAML schemas: Failsafe (`FAILSAFE_SCHEMA`),
-  JSON (`JSON_SCHEMA`) and Core (`CORE_SCHEMA`).
-- Rename `DEFAULT_SCHEMA` to `DEFAULT_FULL_SCHEMA`
-  and `SAFE_SCHEMA` to `DEFAULT_SAFE_SCHEMA`.
-- Bug fix: export `NIL` constant from the public interface.
-- Add `skipInvalid` dumper option.
-- Use `safeLoad` for `require` extension.
-
-
-2.0.5 / 2013-04-26
-------------------
-
-- Close security issue in !!js/function constructor.
-  Big thanks to @nealpoole for security audit.
-
-
-2.0.4 / 2013-04-08
-------------------
-
-- Updated .npmignore to reduce package size
-
-
-2.0.3 / 2013-02-26
-------------------
-
-- Fixed dumping of empty arrays ans objects. ([] and {} instead of null)
-
-
-2.0.2 / 2013-02-15
-------------------
-
-- Fixed input validation: tabs are printable characters.
-
-
-2.0.1 / 2013-02-09
-------------------
-
-- Fixed error, when options not passed to function cass
-
-
-2.0.0 / 2013-02-09
-------------------
-
-- Full rewrite. New architecture. Fast one-stage parsing.
-- Changed custom types API.
-- Added YAML dumper.
-
-
-1.0.3 / 2012-11-05
-------------------
-
-- Fixed utf-8 files loading.
-
-
-1.0.2 / 2012-08-02
-------------------
-
-- Pull out hand-written shims. Use ES5-Shims for old browsers support. See #44.
-- Fix timstamps incorectly parsed in local time when no time part specified.
-
-
-1.0.1 / 2012-07-07
-------------------
-
-- Fixes `TypeError: 'undefined' is not an object` under Safari. Thanks Phuong.
-- Fix timestamps incorrectly parsed in local time. Thanks @caolan. Closes #46.
-
-
-1.0.0 / 2012-07-01
-------------------
-
-- `y`, `yes`, `n`, `no`, `on`, `off` are not converted to Booleans anymore.
-  Fixes #42.
-- `require(filename)` now returns a single document and throws an Error if
-  file contains more than one document.
-- CLI was merged back from js-yaml.bin
-
-
-0.3.7 / 2012-02-28
-------------------
-
-- Fix export of `addConstructor()`. Closes #39.
-
-
-0.3.6 / 2012-02-22
-------------------
-
-- Removed AMD parts - too buggy to use. Need help to rewrite from scratch
-- Removed YUI compressor warning (renamed `double` variable). Closes #40.
-
-
-0.3.5 / 2012-01-10
-------------------
-
-- Workagound for .npmignore fuckup under windows. Thanks to airportyh.
-
-
-0.3.4 / 2011-12-24
-------------------
-
-- Fixes str[] for oldIEs support.
-- Adds better has change support for browserified demo.
-- improves compact output of Error. Closes #33.
-
-
-0.3.3 / 2011-12-20
-------------------
-
-- jsyaml executable moved to separate module.
-- adds `compact` stringification of Errors.
-
-
-0.3.2 / 2011-12-16
-------------------
-
-- Fixes ug with block style scalars. Closes #26.
-- All sources are passing JSLint now.
-- Fixes bug in Safari. Closes #28.
-- Fixes bug in Opers. Closes #29.
-- Improves browser support. Closes #20.
-- Added jsyaml executable.
-- Added !!js/function support. Closes #12.
-
-
-0.3.1 / 2011-11-18
-------------------
-
-- Added AMD support for browserified version.
-- Wrapped browserified js-yaml into closure.
-- Fixed the resolvement of non-specific tags. Closes #17.
-- Added permalinks for online demo YAML snippets. Now we have YPaste service, lol.
-- Added !!js/regexp and !!js/undefined types. Partially solves #12.
-- Fixed !!set mapping.
-- Fixed month parse in dates. Closes #19.
-
-
-0.3.0 / 2011-11-09
-------------------
-
-- Removed JS.Class dependency. Closes #3.
-- Added browserified version. Closes #13.
-- Added live demo of browserified version.
-- Ported some of the PyYAML tests. See #14.
-- Fixed timestamp bug when fraction was given.
-
-
-0.2.2 / 2011-11-06
-------------------
-
-- Fixed crash on docs without ---. Closes #8.
-- Fixed miltiline string parse
-- Fixed tests/comments for using array as key
-
-
-0.2.1 / 2011-11-02
-------------------
-
-- Fixed short file read (<4k). Closes #9.
-
-
-0.2.0 / 2011-11-02
-------------------
-
-- First public release
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/README.md
deleted file mode 100644 (file)
index c181df1..0000000
+++ /dev/null
@@ -1,288 +0,0 @@
-JS-YAML - YAML 1.2 parser and serializer for JavaScript
-=======================================================
-
-[![Build Status](https://travis-ci.org/nodeca/js-yaml.svg?branch=master)](https://travis-ci.org/nodeca/js-yaml)
-[![NPM version](https://img.shields.io/npm/v/js-yaml.svg)](https://www.npmjs.org/package/js-yaml)
-
-[Online Demo](http://nodeca.github.com/js-yaml/)
-
-
-This is an implementation of [YAML](http://yaml.org/), a human friendly data
-serialization language. Started as [PyYAML](http://pyyaml.org/) port, it was
-completely rewritten from scratch. Now it's very fast, and supports 1.2 spec.
-
-
-Installation
-------------
-
-### YAML module for node.js
-
-```
-npm install js-yaml
-```
-
-
-### CLI executable
-
-If you want to inspect your YAML files from CLI, install js-yaml globally:
-
-```
-npm install -g js-yaml
-```
-
-#### Usage
-
-```
-usage: js-yaml [-h] [-v] [-c] [-t] file
-
-Positional arguments:
-  file           File with YAML document(s)
-
-Optional arguments:
-  -h, --help     Show this help message and exit.
-  -v, --version  Show program's version number and exit.
-  -c, --compact  Display errors in compact mode
-  -t, --trace    Show stack trace on error
-```
-
-
-### Bundled YAML library for browsers
-
-``` html
-<!-- esprima required only for !!js/function -->
-<script src="esprima.js"></script>
-<script src="js-yaml.min.js"></script>
-<script type="text/javascript">
-var doc = jsyaml.load('greeting: hello\nname: world');
-</script>
-```
-
-Browser support was done mostly for online demo. If you find any errors - feel
-free to send pull requests with fixes. Also note, that IE and other old browsers
-needs [es5-shims](https://github.com/kriskowal/es5-shim) to operate.
-
-Notes:
-
-1. We have no resourses to support browserified version. Don't expect it to be
-   well tested. Don't expect fast fixes if something goes wrong there.
-2. `!!js/function` in browser bundle will not work by default. If you really need
-   it - load `esprima` parser first (via amd or directly).
-3. `!!bin` in browser will return `Array`, because browsers do not support
-   node.js `Buffer` and adding Buffer shims is completely useless on practice.
-
-
-API
----
-
-Here we cover the most 'useful' methods. If you need advanced details (creating
-your own tags), see [wiki](https://github.com/nodeca/js-yaml/wiki) and
-[examples](https://github.com/nodeca/js-yaml/tree/master/examples) for more
-info.
-
-``` javascript
-yaml = require('js-yaml');
-fs   = require('fs');
-
-// Get document, or throw exception on error
-try {
-  var doc = yaml.safeLoad(fs.readFileSync('/home/ixti/example.yml', 'utf8'));
-  console.log(doc);
-} catch (e) {
-  console.log(e);
-}
-```
-
-
-### safeLoad (string [ , options ])
-
-**Recommended loading way.** Parses `string` as single YAML document. Returns a JavaScript
-object or throws `YAMLException` on error. By default, does not support regexps,
-functions and undefined. This method is safe for untrusted data.
-
-options:
-
-- `filename` _(default: null)_ - string to be used as a file path in
-  error/warning messages.
-- `onWarning` _(default: null)_ - function to call on warning messages.
-  Loader will throw on warnings if this function is not provided.
-- `schema` _(default: `DEFAULT_SAFE_SCHEMA`)_ - specifies a schema to use.
-  - `FAILSAFE_SCHEMA` - only strings, arrays and plain objects:
-    http://www.yaml.org/spec/1.2/spec.html#id2802346
-  - `JSON_SCHEMA` - all JSON-supported types:
-    http://www.yaml.org/spec/1.2/spec.html#id2803231
-  - `CORE_SCHEMA` - same as `JSON_SCHEMA`:
-    http://www.yaml.org/spec/1.2/spec.html#id2804923
-  - `DEFAULT_SAFE_SCHEMA` - all supported YAML types, without unsafe ones
-    (`!!js/undefined`, `!!js/regexp` and `!!js/function`):
-    http://yaml.org/type/
-  - `DEFAULT_FULL_SCHEMA` - all supported YAML types.
-
-NOTE: This function **does not** understand multi-document sources, it throws
-exception on those.
-
-NOTE: JS-YAML **does not** support schema-specific tag resolution restrictions.
-So, JSON schema is not as strict as defined in the YAML specification.
-It allows numbers in any notaion, use `Null` and `NULL` as `null`, etc.
-Core schema also has no such restrictions. It allows binary notation for integers.
-
-
-### load (string [ , options ])
-
-**Use with care with untrusted sources**. The same as `safeLoad()` but uses
-`DEFAULT_FULL_SCHEMA` by default - adds some JavaScript-specific types:
-`!!js/function`, `!!js/regexp` and `!!js/undefined`. For untrusted sources you
-must additionally validate object structure, to avoid injections:
-
-``` javascript
-var untrusted_code = '"toString": !<tag:yaml.org,2002:js/function> "function (){very_evil_thing();}"';
-
-// I'm just converting that string, what could possibly go wrong?
-require('js-yaml').load(untrusted_code) + ''
-```
-
-
-### safeLoadAll (string, iterator [ , options ])
-
-Same as `safeLoad()`, but understands multi-document sources and apply
-`iterator` to each document.
-
-``` javascript
-var yaml = require('js-yaml');
-
-yaml.safeLoadAll(data, function (doc) {
-  console.log(doc);
-});
-```
-
-
-### loadAll (string, iterator [ , options ])
-
-Same as `safeLoadAll()` but uses `DEFAULT_FULL_SCHEMA` by default.
-
-
-### safeDump (object [ , options ])
-
-Serializes `object` as YAML document. Uses `DEFAULT_SAFE_SCHEMA`, so it will
-throw exception if you try to dump regexps or functions. However, you can
-disable exceptions by `skipInvalid` option.
-
-options:
-
-- `indent` _(default: 2)_ - indentation width to use (in spaces).
-- `skipInvalid` _(default: false)_ - do not throw on invalid types (like function
-  in the safe schema) and skip pairs and single values with such types.
-- `flowLevel` (default: -1) - specifies level of nesting, when to switch from
-  block to flow style for collections. -1 means block style everwhere
-- `styles` - "tag" => "style" map. Each tag may have own set of styles.
-- `schema` _(default: `DEFAULT_SAFE_SCHEMA`)_ specifies a schema to use.
-
-styles:
-
-``` none
-!!null
-  "canonical"   => "~"
-
-!!int
-  "binary"      => "0b1", "0b101010", "0b1110001111010"
-  "octal"       => "01", "052", "016172"
-  "decimal"     => "1", "42", "7290"
-  "hexadecimal" => "0x1", "0x2A", "0x1C7A"
-
-!!null, !!bool, !!float
-  "lowercase"   => "null", "true", "false", ".nan", '.inf'
-  "uppercase"   => "NULL", "TRUE", "FALSE", ".NAN", '.INF'
-  "camelcase"   => "Null", "True", "False", ".NaN", '.Inf'
-```
-
-By default, !!int uses `decimal`, and !!null, !!bool, !!float use `lowercase`.
-
-
-
-### dump (object [ , options ])
-
-Same as `safeDump()` but without limits (uses `DEFAULT_FULL_SCHEMA` by default).
-
-
-Supported YAML types
---------------------
-
-The list of standard YAML tags and corresponding JavaScipt types. See also
-[YAML tag discussion](http://pyyaml.org/wiki/YAMLTagDiscussion) and
-[YAML types repository](http://yaml.org/type/).
-
-```
-!!null ''                   # null
-!!bool 'yes'                # bool
-!!int '3...'                # number
-!!float '3.14...'           # number
-!!binary '...base64...'     # buffer
-!!timestamp 'YYYY-...'      # date
-!!omap [ ... ]              # array of key-value pairs
-!!pairs [ ... ]             # array or array pairs
-!!set { ... }               # array of objects with given keys and null values
-!!str '...'                 # string
-!!seq [ ... ]               # array
-!!map { ... }               # object
-```
-
-**JavaScript-specific tags**
-
-```
-!!js/regexp /pattern/gim            # RegExp
-!!js/undefined ''                   # Undefined
-!!js/function 'function () {...}'   # Function
-```
-
-Caveats
--------
-
-Note, that you use arrays or objects as key in JS-YAML. JS do not allows objects
-or array as keys, and stringifies (by calling .toString method) them at the
-moment of adding them.
-
-``` yaml
----
-? [ foo, bar ]
-: - baz
-? { foo: bar }
-: - baz
-  - baz
-```
-
-``` javascript
-{ "foo,bar": ["baz"], "[object Object]": ["baz", "baz"] }
-```
-
-Also, reading of properties on implicit block mapping keys is not supported yet.
-So, the following YAML document cannot be loaded.
-
-``` yaml
-&anchor foo:
-  foo: bar
-  *anchor: duplicate key
-  baz: bat
-  *anchor: duplicate key
-```
-
-
-Breaking changes in 2.x.x -> 3.x.x
-----------------------------------
-
-If your have not used __custom__ tags or loader classes and not loaded yaml
-files via `require()` - no changes needed. Just upgrade library.
-
-In other case, you should:
-
-1. Replace all occurences of `require('xxxx.yml')` by `fs.readFileSync()` +
-  `yaml.safeLoad()`.
-2. rewrite your custom tags constructors and custom loader
-  classes, to conform new API. See
-  [examples](https://github.com/nodeca/js-yaml/tree/master/examples) and
-  [wiki](https://github.com/nodeca/js-yaml/wiki) for details.
-
-
-License
--------
-
-View the [LICENSE](https://github.com/nodeca/js-yaml/blob/master/LICENSE) file
-(MIT).
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bin/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bin/js-yaml.js
deleted file mode 100755 (executable)
index d6fb6d6..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-#!/usr/bin/env node
-
-
-'use strict';
-
-
-// stdlib
-var fs    = require('fs');
-
-
-// 3rd-party
-var argparse = require('argparse');
-
-
-// internal
-var yaml = require('..');
-
-
-////////////////////////////////////////////////////////////////////////////////
-
-
-var cli = new argparse.ArgumentParser({
-  prog:     'js-yaml',
-  version:  require('../package.json').version,
-  addHelp:  true
-});
-
-
-cli.addArgument(['-c', '--compact'], {
-  help:   'Display errors in compact mode',
-  action: 'storeTrue'
-});
-
-
-// deprecated (not needed after we removed output colors)
-// option suppressed, but not completely removed for compatibility
-cli.addArgument(['-j', '--to-json'], {
-  help:   argparse.Const.SUPPRESS,
-  dest:   'json',
-  action: 'storeTrue'
-});
-
-
-cli.addArgument(['-t', '--trace'], {
-  help:   'Show stack trace on error',
-  action: 'storeTrue'
-});
-
-cli.addArgument(['file'], {
-  help:   'File to read, utf-8 encoded without BOM',
-  nargs:  '?',
-  defaultValue: '-'
-});
-
-
-////////////////////////////////////////////////////////////////////////////////
-
-
-var options = cli.parseArgs();
-
-
-////////////////////////////////////////////////////////////////////////////////
-
-function readFile(filename, encoding, callback) {
-  if (options.file === '-') {
-    // read from stdin
-
-    var chunks = [];
-
-    process.stdin.on('data', function(chunk) {
-      chunks.push(chunk);
-    });
-
-    process.stdin.on('end', function() {
-      return callback(null, Buffer.concat(chunks).toString(encoding));
-    });
-  } else {
-    fs.readFile(filename, encoding, callback);
-  }
-}
-
-readFile(options.file, 'utf8', function (error, input) {
-  var output, isYaml;
-
-  if (error) {
-    if ('ENOENT' === error.code) {
-      console.error('File not found: ' + options.file);
-      process.exit(2);
-    }
-
-    console.error(
-      options.trace && error.stack ||
-      error.message ||
-      String(error));
-
-    process.exit(1);
-  }
-
-  try {
-    output = JSON.parse(input);
-    isYaml = false;
-  } catch (error) {
-    if (error instanceof SyntaxError) {
-      try {
-        output = [];
-        yaml.loadAll(input, function (doc) { output.push(doc); }, {});
-        isYaml = true;
-
-        if (0 === output.length) {
-          output = null;
-        } else if (1 === output.length) {
-          output = output[0];
-        }
-      } catch (error) {
-        if (options.trace && error.stack) {
-          console.error(error.stack);
-        } else {
-          console.error(error.toString(options.compact));
-        }
-
-        process.exit(1);
-      }
-    } else {
-      console.error(
-        options.trace && error.stack ||
-        error.message ||
-        String(error));
-
-      process.exit(1);
-    }
-  }
-
-  if (isYaml) {
-    console.log(JSON.stringify(output, null, '  '));
-  } else {
-    console.log(yaml.dump(output));
-  }
-
-  process.exit(0);
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/bower.json
deleted file mode 100644 (file)
index 010912f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-{
-  "name": "js-yaml",
-  "main": "dist/js-yaml.js",
-  "homepage": "https://github.com/nodeca/js-yaml",
-  "authors": [ "Dervus Grim <dervus.grim@gmail.com>",
-               "Vitaly Puzrin <vitaly@rcdesign.ru>",
-               "Aleksey V Zapparov <ixti@member.fsf.org>",
-               "Martin Grenfell <martin.grenfell@gmail.com>" ],
-  "description": "YAML 1.2 parser and serializer",
-  "keywords": ["yaml", "parser", "serializer", "pyyaml"],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "benchmark",
-    "bower_components",
-    "test",
-    "Makefile",
-    "index*",
-    "package.json"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.js
deleted file mode 100644 (file)
index 890b00e..0000000
+++ /dev/null
@@ -1,3666 +0,0 @@
-/* js-yaml 3.2.7 https://github.com/nodeca/js-yaml */!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.jsyaml=e()}}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
-'use strict';
-
-
-var loader = require('./js-yaml/loader');
-var dumper = require('./js-yaml/dumper');
-
-
-function deprecated(name) {
-  return function () {
-    throw new Error('Function ' + name + ' is deprecated and cannot be used.');
-  };
-}
-
-
-module.exports.Type                = require('./js-yaml/type');
-module.exports.Schema              = require('./js-yaml/schema');
-module.exports.FAILSAFE_SCHEMA     = require('./js-yaml/schema/failsafe');
-module.exports.JSON_SCHEMA         = require('./js-yaml/schema/json');
-module.exports.CORE_SCHEMA         = require('./js-yaml/schema/core');
-module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe');
-module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full');
-module.exports.load                = loader.load;
-module.exports.loadAll             = loader.loadAll;
-module.exports.safeLoad            = loader.safeLoad;
-module.exports.safeLoadAll         = loader.safeLoadAll;
-module.exports.dump                = dumper.dump;
-module.exports.safeDump            = dumper.safeDump;
-module.exports.YAMLException       = require('./js-yaml/exception');
-
-// Deprecared schema names from JS-YAML 2.0.x
-module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe');
-module.exports.SAFE_SCHEMA    = require('./js-yaml/schema/default_safe');
-module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full');
-
-// Deprecated functions from JS-YAML 1.x.x
-module.exports.scan           = deprecated('scan');
-module.exports.parse          = deprecated('parse');
-module.exports.compose        = deprecated('compose');
-module.exports.addConstructor = deprecated('addConstructor');
-
-},{"./js-yaml/dumper":3,"./js-yaml/exception":4,"./js-yaml/loader":5,"./js-yaml/schema":7,"./js-yaml/schema/core":8,"./js-yaml/schema/default_full":9,"./js-yaml/schema/default_safe":10,"./js-yaml/schema/failsafe":11,"./js-yaml/schema/json":12,"./js-yaml/type":13}],2:[function(require,module,exports){
-'use strict';
-
-
-function isNothing(subject) {
-  return (undefined === subject) || (null === subject);
-}
-
-
-function isObject(subject) {
-  return ('object' === typeof subject) && (null !== subject);
-}
-
-
-function toArray(sequence) {
-  if (Array.isArray(sequence)) {
-    return sequence;
-  } else if (isNothing(sequence)) {
-    return [];
-  } else {
-    return [ sequence ];
-  }
-}
-
-
-function extend(target, source) {
-  var index, length, key, sourceKeys;
-
-  if (source) {
-    sourceKeys = Object.keys(source);
-
-    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
-      key = sourceKeys[index];
-      target[key] = source[key];
-    }
-  }
-
-  return target;
-}
-
-
-function repeat(string, count) {
-  var result = '', cycle;
-
-  for (cycle = 0; cycle < count; cycle += 1) {
-    result += string;
-  }
-
-  return result;
-}
-
-
-function isNegativeZero(number) {
-  return (0 === number) && (Number.NEGATIVE_INFINITY === 1 / number);
-}
-
-
-module.exports.isNothing      = isNothing;
-module.exports.isObject       = isObject;
-module.exports.toArray        = toArray;
-module.exports.repeat         = repeat;
-module.exports.isNegativeZero = isNegativeZero;
-module.exports.extend         = extend;
-
-},{}],3:[function(require,module,exports){
-'use strict';
-
-
-var common              = require('./common');
-var YAMLException       = require('./exception');
-var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
-var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
-
-
-var _toString       = Object.prototype.toString;
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-
-var CHAR_TAB                  = 0x09; /* Tab */
-var CHAR_LINE_FEED            = 0x0A; /* LF */
-var CHAR_CARRIAGE_RETURN      = 0x0D; /* CR */
-var CHAR_SPACE                = 0x20; /* Space */
-var CHAR_EXCLAMATION          = 0x21; /* ! */
-var CHAR_DOUBLE_QUOTE         = 0x22; /* " */
-var CHAR_SHARP                = 0x23; /* # */
-var CHAR_PERCENT              = 0x25; /* % */
-var CHAR_AMPERSAND            = 0x26; /* & */
-var CHAR_SINGLE_QUOTE         = 0x27; /* ' */
-var CHAR_ASTERISK             = 0x2A; /* * */
-var CHAR_COMMA                = 0x2C; /* , */
-var CHAR_MINUS                = 0x2D; /* - */
-var CHAR_COLON                = 0x3A; /* : */
-var CHAR_GREATER_THAN         = 0x3E; /* > */
-var CHAR_QUESTION             = 0x3F; /* ? */
-var CHAR_COMMERCIAL_AT        = 0x40; /* @ */
-var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */
-var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */
-var CHAR_GRAVE_ACCENT         = 0x60; /* ` */
-var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */
-var CHAR_VERTICAL_LINE        = 0x7C; /* | */
-var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */
-
-
-var ESCAPE_SEQUENCES = {};
-
-ESCAPE_SEQUENCES[0x00]   = '\\0';
-ESCAPE_SEQUENCES[0x07]   = '\\a';
-ESCAPE_SEQUENCES[0x08]   = '\\b';
-ESCAPE_SEQUENCES[0x09]   = '\\t';
-ESCAPE_SEQUENCES[0x0A]   = '\\n';
-ESCAPE_SEQUENCES[0x0B]   = '\\v';
-ESCAPE_SEQUENCES[0x0C]   = '\\f';
-ESCAPE_SEQUENCES[0x0D]   = '\\r';
-ESCAPE_SEQUENCES[0x1B]   = '\\e';
-ESCAPE_SEQUENCES[0x22]   = '\\"';
-ESCAPE_SEQUENCES[0x5C]   = '\\\\';
-ESCAPE_SEQUENCES[0x85]   = '\\N';
-ESCAPE_SEQUENCES[0xA0]   = '\\_';
-ESCAPE_SEQUENCES[0x2028] = '\\L';
-ESCAPE_SEQUENCES[0x2029] = '\\P';
-
-
-var DEPRECATED_BOOLEANS_SYNTAX = [
-  'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',
-  'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'
-];
-
-
-function compileStyleMap(schema, map) {
-  var result, keys, index, length, tag, style, type;
-
-  if (null === map) {
-    return {};
-  }
-
-  result = {};
-  keys = Object.keys(map);
-
-  for (index = 0, length = keys.length; index < length; index += 1) {
-    tag = keys[index];
-    style = String(map[tag]);
-
-    if ('!!' === tag.slice(0, 2)) {
-      tag = 'tag:yaml.org,2002:' + tag.slice(2);
-    }
-
-    type = schema.compiledTypeMap[tag];
-
-    if (type && _hasOwnProperty.call(type.styleAliases, style)) {
-      style = type.styleAliases[style];
-    }
-
-    result[tag] = style;
-  }
-
-  return result;
-}
-
-
-function encodeHex(character) {
-  var string, handle, length;
-
-  string = character.toString(16).toUpperCase();
-
-  if (character <= 0xFF) {
-    handle = 'x';
-    length = 2;
-  } else if (character <= 0xFFFF) {
-    handle = 'u';
-    length = 4;
-  } else if (character <= 0xFFFFFFFF) {
-    handle = 'U';
-    length = 8;
-  } else {
-    throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');
-  }
-
-  return '\\' + handle + common.repeat('0', length - string.length) + string;
-}
-
-
-function State(options) {
-  this.schema      = options['schema'] || DEFAULT_FULL_SCHEMA;
-  this.indent      = Math.max(1, (options['indent'] || 2));
-  this.skipInvalid = options['skipInvalid'] || false;
-  this.flowLevel   = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);
-  this.styleMap    = compileStyleMap(this.schema, options['styles'] || null);
-
-  this.implicitTypes = this.schema.compiledImplicit;
-  this.explicitTypes = this.schema.compiledExplicit;
-
-  this.tag = null;
-  this.result = '';
-
-  this.duplicates = [];
-  this.usedDuplicates = null;
-}
-
-
-function generateNextLine(state, level) {
-  return '\n' + common.repeat(' ', state.indent * level);
-}
-
-function testImplicitResolving(state, str) {
-  var index, length, type;
-
-  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
-    type = state.implicitTypes[index];
-
-    if (type.resolve(str)) {
-      return true;
-    }
-  }
-
-  return false;
-}
-
-function writeScalar(state, object) {
-  var isQuoted, checkpoint, position, length, character, first;
-
-  state.dump = '';
-  isQuoted = false;
-  checkpoint = 0;
-  first = object.charCodeAt(0) || 0;
-
-  if (-1 !== DEPRECATED_BOOLEANS_SYNTAX.indexOf(object)) {
-    // Ensure compatibility with YAML 1.0/1.1 loaders.
-    isQuoted = true;
-  } else if (0 === object.length) {
-    // Quote empty string
-    isQuoted = true;
-  } else if (CHAR_SPACE    === first ||
-             CHAR_SPACE    === object.charCodeAt(object.length - 1)) {
-    isQuoted = true;
-  } else if (CHAR_MINUS    === first ||
-             CHAR_QUESTION === first) {
-    // Don't check second symbol for simplicity
-    isQuoted = true;
-  }
-
-  for (position = 0, length = object.length; position < length; position += 1) {
-    character = object.charCodeAt(position);
-
-    if (!isQuoted) {
-      if (CHAR_TAB                  === character ||
-          CHAR_LINE_FEED            === character ||
-          CHAR_CARRIAGE_RETURN      === character ||
-          CHAR_COMMA                === character ||
-          CHAR_LEFT_SQUARE_BRACKET  === character ||
-          CHAR_RIGHT_SQUARE_BRACKET === character ||
-          CHAR_LEFT_CURLY_BRACKET   === character ||
-          CHAR_RIGHT_CURLY_BRACKET  === character ||
-          CHAR_SHARP                === character ||
-          CHAR_AMPERSAND            === character ||
-          CHAR_ASTERISK             === character ||
-          CHAR_EXCLAMATION          === character ||
-          CHAR_VERTICAL_LINE        === character ||
-          CHAR_GREATER_THAN         === character ||
-          CHAR_SINGLE_QUOTE         === character ||
-          CHAR_DOUBLE_QUOTE         === character ||
-          CHAR_PERCENT              === character ||
-          CHAR_COMMERCIAL_AT        === character ||
-          CHAR_COLON                === character ||
-          CHAR_GRAVE_ACCENT         === character) {
-        isQuoted = true;
-      }
-    }
-
-    if (ESCAPE_SEQUENCES[character] ||
-        !((0x00020 <= character && character <= 0x00007E) ||
-          (0x00085 === character)                         ||
-          (0x000A0 <= character && character <= 0x00D7FF) ||
-          (0x0E000 <= character && character <= 0x00FFFD) ||
-          (0x10000 <= character && character <= 0x10FFFF))) {
-      state.dump += object.slice(checkpoint, position);
-      state.dump += ESCAPE_SEQUENCES[character] || encodeHex(character);
-      checkpoint = position + 1;
-      isQuoted = true;
-    }
-  }
-
-  if (checkpoint < position) {
-    state.dump += object.slice(checkpoint, position);
-  }
-
-  if (!isQuoted && testImplicitResolving(state, state.dump)) {
-    isQuoted = true;
-  }
-
-  if (isQuoted) {
-    state.dump = '"' + state.dump + '"';
-  }
-}
-
-function writeFlowSequence(state, level, object) {
-  var _result = '',
-      _tag    = state.tag,
-      index,
-      length;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    // Write only valid elements.
-    if (writeNode(state, level, object[index], false, false)) {
-      if (0 !== index) {
-        _result += ', ';
-      }
-      _result += state.dump;
-    }
-  }
-
-  state.tag = _tag;
-  state.dump = '[' + _result + ']';
-}
-
-function writeBlockSequence(state, level, object, compact) {
-  var _result = '',
-      _tag    = state.tag,
-      index,
-      length;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    // Write only valid elements.
-    if (writeNode(state, level + 1, object[index], true, true)) {
-      if (!compact || 0 !== index) {
-        _result += generateNextLine(state, level);
-      }
-      _result += '- ' + state.dump;
-    }
-  }
-
-  state.tag = _tag;
-  state.dump = _result || '[]'; // Empty sequence if no valid values.
-}
-
-function writeFlowMapping(state, level, object) {
-  var _result       = '',
-      _tag          = state.tag,
-      objectKeyList = Object.keys(object),
-      index,
-      length,
-      objectKey,
-      objectValue,
-      pairBuffer;
-
-  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-    pairBuffer = '';
-
-    if (0 !== index) {
-      pairBuffer += ', ';
-    }
-
-    objectKey = objectKeyList[index];
-    objectValue = object[objectKey];
-
-    if (!writeNode(state, level, objectKey, false, false)) {
-      continue; // Skip this pair because of invalid key;
-    }
-
-    if (state.dump.length > 1024) {
-      pairBuffer += '? ';
-    }
-
-    pairBuffer += state.dump + ': ';
-
-    if (!writeNode(state, level, objectValue, false, false)) {
-      continue; // Skip this pair because of invalid value.
-    }
-
-    pairBuffer += state.dump;
-
-    // Both key and value are valid.
-    _result += pairBuffer;
-  }
-
-  state.tag = _tag;
-  state.dump = '{' + _result + '}';
-}
-
-function writeBlockMapping(state, level, object, compact) {
-  var _result       = '',
-      _tag          = state.tag,
-      objectKeyList = Object.keys(object),
-      index,
-      length,
-      objectKey,
-      objectValue,
-      explicitPair,
-      pairBuffer;
-
-  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-    pairBuffer = '';
-
-    if (!compact || 0 !== index) {
-      pairBuffer += generateNextLine(state, level);
-    }
-
-    objectKey = objectKeyList[index];
-    objectValue = object[objectKey];
-
-    if (!writeNode(state, level + 1, objectKey, true, true)) {
-      continue; // Skip this pair because of invalid key.
-    }
-
-    explicitPair = (null !== state.tag && '?' !== state.tag) ||
-                   (state.dump && state.dump.length > 1024);
-
-    if (explicitPair) {
-      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
-        pairBuffer += '?';
-      } else {
-        pairBuffer += '? ';
-      }
-    }
-
-    pairBuffer += state.dump;
-
-    if (explicitPair) {
-      pairBuffer += generateNextLine(state, level);
-    }
-
-    if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {
-      continue; // Skip this pair because of invalid value.
-    }
-
-    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
-      pairBuffer += ':';
-    } else {
-      pairBuffer += ': ';
-    }
-
-    pairBuffer += state.dump;
-
-    // Both key and value are valid.
-    _result += pairBuffer;
-  }
-
-  state.tag = _tag;
-  state.dump = _result || '{}'; // Empty mapping if no valid pairs.
-}
-
-function detectType(state, object, explicit) {
-  var _result, typeList, index, length, type, style;
-
-  typeList = explicit ? state.explicitTypes : state.implicitTypes;
-
-  for (index = 0, length = typeList.length; index < length; index += 1) {
-    type = typeList[index];
-
-    if ((type.instanceOf  || type.predicate) &&
-        (!type.instanceOf || (('object' === typeof object) && (object instanceof type.instanceOf))) &&
-        (!type.predicate  || type.predicate(object))) {
-
-      state.tag = explicit ? type.tag : '?';
-
-      if (type.represent) {
-        style = state.styleMap[type.tag] || type.defaultStyle;
-
-        if ('[object Function]' === _toString.call(type.represent)) {
-          _result = type.represent(object, style);
-        } else if (_hasOwnProperty.call(type.represent, style)) {
-          _result = type.represent[style](object, style);
-        } else {
-          throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style');
-        }
-
-        state.dump = _result;
-      }
-
-      return true;
-    }
-  }
-
-  return false;
-}
-
-// Serializes `object` and writes it to global `result`.
-// Returns true on success, or false on invalid object.
-//
-function writeNode(state, level, object, block, compact) {
-  state.tag = null;
-  state.dump = object;
-
-  if (!detectType(state, object, false)) {
-    detectType(state, object, true);
-  }
-
-  var type = _toString.call(state.dump);
-
-  if (block) {
-    block = (0 > state.flowLevel || state.flowLevel > level);
-  }
-
-  if ((null !== state.tag && '?' !== state.tag) || (2 !== state.indent && level > 0)) {
-    compact = false;
-  }
-
-  var objectOrArray = '[object Object]' === type || '[object Array]' === type,
-      duplicateIndex,
-      duplicate;
-
-  if (objectOrArray) {
-    duplicateIndex = state.duplicates.indexOf(object);
-    duplicate = duplicateIndex !== -1;
-  }
-
-  if (duplicate && state.usedDuplicates[duplicateIndex]) {
-    state.dump = '*ref_' + duplicateIndex;
-  } else {
-    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
-      state.usedDuplicates[duplicateIndex] = true;
-    }
-    if ('[object Object]' === type) {
-      if (block && (0 !== Object.keys(state.dump).length)) {
-        writeBlockMapping(state, level, state.dump, compact);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + (0 === level ? '\n' : '') + state.dump;
-        }
-      } else {
-        writeFlowMapping(state, level, state.dump);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
-        }
-      }
-    } else if ('[object Array]' === type) {
-      if (block && (0 !== state.dump.length)) {
-        writeBlockSequence(state, level, state.dump, compact);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + (0 === level ? '\n' : '') + state.dump;
-        }
-      } else {
-        writeFlowSequence(state, level, state.dump);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
-        }
-      }
-    } else if ('[object String]' === type) {
-      if ('?' !== state.tag) {
-        writeScalar(state, state.dump);
-      }
-    } else if (state.skipInvalid) {
-      return false;
-    } else {
-      throw new YAMLException('unacceptable kind of an object to dump ' + type);
-    }
-
-    if (null !== state.tag && '?' !== state.tag) {
-      state.dump = '!<' + state.tag + '> ' + state.dump;
-    }
-  }
-
-  return true;
-}
-
-function getDuplicateReferences(object, state) {
-  var objects = [],
-      duplicatesIndexes = [],
-      index,
-      length;
-
-  inspectNode(object, objects, duplicatesIndexes);
-
-  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
-    state.duplicates.push(objects[duplicatesIndexes[index]]);
-  }
-  state.usedDuplicates = new Array(length);
-}
-
-function inspectNode(object, objects, duplicatesIndexes) {
-  var type = _toString.call(object),
-      objectKeyList,
-      index,
-      length;
-
-  if (null !== object && 'object' === typeof object) {
-    index = objects.indexOf(object);
-    if (-1 !== index) {
-      if (-1 === duplicatesIndexes.indexOf(index)) {
-        duplicatesIndexes.push(index);
-      }
-    } else {
-      objects.push(object);
-    
-      if(Array.isArray(object)) {
-        for (index = 0, length = object.length; index < length; index += 1) {
-          inspectNode(object[index], objects, duplicatesIndexes);
-        }
-      } else {
-        objectKeyList = Object.keys(object);
-
-        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
-        }
-      }
-    }
-  }
-}
-
-function dump(input, options) {
-  options = options || {};
-
-  var state = new State(options);
-
-  getDuplicateReferences(input, state);
-
-  if (writeNode(state, 0, input, true, true)) {
-    return state.dump + '\n';
-  } else {
-    return '';
-  }
-}
-
-
-function safeDump(input, options) {
-  return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-module.exports.dump     = dump;
-module.exports.safeDump = safeDump;
-
-},{"./common":2,"./exception":4,"./schema/default_full":9,"./schema/default_safe":10}],4:[function(require,module,exports){
-'use strict';
-
-
-function YAMLException(reason, mark) {
-  this.name    = 'YAMLException';
-  this.reason  = reason;
-  this.mark    = mark;
-  this.message = this.toString(false);
-}
-
-
-YAMLException.prototype.toString = function toString(compact) {
-  var result;
-
-  result = 'JS-YAML: ' + (this.reason || '(unknown reason)');
-
-  if (!compact && this.mark) {
-    result += ' ' + this.mark.toString();
-  }
-
-  return result;
-};
-
-
-module.exports = YAMLException;
-
-},{}],5:[function(require,module,exports){
-'use strict';
-
-
-var common              = require('./common');
-var YAMLException       = require('./exception');
-var Mark                = require('./mark');
-var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
-var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
-
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-
-var CONTEXT_FLOW_IN   = 1;
-var CONTEXT_FLOW_OUT  = 2;
-var CONTEXT_BLOCK_IN  = 3;
-var CONTEXT_BLOCK_OUT = 4;
-
-
-var CHOMPING_CLIP  = 1;
-var CHOMPING_STRIP = 2;
-var CHOMPING_KEEP  = 3;
-
-
-var PATTERN_NON_PRINTABLE         = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uD800-\uDFFF\uFFFE\uFFFF]/;
-var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
-var PATTERN_FLOW_INDICATORS       = /[,\[\]\{\}]/;
-var PATTERN_TAG_HANDLE            = /^(?:!|!!|![a-z\-]+!)$/i;
-var PATTERN_TAG_URI               = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
-
-
-function is_EOL(c) {
-  return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);
-}
-
-function is_WHITE_SPACE(c) {
-  return (c === 0x09/* Tab */) || (c === 0x20/* Space */);
-}
-
-function is_WS_OR_EOL(c) {
-  return (c === 0x09/* Tab */) ||
-         (c === 0x20/* Space */) ||
-         (c === 0x0A/* LF */) ||
-         (c === 0x0D/* CR */);
-}
-
-function is_FLOW_INDICATOR(c) {
-  return 0x2C/* , */ === c ||
-         0x5B/* [ */ === c ||
-         0x5D/* ] */ === c ||
-         0x7B/* { */ === c ||
-         0x7D/* } */ === c;
-}
-
-function fromHexCode(c) {
-  var lc;
-
-  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
-    return c - 0x30;
-  }
-
-  lc = c | 0x20;
-  if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {
-    return lc - 0x61 + 10;
-  }
-
-  return -1;
-}
-
-function escapedHexLen(c) {
-  if (c === 0x78/* x */) { return 2; }
-  if (c === 0x75/* u */) { return 4; }
-  if (c === 0x55/* U */) { return 8; }
-  return 0;
-}
-
-function fromDecimalCode(c) {
-  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
-    return c - 0x30;
-  }
-
-  return -1;
-}
-
-function simpleEscapeSequence(c) {
- return (c === 0x30/* 0 */) ? '\x00' :
-        (c === 0x61/* a */) ? '\x07' :
-        (c === 0x62/* b */) ? '\x08' :
-        (c === 0x74/* t */) ? '\x09' :
-        (c === 0x09/* Tab */) ? '\x09' :
-        (c === 0x6E/* n */) ? '\x0A' :
-        (c === 0x76/* v */) ? '\x0B' :
-        (c === 0x66/* f */) ? '\x0C' :
-        (c === 0x72/* r */) ? '\x0D' :
-        (c === 0x65/* e */) ? '\x1B' :
-        (c === 0x20/* Space */) ? ' ' :
-        (c === 0x22/* " */) ? '\x22' :
-        (c === 0x2F/* / */) ? '/' :
-        (c === 0x5C/* \ */) ? '\x5C' :
-        (c === 0x4E/* N */) ? '\x85' :
-        (c === 0x5F/* _ */) ? '\xA0' :
-        (c === 0x4C/* L */) ? '\u2028' :
-        (c === 0x50/* P */) ? '\u2029' : '';
-}
-
-function charFromCodepoint(c) {
-  if (c <= 0xFFFF) {
-    return String.fromCharCode(c);
-  } else {
-    // Encode UTF-16 surrogate pair
-    // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF
-    return String.fromCharCode(((c - 0x010000) >> 10) + 0xD800,
-                               ((c - 0x010000) & 0x03FF) + 0xDC00);
-  }
-}
-
-var simpleEscapeCheck = new Array(256); // integer, for fast access
-var simpleEscapeMap = new Array(256);
-for (var i = 0; i < 256; i++) {
-  simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
-  simpleEscapeMap[i] = simpleEscapeSequence(i);
-}
-
-
-function State(input, options) {
-  this.input = input;
-
-  this.filename  = options['filename']  || null;
-  this.schema    = options['schema']    || DEFAULT_FULL_SCHEMA;
-  this.onWarning = options['onWarning'] || null;
-  this.legacy    = options['legacy']    || false;
-
-  this.implicitTypes = this.schema.compiledImplicit;
-  this.typeMap       = this.schema.compiledTypeMap;
-
-  this.length     = input.length;
-  this.position   = 0;
-  this.line       = 0;
-  this.lineStart  = 0;
-  this.lineIndent = 0;
-
-  this.documents = [];
-
-  /*
-  this.version;
-  this.checkLineBreaks;
-  this.tagMap;
-  this.anchorMap;
-  this.tag;
-  this.anchor;
-  this.kind;
-  this.result;*/
-
-}
-
-
-function generateError(state, message) {
-  return new YAMLException(
-    message,
-    new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));
-}
-
-function throwError(state, message) {
-  throw generateError(state, message);
-}
-
-function throwWarning(state, message) {
-  var error = generateError(state, message);
-
-  if (state.onWarning) {
-    state.onWarning.call(null, error);
-  } else {
-    throw error;
-  }
-}
-
-
-var directiveHandlers = {
-
-  'YAML': function handleYamlDirective(state, name, args) {
-
-      var match, major, minor;
-
-      if (null !== state.version) {
-        throwError(state, 'duplication of %YAML directive');
-      }
-
-      if (1 !== args.length) {
-        throwError(state, 'YAML directive accepts exactly one argument');
-      }
-
-      match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
-
-      if (null === match) {
-        throwError(state, 'ill-formed argument of the YAML directive');
-      }
-
-      major = parseInt(match[1], 10);
-      minor = parseInt(match[2], 10);
-
-      if (1 !== major) {
-        throwError(state, 'unacceptable YAML version of the document');
-      }
-
-      state.version = args[0];
-      state.checkLineBreaks = (minor < 2);
-
-      if (1 !== minor && 2 !== minor) {
-        throwWarning(state, 'unsupported YAML version of the document');
-      }
-    },
-
-  'TAG': function handleTagDirective(state, name, args) {
-
-      var handle, prefix;
-
-      if (2 !== args.length) {
-        throwError(state, 'TAG directive accepts exactly two arguments');
-      }
-
-      handle = args[0];
-      prefix = args[1];
-
-      if (!PATTERN_TAG_HANDLE.test(handle)) {
-        throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');
-      }
-
-      if (_hasOwnProperty.call(state.tagMap, handle)) {
-        throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
-      }
-
-      if (!PATTERN_TAG_URI.test(prefix)) {
-        throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');
-      }
-
-      state.tagMap[handle] = prefix;
-    }
-};
-
-
-function captureSegment(state, start, end, checkJson) {
-  var _position, _length, _character, _result;
-
-  if (start < end) {
-    _result = state.input.slice(start, end);
-
-    if (checkJson) {
-      for (_position = 0, _length = _result.length;
-           _position < _length;
-           _position += 1) {
-        _character = _result.charCodeAt(_position);
-        if (!(0x09 === _character ||
-              0x20 <= _character && _character <= 0x10FFFF)) {
-          throwError(state, 'expected valid JSON character');
-        }
-      }
-    }
-
-    state.result += _result;
-  }
-}
-
-function mergeMappings(state, destination, source) {
-  var sourceKeys, key, index, quantity;
-
-  if (!common.isObject(source)) {
-    throwError(state, 'cannot merge mappings; the provided source object is unacceptable');
-  }
-
-  sourceKeys = Object.keys(source);
-
-  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
-    key = sourceKeys[index];
-
-    if (!_hasOwnProperty.call(destination, key)) {
-      destination[key] = source[key];
-    }
-  }
-}
-
-function storeMappingPair(state, _result, keyTag, keyNode, valueNode) {
-  var index, quantity;
-
-  keyNode = String(keyNode);
-
-  if (null === _result) {
-    _result = {};
-  }
-
-  if ('tag:yaml.org,2002:merge' === keyTag) {
-    if (Array.isArray(valueNode)) {
-      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
-        mergeMappings(state, _result, valueNode[index]);
-      }
-    } else {
-      mergeMappings(state, _result, valueNode);
-    }
-  } else {
-    _result[keyNode] = valueNode;
-  }
-
-  return _result;
-}
-
-function readLineBreak(state) {
-  var ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x0A/* LF */ === ch) {
-    state.position++;
-  } else if (0x0D/* CR */ === ch) {
-    state.position++;
-    if (0x0A/* LF */ === state.input.charCodeAt(state.position)) {
-      state.position++;
-    }
-  } else {
-    throwError(state, 'a line break is expected');
-  }
-
-  state.line += 1;
-  state.lineStart = state.position;
-}
-
-function skipSeparationSpace(state, allowComments, checkIndent) {
-  var lineBreaks = 0,
-      ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-    while (is_WHITE_SPACE(ch)) {
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    if (allowComments && 0x23/* # */ === ch) {
-      do {
-        ch = state.input.charCodeAt(++state.position);
-      } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && 0 !== ch);
-    }
-
-    if (is_EOL(ch)) {
-      readLineBreak(state);
-
-      ch = state.input.charCodeAt(state.position);
-      lineBreaks++;
-      state.lineIndent = 0;
-
-      while (0x20/* Space */ === ch) {
-        state.lineIndent++;
-        ch = state.input.charCodeAt(++state.position);
-      }
-    } else {
-      break;
-    }
-  }
-
-  if (-1 !== checkIndent && 0 !== lineBreaks && state.lineIndent < checkIndent) {
-    throwWarning(state, 'deficient indentation');
-  }
-
-  return lineBreaks;
-}
-
-function testDocumentSeparator(state) {
-  var _position = state.position,
-      ch;
-
-  ch = state.input.charCodeAt(_position);
-
-  // Condition state.position === state.lineStart is tested
-  // in parent on each call, for efficiency. No needs to test here again.
-  if ((0x2D/* - */ === ch || 0x2E/* . */ === ch) &&
-      state.input.charCodeAt(_position + 1) === ch &&
-      state.input.charCodeAt(_position+ 2) === ch) {
-
-    _position += 3;
-
-    ch = state.input.charCodeAt(_position);
-
-    if (ch === 0 || is_WS_OR_EOL(ch)) {
-      return true;
-    }
-  }
-
-  return false;
-}
-
-function writeFoldedLines(state, count) {
-  if (1 === count) {
-    state.result += ' ';
-  } else if (count > 1) {
-    state.result += common.repeat('\n', count - 1);
-  }
-}
-
-
-function readPlainScalar(state, nodeIndent, withinFlowCollection) {
-  var preceding,
-      following,
-      captureStart,
-      captureEnd,
-      hasPendingContent,
-      _line,
-      _lineStart,
-      _lineIndent,
-      _kind = state.kind,
-      _result = state.result,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (is_WS_OR_EOL(ch)             ||
-      is_FLOW_INDICATOR(ch)        ||
-      0x23/* # */           === ch ||
-      0x26/* & */           === ch ||
-      0x2A/* * */           === ch ||
-      0x21/* ! */           === ch ||
-      0x7C/* | */           === ch ||
-      0x3E/* > */           === ch ||
-      0x27/* ' */           === ch ||
-      0x22/* " */           === ch ||
-      0x25/* % */           === ch ||
-      0x40/* @ */           === ch ||
-      0x60/* ` */           === ch) {
-    return false;
-  }
-
-  if (0x3F/* ? */ === ch || 0x2D/* - */ === ch) {
-    following = state.input.charCodeAt(state.position + 1);
-
-    if (is_WS_OR_EOL(following) ||
-        withinFlowCollection && is_FLOW_INDICATOR(following)) {
-      return false;
-    }
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  captureStart = captureEnd = state.position;
-  hasPendingContent = false;
-
-  while (0 !== ch) {
-    if (0x3A/* : */ === ch) {
-      following = state.input.charCodeAt(state.position+1);
-
-      if (is_WS_OR_EOL(following) ||
-          withinFlowCollection && is_FLOW_INDICATOR(following)) {
-        break;
-      }
-
-    } else if (0x23/* # */ === ch) {
-      preceding = state.input.charCodeAt(state.position - 1);
-
-      if (is_WS_OR_EOL(preceding)) {
-        break;
-      }
-
-    } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||
-               withinFlowCollection && is_FLOW_INDICATOR(ch)) {
-      break;
-
-    } else if (is_EOL(ch)) {
-      _line = state.line;
-      _lineStart = state.lineStart;
-      _lineIndent = state.lineIndent;
-      skipSeparationSpace(state, false, -1);
-
-      if (state.lineIndent >= nodeIndent) {
-        hasPendingContent = true;
-        ch = state.input.charCodeAt(state.position);
-        continue;
-      } else {
-        state.position = captureEnd;
-        state.line = _line;
-        state.lineStart = _lineStart;
-        state.lineIndent = _lineIndent;
-        break;
-      }
-    }
-
-    if (hasPendingContent) {
-      captureSegment(state, captureStart, captureEnd, false);
-      writeFoldedLines(state, state.line - _line);
-      captureStart = captureEnd = state.position;
-      hasPendingContent = false;
-    }
-
-    if (!is_WHITE_SPACE(ch)) {
-      captureEnd = state.position + 1;
-    }
-
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  captureSegment(state, captureStart, captureEnd, false);
-
-  if (state.result) {
-    return true;
-  } else {
-    state.kind = _kind;
-    state.result = _result;
-    return false;
-  }
-}
-
-function readSingleQuotedScalar(state, nodeIndent) {
-  var ch,
-      captureStart, captureEnd;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x27/* ' */ !== ch) {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  state.position++;
-  captureStart = captureEnd = state.position;
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    if (0x27/* ' */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      ch = state.input.charCodeAt(++state.position);
-
-      if (0x27/* ' */ === ch) {
-        captureStart = captureEnd = state.position;
-        state.position++;
-      } else {
-        return true;
-      }
-
-    } else if (is_EOL(ch)) {
-      captureSegment(state, captureStart, captureEnd, true);
-      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
-      captureStart = captureEnd = state.position;
-
-    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
-      throwError(state, 'unexpected end of the document within a single quoted scalar');
-
-    } else {
-      state.position++;
-      captureEnd = state.position;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a single quoted scalar');
-}
-
-function readDoubleQuotedScalar(state, nodeIndent) {
-  var captureStart,
-      captureEnd,
-      hexLength,
-      hexResult,
-      tmp, tmpEsc,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x22/* " */ !== ch) {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  state.position++;
-  captureStart = captureEnd = state.position;
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    if (0x22/* " */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      state.position++;
-      return true;
-
-    } else if (0x5C/* \ */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      ch = state.input.charCodeAt(++state.position);
-
-      if (is_EOL(ch)) {
-        skipSeparationSpace(state, false, nodeIndent);
-
-        //TODO: rework to inline fn with no type cast?
-      } else if (ch < 256 && simpleEscapeCheck[ch]) {
-        state.result += simpleEscapeMap[ch];
-        state.position++;
-
-      } else if ((tmp = escapedHexLen(ch)) > 0) {
-        hexLength = tmp;
-        hexResult = 0;
-
-        for (; hexLength > 0; hexLength--) {
-          ch = state.input.charCodeAt(++state.position);
-
-          if ((tmp = fromHexCode(ch)) >= 0) {
-            hexResult = (hexResult << 4) + tmp;
-
-          } else {
-            throwError(state, 'expected hexadecimal character');
-          }
-        }
-
-        state.result += charFromCodepoint(hexResult);
-
-        state.position++;
-
-      } else {
-        throwError(state, 'unknown escape sequence');
-      }
-
-      captureStart = captureEnd = state.position;
-
-    } else if (is_EOL(ch)) {
-      captureSegment(state, captureStart, captureEnd, true);
-      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
-      captureStart = captureEnd = state.position;
-
-    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
-      throwError(state, 'unexpected end of the document within a double quoted scalar');
-
-    } else {
-      state.position++;
-      captureEnd = state.position;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a double quoted scalar');
-}
-
-function readFlowCollection(state, nodeIndent) {
-  var readNext = true,
-      _line,
-      _tag     = state.tag,
-      _result,
-      _anchor  = state.anchor,
-      following,
-      terminator,
-      isPair,
-      isExplicitPair,
-      isMapping,
-      keyNode,
-      keyTag,
-      valueNode,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (ch === 0x5B/* [ */) {
-    terminator = 0x5D/* ] */;
-    isMapping = false;
-    _result = [];
-  } else if (ch === 0x7B/* { */) {
-    terminator = 0x7D/* } */;
-    isMapping = true;
-    _result = {};
-  } else {
-    return false;
-  }
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-
-  while (0 !== ch) {
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (ch === terminator) {
-      state.position++;
-      state.tag = _tag;
-      state.anchor = _anchor;
-      state.kind = isMapping ? 'mapping' : 'sequence';
-      state.result = _result;
-      return true;
-    } else if (!readNext) {
-      throwError(state, 'missed comma between flow collection entries');
-    }
-
-    keyTag = keyNode = valueNode = null;
-    isPair = isExplicitPair = false;
-
-    if (0x3F/* ? */ === ch) {
-      following = state.input.charCodeAt(state.position + 1);
-
-      if (is_WS_OR_EOL(following)) {
-        isPair = isExplicitPair = true;
-        state.position++;
-        skipSeparationSpace(state, true, nodeIndent);
-      }
-    }
-
-    _line = state.line;
-    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
-    keyTag = state.tag;
-    keyNode = state.result;
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if ((isExplicitPair || state.line === _line) && 0x3A/* : */ === ch) {
-      isPair = true;
-      ch = state.input.charCodeAt(++state.position);
-      skipSeparationSpace(state, true, nodeIndent);
-      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
-      valueNode = state.result;
-    }
-
-    if (isMapping) {
-      storeMappingPair(state, _result, keyTag, keyNode, valueNode);
-    } else if (isPair) {
-      _result.push(storeMappingPair(state, null, keyTag, keyNode, valueNode));
-    } else {
-      _result.push(keyNode);
-    }
-
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (0x2C/* , */ === ch) {
-      readNext = true;
-      ch = state.input.charCodeAt(++state.position);
-    } else {
-      readNext = false;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a flow collection');
-}
-
-function readBlockScalar(state, nodeIndent) {
-  var captureStart,
-      folding,
-      chomping       = CHOMPING_CLIP,
-      detectedIndent = false,
-      textIndent     = nodeIndent,
-      emptyLines     = 0,
-      atMoreIndented = false,
-      tmp,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (ch === 0x7C/* | */) {
-    folding = false;
-  } else if (ch === 0x3E/* > */) {
-    folding = true;
-  } else {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-
-  while (0 !== ch) {
-    ch = state.input.charCodeAt(++state.position);
-
-    if (0x2B/* + */ === ch || 0x2D/* - */ === ch) {
-      if (CHOMPING_CLIP === chomping) {
-        chomping = (0x2B/* + */ === ch) ? CHOMPING_KEEP : CHOMPING_STRIP;
-      } else {
-        throwError(state, 'repeat of a chomping mode identifier');
-      }
-
-    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
-      if (tmp === 0) {
-        throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');
-      } else if (!detectedIndent) {
-        textIndent = nodeIndent + tmp - 1;
-        detectedIndent = true;
-      } else {
-        throwError(state, 'repeat of an indentation width identifier');
-      }
-
-    } else {
-      break;
-    }
-  }
-
-  if (is_WHITE_SPACE(ch)) {
-    do { ch = state.input.charCodeAt(++state.position); }
-    while (is_WHITE_SPACE(ch));
-
-    if (0x23/* # */ === ch) {
-      do { ch = state.input.charCodeAt(++state.position); }
-      while (!is_EOL(ch) && (0 !== ch));
-    }
-  }
-
-  while (0 !== ch) {
-    readLineBreak(state);
-    state.lineIndent = 0;
-
-    ch = state.input.charCodeAt(state.position);
-
-    while ((!detectedIndent || state.lineIndent < textIndent) &&
-           (0x20/* Space */ === ch)) {
-      state.lineIndent++;
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    if (!detectedIndent && state.lineIndent > textIndent) {
-      textIndent = state.lineIndent;
-    }
-
-    if (is_EOL(ch)) {
-      emptyLines++;
-      continue;
-    }
-
-    // End of the scalar.
-    if (state.lineIndent < textIndent) {
-
-      // Perform the chomping.
-      if (chomping === CHOMPING_KEEP) {
-        state.result += common.repeat('\n', emptyLines);
-      } else if (chomping === CHOMPING_CLIP) {
-        if (detectedIndent) { // i.e. only if the scalar is not empty.
-          state.result += '\n';
-        }
-      }
-
-      // Break this `while` cycle and go to the funciton's epilogue.
-      break;
-    }
-
-    // Folded style: use fancy rules to handle line breaks.
-    if (folding) {
-
-      // Lines starting with white space characters (more-indented lines) are not folded.
-      if (is_WHITE_SPACE(ch)) {
-        atMoreIndented = true;
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // End of more-indented block.
-      } else if (atMoreIndented) {
-        atMoreIndented = false;
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // Just one line break - perceive as the same line.
-      } else if (0 === emptyLines) {
-        if (detectedIndent) { // i.e. only if we have already read some scalar content.
-          state.result += ' ';
-        }
-
-      // Several line breaks - perceive as different lines.
-      } else {
-        state.result += common.repeat('\n', emptyLines);
-      }
-
-    // Literal style: just add exact number of line breaks between content lines.
-    } else {
-
-      // If current line isn't the first one - count line break from the last content line.
-      if (detectedIndent) {
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // In case of the first content line - count only empty lines.
-      } else {
-        state.result += common.repeat('\n', emptyLines);
-      }
-    }
-
-    detectedIndent = true;
-    emptyLines = 0;
-    captureStart = state.position;
-
-    while (!is_EOL(ch) && (0 !== ch))
-    { ch = state.input.charCodeAt(++state.position); }
-
-    captureSegment(state, captureStart, state.position, false);
-  }
-
-  return true;
-}
-
-function readBlockSequence(state, nodeIndent) {
-  var _line,
-      _tag      = state.tag,
-      _anchor   = state.anchor,
-      _result   = [],
-      following,
-      detected  = false,
-      ch;
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-
-    if (0x2D/* - */ !== ch) {
-      break;
-    }
-
-    following = state.input.charCodeAt(state.position + 1);
-
-    if (!is_WS_OR_EOL(following)) {
-      break;
-    }
-
-    detected = true;
-    state.position++;
-
-    if (skipSeparationSpace(state, true, -1)) {
-      if (state.lineIndent <= nodeIndent) {
-        _result.push(null);
-        ch = state.input.charCodeAt(state.position);
-        continue;
-      }
-    }
-
-    _line = state.line;
-    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
-    _result.push(state.result);
-    skipSeparationSpace(state, true, -1);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if ((state.line === _line || state.lineIndent > nodeIndent) && (0 !== ch)) {
-      throwError(state, 'bad indentation of a sequence entry');
-    } else if (state.lineIndent < nodeIndent) {
-      break;
-    }
-  }
-
-  if (detected) {
-    state.tag = _tag;
-    state.anchor = _anchor;
-    state.kind = 'sequence';
-    state.result = _result;
-    return true;
-  } else {
-    return false;
-  }
-}
-
-function readBlockMapping(state, nodeIndent, flowIndent) {
-  var following,
-      allowCompact,
-      _line,
-      _tag          = state.tag,
-      _anchor       = state.anchor,
-      _result       = {},
-      keyTag        = null,
-      keyNode       = null,
-      valueNode     = null,
-      atExplicitKey = false,
-      detected      = false,
-      ch;
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-    following = state.input.charCodeAt(state.position + 1);
-    _line = state.line; // Save the current line.
-
-    //
-    // Explicit notation case. There are two separate blocks:
-    // first for the key (denoted by "?") and second for the value (denoted by ":")
-    //
-    if ((0x3F/* ? */ === ch || 0x3A/* : */  === ch) && is_WS_OR_EOL(following)) {
-
-      if (0x3F/* ? */ === ch) {
-        if (atExplicitKey) {
-          storeMappingPair(state, _result, keyTag, keyNode, null);
-          keyTag = keyNode = valueNode = null;
-        }
-
-        detected = true;
-        atExplicitKey = true;
-        allowCompact = true;
-
-      } else if (atExplicitKey) {
-        // i.e. 0x3A/* : */ === character after the explicit key.
-        atExplicitKey = false;
-        allowCompact = true;
-
-      } else {
-        throwError(state, 'incomplete explicit mapping pair; a key node is missed');
-      }
-
-      state.position += 1;
-      ch = following;
-
-    //
-    // Implicit notation case. Flow-style node as the key first, then ":", and the value.
-    //
-    } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {
-
-      if (state.line === _line) {
-        ch = state.input.charCodeAt(state.position);
-
-        while (is_WHITE_SPACE(ch)) {
-          ch = state.input.charCodeAt(++state.position);
-        }
-
-        if (0x3A/* : */ === ch) {
-          ch = state.input.charCodeAt(++state.position);
-
-          if (!is_WS_OR_EOL(ch)) {
-            throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');
-          }
-
-          if (atExplicitKey) {
-            storeMappingPair(state, _result, keyTag, keyNode, null);
-            keyTag = keyNode = valueNode = null;
-          }
-
-          detected = true;
-          atExplicitKey = false;
-          allowCompact = false;
-          keyTag = state.tag;
-          keyNode = state.result;
-
-        } else if (detected) {
-          throwError(state, 'can not read an implicit mapping pair; a colon is missed');
-
-        } else {
-          state.tag = _tag;
-          state.anchor = _anchor;
-          return true; // Keep the result of `composeNode`.
-        }
-
-      } else if (detected) {
-        throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');
-
-      } else {
-        state.tag = _tag;
-        state.anchor = _anchor;
-        return true; // Keep the result of `composeNode`.
-      }
-
-    } else {
-      break; // Reading is done. Go to the epilogue.
-    }
-
-    //
-    // Common reading code for both explicit and implicit notations.
-    //
-    if (state.line === _line || state.lineIndent > nodeIndent) {
-      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
-        if (atExplicitKey) {
-          keyNode = state.result;
-        } else {
-          valueNode = state.result;
-        }
-      }
-
-      if (!atExplicitKey) {
-        storeMappingPair(state, _result, keyTag, keyNode, valueNode);
-        keyTag = keyNode = valueNode = null;
-      }
-
-      skipSeparationSpace(state, true, -1);
-      ch = state.input.charCodeAt(state.position);
-    }
-
-    if (state.lineIndent > nodeIndent && (0 !== ch)) {
-      throwError(state, 'bad indentation of a mapping entry');
-    } else if (state.lineIndent < nodeIndent) {
-      break;
-    }
-  }
-
-  //
-  // Epilogue.
-  //
-
-  // Special case: last mapping's node contains only the key in explicit notation.
-  if (atExplicitKey) {
-    storeMappingPair(state, _result, keyTag, keyNode, null);
-  }
-
-  // Expose the resulting mapping.
-  if (detected) {
-    state.tag = _tag;
-    state.anchor = _anchor;
-    state.kind = 'mapping';
-    state.result = _result;
-  }
-
-  return detected;
-}
-
-function readTagProperty(state) {
-  var _position,
-      isVerbatim = false,
-      isNamed    = false,
-      tagHandle,
-      tagName,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x21/* ! */ !== ch) {
-    return false;
-  }
-
-  if (null !== state.tag) {
-    throwError(state, 'duplication of a tag property');
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-
-  if (0x3C/* < */ === ch) {
-    isVerbatim = true;
-    ch = state.input.charCodeAt(++state.position);
-
-  } else if (0x21/* ! */ === ch) {
-    isNamed = true;
-    tagHandle = '!!';
-    ch = state.input.charCodeAt(++state.position);
-
-  } else {
-    tagHandle = '!';
-  }
-
-  _position = state.position;
-
-  if (isVerbatim) {
-    do { ch = state.input.charCodeAt(++state.position); }
-    while (0 !== ch && 0x3E/* > */ !== ch);
-
-    if (state.position < state.length) {
-      tagName = state.input.slice(_position, state.position);
-      ch = state.input.charCodeAt(++state.position);
-    } else {
-      throwError(state, 'unexpected end of the stream within a verbatim tag');
-    }
-  } else {
-    while (0 !== ch && !is_WS_OR_EOL(ch)) {
-
-      if (0x21/* ! */ === ch) {
-        if (!isNamed) {
-          tagHandle = state.input.slice(_position - 1, state.position + 1);
-
-          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
-            throwError(state, 'named tag handle cannot contain such characters');
-          }
-
-          isNamed = true;
-          _position = state.position + 1;
-        } else {
-          throwError(state, 'tag suffix cannot contain exclamation marks');
-        }
-      }
-
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    tagName = state.input.slice(_position, state.position);
-
-    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
-      throwError(state, 'tag suffix cannot contain flow indicator characters');
-    }
-  }
-
-  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
-    throwError(state, 'tag name cannot contain such characters: ' + tagName);
-  }
-
-  if (isVerbatim) {
-    state.tag = tagName;
-
-  } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {
-    state.tag = state.tagMap[tagHandle] + tagName;
-
-  } else if ('!' === tagHandle) {
-    state.tag = '!' + tagName;
-
-  } else if ('!!' === tagHandle) {
-    state.tag = 'tag:yaml.org,2002:' + tagName;
-
-  } else {
-    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
-  }
-
-  return true;
-}
-
-function readAnchorProperty(state) {
-  var _position,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x26/* & */ !== ch) {
-    return false;
-  }
-
-  if (null !== state.anchor) {
-    throwError(state, 'duplication of an anchor property');
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-  _position = state.position;
-
-  while (0 !== ch && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  if (state.position === _position) {
-    throwError(state, 'name of an anchor node must contain at least one character');
-  }
-
-  state.anchor = state.input.slice(_position, state.position);
-  return true;
-}
-
-function readAlias(state) {
-  var _position, alias,
-      len = state.length,
-      input = state.input,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x2A/* * */ !== ch) {
-    return false;
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-  _position = state.position;
-
-  while (0 !== ch && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  if (state.position === _position) {
-    throwError(state, 'name of an alias node must contain at least one character');
-  }
-
-  alias = state.input.slice(_position, state.position);
-
-  if (!state.anchorMap.hasOwnProperty(alias)) {
-    throwError(state, 'unidentified alias "' + alias + '"');
-  }
-
-  state.result = state.anchorMap[alias];
-  skipSeparationSpace(state, true, -1);
-  return true;
-}
-
-function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
-  var allowBlockStyles,
-      allowBlockScalars,
-      allowBlockCollections,
-      indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this<parent
-      atNewLine  = false,
-      hasContent = false,
-      typeIndex,
-      typeQuantity,
-      type,
-      flowIndent,
-      blockIndent,
-      _result;
-
-  state.tag    = null;
-  state.anchor = null;
-  state.kind   = null;
-  state.result = null;
-
-  allowBlockStyles = allowBlockScalars = allowBlockCollections =
-    CONTEXT_BLOCK_OUT === nodeContext ||
-    CONTEXT_BLOCK_IN  === nodeContext;
-
-  if (allowToSeek) {
-    if (skipSeparationSpace(state, true, -1)) {
-      atNewLine = true;
-
-      if (state.lineIndent > parentIndent) {
-        indentStatus = 1;
-      } else if (state.lineIndent === parentIndent) {
-        indentStatus = 0;
-      } else if (state.lineIndent < parentIndent) {
-        indentStatus = -1;
-      }
-    }
-  }
-
-  if (1 === indentStatus) {
-    while (readTagProperty(state) || readAnchorProperty(state)) {
-      if (skipSeparationSpace(state, true, -1)) {
-        atNewLine = true;
-        allowBlockCollections = allowBlockStyles;
-
-        if (state.lineIndent > parentIndent) {
-          indentStatus = 1;
-        } else if (state.lineIndent === parentIndent) {
-          indentStatus = 0;
-        } else if (state.lineIndent < parentIndent) {
-          indentStatus = -1;
-        }
-      } else {
-        allowBlockCollections = false;
-      }
-    }
-  }
-
-  if (allowBlockCollections) {
-    allowBlockCollections = atNewLine || allowCompact;
-  }
-
-  if (1 === indentStatus || CONTEXT_BLOCK_OUT === nodeContext) {
-    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
-      flowIndent = parentIndent;
-    } else {
-      flowIndent = parentIndent + 1;
-    }
-
-    blockIndent = state.position - state.lineStart;
-
-    if (1 === indentStatus) {
-      if (allowBlockCollections &&
-          (readBlockSequence(state, blockIndent) ||
-           readBlockMapping(state, blockIndent, flowIndent)) ||
-          readFlowCollection(state, flowIndent)) {
-        hasContent = true;
-      } else {
-        if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||
-            readSingleQuotedScalar(state, flowIndent) ||
-            readDoubleQuotedScalar(state, flowIndent)) {
-          hasContent = true;
-
-        } else if (readAlias(state)) {
-          hasContent = true;
-
-          if (null !== state.tag || null !== state.anchor) {
-            throwError(state, 'alias node should not have any properties');
-          }
-
-        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
-          hasContent = true;
-
-          if (null === state.tag) {
-            state.tag = '?';
-          }
-        }
-
-        if (null !== state.anchor) {
-          state.anchorMap[state.anchor] = state.result;
-        }
-      }
-    } else if (0 === indentStatus) {
-      // Special case: block sequences are allowed to have same indentation level as the parent.
-      // http://www.yaml.org/spec/1.2/spec.html#id2799784
-      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
-    }
-  }
-
-  if (null !== state.tag && '!' !== state.tag) {
-    if ('?' === state.tag) {
-      for (typeIndex = 0, typeQuantity = state.implicitTypes.length;
-           typeIndex < typeQuantity;
-           typeIndex += 1) {
-        type = state.implicitTypes[typeIndex];
-
-        // Implicit resolving is not allowed for non-scalar types, and '?'
-        // non-specific tag is only assigned to plain scalars. So, it isn't
-        // needed to check for 'kind' conformity.
-
-        if (type.resolve(state.result)) { // `state.result` updated in resolver if matched
-          state.result = type.construct(state.result);
-          state.tag = type.tag;
-          if (null !== state.anchor) {
-            state.anchorMap[state.anchor] = state.result;
-          }
-          break;
-        }
-      }
-    } else if (_hasOwnProperty.call(state.typeMap, state.tag)) {
-      type = state.typeMap[state.tag];
-
-      if (null !== state.result && type.kind !== state.kind) {
-        throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"');
-      }
-
-      if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched
-        throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');
-      } else {
-        state.result = type.construct(state.result);
-        if (null !== state.anchor) {
-          state.anchorMap[state.anchor] = state.result;
-        }
-      }
-    } else {
-      throwWarning(state, 'unknown tag !<' + state.tag + '>');
-    }
-  }
-
-  return null !== state.tag || null !== state.anchor || hasContent;
-}
-
-function readDocument(state) {
-  var documentStart = state.position,
-      _position,
-      directiveName,
-      directiveArgs,
-      hasDirectives = false,
-      ch;
-
-  state.version = null;
-  state.checkLineBreaks = state.legacy;
-  state.tagMap = {};
-  state.anchorMap = {};
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    skipSeparationSpace(state, true, -1);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (state.lineIndent > 0 || 0x25/* % */ !== ch) {
-      break;
-    }
-
-    hasDirectives = true;
-    ch = state.input.charCodeAt(++state.position);
-    _position = state.position;
-
-    while (0 !== ch && !is_WS_OR_EOL(ch)) {
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    directiveName = state.input.slice(_position, state.position);
-    directiveArgs = [];
-
-    if (directiveName.length < 1) {
-      throwError(state, 'directive name must not be less than one character in length');
-    }
-
-    while (0 !== ch) {
-      while (is_WHITE_SPACE(ch)) {
-        ch = state.input.charCodeAt(++state.position);
-      }
-
-      if (0x23/* # */ === ch) {
-        do { ch = state.input.charCodeAt(++state.position); }
-        while (0 !== ch && !is_EOL(ch));
-        break;
-      }
-
-      if (is_EOL(ch)) {
-        break;
-      }
-
-      _position = state.position;
-
-      while (0 !== ch && !is_WS_OR_EOL(ch)) {
-        ch = state.input.charCodeAt(++state.position);
-      }
-
-      directiveArgs.push(state.input.slice(_position, state.position));
-    }
-
-    if (0 !== ch) {
-      readLineBreak(state);
-    }
-
-    if (_hasOwnProperty.call(directiveHandlers, directiveName)) {
-      directiveHandlers[directiveName](state, directiveName, directiveArgs);
-    } else {
-      throwWarning(state, 'unknown document directive "' + directiveName + '"');
-    }
-  }
-
-  skipSeparationSpace(state, true, -1);
-
-  if (0 === state.lineIndent &&
-      0x2D/* - */ === state.input.charCodeAt(state.position) &&
-      0x2D/* - */ === state.input.charCodeAt(state.position + 1) &&
-      0x2D/* - */ === state.input.charCodeAt(state.position + 2)) {
-    state.position += 3;
-    skipSeparationSpace(state, true, -1);
-
-  } else if (hasDirectives) {
-    throwError(state, 'directives end mark is expected');
-  }
-
-  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
-  skipSeparationSpace(state, true, -1);
-
-  if (state.checkLineBreaks &&
-      PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
-    throwWarning(state, 'non-ASCII line breaks are interpreted as content');
-  }
-
-  state.documents.push(state.result);
-
-  if (state.position === state.lineStart && testDocumentSeparator(state)) {
-
-    if (0x2E/* . */ === state.input.charCodeAt(state.position)) {
-      state.position += 3;
-      skipSeparationSpace(state, true, -1);
-    }
-    return;
-  }
-
-  if (state.position < (state.length - 1)) {
-    throwError(state, 'end of the stream or a document separator is expected');
-  } else {
-    return;
-  }
-}
-
-
-function loadDocuments(input, options) {
-  input = String(input);
-  options = options || {};
-
-  if (0 !== input.length &&
-      0x0A/* LF */ !== input.charCodeAt(input.length - 1) &&
-      0x0D/* CR */ !== input.charCodeAt(input.length - 1)) {
-    input += '\n';
-  }
-
-  var state = new State(input, options);
-
-  if (PATTERN_NON_PRINTABLE.test(state.input)) {
-    throwError(state, 'the stream contains non-printable characters');
-  }
-
-  // Use 0 as string terminator. That significantly simplifies bounds check.
-  state.input += '\0';
-
-  while (0x20/* Space */ === state.input.charCodeAt(state.position)) {
-    state.lineIndent += 1;
-    state.position += 1;
-  }
-
-  while (state.position < (state.length - 1)) {
-    readDocument(state);
-  }
-
-  return state.documents;
-}
-
-
-function loadAll(input, iterator, options) {
-  var documents = loadDocuments(input, options), index, length;
-
-  for (index = 0, length = documents.length; index < length; index += 1) {
-    iterator(documents[index]);
-  }
-}
-
-
-function load(input, options) {
-  var documents = loadDocuments(input, options), index, length;
-
-  if (0 === documents.length) {
-    return undefined;
-  } else if (1 === documents.length) {
-    return documents[0];
-  } else {
-    throw new YAMLException('expected a single document in the stream, but found more');
-  }
-}
-
-
-function safeLoadAll(input, output, options) {
-  loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-function safeLoad(input, options) {
-  return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-module.exports.loadAll     = loadAll;
-module.exports.load        = load;
-module.exports.safeLoadAll = safeLoadAll;
-module.exports.safeLoad    = safeLoad;
-
-},{"./common":2,"./exception":4,"./mark":6,"./schema/default_full":9,"./schema/default_safe":10}],6:[function(require,module,exports){
-'use strict';
-
-
-var common = require('./common');
-
-
-function Mark(name, buffer, position, line, column) {
-  this.name     = name;
-  this.buffer   = buffer;
-  this.position = position;
-  this.line     = line;
-  this.column   = column;
-}
-
-
-Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
-  var head, start, tail, end, snippet;
-
-  if (!this.buffer) {
-    return null;
-  }
-
-  indent = indent || 4;
-  maxLength = maxLength || 75;
-
-  head = '';
-  start = this.position;
-
-  while (start > 0 && -1 === '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1))) {
-    start -= 1;
-    if (this.position - start > (maxLength / 2 - 1)) {
-      head = ' ... ';
-      start += 5;
-      break;
-    }
-  }
-
-  tail = '';
-  end = this.position;
-
-  while (end < this.buffer.length && -1 === '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end))) {
-    end += 1;
-    if (end - this.position > (maxLength / 2 - 1)) {
-      tail = ' ... ';
-      end -= 5;
-      break;
-    }
-  }
-
-  snippet = this.buffer.slice(start, end);
-
-  return common.repeat(' ', indent) + head + snippet + tail + '\n' +
-         common.repeat(' ', indent + this.position - start + head.length) + '^';
-};
-
-
-Mark.prototype.toString = function toString(compact) {
-  var snippet, where = '';
-
-  if (this.name) {
-    where += 'in "' + this.name + '" ';
-  }
-
-  where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);
-
-  if (!compact) {
-    snippet = this.getSnippet();
-
-    if (snippet) {
-      where += ':\n' + snippet;
-    }
-  }
-
-  return where;
-};
-
-
-module.exports = Mark;
-
-},{"./common":2}],7:[function(require,module,exports){
-'use strict';
-
-
-var common        = require('./common');
-var YAMLException = require('./exception');
-var Type          = require('./type');
-
-
-function compileList(schema, name, result) {
-  var exclude = [];
-
-  schema.include.forEach(function (includedSchema) {
-    result = compileList(includedSchema, name, result);
-  });
-
-  schema[name].forEach(function (currentType) {
-    result.forEach(function (previousType, previousIndex) {
-      if (previousType.tag === currentType.tag) {
-        exclude.push(previousIndex);
-      }
-    });
-
-    result.push(currentType);
-  });
-
-  return result.filter(function (type, index) {
-    return -1 === exclude.indexOf(index);
-  });
-}
-
-
-function compileMap(/* lists... */) {
-  var result = {}, index, length;
-
-  function collectType(type) {
-    result[type.tag] = type;
-  }
-
-  for (index = 0, length = arguments.length; index < length; index += 1) {
-    arguments[index].forEach(collectType);
-  }
-
-  return result;
-}
-
-
-function Schema(definition) {
-  this.include  = definition.include  || [];
-  this.implicit = definition.implicit || [];
-  this.explicit = definition.explicit || [];
-
-  this.implicit.forEach(function (type) {
-    if (type.loadKind && 'scalar' !== type.loadKind) {
-      throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');
-    }
-  });
-
-  this.compiledImplicit = compileList(this, 'implicit', []);
-  this.compiledExplicit = compileList(this, 'explicit', []);
-  this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit);
-}
-
-
-Schema.DEFAULT = null;
-
-
-Schema.create = function createSchema() {
-  var schemas, types;
-
-  switch (arguments.length) {
-  case 1:
-    schemas = Schema.DEFAULT;
-    types = arguments[0];
-    break;
-
-  case 2:
-    schemas = arguments[0];
-    types = arguments[1];
-    break;
-
-  default:
-    throw new YAMLException('Wrong number of arguments for Schema.create function');
-  }
-
-  schemas = common.toArray(schemas);
-  types = common.toArray(types);
-
-  if (!schemas.every(function (schema) { return schema instanceof Schema; })) {
-    throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');
-  }
-
-  if (!types.every(function (type) { return type instanceof Type; })) {
-    throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');
-  }
-
-  return new Schema({
-    include: schemas,
-    explicit: types
-  });
-};
-
-
-module.exports = Schema;
-
-},{"./common":2,"./exception":4,"./type":13}],8:[function(require,module,exports){
-// Standard YAML's Core schema.
-// http://www.yaml.org/spec/1.2/spec.html#id2804923
-//
-// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
-// So, Core schema has no distinctions from JSON schema is JS-YAML.
-
-
-'use strict';
-
-
-var Schema = require('../schema');
-
-
-module.exports = new Schema({
-  include: [
-    require('./json')
-  ]
-});
-
-},{"../schema":7,"./json":12}],9:[function(require,module,exports){
-// JS-YAML's default schema for `load` function.
-// It is not described in the YAML specification.
-//
-// This schema is based on JS-YAML's default safe schema and includes
-// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function.
-//
-// Also this schema is used as default base schema at `Schema.create` function.
-
-
-'use strict';
-
-
-var Schema = require('../schema');
-
-
-module.exports = Schema.DEFAULT = new Schema({
-  include: [
-    require('./default_safe')
-  ],
-  explicit: [
-    require('../type/js/undefined'),
-    require('../type/js/regexp'),
-    require('../type/js/function')
-  ]
-});
-
-},{"../schema":7,"../type/js/function":18,"../type/js/regexp":19,"../type/js/undefined":20,"./default_safe":10}],10:[function(require,module,exports){
-// JS-YAML's default schema for `safeLoad` function.
-// It is not described in the YAML specification.
-//
-// This schema is based on standard YAML's Core schema and includes most of
-// extra types described at YAML tag repository. (http://yaml.org/type/)
-
-
-'use strict';
-
-
-var Schema = require('../schema');
-
-
-module.exports = new Schema({
-  include: [
-    require('./core')
-  ],
-  implicit: [
-    require('../type/timestamp'),
-    require('../type/merge')
-  ],
-  explicit: [
-    require('../type/binary'),
-    require('../type/omap'),
-    require('../type/pairs'),
-    require('../type/set')
-  ]
-});
-
-},{"../schema":7,"../type/binary":14,"../type/merge":22,"../type/omap":24,"../type/pairs":25,"../type/set":27,"../type/timestamp":29,"./core":8}],11:[function(require,module,exports){
-// Standard YAML's Failsafe schema.
-// http://www.yaml.org/spec/1.2/spec.html#id2802346
-
-
-'use strict';
-
-
-var Schema = require('../schema');
-
-
-module.exports = new Schema({
-  explicit: [
-    require('../type/str'),
-    require('../type/seq'),
-    require('../type/map')
-  ]
-});
-
-},{"../schema":7,"../type/map":21,"../type/seq":26,"../type/str":28}],12:[function(require,module,exports){
-// Standard YAML's JSON schema.
-// http://www.yaml.org/spec/1.2/spec.html#id2803231
-//
-// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
-// So, this schema is not such strict as defined in the YAML specification.
-// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc.
-
-
-'use strict';
-
-
-var Schema = require('../schema');
-
-
-module.exports = new Schema({
-  include: [
-    require('./failsafe')
-  ],
-  implicit: [
-    require('../type/null'),
-    require('../type/bool'),
-    require('../type/int'),
-    require('../type/float')
-  ]
-});
-
-},{"../schema":7,"../type/bool":15,"../type/float":16,"../type/int":17,"../type/null":23,"./failsafe":11}],13:[function(require,module,exports){
-'use strict';
-
-var YAMLException = require('./exception');
-
-var TYPE_CONSTRUCTOR_OPTIONS = [
-  'kind',
-  'resolve',
-  'construct',
-  'instanceOf',
-  'predicate',
-  'represent',
-  'defaultStyle',
-  'styleAliases'
-];
-
-var YAML_NODE_KINDS = [
-  'scalar',
-  'sequence',
-  'mapping'
-];
-
-function compileStyleAliases(map) {
-  var result = {};
-
-  if (null !== map) {
-    Object.keys(map).forEach(function (style) {
-      map[style].forEach(function (alias) {
-        result[String(alias)] = style;
-      });
-    });
-  }
-
-  return result;
-}
-
-function Type(tag, options) {
-  options = options || {};
-
-  Object.keys(options).forEach(function (name) {
-    if (-1 === TYPE_CONSTRUCTOR_OPTIONS.indexOf(name)) {
-      throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
-    }
-  });
-
-  // TODO: Add tag format check.
-  this.tag          = tag;
-  this.kind         = options['kind']         || null;
-  this.resolve      = options['resolve']      || function () { return true; };
-  this.construct    = options['construct']    || function (data) { return data; };
-  this.instanceOf   = options['instanceOf']   || null;
-  this.predicate    = options['predicate']    || null;
-  this.represent    = options['represent']    || null;
-  this.defaultStyle = options['defaultStyle'] || null;
-  this.styleAliases = compileStyleAliases(options['styleAliases'] || null);
-
-  if (-1 === YAML_NODE_KINDS.indexOf(this.kind)) {
-    throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
-  }
-}
-
-module.exports = Type;
-
-},{"./exception":4}],14:[function(require,module,exports){
-'use strict';
-
-
-// A trick for browserified version.
-// Since we make browserifier to ignore `buffer` module, NodeBuffer will be undefined
-var NodeBuffer = require('buffer').Buffer;
-var Type       = require('../type');
-
-
-// [ 64, 65, 66 ] -> [ padding, CR, LF ]
-var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r';
-
-
-function resolveYamlBinary(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var code, idx, bitlen = 0, len = 0, max = data.length, map = BASE64_MAP;
-
-  // Convert one by one.
-  for (idx = 0; idx < max; idx ++) {
-    code = map.indexOf(data.charAt(idx));
-
-    // Skip CR/LF
-    if (code > 64) { continue; }
-
-    // Fail on illegal characters
-    if (code < 0) { return false; }
-
-    bitlen += 6;
-  }
-
-  // If there are any bits left, source was corrupted
-  return (bitlen % 8) === 0;
-}
-
-function constructYamlBinary(data) {
-  var code, idx, tailbits,
-      input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan
-      max = input.length,
-      map = BASE64_MAP,
-      bits = 0,
-      result = [];
-
-  // Collect by 6*4 bits (3 bytes)
-
-  for (idx = 0; idx < max; idx++) {
-    if ((idx % 4 === 0) && idx) {
-      result.push((bits >> 16) & 0xFF);
-      result.push((bits >> 8) & 0xFF);
-      result.push(bits & 0xFF);
-    }
-
-    bits = (bits << 6) | map.indexOf(input.charAt(idx));
-  }
-
-  // Dump tail
-
-  tailbits = (max % 4)*6;
-
-  if (tailbits === 0) {
-    result.push((bits >> 16) & 0xFF);
-    result.push((bits >> 8) & 0xFF);
-    result.push(bits & 0xFF);
-  } else if (tailbits === 18) {
-    result.push((bits >> 10) & 0xFF);
-    result.push((bits >> 2) & 0xFF);
-  } else if (tailbits === 12) {
-    result.push((bits >> 4) & 0xFF);
-  }
-
-  // Wrap into Buffer for NodeJS and leave Array for browser
-  if (NodeBuffer) {
-    return new NodeBuffer(result);
-  }
-
-  return result;
-}
-
-function representYamlBinary(object /*, style*/) {
-  var result = '', bits = 0, idx, tail,
-      max = object.length,
-      map = BASE64_MAP;
-
-  // Convert every three bytes to 4 ASCII characters.
-
-  for (idx = 0; idx < max; idx++) {
-    if ((idx % 3 === 0) && idx) {
-      result += map[(bits >> 18) & 0x3F];
-      result += map[(bits >> 12) & 0x3F];
-      result += map[(bits >> 6) & 0x3F];
-      result += map[bits & 0x3F];
-    }
-
-    bits = (bits << 8) + object[idx];
-  }
-
-  // Dump tail
-
-  tail = max % 3;
-
-  if (tail === 0) {
-    result += map[(bits >> 18) & 0x3F];
-    result += map[(bits >> 12) & 0x3F];
-    result += map[(bits >> 6) & 0x3F];
-    result += map[bits & 0x3F];
-  } else if (tail === 2) {
-    result += map[(bits >> 10) & 0x3F];
-    result += map[(bits >> 4) & 0x3F];
-    result += map[(bits << 2) & 0x3F];
-    result += map[64];
-  } else if (tail === 1) {
-    result += map[(bits >> 2) & 0x3F];
-    result += map[(bits << 4) & 0x3F];
-    result += map[64];
-    result += map[64];
-  }
-
-  return result;
-}
-
-function isBinary(object) {
-  return NodeBuffer && NodeBuffer.isBuffer(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:binary', {
-  kind: 'scalar',
-  resolve: resolveYamlBinary,
-  construct: constructYamlBinary,
-  predicate: isBinary,
-  represent: representYamlBinary
-});
-
-},{"../type":13,"buffer":30}],15:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlBoolean(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var max = data.length;
-
-  return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||
-         (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));
-}
-
-function constructYamlBoolean(data) {
-  return data === 'true' ||
-         data === 'True' ||
-         data === 'TRUE';
-}
-
-function isBoolean(object) {
-  return '[object Boolean]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:bool', {
-  kind: 'scalar',
-  resolve: resolveYamlBoolean,
-  construct: constructYamlBoolean,
-  predicate: isBoolean,
-  represent: {
-    lowercase: function (object) { return object ? 'true' : 'false'; },
-    uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },
-    camelcase: function (object) { return object ? 'True' : 'False'; }
-  },
-  defaultStyle: 'lowercase'
-});
-
-},{"../type":13}],16:[function(require,module,exports){
-'use strict';
-
-var common = require('../common');
-var Type   = require('../type');
-
-var YAML_FLOAT_PATTERN = new RegExp(
-  '^(?:[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+][0-9]+)?' +
-  '|\\.[0-9_]+(?:[eE][-+][0-9]+)?' +
-  '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' +
-  '|[-+]?\\.(?:inf|Inf|INF)' +
-  '|\\.(?:nan|NaN|NAN))$');
-
-function resolveYamlFloat(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var value, sign, base, digits;
-
-  if (!YAML_FLOAT_PATTERN.test(data)) {
-    return false;
-  }
-  return true;
-}
-
-function constructYamlFloat(data) {
-  var value, sign, base, digits;
-
-  value  = data.replace(/_/g, '').toLowerCase();
-  sign   = '-' === value[0] ? -1 : 1;
-  digits = [];
-
-  if (0 <= '+-'.indexOf(value[0])) {
-    value = value.slice(1);
-  }
-
-  if ('.inf' === value) {
-    return (1 === sign) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
-
-  } else if ('.nan' === value) {
-    return NaN;
-
-  } else if (0 <= value.indexOf(':')) {
-    value.split(':').forEach(function (v) {
-      digits.unshift(parseFloat(v, 10));
-    });
-
-    value = 0.0;
-    base = 1;
-
-    digits.forEach(function (d) {
-      value += d * base;
-      base *= 60;
-    });
-
-    return sign * value;
-
-  } else {
-    return sign * parseFloat(value, 10);
-  }
-}
-
-function representYamlFloat(object, style) {
-  if (isNaN(object)) {
-    switch (style) {
-    case 'lowercase':
-      return '.nan';
-    case 'uppercase':
-      return '.NAN';
-    case 'camelcase':
-      return '.NaN';
-    }
-  } else if (Number.POSITIVE_INFINITY === object) {
-    switch (style) {
-    case 'lowercase':
-      return '.inf';
-    case 'uppercase':
-      return '.INF';
-    case 'camelcase':
-      return '.Inf';
-    }
-  } else if (Number.NEGATIVE_INFINITY === object) {
-    switch (style) {
-    case 'lowercase':
-      return '-.inf';
-    case 'uppercase':
-      return '-.INF';
-    case 'camelcase':
-      return '-.Inf';
-    }
-  } else if (common.isNegativeZero(object)) {
-    return '-0.0';
-  } else {
-    return object.toString(10);
-  }
-}
-
-function isFloat(object) {
-  return ('[object Number]' === Object.prototype.toString.call(object)) &&
-         (0 !== object % 1 || common.isNegativeZero(object));
-}
-
-module.exports = new Type('tag:yaml.org,2002:float', {
-  kind: 'scalar',
-  resolve: resolveYamlFloat,
-  construct: constructYamlFloat,
-  predicate: isFloat,
-  represent: representYamlFloat,
-  defaultStyle: 'lowercase'
-});
-
-},{"../common":2,"../type":13}],17:[function(require,module,exports){
-'use strict';
-
-var common = require('../common');
-var Type   = require('../type');
-
-function isHexCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
-         ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
-         ((0x61/* a */ <= c) && (c <= 0x66/* f */));
-}
-
-function isOctCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
-}
-
-function isDecCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
-}
-
-function resolveYamlInteger(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var max = data.length,
-      index = 0,
-      hasDigits = false,
-      ch;
-
-  if (!max) { return false; }
-
-  ch = data[index];
-
-  // sign
-  if (ch === '-' || ch === '+') {
-    ch = data[++index];
-  }
-
-  if (ch === '0') {
-    // 0
-    if (index+1 === max) { return true; }
-    ch = data[++index];
-
-    // base 2, base 8, base 16
-
-    if (ch === 'b') {
-      // base 2
-      index++;
-
-      for (; index < max; index++) {
-        ch = data[index];
-        if (ch === '_') { continue; }
-        if (ch !== '0' && ch !== '1') {
-          return false;
-        }
-        hasDigits = true;
-      }
-      return hasDigits;
-    }
-
-
-    if (ch === 'x') {
-      // base 16
-      index++;
-
-      for (; index < max; index++) {
-        ch = data[index];
-        if (ch === '_') { continue; }
-        if (!isHexCode(data.charCodeAt(index))) {
-          return false;
-        }
-        hasDigits = true;
-      }
-      return hasDigits;
-    }
-
-    // base 8
-    for (; index < max; index++) {
-      ch = data[index];
-      if (ch === '_') { continue; }
-      if (!isOctCode(data.charCodeAt(index))) {
-        return false;
-      }
-      hasDigits = true;
-    }
-    return hasDigits;
-  }
-
-  // base 10 (except 0) or base 60
-
-  for (; index < max; index++) {
-    ch = data[index];
-    if (ch === '_') { continue; }
-    if (ch === ':') { break; }
-    if (!isDecCode(data.charCodeAt(index))) {
-      return false;
-    }
-    hasDigits = true;
-  }
-
-  if (!hasDigits) { return false; }
-
-  // if !base60 - done;
-  if (ch !== ':') { return true; }
-
-  // base60 almost not used, no needs to optimize
-  return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
-}
-
-function constructYamlInteger(data) {
-  var value = data, sign = 1, ch, base, digits = [];
-
-  if (value.indexOf('_') !== -1) {
-    value = value.replace(/_/g, '');
-  }
-
-  ch = value[0];
-
-  if (ch === '-' || ch === '+') {
-    if (ch === '-') { sign = -1; }
-    value = value.slice(1);
-    ch = value[0];
-  }
-
-  if ('0' === value) {
-    return 0;
-  }
-
-  if (ch === '0') {
-    if (value[1] === 'b') {
-      return sign * parseInt(value.slice(2), 2);
-    }
-    if (value[1] === 'x') {
-      return sign * parseInt(value, 16);
-    }
-    return sign * parseInt(value, 8);
-
-  }
-
-  if (value.indexOf(':') !== -1) {
-    value.split(':').forEach(function (v) {
-      digits.unshift(parseInt(v, 10));
-    });
-
-    value = 0;
-    base = 1;
-
-    digits.forEach(function (d) {
-      value += (d * base);
-      base *= 60;
-    });
-
-    return sign * value;
-
-  }
-
-  return sign * parseInt(value, 10);
-}
-
-function isInteger(object) {
-  return ('[object Number]' === Object.prototype.toString.call(object)) &&
-         (0 === object % 1 && !common.isNegativeZero(object));
-}
-
-module.exports = new Type('tag:yaml.org,2002:int', {
-  kind: 'scalar',
-  resolve: resolveYamlInteger,
-  construct: constructYamlInteger,
-  predicate: isInteger,
-  represent: {
-    binary:      function (object) { return '0b' + object.toString(2); },
-    octal:       function (object) { return '0'  + object.toString(8); },
-    decimal:     function (object) { return        object.toString(10); },
-    hexadecimal: function (object) { return '0x' + object.toString(16).toUpperCase(); }
-  },
-  defaultStyle: 'decimal',
-  styleAliases: {
-    binary:      [ 2,  'bin' ],
-    octal:       [ 8,  'oct' ],
-    decimal:     [ 10, 'dec' ],
-    hexadecimal: [ 16, 'hex' ]
-  }
-});
-
-},{"../common":2,"../type":13}],18:[function(require,module,exports){
-'use strict';
-
-var esprima;
-
-// Browserified version does not have esprima
-//
-// 1. For node.js just require module as deps
-// 2. For browser try to require mudule via external AMD system.
-//    If not found - try to fallback to window.esprima. If not
-//    found too - then fail to parse.
-//
-try {
-  esprima = require('esprima');
-} catch (_) {
-  /*global window */
-  if (typeof window !== 'undefined') { esprima = window.esprima; }
-}
-
-var Type = require('../../type');
-
-function resolveJavascriptFunction(data) {
-  if (null === data) {
-    return false;
-  }
-
-  try {
-    var source = '(' + data + ')',
-        ast    = esprima.parse(source, { range: true }),
-        params = [],
-        body;
-
-    if ('Program'             !== ast.type         ||
-        1                     !== ast.body.length  ||
-        'ExpressionStatement' !== ast.body[0].type ||
-        'FunctionExpression'  !== ast.body[0].expression.type) {
-      return false;
-    }
-
-    return true;
-  } catch (err) {
-    return false;
-  }
-}
-
-function constructJavascriptFunction(data) {
-  /*jslint evil:true*/
-
-  var source = '(' + data + ')',
-      ast    = esprima.parse(source, { range: true }),
-      params = [],
-      body;
-
-  if ('Program'             !== ast.type         ||
-      1                     !== ast.body.length  ||
-      'ExpressionStatement' !== ast.body[0].type ||
-      'FunctionExpression'  !== ast.body[0].expression.type) {
-    throw new Error('Failed to resolve function');
-  }
-
-  ast.body[0].expression.params.forEach(function (param) {
-    params.push(param.name);
-  });
-
-  body = ast.body[0].expression.body.range;
-
-  // Esprima's ranges include the first '{' and the last '}' characters on
-  // function expressions. So cut them out.
-  return new Function(params, source.slice(body[0]+1, body[1]-1));
-}
-
-function representJavascriptFunction(object /*, style*/) {
-  return object.toString();
-}
-
-function isFunction(object) {
-  return '[object Function]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/function', {
-  kind: 'scalar',
-  resolve: resolveJavascriptFunction,
-  construct: constructJavascriptFunction,
-  predicate: isFunction,
-  represent: representJavascriptFunction
-});
-
-},{"../../type":13,"esprima":"esprima"}],19:[function(require,module,exports){
-'use strict';
-
-var Type = require('../../type');
-
-function resolveJavascriptRegExp(data) {
-  if (null === data) {
-    return false;
-  }
-
-  if (0 === data.length) {
-    return false;
-  }
-
-  var regexp = data,
-      tail   = /\/([gim]*)$/.exec(data),
-      modifiers = '';
-
-  // if regexp starts with '/' it can have modifiers and must be properly closed
-  // `/foo/gim` - modifiers tail can be maximum 3 chars
-  if ('/' === regexp[0]) {
-    if (tail) {
-      modifiers = tail[1];
-    }
-
-    if (modifiers.length > 3) { return false; }
-    // if expression starts with /, is should be properly terminated
-    if (regexp[regexp.length - modifiers.length - 1] !== '/') { return false; }
-
-    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
-  }
-
-  try {
-    var dummy = new RegExp(regexp, modifiers);
-    return true;
-  } catch (error) {
-    return false;
-  }
-}
-
-function constructJavascriptRegExp(data) {
-  var regexp = data,
-      tail   = /\/([gim]*)$/.exec(data),
-      modifiers = '';
-
-  // `/foo/gim` - tail can be maximum 4 chars
-  if ('/' === regexp[0]) {
-    if (tail) {
-      modifiers = tail[1];
-    }
-    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
-  }
-
-  return new RegExp(regexp, modifiers);
-}
-
-function representJavascriptRegExp(object /*, style*/) {
-  var result = '/' + object.source + '/';
-
-  if (object.global) {
-    result += 'g';
-  }
-
-  if (object.multiline) {
-    result += 'm';
-  }
-
-  if (object.ignoreCase) {
-    result += 'i';
-  }
-
-  return result;
-}
-
-function isRegExp(object) {
-  return '[object RegExp]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/regexp', {
-  kind: 'scalar',
-  resolve: resolveJavascriptRegExp,
-  construct: constructJavascriptRegExp,
-  predicate: isRegExp,
-  represent: representJavascriptRegExp
-});
-
-},{"../../type":13}],20:[function(require,module,exports){
-'use strict';
-
-var Type = require('../../type');
-
-function resolveJavascriptUndefined() {
-  return true;
-}
-
-function constructJavascriptUndefined() {
-  return undefined;
-}
-
-function representJavascriptUndefined() {
-  return '';
-}
-
-function isUndefined(object) {
-  return 'undefined' === typeof object;
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/undefined', {
-  kind: 'scalar',
-  resolve: resolveJavascriptUndefined,
-  construct: constructJavascriptUndefined,
-  predicate: isUndefined,
-  represent: representJavascriptUndefined
-});
-
-},{"../../type":13}],21:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:map', {
-  kind: 'mapping',
-  construct: function (data) { return null !== data ? data : {}; }
-});
-
-},{"../type":13}],22:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlMerge(data) {
-  return '<<' === data || null === data;
-}
-
-module.exports = new Type('tag:yaml.org,2002:merge', {
-  kind: 'scalar',
-  resolve: resolveYamlMerge
-});
-
-},{"../type":13}],23:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlNull(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var max = data.length;
-
-  return (max === 1 && data === '~') ||
-         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
-}
-
-function constructYamlNull() {
-  return null;
-}
-
-function isNull(object) {
-  return null === object;
-}
-
-module.exports = new Type('tag:yaml.org,2002:null', {
-  kind: 'scalar',
-  resolve: resolveYamlNull,
-  construct: constructYamlNull,
-  predicate: isNull,
-  represent: {
-    canonical: function () { return '~';    },
-    lowercase: function () { return 'null'; },
-    uppercase: function () { return 'NULL'; },
-    camelcase: function () { return 'Null'; }
-  },
-  defaultStyle: 'lowercase'
-});
-
-},{"../type":13}],24:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-var _toString       = Object.prototype.toString;
-
-function resolveYamlOmap(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var objectKeys = [], index, length, pair, pairKey, pairHasKey,
-      object = data;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-    pairHasKey = false;
-
-    if ('[object Object]' !== _toString.call(pair)) {
-      return false;
-    }
-
-    for (pairKey in pair) {
-      if (_hasOwnProperty.call(pair, pairKey)) {
-        if (!pairHasKey) {
-          pairHasKey = true;
-        } else {
-          return false;
-        }
-      }
-    }
-
-    if (!pairHasKey) {
-      return false;
-    }
-
-    if (-1 === objectKeys.indexOf(pairKey)) {
-      objectKeys.push(pairKey);
-    } else {
-      return false;
-    }
-  }
-
-  return true;
-}
-
-function constructYamlOmap(data) {
-  return null !== data ? data : [];
-}
-
-module.exports = new Type('tag:yaml.org,2002:omap', {
-  kind: 'sequence',
-  resolve: resolveYamlOmap,
-  construct: constructYamlOmap
-});
-
-},{"../type":13}],25:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-var _toString = Object.prototype.toString;
-
-function resolveYamlPairs(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var index, length, pair, keys, result,
-      object = data;
-
-  result = new Array(object.length);
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-
-    if ('[object Object]' !== _toString.call(pair)) {
-      return false;
-    }
-
-    keys = Object.keys(pair);
-
-    if (1 !== keys.length) {
-      return false;
-    }
-
-    result[index] = [ keys[0], pair[keys[0]] ];
-  }
-
-  return true;
-}
-
-function constructYamlPairs(data) {
-  if (null === data) {
-    return [];
-  }
-
-  var index, length, pair, keys, result,
-      object = data;
-
-  result = new Array(object.length);
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-
-    keys = Object.keys(pair);
-
-    result[index] = [ keys[0], pair[keys[0]] ];
-  }
-
-  return result;
-}
-
-module.exports = new Type('tag:yaml.org,2002:pairs', {
-  kind: 'sequence',
-  resolve: resolveYamlPairs,
-  construct: constructYamlPairs
-});
-
-},{"../type":13}],26:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:seq', {
-  kind: 'sequence',
-  construct: function (data) { return null !== data ? data : []; }
-});
-
-},{"../type":13}],27:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-function resolveYamlSet(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var key, object = data;
-
-  for (key in object) {
-    if (_hasOwnProperty.call(object, key)) {
-      if (null !== object[key]) {
-        return false;
-      }
-    }
-  }
-
-  return true;
-}
-
-function constructYamlSet(data) {
-  return null !== data ? data : {};
-}
-
-module.exports = new Type('tag:yaml.org,2002:set', {
-  kind: 'mapping',
-  resolve: resolveYamlSet,
-  construct: constructYamlSet
-});
-
-},{"../type":13}],28:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:str', {
-  kind: 'scalar',
-  construct: function (data) { return null !== data ? data : ''; }
-});
-
-},{"../type":13}],29:[function(require,module,exports){
-'use strict';
-
-var Type = require('../type');
-
-var YAML_TIMESTAMP_REGEXP = new RegExp(
-  '^([0-9][0-9][0-9][0-9])'          + // [1] year
-  '-([0-9][0-9]?)'                   + // [2] month
-  '-([0-9][0-9]?)'                   + // [3] day
-  '(?:(?:[Tt]|[ \\t]+)'              + // ...
-  '([0-9][0-9]?)'                    + // [4] hour
-  ':([0-9][0-9])'                    + // [5] minute
-  ':([0-9][0-9])'                    + // [6] second
-  '(?:\\.([0-9]*))?'                 + // [7] fraction
-  '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
-  '(?::([0-9][0-9]))?))?)?$');         // [11] tz_minute
-
-function resolveYamlTimestamp(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var match, year, month, day, hour, minute, second, fraction = 0,
-      delta = null, tz_hour, tz_minute, date;
-
-  match = YAML_TIMESTAMP_REGEXP.exec(data);
-
-  if (null === match) {
-    return false;
-  }
-
-  return true;
-}
-
-function constructYamlTimestamp(data) {
-  var match, year, month, day, hour, minute, second, fraction = 0,
-      delta = null, tz_hour, tz_minute, date;
-
-  match = YAML_TIMESTAMP_REGEXP.exec(data);
-
-  if (null === match) {
-    throw new Error('Date resolve error');
-  }
-
-  // match: [1] year [2] month [3] day
-
-  year = +(match[1]);
-  month = +(match[2]) - 1; // JS month starts with 0
-  day = +(match[3]);
-
-  if (!match[4]) { // no hour
-    return new Date(Date.UTC(year, month, day));
-  }
-
-  // match: [4] hour [5] minute [6] second [7] fraction
-
-  hour = +(match[4]);
-  minute = +(match[5]);
-  second = +(match[6]);
-
-  if (match[7]) {
-    fraction = match[7].slice(0, 3);
-    while (fraction.length < 3) { // milli-seconds
-      fraction += '0';
-    }
-    fraction = +fraction;
-  }
-
-  // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute
-
-  if (match[9]) {
-    tz_hour = +(match[10]);
-    tz_minute = +(match[11] || 0);
-    delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
-    if ('-' === match[9]) {
-      delta = -delta;
-    }
-  }
-
-  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
-
-  if (delta) {
-    date.setTime(date.getTime() - delta);
-  }
-
-  return date;
-}
-
-function representYamlTimestamp(object /*, style*/) {
-  return object.toISOString();
-}
-
-module.exports = new Type('tag:yaml.org,2002:timestamp', {
-  kind: 'scalar',
-  resolve: resolveYamlTimestamp,
-  construct: constructYamlTimestamp,
-  instanceOf: Date,
-  represent: representYamlTimestamp
-});
-
-},{"../type":13}],30:[function(require,module,exports){
-
-},{}],"/":[function(require,module,exports){
-'use strict';
-
-
-var yaml = require('./lib/js-yaml.js');
-
-
-module.exports = yaml;
-
-},{"./lib/js-yaml.js":1}]},{},[])("/")
-});
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/dist/js-yaml.min.js
deleted file mode 100644 (file)
index b6dbd2b..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-/* js-yaml 3.2.7 https://github.com/nodeca/js-yaml */
-!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.jsyaml=e()}}(function(){return function e(t,n,i){function r(a,s){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!s&&u)return u(a,!0);if(o)return o(a,!0);var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var l=n[a]={exports:{}};t[a][0].call(l.exports,function(e){var n=t[a][1][e];return r(n?n:e)},l,l.exports,e,t,n,i)}return n[a].exports}for(var o="function"==typeof require&&require,a=0;a<i.length;a++)r(i[a]);return r}({1:[function(e,t){"use strict";function n(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}var i=e("./js-yaml/loader"),r=e("./js-yaml/dumper");t.exports.Type=e("./js-yaml/type"),t.exports.Schema=e("./js-yaml/schema"),t.exports.FAILSAFE_SCHEMA=e("./js-yaml/schema/failsafe"),t.exports.JSON_SCHEMA=e("./js-yaml/schema/json"),t.exports.CORE_SCHEMA=e("./js-yaml/schema/core"),t.exports.DEFAULT_SAFE_SCHEMA=e("./js-yaml/schema/default_safe"),t.exports.DEFAULT_FULL_SCHEMA=e("./js-yaml/schema/default_full"),t.exports.load=i.load,t.exports.loadAll=i.loadAll,t.exports.safeLoad=i.safeLoad,t.exports.safeLoadAll=i.safeLoadAll,t.exports.dump=r.dump,t.exports.safeDump=r.safeDump,t.exports.YAMLException=e("./js-yaml/exception"),t.exports.MINIMAL_SCHEMA=e("./js-yaml/schema/failsafe"),t.exports.SAFE_SCHEMA=e("./js-yaml/schema/default_safe"),t.exports.DEFAULT_SCHEMA=e("./js-yaml/schema/default_full"),t.exports.scan=n("scan"),t.exports.parse=n("parse"),t.exports.compose=n("compose"),t.exports.addConstructor=n("addConstructor")},{"./js-yaml/dumper":3,"./js-yaml/exception":4,"./js-yaml/loader":5,"./js-yaml/schema":7,"./js-yaml/schema/core":8,"./js-yaml/schema/default_full":9,"./js-yaml/schema/default_safe":10,"./js-yaml/schema/failsafe":11,"./js-yaml/schema/json":12,"./js-yaml/type":13}],2:[function(e,t){"use strict";function n(e){return void 0===e||null===e}function i(e){return"object"==typeof e&&null!==e}function r(e){return Array.isArray(e)?e:n(e)?[]:[e]}function o(e,t){var n,i,r,o;if(t)for(o=Object.keys(t),n=0,i=o.length;i>n;n+=1)r=o[n],e[r]=t[r];return e}function a(e,t){var n,i="";for(n=0;t>n;n+=1)i+=e;return i}function s(e){return 0===e&&Number.NEGATIVE_INFINITY===1/e}t.exports.isNothing=n,t.exports.isObject=i,t.exports.toArray=r,t.exports.repeat=a,t.exports.isNegativeZero=s,t.exports.extend=o},{}],3:[function(e,t){"use strict";function n(e,t){var n,i,r,o,a,s,u;if(null===t)return{};for(n={},i=Object.keys(t),r=0,o=i.length;o>r;r+=1)a=i[r],s=String(t[a]),"!!"===a.slice(0,2)&&(a="tag:yaml.org,2002:"+a.slice(2)),u=e.compiledTypeMap[a],u&&C.call(u.styleAliases,s)&&(s=u.styleAliases[s]),n[a]=s;return n}function i(e){var t,n,i;if(t=e.toString(16).toUpperCase(),255>=e)n="x",i=2;else if(65535>=e)n="u",i=4;else{if(!(4294967295>=e))throw new v("code point within a string may not be greater than 0xFFFFFFFF");n="U",i=8}return"\\"+n+x.repeat("0",i-t.length)+t}function r(e){this.schema=e.schema||A,this.indent=Math.max(1,e.indent||2),this.skipInvalid=e.skipInvalid||!1,this.flowLevel=x.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=n(this.schema,e.styles||null),this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function o(e,t){return"\n"+x.repeat(" ",e.indent*t)}function a(e,t){var n,i,r;for(n=0,i=e.implicitTypes.length;i>n;n+=1)if(r=e.implicitTypes[n],r.resolve(t))return!0;return!1}function s(e,t){var n,r,o,s,u,c;for(e.dump="",n=!1,r=0,c=t.charCodeAt(0)||0,-1!==Z.indexOf(t)?n=!0:0===t.length?n=!0:S===c||S===t.charCodeAt(t.length-1)?n=!0:(D===c||q===c)&&(n=!0),o=0,s=t.length;s>o;o+=1)u=t.charCodeAt(o),n||(k===u||j===u||I===u||L===u||R===u||H===u||B===u||V===u||F===u||_===u||M===u||O===u||G===u||Y===u||T===u||E===u||N===u||P===u||U===u||$===u)&&(n=!0),(W[u]||!(u>=32&&126>=u||133===u||u>=160&&55295>=u||u>=57344&&65533>=u||u>=65536&&1114111>=u))&&(e.dump+=t.slice(r,o),e.dump+=W[u]||i(u),r=o+1,n=!0);o>r&&(e.dump+=t.slice(r,o)),!n&&a(e,e.dump)&&(n=!0),n&&(e.dump='"'+e.dump+'"')}function u(e,t,n){var i,r,o="",a=e.tag;for(i=0,r=n.length;r>i;i+=1)d(e,t,n[i],!1,!1)&&(0!==i&&(o+=", "),o+=e.dump);e.tag=a,e.dump="["+o+"]"}function c(e,t,n,i){var r,a,s="",u=e.tag;for(r=0,a=n.length;a>r;r+=1)d(e,t+1,n[r],!0,!0)&&(i&&0===r||(s+=o(e,t)),s+="- "+e.dump);e.tag=u,e.dump=s||"[]"}function l(e,t,n){var i,r,o,a,s,u="",c=e.tag,l=Object.keys(n);for(i=0,r=l.length;r>i;i+=1)s="",0!==i&&(s+=", "),o=l[i],a=n[o],d(e,t,o,!1,!1)&&(e.dump.length>1024&&(s+="? "),s+=e.dump+": ",d(e,t,a,!1,!1)&&(s+=e.dump,u+=s));e.tag=c,e.dump="{"+u+"}"}function p(e,t,n,i){var r,a,s,u,c,l,p="",f=e.tag,h=Object.keys(n);for(r=0,a=h.length;a>r;r+=1)l="",i&&0===r||(l+=o(e,t)),s=h[r],u=n[s],d(e,t+1,s,!0,!0)&&(c=null!==e.tag&&"?"!==e.tag||e.dump&&e.dump.length>1024,c&&(l+=e.dump&&j===e.dump.charCodeAt(0)?"?":"? "),l+=e.dump,c&&(l+=o(e,t)),d(e,t+1,u,!0,c)&&(l+=e.dump&&j===e.dump.charCodeAt(0)?":":": ",l+=e.dump,p+=l));e.tag=f,e.dump=p||"{}"}function f(e,t,n){var i,r,o,a,s,u;for(r=n?e.explicitTypes:e.implicitTypes,o=0,a=r.length;a>o;o+=1)if(s=r[o],(s.instanceOf||s.predicate)&&(!s.instanceOf||"object"==typeof t&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(e.tag=n?s.tag:"?",s.represent){if(u=e.styleMap[s.tag]||s.defaultStyle,"[object Function]"===w.call(s.represent))i=s.represent(t,u);else{if(!C.call(s.represent,u))throw new v("!<"+s.tag+'> tag resolver accepts not "'+u+'" style');i=s.represent[u](t,u)}e.dump=i}return!0}return!1}function d(e,t,n,i,r){e.tag=null,e.dump=n,f(e,n,!1)||f(e,n,!0);var o=w.call(e.dump);i&&(i=0>e.flowLevel||e.flowLevel>t),(null!==e.tag&&"?"!==e.tag||2!==e.indent&&t>0)&&(r=!1);var a,d,h="[object Object]"===o||"[object Array]"===o;if(h&&(a=e.duplicates.indexOf(n),d=-1!==a),d&&e.usedDuplicates[a])e.dump="*ref_"+a;else{if(h&&d&&!e.usedDuplicates[a]&&(e.usedDuplicates[a]=!0),"[object Object]"===o)i&&0!==Object.keys(e.dump).length?(p(e,t,e.dump,r),d&&(e.dump="&ref_"+a+(0===t?"\n":"")+e.dump)):(l(e,t,e.dump),d&&(e.dump="&ref_"+a+" "+e.dump));else if("[object Array]"===o)i&&0!==e.dump.length?(c(e,t,e.dump,r),d&&(e.dump="&ref_"+a+(0===t?"\n":"")+e.dump)):(u(e,t,e.dump),d&&(e.dump="&ref_"+a+" "+e.dump));else{if("[object String]"!==o){if(e.skipInvalid)return!1;throw new v("unacceptable kind of an object to dump "+o)}"?"!==e.tag&&s(e,e.dump)}null!==e.tag&&"?"!==e.tag&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function h(e,t){var n,i,r=[],o=[];for(m(e,r,o),n=0,i=o.length;i>n;n+=1)t.duplicates.push(r[o[n]]);t.usedDuplicates=new Array(i)}function m(e,t,n){{var i,r,o;w.call(e)}if(null!==e&&"object"==typeof e)if(r=t.indexOf(e),-1!==r)-1===n.indexOf(r)&&n.push(r);else if(t.push(e),Array.isArray(e))for(r=0,o=e.length;o>r;r+=1)m(e[r],t,n);else for(i=Object.keys(e),r=0,o=i.length;o>r;r+=1)m(e[i[r]],t,n)}function g(e,t){t=t||{};var n=new r(t);return h(e,n),d(n,0,e,!0,!0)?n.dump+"\n":""}function y(e,t){return g(e,x.extend({schema:b},t))}var x=e("./common"),v=e("./exception"),A=e("./schema/default_full"),b=e("./schema/default_safe"),w=Object.prototype.toString,C=Object.prototype.hasOwnProperty,k=9,j=10,I=13,S=32,O=33,E=34,F=35,N=37,_=38,T=39,M=42,L=44,D=45,U=58,Y=62,q=63,P=64,R=91,H=93,$=96,B=123,G=124,V=125,W={};W[0]="\\0",W[7]="\\a",W[8]="\\b",W[9]="\\t",W[10]="\\n",W[11]="\\v",W[12]="\\f",W[13]="\\r",W[27]="\\e",W[34]='\\"',W[92]="\\\\",W[133]="\\N",W[160]="\\_",W[8232]="\\L",W[8233]="\\P";var Z=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];t.exports.dump=g,t.exports.safeDump=y},{"./common":2,"./exception":4,"./schema/default_full":9,"./schema/default_safe":10}],4:[function(e,t){"use strict";function n(e,t){this.name="YAMLException",this.reason=e,this.mark=t,this.message=this.toString(!1)}n.prototype.toString=function(e){var t;return t="JS-YAML: "+(this.reason||"(unknown reason)"),!e&&this.mark&&(t+=" "+this.mark.toString()),t},t.exports=n},{}],5:[function(e,t){"use strict";function n(e){return 10===e||13===e}function i(e){return 9===e||32===e}function r(e){return 9===e||32===e||10===e||13===e}function o(e){return 44===e||91===e||93===e||123===e||125===e}function a(e){var t;return e>=48&&57>=e?e-48:(t=32|e,t>=97&&102>=t?t-97+10:-1)}function s(e){return 120===e?2:117===e?4:85===e?8:0}function u(e){return e>=48&&57>=e?e-48:-1}function c(e){return 48===e?"\x00":97===e?"\a":98===e?"\b":116===e?"  ":9===e?"       ":110===e?"\n":118===e?"\v":102===e?"\f":114===e?"\r":101===e?"\e":32===e?" ":34===e?'"':47===e?"/":92===e?"\\":78===e?"\85":95===e?" ":76===e?"\u2028":80===e?"\u2029":""}function l(e){return 65535>=e?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function p(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||$,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function f(e,t){return new P(t,new R(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function d(e,t){throw f(e,t)}function h(e,t){var n=f(e,t);if(!e.onWarning)throw n;e.onWarning.call(null,n)}function m(e,t,n,i){var r,o,a,s;if(n>t){if(s=e.input.slice(t,n),i)for(r=0,o=s.length;o>r;r+=1)a=s.charCodeAt(r),9===a||a>=32&&1114111>=a||d(e,"expected valid JSON character");e.result+=s}}function g(e,t,n){var i,r,o,a;for(q.isObject(n)||d(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(n),o=0,a=i.length;a>o;o+=1)r=i[o],B.call(t,r)||(t[r]=n[r])}function y(e,t,n,i,r){var o,a;if(i=String(i),null===t&&(t={}),"tag:yaml.org,2002:merge"===n)if(Array.isArray(r))for(o=0,a=r.length;a>o;o+=1)g(e,t,r[o]);else g(e,t,r);else t[i]=r;return t}function x(e){var t;t=e.input.charCodeAt(e.position),10===t?e.position++:13===t?(e.position++,10===e.input.charCodeAt(e.position)&&e.position++):d(e,"a line break is expected"),e.line+=1,e.lineStart=e.position}function v(e,t,r){for(var o=0,a=e.input.charCodeAt(e.position);0!==a;){for(;i(a);)a=e.input.charCodeAt(++e.position);if(t&&35===a)do a=e.input.charCodeAt(++e.position);while(10!==a&&13!==a&&0!==a);if(!n(a))break;for(x(e),a=e.input.charCodeAt(e.position),o++,e.lineIndent=0;32===a;)e.lineIndent++,a=e.input.charCodeAt(++e.position)}return-1!==r&&0!==o&&e.lineIndent<r&&h(e,"deficient indentation"),o}function A(e){var t,n=e.position;return t=e.input.charCodeAt(n),45!==t&&46!==t||e.input.charCodeAt(n+1)!==t||e.input.charCodeAt(n+2)!==t||(n+=3,t=e.input.charCodeAt(n),0!==t&&!r(t))?!1:!0}function b(e,t){1===t?e.result+=" ":t>1&&(e.result+=q.repeat("\n",t-1))}function w(e,t,a){var s,u,c,l,p,f,d,h,g,y=e.kind,x=e.result;if(g=e.input.charCodeAt(e.position),r(g)||o(g)||35===g||38===g||42===g||33===g||124===g||62===g||39===g||34===g||37===g||64===g||96===g)return!1;if((63===g||45===g)&&(u=e.input.charCodeAt(e.position+1),r(u)||a&&o(u)))return!1;for(e.kind="scalar",e.result="",c=l=e.position,p=!1;0!==g;){if(58===g){if(u=e.input.charCodeAt(e.position+1),r(u)||a&&o(u))break}else if(35===g){if(s=e.input.charCodeAt(e.position-1),r(s))break}else{if(e.position===e.lineStart&&A(e)||a&&o(g))break;if(n(g)){if(f=e.line,d=e.lineStart,h=e.lineIndent,v(e,!1,-1),e.lineIndent>=t){p=!0,g=e.input.charCodeAt(e.position);continue}e.position=l,e.line=f,e.lineStart=d,e.lineIndent=h;break}}p&&(m(e,c,l,!1),b(e,e.line-f),c=l=e.position,p=!1),i(g)||(l=e.position+1),g=e.input.charCodeAt(++e.position)}return m(e,c,l,!1),e.result?!0:(e.kind=y,e.result=x,!1)}function C(e,t){var i,r,o;if(i=e.input.charCodeAt(e.position),39!==i)return!1;for(e.kind="scalar",e.result="",e.position++,r=o=e.position;0!==(i=e.input.charCodeAt(e.position));)if(39===i){if(m(e,r,e.position,!0),i=e.input.charCodeAt(++e.position),39!==i)return!0;r=o=e.position,e.position++}else n(i)?(m(e,r,o,!0),b(e,v(e,!1,t)),r=o=e.position):e.position===e.lineStart&&A(e)?d(e,"unexpected end of the document within a single quoted scalar"):(e.position++,o=e.position);d(e,"unexpected end of the stream within a single quoted scalar")}function k(e,t){var i,r,o,u,c,p;if(p=e.input.charCodeAt(e.position),34!==p)return!1;for(e.kind="scalar",e.result="",e.position++,i=r=e.position;0!==(p=e.input.charCodeAt(e.position));){if(34===p)return m(e,i,e.position,!0),e.position++,!0;if(92===p){if(m(e,i,e.position,!0),p=e.input.charCodeAt(++e.position),n(p))v(e,!1,t);else if(256>p&&it[p])e.result+=rt[p],e.position++;else if((c=s(p))>0){for(o=c,u=0;o>0;o--)p=e.input.charCodeAt(++e.position),(c=a(p))>=0?u=(u<<4)+c:d(e,"expected hexadecimal character");e.result+=l(u),e.position++}else d(e,"unknown escape sequence");i=r=e.position}else n(p)?(m(e,i,r,!0),b(e,v(e,!1,t)),i=r=e.position):e.position===e.lineStart&&A(e)?d(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}d(e,"unexpected end of the stream within a double quoted scalar")}function j(e,t){var n,i,o,a,s,u,c,l,p,f,h,m=!0,g=e.tag,x=e.anchor;if(h=e.input.charCodeAt(e.position),91===h)a=93,c=!1,i=[];else{if(123!==h)return!1;a=125,c=!0,i={}}for(null!==e.anchor&&(e.anchorMap[e.anchor]=i),h=e.input.charCodeAt(++e.position);0!==h;){if(v(e,!0,t),h=e.input.charCodeAt(e.position),h===a)return e.position++,e.tag=g,e.anchor=x,e.kind=c?"mapping":"sequence",e.result=i,!0;m||d(e,"missed comma between flow collection entries"),p=l=f=null,s=u=!1,63===h&&(o=e.input.charCodeAt(e.position+1),r(o)&&(s=u=!0,e.position++,v(e,!0,t))),n=e.line,_(e,t,G,!1,!0),p=e.tag,l=e.result,v(e,!0,t),h=e.input.charCodeAt(e.position),!u&&e.line!==n||58!==h||(s=!0,h=e.input.charCodeAt(++e.position),v(e,!0,t),_(e,t,G,!1,!0),f=e.result),c?y(e,i,p,l,f):i.push(s?y(e,null,p,l,f):l),v(e,!0,t),h=e.input.charCodeAt(e.position),44===h?(m=!0,h=e.input.charCodeAt(++e.position)):m=!1}d(e,"unexpected end of the stream within a flow collection")}function I(e,t){var r,o,a,s,c=J,l=!1,p=t,f=0,h=!1;if(s=e.input.charCodeAt(e.position),124===s)o=!1;else{if(62!==s)return!1;o=!0}for(e.kind="scalar",e.result="";0!==s;)if(s=e.input.charCodeAt(++e.position),43===s||45===s)J===c?c=43===s?K:z:d(e,"repeat of a chomping mode identifier");else{if(!((a=u(s))>=0))break;0===a?d(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?d(e,"repeat of an indentation width identifier"):(p=t+a-1,l=!0)}if(i(s)){do s=e.input.charCodeAt(++e.position);while(i(s));if(35===s)do s=e.input.charCodeAt(++e.position);while(!n(s)&&0!==s)}for(;0!==s;){for(x(e),e.lineIndent=0,s=e.input.charCodeAt(e.position);(!l||e.lineIndent<p)&&32===s;)e.lineIndent++,s=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>p&&(p=e.lineIndent),n(s))f++;else{if(e.lineIndent<p){c===K?e.result+=q.repeat("\n",f):c===J&&l&&(e.result+="\n");break}for(o?i(s)?(h=!0,e.result+=q.repeat("\n",f+1)):h?(h=!1,e.result+=q.repeat("\n",f+1)):0===f?l&&(e.result+=" "):e.result+=q.repeat("\n",f):e.result+=l?q.repeat("\n",f+1):q.repeat("\n",f),l=!0,f=0,r=e.position;!n(s)&&0!==s;)s=e.input.charCodeAt(++e.position);m(e,r,e.position,!1)}}return!0}function S(e,t){var n,i,o,a=e.tag,s=e.anchor,u=[],c=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=u),o=e.input.charCodeAt(e.position);0!==o&&45===o&&(i=e.input.charCodeAt(e.position+1),r(i));)if(c=!0,e.position++,v(e,!0,-1)&&e.lineIndent<=t)u.push(null),o=e.input.charCodeAt(e.position);else if(n=e.line,_(e,t,W,!1,!0),u.push(e.result),v(e,!0,-1),o=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>t)&&0!==o)d(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break;return c?(e.tag=a,e.anchor=s,e.kind="sequence",e.result=u,!0):!1}function O(e,t,n){var o,a,s,u,c=e.tag,l=e.anchor,p={},f=null,h=null,m=null,g=!1,x=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=p),u=e.input.charCodeAt(e.position);0!==u;){if(o=e.input.charCodeAt(e.position+1),s=e.line,63!==u&&58!==u||!r(o)){if(!_(e,n,V,!1,!0))break;if(e.line===s){for(u=e.input.charCodeAt(e.position);i(u);)u=e.input.charCodeAt(++e.position);if(58===u)u=e.input.charCodeAt(++e.position),r(u)||d(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(y(e,p,f,h,null),f=h=m=null),x=!0,g=!1,a=!1,f=e.tag,h=e.result;else{if(!x)return e.tag=c,e.anchor=l,!0;d(e,"can not read an implicit mapping pair; a colon is missed")}}else{if(!x)return e.tag=c,e.anchor=l,!0;d(e,"can not read a block mapping entry; a multiline key may not be an implicit key")}}else 63===u?(g&&(y(e,p,f,h,null),f=h=m=null),x=!0,g=!0,a=!0):g?(g=!1,a=!0):d(e,"incomplete explicit mapping pair; a key node is missed"),e.position+=1,u=o;if((e.line===s||e.lineIndent>t)&&(_(e,t,Z,!0,a)&&(g?h=e.result:m=e.result),g||(y(e,p,f,h,m),f=h=m=null),v(e,!0,-1),u=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==u)d(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return g&&y(e,p,f,h,null),x&&(e.tag=c,e.anchor=l,e.kind="mapping",e.result=p),x}function E(e){var t,n,i,o,a=!1,s=!1;if(o=e.input.charCodeAt(e.position),33!==o)return!1;if(null!==e.tag&&d(e,"duplication of a tag property"),o=e.input.charCodeAt(++e.position),60===o?(a=!0,o=e.input.charCodeAt(++e.position)):33===o?(s=!0,n="!!",o=e.input.charCodeAt(++e.position)):n="!",t=e.position,a){do o=e.input.charCodeAt(++e.position);while(0!==o&&62!==o);e.position<e.length?(i=e.input.slice(t,e.position),o=e.input.charCodeAt(++e.position)):d(e,"unexpected end of the stream within a verbatim tag")}else{for(;0!==o&&!r(o);)33===o&&(s?d(e,"tag suffix cannot contain exclamation marks"):(n=e.input.slice(t-1,e.position+1),tt.test(n)||d(e,"named tag handle cannot contain such characters"),s=!0,t=e.position+1)),o=e.input.charCodeAt(++e.position);i=e.input.slice(t,e.position),et.test(i)&&d(e,"tag suffix cannot contain flow indicator characters")}return i&&!nt.test(i)&&d(e,"tag name cannot contain such characters: "+i),a?e.tag=i:B.call(e.tagMap,n)?e.tag=e.tagMap[n]+i:"!"===n?e.tag="!"+i:"!!"===n?e.tag="tag:yaml.org,2002:"+i:d(e,'undeclared tag handle "'+n+'"'),!0}function F(e){var t,n;if(n=e.input.charCodeAt(e.position),38!==n)return!1;for(null!==e.anchor&&d(e,"duplication of an anchor property"),n=e.input.charCodeAt(++e.position),t=e.position;0!==n&&!r(n)&&!o(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&d(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function N(e){{var t,n,i;e.length,e.input}if(i=e.input.charCodeAt(e.position),42!==i)return!1;for(i=e.input.charCodeAt(++e.position),t=e.position;0!==i&&!r(i)&&!o(i);)i=e.input.charCodeAt(++e.position);return e.position===t&&d(e,"name of an alias node must contain at least one character"),n=e.input.slice(t,e.position),e.anchorMap.hasOwnProperty(n)||d(e,'unidentified alias "'+n+'"'),e.result=e.anchorMap[n],v(e,!0,-1),!0}function _(e,t,n,i,r){var o,a,s,u,c,l,p,f,m=1,g=!1,y=!1;if(e.tag=null,e.anchor=null,e.kind=null,e.result=null,o=a=s=Z===n||W===n,i&&v(e,!0,-1)&&(g=!0,e.lineIndent>t?m=1:e.lineIndent===t?m=0:e.lineIndent<t&&(m=-1)),1===m)for(;E(e)||F(e);)v(e,!0,-1)?(g=!0,s=o,e.lineIndent>t?m=1:e.lineIndent===t?m=0:e.lineIndent<t&&(m=-1)):s=!1;if(s&&(s=g||r),(1===m||Z===n)&&(p=G===n||V===n?t:t+1,f=e.position-e.lineStart,1===m?s&&(S(e,f)||O(e,f,p))||j(e,p)?y=!0:(a&&I(e,p)||C(e,p)||k(e,p)?y=!0:N(e)?(y=!0,(null!==e.tag||null!==e.anchor)&&d(e,"alias node should not have any properties")):w(e,p,G===n)&&(y=!0,null===e.tag&&(e.tag="?")),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):0===m&&(y=s&&S(e,f))),null!==e.tag&&"!"!==e.tag)if("?"===e.tag){for(u=0,c=e.implicitTypes.length;c>u;u+=1)if(l=e.implicitTypes[u],l.resolve(e.result)){e.result=l.construct(e.result),e.tag=l.tag,null!==e.anchor&&(e.anchorMap[e.anchor]=e.result);break}}else B.call(e.typeMap,e.tag)?(l=e.typeMap[e.tag],null!==e.result&&l.kind!==e.kind&&d(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+l.kind+'", not "'+e.kind+'"'),l.resolve(e.result)?(e.result=l.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):d(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):h(e,"unknown tag !<"+e.tag+">");return null!==e.tag||null!==e.anchor||y}function T(e){var t,o,a,s,u=e.position,c=!1;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(s=e.input.charCodeAt(e.position))&&(v(e,!0,-1),s=e.input.charCodeAt(e.position),!(e.lineIndent>0||37!==s));){for(c=!0,s=e.input.charCodeAt(++e.position),t=e.position;0!==s&&!r(s);)s=e.input.charCodeAt(++e.position);for(o=e.input.slice(t,e.position),a=[],o.length<1&&d(e,"directive name must not be less than one character in length");0!==s;){for(;i(s);)s=e.input.charCodeAt(++e.position);if(35===s){do s=e.input.charCodeAt(++e.position);while(0!==s&&!n(s));break}if(n(s))break;for(t=e.position;0!==s&&!r(s);)s=e.input.charCodeAt(++e.position);a.push(e.input.slice(t,e.position))}0!==s&&x(e),B.call(at,o)?at[o](e,o,a):h(e,'unknown document directive "'+o+'"')}return v(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,v(e,!0,-1)):c&&d(e,"directives end mark is expected"),_(e,e.lineIndent-1,Z,!1,!0),v(e,!0,-1),e.checkLineBreaks&&X.test(e.input.slice(u,e.position))&&h(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&A(e)?void(46===e.input.charCodeAt(e.position)&&(e.position+=3,v(e,!0,-1))):void(e.position<e.length-1&&d(e,"end of the stream or a document separator is expected"))}function M(e,t){e=String(e),t=t||{},0!==e.length&&10!==e.charCodeAt(e.length-1)&&13!==e.charCodeAt(e.length-1)&&(e+="\n");var n=new p(e,t);for(Q.test(n.input)&&d(n,"the stream contains non-printable characters"),n.input+="\x00";32===n.input.charCodeAt(n.position);)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)T(n);return n.documents}function L(e,t,n){var i,r,o=M(e,n);for(i=0,r=o.length;r>i;i+=1)t(o[i])}function D(e,t){var n=M(e,t);if(0===n.length)return void 0;if(1===n.length)return n[0];throw new P("expected a single document in the stream, but found more")}function U(e,t,n){L(e,t,q.extend({schema:H},n))}function Y(e,t){return D(e,q.extend({schema:H},t))}for(var q=e("./common"),P=e("./exception"),R=e("./mark"),H=e("./schema/default_safe"),$=e("./schema/default_full"),B=Object.prototype.hasOwnProperty,G=1,V=2,W=3,Z=4,J=1,z=2,K=3,Q=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uD800-\uDFFF\uFFFE\uFFFF]/,X=/[\x85\u2028\u2029]/,et=/[,\[\]\{\}]/,tt=/^(?:!|!!|![a-z\-]+!)$/i,nt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i,it=new Array(256),rt=new Array(256),ot=0;256>ot;ot++)it[ot]=c(ot)?1:0,rt[ot]=c(ot);var at={YAML:function(e,t,n){var i,r,o;null!==e.version&&d(e,"duplication of %YAML directive"),1!==n.length&&d(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),null===i&&d(e,"ill-formed argument of the YAML directive"),r=parseInt(i[1],10),o=parseInt(i[2],10),1!==r&&d(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=2>o,1!==o&&2!==o&&h(e,"unsupported YAML version of the document")},TAG:function(e,t,n){var i,r;2!==n.length&&d(e,"TAG directive accepts exactly two arguments"),i=n[0],r=n[1],tt.test(i)||d(e,"ill-formed tag handle (first argument) of the TAG directive"),B.call(e.tagMap,i)&&d(e,'there is a previously declared suffix for "'+i+'" tag handle'),nt.test(r)||d(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[i]=r}};t.exports.loadAll=L,t.exports.load=D,t.exports.safeLoadAll=U,t.exports.safeLoad=Y},{"./common":2,"./exception":4,"./mark":6,"./schema/default_full":9,"./schema/default_safe":10}],6:[function(e,t){"use strict";function n(e,t,n,i,r){this.name=e,this.buffer=t,this.position=n,this.line=i,this.column=r}var i=e("./common");n.prototype.getSnippet=function(e,t){var n,r,o,a,s;if(!this.buffer)return null;for(e=e||4,t=t||75,n="",r=this.position;r>0&&-1==="\x00\r\n\85\u2028\u2029".indexOf(this.buffer.charAt(r-1));)if(r-=1,this.position-r>t/2-1){n=" ... ",r+=5;break}for(o="",a=this.position;a<this.buffer.length&&-1==="\x00\r\n\85\u2028\u2029".indexOf(this.buffer.charAt(a));)if(a+=1,a-this.position>t/2-1){o=" ... ",a-=5;break}return s=this.buffer.slice(r,a),i.repeat(" ",e)+n+s+o+"\n"+i.repeat(" ",e+this.position-r+n.length)+"^"},n.prototype.toString=function(e){var t,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),e||(t=this.getSnippet(),t&&(n+=":\n"+t)),n},t.exports=n},{"./common":2}],7:[function(e,t){"use strict";function n(e,t,i){var r=[];return e.include.forEach(function(e){i=n(e,t,i)}),e[t].forEach(function(e){i.forEach(function(t,n){t.tag===e.tag&&r.push(n)}),i.push(e)}),i.filter(function(e,t){return-1===r.indexOf(t)})}function i(){function e(e){i[e.tag]=e}var t,n,i={};for(t=0,n=arguments.length;n>t;t+=1)arguments[t].forEach(e);return i}function r(e){this.include=e.include||[],this.implicit=e.implicit||[],this.explicit=e.explicit||[],this.implicit.forEach(function(e){if(e.loadKind&&"scalar"!==e.loadKind)throw new a("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=n(this,"implicit",[]),this.compiledExplicit=n(this,"explicit",[]),this.compiledTypeMap=i(this.compiledImplicit,this.compiledExplicit)}var o=e("./common"),a=e("./exception"),s=e("./type");r.DEFAULT=null,r.create=function(){var e,t;switch(arguments.length){case 1:e=r.DEFAULT,t=arguments[0];break;case 2:e=arguments[0],t=arguments[1];break;default:throw new a("Wrong number of arguments for Schema.create function")}if(e=o.toArray(e),t=o.toArray(t),!e.every(function(e){return e instanceof r}))throw new a("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!t.every(function(e){return e instanceof s}))throw new a("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new r({include:e,explicit:t})},t.exports=r},{"./common":2,"./exception":4,"./type":13}],8:[function(e,t){"use strict";var n=e("../schema");t.exports=new n({include:[e("./json")]})},{"../schema":7,"./json":12}],9:[function(e,t){"use strict";var n=e("../schema");t.exports=n.DEFAULT=new n({include:[e("./default_safe")],explicit:[e("../type/js/undefined"),e("../type/js/regexp"),e("../type/js/function")]})},{"../schema":7,"../type/js/function":18,"../type/js/regexp":19,"../type/js/undefined":20,"./default_safe":10}],10:[function(e,t){"use strict";var n=e("../schema");t.exports=new n({include:[e("./core")],implicit:[e("../type/timestamp"),e("../type/merge")],explicit:[e("../type/binary"),e("../type/omap"),e("../type/pairs"),e("../type/set")]})},{"../schema":7,"../type/binary":14,"../type/merge":22,"../type/omap":24,"../type/pairs":25,"../type/set":27,"../type/timestamp":29,"./core":8}],11:[function(e,t){"use strict";var n=e("../schema");t.exports=new n({explicit:[e("../type/str"),e("../type/seq"),e("../type/map")]})},{"../schema":7,"../type/map":21,"../type/seq":26,"../type/str":28}],12:[function(e,t){"use strict";var n=e("../schema");t.exports=new n({include:[e("./failsafe")],implicit:[e("../type/null"),e("../type/bool"),e("../type/int"),e("../type/float")]})},{"../schema":7,"../type/bool":15,"../type/float":16,"../type/int":17,"../type/null":23,"./failsafe":11}],13:[function(e,t){"use strict";function n(e){var t={};return null!==e&&Object.keys(e).forEach(function(n){e[n].forEach(function(e){t[String(e)]=n})}),t}function i(e,t){if(t=t||{},Object.keys(t).forEach(function(t){if(-1===o.indexOf(t))throw new r('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=n(t.styleAliases||null),-1===a.indexOf(this.kind))throw new r('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var r=e("./exception"),o=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],a=["scalar","sequence","mapping"];t.exports=i},{"./exception":4}],14:[function(e,t){"use strict";function n(e){if(null===e)return!1;var t,n,i=0,r=e.length,o=u;for(n=0;r>n;n++)if(t=o.indexOf(e.charAt(n)),!(t>64)){if(0>t)return!1;i+=6}return i%8===0}function i(e){var t,n,i=e.replace(/[\r\n=]/g,""),r=i.length,o=u,s=0,c=[];for(t=0;r>t;t++)t%4===0&&t&&(c.push(s>>16&255),c.push(s>>8&255),c.push(255&s)),s=s<<6|o.indexOf(i.charAt(t));return n=r%4*6,0===n?(c.push(s>>16&255),c.push(s>>8&255),c.push(255&s)):18===n?(c.push(s>>10&255),c.push(s>>2&255)):12===n&&c.push(s>>4&255),a?new a(c):c}function r(e){var t,n,i="",r=0,o=e.length,a=u;for(t=0;o>t;t++)t%3===0&&t&&(i+=a[r>>18&63],i+=a[r>>12&63],i+=a[r>>6&63],i+=a[63&r]),r=(r<<8)+e[t];return n=o%3,0===n?(i+=a[r>>18&63],i+=a[r>>12&63],i+=a[r>>6&63],i+=a[63&r]):2===n?(i+=a[r>>10&63],i+=a[r>>4&63],i+=a[r<<2&63],i+=a[64]):1===n&&(i+=a[r>>2&63],i+=a[r<<4&63],i+=a[64],i+=a[64]),i}function o(e){return a&&a.isBuffer(e)}var a=e("buffer").Buffer,s=e("../type"),u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";t.exports=new s("tag:yaml.org,2002:binary",{kind:"scalar",resolve:n,construct:i,predicate:o,represent:r})},{"../type":13,buffer:30}],15:[function(e,t){"use strict";function n(e){if(null===e)return!1;var t=e.length;return 4===t&&("true"===e||"True"===e||"TRUE"===e)||5===t&&("false"===e||"False"===e||"FALSE"===e)}function i(e){return"true"===e||"True"===e||"TRUE"===e}function r(e){return"[object Boolean]"===Object.prototype.toString.call(e)}var o=e("../type");t.exports=new o("tag:yaml.org,2002:bool",{kind:"scalar",resolve:n,construct:i,predicate:r,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})},{"../type":13}],16:[function(e,t){"use strict";function n(e){if(null===e)return!1;return u.test(e)?!0:!1}function i(e){var t,n,i,r;return t=e.replace(/_/g,"").toLowerCase(),n="-"===t[0]?-1:1,r=[],0<="+-".indexOf(t[0])&&(t=t.slice(1)),".inf"===t?1===n?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===t?0/0:0<=t.indexOf(":")?(t.split(":").forEach(function(e){r.unshift(parseFloat(e,10))}),t=0,i=1,r.forEach(function(e){t+=e*i,i*=60}),n*t):n*parseFloat(t,10)}function r(e,t){if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else{if(Number.NEGATIVE_INFINITY!==e)return a.isNegativeZero(e)?"-0.0":e.toString(10);switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}}}function o(e){return"[object Number]"===Object.prototype.toString.call(e)&&(0!==e%1||a.isNegativeZero(e))}var a=e("../common"),s=e("../type"),u=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+][0-9]+)?|\\.[0-9_]+(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");t.exports=new s("tag:yaml.org,2002:float",{kind:"scalar",resolve:n,construct:i,predicate:o,represent:r,defaultStyle:"lowercase"})},{"../common":2,"../type":13}],17:[function(e,t){"use strict";function n(e){return e>=48&&57>=e||e>=65&&70>=e||e>=97&&102>=e}function i(e){return e>=48&&55>=e}function r(e){return e>=48&&57>=e}function o(e){if(null===e)return!1;var t,o=e.length,a=0,s=!1;if(!o)return!1;if(t=e[a],("-"===t||"+"===t)&&(t=e[++a]),"0"===t){if(a+1===o)return!0;if(t=e[++a],"b"===t){for(a++;o>a;a++)if(t=e[a],"_"!==t){if("0"!==t&&"1"!==t)return!1;s=!0}return s}if("x"===t){for(a++;o>a;a++)if(t=e[a],"_"!==t){if(!n(e.charCodeAt(a)))return!1;
-s=!0}return s}for(;o>a;a++)if(t=e[a],"_"!==t){if(!i(e.charCodeAt(a)))return!1;s=!0}return s}for(;o>a;a++)if(t=e[a],"_"!==t){if(":"===t)break;if(!r(e.charCodeAt(a)))return!1;s=!0}return s?":"!==t?!0:/^(:[0-5]?[0-9])+$/.test(e.slice(a)):!1}function a(e){var t,n,i=e,r=1,o=[];return-1!==i.indexOf("_")&&(i=i.replace(/_/g,"")),t=i[0],("-"===t||"+"===t)&&("-"===t&&(r=-1),i=i.slice(1),t=i[0]),"0"===i?0:"0"===t?"b"===i[1]?r*parseInt(i.slice(2),2):"x"===i[1]?r*parseInt(i,16):r*parseInt(i,8):-1!==i.indexOf(":")?(i.split(":").forEach(function(e){o.unshift(parseInt(e,10))}),i=0,n=1,o.forEach(function(e){i+=e*n,n*=60}),r*i):r*parseInt(i,10)}function s(e){return"[object Number]"===Object.prototype.toString.call(e)&&0===e%1&&!u.isNegativeZero(e)}var u=e("../common"),c=e("../type");t.exports=new c("tag:yaml.org,2002:int",{kind:"scalar",resolve:o,construct:a,predicate:s,represent:{binary:function(e){return"0b"+e.toString(2)},octal:function(e){return"0"+e.toString(8)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return"0x"+e.toString(16).toUpperCase()}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})},{"../common":2,"../type":13}],18:[function(e,t){"use strict";function n(e){if(null===e)return!1;try{var t="("+e+")",n=a.parse(t,{range:!0});return"Program"!==n.type||1!==n.body.length||"ExpressionStatement"!==n.body[0].type||"FunctionExpression"!==n.body[0].expression.type?!1:!0}catch(i){return!1}}function i(e){var t,n="("+e+")",i=a.parse(n,{range:!0}),r=[];if("Program"!==i.type||1!==i.body.length||"ExpressionStatement"!==i.body[0].type||"FunctionExpression"!==i.body[0].expression.type)throw new Error("Failed to resolve function");return i.body[0].expression.params.forEach(function(e){r.push(e.name)}),t=i.body[0].expression.body.range,new Function(r,n.slice(t[0]+1,t[1]-1))}function r(e){return e.toString()}function o(e){return"[object Function]"===Object.prototype.toString.call(e)}var a;try{a=e("esprima")}catch(s){"undefined"!=typeof window&&(a=window.esprima)}var u=e("../../type");t.exports=new u("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:n,construct:i,predicate:o,represent:r})},{"../../type":13,esprima:"esprima"}],19:[function(e,t){"use strict";function n(e){if(null===e)return!1;if(0===e.length)return!1;var t=e,n=/\/([gim]*)$/.exec(e),i="";if("/"===t[0]){if(n&&(i=n[1]),i.length>3)return!1;if("/"!==t[t.length-i.length-1])return!1;t=t.slice(1,t.length-i.length-1)}try{{new RegExp(t,i)}return!0}catch(r){return!1}}function i(e){var t=e,n=/\/([gim]*)$/.exec(e),i="";return"/"===t[0]&&(n&&(i=n[1]),t=t.slice(1,t.length-i.length-1)),new RegExp(t,i)}function r(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function o(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var a=e("../../type");t.exports=new a("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:n,construct:i,predicate:o,represent:r})},{"../../type":13}],20:[function(e,t){"use strict";function n(){return!0}function i(){return void 0}function r(){return""}function o(e){return"undefined"==typeof e}var a=e("../../type");t.exports=new a("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:n,construct:i,predicate:o,represent:r})},{"../../type":13}],21:[function(e,t){"use strict";var n=e("../type");t.exports=new n("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return null!==e?e:{}}})},{"../type":13}],22:[function(e,t){"use strict";function n(e){return"<<"===e||null===e}var i=e("../type");t.exports=new i("tag:yaml.org,2002:merge",{kind:"scalar",resolve:n})},{"../type":13}],23:[function(e,t){"use strict";function n(e){if(null===e)return!0;var t=e.length;return 1===t&&"~"===e||4===t&&("null"===e||"Null"===e||"NULL"===e)}function i(){return null}function r(e){return null===e}var o=e("../type");t.exports=new o("tag:yaml.org,2002:null",{kind:"scalar",resolve:n,construct:i,predicate:r,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},{"../type":13}],24:[function(e,t){"use strict";function n(e){if(null===e)return!0;var t,n,i,r,s,u=[],c=e;for(t=0,n=c.length;n>t;t+=1){if(i=c[t],s=!1,"[object Object]"!==a.call(i))return!1;for(r in i)if(o.call(i,r)){if(s)return!1;s=!0}if(!s)return!1;if(-1!==u.indexOf(r))return!1;u.push(r)}return!0}function i(e){return null!==e?e:[]}var r=e("../type"),o=Object.prototype.hasOwnProperty,a=Object.prototype.toString;t.exports=new r("tag:yaml.org,2002:omap",{kind:"sequence",resolve:n,construct:i})},{"../type":13}],25:[function(e,t){"use strict";function n(e){if(null===e)return!0;var t,n,i,r,a,s=e;for(a=new Array(s.length),t=0,n=s.length;n>t;t+=1){if(i=s[t],"[object Object]"!==o.call(i))return!1;if(r=Object.keys(i),1!==r.length)return!1;a[t]=[r[0],i[r[0]]]}return!0}function i(e){if(null===e)return[];var t,n,i,r,o,a=e;for(o=new Array(a.length),t=0,n=a.length;n>t;t+=1)i=a[t],r=Object.keys(i),o[t]=[r[0],i[r[0]]];return o}var r=e("../type"),o=Object.prototype.toString;t.exports=new r("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:n,construct:i})},{"../type":13}],26:[function(e,t){"use strict";var n=e("../type");t.exports=new n("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return null!==e?e:[]}})},{"../type":13}],27:[function(e,t){"use strict";function n(e){if(null===e)return!0;var t,n=e;for(t in n)if(o.call(n,t)&&null!==n[t])return!1;return!0}function i(e){return null!==e?e:{}}var r=e("../type"),o=Object.prototype.hasOwnProperty;t.exports=new r("tag:yaml.org,2002:set",{kind:"mapping",resolve:n,construct:i})},{"../type":13}],28:[function(e,t){"use strict";var n=e("../type");t.exports=new n("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return null!==e?e:""}})},{"../type":13}],29:[function(e,t){"use strict";function n(e){if(null===e)return!1;var t;return t=a.exec(e),null===t?!1:!0}function i(e){var t,n,i,r,o,s,u,c,l,p,f=0,d=null;if(t=a.exec(e),null===t)throw new Error("Date resolve error");if(n=+t[1],i=+t[2]-1,r=+t[3],!t[4])return new Date(Date.UTC(n,i,r));if(o=+t[4],s=+t[5],u=+t[6],t[7]){for(f=t[7].slice(0,3);f.length<3;)f+="0";f=+f}return t[9]&&(c=+t[10],l=+(t[11]||0),d=6e4*(60*c+l),"-"===t[9]&&(d=-d)),p=new Date(Date.UTC(n,i,r,o,s,u,f)),d&&p.setTime(p.getTime()-d),p}function r(e){return e.toISOString()}var o=e("../type"),a=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?)?$");t.exports=new o("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:n,construct:i,instanceOf:Date,represent:r})},{"../type":13}],30:[function(){},{}],"/":[function(e,t){"use strict";var n=e("./lib/js-yaml.js");t.exports=n},{"./lib/js-yaml.js":1}]},{},[])("/")});
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.js
deleted file mode 100644 (file)
index 8ffa1c0..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-'use strict';
-
-
-var fs   = require('fs');
-var path = require('path');
-var util = require('util');
-var yaml = require('../lib/js-yaml');
-
-
-// Let's define a couple of classes.
-
-function Point(x, y, z) {
-  this.klass = 'Point';
-  this.x     = x;
-  this.y     = y;
-  this.z     = z;
-}
-
-
-function Space(height, width, points) {
-  if (points) {
-    if (!points.every(function (point) { return point instanceof Point; })) {
-      throw new Error('A non-Point inside a points array!');
-    }
-  }
-
-  this.klass  = 'Space';
-  this.height = height;
-  this.width  = width;
-  this.points = points;
-}
-
-
-// Then define YAML types to load and dump our Point/Space objects.
-
-var PointYamlType = new yaml.Type('!point', {
-  // Loader must parse sequence nodes only for this type (i.e. arrays in JS terminology).
-  // Other available kinds are 'scalar' (string) and 'mapping' (object).
-  // http://www.yaml.org/spec/1.2/spec.html#kind//
-  kind: 'sequence',
-
-  // Loader must check if the input object is suitable for this type.
-  resolve: function (data) {
-    // `data` may be either:
-    // - Null in case of an "empty node" (http://www.yaml.org/spec/1.2/spec.html#id2786563)
-    // - Array since we specified `kind` to 'sequence'
-    return data !== null && data.length === 3;
-  },
-
-  // If a node is resolved, use it to create a Point instance.
-  construct: function (data) {
-    return new Point(data[0], data[1], data[2]);
-  },
-
-  // Dumper must process instances of Point by rules of this YAML type.
-  instanceOf: Point,
-
-  // Dumper must represent Point objects as three-element sequence in YAML.
-  represent: function (point) {
-    return [ point.x, point.y, point.z ];
-  }
-});
-
-
-var SpaceYamlType = new yaml.Type('!space', {
-  kind: 'mapping',
-  construct: function (data) {
-    data = data || {}; // in case of empty node
-    return new Space(data.height || 0, data.width || 0, data.points || []);
-  },
-  instanceOf: Space
-  // `represent` is omitted here. So, Space objects will be dumped as is.
-  // That is regular mapping with three key-value pairs but with !space tag.
-});
-
-
-// After our types are defined, it's time to join them into a schema.
-
-var SPACE_SCHEMA = yaml.Schema.create([ SpaceYamlType, PointYamlType ]);
-
-
-// And read a document using that schema.
-
-fs.readFile(path.join(__dirname, 'custom_types.yml'), 'utf8', function (error, data) {
-  var loaded;
-
-  if (!error) {
-    loaded = yaml.load(data, { schema: SPACE_SCHEMA });
-    console.log(util.inspect(loaded, false, 20, true));
-  } else {
-    console.error(error.stack || error.message || String(error));
-  }
-});
-
-
-// There are some exports to play with this example interactively.
-
-module.exports.Point         = Point;
-module.exports.Space         = Space;
-module.exports.PointYamlType = PointYamlType;
-module.exports.SpaceYamlType = SpaceYamlType;
-module.exports.SPACE_SCHEMA  = SPACE_SCHEMA;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/custom_types.yml
deleted file mode 100644 (file)
index f10d4e2..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-subject: Custom types in JS-YAML
-spaces:
-- !space
-  height: 1000
-  width: 1000
-  points:
-  - !point [ 10, 43, 23 ]
-  - !point [ 165, 0, 50 ]
-  - !point [ 100, 100, 100 ]
-
-- !space
-  height: 64
-  width: 128
-  points:
-  - !point [ 12, 43, 0 ]
-  - !point [ 1, 4, 90 ]
-
-- !space # An empty space
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.js
deleted file mode 100644 (file)
index 7952b18..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-'use strict';
-
-
-var yaml = require('../lib/js-yaml');
-var object = require('./dumper.json');
-
-
-console.log(yaml.dump(object, {
-  flowLevel: 3,
-  styles: {
-    '!!int'  : 'hexadecimal',
-    '!!null' : 'camelcase'
-  }
-}));
-
-
-// Output:
-//==============================================================================
-// name: Wizzard
-// level: 0x11
-// sanity: Null
-// inventory:
-//   - name: Hat
-//     features: [magic, pointed]
-//     traits: {}
-//   - name: Staff
-//     features: []
-//     traits: {damage: 0xA}
-//   - name: Cloak
-//     features: [old]
-//     traits: {defence: 0x0, comfort: 0x3}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/dumper.json
deleted file mode 100644 (file)
index 9f54c05..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-  "name"      : "Wizzard",
-  "level"     : 17,
-  "sanity"    : null,
-  "inventory" : [
-    {
-      "name"     : "Hat",
-      "features" : [ "magic", "pointed" ],
-      "traits"   : {}
-    },
-    {
-      "name"     : "Staff",
-      "features" : [],
-      "traits"   : { "damage" : 10 }
-    },
-    {
-      "name"     : "Cloak",
-      "features" : [ "old" ],
-      "traits"   : { "defence" : 0, "comfort" : 3 }
-    }
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.js
deleted file mode 100644 (file)
index 5a99e18..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-'use strict';
-
-
-var fs   = require('fs');
-var path = require('path');
-var util = require('util');
-var yaml = require('../lib/js-yaml');
-
-
-try {
-  var filename = path.join(__dirname, 'sample_document.yml'),
-      contents = fs.readFileSync(filename, 'utf8'),
-      data     = yaml.load(contents);
-
-  console.log(util.inspect(data, false, 10, true));
-} catch (err) {
-  console.log(err.stack || String(err));
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/examples/sample_document.yml
deleted file mode 100644 (file)
index 4479ee9..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
----
-# Collection Types #############################################################
-################################################################################
-
-# http://yaml.org/type/map.html -----------------------------------------------#
-
-map:
-  # Unordered set of key: value pairs.
-  Block style: !!map
-    Clark : Evans
-    Ingy  : döt Net
-    Oren  : Ben-Kiki
-  Flow style: !!map { Clark: Evans, Ingy: döt Net, Oren: Ben-Kiki }
-
-# http://yaml.org/type/omap.html ----------------------------------------------#
-
-omap:
-  # Explicitly typed ordered map (dictionary).
-  Bestiary: !!omap
-    - aardvark: African pig-like ant eater. Ugly.
-    - anteater: South-American ant eater. Two species.
-    - anaconda: South-American constrictor snake. Scaly.
-    # Etc.
-  # Flow style
-  Numbers: !!omap [ one: 1, two: 2, three : 3 ]
-
-# http://yaml.org/type/pairs.html ---------------------------------------------#
-
-pairs:
-  # Explicitly typed pairs.
-  Block tasks: !!pairs
-    - meeting: with team.
-    - meeting: with boss.
-    - break: lunch.
-    - meeting: with client.
-  Flow tasks: !!pairs [ meeting: with team, meeting: with boss ]
-
-# http://yaml.org/type/set.html -----------------------------------------------#
-
-set:
-  # Explicitly typed set.
-  baseball players: !!set
-    ? Mark McGwire
-    ? Sammy Sosa
-    ? Ken Griffey
-  # Flow style
-  baseball teams: !!set { Boston Red Sox, Detroit Tigers, New York Yankees }
-
-# http://yaml.org/type/seq.html -----------------------------------------------#
-
-seq:
-  # Ordered sequence of nodes
-  Block style: !!seq
-  - Mercury   # Rotates - no light/dark sides.
-  - Venus     # Deadliest. Aptly named.
-  - Earth     # Mostly dirt.
-  - Mars      # Seems empty.
-  - Jupiter   # The king.
-  - Saturn    # Pretty.
-  - Uranus    # Where the sun hardly shines.
-  - Neptune   # Boring. No rings.
-  - Pluto     # You call this a planet?
-  Flow style: !!seq [ Mercury, Venus, Earth, Mars,      # Rocks
-                      Jupiter, Saturn, Uranus, Neptune, # Gas
-                      Pluto ]                           # Overrated
-
-
-# Scalar Types #################################################################
-################################################################################
-
-# http://yaml.org/type/binary.html --------------------------------------------#
-
-binary:
-  canonical: !!binary "\
-    R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5\
-    OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+\
-    +f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC\
-    AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs="
-  generic: !!binary |
-    R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5
-    OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+
-    +f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC
-    AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs=
-  description:
-    The binary value above is a tiny arrow encoded as a gif image.
-
-# http://yaml.org/type/bool.html ----------------------------------------------#
-
-bool:
-  - true
-  - True
-  - TRUE
-  - false
-  - False
-  - FALSE
-
-# http://yaml.org/type/float.html ---------------------------------------------#
-
-float:
-  canonical: 6.8523015e+5
-  exponentioal: 685.230_15e+03
-  fixed: 685_230.15
-  sexagesimal: 190:20:30.15
-  negative infinity: -.inf
-  not a number: .NaN
-
-# http://yaml.org/type/int.html -----------------------------------------------#
-
-int:
-  canonical: 685230
-  decimal: +685_230
-  octal: 02472256
-  hexadecimal: 0x_0A_74_AE
-  binary: 0b1010_0111_0100_1010_1110
-  sexagesimal: 190:20:30
-
-# http://yaml.org/type/merge.html ---------------------------------------------#
-
-merge:
-  - &CENTER { x: 1, y: 2 }
-  - &LEFT { x: 0, y: 2 }
-  - &BIG { r: 10 }
-  - &SMALL { r: 1 }
-  
-  # All the following maps are equal:
-  
-  - # Explicit keys
-    x: 1
-    y: 2
-    r: 10
-    label: nothing
-  
-  - # Merge one map
-    << : *CENTER
-    r: 10
-    label: center
-  
-  - # Merge multiple maps
-    << : [ *CENTER, *BIG ]
-    label: center/big
-  
-  - # Override
-    << : [ *BIG, *LEFT, *SMALL ]
-    x: 1
-    label: big/left/small
-
-# http://yaml.org/type/null.html ----------------------------------------------#
-
-null:
-  # This mapping has four keys,
-  # one has a value.
-  empty:
-  canonical: ~
-  english: null
-  ~: null key
-  # This sequence has five
-  # entries, two have values.
-  sparse:
-    - ~
-    - 2nd entry
-    -
-    - 4th entry
-    - Null
-
-# http://yaml.org/type/str.html -----------------------------------------------#
-
-string: abcd
-
-# http://yaml.org/type/timestamp.html -----------------------------------------#
-
-timestamp:
-  canonical:        2001-12-15T02:59:43.1Z
-  valid iso8601:    2001-12-14t21:59:43.10-05:00
-  space separated:  2001-12-14 21:59:43.10 -5
-  no time zone (Z): 2001-12-15 2:59:43.10
-  date (00:00:00Z): 2002-12-14
-
-
-# JavaScript Specific Types ####################################################
-################################################################################
-
-# https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/RegExp
-
-regexp:
-  simple: !!js/regexp      foobar
-  modifiers: !!js/regexp   /foobar/mi
-
-# https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/undefined
-
-undefined: !!js/undefined ~
-
-# https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function
-
-function: !!js/function >
-  function foobar() {
-    return 'Wow! JS-YAML Rocks!';
-  }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml.js
deleted file mode 100644 (file)
index 842104e..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-
-var loader = require('./js-yaml/loader');
-var dumper = require('./js-yaml/dumper');
-
-
-function deprecated(name) {
-  return function () {
-    throw new Error('Function ' + name + ' is deprecated and cannot be used.');
-  };
-}
-
-
-module.exports.Type                = require('./js-yaml/type');
-module.exports.Schema              = require('./js-yaml/schema');
-module.exports.FAILSAFE_SCHEMA     = require('./js-yaml/schema/failsafe');
-module.exports.JSON_SCHEMA         = require('./js-yaml/schema/json');
-module.exports.CORE_SCHEMA         = require('./js-yaml/schema/core');
-module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe');
-module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full');
-module.exports.load                = loader.load;
-module.exports.loadAll             = loader.loadAll;
-module.exports.safeLoad            = loader.safeLoad;
-module.exports.safeLoadAll         = loader.safeLoadAll;
-module.exports.dump                = dumper.dump;
-module.exports.safeDump            = dumper.safeDump;
-module.exports.YAMLException       = require('./js-yaml/exception');
-
-// Deprecared schema names from JS-YAML 2.0.x
-module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe');
-module.exports.SAFE_SCHEMA    = require('./js-yaml/schema/default_safe');
-module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full');
-
-// Deprecated functions from JS-YAML 1.x.x
-module.exports.scan           = deprecated('scan');
-module.exports.parse          = deprecated('parse');
-module.exports.compose        = deprecated('compose');
-module.exports.addConstructor = deprecated('addConstructor');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/common.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/common.js
deleted file mode 100644 (file)
index 71d3ec8..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-'use strict';
-
-
-function isNothing(subject) {
-  return (undefined === subject) || (null === subject);
-}
-
-
-function isObject(subject) {
-  return ('object' === typeof subject) && (null !== subject);
-}
-
-
-function toArray(sequence) {
-  if (Array.isArray(sequence)) {
-    return sequence;
-  } else if (isNothing(sequence)) {
-    return [];
-  } else {
-    return [ sequence ];
-  }
-}
-
-
-function extend(target, source) {
-  var index, length, key, sourceKeys;
-
-  if (source) {
-    sourceKeys = Object.keys(source);
-
-    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
-      key = sourceKeys[index];
-      target[key] = source[key];
-    }
-  }
-
-  return target;
-}
-
-
-function repeat(string, count) {
-  var result = '', cycle;
-
-  for (cycle = 0; cycle < count; cycle += 1) {
-    result += string;
-  }
-
-  return result;
-}
-
-
-function isNegativeZero(number) {
-  return (0 === number) && (Number.NEGATIVE_INFINITY === 1 / number);
-}
-
-
-module.exports.isNothing      = isNothing;
-module.exports.isObject       = isObject;
-module.exports.toArray        = toArray;
-module.exports.repeat         = repeat;
-module.exports.isNegativeZero = isNegativeZero;
-module.exports.extend         = extend;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/dumper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/dumper.js
deleted file mode 100644 (file)
index 6c93141..0000000
+++ /dev/null
@@ -1,554 +0,0 @@
-'use strict';
-
-
-var common              = require('./common');
-var YAMLException       = require('./exception');
-var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
-var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
-
-
-var _toString       = Object.prototype.toString;
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-
-var CHAR_TAB                  = 0x09; /* Tab */
-var CHAR_LINE_FEED            = 0x0A; /* LF */
-var CHAR_CARRIAGE_RETURN      = 0x0D; /* CR */
-var CHAR_SPACE                = 0x20; /* Space */
-var CHAR_EXCLAMATION          = 0x21; /* ! */
-var CHAR_DOUBLE_QUOTE         = 0x22; /* " */
-var CHAR_SHARP                = 0x23; /* # */
-var CHAR_PERCENT              = 0x25; /* % */
-var CHAR_AMPERSAND            = 0x26; /* & */
-var CHAR_SINGLE_QUOTE         = 0x27; /* ' */
-var CHAR_ASTERISK             = 0x2A; /* * */
-var CHAR_COMMA                = 0x2C; /* , */
-var CHAR_MINUS                = 0x2D; /* - */
-var CHAR_COLON                = 0x3A; /* : */
-var CHAR_GREATER_THAN         = 0x3E; /* > */
-var CHAR_QUESTION             = 0x3F; /* ? */
-var CHAR_COMMERCIAL_AT        = 0x40; /* @ */
-var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */
-var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */
-var CHAR_GRAVE_ACCENT         = 0x60; /* ` */
-var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */
-var CHAR_VERTICAL_LINE        = 0x7C; /* | */
-var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */
-
-
-var ESCAPE_SEQUENCES = {};
-
-ESCAPE_SEQUENCES[0x00]   = '\\0';
-ESCAPE_SEQUENCES[0x07]   = '\\a';
-ESCAPE_SEQUENCES[0x08]   = '\\b';
-ESCAPE_SEQUENCES[0x09]   = '\\t';
-ESCAPE_SEQUENCES[0x0A]   = '\\n';
-ESCAPE_SEQUENCES[0x0B]   = '\\v';
-ESCAPE_SEQUENCES[0x0C]   = '\\f';
-ESCAPE_SEQUENCES[0x0D]   = '\\r';
-ESCAPE_SEQUENCES[0x1B]   = '\\e';
-ESCAPE_SEQUENCES[0x22]   = '\\"';
-ESCAPE_SEQUENCES[0x5C]   = '\\\\';
-ESCAPE_SEQUENCES[0x85]   = '\\N';
-ESCAPE_SEQUENCES[0xA0]   = '\\_';
-ESCAPE_SEQUENCES[0x2028] = '\\L';
-ESCAPE_SEQUENCES[0x2029] = '\\P';
-
-
-var DEPRECATED_BOOLEANS_SYNTAX = [
-  'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',
-  'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'
-];
-
-
-function compileStyleMap(schema, map) {
-  var result, keys, index, length, tag, style, type;
-
-  if (null === map) {
-    return {};
-  }
-
-  result = {};
-  keys = Object.keys(map);
-
-  for (index = 0, length = keys.length; index < length; index += 1) {
-    tag = keys[index];
-    style = String(map[tag]);
-
-    if ('!!' === tag.slice(0, 2)) {
-      tag = 'tag:yaml.org,2002:' + tag.slice(2);
-    }
-
-    type = schema.compiledTypeMap[tag];
-
-    if (type && _hasOwnProperty.call(type.styleAliases, style)) {
-      style = type.styleAliases[style];
-    }
-
-    result[tag] = style;
-  }
-
-  return result;
-}
-
-
-function encodeHex(character) {
-  var string, handle, length;
-
-  string = character.toString(16).toUpperCase();
-
-  if (character <= 0xFF) {
-    handle = 'x';
-    length = 2;
-  } else if (character <= 0xFFFF) {
-    handle = 'u';
-    length = 4;
-  } else if (character <= 0xFFFFFFFF) {
-    handle = 'U';
-    length = 8;
-  } else {
-    throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');
-  }
-
-  return '\\' + handle + common.repeat('0', length - string.length) + string;
-}
-
-
-function State(options) {
-  this.schema      = options['schema'] || DEFAULT_FULL_SCHEMA;
-  this.indent      = Math.max(1, (options['indent'] || 2));
-  this.skipInvalid = options['skipInvalid'] || false;
-  this.flowLevel   = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);
-  this.styleMap    = compileStyleMap(this.schema, options['styles'] || null);
-
-  this.implicitTypes = this.schema.compiledImplicit;
-  this.explicitTypes = this.schema.compiledExplicit;
-
-  this.tag = null;
-  this.result = '';
-
-  this.duplicates = [];
-  this.usedDuplicates = null;
-}
-
-
-function generateNextLine(state, level) {
-  return '\n' + common.repeat(' ', state.indent * level);
-}
-
-function testImplicitResolving(state, str) {
-  var index, length, type;
-
-  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
-    type = state.implicitTypes[index];
-
-    if (type.resolve(str)) {
-      return true;
-    }
-  }
-
-  return false;
-}
-
-function writeScalar(state, object) {
-  var isQuoted, checkpoint, position, length, character, first;
-
-  state.dump = '';
-  isQuoted = false;
-  checkpoint = 0;
-  first = object.charCodeAt(0) || 0;
-
-  if (-1 !== DEPRECATED_BOOLEANS_SYNTAX.indexOf(object)) {
-    // Ensure compatibility with YAML 1.0/1.1 loaders.
-    isQuoted = true;
-  } else if (0 === object.length) {
-    // Quote empty string
-    isQuoted = true;
-  } else if (CHAR_SPACE    === first ||
-             CHAR_SPACE    === object.charCodeAt(object.length - 1)) {
-    isQuoted = true;
-  } else if (CHAR_MINUS    === first ||
-             CHAR_QUESTION === first) {
-    // Don't check second symbol for simplicity
-    isQuoted = true;
-  }
-
-  for (position = 0, length = object.length; position < length; position += 1) {
-    character = object.charCodeAt(position);
-
-    if (!isQuoted) {
-      if (CHAR_TAB                  === character ||
-          CHAR_LINE_FEED            === character ||
-          CHAR_CARRIAGE_RETURN      === character ||
-          CHAR_COMMA                === character ||
-          CHAR_LEFT_SQUARE_BRACKET  === character ||
-          CHAR_RIGHT_SQUARE_BRACKET === character ||
-          CHAR_LEFT_CURLY_BRACKET   === character ||
-          CHAR_RIGHT_CURLY_BRACKET  === character ||
-          CHAR_SHARP                === character ||
-          CHAR_AMPERSAND            === character ||
-          CHAR_ASTERISK             === character ||
-          CHAR_EXCLAMATION          === character ||
-          CHAR_VERTICAL_LINE        === character ||
-          CHAR_GREATER_THAN         === character ||
-          CHAR_SINGLE_QUOTE         === character ||
-          CHAR_DOUBLE_QUOTE         === character ||
-          CHAR_PERCENT              === character ||
-          CHAR_COMMERCIAL_AT        === character ||
-          CHAR_COLON                === character ||
-          CHAR_GRAVE_ACCENT         === character) {
-        isQuoted = true;
-      }
-    }
-
-    if (ESCAPE_SEQUENCES[character] ||
-        !((0x00020 <= character && character <= 0x00007E) ||
-          (0x00085 === character)                         ||
-          (0x000A0 <= character && character <= 0x00D7FF) ||
-          (0x0E000 <= character && character <= 0x00FFFD) ||
-          (0x10000 <= character && character <= 0x10FFFF))) {
-      state.dump += object.slice(checkpoint, position);
-      state.dump += ESCAPE_SEQUENCES[character] || encodeHex(character);
-      checkpoint = position + 1;
-      isQuoted = true;
-    }
-  }
-
-  if (checkpoint < position) {
-    state.dump += object.slice(checkpoint, position);
-  }
-
-  if (!isQuoted && testImplicitResolving(state, state.dump)) {
-    isQuoted = true;
-  }
-
-  if (isQuoted) {
-    state.dump = '"' + state.dump + '"';
-  }
-}
-
-function writeFlowSequence(state, level, object) {
-  var _result = '',
-      _tag    = state.tag,
-      index,
-      length;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    // Write only valid elements.
-    if (writeNode(state, level, object[index], false, false)) {
-      if (0 !== index) {
-        _result += ', ';
-      }
-      _result += state.dump;
-    }
-  }
-
-  state.tag = _tag;
-  state.dump = '[' + _result + ']';
-}
-
-function writeBlockSequence(state, level, object, compact) {
-  var _result = '',
-      _tag    = state.tag,
-      index,
-      length;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    // Write only valid elements.
-    if (writeNode(state, level + 1, object[index], true, true)) {
-      if (!compact || 0 !== index) {
-        _result += generateNextLine(state, level);
-      }
-      _result += '- ' + state.dump;
-    }
-  }
-
-  state.tag = _tag;
-  state.dump = _result || '[]'; // Empty sequence if no valid values.
-}
-
-function writeFlowMapping(state, level, object) {
-  var _result       = '',
-      _tag          = state.tag,
-      objectKeyList = Object.keys(object),
-      index,
-      length,
-      objectKey,
-      objectValue,
-      pairBuffer;
-
-  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-    pairBuffer = '';
-
-    if (0 !== index) {
-      pairBuffer += ', ';
-    }
-
-    objectKey = objectKeyList[index];
-    objectValue = object[objectKey];
-
-    if (!writeNode(state, level, objectKey, false, false)) {
-      continue; // Skip this pair because of invalid key;
-    }
-
-    if (state.dump.length > 1024) {
-      pairBuffer += '? ';
-    }
-
-    pairBuffer += state.dump + ': ';
-
-    if (!writeNode(state, level, objectValue, false, false)) {
-      continue; // Skip this pair because of invalid value.
-    }
-
-    pairBuffer += state.dump;
-
-    // Both key and value are valid.
-    _result += pairBuffer;
-  }
-
-  state.tag = _tag;
-  state.dump = '{' + _result + '}';
-}
-
-function writeBlockMapping(state, level, object, compact) {
-  var _result       = '',
-      _tag          = state.tag,
-      objectKeyList = Object.keys(object),
-      index,
-      length,
-      objectKey,
-      objectValue,
-      explicitPair,
-      pairBuffer;
-
-  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-    pairBuffer = '';
-
-    if (!compact || 0 !== index) {
-      pairBuffer += generateNextLine(state, level);
-    }
-
-    objectKey = objectKeyList[index];
-    objectValue = object[objectKey];
-
-    if (!writeNode(state, level + 1, objectKey, true, true)) {
-      continue; // Skip this pair because of invalid key.
-    }
-
-    explicitPair = (null !== state.tag && '?' !== state.tag) ||
-                   (state.dump && state.dump.length > 1024);
-
-    if (explicitPair) {
-      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
-        pairBuffer += '?';
-      } else {
-        pairBuffer += '? ';
-      }
-    }
-
-    pairBuffer += state.dump;
-
-    if (explicitPair) {
-      pairBuffer += generateNextLine(state, level);
-    }
-
-    if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {
-      continue; // Skip this pair because of invalid value.
-    }
-
-    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
-      pairBuffer += ':';
-    } else {
-      pairBuffer += ': ';
-    }
-
-    pairBuffer += state.dump;
-
-    // Both key and value are valid.
-    _result += pairBuffer;
-  }
-
-  state.tag = _tag;
-  state.dump = _result || '{}'; // Empty mapping if no valid pairs.
-}
-
-function detectType(state, object, explicit) {
-  var _result, typeList, index, length, type, style;
-
-  typeList = explicit ? state.explicitTypes : state.implicitTypes;
-
-  for (index = 0, length = typeList.length; index < length; index += 1) {
-    type = typeList[index];
-
-    if ((type.instanceOf  || type.predicate) &&
-        (!type.instanceOf || (('object' === typeof object) && (object instanceof type.instanceOf))) &&
-        (!type.predicate  || type.predicate(object))) {
-
-      state.tag = explicit ? type.tag : '?';
-
-      if (type.represent) {
-        style = state.styleMap[type.tag] || type.defaultStyle;
-
-        if ('[object Function]' === _toString.call(type.represent)) {
-          _result = type.represent(object, style);
-        } else if (_hasOwnProperty.call(type.represent, style)) {
-          _result = type.represent[style](object, style);
-        } else {
-          throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style');
-        }
-
-        state.dump = _result;
-      }
-
-      return true;
-    }
-  }
-
-  return false;
-}
-
-// Serializes `object` and writes it to global `result`.
-// Returns true on success, or false on invalid object.
-//
-function writeNode(state, level, object, block, compact) {
-  state.tag = null;
-  state.dump = object;
-
-  if (!detectType(state, object, false)) {
-    detectType(state, object, true);
-  }
-
-  var type = _toString.call(state.dump);
-
-  if (block) {
-    block = (0 > state.flowLevel || state.flowLevel > level);
-  }
-
-  if ((null !== state.tag && '?' !== state.tag) || (2 !== state.indent && level > 0)) {
-    compact = false;
-  }
-
-  var objectOrArray = '[object Object]' === type || '[object Array]' === type,
-      duplicateIndex,
-      duplicate;
-
-  if (objectOrArray) {
-    duplicateIndex = state.duplicates.indexOf(object);
-    duplicate = duplicateIndex !== -1;
-  }
-
-  if (duplicate && state.usedDuplicates[duplicateIndex]) {
-    state.dump = '*ref_' + duplicateIndex;
-  } else {
-    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
-      state.usedDuplicates[duplicateIndex] = true;
-    }
-    if ('[object Object]' === type) {
-      if (block && (0 !== Object.keys(state.dump).length)) {
-        writeBlockMapping(state, level, state.dump, compact);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + (0 === level ? '\n' : '') + state.dump;
-        }
-      } else {
-        writeFlowMapping(state, level, state.dump);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
-        }
-      }
-    } else if ('[object Array]' === type) {
-      if (block && (0 !== state.dump.length)) {
-        writeBlockSequence(state, level, state.dump, compact);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + (0 === level ? '\n' : '') + state.dump;
-        }
-      } else {
-        writeFlowSequence(state, level, state.dump);
-        if (duplicate) {
-          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
-        }
-      }
-    } else if ('[object String]' === type) {
-      if ('?' !== state.tag) {
-        writeScalar(state, state.dump);
-      }
-    } else if (state.skipInvalid) {
-      return false;
-    } else {
-      throw new YAMLException('unacceptable kind of an object to dump ' + type);
-    }
-
-    if (null !== state.tag && '?' !== state.tag) {
-      state.dump = '!<' + state.tag + '> ' + state.dump;
-    }
-  }
-
-  return true;
-}
-
-function getDuplicateReferences(object, state) {
-  var objects = [],
-      duplicatesIndexes = [],
-      index,
-      length;
-
-  inspectNode(object, objects, duplicatesIndexes);
-
-  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
-    state.duplicates.push(objects[duplicatesIndexes[index]]);
-  }
-  state.usedDuplicates = new Array(length);
-}
-
-function inspectNode(object, objects, duplicatesIndexes) {
-  var type = _toString.call(object),
-      objectKeyList,
-      index,
-      length;
-
-  if (null !== object && 'object' === typeof object) {
-    index = objects.indexOf(object);
-    if (-1 !== index) {
-      if (-1 === duplicatesIndexes.indexOf(index)) {
-        duplicatesIndexes.push(index);
-      }
-    } else {
-      objects.push(object);
-    
-      if(Array.isArray(object)) {
-        for (index = 0, length = object.length; index < length; index += 1) {
-          inspectNode(object[index], objects, duplicatesIndexes);
-        }
-      } else {
-        objectKeyList = Object.keys(object);
-
-        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
-          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
-        }
-      }
-    }
-  }
-}
-
-function dump(input, options) {
-  options = options || {};
-
-  var state = new State(options);
-
-  getDuplicateReferences(input, state);
-
-  if (writeNode(state, 0, input, true, true)) {
-    return state.dump + '\n';
-  } else {
-    return '';
-  }
-}
-
-
-function safeDump(input, options) {
-  return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-module.exports.dump     = dump;
-module.exports.safeDump = safeDump;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/exception.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/exception.js
deleted file mode 100644 (file)
index 479ba88..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-'use strict';
-
-
-function YAMLException(reason, mark) {
-  this.name    = 'YAMLException';
-  this.reason  = reason;
-  this.mark    = mark;
-  this.message = this.toString(false);
-}
-
-
-YAMLException.prototype.toString = function toString(compact) {
-  var result;
-
-  result = 'JS-YAML: ' + (this.reason || '(unknown reason)');
-
-  if (!compact && this.mark) {
-    result += ' ' + this.mark.toString();
-  }
-
-  return result;
-};
-
-
-module.exports = YAMLException;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/loader.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/loader.js
deleted file mode 100644 (file)
index 9bda954..0000000
+++ /dev/null
@@ -1,1581 +0,0 @@
-'use strict';
-
-
-var common              = require('./common');
-var YAMLException       = require('./exception');
-var Mark                = require('./mark');
-var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');
-var DEFAULT_FULL_SCHEMA = require('./schema/default_full');
-
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-
-var CONTEXT_FLOW_IN   = 1;
-var CONTEXT_FLOW_OUT  = 2;
-var CONTEXT_BLOCK_IN  = 3;
-var CONTEXT_BLOCK_OUT = 4;
-
-
-var CHOMPING_CLIP  = 1;
-var CHOMPING_STRIP = 2;
-var CHOMPING_KEEP  = 3;
-
-
-var PATTERN_NON_PRINTABLE         = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uD800-\uDFFF\uFFFE\uFFFF]/;
-var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
-var PATTERN_FLOW_INDICATORS       = /[,\[\]\{\}]/;
-var PATTERN_TAG_HANDLE            = /^(?:!|!!|![a-z\-]+!)$/i;
-var PATTERN_TAG_URI               = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
-
-
-function is_EOL(c) {
-  return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);
-}
-
-function is_WHITE_SPACE(c) {
-  return (c === 0x09/* Tab */) || (c === 0x20/* Space */);
-}
-
-function is_WS_OR_EOL(c) {
-  return (c === 0x09/* Tab */) ||
-         (c === 0x20/* Space */) ||
-         (c === 0x0A/* LF */) ||
-         (c === 0x0D/* CR */);
-}
-
-function is_FLOW_INDICATOR(c) {
-  return 0x2C/* , */ === c ||
-         0x5B/* [ */ === c ||
-         0x5D/* ] */ === c ||
-         0x7B/* { */ === c ||
-         0x7D/* } */ === c;
-}
-
-function fromHexCode(c) {
-  var lc;
-
-  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
-    return c - 0x30;
-  }
-
-  lc = c | 0x20;
-  if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {
-    return lc - 0x61 + 10;
-  }
-
-  return -1;
-}
-
-function escapedHexLen(c) {
-  if (c === 0x78/* x */) { return 2; }
-  if (c === 0x75/* u */) { return 4; }
-  if (c === 0x55/* U */) { return 8; }
-  return 0;
-}
-
-function fromDecimalCode(c) {
-  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
-    return c - 0x30;
-  }
-
-  return -1;
-}
-
-function simpleEscapeSequence(c) {
- return (c === 0x30/* 0 */) ? '\x00' :
-        (c === 0x61/* a */) ? '\x07' :
-        (c === 0x62/* b */) ? '\x08' :
-        (c === 0x74/* t */) ? '\x09' :
-        (c === 0x09/* Tab */) ? '\x09' :
-        (c === 0x6E/* n */) ? '\x0A' :
-        (c === 0x76/* v */) ? '\x0B' :
-        (c === 0x66/* f */) ? '\x0C' :
-        (c === 0x72/* r */) ? '\x0D' :
-        (c === 0x65/* e */) ? '\x1B' :
-        (c === 0x20/* Space */) ? ' ' :
-        (c === 0x22/* " */) ? '\x22' :
-        (c === 0x2F/* / */) ? '/' :
-        (c === 0x5C/* \ */) ? '\x5C' :
-        (c === 0x4E/* N */) ? '\x85' :
-        (c === 0x5F/* _ */) ? '\xA0' :
-        (c === 0x4C/* L */) ? '\u2028' :
-        (c === 0x50/* P */) ? '\u2029' : '';
-}
-
-function charFromCodepoint(c) {
-  if (c <= 0xFFFF) {
-    return String.fromCharCode(c);
-  } else {
-    // Encode UTF-16 surrogate pair
-    // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF
-    return String.fromCharCode(((c - 0x010000) >> 10) + 0xD800,
-                               ((c - 0x010000) & 0x03FF) + 0xDC00);
-  }
-}
-
-var simpleEscapeCheck = new Array(256); // integer, for fast access
-var simpleEscapeMap = new Array(256);
-for (var i = 0; i < 256; i++) {
-  simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
-  simpleEscapeMap[i] = simpleEscapeSequence(i);
-}
-
-
-function State(input, options) {
-  this.input = input;
-
-  this.filename  = options['filename']  || null;
-  this.schema    = options['schema']    || DEFAULT_FULL_SCHEMA;
-  this.onWarning = options['onWarning'] || null;
-  this.legacy    = options['legacy']    || false;
-
-  this.implicitTypes = this.schema.compiledImplicit;
-  this.typeMap       = this.schema.compiledTypeMap;
-
-  this.length     = input.length;
-  this.position   = 0;
-  this.line       = 0;
-  this.lineStart  = 0;
-  this.lineIndent = 0;
-
-  this.documents = [];
-
-  /*
-  this.version;
-  this.checkLineBreaks;
-  this.tagMap;
-  this.anchorMap;
-  this.tag;
-  this.anchor;
-  this.kind;
-  this.result;*/
-
-}
-
-
-function generateError(state, message) {
-  return new YAMLException(
-    message,
-    new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));
-}
-
-function throwError(state, message) {
-  throw generateError(state, message);
-}
-
-function throwWarning(state, message) {
-  var error = generateError(state, message);
-
-  if (state.onWarning) {
-    state.onWarning.call(null, error);
-  } else {
-    throw error;
-  }
-}
-
-
-var directiveHandlers = {
-
-  'YAML': function handleYamlDirective(state, name, args) {
-
-      var match, major, minor;
-
-      if (null !== state.version) {
-        throwError(state, 'duplication of %YAML directive');
-      }
-
-      if (1 !== args.length) {
-        throwError(state, 'YAML directive accepts exactly one argument');
-      }
-
-      match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
-
-      if (null === match) {
-        throwError(state, 'ill-formed argument of the YAML directive');
-      }
-
-      major = parseInt(match[1], 10);
-      minor = parseInt(match[2], 10);
-
-      if (1 !== major) {
-        throwError(state, 'unacceptable YAML version of the document');
-      }
-
-      state.version = args[0];
-      state.checkLineBreaks = (minor < 2);
-
-      if (1 !== minor && 2 !== minor) {
-        throwWarning(state, 'unsupported YAML version of the document');
-      }
-    },
-
-  'TAG': function handleTagDirective(state, name, args) {
-
-      var handle, prefix;
-
-      if (2 !== args.length) {
-        throwError(state, 'TAG directive accepts exactly two arguments');
-      }
-
-      handle = args[0];
-      prefix = args[1];
-
-      if (!PATTERN_TAG_HANDLE.test(handle)) {
-        throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');
-      }
-
-      if (_hasOwnProperty.call(state.tagMap, handle)) {
-        throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
-      }
-
-      if (!PATTERN_TAG_URI.test(prefix)) {
-        throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');
-      }
-
-      state.tagMap[handle] = prefix;
-    }
-};
-
-
-function captureSegment(state, start, end, checkJson) {
-  var _position, _length, _character, _result;
-
-  if (start < end) {
-    _result = state.input.slice(start, end);
-
-    if (checkJson) {
-      for (_position = 0, _length = _result.length;
-           _position < _length;
-           _position += 1) {
-        _character = _result.charCodeAt(_position);
-        if (!(0x09 === _character ||
-              0x20 <= _character && _character <= 0x10FFFF)) {
-          throwError(state, 'expected valid JSON character');
-        }
-      }
-    }
-
-    state.result += _result;
-  }
-}
-
-function mergeMappings(state, destination, source) {
-  var sourceKeys, key, index, quantity;
-
-  if (!common.isObject(source)) {
-    throwError(state, 'cannot merge mappings; the provided source object is unacceptable');
-  }
-
-  sourceKeys = Object.keys(source);
-
-  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
-    key = sourceKeys[index];
-
-    if (!_hasOwnProperty.call(destination, key)) {
-      destination[key] = source[key];
-    }
-  }
-}
-
-function storeMappingPair(state, _result, keyTag, keyNode, valueNode) {
-  var index, quantity;
-
-  keyNode = String(keyNode);
-
-  if (null === _result) {
-    _result = {};
-  }
-
-  if ('tag:yaml.org,2002:merge' === keyTag) {
-    if (Array.isArray(valueNode)) {
-      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
-        mergeMappings(state, _result, valueNode[index]);
-      }
-    } else {
-      mergeMappings(state, _result, valueNode);
-    }
-  } else {
-    _result[keyNode] = valueNode;
-  }
-
-  return _result;
-}
-
-function readLineBreak(state) {
-  var ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x0A/* LF */ === ch) {
-    state.position++;
-  } else if (0x0D/* CR */ === ch) {
-    state.position++;
-    if (0x0A/* LF */ === state.input.charCodeAt(state.position)) {
-      state.position++;
-    }
-  } else {
-    throwError(state, 'a line break is expected');
-  }
-
-  state.line += 1;
-  state.lineStart = state.position;
-}
-
-function skipSeparationSpace(state, allowComments, checkIndent) {
-  var lineBreaks = 0,
-      ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-    while (is_WHITE_SPACE(ch)) {
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    if (allowComments && 0x23/* # */ === ch) {
-      do {
-        ch = state.input.charCodeAt(++state.position);
-      } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && 0 !== ch);
-    }
-
-    if (is_EOL(ch)) {
-      readLineBreak(state);
-
-      ch = state.input.charCodeAt(state.position);
-      lineBreaks++;
-      state.lineIndent = 0;
-
-      while (0x20/* Space */ === ch) {
-        state.lineIndent++;
-        ch = state.input.charCodeAt(++state.position);
-      }
-    } else {
-      break;
-    }
-  }
-
-  if (-1 !== checkIndent && 0 !== lineBreaks && state.lineIndent < checkIndent) {
-    throwWarning(state, 'deficient indentation');
-  }
-
-  return lineBreaks;
-}
-
-function testDocumentSeparator(state) {
-  var _position = state.position,
-      ch;
-
-  ch = state.input.charCodeAt(_position);
-
-  // Condition state.position === state.lineStart is tested
-  // in parent on each call, for efficiency. No needs to test here again.
-  if ((0x2D/* - */ === ch || 0x2E/* . */ === ch) &&
-      state.input.charCodeAt(_position + 1) === ch &&
-      state.input.charCodeAt(_position+ 2) === ch) {
-
-    _position += 3;
-
-    ch = state.input.charCodeAt(_position);
-
-    if (ch === 0 || is_WS_OR_EOL(ch)) {
-      return true;
-    }
-  }
-
-  return false;
-}
-
-function writeFoldedLines(state, count) {
-  if (1 === count) {
-    state.result += ' ';
-  } else if (count > 1) {
-    state.result += common.repeat('\n', count - 1);
-  }
-}
-
-
-function readPlainScalar(state, nodeIndent, withinFlowCollection) {
-  var preceding,
-      following,
-      captureStart,
-      captureEnd,
-      hasPendingContent,
-      _line,
-      _lineStart,
-      _lineIndent,
-      _kind = state.kind,
-      _result = state.result,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (is_WS_OR_EOL(ch)             ||
-      is_FLOW_INDICATOR(ch)        ||
-      0x23/* # */           === ch ||
-      0x26/* & */           === ch ||
-      0x2A/* * */           === ch ||
-      0x21/* ! */           === ch ||
-      0x7C/* | */           === ch ||
-      0x3E/* > */           === ch ||
-      0x27/* ' */           === ch ||
-      0x22/* " */           === ch ||
-      0x25/* % */           === ch ||
-      0x40/* @ */           === ch ||
-      0x60/* ` */           === ch) {
-    return false;
-  }
-
-  if (0x3F/* ? */ === ch || 0x2D/* - */ === ch) {
-    following = state.input.charCodeAt(state.position + 1);
-
-    if (is_WS_OR_EOL(following) ||
-        withinFlowCollection && is_FLOW_INDICATOR(following)) {
-      return false;
-    }
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  captureStart = captureEnd = state.position;
-  hasPendingContent = false;
-
-  while (0 !== ch) {
-    if (0x3A/* : */ === ch) {
-      following = state.input.charCodeAt(state.position+1);
-
-      if (is_WS_OR_EOL(following) ||
-          withinFlowCollection && is_FLOW_INDICATOR(following)) {
-        break;
-      }
-
-    } else if (0x23/* # */ === ch) {
-      preceding = state.input.charCodeAt(state.position - 1);
-
-      if (is_WS_OR_EOL(preceding)) {
-        break;
-      }
-
-    } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||
-               withinFlowCollection && is_FLOW_INDICATOR(ch)) {
-      break;
-
-    } else if (is_EOL(ch)) {
-      _line = state.line;
-      _lineStart = state.lineStart;
-      _lineIndent = state.lineIndent;
-      skipSeparationSpace(state, false, -1);
-
-      if (state.lineIndent >= nodeIndent) {
-        hasPendingContent = true;
-        ch = state.input.charCodeAt(state.position);
-        continue;
-      } else {
-        state.position = captureEnd;
-        state.line = _line;
-        state.lineStart = _lineStart;
-        state.lineIndent = _lineIndent;
-        break;
-      }
-    }
-
-    if (hasPendingContent) {
-      captureSegment(state, captureStart, captureEnd, false);
-      writeFoldedLines(state, state.line - _line);
-      captureStart = captureEnd = state.position;
-      hasPendingContent = false;
-    }
-
-    if (!is_WHITE_SPACE(ch)) {
-      captureEnd = state.position + 1;
-    }
-
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  captureSegment(state, captureStart, captureEnd, false);
-
-  if (state.result) {
-    return true;
-  } else {
-    state.kind = _kind;
-    state.result = _result;
-    return false;
-  }
-}
-
-function readSingleQuotedScalar(state, nodeIndent) {
-  var ch,
-      captureStart, captureEnd;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x27/* ' */ !== ch) {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  state.position++;
-  captureStart = captureEnd = state.position;
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    if (0x27/* ' */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      ch = state.input.charCodeAt(++state.position);
-
-      if (0x27/* ' */ === ch) {
-        captureStart = captureEnd = state.position;
-        state.position++;
-      } else {
-        return true;
-      }
-
-    } else if (is_EOL(ch)) {
-      captureSegment(state, captureStart, captureEnd, true);
-      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
-      captureStart = captureEnd = state.position;
-
-    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
-      throwError(state, 'unexpected end of the document within a single quoted scalar');
-
-    } else {
-      state.position++;
-      captureEnd = state.position;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a single quoted scalar');
-}
-
-function readDoubleQuotedScalar(state, nodeIndent) {
-  var captureStart,
-      captureEnd,
-      hexLength,
-      hexResult,
-      tmp, tmpEsc,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x22/* " */ !== ch) {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-  state.position++;
-  captureStart = captureEnd = state.position;
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    if (0x22/* " */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      state.position++;
-      return true;
-
-    } else if (0x5C/* \ */ === ch) {
-      captureSegment(state, captureStart, state.position, true);
-      ch = state.input.charCodeAt(++state.position);
-
-      if (is_EOL(ch)) {
-        skipSeparationSpace(state, false, nodeIndent);
-
-        //TODO: rework to inline fn with no type cast?
-      } else if (ch < 256 && simpleEscapeCheck[ch]) {
-        state.result += simpleEscapeMap[ch];
-        state.position++;
-
-      } else if ((tmp = escapedHexLen(ch)) > 0) {
-        hexLength = tmp;
-        hexResult = 0;
-
-        for (; hexLength > 0; hexLength--) {
-          ch = state.input.charCodeAt(++state.position);
-
-          if ((tmp = fromHexCode(ch)) >= 0) {
-            hexResult = (hexResult << 4) + tmp;
-
-          } else {
-            throwError(state, 'expected hexadecimal character');
-          }
-        }
-
-        state.result += charFromCodepoint(hexResult);
-
-        state.position++;
-
-      } else {
-        throwError(state, 'unknown escape sequence');
-      }
-
-      captureStart = captureEnd = state.position;
-
-    } else if (is_EOL(ch)) {
-      captureSegment(state, captureStart, captureEnd, true);
-      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
-      captureStart = captureEnd = state.position;
-
-    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
-      throwError(state, 'unexpected end of the document within a double quoted scalar');
-
-    } else {
-      state.position++;
-      captureEnd = state.position;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a double quoted scalar');
-}
-
-function readFlowCollection(state, nodeIndent) {
-  var readNext = true,
-      _line,
-      _tag     = state.tag,
-      _result,
-      _anchor  = state.anchor,
-      following,
-      terminator,
-      isPair,
-      isExplicitPair,
-      isMapping,
-      keyNode,
-      keyTag,
-      valueNode,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (ch === 0x5B/* [ */) {
-    terminator = 0x5D/* ] */;
-    isMapping = false;
-    _result = [];
-  } else if (ch === 0x7B/* { */) {
-    terminator = 0x7D/* } */;
-    isMapping = true;
-    _result = {};
-  } else {
-    return false;
-  }
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-
-  while (0 !== ch) {
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (ch === terminator) {
-      state.position++;
-      state.tag = _tag;
-      state.anchor = _anchor;
-      state.kind = isMapping ? 'mapping' : 'sequence';
-      state.result = _result;
-      return true;
-    } else if (!readNext) {
-      throwError(state, 'missed comma between flow collection entries');
-    }
-
-    keyTag = keyNode = valueNode = null;
-    isPair = isExplicitPair = false;
-
-    if (0x3F/* ? */ === ch) {
-      following = state.input.charCodeAt(state.position + 1);
-
-      if (is_WS_OR_EOL(following)) {
-        isPair = isExplicitPair = true;
-        state.position++;
-        skipSeparationSpace(state, true, nodeIndent);
-      }
-    }
-
-    _line = state.line;
-    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
-    keyTag = state.tag;
-    keyNode = state.result;
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if ((isExplicitPair || state.line === _line) && 0x3A/* : */ === ch) {
-      isPair = true;
-      ch = state.input.charCodeAt(++state.position);
-      skipSeparationSpace(state, true, nodeIndent);
-      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
-      valueNode = state.result;
-    }
-
-    if (isMapping) {
-      storeMappingPair(state, _result, keyTag, keyNode, valueNode);
-    } else if (isPair) {
-      _result.push(storeMappingPair(state, null, keyTag, keyNode, valueNode));
-    } else {
-      _result.push(keyNode);
-    }
-
-    skipSeparationSpace(state, true, nodeIndent);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (0x2C/* , */ === ch) {
-      readNext = true;
-      ch = state.input.charCodeAt(++state.position);
-    } else {
-      readNext = false;
-    }
-  }
-
-  throwError(state, 'unexpected end of the stream within a flow collection');
-}
-
-function readBlockScalar(state, nodeIndent) {
-  var captureStart,
-      folding,
-      chomping       = CHOMPING_CLIP,
-      detectedIndent = false,
-      textIndent     = nodeIndent,
-      emptyLines     = 0,
-      atMoreIndented = false,
-      tmp,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (ch === 0x7C/* | */) {
-    folding = false;
-  } else if (ch === 0x3E/* > */) {
-    folding = true;
-  } else {
-    return false;
-  }
-
-  state.kind = 'scalar';
-  state.result = '';
-
-  while (0 !== ch) {
-    ch = state.input.charCodeAt(++state.position);
-
-    if (0x2B/* + */ === ch || 0x2D/* - */ === ch) {
-      if (CHOMPING_CLIP === chomping) {
-        chomping = (0x2B/* + */ === ch) ? CHOMPING_KEEP : CHOMPING_STRIP;
-      } else {
-        throwError(state, 'repeat of a chomping mode identifier');
-      }
-
-    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
-      if (tmp === 0) {
-        throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');
-      } else if (!detectedIndent) {
-        textIndent = nodeIndent + tmp - 1;
-        detectedIndent = true;
-      } else {
-        throwError(state, 'repeat of an indentation width identifier');
-      }
-
-    } else {
-      break;
-    }
-  }
-
-  if (is_WHITE_SPACE(ch)) {
-    do { ch = state.input.charCodeAt(++state.position); }
-    while (is_WHITE_SPACE(ch));
-
-    if (0x23/* # */ === ch) {
-      do { ch = state.input.charCodeAt(++state.position); }
-      while (!is_EOL(ch) && (0 !== ch));
-    }
-  }
-
-  while (0 !== ch) {
-    readLineBreak(state);
-    state.lineIndent = 0;
-
-    ch = state.input.charCodeAt(state.position);
-
-    while ((!detectedIndent || state.lineIndent < textIndent) &&
-           (0x20/* Space */ === ch)) {
-      state.lineIndent++;
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    if (!detectedIndent && state.lineIndent > textIndent) {
-      textIndent = state.lineIndent;
-    }
-
-    if (is_EOL(ch)) {
-      emptyLines++;
-      continue;
-    }
-
-    // End of the scalar.
-    if (state.lineIndent < textIndent) {
-
-      // Perform the chomping.
-      if (chomping === CHOMPING_KEEP) {
-        state.result += common.repeat('\n', emptyLines);
-      } else if (chomping === CHOMPING_CLIP) {
-        if (detectedIndent) { // i.e. only if the scalar is not empty.
-          state.result += '\n';
-        }
-      }
-
-      // Break this `while` cycle and go to the funciton's epilogue.
-      break;
-    }
-
-    // Folded style: use fancy rules to handle line breaks.
-    if (folding) {
-
-      // Lines starting with white space characters (more-indented lines) are not folded.
-      if (is_WHITE_SPACE(ch)) {
-        atMoreIndented = true;
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // End of more-indented block.
-      } else if (atMoreIndented) {
-        atMoreIndented = false;
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // Just one line break - perceive as the same line.
-      } else if (0 === emptyLines) {
-        if (detectedIndent) { // i.e. only if we have already read some scalar content.
-          state.result += ' ';
-        }
-
-      // Several line breaks - perceive as different lines.
-      } else {
-        state.result += common.repeat('\n', emptyLines);
-      }
-
-    // Literal style: just add exact number of line breaks between content lines.
-    } else {
-
-      // If current line isn't the first one - count line break from the last content line.
-      if (detectedIndent) {
-        state.result += common.repeat('\n', emptyLines + 1);
-
-      // In case of the first content line - count only empty lines.
-      } else {
-        state.result += common.repeat('\n', emptyLines);
-      }
-    }
-
-    detectedIndent = true;
-    emptyLines = 0;
-    captureStart = state.position;
-
-    while (!is_EOL(ch) && (0 !== ch))
-    { ch = state.input.charCodeAt(++state.position); }
-
-    captureSegment(state, captureStart, state.position, false);
-  }
-
-  return true;
-}
-
-function readBlockSequence(state, nodeIndent) {
-  var _line,
-      _tag      = state.tag,
-      _anchor   = state.anchor,
-      _result   = [],
-      following,
-      detected  = false,
-      ch;
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-
-    if (0x2D/* - */ !== ch) {
-      break;
-    }
-
-    following = state.input.charCodeAt(state.position + 1);
-
-    if (!is_WS_OR_EOL(following)) {
-      break;
-    }
-
-    detected = true;
-    state.position++;
-
-    if (skipSeparationSpace(state, true, -1)) {
-      if (state.lineIndent <= nodeIndent) {
-        _result.push(null);
-        ch = state.input.charCodeAt(state.position);
-        continue;
-      }
-    }
-
-    _line = state.line;
-    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
-    _result.push(state.result);
-    skipSeparationSpace(state, true, -1);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if ((state.line === _line || state.lineIndent > nodeIndent) && (0 !== ch)) {
-      throwError(state, 'bad indentation of a sequence entry');
-    } else if (state.lineIndent < nodeIndent) {
-      break;
-    }
-  }
-
-  if (detected) {
-    state.tag = _tag;
-    state.anchor = _anchor;
-    state.kind = 'sequence';
-    state.result = _result;
-    return true;
-  } else {
-    return false;
-  }
-}
-
-function readBlockMapping(state, nodeIndent, flowIndent) {
-  var following,
-      allowCompact,
-      _line,
-      _tag          = state.tag,
-      _anchor       = state.anchor,
-      _result       = {},
-      keyTag        = null,
-      keyNode       = null,
-      valueNode     = null,
-      atExplicitKey = false,
-      detected      = false,
-      ch;
-
-  if (null !== state.anchor) {
-    state.anchorMap[state.anchor] = _result;
-  }
-
-  ch = state.input.charCodeAt(state.position);
-
-  while (0 !== ch) {
-    following = state.input.charCodeAt(state.position + 1);
-    _line = state.line; // Save the current line.
-
-    //
-    // Explicit notation case. There are two separate blocks:
-    // first for the key (denoted by "?") and second for the value (denoted by ":")
-    //
-    if ((0x3F/* ? */ === ch || 0x3A/* : */  === ch) && is_WS_OR_EOL(following)) {
-
-      if (0x3F/* ? */ === ch) {
-        if (atExplicitKey) {
-          storeMappingPair(state, _result, keyTag, keyNode, null);
-          keyTag = keyNode = valueNode = null;
-        }
-
-        detected = true;
-        atExplicitKey = true;
-        allowCompact = true;
-
-      } else if (atExplicitKey) {
-        // i.e. 0x3A/* : */ === character after the explicit key.
-        atExplicitKey = false;
-        allowCompact = true;
-
-      } else {
-        throwError(state, 'incomplete explicit mapping pair; a key node is missed');
-      }
-
-      state.position += 1;
-      ch = following;
-
-    //
-    // Implicit notation case. Flow-style node as the key first, then ":", and the value.
-    //
-    } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {
-
-      if (state.line === _line) {
-        ch = state.input.charCodeAt(state.position);
-
-        while (is_WHITE_SPACE(ch)) {
-          ch = state.input.charCodeAt(++state.position);
-        }
-
-        if (0x3A/* : */ === ch) {
-          ch = state.input.charCodeAt(++state.position);
-
-          if (!is_WS_OR_EOL(ch)) {
-            throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');
-          }
-
-          if (atExplicitKey) {
-            storeMappingPair(state, _result, keyTag, keyNode, null);
-            keyTag = keyNode = valueNode = null;
-          }
-
-          detected = true;
-          atExplicitKey = false;
-          allowCompact = false;
-          keyTag = state.tag;
-          keyNode = state.result;
-
-        } else if (detected) {
-          throwError(state, 'can not read an implicit mapping pair; a colon is missed');
-
-        } else {
-          state.tag = _tag;
-          state.anchor = _anchor;
-          return true; // Keep the result of `composeNode`.
-        }
-
-      } else if (detected) {
-        throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');
-
-      } else {
-        state.tag = _tag;
-        state.anchor = _anchor;
-        return true; // Keep the result of `composeNode`.
-      }
-
-    } else {
-      break; // Reading is done. Go to the epilogue.
-    }
-
-    //
-    // Common reading code for both explicit and implicit notations.
-    //
-    if (state.line === _line || state.lineIndent > nodeIndent) {
-      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
-        if (atExplicitKey) {
-          keyNode = state.result;
-        } else {
-          valueNode = state.result;
-        }
-      }
-
-      if (!atExplicitKey) {
-        storeMappingPair(state, _result, keyTag, keyNode, valueNode);
-        keyTag = keyNode = valueNode = null;
-      }
-
-      skipSeparationSpace(state, true, -1);
-      ch = state.input.charCodeAt(state.position);
-    }
-
-    if (state.lineIndent > nodeIndent && (0 !== ch)) {
-      throwError(state, 'bad indentation of a mapping entry');
-    } else if (state.lineIndent < nodeIndent) {
-      break;
-    }
-  }
-
-  //
-  // Epilogue.
-  //
-
-  // Special case: last mapping's node contains only the key in explicit notation.
-  if (atExplicitKey) {
-    storeMappingPair(state, _result, keyTag, keyNode, null);
-  }
-
-  // Expose the resulting mapping.
-  if (detected) {
-    state.tag = _tag;
-    state.anchor = _anchor;
-    state.kind = 'mapping';
-    state.result = _result;
-  }
-
-  return detected;
-}
-
-function readTagProperty(state) {
-  var _position,
-      isVerbatim = false,
-      isNamed    = false,
-      tagHandle,
-      tagName,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x21/* ! */ !== ch) {
-    return false;
-  }
-
-  if (null !== state.tag) {
-    throwError(state, 'duplication of a tag property');
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-
-  if (0x3C/* < */ === ch) {
-    isVerbatim = true;
-    ch = state.input.charCodeAt(++state.position);
-
-  } else if (0x21/* ! */ === ch) {
-    isNamed = true;
-    tagHandle = '!!';
-    ch = state.input.charCodeAt(++state.position);
-
-  } else {
-    tagHandle = '!';
-  }
-
-  _position = state.position;
-
-  if (isVerbatim) {
-    do { ch = state.input.charCodeAt(++state.position); }
-    while (0 !== ch && 0x3E/* > */ !== ch);
-
-    if (state.position < state.length) {
-      tagName = state.input.slice(_position, state.position);
-      ch = state.input.charCodeAt(++state.position);
-    } else {
-      throwError(state, 'unexpected end of the stream within a verbatim tag');
-    }
-  } else {
-    while (0 !== ch && !is_WS_OR_EOL(ch)) {
-
-      if (0x21/* ! */ === ch) {
-        if (!isNamed) {
-          tagHandle = state.input.slice(_position - 1, state.position + 1);
-
-          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
-            throwError(state, 'named tag handle cannot contain such characters');
-          }
-
-          isNamed = true;
-          _position = state.position + 1;
-        } else {
-          throwError(state, 'tag suffix cannot contain exclamation marks');
-        }
-      }
-
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    tagName = state.input.slice(_position, state.position);
-
-    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
-      throwError(state, 'tag suffix cannot contain flow indicator characters');
-    }
-  }
-
-  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
-    throwError(state, 'tag name cannot contain such characters: ' + tagName);
-  }
-
-  if (isVerbatim) {
-    state.tag = tagName;
-
-  } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {
-    state.tag = state.tagMap[tagHandle] + tagName;
-
-  } else if ('!' === tagHandle) {
-    state.tag = '!' + tagName;
-
-  } else if ('!!' === tagHandle) {
-    state.tag = 'tag:yaml.org,2002:' + tagName;
-
-  } else {
-    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
-  }
-
-  return true;
-}
-
-function readAnchorProperty(state) {
-  var _position,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x26/* & */ !== ch) {
-    return false;
-  }
-
-  if (null !== state.anchor) {
-    throwError(state, 'duplication of an anchor property');
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-  _position = state.position;
-
-  while (0 !== ch && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  if (state.position === _position) {
-    throwError(state, 'name of an anchor node must contain at least one character');
-  }
-
-  state.anchor = state.input.slice(_position, state.position);
-  return true;
-}
-
-function readAlias(state) {
-  var _position, alias,
-      len = state.length,
-      input = state.input,
-      ch;
-
-  ch = state.input.charCodeAt(state.position);
-
-  if (0x2A/* * */ !== ch) {
-    return false;
-  }
-
-  ch = state.input.charCodeAt(++state.position);
-  _position = state.position;
-
-  while (0 !== ch && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
-    ch = state.input.charCodeAt(++state.position);
-  }
-
-  if (state.position === _position) {
-    throwError(state, 'name of an alias node must contain at least one character');
-  }
-
-  alias = state.input.slice(_position, state.position);
-
-  if (!state.anchorMap.hasOwnProperty(alias)) {
-    throwError(state, 'unidentified alias "' + alias + '"');
-  }
-
-  state.result = state.anchorMap[alias];
-  skipSeparationSpace(state, true, -1);
-  return true;
-}
-
-function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
-  var allowBlockStyles,
-      allowBlockScalars,
-      allowBlockCollections,
-      indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this<parent
-      atNewLine  = false,
-      hasContent = false,
-      typeIndex,
-      typeQuantity,
-      type,
-      flowIndent,
-      blockIndent,
-      _result;
-
-  state.tag    = null;
-  state.anchor = null;
-  state.kind   = null;
-  state.result = null;
-
-  allowBlockStyles = allowBlockScalars = allowBlockCollections =
-    CONTEXT_BLOCK_OUT === nodeContext ||
-    CONTEXT_BLOCK_IN  === nodeContext;
-
-  if (allowToSeek) {
-    if (skipSeparationSpace(state, true, -1)) {
-      atNewLine = true;
-
-      if (state.lineIndent > parentIndent) {
-        indentStatus = 1;
-      } else if (state.lineIndent === parentIndent) {
-        indentStatus = 0;
-      } else if (state.lineIndent < parentIndent) {
-        indentStatus = -1;
-      }
-    }
-  }
-
-  if (1 === indentStatus) {
-    while (readTagProperty(state) || readAnchorProperty(state)) {
-      if (skipSeparationSpace(state, true, -1)) {
-        atNewLine = true;
-        allowBlockCollections = allowBlockStyles;
-
-        if (state.lineIndent > parentIndent) {
-          indentStatus = 1;
-        } else if (state.lineIndent === parentIndent) {
-          indentStatus = 0;
-        } else if (state.lineIndent < parentIndent) {
-          indentStatus = -1;
-        }
-      } else {
-        allowBlockCollections = false;
-      }
-    }
-  }
-
-  if (allowBlockCollections) {
-    allowBlockCollections = atNewLine || allowCompact;
-  }
-
-  if (1 === indentStatus || CONTEXT_BLOCK_OUT === nodeContext) {
-    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
-      flowIndent = parentIndent;
-    } else {
-      flowIndent = parentIndent + 1;
-    }
-
-    blockIndent = state.position - state.lineStart;
-
-    if (1 === indentStatus) {
-      if (allowBlockCollections &&
-          (readBlockSequence(state, blockIndent) ||
-           readBlockMapping(state, blockIndent, flowIndent)) ||
-          readFlowCollection(state, flowIndent)) {
-        hasContent = true;
-      } else {
-        if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||
-            readSingleQuotedScalar(state, flowIndent) ||
-            readDoubleQuotedScalar(state, flowIndent)) {
-          hasContent = true;
-
-        } else if (readAlias(state)) {
-          hasContent = true;
-
-          if (null !== state.tag || null !== state.anchor) {
-            throwError(state, 'alias node should not have any properties');
-          }
-
-        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
-          hasContent = true;
-
-          if (null === state.tag) {
-            state.tag = '?';
-          }
-        }
-
-        if (null !== state.anchor) {
-          state.anchorMap[state.anchor] = state.result;
-        }
-      }
-    } else if (0 === indentStatus) {
-      // Special case: block sequences are allowed to have same indentation level as the parent.
-      // http://www.yaml.org/spec/1.2/spec.html#id2799784
-      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
-    }
-  }
-
-  if (null !== state.tag && '!' !== state.tag) {
-    if ('?' === state.tag) {
-      for (typeIndex = 0, typeQuantity = state.implicitTypes.length;
-           typeIndex < typeQuantity;
-           typeIndex += 1) {
-        type = state.implicitTypes[typeIndex];
-
-        // Implicit resolving is not allowed for non-scalar types, and '?'
-        // non-specific tag is only assigned to plain scalars. So, it isn't
-        // needed to check for 'kind' conformity.
-
-        if (type.resolve(state.result)) { // `state.result` updated in resolver if matched
-          state.result = type.construct(state.result);
-          state.tag = type.tag;
-          if (null !== state.anchor) {
-            state.anchorMap[state.anchor] = state.result;
-          }
-          break;
-        }
-      }
-    } else if (_hasOwnProperty.call(state.typeMap, state.tag)) {
-      type = state.typeMap[state.tag];
-
-      if (null !== state.result && type.kind !== state.kind) {
-        throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"');
-      }
-
-      if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched
-        throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');
-      } else {
-        state.result = type.construct(state.result);
-        if (null !== state.anchor) {
-          state.anchorMap[state.anchor] = state.result;
-        }
-      }
-    } else {
-      throwWarning(state, 'unknown tag !<' + state.tag + '>');
-    }
-  }
-
-  return null !== state.tag || null !== state.anchor || hasContent;
-}
-
-function readDocument(state) {
-  var documentStart = state.position,
-      _position,
-      directiveName,
-      directiveArgs,
-      hasDirectives = false,
-      ch;
-
-  state.version = null;
-  state.checkLineBreaks = state.legacy;
-  state.tagMap = {};
-  state.anchorMap = {};
-
-  while (0 !== (ch = state.input.charCodeAt(state.position))) {
-    skipSeparationSpace(state, true, -1);
-
-    ch = state.input.charCodeAt(state.position);
-
-    if (state.lineIndent > 0 || 0x25/* % */ !== ch) {
-      break;
-    }
-
-    hasDirectives = true;
-    ch = state.input.charCodeAt(++state.position);
-    _position = state.position;
-
-    while (0 !== ch && !is_WS_OR_EOL(ch)) {
-      ch = state.input.charCodeAt(++state.position);
-    }
-
-    directiveName = state.input.slice(_position, state.position);
-    directiveArgs = [];
-
-    if (directiveName.length < 1) {
-      throwError(state, 'directive name must not be less than one character in length');
-    }
-
-    while (0 !== ch) {
-      while (is_WHITE_SPACE(ch)) {
-        ch = state.input.charCodeAt(++state.position);
-      }
-
-      if (0x23/* # */ === ch) {
-        do { ch = state.input.charCodeAt(++state.position); }
-        while (0 !== ch && !is_EOL(ch));
-        break;
-      }
-
-      if (is_EOL(ch)) {
-        break;
-      }
-
-      _position = state.position;
-
-      while (0 !== ch && !is_WS_OR_EOL(ch)) {
-        ch = state.input.charCodeAt(++state.position);
-      }
-
-      directiveArgs.push(state.input.slice(_position, state.position));
-    }
-
-    if (0 !== ch) {
-      readLineBreak(state);
-    }
-
-    if (_hasOwnProperty.call(directiveHandlers, directiveName)) {
-      directiveHandlers[directiveName](state, directiveName, directiveArgs);
-    } else {
-      throwWarning(state, 'unknown document directive "' + directiveName + '"');
-    }
-  }
-
-  skipSeparationSpace(state, true, -1);
-
-  if (0 === state.lineIndent &&
-      0x2D/* - */ === state.input.charCodeAt(state.position) &&
-      0x2D/* - */ === state.input.charCodeAt(state.position + 1) &&
-      0x2D/* - */ === state.input.charCodeAt(state.position + 2)) {
-    state.position += 3;
-    skipSeparationSpace(state, true, -1);
-
-  } else if (hasDirectives) {
-    throwError(state, 'directives end mark is expected');
-  }
-
-  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
-  skipSeparationSpace(state, true, -1);
-
-  if (state.checkLineBreaks &&
-      PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
-    throwWarning(state, 'non-ASCII line breaks are interpreted as content');
-  }
-
-  state.documents.push(state.result);
-
-  if (state.position === state.lineStart && testDocumentSeparator(state)) {
-
-    if (0x2E/* . */ === state.input.charCodeAt(state.position)) {
-      state.position += 3;
-      skipSeparationSpace(state, true, -1);
-    }
-    return;
-  }
-
-  if (state.position < (state.length - 1)) {
-    throwError(state, 'end of the stream or a document separator is expected');
-  } else {
-    return;
-  }
-}
-
-
-function loadDocuments(input, options) {
-  input = String(input);
-  options = options || {};
-
-  if (0 !== input.length &&
-      0x0A/* LF */ !== input.charCodeAt(input.length - 1) &&
-      0x0D/* CR */ !== input.charCodeAt(input.length - 1)) {
-    input += '\n';
-  }
-
-  var state = new State(input, options);
-
-  if (PATTERN_NON_PRINTABLE.test(state.input)) {
-    throwError(state, 'the stream contains non-printable characters');
-  }
-
-  // Use 0 as string terminator. That significantly simplifies bounds check.
-  state.input += '\0';
-
-  while (0x20/* Space */ === state.input.charCodeAt(state.position)) {
-    state.lineIndent += 1;
-    state.position += 1;
-  }
-
-  while (state.position < (state.length - 1)) {
-    readDocument(state);
-  }
-
-  return state.documents;
-}
-
-
-function loadAll(input, iterator, options) {
-  var documents = loadDocuments(input, options), index, length;
-
-  for (index = 0, length = documents.length; index < length; index += 1) {
-    iterator(documents[index]);
-  }
-}
-
-
-function load(input, options) {
-  var documents = loadDocuments(input, options), index, length;
-
-  if (0 === documents.length) {
-    return undefined;
-  } else if (1 === documents.length) {
-    return documents[0];
-  } else {
-    throw new YAMLException('expected a single document in the stream, but found more');
-  }
-}
-
-
-function safeLoadAll(input, output, options) {
-  loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-function safeLoad(input, options) {
-  return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
-}
-
-
-module.exports.loadAll     = loadAll;
-module.exports.load        = load;
-module.exports.safeLoadAll = safeLoadAll;
-module.exports.safeLoad    = safeLoad;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/mark.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/mark.js
deleted file mode 100644 (file)
index bfe279b..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-'use strict';
-
-
-var common = require('./common');
-
-
-function Mark(name, buffer, position, line, column) {
-  this.name     = name;
-  this.buffer   = buffer;
-  this.position = position;
-  this.line     = line;
-  this.column   = column;
-}
-
-
-Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
-  var head, start, tail, end, snippet;
-
-  if (!this.buffer) {
-    return null;
-  }
-
-  indent = indent || 4;
-  maxLength = maxLength || 75;
-
-  head = '';
-  start = this.position;
-
-  while (start > 0 && -1 === '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1))) {
-    start -= 1;
-    if (this.position - start > (maxLength / 2 - 1)) {
-      head = ' ... ';
-      start += 5;
-      break;
-    }
-  }
-
-  tail = '';
-  end = this.position;
-
-  while (end < this.buffer.length && -1 === '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end))) {
-    end += 1;
-    if (end - this.position > (maxLength / 2 - 1)) {
-      tail = ' ... ';
-      end -= 5;
-      break;
-    }
-  }
-
-  snippet = this.buffer.slice(start, end);
-
-  return common.repeat(' ', indent) + head + snippet + tail + '\n' +
-         common.repeat(' ', indent + this.position - start + head.length) + '^';
-};
-
-
-Mark.prototype.toString = function toString(compact) {
-  var snippet, where = '';
-
-  if (this.name) {
-    where += 'in "' + this.name + '" ';
-  }
-
-  where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);
-
-  if (!compact) {
-    snippet = this.getSnippet();
-
-    if (snippet) {
-      where += ':\n' + snippet;
-    }
-  }
-
-  return where;
-};
-
-
-module.exports = Mark;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/schema.js
deleted file mode 100644 (file)
index 09a157e..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-'use strict';
-
-
-var common        = require('./common');
-var YAMLException = require('./exception');
-var Type          = require('./type');
-
-
-function compileList(schema, name, result) {
-  var exclude = [];
-
-  schema.include.forEach(function (includedSchema) {
-    result = compileList(includedSchema, name, result);
-  });
-
-  schema[name].forEach(function (currentType) {
-    result.forEach(function (previousType, previousIndex) {
-      if (previousType.tag === currentType.tag) {
-        exclude.push(previousIndex);
-      }
-    });
-
-    result.push(currentType);
-  });
-
-  return result.filter(function (type, index) {
-    return -1 === exclude.indexOf(index);
-  });
-}
-
-
-function compileMap(/* lists... */) {
-  var result = {}, index, length;
-
-  function collectType(type) {
-    result[type.tag] = type;
-  }
-
-  for (index = 0, length = arguments.length; index < length; index += 1) {
-    arguments[index].forEach(collectType);
-  }
-
-  return result;
-}
-
-
-function Schema(definition) {
-  this.include  = definition.include  || [];
-  this.implicit = definition.implicit || [];
-  this.explicit = definition.explicit || [];
-
-  this.implicit.forEach(function (type) {
-    if (type.loadKind && 'scalar' !== type.loadKind) {
-      throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');
-    }
-  });
-
-  this.compiledImplicit = compileList(this, 'implicit', []);
-  this.compiledExplicit = compileList(this, 'explicit', []);
-  this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit);
-}
-
-
-Schema.DEFAULT = null;
-
-
-Schema.create = function createSchema() {
-  var schemas, types;
-
-  switch (arguments.length) {
-  case 1:
-    schemas = Schema.DEFAULT;
-    types = arguments[0];
-    break;
-
-  case 2:
-    schemas = arguments[0];
-    types = arguments[1];
-    break;
-
-  default:
-    throw new YAMLException('Wrong number of arguments for Schema.create function');
-  }
-
-  schemas = common.toArray(schemas);
-  types = common.toArray(types);
-
-  if (!schemas.every(function (schema) { return schema instanceof Schema; })) {
-    throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');
-  }
-
-  if (!types.every(function (type) { return type instanceof Type; })) {
-    throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');
-  }
-
-  return new Schema({
-    include: schemas,
-    explicit: types
-  });
-};
-
-
-module.exports = Schema;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type.js
deleted file mode 100644 (file)
index 5e3176c..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-'use strict';
-
-var YAMLException = require('./exception');
-
-var TYPE_CONSTRUCTOR_OPTIONS = [
-  'kind',
-  'resolve',
-  'construct',
-  'instanceOf',
-  'predicate',
-  'represent',
-  'defaultStyle',
-  'styleAliases'
-];
-
-var YAML_NODE_KINDS = [
-  'scalar',
-  'sequence',
-  'mapping'
-];
-
-function compileStyleAliases(map) {
-  var result = {};
-
-  if (null !== map) {
-    Object.keys(map).forEach(function (style) {
-      map[style].forEach(function (alias) {
-        result[String(alias)] = style;
-      });
-    });
-  }
-
-  return result;
-}
-
-function Type(tag, options) {
-  options = options || {};
-
-  Object.keys(options).forEach(function (name) {
-    if (-1 === TYPE_CONSTRUCTOR_OPTIONS.indexOf(name)) {
-      throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
-    }
-  });
-
-  // TODO: Add tag format check.
-  this.tag          = tag;
-  this.kind         = options['kind']         || null;
-  this.resolve      = options['resolve']      || function () { return true; };
-  this.construct    = options['construct']    || function (data) { return data; };
-  this.instanceOf   = options['instanceOf']   || null;
-  this.predicate    = options['predicate']    || null;
-  this.represent    = options['represent']    || null;
-  this.defaultStyle = options['defaultStyle'] || null;
-  this.styleAliases = compileStyleAliases(options['styleAliases'] || null);
-
-  if (-1 === YAML_NODE_KINDS.indexOf(this.kind)) {
-    throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
-  }
-}
-
-module.exports = Type;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/binary.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/binary.js
deleted file mode 100644 (file)
index 1fdf47d..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-'use strict';
-
-
-// A trick for browserified version.
-// Since we make browserifier to ignore `buffer` module, NodeBuffer will be undefined
-var NodeBuffer = require('buffer').Buffer;
-var Type       = require('../type');
-
-
-// [ 64, 65, 66 ] -> [ padding, CR, LF ]
-var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r';
-
-
-function resolveYamlBinary(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var code, idx, bitlen = 0, len = 0, max = data.length, map = BASE64_MAP;
-
-  // Convert one by one.
-  for (idx = 0; idx < max; idx ++) {
-    code = map.indexOf(data.charAt(idx));
-
-    // Skip CR/LF
-    if (code > 64) { continue; }
-
-    // Fail on illegal characters
-    if (code < 0) { return false; }
-
-    bitlen += 6;
-  }
-
-  // If there are any bits left, source was corrupted
-  return (bitlen % 8) === 0;
-}
-
-function constructYamlBinary(data) {
-  var code, idx, tailbits,
-      input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan
-      max = input.length,
-      map = BASE64_MAP,
-      bits = 0,
-      result = [];
-
-  // Collect by 6*4 bits (3 bytes)
-
-  for (idx = 0; idx < max; idx++) {
-    if ((idx % 4 === 0) && idx) {
-      result.push((bits >> 16) & 0xFF);
-      result.push((bits >> 8) & 0xFF);
-      result.push(bits & 0xFF);
-    }
-
-    bits = (bits << 6) | map.indexOf(input.charAt(idx));
-  }
-
-  // Dump tail
-
-  tailbits = (max % 4)*6;
-
-  if (tailbits === 0) {
-    result.push((bits >> 16) & 0xFF);
-    result.push((bits >> 8) & 0xFF);
-    result.push(bits & 0xFF);
-  } else if (tailbits === 18) {
-    result.push((bits >> 10) & 0xFF);
-    result.push((bits >> 2) & 0xFF);
-  } else if (tailbits === 12) {
-    result.push((bits >> 4) & 0xFF);
-  }
-
-  // Wrap into Buffer for NodeJS and leave Array for browser
-  if (NodeBuffer) {
-    return new NodeBuffer(result);
-  }
-
-  return result;
-}
-
-function representYamlBinary(object /*, style*/) {
-  var result = '', bits = 0, idx, tail,
-      max = object.length,
-      map = BASE64_MAP;
-
-  // Convert every three bytes to 4 ASCII characters.
-
-  for (idx = 0; idx < max; idx++) {
-    if ((idx % 3 === 0) && idx) {
-      result += map[(bits >> 18) & 0x3F];
-      result += map[(bits >> 12) & 0x3F];
-      result += map[(bits >> 6) & 0x3F];
-      result += map[bits & 0x3F];
-    }
-
-    bits = (bits << 8) + object[idx];
-  }
-
-  // Dump tail
-
-  tail = max % 3;
-
-  if (tail === 0) {
-    result += map[(bits >> 18) & 0x3F];
-    result += map[(bits >> 12) & 0x3F];
-    result += map[(bits >> 6) & 0x3F];
-    result += map[bits & 0x3F];
-  } else if (tail === 2) {
-    result += map[(bits >> 10) & 0x3F];
-    result += map[(bits >> 4) & 0x3F];
-    result += map[(bits << 2) & 0x3F];
-    result += map[64];
-  } else if (tail === 1) {
-    result += map[(bits >> 2) & 0x3F];
-    result += map[(bits << 4) & 0x3F];
-    result += map[64];
-    result += map[64];
-  }
-
-  return result;
-}
-
-function isBinary(object) {
-  return NodeBuffer && NodeBuffer.isBuffer(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:binary', {
-  kind: 'scalar',
-  resolve: resolveYamlBinary,
-  construct: constructYamlBinary,
-  predicate: isBinary,
-  represent: representYamlBinary
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/bool.js
deleted file mode 100644 (file)
index 5c2a304..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlBoolean(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var max = data.length;
-
-  return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||
-         (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));
-}
-
-function constructYamlBoolean(data) {
-  return data === 'true' ||
-         data === 'True' ||
-         data === 'TRUE';
-}
-
-function isBoolean(object) {
-  return '[object Boolean]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:bool', {
-  kind: 'scalar',
-  resolve: resolveYamlBoolean,
-  construct: constructYamlBoolean,
-  predicate: isBoolean,
-  represent: {
-    lowercase: function (object) { return object ? 'true' : 'false'; },
-    uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },
-    camelcase: function (object) { return object ? 'True' : 'False'; }
-  },
-  defaultStyle: 'lowercase'
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/float.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/float.js
deleted file mode 100644 (file)
index 9e3eff4..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-'use strict';
-
-var common = require('../common');
-var Type   = require('../type');
-
-var YAML_FLOAT_PATTERN = new RegExp(
-  '^(?:[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+][0-9]+)?' +
-  '|\\.[0-9_]+(?:[eE][-+][0-9]+)?' +
-  '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' +
-  '|[-+]?\\.(?:inf|Inf|INF)' +
-  '|\\.(?:nan|NaN|NAN))$');
-
-function resolveYamlFloat(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var value, sign, base, digits;
-
-  if (!YAML_FLOAT_PATTERN.test(data)) {
-    return false;
-  }
-  return true;
-}
-
-function constructYamlFloat(data) {
-  var value, sign, base, digits;
-
-  value  = data.replace(/_/g, '').toLowerCase();
-  sign   = '-' === value[0] ? -1 : 1;
-  digits = [];
-
-  if (0 <= '+-'.indexOf(value[0])) {
-    value = value.slice(1);
-  }
-
-  if ('.inf' === value) {
-    return (1 === sign) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
-
-  } else if ('.nan' === value) {
-    return NaN;
-
-  } else if (0 <= value.indexOf(':')) {
-    value.split(':').forEach(function (v) {
-      digits.unshift(parseFloat(v, 10));
-    });
-
-    value = 0.0;
-    base = 1;
-
-    digits.forEach(function (d) {
-      value += d * base;
-      base *= 60;
-    });
-
-    return sign * value;
-
-  } else {
-    return sign * parseFloat(value, 10);
-  }
-}
-
-function representYamlFloat(object, style) {
-  if (isNaN(object)) {
-    switch (style) {
-    case 'lowercase':
-      return '.nan';
-    case 'uppercase':
-      return '.NAN';
-    case 'camelcase':
-      return '.NaN';
-    }
-  } else if (Number.POSITIVE_INFINITY === object) {
-    switch (style) {
-    case 'lowercase':
-      return '.inf';
-    case 'uppercase':
-      return '.INF';
-    case 'camelcase':
-      return '.Inf';
-    }
-  } else if (Number.NEGATIVE_INFINITY === object) {
-    switch (style) {
-    case 'lowercase':
-      return '-.inf';
-    case 'uppercase':
-      return '-.INF';
-    case 'camelcase':
-      return '-.Inf';
-    }
-  } else if (common.isNegativeZero(object)) {
-    return '-0.0';
-  } else {
-    return object.toString(10);
-  }
-}
-
-function isFloat(object) {
-  return ('[object Number]' === Object.prototype.toString.call(object)) &&
-         (0 !== object % 1 || common.isNegativeZero(object));
-}
-
-module.exports = new Type('tag:yaml.org,2002:float', {
-  kind: 'scalar',
-  resolve: resolveYamlFloat,
-  construct: constructYamlFloat,
-  predicate: isFloat,
-  represent: representYamlFloat,
-  defaultStyle: 'lowercase'
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/int.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/int.js
deleted file mode 100644 (file)
index efada88..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-'use strict';
-
-var common = require('../common');
-var Type   = require('../type');
-
-function isHexCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
-         ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
-         ((0x61/* a */ <= c) && (c <= 0x66/* f */));
-}
-
-function isOctCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
-}
-
-function isDecCode(c) {
-  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
-}
-
-function resolveYamlInteger(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var max = data.length,
-      index = 0,
-      hasDigits = false,
-      ch;
-
-  if (!max) { return false; }
-
-  ch = data[index];
-
-  // sign
-  if (ch === '-' || ch === '+') {
-    ch = data[++index];
-  }
-
-  if (ch === '0') {
-    // 0
-    if (index+1 === max) { return true; }
-    ch = data[++index];
-
-    // base 2, base 8, base 16
-
-    if (ch === 'b') {
-      // base 2
-      index++;
-
-      for (; index < max; index++) {
-        ch = data[index];
-        if (ch === '_') { continue; }
-        if (ch !== '0' && ch !== '1') {
-          return false;
-        }
-        hasDigits = true;
-      }
-      return hasDigits;
-    }
-
-
-    if (ch === 'x') {
-      // base 16
-      index++;
-
-      for (; index < max; index++) {
-        ch = data[index];
-        if (ch === '_') { continue; }
-        if (!isHexCode(data.charCodeAt(index))) {
-          return false;
-        }
-        hasDigits = true;
-      }
-      return hasDigits;
-    }
-
-    // base 8
-    for (; index < max; index++) {
-      ch = data[index];
-      if (ch === '_') { continue; }
-      if (!isOctCode(data.charCodeAt(index))) {
-        return false;
-      }
-      hasDigits = true;
-    }
-    return hasDigits;
-  }
-
-  // base 10 (except 0) or base 60
-
-  for (; index < max; index++) {
-    ch = data[index];
-    if (ch === '_') { continue; }
-    if (ch === ':') { break; }
-    if (!isDecCode(data.charCodeAt(index))) {
-      return false;
-    }
-    hasDigits = true;
-  }
-
-  if (!hasDigits) { return false; }
-
-  // if !base60 - done;
-  if (ch !== ':') { return true; }
-
-  // base60 almost not used, no needs to optimize
-  return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
-}
-
-function constructYamlInteger(data) {
-  var value = data, sign = 1, ch, base, digits = [];
-
-  if (value.indexOf('_') !== -1) {
-    value = value.replace(/_/g, '');
-  }
-
-  ch = value[0];
-
-  if (ch === '-' || ch === '+') {
-    if (ch === '-') { sign = -1; }
-    value = value.slice(1);
-    ch = value[0];
-  }
-
-  if ('0' === value) {
-    return 0;
-  }
-
-  if (ch === '0') {
-    if (value[1] === 'b') {
-      return sign * parseInt(value.slice(2), 2);
-    }
-    if (value[1] === 'x') {
-      return sign * parseInt(value, 16);
-    }
-    return sign * parseInt(value, 8);
-
-  }
-
-  if (value.indexOf(':') !== -1) {
-    value.split(':').forEach(function (v) {
-      digits.unshift(parseInt(v, 10));
-    });
-
-    value = 0;
-    base = 1;
-
-    digits.forEach(function (d) {
-      value += (d * base);
-      base *= 60;
-    });
-
-    return sign * value;
-
-  }
-
-  return sign * parseInt(value, 10);
-}
-
-function isInteger(object) {
-  return ('[object Number]' === Object.prototype.toString.call(object)) &&
-         (0 === object % 1 && !common.isNegativeZero(object));
-}
-
-module.exports = new Type('tag:yaml.org,2002:int', {
-  kind: 'scalar',
-  resolve: resolveYamlInteger,
-  construct: constructYamlInteger,
-  predicate: isInteger,
-  represent: {
-    binary:      function (object) { return '0b' + object.toString(2); },
-    octal:       function (object) { return '0'  + object.toString(8); },
-    decimal:     function (object) { return        object.toString(10); },
-    hexadecimal: function (object) { return '0x' + object.toString(16).toUpperCase(); }
-  },
-  defaultStyle: 'decimal',
-  styleAliases: {
-    binary:      [ 2,  'bin' ],
-    octal:       [ 8,  'oct' ],
-    decimal:     [ 10, 'dec' ],
-    hexadecimal: [ 16, 'hex' ]
-  }
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/function.js
deleted file mode 100644 (file)
index 05eface..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-'use strict';
-
-var esprima;
-
-// Browserified version does not have esprima
-//
-// 1. For node.js just require module as deps
-// 2. For browser try to require mudule via external AMD system.
-//    If not found - try to fallback to window.esprima. If not
-//    found too - then fail to parse.
-//
-try {
-  esprima = require('esprima');
-} catch (_) {
-  /*global window */
-  if (typeof window !== 'undefined') { esprima = window.esprima; }
-}
-
-var Type = require('../../type');
-
-function resolveJavascriptFunction(data) {
-  if (null === data) {
-    return false;
-  }
-
-  try {
-    var source = '(' + data + ')',
-        ast    = esprima.parse(source, { range: true }),
-        params = [],
-        body;
-
-    if ('Program'             !== ast.type         ||
-        1                     !== ast.body.length  ||
-        'ExpressionStatement' !== ast.body[0].type ||
-        'FunctionExpression'  !== ast.body[0].expression.type) {
-      return false;
-    }
-
-    return true;
-  } catch (err) {
-    return false;
-  }
-}
-
-function constructJavascriptFunction(data) {
-  /*jslint evil:true*/
-
-  var source = '(' + data + ')',
-      ast    = esprima.parse(source, { range: true }),
-      params = [],
-      body;
-
-  if ('Program'             !== ast.type         ||
-      1                     !== ast.body.length  ||
-      'ExpressionStatement' !== ast.body[0].type ||
-      'FunctionExpression'  !== ast.body[0].expression.type) {
-    throw new Error('Failed to resolve function');
-  }
-
-  ast.body[0].expression.params.forEach(function (param) {
-    params.push(param.name);
-  });
-
-  body = ast.body[0].expression.body.range;
-
-  // Esprima's ranges include the first '{' and the last '}' characters on
-  // function expressions. So cut them out.
-  return new Function(params, source.slice(body[0]+1, body[1]-1));
-}
-
-function representJavascriptFunction(object /*, style*/) {
-  return object.toString();
-}
-
-function isFunction(object) {
-  return '[object Function]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/function', {
-  kind: 'scalar',
-  resolve: resolveJavascriptFunction,
-  construct: constructJavascriptFunction,
-  predicate: isFunction,
-  represent: representJavascriptFunction
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
deleted file mode 100644 (file)
index 07ef521..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-'use strict';
-
-var Type = require('../../type');
-
-function resolveJavascriptRegExp(data) {
-  if (null === data) {
-    return false;
-  }
-
-  if (0 === data.length) {
-    return false;
-  }
-
-  var regexp = data,
-      tail   = /\/([gim]*)$/.exec(data),
-      modifiers = '';
-
-  // if regexp starts with '/' it can have modifiers and must be properly closed
-  // `/foo/gim` - modifiers tail can be maximum 3 chars
-  if ('/' === regexp[0]) {
-    if (tail) {
-      modifiers = tail[1];
-    }
-
-    if (modifiers.length > 3) { return false; }
-    // if expression starts with /, is should be properly terminated
-    if (regexp[regexp.length - modifiers.length - 1] !== '/') { return false; }
-
-    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
-  }
-
-  try {
-    var dummy = new RegExp(regexp, modifiers);
-    return true;
-  } catch (error) {
-    return false;
-  }
-}
-
-function constructJavascriptRegExp(data) {
-  var regexp = data,
-      tail   = /\/([gim]*)$/.exec(data),
-      modifiers = '';
-
-  // `/foo/gim` - tail can be maximum 4 chars
-  if ('/' === regexp[0]) {
-    if (tail) {
-      modifiers = tail[1];
-    }
-    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
-  }
-
-  return new RegExp(regexp, modifiers);
-}
-
-function representJavascriptRegExp(object /*, style*/) {
-  var result = '/' + object.source + '/';
-
-  if (object.global) {
-    result += 'g';
-  }
-
-  if (object.multiline) {
-    result += 'm';
-  }
-
-  if (object.ignoreCase) {
-    result += 'i';
-  }
-
-  return result;
-}
-
-function isRegExp(object) {
-  return '[object RegExp]' === Object.prototype.toString.call(object);
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/regexp', {
-  kind: 'scalar',
-  resolve: resolveJavascriptRegExp,
-  construct: constructJavascriptRegExp,
-  predicate: isRegExp,
-  represent: representJavascriptRegExp
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
deleted file mode 100644 (file)
index 1a2f41a..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-var Type = require('../../type');
-
-function resolveJavascriptUndefined() {
-  return true;
-}
-
-function constructJavascriptUndefined() {
-  return undefined;
-}
-
-function representJavascriptUndefined() {
-  return '';
-}
-
-function isUndefined(object) {
-  return 'undefined' === typeof object;
-}
-
-module.exports = new Type('tag:yaml.org,2002:js/undefined', {
-  kind: 'scalar',
-  resolve: resolveJavascriptUndefined,
-  construct: constructJavascriptUndefined,
-  predicate: isUndefined,
-  represent: representJavascriptUndefined
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/map.js
deleted file mode 100644 (file)
index dab9838..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:map', {
-  kind: 'mapping',
-  construct: function (data) { return null !== data ? data : {}; }
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/merge.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/merge.js
deleted file mode 100644 (file)
index 29fa382..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlMerge(data) {
-  return '<<' === data || null === data;
-}
-
-module.exports = new Type('tag:yaml.org,2002:merge', {
-  kind: 'scalar',
-  resolve: resolveYamlMerge
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/null.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/null.js
deleted file mode 100644 (file)
index 3474055..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-function resolveYamlNull(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var max = data.length;
-
-  return (max === 1 && data === '~') ||
-         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
-}
-
-function constructYamlNull() {
-  return null;
-}
-
-function isNull(object) {
-  return null === object;
-}
-
-module.exports = new Type('tag:yaml.org,2002:null', {
-  kind: 'scalar',
-  resolve: resolveYamlNull,
-  construct: constructYamlNull,
-  predicate: isNull,
-  represent: {
-    canonical: function () { return '~';    },
-    lowercase: function () { return 'null'; },
-    uppercase: function () { return 'NULL'; },
-    camelcase: function () { return 'Null'; }
-  },
-  defaultStyle: 'lowercase'
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/omap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/omap.js
deleted file mode 100644 (file)
index f956459..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-var _toString       = Object.prototype.toString;
-
-function resolveYamlOmap(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var objectKeys = [], index, length, pair, pairKey, pairHasKey,
-      object = data;
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-    pairHasKey = false;
-
-    if ('[object Object]' !== _toString.call(pair)) {
-      return false;
-    }
-
-    for (pairKey in pair) {
-      if (_hasOwnProperty.call(pair, pairKey)) {
-        if (!pairHasKey) {
-          pairHasKey = true;
-        } else {
-          return false;
-        }
-      }
-    }
-
-    if (!pairHasKey) {
-      return false;
-    }
-
-    if (-1 === objectKeys.indexOf(pairKey)) {
-      objectKeys.push(pairKey);
-    } else {
-      return false;
-    }
-  }
-
-  return true;
-}
-
-function constructYamlOmap(data) {
-  return null !== data ? data : [];
-}
-
-module.exports = new Type('tag:yaml.org,2002:omap', {
-  kind: 'sequence',
-  resolve: resolveYamlOmap,
-  construct: constructYamlOmap
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/pairs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/pairs.js
deleted file mode 100644 (file)
index 02a0af6..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-var _toString = Object.prototype.toString;
-
-function resolveYamlPairs(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var index, length, pair, keys, result,
-      object = data;
-
-  result = new Array(object.length);
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-
-    if ('[object Object]' !== _toString.call(pair)) {
-      return false;
-    }
-
-    keys = Object.keys(pair);
-
-    if (1 !== keys.length) {
-      return false;
-    }
-
-    result[index] = [ keys[0], pair[keys[0]] ];
-  }
-
-  return true;
-}
-
-function constructYamlPairs(data) {
-  if (null === data) {
-    return [];
-  }
-
-  var index, length, pair, keys, result,
-      object = data;
-
-  result = new Array(object.length);
-
-  for (index = 0, length = object.length; index < length; index += 1) {
-    pair = object[index];
-
-    keys = Object.keys(pair);
-
-    result[index] = [ keys[0], pair[keys[0]] ];
-  }
-
-  return result;
-}
-
-module.exports = new Type('tag:yaml.org,2002:pairs', {
-  kind: 'sequence',
-  resolve: resolveYamlPairs,
-  construct: constructYamlPairs
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/seq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/seq.js
deleted file mode 100644 (file)
index 5b860a2..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:seq', {
-  kind: 'sequence',
-  construct: function (data) { return null !== data ? data : []; }
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/set.js
deleted file mode 100644 (file)
index 64d29e9..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-var _hasOwnProperty = Object.prototype.hasOwnProperty;
-
-function resolveYamlSet(data) {
-  if (null === data) {
-    return true;
-  }
-
-  var key, object = data;
-
-  for (key in object) {
-    if (_hasOwnProperty.call(object, key)) {
-      if (null !== object[key]) {
-        return false;
-      }
-    }
-  }
-
-  return true;
-}
-
-function constructYamlSet(data) {
-  return null !== data ? data : {};
-}
-
-module.exports = new Type('tag:yaml.org,2002:set', {
-  kind: 'mapping',
-  resolve: resolveYamlSet,
-  construct: constructYamlSet
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/str.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/str.js
deleted file mode 100644 (file)
index 8b5284f..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-module.exports = new Type('tag:yaml.org,2002:str', {
-  kind: 'scalar',
-  construct: function (data) { return null !== data ? data : ''; }
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/timestamp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/lib/js-yaml/type/timestamp.js
deleted file mode 100644 (file)
index dc8cf15..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-'use strict';
-
-var Type = require('../type');
-
-var YAML_TIMESTAMP_REGEXP = new RegExp(
-  '^([0-9][0-9][0-9][0-9])'          + // [1] year
-  '-([0-9][0-9]?)'                   + // [2] month
-  '-([0-9][0-9]?)'                   + // [3] day
-  '(?:(?:[Tt]|[ \\t]+)'              + // ...
-  '([0-9][0-9]?)'                    + // [4] hour
-  ':([0-9][0-9])'                    + // [5] minute
-  ':([0-9][0-9])'                    + // [6] second
-  '(?:\\.([0-9]*))?'                 + // [7] fraction
-  '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
-  '(?::([0-9][0-9]))?))?)?$');         // [11] tz_minute
-
-function resolveYamlTimestamp(data) {
-  if (null === data) {
-    return false;
-  }
-
-  var match, year, month, day, hour, minute, second, fraction = 0,
-      delta = null, tz_hour, tz_minute, date;
-
-  match = YAML_TIMESTAMP_REGEXP.exec(data);
-
-  if (null === match) {
-    return false;
-  }
-
-  return true;
-}
-
-function constructYamlTimestamp(data) {
-  var match, year, month, day, hour, minute, second, fraction = 0,
-      delta = null, tz_hour, tz_minute, date;
-
-  match = YAML_TIMESTAMP_REGEXP.exec(data);
-
-  if (null === match) {
-    throw new Error('Date resolve error');
-  }
-
-  // match: [1] year [2] month [3] day
-
-  year = +(match[1]);
-  month = +(match[2]) - 1; // JS month starts with 0
-  day = +(match[3]);
-
-  if (!match[4]) { // no hour
-    return new Date(Date.UTC(year, month, day));
-  }
-
-  // match: [4] hour [5] minute [6] second [7] fraction
-
-  hour = +(match[4]);
-  minute = +(match[5]);
-  second = +(match[6]);
-
-  if (match[7]) {
-    fraction = match[7].slice(0, 3);
-    while (fraction.length < 3) { // milli-seconds
-      fraction += '0';
-    }
-    fraction = +fraction;
-  }
-
-  // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute
-
-  if (match[9]) {
-    tz_hour = +(match[10]);
-    tz_minute = +(match[11] || 0);
-    delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
-    if ('-' === match[9]) {
-      delta = -delta;
-    }
-  }
-
-  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
-
-  if (delta) {
-    date.setTime(date.getTime() - delta);
-  }
-
-  return date;
-}
-
-function representYamlTimestamp(object /*, style*/) {
-  return object.toISOString();
-}
-
-module.exports = new Type('tag:yaml.org,2002:timestamp', {
-  kind: 'scalar',
-  resolve: resolveYamlTimestamp,
-  construct: constructYamlTimestamp,
-  instanceOf: Date,
-  represent: representYamlTimestamp
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/CHANGELOG.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/CHANGELOG.md
deleted file mode 100644 (file)
index 661e75d..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-1.0.2 / 2015-03-22
-------------------
-
-* Relaxed lodash version dependency.
-
-
-1.0.1 / 2015-02-20
-------------------
-
-* Changed dependencies to be compatible with ancient nodejs.
-
-
-1.0.0 / 2015-02-19
-------------------
-
-* Maintenance release.
-* Replaced `underscore` with `lodash`.
-* Bumped version to 1.0.0 to better reflect semver meaning.
-* HISTORY.md -> CHANGELOG.md
-
-
-0.1.16 / 2013-12-01
--------------------
-
-* Maintenance release. Updated dependencies and docs.
-
-
-0.1.15 / 2013-05-13
--------------------
-
-* Fixed #55, @trebor89
-
-
-0.1.14 / 2013-05-12
--------------------
-
-* Fixed #62, @maxtaco
-
-
-0.1.13 / 2013-04-08
--------------------
-
-* Added `.npmignore` to reduce package size
-
-
-0.1.12 / 2013-02-10
--------------------
-
-* Fixed conflictHandler (#46), @hpaulj
-
-
-0.1.11 / 2013-02-07
--------------------
-
-* Multiple bugfixes, @hpaulj
-* Added 70+ tests (ported from python), @hpaulj
-* Added conflictHandler, @applepicke
-* Added fromfilePrefixChar, @hpaulj
-
-
-0.1.10 / 2012-12-30
--------------------
-
-* Added [mutual exclusion](http://docs.python.org/dev/library/argparse.html#mutual-exclusion)
-  support, thanks to @hpaulj
-* Fixed options check for `storeConst` & `appendConst` actions, thanks to @hpaulj
-
-
-0.1.9 / 2012-12-27
-------------------
-
-* Fixed option dest interferens with other options (issue #23), thanks to @hpaulj
-* Fixed default value behavior with `*` positionals, thanks to @hpaulj
-* Improve `getDefault()` behavior, thanks to @hpaulj
-* Imrove negative argument parsing, thanks to @hpaulj
-
-
-0.1.8 / 2012-12-01
-------------------
-
-* Fixed parser parents (issue #19), thanks to @hpaulj
-* Fixed negative argument parse (issue #20), thanks to @hpaulj
-
-
-0.1.7 / 2012-10-14
-------------------
-
-* Fixed 'choices' argument parse (issue #16)
-* Fixed stderr output (issue #15)
-
-
-0.1.6 / 2012-09-09
-------------------
-
-* Fixed check for conflict of options (thanks to @tomxtobin)
-
-
-0.1.5 / 2012-09-03
-------------------
-
-* Fix parser #setDefaults method (thanks to @tomxtobin)
-
-
-0.1.4 / 2012-07-30
-------------------
-
-* Fixed pseudo-argument support (thanks to @CGamesPlay)
-* Fixed addHelp default (should be true), if not set (thanks to @benblank)
-
-
-0.1.3 / 2012-06-27
-------------------
-
-* Fixed formatter api name: Formatter -> HelpFormatter
-
-
-0.1.2 / 2012-05-29
-------------------
-
-* Added basic tests
-* Removed excess whitespace in help
-* Fixed error reporting, when parcer with subcommands
-  called with empty arguments
-
-
-0.1.1 / 2012-05-23
-------------------
-
-* Fixed line wrapping in help formatter
-* Added better error reporting on invalid arguments
-
-
-0.1.0 / 2012-05-16
-------------------
-
-* First release.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/README.md
deleted file mode 100644 (file)
index 72e4261..0000000
+++ /dev/null
@@ -1,243 +0,0 @@
-argparse
-========
-
-[![Build Status](https://secure.travis-ci.org/nodeca/argparse.png?branch=master)](http://travis-ci.org/nodeca/argparse)
-[![NPM version](https://img.shields.io/npm/v/argparse.svg)](https://www.npmjs.org/package/argparse)
-
-CLI arguments parser for node.js. Javascript port of python's
-[argparse](http://docs.python.org/dev/library/argparse.html) module
-(original version 3.2). That's a full port, except some very rare options,
-recorded in issue tracker.
-
-**NB. Difference with original.**
-
-- Method names changed to camelCase. See [generated docs](http://nodeca.github.com/argparse/).
-- Use `defaultValue` instead of `default`.
-
-
-Example
-=======
-
-test.js file:
-
-```javascript
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp:true,
-  description: 'Argparse example'
-});
-parser.addArgument(
-  [ '-f', '--foo' ],
-  {
-    help: 'foo bar'
-  }
-);
-parser.addArgument(
-  [ '-b', '--bar' ],
-  {
-    help: 'bar foo'
-  }
-);
-var args = parser.parseArgs();
-console.dir(args);
-```
-
-Display help:
-
-```
-$ ./test.js -h
-usage: example.js [-h] [-v] [-f FOO] [-b BAR]
-
-Argparse example
-
-Optional arguments:
-  -h, --help         Show this help message and exit.
-  -v, --version      Show program's version number and exit.
-  -f FOO, --foo FOO  foo bar
-  -b BAR, --bar BAR  bar foo
-```
-
-Parse arguments:
-
-```
-$ ./test.js -f=3 --bar=4
-{ foo: '3', bar: '4' }
-```
-
-More [examples](https://github.com/nodeca/argparse/tree/master/examples).
-
-
-ArgumentParser objects
-======================
-
-```
-new ArgumentParser({paramters hash});
-```
-
-Creates a new ArgumentParser object.
-
-**Supported params:**
-
-- ```description``` - Text to display before the argument help.
-- ```epilog``` - Text to display after the argument help.
-- ```addHelp``` - Add a -h/–help option to the parser. (default: true)
-- ```argumentDefault``` - Set the global default value for arguments. (default: null)
-- ```parents``` - A list of ArgumentParser objects whose arguments should also be included.
-- ```prefixChars``` - The set of characters that prefix optional arguments. (default: ‘-‘)
-- ```formatterClass``` - A class for customizing the help output.
-- ```prog``` - The name of the program (default: `path.basename(process.argv[1])`)
-- ```usage``` - The string describing the program usage (default: generated)
-- ```conflictHandler``` - Usually unnecessary, defines strategy for resolving conflicting optionals.
-
-**Not supportied yet**
-
-- ```fromfilePrefixChars``` - The set of characters that prefix files from which additional arguments should be read.
-
-
-Details in [original ArgumentParser guide](http://docs.python.org/dev/library/argparse.html#argumentparser-objects)
-
-
-addArgument() method
-====================
-
-```
-ArgumentParser.addArgument([names or flags], {options})
-```
-
-Defines how a single command-line argument should be parsed.
-
-- ```name or flags``` - Either a name or a list of option strings, e.g. foo or -f, --foo.
-
-Options:
-
-- ```action``` - The basic type of action to be taken when this argument is encountered at the command line.
-- ```nargs```- The number of command-line arguments that should be consumed.
-- ```constant``` - A constant value required by some action and nargs selections.
-- ```defaultValue``` - The value produced if the argument is absent from the command line.
-- ```type``` - The type to which the command-line argument should be converted.
-- ```choices``` - A container of the allowable values for the argument.
-- ```required``` - Whether or not the command-line option may be omitted (optionals only).
-- ```help``` - A brief description of what the argument does.
-- ```metavar``` - A name for the argument in usage messages.
-- ```dest``` - The name of the attribute to be added to the object returned by parseArgs().
-
-Details in [original add_argument guide](http://docs.python.org/dev/library/argparse.html#the-add-argument-method)
-
-
-Action (some details)
-================
-
-ArgumentParser objects associate command-line arguments with actions.
-These actions can do just about anything with the command-line arguments associated
-with them, though most actions simply add an attribute to the object returned by
-parseArgs(). The action keyword argument specifies how the command-line arguments
-should be handled. The supported actions are:
-
-- ```store``` - Just stores the argument’s value. This is the default action.
-- ```storeConst``` - Stores value, specified by the const keyword argument.
-  (Note that the const keyword argument defaults to the rather unhelpful None.)
-  The 'storeConst' action is most commonly used with optional arguments, that
-  specify some sort of flag.
-- ```storeTrue``` and ```storeFalse``` - Stores values True and False
-  respectively. These are special cases of 'storeConst'.
-- ```append``` - Stores a list, and appends each argument value to the list.
-  This is useful to allow an option to be specified multiple times.
-- ```appendConst``` - Stores a list, and appends value, specified by the
-  const keyword argument to the list. (Note, that the const keyword argument defaults
-  is None.) The 'appendConst' action is typically used when multiple arguments need
-  to store constants to the same list.
-- ```count``` - Counts the number of times a keyword argument occurs. For example,
-  used for increasing verbosity levels.
-- ```help``` - Prints a complete help message for all the options in the current
-  parser and then exits. By default a help action is automatically added to the parser.
-  See ArgumentParser for details of how the output is created.
-- ```version``` - Prints version information and exit. Expects a `version=`
-  keyword argument in the addArgument() call.
-
-Details in [original action guide](http://docs.python.org/dev/library/argparse.html#action)
-
-
-Sub-commands
-============
-
-ArgumentParser.addSubparsers()
-
-Many programs split their functionality into a number of sub-commands, for
-example, the svn program can invoke sub-commands like `svn checkout`, `svn update`,
-and `svn commit`. Splitting up functionality this way can be a particularly good
-idea when a program performs several different functions which require different
-kinds of command-line arguments. `ArgumentParser` supports creation of such
-sub-commands with `addSubparsers()` method. The `addSubparsers()` method is
-normally called with no arguments and returns an special action object.
-This object has a single method `addParser()`, which takes a command name and
-any `ArgumentParser` constructor arguments, and returns an `ArgumentParser` object
-that can be modified as usual.
-
-Example:
-
-sub_commands.js
-```javascript
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp:true,
-  description: 'Argparse examples: sub-commands',
-});
-
-var subparsers = parser.addSubparsers({
-  title:'subcommands',
-  dest:"subcommand_name"
-});
-
-var bar = subparsers.addParser('c1', {addHelp:true});
-bar.addArgument(
-  [ '-f', '--foo' ],
-  {
-    action: 'store',
-    help: 'foo3 bar3'
-  }
-);
-var bar = subparsers.addParser(
-  'c2',
-  {aliases:['co'], addHelp:true}
-);
-bar.addArgument(
-  [ '-b', '--bar' ],
-  {
-    action: 'store',
-    type: 'int',
-    help: 'foo3 bar3'
-  }
-);
-
-var args = parser.parseArgs();
-console.dir(args);
-
-```
-
-Details in [original sub-commands guide](http://docs.python.org/dev/library/argparse.html#sub-commands)
-
-
-Contributors
-============
-
-- [Eugene Shkuropat](https://github.com/shkuropat)
-- [Paul Jacobson](https://github.com/hpaulj)
-
-[others](https://github.com/nodeca/argparse/graphs/contributors)
-
-License
-=======
-
-Copyright (c) 2012 [Vitaly Puzrin](https://github.com/puzrin).
-Released under the MIT license. See
-[LICENSE](https://github.com/nodeca/argparse/blob/master/LICENSE) for details.
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/arguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/arguments.js
deleted file mode 100755 (executable)
index 5b090fa..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: arguments'
-});
-parser.addArgument(
-  [ '-f', '--foo' ],
-  {
-    help: 'foo bar'
-  }
-);
-parser.addArgument(
-  [ '-b', '--bar' ],
-  {
-    help: 'bar foo'
-  }
-);
-
-
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs('-f 1 -b2'.split(' '));
-console.dir(args);
-console.log('-----------');
-args = parser.parseArgs('-f=3 --bar=4'.split(' '));
-console.dir(args);
-console.log('-----------');
-args = parser.parseArgs('--foo 5 --bar 6'.split(' '));
-console.dir(args);
-console.log('-----------');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/choice.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/choice.js
deleted file mode 100755 (executable)
index 2616fa4..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: choice'
-});
-
-parser.addArgument(['foo'], {choices: 'abc'});
-
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs(['c']);
-console.dir(args);
-console.log('-----------');
-parser.parseArgs(['X']);
-console.dir(args);
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/constants.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/constants.js
deleted file mode 100755 (executable)
index 172a4f3..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: constant'
-});
-
-parser.addArgument(
-  [ '-a'],
-  {
-    action: 'storeConst',
-    dest:   'answer',
-    help:   'store constant',
-    constant: 42
-  }
-);
-parser.addArgument(
-  [ '--str' ],
-  {
-    action: 'appendConst',
-    dest:   'types',
-    help:   'append constant "str" to types',
-    constant: 'str'
-  }
-);
-parser.addArgument(
-  [ '--int' ],
-  {
-    action: 'appendConst',
-    dest:   'types',
-    help:   'append constant "int" to types',
-    constant: 'int'
-  }
-);
-
-parser.addArgument(
-  [ '--true' ],
-  {
-    action: 'storeTrue',
-    help: 'store true constant'
-  }
-);
-parser.addArgument(
-  [ '--false' ],
-  {
-    action: 'storeFalse',
-    help: 'store false constant'
-  }
-);
-
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs('-a --str --int --true'.split(' '));
-console.dir(args);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/help.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/help.js
deleted file mode 100755 (executable)
index 7eb9555..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: help',
-  epilog: 'help epilog',
-  prog: 'help_example_prog',
-  usage: 'Usage %(prog)s <agrs>'
-});
-parser.printHelp();
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/nargs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/nargs.js
deleted file mode 100755 (executable)
index 74f376b..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: nargs'
-});
-parser.addArgument(
-  [ '-f', '--foo' ],
-  {
-    help: 'foo bar',
-    nargs: 1
-  }
-);
-parser.addArgument(
-  [ '-b', '--bar' ],
-  {
-    help: 'bar foo',
-    nargs: '*'
-  }
-);
-
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs('--foo a --bar c d'.split(' '));
-console.dir(args);
-console.log('-----------');
-args = parser.parseArgs('--bar b c f --foo a'.split(' '));
-console.dir(args);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/parents.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/parents.js
deleted file mode 100755 (executable)
index dfe8968..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-
-var args;
-var parent_parser = new ArgumentParser({ addHelp: false });
-// note addHelp:false to prevent duplication of the -h option
-parent_parser.addArgument(
-  ['--parent'],
-  { type: 'int', description: 'parent' }
-);
-
-var foo_parser = new ArgumentParser({
-  parents: [ parent_parser ],
-  description: 'child1'
-});
-foo_parser.addArgument(['foo']);
-args = foo_parser.parseArgs(['--parent', '2', 'XXX']);
-console.log(args);
-
-var bar_parser = new ArgumentParser({
-  parents: [ parent_parser ],
-  description: 'child2'
-});
-bar_parser.addArgument(['--bar']);
-args = bar_parser.parseArgs(['--bar', 'YYY']);
-console.log(args);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/prefix_chars.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/prefix_chars.js
deleted file mode 100755 (executable)
index 430d5e1..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: prefix_chars',
-  prefixChars: '-+'
-});
-parser.addArgument(['+f', '++foo']);
-parser.addArgument(['++bar'], {action: 'storeTrue'});
-
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs(['+f', '1']);
-console.dir(args);
-args = parser.parseArgs(['++bar']);
-console.dir(args);
-args = parser.parseArgs(['++foo', '2', '++bar']);
-console.dir(args);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sub_commands.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sub_commands.js
deleted file mode 100755 (executable)
index df9c494..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/usr/bin/env node
-'use strict';
-
-var ArgumentParser = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({
-  version: '0.0.1',
-  addHelp: true,
-  description: 'Argparse examples: sub-commands'
-});
-
-var subparsers = parser.addSubparsers({
-  title: 'subcommands',
-  dest: "subcommand_name"
-});
-
-var bar = subparsers.addParser('c1', {addHelp: true, help: 'c1 help'});
-bar.addArgument(
-  [ '-f', '--foo' ],
-  {
-    action: 'store',
-    help: 'foo3 bar3'
-  }
-);
-var bar = subparsers.addParser(
-  'c2',
-  {aliases: ['co'], addHelp: true, help: 'c2 help'}
-);
-bar.addArgument(
-  [ '-b', '--bar' ],
-  {
-    action: 'store',
-    type: 'int',
-    help: 'foo3 bar3'
-  }
-);
-parser.printHelp();
-console.log('-----------');
-
-var args;
-args = parser.parseArgs('c1 -f 2'.split(' '));
-console.dir(args);
-console.log('-----------');
-args = parser.parseArgs('c2 -b 1'.split(' '));
-console.dir(args);
-console.log('-----------');
-args = parser.parseArgs('co -b 1'.split(' '));
-console.dir(args);
-console.log('-----------');
-parser.parseArgs(['c1', '-h']);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/sum.js
deleted file mode 100755 (executable)
index 4532800..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/env node
-
-'use strict';
-
-
-var ArgumentParser  = require('../lib/argparse').ArgumentParser;
-var parser = new ArgumentParser({ description: 'Process some integers.' });
-
-
-function sum(arr) {
-  return arr.reduce(function (a, b) {
-    return a + b;
-  }, 0);
-}
-function max(arr) {
-  return Math.max.apply(Math, arr);
-}
-
-
-parser.addArgument(['integers'], {
-  metavar:      'N',
-  type:         'int',
-  nargs:        '+',
-  help:         'an integer for the accumulator'
-});
-parser.addArgument(['--sum'], {
-  dest:         'accumulate',
-  action:       'storeConst',
-  constant:     sum,
-  defaultValue: max,
-  help:         'sum the integers (default: find the max)'
-});
-
-var args = parser.parseArgs('--sum 1 2 -1'.split(' '));
-console.log(args.accumulate(args.integers));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/testformatters.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/examples/testformatters.js
deleted file mode 100644 (file)
index 1c03cdc..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-'use strict';
-
-var a, group, parser, helptext;
-
-var assert = require('assert');
-
-
-var print = function () {
-    return console.log.apply(console, arguments);
-  };
-// print = function () {};
-
-var argparse = require('argparse');
-
-print("TEST argparse.ArgumentDefaultsHelpFormatter");
-
-parser = new argparse.ArgumentParser({
-  debug: true,
-  formatterClass: argparse.ArgumentDefaultsHelpFormatter,
-  description: 'description'
-});
-
-parser.addArgument(['--foo'], {
-  help: 'foo help - oh and by the way, %(defaultValue)s'
-});
-
-parser.addArgument(['--bar'], {
-  action: 'storeTrue',
-  help: 'bar help'
-});
-
-parser.addArgument(['spam'], {
-  help: 'spam help'
-});
-
-parser.addArgument(['badger'], {
-  nargs: '?',
-  defaultValue: 'wooden',
-  help: 'badger help'
-});
-
-group = parser.addArgumentGroup({
-  title: 'title',
-  description: 'group description'
-});
-
-group.addArgument(['--baz'], {
-  type: 'int',
-  defaultValue: 42,
-  help: 'baz help'
-});
-
-helptext = parser.formatHelp();
-print(helptext);
-// test selected clips
-assert(helptext.match(/badger help \(default: wooden\)/));
-assert(helptext.match(/foo help - oh and by the way, null/));
-assert(helptext.match(/bar help \(default: false\)/));
-assert(helptext.match(/title:\n {2}group description/)); // test indent
-assert(helptext.match(/baz help \(default: 42\)/im));
-
-/*
-usage: PROG [-h] [--foo FOO] [--bar] [--baz BAZ] spam [badger]
-
-description
-
-positional arguments:
-  spam        spam help
-  badger      badger help (default: wooden)
-
-optional arguments:
-  -h, --help  show this help message and exit
-  --foo FOO   foo help - oh and by the way, null
-  --bar       bar help (default: false)
-
-title:
-  group description
-
-  --baz BAZ   baz help (default: 42)
-*/
-
-print("TEST argparse.RawDescriptionHelpFormatter");
-
-parser = new argparse.ArgumentParser({
-  debug: true,
-  prog: 'PROG',
-  formatterClass: argparse.RawDescriptionHelpFormatter,
-  description: 'Keep the formatting\n' +
-               '    exactly as it is written\n' +
-               '\n' +
-               'here\n'
-});
-
-a = parser.addArgument(['--foo'], {
-  help: '  foo help should not\n' +
-        '    retain this odd formatting'
-});
-
-parser.addArgument(['spam'], {
-  'help': 'spam help'
-});
-
-group = parser.addArgumentGroup({
-  title: 'title',
-  description: '    This text\n' +
-               '  should be indented\n' +
-               '    exactly like it is here\n'
-});
-
-group.addArgument(['--bar'], {
-  help: 'bar help'
-});
-
-helptext = parser.formatHelp();
-print(helptext);
-// test selected clips
-assert(helptext.match(parser.description));
-assert.equal(helptext.match(a.help), null);
-assert(helptext.match(/foo help should not retain this odd formatting/));
-
-/*
-class TestHelpRawDescription(HelpTestCase):
-    """Test the RawTextHelpFormatter"""
-....
-
-usage: PROG [-h] [--foo FOO] [--bar BAR] spam
-
-Keep the formatting
-    exactly as it is written
-
-here
-
-positional arguments:
-  spam        spam help
-
-optional arguments:
-  -h, --help  show this help message and exit
-  --foo FOO   foo help should not retain this odd formatting
-
-title:
-      This text
-    should be indented
-      exactly like it is here
-
-  --bar BAR   bar help
-*/
-
-
-print("TEST argparse.RawTextHelpFormatter");
-
-parser = new argparse.ArgumentParser({
-  debug: true,
-  prog: 'PROG',
-  formatterClass: argparse.RawTextHelpFormatter,
-  description: 'Keep the formatting\n' +
-               '    exactly as it is written\n' +
-               '\n' +
-               'here\n'
-});
-
-parser.addArgument(['--baz'], {
-  help: '    baz help should also\n' +
-        'appear as given here'
-});
-
-a = parser.addArgument(['--foo'], {
-  help: '  foo help should also\n' +
-        'appear as given here'
-});
-
-parser.addArgument(['spam'], {
-  'help': 'spam help'
-});
-
-group = parser.addArgumentGroup({
-  title: 'title',
-  description: '    This text\n' +
-               '  should be indented\n' +
-               '    exactly like it is here\n'
-});
-
-group.addArgument(['--bar'], {
-  help: 'bar help'
-});
-
-helptext = parser.formatHelp();
-print(helptext);
-// test selected clips
-assert(helptext.match(parser.description));
-assert(helptext.match(/( {14})appear as given here/gm));
-
-/*
-class TestHelpRawText(HelpTestCase):
-    """Test the RawTextHelpFormatter"""
-
-usage: PROG [-h] [--foo FOO] [--bar BAR] spam
-
-Keep the formatting
-    exactly as it is written
-
-here
-
-positional arguments:
-  spam        spam help
-
-optional arguments:
-  -h, --help  show this help message and exit
-  --foo FOO       foo help should also
-              appear as given here
-
-title:
-      This text
-    should be indented
-      exactly like it is here
-
-  --bar BAR   bar help
-*/
-
-
-print("TEST metavar as a tuple");
-
-parser = new argparse.ArgumentParser({
-  prog: 'PROG'
-});
-
-parser.addArgument(['-w'], {
-  help: 'w',
-  nargs: '+',
-  metavar: ['W1', 'W2']
-});
-
-parser.addArgument(['-x'], {
-  help: 'x',
-  nargs: '*',
-  metavar: ['X1', 'X2']
-});
-
-parser.addArgument(['-y'], {
-  help: 'y',
-  nargs: 3,
-  metavar: ['Y1', 'Y2', 'Y3']
-});
-
-parser.addArgument(['-z'], {
-  help: 'z',
-  nargs: '?',
-  metavar: ['Z1']
-});
-
-helptext = parser.formatHelp();
-print(helptext);
-var ustring = 'PROG [-h] [-w W1 [W2 ...]] [-x [X1 [X2 ...]]] [-y Y1 Y2 Y3] [-z [Z1]]';
-ustring = ustring.replace(/\[/g, '\\[').replace(/\]/g, '\\]');
-// print(ustring)
-assert(helptext.match(new RegExp(ustring)));
-
-/*
-class TestHelpTupleMetavar(HelpTestCase):
-    """Test specifying metavar as a tuple"""
-
-usage: PROG [-h] [-w W1 [W2 ...]] [-x [X1 [X2 ...]]] [-y Y1 Y2 Y3] [-z [Z1]]
-
-optional arguments:
-  -h, --help        show this help message and exit
-  -w W1 [W2 ...]    w
-  -x [X1 [X2 ...]]  x
-  -y Y1 Y2 Y3       y
-  -z [Z1]           z
-*/
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/index.js
deleted file mode 100644 (file)
index 3b6eea0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./lib/argparse');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action.js
deleted file mode 100644 (file)
index 6f7e9a5..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-/**
- * class Action
- *
- * Base class for all actions
- * Do not call in your code, use this class only for inherits your own action
- *
- * Information about how to convert command line strings to Javascript objects.
- * Action objects are used by an ArgumentParser to represent the information
- * needed to parse a single argument from one or more strings from the command
- * line. The keyword arguments to the Action constructor are also all attributes
- * of Action instances.
- *
- * #####Alowed keywords:
- *
- * - `store`
- * - `storeConstant`
- * - `storeTrue`
- * - `storeFalse`
- * - `append`
- * - `appendConstant`
- * - `count`
- * - `help`
- * - `version`
- *
- * Information about action options see [[Action.new]]
- *
- * See also [original guide](http://docs.python.org/dev/library/argparse.html#action)
- *
- **/
-
-'use strict';
-
-
-// Constants
-var $$ = require('./const');
-
-
-/**
- * new Action(options)
- *
- * Base class for all actions. Used only for inherits
- *
- *
- * ##### Options:
- *
- * - `optionStrings`  A list of command-line option strings for the action.
- * - `dest`  Attribute to hold the created object(s)
- * - `nargs`  The number of command-line arguments that should be consumed.
- * By default, one argument will be consumed and a single value will be
- * produced.
- * - `constant`  Default value for an action with no value.
- * - `defaultValue`  The value to be produced if the option is not specified.
- * - `type`  Cast to 'string'|'int'|'float'|'complex'|function (string). If
- * None, 'string'.
- * - `choices`  The choices available.
- * - `required`  True if the action must always be specified at the command
- * line.
- * - `help`  The help describing the argument.
- * - `metavar`  The name to be used for the option's argument with the help
- * string. If None, the 'dest' value will be used as the name.
- *
- * ##### nargs supported values:
- *
- * - `N` (an integer) consumes N arguments (and produces a list)
- * - `?`  consumes zero or one arguments
- * - `*` consumes zero or more arguments (and produces a list)
- * - `+` consumes one or more arguments (and produces a list)
- *
- * Note: that the difference between the default and nargs=1 is that with the
- * default, a single value will be produced, while with nargs=1, a list
- * containing a single value will be produced.
- **/
-var Action = module.exports = function Action(options) {
-  options = options || {};
-  this.optionStrings = options.optionStrings || [];
-  this.dest = options.dest;
-  this.nargs = options.nargs !== undefined ? options.nargs : null;
-  this.constant = options.constant !== undefined ? options.constant : null;
-  this.defaultValue = options.defaultValue;
-  this.type = options.type !== undefined ? options.type : null;
-  this.choices = options.choices !== undefined ? options.choices : null;
-  this.required = options.required !== undefined ? options.required: false;
-  this.help = options.help !== undefined ? options.help : null;
-  this.metavar = options.metavar !== undefined ? options.metavar : null;
-
-  if (!(this.optionStrings instanceof Array)) {
-    throw new Error('optionStrings should be an array');
-  }
-  if (this.required !== undefined && typeof(this.required) !== 'boolean') {
-    throw new Error('required should be a boolean');
-  }
-};
-
-/**
- * Action#getName -> String
- *
- * Tells action name
- **/
-Action.prototype.getName = function () {
-  if (this.optionStrings.length > 0) {
-    return this.optionStrings.join('/');
-  } else if (this.metavar !== null && this.metavar !== $$.SUPPRESS) {
-    return this.metavar;
-  } else if (this.dest !== undefined && this.dest !== $$.SUPPRESS) {
-    return this.dest;
-  }
-  return null;
-};
-
-/**
- * Action#isOptional -> Boolean
- *
- * Return true if optional
- **/
-Action.prototype.isOptional = function () {
-  return !this.isPositional();
-};
-
-/**
- * Action#isPositional -> Boolean
- *
- * Return true if positional
- **/
-Action.prototype.isPositional = function () {
-  return (this.optionStrings.length === 0);
-};
-
-/**
- * Action#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Should be implemented in inherited classes
- *
- * ##### Example
- *
- *      ActionCount.prototype.call = function (parser, namespace, values, optionString) {
- *        namespace.set(this.dest, (namespace[this.dest] || 0) + 1);
- *      };
- *
- **/
-Action.prototype.call = function () {
-  throw new Error('.call() not defined');// Not Implemented error
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append.js
deleted file mode 100644 (file)
index 48c6dbe..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*:nodoc:*
- * class ActionAppend
- *
- * This action stores a list, and appends each argument value to the list.
- * This is useful to allow an option to be specified multiple times.
- * This class inherided from [[Action]]
- *
- **/
-
-'use strict';
-
-var util = require('util');
-
-var Action = require('../action');
-
-// Constants
-var $$ = require('../const');
-
-/*:nodoc:*
- * new ActionAppend(options)
- * - options (object): options hash see [[Action.new]]
- *
- * Note: options.nargs should be optional for constants
- * and more then zero for other
- **/
-var ActionAppend = module.exports = function ActionAppend(options) {
-  options = options || {};
-  if (this.nargs <= 0) {
-    throw new Error('nargs for append actions must be > 0; if arg ' +
-        'strings are not supplying the value to append, ' +
-        'the append const action may be more appropriate');
-  }
-  if (!!this.constant && this.nargs !== $$.OPTIONAL) {
-    throw new Error('nargs must be OPTIONAL to supply const');
-  }
-  Action.call(this, options);
-};
-util.inherits(ActionAppend, Action);
-
-/*:nodoc:*
- * ActionAppend#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Save result in namespace object
- **/
-ActionAppend.prototype.call = function (parser, namespace, values) {
-  var items = [].concat(namespace[this.dest] || []); // or _.clone
-  items.push(values);
-  namespace.set(this.dest, items);
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/append/constant.js
deleted file mode 100644 (file)
index 90747ab..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*:nodoc:*
- * class ActionAppendConstant
- *
- * This stores a list, and appends the value specified by
- * the const keyword argument to the list.
- * (Note that the const keyword argument defaults to null.)
- * The 'appendConst' action is typically useful when multiple
- * arguments need to store constants to the same list.
- *
- * This class inherited from [[Action]]
- **/
-
-'use strict';
-
-var util = require('util');
-
-var Action = require('../../action');
-
-/*:nodoc:*
- * new ActionAppendConstant(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionAppendConstant = module.exports = function ActionAppendConstant(options) {
-  options = options || {};
-  options.nargs = 0;
-  if (options.constant === undefined) {
-    throw new Error('constant option is required for appendAction');
-  }
-  Action.call(this, options);
-};
-util.inherits(ActionAppendConstant, Action);
-
-/*:nodoc:*
- * ActionAppendConstant#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Save result in namespace object
- **/
-ActionAppendConstant.prototype.call = function (parser, namespace) {
-  var items = [].concat(namespace[this.dest] || []);
-  items.push(this.constant);
-  namespace.set(this.dest, items);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/help.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/help.js
deleted file mode 100644 (file)
index 7f7b4e2..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*:nodoc:*
- * class ActionHelp
- *
- * Support action for printing help
- * This class inherided from [[Action]]
- **/
-'use strict';
-
-var util = require('util');
-
-var Action = require('../action');
-
-// Constants
-var $$  = require('../const');
-
-/*:nodoc:*
- * new ActionHelp(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionHelp = module.exports = function ActionHelp(options) {
-  options = options || {};
-  if (options.defaultValue !== null) {
-    options.defaultValue = options.defaultValue;
-  }
-  else {
-    options.defaultValue = $$.SUPPRESS;
-  }
-  options.dest = (options.dest !== null ? options.dest: $$.SUPPRESS);
-  options.nargs = 0;
-  Action.call(this, options);
-
-};
-util.inherits(ActionHelp, Action);
-
-/*:nodoc:*
- * ActionHelp#call(parser, namespace, values, optionString)
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Print help and exit
- **/
-ActionHelp.prototype.call = function (parser) {
-  parser.printHelp();
-  parser.exit();
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store.js
deleted file mode 100644 (file)
index 8ebc974..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*:nodoc:*
- * class ActionStore
- *
- * This action just stores the argument’s value. This is the default action.
- *
- * This class inherited from [[Action]]
- *
- **/
-'use strict';
-
-var util = require('util');
-
-var Action = require('../action');
-
-// Constants
-var $$ = require('../const');
-
-
-/*:nodoc:*
- * new ActionStore(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionStore = module.exports = function ActionStore(options) {
-  options = options || {};
-  if (this.nargs <= 0) {
-    throw new Error('nargs for store actions must be > 0; if you ' +
-        'have nothing to store, actions such as store ' +
-        'true or store const may be more appropriate');
-
-  }
-  if (this.constant !== undefined && this.nargs !== $$.OPTIONAL) {
-    throw new Error('nargs must be OPTIONAL to supply const');
-  }
-  Action.call(this, options);
-};
-util.inherits(ActionStore, Action);
-
-/*:nodoc:*
- * ActionStore#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Save result in namespace object
- **/
-ActionStore.prototype.call = function (parser, namespace, values) {
-  namespace.set(this.dest, values);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/constant.js
deleted file mode 100644 (file)
index 8410fcf..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*:nodoc:*
- * class ActionStoreConstant
- *
- * This action stores the value specified by the const keyword argument.
- * (Note that the const keyword argument defaults to the rather unhelpful null.)
- * The 'store_const' action is most commonly used with optional
- * arguments that specify some sort of flag.
- *
- * This class inherited from [[Action]]
- **/
-'use strict';
-
-var util = require('util');
-
-var Action = require('../../action');
-
-/*:nodoc:*
- * new ActionStoreConstant(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionStoreConstant = module.exports = function ActionStoreConstant(options) {
-  options = options || {};
-  options.nargs = 0;
-  if (options.constant === undefined) {
-    throw new Error('constant option is required for storeAction');
-  }
-  Action.call(this, options);
-};
-util.inherits(ActionStoreConstant, Action);
-
-/*:nodoc:*
- * ActionStoreConstant#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Save result in namespace object
- **/
-ActionStoreConstant.prototype.call = function (parser, namespace) {
-  namespace.set(this.dest, this.constant);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/false.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/false.js
deleted file mode 100644 (file)
index 66417bf..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/*:nodoc:*
- * class ActionStoreFalse
- *
- * This action store the values False respectively.
- * This is special cases of 'storeConst'
- *
- * This class inherited from [[Action]]
- **/
-
-'use strict';
-
-var util = require('util');
-
-var ActionStoreConstant = require('./constant');
-
-/*:nodoc:*
- * new ActionStoreFalse(options)
- * - options (object): hash of options see [[Action.new]]
- *
- **/
-var ActionStoreFalse = module.exports = function ActionStoreFalse(options) {
-  options = options || {};
-  options.constant = false;
-  options.defaultValue = options.defaultValue !== null ? options.defaultValue: true;
-  ActionStoreConstant.call(this, options);
-};
-util.inherits(ActionStoreFalse, ActionStoreConstant);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/true.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/store/true.js
deleted file mode 100644 (file)
index 43ec708..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/*:nodoc:*
- * class ActionStoreTrue
- *
- * This action store the values True respectively.
- * This isspecial cases of 'storeConst'
- *
- * This class inherited from [[Action]]
- **/
-'use strict';
-
-var util = require('util');
-
-var ActionStoreConstant = require('./constant');
-
-/*:nodoc:*
- * new ActionStoreTrue(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionStoreTrue = module.exports = function ActionStoreTrue(options) {
-  options = options || {};
-  options.constant = true;
-  options.defaultValue = options.defaultValue !== null ? options.defaultValue: false;
-  ActionStoreConstant.call(this, options);
-};
-util.inherits(ActionStoreTrue, ActionStoreConstant);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/subparsers.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/subparsers.js
deleted file mode 100644 (file)
index 257714d..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/** internal
- * class ActionSubparsers
- *
- * Support the creation of such sub-commands with the addSubparsers()
- *
- * This class inherited from [[Action]]
- **/
-'use strict';
-
-var util    = require('util');
-var format  = require('util').format;
-var _       = require('lodash');
-
-
-var Action = require('../action');
-
-// Constants
-var $$ = require('../const');
-
-// Errors
-var argumentErrorHelper = require('../argument/error');
-
-
-/*:nodoc:*
- * new ChoicesPseudoAction(name, help)
- *
- * Create pseudo action for correct help text
- *
- **/
-var ChoicesPseudoAction = function (name, help) {
-  var options = {
-    optionStrings: [],
-    dest: name,
-    help: help
-  };
-
-  Action.call(this, options);
-};
-util.inherits(ChoicesPseudoAction, Action);
-
-/**
- * new ActionSubparsers(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionSubparsers = module.exports = function ActionSubparsers(options) {
-  options = options || {};
-  options.dest = options.dest || $$.SUPPRESS;
-  options.nargs = $$.PARSER;
-
-  this.debug = (options.debug === true);
-
-  this._progPrefix = options.prog;
-  this._parserClass = options.parserClass;
-  this._nameParserMap = {};
-  this._choicesActions = [];
-
-  options.choices = this._nameParserMap;
-  Action.call(this, options);
-};
-util.inherits(ActionSubparsers, Action);
-
-/*:nodoc:*
- * ActionSubparsers#addParser(name, options) -> ArgumentParser
- * - name (string): sub-command name
- * - options (object): see [[ArgumentParser.new]]
- *
- *  Note:
- *  addParser supports an additional aliases option,
- *  which allows multiple strings to refer to the same subparser.
- *  This example, like svn, aliases co as a shorthand for checkout
- *
- **/
-ActionSubparsers.prototype.addParser = function (name, options) {
-  var parser;
-
-  var self = this;
-
-  options = options || {};
-
-  options.debug = (this.debug === true);
-
-  // set program from the existing prefix
-  if (!options.prog) {
-    options.prog = this._progPrefix + ' ' + name;
-  }
-
-  var aliases = options.aliases || [];
-
-  // create a pseudo-action to hold the choice help
-  if (!!options.help || _.isString(options.help)) {
-    var help = options.help;
-    delete options.help;
-
-    var choiceAction = new ChoicesPseudoAction(name, help);
-    this._choicesActions.push(choiceAction);
-  }
-
-  // create the parser and add it to the map
-  parser = new this._parserClass(options);
-  this._nameParserMap[name] = parser;
-
-  // make parser available under aliases also
-  aliases.forEach(function (alias) {
-    self._nameParserMap[alias] = parser;
-  });
-
-  return parser;
-};
-
-ActionSubparsers.prototype._getSubactions = function () {
-  return this._choicesActions;
-};
-
-/*:nodoc:*
- * ActionSubparsers#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Call the action. Parse input aguments
- **/
-ActionSubparsers.prototype.call = function (parser, namespace, values) {
-  var parserName = values[0];
-  var argStrings = values.slice(1);
-
-  // set the parser name if requested
-  if (this.dest !== $$.SUPPRESS) {
-    namespace[this.dest] = parserName;
-  }
-
-  // select the parser
-  if (!!this._nameParserMap[parserName]) {
-    parser = this._nameParserMap[parserName];
-  } else {
-    throw argumentErrorHelper(format(
-      'Unknown parser "%s" (choices: [%s]).',
-        parserName,
-        _.keys(this._nameParserMap).join(', ')
-    ));
-  }
-
-  // parse all the remaining options into the namespace
-  parser.parseArgs(argStrings, namespace);
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/version.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action/version.js
deleted file mode 100644 (file)
index a17877c..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*:nodoc:*
- * class ActionVersion
- *
- * Support action for printing program version
- * This class inherited from [[Action]]
- **/
-'use strict';
-
-var util = require('util');
-
-var Action = require('../action');
-
-//
-// Constants
-//
-var $$ = require('../const');
-
-/*:nodoc:*
- * new ActionVersion(options)
- * - options (object): options hash see [[Action.new]]
- *
- **/
-var ActionVersion = module.exports = function ActionVersion(options) {
-  options = options || {};
-  options.defaultValue = (!!options.defaultValue ? options.defaultValue: $$.SUPPRESS);
-  options.dest = (options.dest || $$.SUPPRESS);
-  options.nargs = 0;
-  this.version = options.version;
-  Action.call(this, options);
-};
-util.inherits(ActionVersion, Action);
-
-/*:nodoc:*
- * ActionVersion#call(parser, namespace, values, optionString) -> Void
- * - parser (ArgumentParser): current parser
- * - namespace (Namespace): namespace for output data
- * - values (Array): parsed values
- * - optionString (Array): input option string(not parsed)
- *
- * Print version and exit
- **/
-ActionVersion.prototype.call = function (parser) {
-  var version = this.version || parser.version;
-  var formatter = parser._getFormatter();
-  formatter.addText(version);
-  parser.exit(0, formatter.formatHelp());
-};
-
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action_container.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/action_container.js
deleted file mode 100644 (file)
index 043ead4..0000000
+++ /dev/null
@@ -1,479 +0,0 @@
-/** internal
- * class ActionContainer
- *
- * Action container. Parent for [[ArgumentParser]] and [[ArgumentGroup]]
- **/
-
-'use strict';
-
-var format = require('util').format;
-var _      = require('lodash');
-
-// Constants
-var $$ = require('./const');
-
-//Actions
-var ActionHelp = require('./action/help');
-var ActionAppend = require('./action/append');
-var ActionAppendConstant = require('./action/append/constant');
-var ActionCount = require('./action/count');
-var ActionStore = require('./action/store');
-var ActionStoreConstant = require('./action/store/constant');
-var ActionStoreTrue = require('./action/store/true');
-var ActionStoreFalse = require('./action/store/false');
-var ActionVersion = require('./action/version');
-var ActionSubparsers = require('./action/subparsers');
-
-// Errors
-var argumentErrorHelper = require('./argument/error');
-
-
-
-/**
- * new ActionContainer(options)
- *
- * Action container. Parent for [[ArgumentParser]] and [[ArgumentGroup]]
- *
- * ##### Options:
- *
- * - `description` -- A description of what the program does
- * - `prefixChars`  -- Characters that prefix optional arguments
- * - `argumentDefault`  -- The default value for all arguments
- * - `conflictHandler` -- The conflict handler to use for duplicate arguments
- **/
-var ActionContainer = module.exports = function ActionContainer(options) {
-  options = options || {};
-
-  this.description = options.description;
-  this.argumentDefault = options.argumentDefault;
-  this.prefixChars = options.prefixChars || '';
-  this.conflictHandler = options.conflictHandler;
-
-  // set up registries
-  this._registries = {};
-
-  // register actions
-  this.register('action', null, ActionStore);
-  this.register('action', 'store', ActionStore);
-  this.register('action', 'storeConst', ActionStoreConstant);
-  this.register('action', 'storeTrue', ActionStoreTrue);
-  this.register('action', 'storeFalse', ActionStoreFalse);
-  this.register('action', 'append', ActionAppend);
-  this.register('action', 'appendConst', ActionAppendConstant);
-  this.register('action', 'count', ActionCount);
-  this.register('action', 'help', ActionHelp);
-  this.register('action', 'version', ActionVersion);
-  this.register('action', 'parsers', ActionSubparsers);
-
-  // raise an exception if the conflict handler is invalid
-  this._getHandler();
-
-  // action storage
-  this._actions = [];
-  this._optionStringActions = {};
-
-  // groups
-  this._actionGroups = [];
-  this._mutuallyExclusiveGroups = [];
-
-  // defaults storage
-  this._defaults = {};
-
-  // determines whether an "option" looks like a negative number
-  // -1, -1.5 -5e+4
-  this._regexpNegativeNumber = new RegExp('^[-]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?$');
-
-  // whether or not there are any optionals that look like negative
-  // numbers -- uses a list so it can be shared and edited
-  this._hasNegativeNumberOptionals = [];
-};
-
-// Groups must be required, then ActionContainer already defined
-var ArgumentGroup = require('./argument/group');
-var MutuallyExclusiveGroup = require('./argument/exclusive');
-
-//
-// Registration methods
-//
-
-/**
- * ActionContainer#register(registryName, value, object) -> Void
- * - registryName (String) : object type action|type
- * - value (string) : keyword
- * - object (Object|Function) : handler
- *
- *  Register handlers
- **/
-ActionContainer.prototype.register = function (registryName, value, object) {
-  this._registries[registryName] = this._registries[registryName] || {};
-  this._registries[registryName][value] = object;
-};
-
-ActionContainer.prototype._registryGet = function (registryName, value, defaultValue) {
-  if (3 > arguments.length) {
-    defaultValue = null;
-  }
-  return this._registries[registryName][value] || defaultValue;
-};
-
-//
-// Namespace default accessor methods
-//
-
-/**
- * ActionContainer#setDefaults(options) -> Void
- * - options (object):hash of options see [[Action.new]]
- *
- * Set defaults
- **/
-ActionContainer.prototype.setDefaults = function (options) {
-  options = options || {};
-  for (var property in options) {
-    this._defaults[property] = options[property];
-  }
-
-  // if these defaults match any existing arguments, replace the previous
-  // default on the object with the new one
-  this._actions.forEach(function (action) {
-    if (action.dest in options) {
-      action.defaultValue = options[action.dest];
-    }
-  });
-};
-
-/**
- * ActionContainer#getDefault(dest) -> Mixed
- * - dest (string): action destination
- *
- * Return action default value
- **/
-ActionContainer.prototype.getDefault = function (dest) {
-  var result = (_.has(this._defaults, dest)) ? this._defaults[dest] : null;
-
-  this._actions.forEach(function (action) {
-    if (action.dest === dest && _.has(action, 'defaultValue')) {
-      result = action.defaultValue;
-    }
-  });
-
-  return result;
-};
-//
-// Adding argument actions
-//
-
-/**
- * ActionContainer#addArgument(args, options) -> Object
- * - args (Array): array of argument keys
- * - options (Object): action objects see [[Action.new]]
- *
- * #### Examples
- * - addArgument([-f, --foo], {action:'store', defaultValue=1, ...})
- * - addArgument(['bar'], action: 'store', nargs:1, ...})
- **/
-ActionContainer.prototype.addArgument = function (args, options) {
-  args = args;
-  options = options || {};
-
-  if (!_.isArray(args)) {
-    throw new TypeError('addArgument first argument should be an array');
-  }
-  if (!_.isObject(options) || _.isArray(options)) {
-    throw new TypeError('addArgument second argument should be a hash');
-  }
-
-  // if no positional args are supplied or only one is supplied and
-  // it doesn't look like an option string, parse a positional argument
-  if (!args || args.length === 1 && this.prefixChars.indexOf(args[0][0]) < 0) {
-    if (args && !!options.dest) {
-      throw new Error('dest supplied twice for positional argument');
-    }
-    options = this._getPositional(args, options);
-
-    // otherwise, we're adding an optional argument
-  } else {
-    options = this._getOptional(args, options);
-  }
-
-  // if no default was supplied, use the parser-level default
-  if (_.isUndefined(options.defaultValue)) {
-    var dest = options.dest;
-    if (_.has(this._defaults, dest)) {
-      options.defaultValue = this._defaults[dest];
-    } else if (!_.isUndefined(this.argumentDefault)) {
-      options.defaultValue = this.argumentDefault;
-    }
-  }
-
-  // create the action object, and add it to the parser
-  var ActionClass = this._popActionClass(options);
-  if (! _.isFunction(ActionClass)) {
-    throw new Error(format('Unknown action "%s".', ActionClass));
-  }
-  var action = new ActionClass(options);
-
-  // throw an error if the action type is not callable
-  var typeFunction = this._registryGet('type', action.type, action.type);
-  if (!_.isFunction(typeFunction)) {
-    throw new Error(format('"%s" is not callable', typeFunction));
-  }
-
-  return this._addAction(action);
-};
-
-/**
- * ActionContainer#addArgumentGroup(options) -> ArgumentGroup
- * - options (Object): hash of options see [[ArgumentGroup.new]]
- *
- * Create new arguments groups
- **/
-ActionContainer.prototype.addArgumentGroup = function (options) {
-  var group = new ArgumentGroup(this, options);
-  this._actionGroups.push(group);
-  return group;
-};
-
-/**
- * ActionContainer#addMutuallyExclusiveGroup(options) -> ArgumentGroup
- * - options (Object): {required: false}
- *
- * Create new mutual exclusive groups
- **/
-ActionContainer.prototype.addMutuallyExclusiveGroup = function (options) {
-  var group = new MutuallyExclusiveGroup(this, options);
-  this._mutuallyExclusiveGroups.push(group);
-  return group;
-};
-
-ActionContainer.prototype._addAction = function (action) {
-  var self = this;
-
-  // resolve any conflicts
-  this._checkConflict(action);
-
-  // add to actions list
-  this._actions.push(action);
-  action.container = this;
-
-  // index the action by any option strings it has
-  action.optionStrings.forEach(function (optionString) {
-    self._optionStringActions[optionString] = action;
-  });
-
-  // set the flag if any option strings look like negative numbers
-  action.optionStrings.forEach(function (optionString) {
-    if (optionString.match(self._regexpNegativeNumber)) {
-      if (!_.any(self._hasNegativeNumberOptionals)) {
-        self._hasNegativeNumberOptionals.push(true);
-      }
-    }
-  });
-
-  // return the created action
-  return action;
-};
-
-ActionContainer.prototype._removeAction = function (action) {
-  var actionIndex = this._actions.indexOf(action);
-  if (actionIndex >= 0) {
-    this._actions.splice(actionIndex, 1);
-  }
-};
-
-ActionContainer.prototype._addContainerActions = function (container) {
-  // collect groups by titles
-  var titleGroupMap = {};
-  this._actionGroups.forEach(function (group) {
-    if (titleGroupMap[group.title]) {
-      throw new Error(format('Cannot merge actions - two groups are named "%s".', group.title));
-    }
-    titleGroupMap[group.title] = group;
-  });
-
-  // map each action to its group
-  var groupMap = {};
-  function actionHash(action) {
-    // unique (hopefully?) string suitable as dictionary key
-    return action.getName();
-  }
-  container._actionGroups.forEach(function (group) {
-    // if a group with the title exists, use that, otherwise
-    // create a new group matching the container's group
-    if (!titleGroupMap[group.title]) {
-      titleGroupMap[group.title] = this.addArgumentGroup({
-        title: group.title,
-        description: group.description
-      });
-    }
-
-    // map the actions to their new group
-    group._groupActions.forEach(function (action) {
-      groupMap[actionHash(action)] = titleGroupMap[group.title];
-    });
-  }, this);
-
-  // add container's mutually exclusive groups
-  // NOTE: if add_mutually_exclusive_group ever gains title= and
-  // description= then this code will need to be expanded as above
-  var mutexGroup;
-  container._mutuallyExclusiveGroups.forEach(function (group) {
-    mutexGroup = this.addMutuallyExclusiveGroup({
-        required: group.required
-      });
-    // map the actions to their new mutex group
-    group._groupActions.forEach(function (action) {
-      groupMap[actionHash(action)] = mutexGroup;
-    });
-  }, this);  // forEach takes a 'this' argument
-
-  // add all actions to this container or their group
-  container._actions.forEach(function (action) {
-    var key = actionHash(action);
-    if (!!groupMap[key]) {
-      groupMap[key]._addAction(action);
-    }
-    else
-    {
-      this._addAction(action);
-    }
-  });
-};
-
-ActionContainer.prototype._getPositional = function (dest, options) {
-  if (_.isArray(dest)) {
-    dest = _.first(dest);
-  }
-  // make sure required is not specified
-  if (options.required) {
-    throw new Error('"required" is an invalid argument for positionals.');
-  }
-
-  // mark positional arguments as required if at least one is
-  // always required
-  if (options.nargs !== $$.OPTIONAL && options.nargs !== $$.ZERO_OR_MORE) {
-    options.required = true;
-  }
-  if (options.nargs === $$.ZERO_OR_MORE && options.defaultValue === undefined) {
-    options.required = true;
-  }
-
-  // return the keyword arguments with no option strings
-  options.dest = dest;
-  options.optionStrings = [];
-  return options;
-};
-
-ActionContainer.prototype._getOptional = function (args, options) {
-  var prefixChars = this.prefixChars;
-  var optionStrings = [];
-  var optionStringsLong = [];
-
-  // determine short and long option strings
-  args.forEach(function (optionString) {
-    // error on strings that don't start with an appropriate prefix
-    if (prefixChars.indexOf(optionString[0]) < 0) {
-      throw new Error(format('Invalid option string "%s": must start with a "%s".',
-        optionString,
-        prefixChars
-      ));
-    }
-
-    // strings starting with two prefix characters are long options
-    optionStrings.push(optionString);
-    if (optionString.length > 1 && prefixChars.indexOf(optionString[1]) >= 0) {
-      optionStringsLong.push(optionString);
-    }
-  });
-
-  // infer dest, '--foo-bar' -> 'foo_bar' and '-x' -> 'x'
-  var dest = options.dest || null;
-  delete options.dest;
-
-  if (!dest) {
-    var optionStringDest = optionStringsLong.length ? optionStringsLong[0] :optionStrings[0];
-    dest = _.trim(optionStringDest, this.prefixChars);
-
-    if (dest.length === 0) {
-      throw new Error(
-        format('dest= is required for options like "%s"', optionStrings.join(', '))
-      );
-    }
-    dest = dest.replace(/-/g, '_');
-  }
-
-  // return the updated keyword arguments
-  options.dest = dest;
-  options.optionStrings = optionStrings;
-
-  return options;
-};
-
-ActionContainer.prototype._popActionClass = function (options, defaultValue) {
-  defaultValue = defaultValue || null;
-
-  var action = (options.action || defaultValue);
-  delete options.action;
-
-  var actionClass = this._registryGet('action', action, action);
-  return actionClass;
-};
-
-ActionContainer.prototype._getHandler = function () {
-  var handlerString = this.conflictHandler;
-  var handlerFuncName = "_handleConflict" + _.capitalize(handlerString);
-  var func = this[handlerFuncName];
-  if (typeof func === 'undefined') {
-    var msg = "invalid conflict resolution value: " + handlerString;
-    throw new Error(msg);
-  } else {
-    return func;
-  }
-};
-
-ActionContainer.prototype._checkConflict = function (action) {
-  var optionStringActions = this._optionStringActions;
-  var conflictOptionals = [];
-
-  // find all options that conflict with this option
-  // collect pairs, the string, and an existing action that it conflicts with
-  action.optionStrings.forEach(function (optionString) {
-    var conflOptional = optionStringActions[optionString];
-    if (typeof conflOptional !== 'undefined') {
-      conflictOptionals.push([optionString, conflOptional]);
-    }
-  });
-
-  if (conflictOptionals.length > 0) {
-    var conflictHandler = this._getHandler();
-    conflictHandler.call(this, action, conflictOptionals);
-  }
-};
-
-ActionContainer.prototype._handleConflictError = function (action, conflOptionals) {
-  var conflicts = _.map(conflOptionals, function (pair) {return pair[0]; });
-  conflicts = conflicts.join(', ');
-  throw argumentErrorHelper(
-    action,
-    format('Conflicting option string(s): %s', conflicts)
-  );
-};
-
-ActionContainer.prototype._handleConflictResolve = function (action, conflOptionals) {
-  // remove all conflicting options
-  var self = this;
-  conflOptionals.forEach(function (pair) {
-    var optionString = pair[0];
-    var conflictingAction = pair[1];
-    // remove the conflicting option string
-    var i = conflictingAction.optionStrings.indexOf(optionString);
-    if (i >= 0) {
-      conflictingAction.optionStrings.splice(i, 1);
-    }
-    delete self._optionStringActions[optionString];
-    // if the option now has no option string, remove it from the
-    // container holding it
-    if (conflictingAction.optionStrings.length === 0) {
-      conflictingAction.container._removeAction(conflictingAction);
-    }
-  });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument_parser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/argument_parser.js
deleted file mode 100644 (file)
index 2b4cee3..0000000
+++ /dev/null
@@ -1,1168 +0,0 @@
-/**
- * class ArgumentParser
- *
- * Object for parsing command line strings into js objects.
- *
- * Inherited from [[ActionContainer]]
- **/
-'use strict';
-
-var util    = require('util');
-var format  = require('util').format;
-var Path    = require('path');
-
-var _       = require('lodash');
-var sprintf = require('sprintf-js').sprintf;
-
-// Constants
-var $$ = require('./const');
-
-var ActionContainer = require('./action_container');
-
-// Errors
-var argumentErrorHelper = require('./argument/error');
-
-var HelpFormatter = require('./help/formatter');
-
-var Namespace = require('./namespace');
-
-
-/**
- * new ArgumentParser(options)
- *
- * Create a new ArgumentParser object.
- *
- * ##### Options:
- * - `prog`  The name of the program (default: Path.basename(process.argv[1]))
- * - `usage`  A usage message (default: auto-generated from arguments)
- * - `description`  A description of what the program does
- * - `epilog`  Text following the argument descriptions
- * - `parents`  Parsers whose arguments should be copied into this one
- * - `formatterClass`  HelpFormatter class for printing help messages
- * - `prefixChars`  Characters that prefix optional arguments
- * - `fromfilePrefixChars` Characters that prefix files containing additional arguments
- * - `argumentDefault`  The default value for all arguments
- * - `addHelp`  Add a -h/-help option
- * - `conflictHandler`  Specifies how to handle conflicting argument names
- * - `debug`  Enable debug mode. Argument errors throw exception in
- *   debug mode and process.exit in normal. Used for development and
- *   testing (default: false)
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#argumentparser-objects
- **/
-var ArgumentParser = module.exports = function ArgumentParser(options) {
-  var self = this;
-  options = options || {};
-
-  options.description = (options.description || null);
-  options.argumentDefault = (options.argumentDefault || null);
-  options.prefixChars = (options.prefixChars || '-');
-  options.conflictHandler = (options.conflictHandler || 'error');
-  ActionContainer.call(this, options);
-
-  options.addHelp = (options.addHelp === undefined || !!options.addHelp);
-  options.parents = (options.parents || []);
-  // default program name
-  options.prog = (options.prog || Path.basename(process.argv[1]));
-  this.prog = options.prog;
-  this.usage = options.usage;
-  this.epilog = options.epilog;
-  this.version = options.version;
-
-  this.debug = (options.debug === true);
-
-  this.formatterClass = (options.formatterClass || HelpFormatter);
-  this.fromfilePrefixChars = options.fromfilePrefixChars || null;
-  this._positionals = this.addArgumentGroup({title: 'Positional arguments'});
-  this._optionals = this.addArgumentGroup({title: 'Optional arguments'});
-  this._subparsers = null;
-
-  // register types
-  var FUNCTION_IDENTITY = function (o) {
-    return o;
-  };
-  this.register('type', 'auto', FUNCTION_IDENTITY);
-  this.register('type', null, FUNCTION_IDENTITY);
-  this.register('type', 'int', function (x) {
-    var result = parseInt(x, 10);
-    if (isNaN(result)) {
-      throw new Error(x + ' is not a valid integer.');
-    }
-    return result;
-  });
-  this.register('type', 'float', function (x) {
-    var result = parseFloat(x);
-    if (isNaN(result)) {
-      throw new Error(x + ' is not a valid float.');
-    }
-    return result;
-  });
-  this.register('type', 'string', function (x) {
-    return '' + x;
-  });
-
-  // add help and version arguments if necessary
-  var defaultPrefix = (this.prefixChars.indexOf('-') > -1) ? '-' : this.prefixChars[0];
-  if (options.addHelp) {
-    this.addArgument(
-      [defaultPrefix + 'h', defaultPrefix + defaultPrefix + 'help'],
-      {
-        action: 'help',
-        defaultValue: $$.SUPPRESS,
-        help: 'Show this help message and exit.'
-      }
-    );
-  }
-  if (this.version !== undefined) {
-    this.addArgument(
-      [defaultPrefix + 'v', defaultPrefix + defaultPrefix + 'version'],
-      {
-        action: 'version',
-        version: this.version,
-        defaultValue: $$.SUPPRESS,
-        help: "Show program's version number and exit."
-      }
-    );
-  }
-
-  // add parent arguments and defaults
-  options.parents.forEach(function (parent) {
-    self._addContainerActions(parent);
-    if (parent._defaults !== undefined) {
-      for (var defaultKey in parent._defaults) {
-        if (parent._defaults.hasOwnProperty(defaultKey)) {
-          self._defaults[defaultKey] = parent._defaults[defaultKey];
-        }
-      }
-    }
-  });
-
-};
-util.inherits(ArgumentParser, ActionContainer);
-
-/**
- * ArgumentParser#addSubparsers(options) -> [[ActionSubparsers]]
- * - options (object): hash of options see [[ActionSubparsers.new]]
- *
- * See also [subcommands][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#sub-commands
- **/
-ArgumentParser.prototype.addSubparsers = function (options) {
-  if (!!this._subparsers) {
-    this.error('Cannot have multiple subparser arguments.');
-  }
-
-  options = options || {};
-  options.debug = (this.debug === true);
-  options.optionStrings = [];
-  options.parserClass = (options.parserClass || ArgumentParser);
-
-
-  if (!!options.title || !!options.description) {
-
-    this._subparsers = this.addArgumentGroup({
-      title: (options.title || 'subcommands'),
-      description: options.description
-    });
-    delete options.title;
-    delete options.description;
-
-  } else {
-    this._subparsers = this._positionals;
-  }
-
-  // prog defaults to the usage message of this parser, skipping
-  // optional arguments and with no "usage:" prefix
-  if (!options.prog) {
-    var formatter = this._getFormatter();
-    var positionals = this._getPositionalActions();
-    var groups = this._mutuallyExclusiveGroups;
-    formatter.addUsage(this.usage, positionals, groups, '');
-    options.prog = _.trim(formatter.formatHelp());
-  }
-
-  // create the parsers action and add it to the positionals list
-  var ParsersClass = this._popActionClass(options, 'parsers');
-  var action = new ParsersClass(options);
-  this._subparsers._addAction(action);
-
-  // return the created parsers action
-  return action;
-};
-
-ArgumentParser.prototype._addAction = function (action) {
-  if (action.isOptional()) {
-    this._optionals._addAction(action);
-  } else {
-    this._positionals._addAction(action);
-  }
-  return action;
-};
-
-ArgumentParser.prototype._getOptionalActions = function () {
-  return this._actions.filter(function (action) {
-    return action.isOptional();
-  });
-};
-
-ArgumentParser.prototype._getPositionalActions = function () {
-  return this._actions.filter(function (action) {
-    return action.isPositional();
-  });
-};
-
-
-/**
- * ArgumentParser#parseArgs(args, namespace) -> Namespace|Object
- * - args (array): input elements
- * - namespace (Namespace|Object): result object
- *
- * Parsed args and throws error if some arguments are not recognized
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#the-parse-args-method
- **/
-ArgumentParser.prototype.parseArgs = function (args, namespace) {
-  var argv;
-  var result = this.parseKnownArgs(args, namespace);
-
-  args = result[0];
-  argv = result[1];
-  if (argv && argv.length > 0) {
-    this.error(
-      format('Unrecognized arguments: %s.', argv.join(' '))
-    );
-  }
-  return args;
-};
-
-/**
- * ArgumentParser#parseKnownArgs(args, namespace) -> array
- * - args (array): input options
- * - namespace (Namespace|Object): result object
- *
- * Parse known arguments and return tuple of result object
- * and unknown args
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#partial-parsing
- **/
-ArgumentParser.prototype.parseKnownArgs = function (args, namespace) {
-  var self = this;
-
-  // args default to the system args
-  args = args || process.argv.slice(2);
-
-  // default Namespace built from parser defaults
-  namespace = namespace || new Namespace();
-
-  self._actions.forEach(function (action) {
-    if (action.dest !== $$.SUPPRESS) {
-      if (!_.has(namespace, action.dest)) {
-        if (action.defaultValue !== $$.SUPPRESS) {
-          var defaultValue = action.defaultValue;
-          if (_.isString(action.defaultValue)) {
-            defaultValue = self._getValue(action, defaultValue);
-          }
-          namespace[action.dest] = defaultValue;
-        }
-      }
-    }
-  });
-
-  _.keys(self._defaults).forEach(function (dest) {
-    namespace[dest] = self._defaults[dest];
-  });
-
-  // parse the arguments and exit if there are any errors
-  try {
-    var res = this._parseKnownArgs(args, namespace);
-
-    namespace = res[0];
-    args = res[1];
-    if (_.has(namespace, $$._UNRECOGNIZED_ARGS_ATTR)) {
-      args = _.union(args, namespace[$$._UNRECOGNIZED_ARGS_ATTR]);
-      delete namespace[$$._UNRECOGNIZED_ARGS_ATTR];
-    }
-    return [namespace, args];
-  } catch (e) {
-    this.error(e);
-  }
-};
-
-ArgumentParser.prototype._parseKnownArgs = function (argStrings, namespace) {
-  var self = this;
-
-  var extras = [];
-
-  // replace arg strings that are file references
-  if (this.fromfilePrefixChars !== null) {
-    argStrings = this._readArgsFromFiles(argStrings);
-  }
-  // map all mutually exclusive arguments to the other arguments
-  // they can't occur with
-  // Python has 'conflicts = action_conflicts.setdefault(mutex_action, [])'
-  // though I can't conceive of a way in which an action could be a member
-  // of two different mutually exclusive groups.
-
-  function actionHash(action) {
-    // some sort of hashable key for this action
-    // action itself cannot be a key in actionConflicts
-    // I think getName() (join of optionStrings) is unique enough
-    return action.getName();
-  }
-
-  var conflicts, key;
-  var actionConflicts = {};
-
-  this._mutuallyExclusiveGroups.forEach(function (mutexGroup) {
-    mutexGroup._groupActions.forEach(function (mutexAction, i, groupActions) {
-      key = actionHash(mutexAction);
-      if (!_.has(actionConflicts, key)) {
-        actionConflicts[key] = [];
-      }
-      conflicts = actionConflicts[key];
-      conflicts.push.apply(conflicts, groupActions.slice(0, i));
-      conflicts.push.apply(conflicts, groupActions.slice(i + 1));
-    });
-  });
-
-  // find all option indices, and determine the arg_string_pattern
-  // which has an 'O' if there is an option at an index,
-  // an 'A' if there is an argument, or a '-' if there is a '--'
-  var optionStringIndices = {};
-
-  var argStringPatternParts = [];
-
-  argStrings.forEach(function (argString, argStringIndex) {
-    if (argString === '--') {
-      argStringPatternParts.push('-');
-      while (argStringIndex < argStrings.length) {
-        argStringPatternParts.push('A');
-        argStringIndex++;
-      }
-    }
-    // otherwise, add the arg to the arg strings
-    // and note the index if it was an option
-    else {
-      var pattern;
-      var optionTuple = self._parseOptional(argString);
-      if (!optionTuple) {
-        pattern = 'A';
-      }
-      else {
-        optionStringIndices[argStringIndex] = optionTuple;
-        pattern = 'O';
-      }
-      argStringPatternParts.push(pattern);
-    }
-  });
-  var argStringsPattern = argStringPatternParts.join('');
-
-  var seenActions = [];
-  var seenNonDefaultActions = [];
-
-
-  function takeAction(action, argumentStrings, optionString) {
-    seenActions.push(action);
-    var argumentValues = self._getValues(action, argumentStrings);
-
-    // error if this argument is not allowed with other previously
-    // seen arguments, assuming that actions that use the default
-    // value don't really count as "present"
-    if (argumentValues !== action.defaultValue) {
-      seenNonDefaultActions.push(action);
-      if (!!actionConflicts[actionHash(action)]) {
-        actionConflicts[actionHash(action)].forEach(function (actionConflict) {
-          if (seenNonDefaultActions.indexOf(actionConflict) >= 0) {
-            throw argumentErrorHelper(
-              action,
-              format('Not allowed with argument "%s".', actionConflict.getName())
-            );
-          }
-        });
-      }
-    }
-
-    if (argumentValues !== $$.SUPPRESS) {
-      action.call(self, namespace, argumentValues, optionString);
-    }
-  }
-
-  function consumeOptional(startIndex) {
-    // get the optional identified at this index
-    var optionTuple = optionStringIndices[startIndex];
-    var action = optionTuple[0];
-    var optionString = optionTuple[1];
-    var explicitArg = optionTuple[2];
-
-    // identify additional optionals in the same arg string
-    // (e.g. -xyz is the same as -x -y -z if no args are required)
-    var actionTuples = [];
-
-    var args, argCount, start, stop;
-
-    while (true) {
-      if (!action) {
-        extras.push(argStrings[startIndex]);
-        return startIndex + 1;
-      }
-      if (!!explicitArg) {
-        argCount = self._matchArgument(action, 'A');
-
-        // if the action is a single-dash option and takes no
-        // arguments, try to parse more single-dash options out
-        // of the tail of the option string
-        var chars = self.prefixChars;
-        if (argCount === 0 && chars.indexOf(optionString[1]) < 0) {
-          actionTuples.push([action, [], optionString]);
-          optionString = optionString[0] + explicitArg[0];
-          var newExplicitArg = explicitArg.slice(1) || null;
-          var optionalsMap = self._optionStringActions;
-
-          if (_.keys(optionalsMap).indexOf(optionString) >= 0) {
-            action = optionalsMap[optionString];
-            explicitArg = newExplicitArg;
-          }
-          else {
-            var msg = 'ignored explicit argument %r';
-            throw argumentErrorHelper(action, msg);
-          }
-        }
-        // if the action expect exactly one argument, we've
-        // successfully matched the option; exit the loop
-        else if (argCount === 1) {
-          stop = startIndex + 1;
-          args = [explicitArg];
-          actionTuples.push([action, args, optionString]);
-          break;
-        }
-        // error if a double-dash option did not use the
-        // explicit argument
-        else {
-          var message = 'ignored explicit argument %r';
-          throw argumentErrorHelper(action, sprintf(message, explicitArg));
-        }
-      }
-      // if there is no explicit argument, try to match the
-      // optional's string arguments with the following strings
-      // if successful, exit the loop
-      else {
-
-        start = startIndex + 1;
-        var selectedPatterns = argStringsPattern.substr(start);
-
-        argCount = self._matchArgument(action, selectedPatterns);
-        stop = start + argCount;
-
-
-        args = argStrings.slice(start, stop);
-
-        actionTuples.push([action, args, optionString]);
-        break;
-      }
-
-    }
-
-    // add the Optional to the list and return the index at which
-    // the Optional's string args stopped
-    if (actionTuples.length < 1) {
-      throw new Error('length should be > 0');
-    }
-    for (var i = 0; i < actionTuples.length; i++) {
-      takeAction.apply(self, actionTuples[i]);
-    }
-    return stop;
-  }
-
-  // the list of Positionals left to be parsed; this is modified
-  // by consume_positionals()
-  var positionals = self._getPositionalActions();
-
-  function consumePositionals(startIndex) {
-    // match as many Positionals as possible
-    var selectedPattern = argStringsPattern.substr(startIndex);
-    var argCounts = self._matchArgumentsPartial(positionals, selectedPattern);
-
-    // slice off the appropriate arg strings for each Positional
-    // and add the Positional and its args to the list
-    _.zip(positionals, argCounts).forEach(function (item) {
-        var action = item[0];
-        var argCount = item[1];
-        if (argCount === undefined) {
-          return;
-        }
-        var args = argStrings.slice(startIndex, startIndex + argCount);
-
-        startIndex += argCount;
-        takeAction(action, args);
-      });
-
-    // slice off the Positionals that we just parsed and return the
-    // index at which the Positionals' string args stopped
-    positionals = positionals.slice(argCounts.length);
-    return startIndex;
-  }
-
-  // consume Positionals and Optionals alternately, until we have
-  // passed the last option string
-  var startIndex = 0;
-  var position;
-
-  var maxOptionStringIndex = -1;
-
-  Object.keys(optionStringIndices).forEach(function (position) {
-    maxOptionStringIndex = Math.max(maxOptionStringIndex, parseInt(position, 10));
-  });
-
-  var positionalsEndIndex, nextOptionStringIndex;
-
-  while (startIndex <= maxOptionStringIndex) {
-    // consume any Positionals preceding the next option
-    nextOptionStringIndex = null;
-    for (position in optionStringIndices) {
-      if (!optionStringIndices.hasOwnProperty(position)) { continue; }
-
-      position = parseInt(position, 10);
-      if (position >= startIndex) {
-        if (nextOptionStringIndex !== null) {
-          nextOptionStringIndex = Math.min(nextOptionStringIndex, position);
-        }
-        else {
-          nextOptionStringIndex = position;
-        }
-      }
-    }
-
-    if (startIndex !== nextOptionStringIndex) {
-      positionalsEndIndex = consumePositionals(startIndex);
-      // only try to parse the next optional if we didn't consume
-      // the option string during the positionals parsing
-      if (positionalsEndIndex > startIndex) {
-        startIndex = positionalsEndIndex;
-        continue;
-      }
-      else {
-        startIndex = positionalsEndIndex;
-      }
-    }
-
-    // if we consumed all the positionals we could and we're not
-    // at the index of an option string, there were extra arguments
-    if (!optionStringIndices[startIndex]) {
-      var strings = argStrings.slice(startIndex, nextOptionStringIndex);
-      extras = extras.concat(strings);
-      startIndex = nextOptionStringIndex;
-    }
-    // consume the next optional and any arguments for it
-    startIndex = consumeOptional(startIndex);
-  }
-
-  // consume any positionals following the last Optional
-  var stopIndex = consumePositionals(startIndex);
-
-  // if we didn't consume all the argument strings, there were extras
-  extras = extras.concat(argStrings.slice(stopIndex));
-
-  // if we didn't use all the Positional objects, there were too few
-  // arg strings supplied.
-  if (positionals.length > 0) {
-    self.error('too few arguments');
-  }
-
-  // make sure all required actions were present
-  self._actions.forEach(function (action) {
-    if (action.required) {
-      if (_.indexOf(seenActions, action) < 0) {
-        self.error(format('Argument "%s" is required', action.getName()));
-      }
-    }
-  });
-
-  // make sure all required groups have one option present
-  var actionUsed = false;
-  self._mutuallyExclusiveGroups.forEach(function (group) {
-    if (group.required) {
-      actionUsed = _.any(group._groupActions, function (action) {
-        return _.contains(seenNonDefaultActions, action);
-      });
-
-      // if no actions were used, report the error
-      if (!actionUsed) {
-        var names = [];
-        group._groupActions.forEach(function (action) {
-          if (action.help !== $$.SUPPRESS) {
-            names.push(action.getName());
-          }
-        });
-        names = names.join(' ');
-        var msg = 'one of the arguments ' + names + ' is required';
-        self.error(msg);
-      }
-    }
-  });
-
-  // return the updated namespace and the extra arguments
-  return [namespace, extras];
-};
-
-ArgumentParser.prototype._readArgsFromFiles = function (argStrings) {
-  // expand arguments referencing files
-  var _this = this;
-  var fs = require('fs');
-  var newArgStrings = [];
-  argStrings.forEach(function (argString) {
-    if (_this.fromfilePrefixChars.indexOf(argString[0]) < 0) {
-      // for regular arguments, just add them back into the list
-      newArgStrings.push(argString);
-    } else {
-      // replace arguments referencing files with the file content
-      try {
-        var argstrs = [];
-        var filename = argString.slice(1);
-        var content = fs.readFileSync(filename, 'utf8');
-        content = content.trim().split('\n');
-        content.forEach(function (argLine) {
-          _this.convertArgLineToArgs(argLine).forEach(function (arg) {
-            argstrs.push(arg);
-          });
-          argstrs = _this._readArgsFromFiles(argstrs);
-        });
-        newArgStrings.push.apply(newArgStrings, argstrs);
-      } catch (error) {
-        return _this.error(error.message);
-      }
-    }
-  });
-  return newArgStrings;
-};
-
-ArgumentParser.prototype.convertArgLineToArgs = function (argLine) {
-  return [argLine];
-};
-
-ArgumentParser.prototype._matchArgument = function (action, regexpArgStrings) {
-
-  // match the pattern for this action to the arg strings
-  var regexpNargs = new RegExp('^' + this._getNargsPattern(action));
-  var matches = regexpArgStrings.match(regexpNargs);
-  var message;
-
-  // throw an exception if we weren't able to find a match
-  if (!matches) {
-    switch (action.nargs) {
-    case undefined:
-    case null:
-      message = 'Expected one argument.';
-      break;
-    case $$.OPTIONAL:
-      message = 'Expected at most one argument.';
-      break;
-    case $$.ONE_OR_MORE:
-      message = 'Expected at least one argument.';
-      break;
-    default:
-      message = 'Expected %s argument(s)';
-    }
-
-    throw argumentErrorHelper(
-      action,
-      format(message, action.nargs)
-    );
-  }
-  // return the number of arguments matched
-  return matches[1].length;
-};
-
-ArgumentParser.prototype._matchArgumentsPartial = function (actions, regexpArgStrings) {
-  // progressively shorten the actions list by slicing off the
-  // final actions until we find a match
-  var self = this;
-  var result = [];
-  var actionSlice, pattern, matches;
-  var i, j;
-
-  var getLength = function (string) {
-    return string.length;
-  };
-
-  for (i = actions.length; i > 0; i--) {
-    pattern = '';
-    actionSlice = actions.slice(0, i);
-    for (j = 0; j < actionSlice.length; j++) {
-      pattern += self._getNargsPattern(actionSlice[j]);
-    }
-
-    pattern = new RegExp('^' + pattern);
-    matches = regexpArgStrings.match(pattern);
-
-    if (matches && matches.length > 0) {
-      // need only groups
-      matches = matches.splice(1);
-      result = result.concat(matches.map(getLength));
-      break;
-    }
-  }
-
-  // return the list of arg string counts
-  return result;
-};
-
-ArgumentParser.prototype._parseOptional = function (argString) {
-  var action, optionString, argExplicit, optionTuples;
-
-  // if it's an empty string, it was meant to be a positional
-  if (!argString) {
-    return null;
-  }
-
-  // if it doesn't start with a prefix, it was meant to be positional
-  if (this.prefixChars.indexOf(argString[0]) < 0) {
-    return null;
-  }
-
-  // if the option string is present in the parser, return the action
-  if (!!this._optionStringActions[argString]) {
-    return [this._optionStringActions[argString], argString, null];
-  }
-
-  // if it's just a single character, it was meant to be positional
-  if (argString.length === 1) {
-    return null;
-  }
-
-  // if the option string before the "=" is present, return the action
-  if (argString.indexOf('=') >= 0) {
-    var argStringSplit = argString.split('=');
-    optionString = argStringSplit[0];
-    argExplicit = argStringSplit[1];
-
-    if (!!this._optionStringActions[optionString]) {
-      action = this._optionStringActions[optionString];
-      return [action, optionString, argExplicit];
-    }
-  }
-
-  // search through all possible prefixes of the option string
-  // and all actions in the parser for possible interpretations
-  optionTuples = this._getOptionTuples(argString);
-
-  // if multiple actions match, the option string was ambiguous
-  if (optionTuples.length > 1) {
-    var optionStrings = optionTuples.map(function (optionTuple) {
-      return optionTuple[1];
-    });
-    this.error(format(
-          'Ambiguous option: "%s" could match %s.',
-          argString, optionStrings.join(', ')
-    ));
-  // if exactly one action matched, this segmentation is good,
-  // so return the parsed action
-  } else if (optionTuples.length === 1) {
-    return optionTuples[0];
-  }
-
-  // if it was not found as an option, but it looks like a negative
-  // number, it was meant to be positional
-  // unless there are negative-number-like options
-  if (argString.match(this._regexpNegativeNumber)) {
-    if (!_.any(this._hasNegativeNumberOptionals)) {
-      return null;
-    }
-  }
-  // if it contains a space, it was meant to be a positional
-  if (argString.search(' ') >= 0) {
-    return null;
-  }
-
-  // it was meant to be an optional but there is no such option
-  // in this parser (though it might be a valid option in a subparser)
-  return [null, argString, null];
-};
-
-ArgumentParser.prototype._getOptionTuples = function (optionString) {
-  var result = [];
-  var chars = this.prefixChars;
-  var optionPrefix;
-  var argExplicit;
-  var action;
-  var actionOptionString;
-
-  // option strings starting with two prefix characters are only split at
-  // the '='
-  if (chars.indexOf(optionString[0]) >= 0 && chars.indexOf(optionString[1]) >= 0) {
-    if (optionString.indexOf('=') >= 0) {
-      var optionStringSplit = optionString.split('=', 1);
-
-      optionPrefix = optionStringSplit[0];
-      argExplicit = optionStringSplit[1];
-    } else {
-      optionPrefix = optionString;
-      argExplicit = null;
-    }
-
-    for (actionOptionString in this._optionStringActions) {
-      if (actionOptionString.substr(0, optionPrefix.length) === optionPrefix) {
-        action = this._optionStringActions[actionOptionString];
-        result.push([action, actionOptionString, argExplicit]);
-      }
-    }
-
-  // single character options can be concatenated with their arguments
-  // but multiple character options always have to have their argument
-  // separate
-  } else if (chars.indexOf(optionString[0]) >= 0 && chars.indexOf(optionString[1]) < 0) {
-    optionPrefix = optionString;
-    argExplicit = null;
-    var optionPrefixShort = optionString.substr(0, 2);
-    var argExplicitShort = optionString.substr(2);
-
-    for (actionOptionString in this._optionStringActions) {
-      action = this._optionStringActions[actionOptionString];
-      if (actionOptionString === optionPrefixShort) {
-        result.push([action, actionOptionString, argExplicitShort]);
-      } else if (actionOptionString.substr(0, optionPrefix.length) === optionPrefix) {
-        result.push([action, actionOptionString, argExplicit]);
-      }
-    }
-
-  // shouldn't ever get here
-  } else {
-    throw new Error(format('Unexpected option string: %s.', optionString));
-  }
-  // return the collected option tuples
-  return result;
-};
-
-ArgumentParser.prototype._getNargsPattern = function (action) {
-  // in all examples below, we have to allow for '--' args
-  // which are represented as '-' in the pattern
-  var regexpNargs;
-
-  switch (action.nargs) {
-  // the default (null) is assumed to be a single argument
-  case undefined:
-  case null:
-    regexpNargs = '(-*A-*)';
-    break;
-  // allow zero or more arguments
-  case $$.OPTIONAL:
-    regexpNargs = '(-*A?-*)';
-    break;
-  // allow zero or more arguments
-  case $$.ZERO_OR_MORE:
-    regexpNargs = '(-*[A-]*)';
-    break;
-  // allow one or more arguments
-  case $$.ONE_OR_MORE:
-    regexpNargs = '(-*A[A-]*)';
-    break;
-  // allow any number of options or arguments
-  case $$.REMAINDER:
-    regexpNargs = '([-AO]*)';
-    break;
-  // allow one argument followed by any number of options or arguments
-  case $$.PARSER:
-    regexpNargs = '(-*A[-AO]*)';
-    break;
-  // all others should be integers
-  default:
-    regexpNargs = '(-*' + _.repeat('-*A', action.nargs) + '-*)';
-  }
-
-  // if this is an optional action, -- is not allowed
-  if (action.isOptional()) {
-    regexpNargs = regexpNargs.replace(/-\*/g, '');
-    regexpNargs = regexpNargs.replace(/-/g, '');
-  }
-
-  // return the pattern
-  return regexpNargs;
-};
-
-//
-// Value conversion methods
-//
-
-ArgumentParser.prototype._getValues = function (action, argStrings) {
-  var self = this;
-
-  // for everything but PARSER args, strip out '--'
-  if (action.nargs !== $$.PARSER && action.nargs !== $$.REMAINDER) {
-    argStrings = argStrings.filter(function (arrayElement) {
-      return arrayElement !== '--';
-    });
-  }
-
-  var value, argString;
-
-  // optional argument produces a default when not present
-  if (argStrings.length === 0 && action.nargs === $$.OPTIONAL) {
-
-    value = (action.isOptional()) ? action.constant: action.defaultValue;
-
-    if (typeof(value) === 'string') {
-      value = this._getValue(action, value);
-      this._checkValue(action, value);
-    }
-
-  // when nargs='*' on a positional, if there were no command-line
-  // args, use the default if it is anything other than None
-  } else if (argStrings.length === 0 && action.nargs === $$.ZERO_OR_MORE &&
-    action.optionStrings.length === 0) {
-
-    value = (action.defaultValue || argStrings);
-    this._checkValue(action, value);
-
-  // single argument or optional argument produces a single value
-  } else if (argStrings.length === 1 &&
-        (!action.nargs || action.nargs === $$.OPTIONAL)) {
-
-    argString = argStrings[0];
-    value = this._getValue(action, argString);
-    this._checkValue(action, value);
-
-  // REMAINDER arguments convert all values, checking none
-  } else if (action.nargs === $$.REMAINDER) {
-    value = argStrings.map(function (v) {
-      return self._getValue(action, v);
-    });
-
-  // PARSER arguments convert all values, but check only the first
-  } else if (action.nargs === $$.PARSER) {
-    value = argStrings.map(function (v) {
-      return self._getValue(action, v);
-    });
-    this._checkValue(action, value[0]);
-
-  // all other types of nargs produce a list
-  } else {
-    value = argStrings.map(function (v) {
-      return self._getValue(action, v);
-    });
-    value.forEach(function (v) {
-      self._checkValue(action, v);
-    });
-  }
-
-  // return the converted value
-  return value;
-};
-
-ArgumentParser.prototype._getValue = function (action, argString) {
-  var result;
-
-  var typeFunction = this._registryGet('type', action.type, action.type);
-  if (!_.isFunction(typeFunction)) {
-    var message = format('%s is not callable', typeFunction);
-    throw argumentErrorHelper(action, message);
-  }
-
-  // convert the value to the appropriate type
-  try {
-    result = typeFunction(argString);
-
-    // ArgumentTypeErrors indicate errors
-    // If action.type is not a registered string, it is a function
-    // Try to deduce its name for inclusion in the error message
-    // Failing that, include the error message it raised.
-  } catch (e) {
-    var name = null;
-    if (_.isString(action.type)) {
-      name = action.type;
-    } else {
-      name = action.type.name || action.type.displayName || '<function>';
-    }
-    var msg = format('Invalid %s value: %s', name, argString);
-    if (name === '<function>') {msg += '\n' + e.message; }
-    throw argumentErrorHelper(action, msg);
-  }
-  // return the converted value
-  return result;
-};
-
-ArgumentParser.prototype._checkValue = function (action, value) {
-  // converted value must be one of the choices (if specified)
-  var choices = action.choices;
-  if (!!choices) {
-    // choise for argument can by array or string
-    if ((_.isString(choices) || _.isArray(choices)) &&
-        choices.indexOf(value) !== -1) {
-      return;
-    }
-    // choise for subparsers can by only hash
-    if (_.isObject(choices) && !_.isArray(choices) && choices[value]) {
-      return;
-    }
-
-    if (_.isString(choices)) {
-      choices = choices.split('').join(', ');
-    }
-    else if (_.isArray(choices)) {
-      choices =  choices.join(', ');
-    }
-    else {
-      choices =  _.keys(choices).join(', ');
-    }
-    var message = format('Invalid choice: %s (choose from [%s])', value, choices);
-    throw argumentErrorHelper(action, message);
-  }
-};
-
-//
-// Help formatting methods
-//
-
-/**
- * ArgumentParser#formatUsage -> string
- *
- * Return usage string
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
- **/
-ArgumentParser.prototype.formatUsage = function () {
-  var formatter = this._getFormatter();
-  formatter.addUsage(this.usage, this._actions, this._mutuallyExclusiveGroups);
-  return formatter.formatHelp();
-};
-
-/**
- * ArgumentParser#formatHelp -> string
- *
- * Return help
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
- **/
-ArgumentParser.prototype.formatHelp = function () {
-  var formatter = this._getFormatter();
-
-  // usage
-  formatter.addUsage(this.usage, this._actions, this._mutuallyExclusiveGroups);
-
-  // description
-  formatter.addText(this.description);
-
-  // positionals, optionals and user-defined groups
-  this._actionGroups.forEach(function (actionGroup) {
-    formatter.startSection(actionGroup.title);
-    formatter.addText(actionGroup.description);
-    formatter.addArguments(actionGroup._groupActions);
-    formatter.endSection();
-  });
-
-  // epilog
-  formatter.addText(this.epilog);
-
-  // determine help from format above
-  return formatter.formatHelp();
-};
-
-ArgumentParser.prototype._getFormatter = function () {
-  var FormatterClass = this.formatterClass;
-  var formatter = new FormatterClass({prog: this.prog});
-  return formatter;
-};
-
-//
-//  Print functions
-//
-
-/**
- * ArgumentParser#printUsage() -> Void
- *
- * Print usage
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
- **/
-ArgumentParser.prototype.printUsage = function () {
-  this._printMessage(this.formatUsage());
-};
-
-/**
- * ArgumentParser#printHelp() -> Void
- *
- * Print help
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#printing-help
- **/
-ArgumentParser.prototype.printHelp = function () {
-  this._printMessage(this.formatHelp());
-};
-
-ArgumentParser.prototype._printMessage = function (message, stream) {
-  if (!stream) {
-    stream = process.stdout;
-  }
-  if (message) {
-    stream.write('' + message);
-  }
-};
-
-//
-//  Exit functions
-//
-
-/**
- * ArgumentParser#exit(status=0, message) -> Void
- * - status (int): exit status
- * - message (string): message
- *
- * Print message in stderr/stdout and exit program
- **/
-ArgumentParser.prototype.exit = function (status, message) {
-  if (!!message) {
-    if (status === 0) {
-      this._printMessage(message);
-    }
-    else {
-      this._printMessage(message, process.stderr);
-    }
-  }
-
-  process.exit(status);
-};
-
-/**
- * ArgumentParser#error(message) -> Void
- * - err (Error|string): message
- *
- * Error method Prints a usage message incorporating the message to stderr and
- * exits. If you override this in a subclass,
- * it should not return -- it should
- * either exit or throw an exception.
- *
- **/
-ArgumentParser.prototype.error = function (err) {
-  var message;
-  if (err instanceof Error) {
-    if (this.debug === true) {
-      throw err;
-    }
-    message = err.message;
-  }
-  else {
-    message = err;
-  }
-  var msg = format('%s: error: %s', this.prog, message) + $$.EOL;
-
-  if (this.debug === true) {
-    throw new Error(msg);
-  }
-
-  this.printUsage(process.stderr);
-
-  return this.exit(2, msg);
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/const.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/const.js
deleted file mode 100644 (file)
index de831ba..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-//
-// Constants
-//
-module.exports.EOL = '\n';
-
-module.exports.SUPPRESS = '==SUPPRESS==';
-
-module.exports.OPTIONAL = '?';
-
-module.exports.ZERO_OR_MORE = '*';
-
-module.exports.ONE_OR_MORE = '+';
-
-module.exports.PARSER = 'A...';
-
-module.exports.REMAINDER = '...';
-
-module.exports._UNRECOGNIZED_ARGS_ATTR = '_unrecognized_args';
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/added_formatters.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/added_formatters.js
deleted file mode 100644 (file)
index 3c99c4a..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-'use strict';
-
-var util    = require('util');
-var _       = require('lodash');
-
-
-// Constants
-var $$ = require('../const');
-
-var HelpFormatter = require('./formatter.js');
-
-/**
- * new RawDescriptionHelpFormatter(options)
- * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...})
- *
- * Help message formatter which adds default values to argument help.
- *
- * Only the name of this class is considered a public API. All the methods
- * provided by the class are considered an implementation detail.
- **/
-
-var ArgumentDefaultsHelpFormatter = function ArgumentDefaultsHelpFormatter(options) {
-  HelpFormatter.call(this, options);
-};
-
-util.inherits(ArgumentDefaultsHelpFormatter, HelpFormatter);
-
-ArgumentDefaultsHelpFormatter.prototype._getHelpString = function (action) {
-  var help = action.help;
-  if (action.help.indexOf('%(defaultValue)s') === -1) {
-    if (action.defaultValue !== $$.SUPPRESS) {
-      var defaulting_nargs = [$$.OPTIONAL, $$.ZERO_OR_MORE];
-      if (action.isOptional() || (defaulting_nargs.indexOf(action.nargs) >= 0)) {
-        help += ' (default: %(defaultValue)s)';
-      }
-    }
-  }
-  return help;
-};
-
-module.exports.ArgumentDefaultsHelpFormatter = ArgumentDefaultsHelpFormatter;
-
-/**
- * new RawDescriptionHelpFormatter(options)
- * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...})
- *
- * Help message formatter which retains any formatting in descriptions.
- *
- * Only the name of this class is considered a public API. All the methods
- * provided by the class are considered an implementation detail.
- **/
-
-var RawDescriptionHelpFormatter = function RawDescriptionHelpFormatter(options) {
-  HelpFormatter.call(this, options);
-};
-
-util.inherits(RawDescriptionHelpFormatter, HelpFormatter);
-
-RawDescriptionHelpFormatter.prototype._fillText = function (text, width, indent) {
-  var lines = text.split('\n');
-  lines = lines.map(function (line) {
-      return _.trimRight(indent + line);
-    });
-  return lines.join('\n');
-};
-module.exports.RawDescriptionHelpFormatter = RawDescriptionHelpFormatter;
-
-/**
- * new RawTextHelpFormatter(options)
- * new ArgumentParser({formatterClass: argparse.RawTextHelpFormatter, ...})
- *
- * Help message formatter which retains formatting of all help text.
- *
- * Only the name of this class is considered a public API. All the methods
- * provided by the class are considered an implementation detail.
- **/
-
-var RawTextHelpFormatter = function RawTextHelpFormatter(options) {
-  RawDescriptionHelpFormatter.call(this, options);
-};
-
-util.inherits(RawTextHelpFormatter, RawDescriptionHelpFormatter);
-
-RawTextHelpFormatter.prototype._splitLines = function (text) {
-  return text.split('\n');
-};
-
-module.exports.RawTextHelpFormatter = RawTextHelpFormatter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/formatter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/help/formatter.js
deleted file mode 100644 (file)
index e050728..0000000
+++ /dev/null
@@ -1,798 +0,0 @@
-/**
- * class HelpFormatter
- *
- * Formatter for generating usage messages and argument help strings. Only the
- * name of this class is considered a public API. All the methods provided by
- * the class are considered an implementation detail.
- *
- * Do not call in your code, use this class only for inherits your own forvatter
- *
- * ToDo add [additonal formatters][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#formatter-class
- **/
-'use strict';
-
-var _ = require('lodash');
-var sprintf = require('sprintf-js').sprintf;
-
-// Constants
-var $$ = require('../const');
-
-
-/*:nodoc:* internal
- * new Support(parent, heding)
- * - parent (object): parent section
- * - heading (string): header string
- *
- **/
-function Section(parent, heading) {
-  this._parent = parent;
-  this._heading = heading;
-  this._items = [];
-}
-
-/*:nodoc:* internal
- * Section#addItem(callback) -> Void
- * - callback (array): tuple with function and args
- *
- * Add function for single element
- **/
-Section.prototype.addItem = function (callback) {
-  this._items.push(callback);
-};
-
-/*:nodoc:* internal
- * Section#formatHelp(formatter) -> string
- * - formatter (HelpFormatter): current formatter
- *
- * Form help section string
- *
- **/
-Section.prototype.formatHelp = function (formatter) {
-  var itemHelp, heading;
-
-  // format the indented section
-  if (!!this._parent) {
-    formatter._indent();
-  }
-
-  itemHelp = this._items.map(function (item) {
-    var obj, func, args;
-
-    obj = formatter;
-    func = item[0];
-    args = item[1];
-    return func.apply(obj, args);
-  });
-  itemHelp = formatter._joinParts(itemHelp);
-
-  if (!!this._parent) {
-    formatter._dedent();
-  }
-
-  // return nothing if the section was empty
-  if (!itemHelp) {
-    return '';
-  }
-
-  // add the heading if the section was non-empty
-  heading = '';
-  if (!!this._heading && this._heading !== $$.SUPPRESS) {
-    var currentIndent = formatter.currentIndent;
-    heading = _.repeat(' ', currentIndent) + this._heading + ':' + $$.EOL;
-  }
-
-  // join the section-initialize newline, the heading and the help
-  return formatter._joinParts([$$.EOL, heading, itemHelp, $$.EOL]);
-};
-
-/**
- * new HelpFormatter(options)
- *
- * #### Options:
- * - `prog`: program name
- * - `indentIncriment`: indent step, default value 2
- * - `maxHelpPosition`: max help position, default value = 24
- * - `width`: line width
- *
- **/
-var HelpFormatter = module.exports = function HelpFormatter(options) {
-  options = options || {};
-
-  this._prog = options.prog;
-
-  this._maxHelpPosition = options.maxHelpPosition || 24;
-  this._width = (options.width || ((process.env.COLUMNS || 80) - 2));
-
-  this._currentIndent = 0;
-  this._indentIncriment = options.indentIncriment || 2;
-  this._level = 0;
-  this._actionMaxLength = 0;
-
-  this._rootSection = new Section(null);
-  this._currentSection = this._rootSection;
-
-  this._whitespaceMatcher = new RegExp('\\s+', 'g');
-  this._longBreakMatcher = new RegExp($$.EOL + $$.EOL + $$.EOL + '+', 'g');
-};
-
-HelpFormatter.prototype._indent = function () {
-  this._currentIndent += this._indentIncriment;
-  this._level += 1;
-};
-
-HelpFormatter.prototype._dedent = function () {
-  this._currentIndent -= this._indentIncriment;
-  this._level -= 1;
-  if (this._currentIndent < 0) {
-    throw new Error('Indent decreased below 0.');
-  }
-};
-
-HelpFormatter.prototype._addItem = function (func, args) {
-  this._currentSection.addItem([func, args]);
-};
-
-//
-// Message building methods
-//
-
-/**
- * HelpFormatter#startSection(heading) -> Void
- * - heading (string): header string
- *
- * Start new help section
- *
- * See alse [code example][1]
- *
- * ##### Example
- *
- *      formatter.startSection(actionGroup.title);
- *      formatter.addText(actionGroup.description);
- *      formatter.addArguments(actionGroup._groupActions);
- *      formatter.endSection();
- *
- **/
-HelpFormatter.prototype.startSection = function (heading) {
-  this._indent();
-  var section = new Section(this._currentSection, heading);
-  var func = section.formatHelp.bind(section);
-  this._addItem(func, [this]);
-  this._currentSection = section;
-};
-
-/**
- * HelpFormatter#endSection -> Void
- *
- * End help section
- *
- * ##### Example
- *
- *      formatter.startSection(actionGroup.title);
- *      formatter.addText(actionGroup.description);
- *      formatter.addArguments(actionGroup._groupActions);
- *      formatter.endSection();
- **/
-HelpFormatter.prototype.endSection = function () {
-  this._currentSection = this._currentSection._parent;
-  this._dedent();
-};
-
-/**
- * HelpFormatter#addText(text) -> Void
- * - text (string): plain text
- *
- * Add plain text into current section
- *
- * ##### Example
- *
- *      formatter.startSection(actionGroup.title);
- *      formatter.addText(actionGroup.description);
- *      formatter.addArguments(actionGroup._groupActions);
- *      formatter.endSection();
- *
- **/
-HelpFormatter.prototype.addText = function (text) {
-  if (!!text && text !== $$.SUPPRESS) {
-    this._addItem(this._formatText, [text]);
-  }
-};
-
-/**
- * HelpFormatter#addUsage(usage, actions, groups, prefix) -> Void
- * - usage (string): usage text
- * - actions (array): actions list
- * - groups (array): groups list
- * - prefix (string): usage prefix
- *
- * Add usage data into current section
- *
- * ##### Example
- *
- *      formatter.addUsage(this.usage, this._actions, []);
- *      return formatter.formatHelp();
- *
- **/
-HelpFormatter.prototype.addUsage = function (usage, actions, groups, prefix) {
-  if (usage !== $$.SUPPRESS) {
-    this._addItem(this._formatUsage, [usage, actions, groups, prefix]);
-  }
-};
-
-/**
- * HelpFormatter#addArgument(action) -> Void
- * - action (object): action
- *
- * Add argument into current section
- *
- * Single variant of [[HelpFormatter#addArguments]]
- **/
-HelpFormatter.prototype.addArgument = function (action) {
-  if (action.help !== $$.SUPPRESS) {
-    var self = this;
-
-    // find all invocations
-    var invocations = [this._formatActionInvocation(action)];
-    var invocationLength = invocations[0].length;
-
-    var actionLength;
-
-    if (!!action._getSubactions) {
-      this._indent();
-      action._getSubactions().forEach(function (subaction) {
-
-        var invocationNew = self._formatActionInvocation(subaction);
-        invocations.push(invocationNew);
-        invocationLength = Math.max(invocationLength, invocationNew.length);
-
-      });
-      this._dedent();
-    }
-
-    // update the maximum item length
-    actionLength = invocationLength + this._currentIndent;
-    this._actionMaxLength = Math.max(this._actionMaxLength, actionLength);
-
-    // add the item to the list
-    this._addItem(this._formatAction, [action]);
-  }
-};
-
-/**
- * HelpFormatter#addArguments(actions) -> Void
- * - actions (array): actions list
- *
- * Mass add arguments into current section
- *
- * ##### Example
- *
- *      formatter.startSection(actionGroup.title);
- *      formatter.addText(actionGroup.description);
- *      formatter.addArguments(actionGroup._groupActions);
- *      formatter.endSection();
- *
- **/
-HelpFormatter.prototype.addArguments = function (actions) {
-  var self = this;
-  actions.forEach(function (action) {
-    self.addArgument(action);
-  });
-};
-
-//
-// Help-formatting methods
-//
-
-/**
- * HelpFormatter#formatHelp -> string
- *
- * Format help
- *
- * ##### Example
- *
- *      formatter.addText(this.epilog);
- *      return formatter.formatHelp();
- *
- **/
-HelpFormatter.prototype.formatHelp = function () {
-  var help = this._rootSection.formatHelp(this);
-  if (help) {
-    help = help.replace(this._longBreakMatcher, $$.EOL + $$.EOL);
-    help = _.trim(help, $$.EOL) + $$.EOL;
-  }
-  return help;
-};
-
-HelpFormatter.prototype._joinParts = function (partStrings) {
-  return partStrings.filter(function (part) {
-    return (!!part && part !== $$.SUPPRESS);
-  }).join('');
-};
-
-HelpFormatter.prototype._formatUsage = function (usage, actions, groups, prefix) {
-  if (!prefix && !_.isString(prefix)) {
-    prefix = 'usage: ';
-  }
-
-  actions = actions || [];
-  groups = groups || [];
-
-
-  // if usage is specified, use that
-  if (usage) {
-    usage = sprintf(usage, {prog: this._prog});
-
-    // if no optionals or positionals are available, usage is just prog
-  } else if (!usage && actions.length === 0) {
-    usage = this._prog;
-
-    // if optionals and positionals are available, calculate usage
-  } else if (!usage) {
-    var prog = this._prog;
-    var optionals = [];
-    var positionals = [];
-    var actionUsage;
-    var textWidth;
-
-    // split optionals from positionals
-    actions.forEach(function (action) {
-      if (action.isOptional()) {
-        optionals.push(action);
-      } else {
-        positionals.push(action);
-      }
-    });
-
-    // build full usage string
-    actionUsage = this._formatActionsUsage([].concat(optionals, positionals), groups);
-    usage = [prog, actionUsage].join(' ');
-
-    // wrap the usage parts if it's too long
-    textWidth = this._width - this._currentIndent;
-    if ((prefix.length + usage.length) > textWidth) {
-
-      // break usage into wrappable parts
-      var regexpPart = new RegExp('\\(.*?\\)+|\\[.*?\\]+|\\S+', 'g');
-      var optionalUsage = this._formatActionsUsage(optionals, groups);
-      var positionalUsage = this._formatActionsUsage(positionals, groups);
-
-
-      var optionalParts = optionalUsage.match(regexpPart);
-      var positionalParts = positionalUsage.match(regexpPart) || [];
-
-      if (optionalParts.join(' ') !== optionalUsage) {
-        throw new Error('assert "optionalParts.join(\' \') === optionalUsage"');
-      }
-      if (positionalParts.join(' ') !== positionalUsage) {
-        throw new Error('assert "positionalParts.join(\' \') === positionalUsage"');
-      }
-
-      // helper for wrapping lines
-      var _getLines = function (parts, indent, prefix) {
-        var lines = [];
-        var line = [];
-
-        var lineLength = !!prefix ? prefix.length - 1: indent.length - 1;
-
-        parts.forEach(function (part) {
-          if (lineLength + 1 + part.length > textWidth) {
-            lines.push(indent + line.join(' '));
-            line = [];
-            lineLength = indent.length - 1;
-          }
-          line.push(part);
-          lineLength += part.length + 1;
-        });
-
-        if (line) {
-          lines.push(indent + line.join(' '));
-        }
-        if (prefix) {
-          lines[0] = lines[0].substr(indent.length);
-        }
-        return lines;
-      };
-
-      var lines, indent, parts;
-      // if prog is short, follow it with optionals or positionals
-      if (prefix.length + prog.length <= 0.75 * textWidth) {
-        indent = _.repeat(' ', (prefix.length + prog.length + 1));
-        if (optionalParts) {
-          lines = [].concat(
-            _getLines([prog].concat(optionalParts), indent, prefix),
-            _getLines(positionalParts, indent)
-          );
-        } else if (positionalParts) {
-          lines = _getLines([prog].concat(positionalParts), indent, prefix);
-        } else {
-          lines = [prog];
-        }
-
-        // if prog is long, put it on its own line
-      } else {
-        indent = _.repeat(' ', prefix.length);
-        parts = optionalParts + positionalParts;
-        lines = _getLines(parts, indent);
-        if (lines.length > 1) {
-          lines = [].concat(
-            _getLines(optionalParts, indent),
-            _getLines(positionalParts, indent)
-          );
-        }
-        lines = [prog] + lines;
-      }
-      // join lines into usage
-      usage = lines.join($$.EOL);
-    }
-  }
-
-  // prefix with 'usage:'
-  return prefix + usage + $$.EOL + $$.EOL;
-};
-
-HelpFormatter.prototype._formatActionsUsage = function (actions, groups) {
-  // find group indices and identify actions in groups
-  var groupActions = [];
-  var inserts = [];
-  var self = this;
-
-  groups.forEach(function (group) {
-    var end;
-    var i;
-
-    var start = actions.indexOf(group._groupActions[0]);
-    if (start >= 0) {
-      end = start + group._groupActions.length;
-
-      //if (actions.slice(start, end) === group._groupActions) {
-      if (_.isEqual(actions.slice(start, end), group._groupActions)) {
-        group._groupActions.forEach(function (action) {
-          groupActions.push(action);
-        });
-
-        if (!group.required) {
-          if (!!inserts[start]) {
-            inserts[start] += ' [';
-          }
-          else {
-            inserts[start] = '[';
-          }
-          inserts[end] = ']';
-        } else {
-          if (!!inserts[start]) {
-            inserts[start] += ' (';
-          }
-          else {
-            inserts[start] = '(';
-          }
-          inserts[end] = ')';
-        }
-        for (i = start + 1; i < end; i += 1) {
-          inserts[i] = '|';
-        }
-      }
-    }
-  });
-
-  // collect all actions format strings
-  var parts = [];
-
-  actions.forEach(function (action, actionIndex) {
-    var part;
-    var optionString;
-    var argsDefault;
-    var argsString;
-
-    // suppressed arguments are marked with None
-    // remove | separators for suppressed arguments
-    if (action.help === $$.SUPPRESS) {
-      parts.push(null);
-      if (inserts[actionIndex] === '|') {
-        inserts.splice(actionIndex, actionIndex);
-      } else if (inserts[actionIndex + 1] === '|') {
-        inserts.splice(actionIndex + 1, actionIndex + 1);
-      }
-
-      // produce all arg strings
-    } else if (!action.isOptional()) {
-      part = self._formatArgs(action, action.dest);
-
-      // if it's in a group, strip the outer []
-      if (groupActions.indexOf(action) >= 0) {
-        if (part[0] === '[' && part[part.length - 1] === ']') {
-          part = part.slice(1, -1);
-        }
-      }
-      // add the action string to the list
-      parts.push(part);
-
-    // produce the first way to invoke the option in brackets
-    } else {
-      optionString = action.optionStrings[0];
-
-      // if the Optional doesn't take a value, format is: -s or --long
-      if (action.nargs === 0) {
-        part = '' + optionString;
-
-      // if the Optional takes a value, format is: -s ARGS or --long ARGS
-      } else {
-        argsDefault = action.dest.toUpperCase();
-        argsString = self._formatArgs(action, argsDefault);
-        part = optionString + ' ' + argsString;
-      }
-      // make it look optional if it's not required or in a group
-      if (!action.required && groupActions.indexOf(action) < 0) {
-        part = '[' + part + ']';
-      }
-      // add the action string to the list
-      parts.push(part);
-    }
-  });
-
-  // insert things at the necessary indices
-  for (var i = inserts.length - 1; i >= 0; --i) {
-    if (inserts[i] !== null) {
-      parts.splice(i, 0, inserts[i]);
-    }
-  }
-
-  // join all the action items with spaces
-  var text = parts.filter(function (part) {
-    return !!part;
-  }).join(' ');
-
-  // clean up separators for mutually exclusive groups
-  text = text.replace(/([\[(]) /g, '$1'); // remove spaces
-  text = text.replace(/ ([\])])/g, '$1');
-  text = text.replace(/\[ *\]/g, ''); // remove empty groups
-  text = text.replace(/\( *\)/g, '');
-  text = text.replace(/\(([^|]*)\)/g, '$1'); // remove () from single action groups
-
-  text = _.trim(text);
-
-  // return the text
-  return text;
-};
-
-HelpFormatter.prototype._formatText = function (text) {
-  text = sprintf(text, {prog: this._prog});
-  var textWidth = this._width - this._currentIndent;
-  var indentIncriment = _.repeat(' ', this._currentIndent);
-  return this._fillText(text, textWidth, indentIncriment) + $$.EOL + $$.EOL;
-};
-
-HelpFormatter.prototype._formatAction = function (action) {
-  var self = this;
-
-  var helpText;
-  var helpLines;
-  var parts;
-  var indentFirst;
-
-  // determine the required width and the entry label
-  var helpPosition = Math.min(this._actionMaxLength + 2, this._maxHelpPosition);
-  var helpWidth = this._width - helpPosition;
-  var actionWidth = helpPosition - this._currentIndent - 2;
-  var actionHeader = this._formatActionInvocation(action);
-
-  // no help; start on same line and add a final newline
-  if (!action.help) {
-    actionHeader = _.repeat(' ', this._currentIndent) + actionHeader + $$.EOL;
-
-  // short action name; start on the same line and pad two spaces
-  } else if (actionHeader.length <= actionWidth) {
-    actionHeader = _.repeat(' ', this._currentIndent) +
-        actionHeader +
-        '  ' +
-        _.repeat(' ', actionWidth - actionHeader.length);
-    indentFirst = 0;
-
-  // long action name; start on the next line
-  } else {
-    actionHeader = _.repeat(' ', this._currentIndent) + actionHeader + $$.EOL;
-    indentFirst = helpPosition;
-  }
-
-  // collect the pieces of the action help
-  parts = [actionHeader];
-
-  // if there was help for the action, add lines of help text
-  if (!!action.help) {
-    helpText = this._expandHelp(action);
-    helpLines = this._splitLines(helpText, helpWidth);
-    parts.push(_.repeat(' ', indentFirst) + helpLines[0] + $$.EOL);
-    helpLines.slice(1).forEach(function (line) {
-      parts.push(_.repeat(' ', helpPosition) + line + $$.EOL);
-    });
-
-  // or add a newline if the description doesn't end with one
-  } else if (actionHeader.charAt(actionHeader.length - 1) !== $$.EOL) {
-    parts.push($$.EOL);
-  }
-  // if there are any sub-actions, add their help as well
-  if (!!action._getSubactions) {
-    this._indent();
-    action._getSubactions().forEach(function (subaction) {
-      parts.push(self._formatAction(subaction));
-    });
-    this._dedent();
-  }
-  // return a single string
-  return this._joinParts(parts);
-};
-
-HelpFormatter.prototype._formatActionInvocation = function (action) {
-  if (!action.isOptional()) {
-    var format_func = this._metavarFormatter(action, action.dest);
-    var metavars = format_func(1);
-    return metavars[0];
-  } else {
-    var parts = [];
-    var argsDefault;
-    var argsString;
-
-    // if the Optional doesn't take a value, format is: -s, --long
-    if (action.nargs === 0) {
-      parts = parts.concat(action.optionStrings);
-
-    // if the Optional takes a value, format is: -s ARGS, --long ARGS
-    } else {
-      argsDefault = action.dest.toUpperCase();
-      argsString = this._formatArgs(action, argsDefault);
-      action.optionStrings.forEach(function (optionString) {
-        parts.push(optionString + ' ' + argsString);
-      });
-    }
-    return parts.join(', ');
-  }
-};
-
-HelpFormatter.prototype._metavarFormatter = function (action, metavarDefault) {
-  var result;
-
-  if (!!action.metavar || action.metavar === '') {
-    result = action.metavar;
-  } else if (!!action.choices) {
-    var choices = action.choices;
-
-    if (_.isString(choices)) {
-      choices = choices.split('').join(', ');
-    } else if (_.isArray(choices)) {
-      choices = choices.join(',');
-    }
-    else
-    {
-      choices = _.keys(choices).join(',');
-    }
-    result = '{' + choices + '}';
-  } else {
-    result = metavarDefault;
-  }
-
-  return function (size) {
-    if (Array.isArray(result)) {
-      return result;
-    } else {
-      var metavars = [];
-      for (var i = 0; i < size; i += 1) {
-        metavars.push(result);
-      }
-      return metavars;
-    }
-  };
-};
-
-HelpFormatter.prototype._formatArgs = function (action, metavarDefault) {
-  var result;
-  var metavars;
-
-  var buildMetavar = this._metavarFormatter(action, metavarDefault);
-
-  switch (action.nargs) {
-  case undefined:
-  case null:
-    metavars = buildMetavar(1);
-    result = '' + metavars[0];
-    break;
-  case $$.OPTIONAL:
-    metavars = buildMetavar(1);
-    result = '[' + metavars[0] + ']';
-    break;
-  case $$.ZERO_OR_MORE:
-    metavars = buildMetavar(2);
-    result = '[' + metavars[0] + ' [' + metavars[1] + ' ...]]';
-    break;
-  case $$.ONE_OR_MORE:
-    metavars = buildMetavar(2);
-    result = '' + metavars[0] + ' [' + metavars[1] + ' ...]';
-    break;
-  case $$.REMAINDER:
-    result = '...';
-    break;
-  case $$.PARSER:
-    metavars = buildMetavar(1);
-    result = metavars[0] + ' ...';
-    break;
-  default:
-    metavars = buildMetavar(action.nargs);
-    result = metavars.join(' ');
-  }
-  return result;
-};
-
-HelpFormatter.prototype._expandHelp = function (action) {
-  var params = { prog: this._prog };
-
-  Object.keys(action).forEach(function (actionProperty) {
-    var actionValue = action[actionProperty];
-
-    if (actionValue !== $$.SUPPRESS) {
-      params[actionProperty] = actionValue;
-    }
-  });
-
-  if (!!params.choices) {
-    if (_.isString(params.choices)) {
-      params.choices = params.choices.split('').join(', ');
-    }
-    else if (_.isArray(params.choices)) {
-      params.choices = params.choices.join(', ');
-    }
-    else {
-      params.choices = _.keys(params.choices).join(', ');
-    }
-  }
-
-  return sprintf(this._getHelpString(action), params);
-};
-
-HelpFormatter.prototype._splitLines = function (text, width) {
-  var lines = [];
-  var delimiters = [" ", ".", ",", "!", "?"];
-  var re = new RegExp('[' + delimiters.join('') + '][^' + delimiters.join('') + ']*$');
-
-  text = text.replace(/[\n\|\t]/g, ' ');
-
-  text = _.trim(text);
-  text = text.replace(this._whitespaceMatcher, ' ');
-
-  // Wraps the single paragraph in text (a string) so every line
-  // is at most width characters long.
-  text.split($$.EOL).forEach(function (line) {
-    if (width >= line.length) {
-      lines.push(line);
-      return;
-    }
-
-    var wrapStart = 0;
-    var wrapEnd = width;
-    var delimiterIndex = 0;
-    while (wrapEnd <= line.length) {
-      if (wrapEnd !== line.length && delimiters.indexOf(line[wrapEnd] < -1)) {
-        delimiterIndex = (re.exec(line.substring(wrapStart, wrapEnd)) || {}).index;
-        wrapEnd = wrapStart + delimiterIndex + 1;
-      }
-      lines.push(line.substring(wrapStart, wrapEnd));
-      wrapStart = wrapEnd;
-      wrapEnd += width;
-    }
-    if (wrapStart < line.length) {
-      lines.push(line.substring(wrapStart, wrapEnd));
-    }
-  });
-
-  return lines;
-};
-
-HelpFormatter.prototype._fillText = function (text, width, indent) {
-  var lines = this._splitLines(text, width);
-  lines = lines.map(function (line) {
-    return indent + line;
-  });
-  return lines.join($$.EOL);
-};
-
-HelpFormatter.prototype._getHelpString = function (action) {
-  return action.help;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/namespace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/lib/namespace.js
deleted file mode 100644 (file)
index 2f1f8f4..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/**
- * class Namespace
- *
- * Simple object for storing attributes. Implements equality by attribute names
- * and values, and provides a simple string representation.
- *
- * See also [original guide][1]
- *
- * [1]:http://docs.python.org/dev/library/argparse.html#the-namespace-object
- **/
-'use strict';
-
-var _ = require('lodash');
-
-/**
- * new Namespace(options)
- * - options(object): predefined propertis for result object
- *
- **/
-var Namespace = module.exports = function Namespace(options) {
-  _.extend(this, options);
-};
-
-/**
- * Namespace#isset(key) -> Boolean
- * - key (string|number): property name
- *
- * Tells whenever `namespace` contains given `key` or not.
- **/
-Namespace.prototype.isset = function (key) {
-  return _.has(this, key);
-};
-
-/**
- * Namespace#set(key, value) -> self
- * -key (string|number|object): propery name
- * -value (mixed): new property value
- *
- * Set the property named key with value.
- * If key object then set all key properties to namespace object
- **/
-Namespace.prototype.set = function (key, value) {
-  if (typeof (key) === 'object') {
-    _.extend(this, key);
-  } else {
-    this[key] = value;
-  }
-  return this;
-};
-
-/**
- * Namespace#get(key, defaultValue) -> mixed
- * - key (string|number): property name
- * - defaultValue (mixed): default value
- *
- * Return the property key or defaulValue if not set
- **/
-Namespace.prototype.get = function (key, defaultValue) {
-  return !this[key] ? defaultValue: this[key];
-};
-
-/**
- * Namespace#unset(key, defaultValue) -> mixed
- * - key (string|number): property name
- * - defaultValue (mixed): default value
- *
- * Return data[key](and delete it) or defaultValue
- **/
-Namespace.prototype.unset = function (key, defaultValue) {
-  var value = this[key];
-  if (value !== null) {
-    delete this[key];
-    return value;
-  } else {
-    return defaultValue;
-  }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/LICENSE.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/LICENSE.txt
deleted file mode 100644 (file)
index 9cd87e5..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
-Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
-DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/README.md
deleted file mode 100644 (file)
index 119b94c..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-# lodash v3.7.0
-
-The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) exported as [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) modules.
-
-Generated using [lodash-cli](https://www.npmjs.com/package/lodash-cli):
-```bash
-$ lodash modularize modern exports=node -o ./
-$ lodash modern -d -o ./index.js
-```
-
-## Installation
-
-Using npm:
-
-```bash
-$ {sudo -H} npm i -g npm
-$ npm i --save lodash
-```
-
-In Node.js/io.js:
-
-```js
-// load the modern build
-var _ = require('lodash');
-// or a method category
-var array = require('lodash/array');
-// or a method (great for smaller builds with browserify/webpack)
-var chunk = require('lodash/array/chunk');
-```
-
-See the [package source](https://github.com/lodash/lodash/tree/3.7.0-npm) for more details.
-
-**Note:**<br>
-Don’t assign values to the [special variable](http://nodejs.org/api/repl.html#repl_repl_features) `_` when in the REPL.<br>
-Install [n_](https://www.npmjs.com/package/n_) for a REPL that includes lodash by default.
-
-## 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
- * AMD modules for [modern](https://github.com/lodash/lodash/tree/3.7.0-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.7.0-amd) builds
- * ES modules for the [modern](https://github.com/lodash/lodash/tree/3.7.0-es) build
-
-## Further Reading
-
-  * [API Documentation](https://lodash.com/docs)
-  * [Build Differences](https://github.com/lodash/lodash/wiki/Build-Differences)
-  * [Changelog](https://github.com/lodash/lodash/wiki/Changelog)
-  * [Release Notes](https://github.com/lodash/lodash/releases)
-  * [Roadmap](https://github.com/lodash/lodash/wiki/Roadmap)
-  * [More Resources](https://github.com/lodash/lodash/wiki/Resources)
-
-## Features
-
- * ~100% [code coverage](https://coveralls.io/r/lodash)
- * Follows [semantic versioning](http://semver.org/) for releases
- * [Lazily evaluated](http://filimanjaro.com/blog/2014/introducing-lazy-evaluation/) chaining
- * [_(…)](https://lodash.com/docs#_) supports intuitive chaining
- * [_.add](https://lodash.com/docs#add) for mathematical composition
- * [_.ary](https://lodash.com/docs#ary) & [_.rearg](https://lodash.com/docs#rearg) to change function argument limits & order
- * [_.at](https://lodash.com/docs#at) for cherry-picking collection values
- * [_.attempt](https://lodash.com/docs#attempt) to execute functions which may error without a try-catch
- * [_.before](https://lodash.com/docs#before) to complement [_.after](https://lodash.com/docs#after)
- * [_.bindKey](https://lodash.com/docs#bindKey) for binding [*“lazy”*](http://michaux.ca/articles/lazy-function-definition-pattern) defined methods
- * [_.chunk](https://lodash.com/docs#chunk) for splitting an array into chunks of a given size
- * [_.clone](https://lodash.com/docs#clone) supports shallow cloning of `Date` & `RegExp` objects
- * [_.cloneDeep](https://lodash.com/docs#cloneDeep) for deep cloning arrays & objects
- * [_.create](https://lodash.com/docs#create) for easier object inheritance
- * [_.curry](https://lodash.com/docs#curry) & [_.curryRight](https://lodash.com/docs#curryRight) for creating [curried](http://hughfdjackson.com/javascript/why-curry-helps/) functions
- * [_.debounce](https://lodash.com/docs#debounce) & [_.throttle](https://lodash.com/docs#throttle) are cancelable & accept options for more control
- * [_.fill](https://lodash.com/docs#fill) to fill arrays with values
- * [_.findKey](https://lodash.com/docs#findKey) for finding keys
- * [_.flow](https://lodash.com/docs#flow) to complement [_.flowRight](https://lodash.com/docs#flowRight) (a.k.a `_.compose`)
- * [_.forEach](https://lodash.com/docs#forEach) supports exiting early
- * [_.forIn](https://lodash.com/docs#forIn) for iterating all enumerable properties
- * [_.forOwn](https://lodash.com/docs#forOwn) for iterating own properties
- * [_.get](https://lodash.com/docs#get) & [_.set](https://lodash.com/docs#set) for deep property getting & setting
- * [_.inRange](https://lodash.com/docs#inRange) for checking whether a number is within a given range
- * [_.isNative](https://lodash.com/docs#isNative) to check for native functions
- * [_.isPlainObject](https://lodash.com/docs#isPlainObject) & [_.toPlainObject](https://lodash.com/docs#toPlainObject) to check for & convert to `Object` objects
- * [_.isTypedArray](https://lodash.com/docs#isTypedArray) to check for typed arrays
- * [_.matches](https://lodash.com/docs#matches) supports deep object comparisons
- * [_.matchesProperty](https://lodash.com/docs#matchesProperty) to complement [_.matches](https://lodash.com/docs#matches) & [_.property](https://lodash.com/docs#property)
- * [_.method](https://lodash.com/docs#method) & [_.methodOf](https://lodash.com/docs#methodOf) to create functions that invoke methods
- * [_.merge](https://lodash.com/docs#merge) for a deep [_.extend](https://lodash.com/docs#extend)
- * [_.parseInt](https://lodash.com/docs#parseInt) for consistent cross-environment behavior
- * [_.pull](https://lodash.com/docs#pull), [_.pullAt](https://lodash.com/docs#pullAt), & [_.remove](https://lodash.com/docs#remove) for mutating arrays
- * [_.random](https://lodash.com/docs#random) supports returning floating-point numbers
- * [_.restParam](https://lodash.com/docs#restParam) & [_.spread](https://lodash.com/docs#spread) for applying rest parameters & spreading arguments to functions
- * [_.runInContext](https://lodash.com/docs#runInContext) for collisionless mixins & easier mocking
- * [_.slice](https://lodash.com/docs#slice) for creating subsets of array-like values
- * [_.sortByAll](https://lodash.com/docs#sortByAll) & [_.sortByOrder](https://lodash.com/docs#sortByOrder) for sorting by multiple properties & orders
- * [_.sum](https://lodash.com/docs#sum) to get the sum of values
- * [_.support](https://lodash.com/docs#support) for flagging environment features
- * [_.template](https://lodash.com/docs#template) supports [*“imports”*](https://lodash.com/docs#templateSettings-imports) options & [ES template delimiters](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-template-literal-lexical-components)
- * [_.transform](https://lodash.com/docs#transform) as a powerful alternative to [_.reduce](https://lodash.com/docs#reduce) for transforming objects
- * [_.xor](https://lodash.com/docs#xor) to complement [_.difference](https://lodash.com/docs#difference), [_.intersection](https://lodash.com/docs#intersection), & [_.union](https://lodash.com/docs#union)
- * [_.valuesIn](https://lodash.com/docs#valuesIn) for getting values of all enumerable properties
- * [_.bind](https://lodash.com/docs#bind), [_.curry](https://lodash.com/docs#curry), [_.partial](https://lodash.com/docs#partial), &
-   [more](https://lodash.com/docs "_.bindKey, _.curryRight, _.partialRight") support customizable argument placeholders
- * [_.capitalize](https://lodash.com/docs#capitalize), [_.trim](https://lodash.com/docs#trim), &
-   [more](https://lodash.com/docs "_.camelCase, _.deburr, _.endsWith, _.escapeRegExp, _.kebabCase, _.pad, _.padLeft, _.padRight, _.repeat, _.snakeCase, _.startCase, _.startsWith, _.trimLeft, _.trimRight, _.trunc, _.words") string methods
- * [_.clone](https://lodash.com/docs#clone), [_.isEqual](https://lodash.com/docs#isEqual), &
-   [more](https://lodash.com/docs "_.assign, _.cloneDeep, _.merge") accept callbacks
- * [_.dropWhile](https://lodash.com/docs#dropWhile), [_.takeWhile](https://lodash.com/docs#takeWhile), &
-   [more](https://lodash.com/docs "_.drop, _.dropRightWhile, _.take, _.takeRightWhile") to complement [_.first](https://lodash.com/docs#first), [_.initial](https://lodash.com/docs#initial), [_.last](https://lodash.com/docs#last), & [_.rest](https://lodash.com/docs#rest)
- * [_.findLast](https://lodash.com/docs#findLast), [_.findLastKey](https://lodash.com/docs#findLastKey), &
-   [more](https://lodash.com/docs "_.flowRight, _.forEachRight, _.forInRight, _.forOwnRight, _.partialRight") right-associative methods
- * [_.includes](https://lodash.com/docs#includes), [_.toArray](https://lodash.com/docs#toArray), &
-   [more](https://lodash.com/docs "_.at, _.countBy, _.every, _.filter, _.find, _.findLast, _.forEach, _.forEachRight, _.groupBy, _.indexBy, _.invoke, _.map, _.max, _.min, _.partition, _.pluck, _.reduce, _.reduceRight, _.reject, _.shuffle, _.size, _.some, _.sortBy") accept strings
- * [_#commit](https://lodash.com/docs#prototype-commit) & [_#plant](https://lodash.com/docs#prototype-plant) for working with chain sequences
- * [_#thru](https://lodash.com/docs#thru) to pass values thru a chain sequence
-
-## Support
-
-Tested in Chrome 41-42, Firefox 36-37, IE 6-11, Opera 27-28, Safari 5-8, io.js 1.7.1, Node.js 0.8.28, 0.10.38, & 0.12.2, PhantomJS 1.9.8, RingoJS 0.11, & Rhino 1.7RC5.
-Automated [browser](https://saucelabs.com/u/lodash) & [CI](https://travis-ci.org/lodash/lodash/) test runs are available. Special thanks to [Sauce Labs](https://saucelabs.com/) for providing automated browser testing.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array.js
deleted file mode 100644 (file)
index 6ef12c7..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-module.exports = {
-  'chunk': require('./array/chunk'),
-  'compact': require('./array/compact'),
-  'difference': require('./array/difference'),
-  'drop': require('./array/drop'),
-  'dropRight': require('./array/dropRight'),
-  'dropRightWhile': require('./array/dropRightWhile'),
-  'dropWhile': require('./array/dropWhile'),
-  'fill': require('./array/fill'),
-  'findIndex': require('./array/findIndex'),
-  'findLastIndex': require('./array/findLastIndex'),
-  'first': require('./array/first'),
-  'flatten': require('./array/flatten'),
-  'flattenDeep': require('./array/flattenDeep'),
-  'head': require('./array/head'),
-  'indexOf': require('./array/indexOf'),
-  'initial': require('./array/initial'),
-  'intersection': require('./array/intersection'),
-  'last': require('./array/last'),
-  'lastIndexOf': require('./array/lastIndexOf'),
-  'object': require('./array/object'),
-  'pull': require('./array/pull'),
-  'pullAt': require('./array/pullAt'),
-  'remove': require('./array/remove'),
-  'rest': require('./array/rest'),
-  'slice': require('./array/slice'),
-  'sortedIndex': require('./array/sortedIndex'),
-  'sortedLastIndex': require('./array/sortedLastIndex'),
-  'tail': require('./array/tail'),
-  'take': require('./array/take'),
-  'takeRight': require('./array/takeRight'),
-  'takeRightWhile': require('./array/takeRightWhile'),
-  'takeWhile': require('./array/takeWhile'),
-  'union': require('./array/union'),
-  'uniq': require('./array/uniq'),
-  'unique': require('./array/unique'),
-  'unzip': require('./array/unzip'),
-  'without': require('./array/without'),
-  'xor': require('./array/xor'),
-  'zip': require('./array/zip'),
-  'zipObject': require('./array/zipObject')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/chunk.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/chunk.js
deleted file mode 100644 (file)
index 4de9b39..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/** Native method references. */
-var ceil = Math.ceil;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates an array of elements split into groups the length of `size`.
- * If `collection` can't be split evenly, the final chunk will be the remaining
- * elements.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to process.
- * @param {number} [size=1] The length of each chunk.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the new array containing chunks.
- * @example
- *
- * _.chunk(['a', 'b', 'c', 'd'], 2);
- * // => [['a', 'b'], ['c', 'd']]
- *
- * _.chunk(['a', 'b', 'c', 'd'], 3);
- * // => [['a', 'b', 'c'], ['d']]
- */
-function chunk(array, size, guard) {
-  if (guard ? isIterateeCall(array, size, guard) : size == null) {
-    size = 1;
-  } else {
-    size = nativeMax(+size || 1, 1);
-  }
-  var index = 0,
-      length = array ? array.length : 0,
-      resIndex = -1,
-      result = Array(ceil(length / size));
-
-  while (index < length) {
-    result[++resIndex] = baseSlice(array, index, (index += size));
-  }
-  return result;
-}
-
-module.exports = chunk;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/compact.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/compact.js
deleted file mode 100644 (file)
index 1dc1c55..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/**
- * Creates an array with all falsey values removed. The values `false`, `null`,
- * `0`, `""`, `undefined`, and `NaN` are falsey.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to compact.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * _.compact([0, 1, false, 2, '', 3]);
- * // => [1, 2, 3]
- */
-function compact(array) {
-  var index = -1,
-      length = array ? array.length : 0,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    var value = array[index];
-    if (value) {
-      result[++resIndex] = value;
-    }
-  }
-  return result;
-}
-
-module.exports = compact;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/difference.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/difference.js
deleted file mode 100644 (file)
index 277b836..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var baseDifference = require('../internal/baseDifference'),
-    baseFlatten = require('../internal/baseFlatten'),
-    isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates an array excluding all values of the provided arrays using
- * `SameValueZero` for equality comparisons.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {...Array} [values] The arrays of values to exclude.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * _.difference([1, 2, 3], [4, 2]);
- * // => [1, 3]
- */
-var difference = restParam(function(array, values) {
-  return (isArray(array) || isArguments(array))
-    ? baseDifference(array, baseFlatten(values, false, true))
-    : [];
-});
-
-module.exports = difference;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/drop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/drop.js
deleted file mode 100644 (file)
index 039a0b5..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a slice of `array` with `n` elements dropped from the beginning.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to drop.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.drop([1, 2, 3]);
- * // => [2, 3]
- *
- * _.drop([1, 2, 3], 2);
- * // => [3]
- *
- * _.drop([1, 2, 3], 5);
- * // => []
- *
- * _.drop([1, 2, 3], 0);
- * // => [1, 2, 3]
- */
-function drop(array, n, guard) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (guard ? isIterateeCall(array, n, guard) : n == null) {
-    n = 1;
-  }
-  return baseSlice(array, n < 0 ? 0 : n);
-}
-
-module.exports = drop;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRight.js
deleted file mode 100644 (file)
index 14b5eb6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a slice of `array` with `n` elements dropped from the end.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to drop.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.dropRight([1, 2, 3]);
- * // => [1, 2]
- *
- * _.dropRight([1, 2, 3], 2);
- * // => [1]
- *
- * _.dropRight([1, 2, 3], 5);
- * // => []
- *
- * _.dropRight([1, 2, 3], 0);
- * // => [1, 2, 3]
- */
-function dropRight(array, n, guard) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (guard ? isIterateeCall(array, n, guard) : n == null) {
-    n = 1;
-  }
-  n = length - (+n || 0);
-  return baseSlice(array, 0, n < 0 ? 0 : n);
-}
-
-module.exports = dropRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRightWhile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropRightWhile.js
deleted file mode 100644 (file)
index be158bd..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseWhile = require('../internal/baseWhile');
-
-/**
- * Creates a slice of `array` excluding elements dropped from the end.
- * Elements are dropped until `predicate` returns falsey. The predicate is
- * bound to `thisArg` and invoked with three arguments: (value, index, array).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that match the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.dropRightWhile([1, 2, 3], function(n) {
- *   return n > 1;
- * });
- * // => [1]
- *
- * var users = [
- *   { 'user': 'barney',  'active': true },
- *   { 'user': 'fred',    'active': false },
- *   { 'user': 'pebbles', 'active': false }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.dropRightWhile(users, { 'user': 'pebbles', 'active': false }), 'user');
- * // => ['barney', 'fred']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.dropRightWhile(users, 'active', false), 'user');
- * // => ['barney']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.dropRightWhile(users, 'active'), 'user');
- * // => ['barney', 'fred', 'pebbles']
- */
-function dropRightWhile(array, predicate, thisArg) {
-  return (array && array.length)
-    ? baseWhile(array, baseCallback(predicate, thisArg, 3), true, true)
-    : [];
-}
-
-module.exports = dropRightWhile;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropWhile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/dropWhile.js
deleted file mode 100644 (file)
index d9eabae..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseWhile = require('../internal/baseWhile');
-
-/**
- * Creates a slice of `array` excluding elements dropped from the beginning.
- * Elements are dropped until `predicate` returns falsey. The predicate is
- * bound to `thisArg` and invoked with three arguments: (value, index, array).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.dropWhile([1, 2, 3], function(n) {
- *   return n < 3;
- * });
- * // => [3]
- *
- * var users = [
- *   { 'user': 'barney',  'active': false },
- *   { 'user': 'fred',    'active': false },
- *   { 'user': 'pebbles', 'active': true }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.dropWhile(users, { 'user': 'barney', 'active': false }), 'user');
- * // => ['fred', 'pebbles']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.dropWhile(users, 'active', false), 'user');
- * // => ['pebbles']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.dropWhile(users, 'active'), 'user');
- * // => ['barney', 'fred', 'pebbles']
- */
-function dropWhile(array, predicate, thisArg) {
-  return (array && array.length)
-    ? baseWhile(array, baseCallback(predicate, thisArg, 3), true)
-    : [];
-}
-
-module.exports = dropWhile;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/fill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/fill.js
deleted file mode 100644 (file)
index 2c8f6da..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var baseFill = require('../internal/baseFill'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Fills elements of `array` with `value` from `start` up to, but not
- * including, `end`.
- *
- * **Note:** This method mutates `array`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to fill.
- * @param {*} value The value to fill `array` with.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [1, 2, 3];
- *
- * _.fill(array, 'a');
- * console.log(array);
- * // => ['a', 'a', 'a']
- *
- * _.fill(Array(3), 2);
- * // => [2, 2, 2]
- *
- * _.fill([4, 6, 8], '*', 1, 2);
- * // => [4, '*', 8]
- */
-function fill(array, value, start, end) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {
-    start = 0;
-    end = length;
-  }
-  return baseFill(array, value, start, end);
-}
-
-module.exports = fill;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findIndex.js
deleted file mode 100644 (file)
index 2a6b8e1..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var createFindIndex = require('../internal/createFindIndex');
-
-/**
- * This method is like `_.find` except that it returns the index of the first
- * element `predicate` returns truthy for instead of the element itself.
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {number} Returns the index of the found element, else `-1`.
- * @example
- *
- * var users = [
- *   { 'user': 'barney',  'active': false },
- *   { 'user': 'fred',    'active': false },
- *   { 'user': 'pebbles', 'active': true }
- * ];
- *
- * _.findIndex(users, function(chr) {
- *   return chr.user == 'barney';
- * });
- * // => 0
- *
- * // using the `_.matches` callback shorthand
- * _.findIndex(users, { 'user': 'fred', 'active': false });
- * // => 1
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.findIndex(users, 'active', false);
- * // => 0
- *
- * // using the `_.property` callback shorthand
- * _.findIndex(users, 'active');
- * // => 2
- */
-var findIndex = createFindIndex();
-
-module.exports = findIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findLastIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/findLastIndex.js
deleted file mode 100644 (file)
index d6d8eca..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var createFindIndex = require('../internal/createFindIndex');
-
-/**
- * This method is like `_.findIndex` except that it iterates over elements
- * of `collection` from right to left.
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {number} Returns the index of the found element, else `-1`.
- * @example
- *
- * var users = [
- *   { 'user': 'barney',  'active': true },
- *   { 'user': 'fred',    'active': false },
- *   { 'user': 'pebbles', 'active': false }
- * ];
- *
- * _.findLastIndex(users, function(chr) {
- *   return chr.user == 'pebbles';
- * });
- * // => 2
- *
- * // using the `_.matches` callback shorthand
- * _.findLastIndex(users, { 'user': 'barney', 'active': true });
- * // => 0
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.findLastIndex(users, 'active', false);
- * // => 2
- *
- * // using the `_.property` callback shorthand
- * _.findLastIndex(users, 'active');
- * // => 0
- */
-var findLastIndex = createFindIndex(true);
-
-module.exports = findLastIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/first.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/first.js
deleted file mode 100644 (file)
index b3b9c79..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Gets the first element of `array`.
- *
- * @static
- * @memberOf _
- * @alias head
- * @category Array
- * @param {Array} array The array to query.
- * @returns {*} Returns the first element of `array`.
- * @example
- *
- * _.first([1, 2, 3]);
- * // => 1
- *
- * _.first([]);
- * // => undefined
- */
-function first(array) {
-  return array ? array[0] : undefined;
-}
-
-module.exports = first;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flatten.js
deleted file mode 100644 (file)
index 65bbeef..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Flattens a nested array. If `isDeep` is `true` the array is recursively
- * flattened, otherwise it is only flattened a single level.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to flatten.
- * @param {boolean} [isDeep] Specify a deep flatten.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * _.flatten([1, [2, 3, [4]]]);
- * // => [1, 2, 3, [4]]
- *
- * // using `isDeep`
- * _.flatten([1, [2, 3, [4]]], true);
- * // => [1, 2, 3, 4]
- */
-function flatten(array, isDeep, guard) {
-  var length = array ? array.length : 0;
-  if (guard && isIterateeCall(array, isDeep, guard)) {
-    isDeep = false;
-  }
-  return length ? baseFlatten(array, isDeep) : [];
-}
-
-module.exports = flatten;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flattenDeep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/flattenDeep.js
deleted file mode 100644 (file)
index 9f775fe..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten');
-
-/**
- * Recursively flattens a nested array.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to recursively flatten.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * _.flattenDeep([1, [2, 3, [4]]]);
- * // => [1, 2, 3, 4]
- */
-function flattenDeep(array) {
-  var length = array ? array.length : 0;
-  return length ? baseFlatten(array, true) : [];
-}
-
-module.exports = flattenDeep;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/head.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/head.js
deleted file mode 100644 (file)
index 1961b08..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./first');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/indexOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/indexOf.js
deleted file mode 100644 (file)
index 9827599..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-var baseIndexOf = require('../internal/baseIndexOf'),
-    binaryIndex = require('../internal/binaryIndex');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Gets the index at which the first occurrence of `value` is found in `array`
- * using `SameValueZero` for equality comparisons. If `fromIndex` is negative,
- * it is used as the offset from the end of `array`. If `array` is sorted
- * providing `true` for `fromIndex` performs a faster binary search.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to search.
- * @param {*} value The value to search for.
- * @param {boolean|number} [fromIndex=0] The index to search from or `true`
- *  to perform a binary search on a sorted array.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.indexOf([1, 2, 1, 2], 2);
- * // => 1
- *
- * // using `fromIndex`
- * _.indexOf([1, 2, 1, 2], 2, 2);
- * // => 3
- *
- * // performing a binary search
- * _.indexOf([1, 1, 2, 2], 2, true);
- * // => 2
- */
-function indexOf(array, value, fromIndex) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return -1;
-  }
-  if (typeof fromIndex == 'number') {
-    fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : fromIndex;
-  } else if (fromIndex) {
-    var index = binaryIndex(array, value),
-        other = array[index];
-
-    if (value === value ? (value === other) : (other !== other)) {
-      return index;
-    }
-    return -1;
-  }
-  return baseIndexOf(array, value, fromIndex || 0);
-}
-
-module.exports = indexOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/initial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/initial.js
deleted file mode 100644 (file)
index 59b7a7d..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var dropRight = require('./dropRight');
-
-/**
- * Gets all but the last element of `array`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.initial([1, 2, 3]);
- * // => [1, 2]
- */
-function initial(array) {
-  return dropRight(array, 1);
-}
-
-module.exports = initial;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/intersection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/intersection.js
deleted file mode 100644 (file)
index c8ce09d..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-var baseIndexOf = require('../internal/baseIndexOf'),
-    cacheIndexOf = require('../internal/cacheIndexOf'),
-    createCache = require('../internal/createCache'),
-    isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates an array of unique values in all provided arrays using `SameValueZero`
- * for equality comparisons.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @returns {Array} Returns the new array of shared values.
- * @example
- * _.intersection([1, 2], [4, 2], [2, 1]);
- * // => [2]
- */
-function intersection() {
-  var args = [],
-      argsIndex = -1,
-      argsLength = arguments.length,
-      caches = [],
-      indexOf = baseIndexOf,
-      isCommon = true,
-      result = [];
-
-  while (++argsIndex < argsLength) {
-    var value = arguments[argsIndex];
-    if (isArray(value) || isArguments(value)) {
-      args.push(value);
-      caches.push((isCommon && value.length >= 120) ? createCache(argsIndex && value) : null);
-    }
-  }
-  argsLength = args.length;
-  if (argsLength < 2) {
-    return result;
-  }
-  var array = args[0],
-      index = -1,
-      length = array ? array.length : 0,
-      seen = caches[0];
-
-  outer:
-  while (++index < length) {
-    value = array[index];
-    if ((seen ? cacheIndexOf(seen, value) : indexOf(result, value, 0)) < 0) {
-      argsIndex = argsLength;
-      while (--argsIndex) {
-        var cache = caches[argsIndex];
-        if ((cache ? cacheIndexOf(cache, value) : indexOf(args[argsIndex], value, 0)) < 0) {
-          continue outer;
-        }
-      }
-      if (seen) {
-        seen.push(value);
-      }
-      result.push(value);
-    }
-  }
-  return result;
-}
-
-module.exports = intersection;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/last.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/last.js
deleted file mode 100644 (file)
index 299af31..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Gets the last element of `array`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @returns {*} Returns the last element of `array`.
- * @example
- *
- * _.last([1, 2, 3]);
- * // => 3
- */
-function last(array) {
-  var length = array ? array.length : 0;
-  return length ? array[length - 1] : undefined;
-}
-
-module.exports = last;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/lastIndexOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/lastIndexOf.js
deleted file mode 100644 (file)
index 02b8062..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-var binaryIndex = require('../internal/binaryIndex'),
-    indexOfNaN = require('../internal/indexOfNaN');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
-    nativeMin = Math.min;
-
-/**
- * This method is like `_.indexOf` except that it iterates over elements of
- * `array` from right to left.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to search.
- * @param {*} value The value to search for.
- * @param {boolean|number} [fromIndex=array.length-1] The index to search from
- *  or `true` to perform a binary search on a sorted array.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.lastIndexOf([1, 2, 1, 2], 2);
- * // => 3
- *
- * // using `fromIndex`
- * _.lastIndexOf([1, 2, 1, 2], 2, 2);
- * // => 1
- *
- * // performing a binary search
- * _.lastIndexOf([1, 1, 2, 2], 2, true);
- * // => 3
- */
-function lastIndexOf(array, value, fromIndex) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return -1;
-  }
-  var index = length;
-  if (typeof fromIndex == 'number') {
-    index = (fromIndex < 0 ? nativeMax(length + fromIndex, 0) : nativeMin(fromIndex || 0, length - 1)) + 1;
-  } else if (fromIndex) {
-    index = binaryIndex(array, value, true) - 1;
-    var other = array[index];
-    if (value === value ? (value === other) : (other !== other)) {
-      return index;
-    }
-    return -1;
-  }
-  if (value !== value) {
-    return indexOfNaN(array, index, true);
-  }
-  while (index--) {
-    if (array[index] === value) {
-      return index;
-    }
-  }
-  return -1;
-}
-
-module.exports = lastIndexOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/object.js
deleted file mode 100644 (file)
index f4a3453..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./zipObject');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pull.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pull.js
deleted file mode 100644 (file)
index 2d4c517..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-var baseIndexOf = require('../internal/baseIndexOf');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var splice = arrayProto.splice;
-
-/**
- * Removes all provided values from `array` using `SameValueZero` for equality
- * comparisons.
- *
- * **Notes:**
- *  - Unlike `_.without`, this method mutates `array`
- *  - [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- *    comparisons are like strict equality comparisons, e.g. `===`, except
- *    that `NaN` matches `NaN`
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to modify.
- * @param {...*} [values] The values to remove.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [1, 2, 3, 1, 2, 3];
- *
- * _.pull(array, 2, 3);
- * console.log(array);
- * // => [1, 1]
- */
-function pull() {
-  var args = arguments,
-      array = args[0];
-
-  if (!(array && array.length)) {
-    return array;
-  }
-  var index = 0,
-      indexOf = baseIndexOf,
-      length = args.length;
-
-  while (++index < length) {
-    var fromIndex = 0,
-        value = args[index];
-
-    while ((fromIndex = indexOf(array, value, fromIndex)) > -1) {
-      splice.call(array, fromIndex, 1);
-    }
-  }
-  return array;
-}
-
-module.exports = pull;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pullAt.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/pullAt.js
deleted file mode 100644 (file)
index da0e587..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-var baseAt = require('../internal/baseAt'),
-    baseCompareAscending = require('../internal/baseCompareAscending'),
-    baseFlatten = require('../internal/baseFlatten'),
-    basePullAt = require('../internal/basePullAt'),
-    restParam = require('../function/restParam');
-
-/**
- * Removes elements from `array` corresponding to the given indexes and returns
- * an array of the removed elements. Indexes may be specified as an array of
- * indexes or as individual arguments.
- *
- * **Note:** Unlike `_.at`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to modify.
- * @param {...(number|number[])} [indexes] The indexes of elements to remove,
- *  specified as individual indexes or arrays of indexes.
- * @returns {Array} Returns the new array of removed elements.
- * @example
- *
- * var array = [5, 10, 15, 20];
- * var evens = _.pullAt(array, 1, 3);
- *
- * console.log(array);
- * // => [5, 15]
- *
- * console.log(evens);
- * // => [10, 20]
- */
-var pullAt = restParam(function(array, indexes) {
-  array || (array = []);
-  indexes = baseFlatten(indexes);
-
-  var result = baseAt(array, indexes);
-  basePullAt(array, indexes.sort(baseCompareAscending));
-  return result;
-});
-
-module.exports = pullAt;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/remove.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/remove.js
deleted file mode 100644 (file)
index 0cf979b..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    basePullAt = require('../internal/basePullAt');
-
-/**
- * Removes all elements from `array` that `predicate` returns truthy for
- * and returns an array of the removed elements. The predicate is bound to
- * `thisArg` and invoked with three arguments: (value, index, array).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * **Note:** Unlike `_.filter`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to modify.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the new array of removed elements.
- * @example
- *
- * var array = [1, 2, 3, 4];
- * var evens = _.remove(array, function(n) {
- *   return n % 2 == 0;
- * });
- *
- * console.log(array);
- * // => [1, 3]
- *
- * console.log(evens);
- * // => [2, 4]
- */
-function remove(array, predicate, thisArg) {
-  var result = [];
-  if (!(array && array.length)) {
-    return result;
-  }
-  var index = -1,
-      indexes = [],
-      length = array.length;
-
-  predicate = baseCallback(predicate, thisArg, 3);
-  while (++index < length) {
-    var value = array[index];
-    if (predicate(value, index, array)) {
-      result.push(value);
-      indexes.push(index);
-    }
-  }
-  basePullAt(array, indexes);
-  return result;
-}
-
-module.exports = remove;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/rest.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/rest.js
deleted file mode 100644 (file)
index 9bfb734..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var drop = require('./drop');
-
-/**
- * Gets all but the first element of `array`.
- *
- * @static
- * @memberOf _
- * @alias tail
- * @category Array
- * @param {Array} array The array to query.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.rest([1, 2, 3]);
- * // => [2, 3]
- */
-function rest(array) {
-  return drop(array, 1);
-}
-
-module.exports = rest;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/slice.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/slice.js
deleted file mode 100644 (file)
index 48ef1a1..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a slice of `array` from `start` up to, but not including, `end`.
- *
- * **Note:** This method is used instead of `Array#slice` to support node
- * lists in IE < 9 and to ensure dense arrays are returned.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to slice.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns the slice of `array`.
- */
-function slice(array, start, end) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {
-    start = 0;
-    end = length;
-  }
-  return baseSlice(array, start, end);
-}
-
-module.exports = slice;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedIndex.js
deleted file mode 100644 (file)
index 51d150e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var createSortedIndex = require('../internal/createSortedIndex');
-
-/**
- * Uses a binary search to determine the lowest index at which `value` should
- * be inserted into `array` in order to maintain its sort order. If an iteratee
- * function is provided it is invoked for `value` and each element of `array`
- * to compute their sort ranking. The iteratee is bound to `thisArg` and
- * invoked with one argument; (value).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {number} Returns the index at which `value` should be inserted
- *  into `array`.
- * @example
- *
- * _.sortedIndex([30, 50], 40);
- * // => 1
- *
- * _.sortedIndex([4, 4, 5, 5], 5);
- * // => 2
- *
- * var dict = { 'data': { 'thirty': 30, 'forty': 40, 'fifty': 50 } };
- *
- * // using an iteratee function
- * _.sortedIndex(['thirty', 'fifty'], 'forty', function(word) {
- *   return this.data[word];
- * }, dict);
- * // => 1
- *
- * // using the `_.property` callback shorthand
- * _.sortedIndex([{ 'x': 30 }, { 'x': 50 }], { 'x': 40 }, 'x');
- * // => 1
- */
-var sortedIndex = createSortedIndex();
-
-module.exports = sortedIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedLastIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/sortedLastIndex.js
deleted file mode 100644 (file)
index 81a4a86..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var createSortedIndex = require('../internal/createSortedIndex');
-
-/**
- * This method is like `_.sortedIndex` except that it returns the highest
- * index at which `value` should be inserted into `array` in order to
- * maintain its sort order.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {number} Returns the index at which `value` should be inserted
- *  into `array`.
- * @example
- *
- * _.sortedLastIndex([4, 4, 5, 5], 5);
- * // => 4
- */
-var sortedLastIndex = createSortedIndex(true);
-
-module.exports = sortedLastIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/tail.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/tail.js
deleted file mode 100644 (file)
index c5dfe77..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./rest');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/take.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/take.js
deleted file mode 100644 (file)
index 875917a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a slice of `array` with `n` elements taken from the beginning.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to take.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.take([1, 2, 3]);
- * // => [1]
- *
- * _.take([1, 2, 3], 2);
- * // => [1, 2]
- *
- * _.take([1, 2, 3], 5);
- * // => [1, 2, 3]
- *
- * _.take([1, 2, 3], 0);
- * // => []
- */
-function take(array, n, guard) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (guard ? isIterateeCall(array, n, guard) : n == null) {
-    n = 1;
-  }
-  return baseSlice(array, 0, n < 0 ? 0 : n);
-}
-
-module.exports = take;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRight.js
deleted file mode 100644 (file)
index 6e89c87..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseSlice = require('../internal/baseSlice'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a slice of `array` with `n` elements taken from the end.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to take.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.takeRight([1, 2, 3]);
- * // => [3]
- *
- * _.takeRight([1, 2, 3], 2);
- * // => [2, 3]
- *
- * _.takeRight([1, 2, 3], 5);
- * // => [1, 2, 3]
- *
- * _.takeRight([1, 2, 3], 0);
- * // => []
- */
-function takeRight(array, n, guard) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (guard ? isIterateeCall(array, n, guard) : n == null) {
-    n = 1;
-  }
-  n = length - (+n || 0);
-  return baseSlice(array, n < 0 ? 0 : n);
-}
-
-module.exports = takeRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRightWhile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeRightWhile.js
deleted file mode 100644 (file)
index 5464d13..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseWhile = require('../internal/baseWhile');
-
-/**
- * Creates a slice of `array` with elements taken from the end. Elements are
- * taken until `predicate` returns falsey. The predicate is bound to `thisArg`
- * and invoked with three arguments: (value, index, array).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.takeRightWhile([1, 2, 3], function(n) {
- *   return n > 1;
- * });
- * // => [2, 3]
- *
- * var users = [
- *   { 'user': 'barney',  'active': true },
- *   { 'user': 'fred',    'active': false },
- *   { 'user': 'pebbles', 'active': false }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.takeRightWhile(users, { 'user': 'pebbles', 'active': false }), 'user');
- * // => ['pebbles']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.takeRightWhile(users, 'active', false), 'user');
- * // => ['fred', 'pebbles']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.takeRightWhile(users, 'active'), 'user');
- * // => []
- */
-function takeRightWhile(array, predicate, thisArg) {
-  return (array && array.length)
-    ? baseWhile(array, baseCallback(predicate, thisArg, 3), false, true)
-    : [];
-}
-
-module.exports = takeRightWhile;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeWhile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/takeWhile.js
deleted file mode 100644 (file)
index f7e28a1..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseWhile = require('../internal/baseWhile');
-
-/**
- * Creates a slice of `array` with elements taken from the beginning. Elements
- * are taken until `predicate` returns falsey. The predicate is bound to
- * `thisArg` and invoked with three arguments: (value, index, array).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.takeWhile([1, 2, 3], function(n) {
- *   return n < 3;
- * });
- * // => [1, 2]
- *
- * var users = [
- *   { 'user': 'barney',  'active': false },
- *   { 'user': 'fred',    'active': false},
- *   { 'user': 'pebbles', 'active': true }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.takeWhile(users, { 'user': 'barney', 'active': false }), 'user');
- * // => ['barney']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.takeWhile(users, 'active', false), 'user');
- * // => ['barney', 'fred']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.takeWhile(users, 'active'), 'user');
- * // => []
- */
-function takeWhile(array, predicate, thisArg) {
-  return (array && array.length)
-    ? baseWhile(array, baseCallback(predicate, thisArg, 3))
-    : [];
-}
-
-module.exports = takeWhile;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/union.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/union.js
deleted file mode 100644 (file)
index 312b395..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    baseUniq = require('../internal/baseUniq'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates an array of unique values, in order, of the provided arrays using
- * `SameValueZero` for equality comparisons.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @returns {Array} Returns the new array of combined values.
- * @example
- *
- * _.union([1, 2], [4, 2], [2, 1]);
- * // => [1, 2, 4]
- */
-var union = restParam(function(arrays) {
-  return baseUniq(baseFlatten(arrays, false, true));
-});
-
-module.exports = union;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/uniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/uniq.js
deleted file mode 100644 (file)
index 2c9faba..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseUniq = require('../internal/baseUniq'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    sortedUniq = require('../internal/sortedUniq');
-
-/**
- * Creates a duplicate-free version of an array, using `SameValueZero` for
- * equality comparisons, in which only the first occurence of each element
- * is kept. Providing `true` for `isSorted` performs a faster search algorithm
- * for sorted arrays. If an iteratee function is provided it is invoked for
- * each element in the array to generate the criterion by which uniqueness
- * is computed. The `iteratee` is bound to `thisArg` and invoked with three
- * arguments: (value, index, array).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @alias unique
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {boolean} [isSorted] Specify the array is sorted.
- * @param {Function|Object|string} [iteratee] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array} Returns the new duplicate-value-free array.
- * @example
- *
- * _.uniq([2, 1, 2]);
- * // => [2, 1]
- *
- * // using `isSorted`
- * _.uniq([1, 1, 2], true);
- * // => [1, 2]
- *
- * // using an iteratee function
- * _.uniq([1, 2.5, 1.5, 2], function(n) {
- *   return this.floor(n);
- * }, Math);
- * // => [1, 2.5]
- *
- * // using the `_.property` callback shorthand
- * _.uniq([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');
- * // => [{ 'x': 1 }, { 'x': 2 }]
- */
-function uniq(array, isSorted, iteratee, thisArg) {
-  var length = array ? array.length : 0;
-  if (!length) {
-    return [];
-  }
-  if (isSorted != null && typeof isSorted != 'boolean') {
-    thisArg = iteratee;
-    iteratee = isIterateeCall(array, isSorted, thisArg) ? null : isSorted;
-    isSorted = false;
-  }
-  iteratee = iteratee == null ? iteratee : baseCallback(iteratee, thisArg, 3);
-  return (isSorted)
-    ? sortedUniq(array, iteratee)
-    : baseUniq(array, iteratee);
-}
-
-module.exports = uniq;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unique.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unique.js
deleted file mode 100644 (file)
index 396de1b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./uniq');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unzip.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/unzip.js
deleted file mode 100644 (file)
index 5d28c9b..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var arrayMap = require('../internal/arrayMap'),
-    arrayMax = require('../internal/arrayMax'),
-    baseProperty = require('../internal/baseProperty'),
-    getLength = require('../internal/getLength');
-
-/**
- * This method is like `_.zip` except that it accepts an array of grouped
- * elements and creates an array regrouping the elements to their pre-`_.zip`
- * configuration.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array of grouped elements to process.
- * @returns {Array} Returns the new array of regrouped elements.
- * @example
- *
- * var zipped = _.zip(['fred', 'barney'], [30, 40], [true, false]);
- * // => [['fred', 30, true], ['barney', 40, false]]
- *
- * _.unzip(zipped);
- * // => [['fred', 'barney'], [30, 40], [true, false]]
- */
-function unzip(array) {
-  var index = -1,
-      length = (array && array.length && arrayMax(arrayMap(array, getLength))) >>> 0,
-      result = Array(length);
-
-  while (++index < length) {
-    result[index] = arrayMap(array, baseProperty(index));
-  }
-  return result;
-}
-
-module.exports = unzip;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/without.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/without.js
deleted file mode 100644 (file)
index 7927ba1..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseDifference = require('../internal/baseDifference'),
-    isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates an array excluding all provided values using `SameValueZero` for
- * equality comparisons.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {Array} array The array to filter.
- * @param {...*} [values] The values to exclude.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * _.without([1, 2, 1, 3], 1, 2);
- * // => [3]
- */
-var without = restParam(function(array, values) {
-  return (isArray(array) || isArguments(array))
-    ? baseDifference(array, values)
-    : [];
-});
-
-module.exports = without;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/xor.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/xor.js
deleted file mode 100644 (file)
index 7763877..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var baseDifference = require('../internal/baseDifference'),
-    baseUniq = require('../internal/baseUniq'),
-    isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates an array that is the [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)
- * of the provided arrays.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @returns {Array} Returns the new array of values.
- * @example
- *
- * _.xor([1, 2], [4, 2]);
- * // => [1, 4]
- */
-function xor() {
-  var index = -1,
-      length = arguments.length;
-
-  while (++index < length) {
-    var array = arguments[index];
-    if (isArray(array) || isArguments(array)) {
-      var result = result
-        ? baseDifference(result, array).concat(baseDifference(array, result))
-        : array;
-    }
-  }
-  return result ? baseUniq(result) : [];
-}
-
-module.exports = xor;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zip.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zip.js
deleted file mode 100644 (file)
index 53a6f69..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var restParam = require('../function/restParam'),
-    unzip = require('./unzip');
-
-/**
- * Creates an array of grouped elements, the first of which contains the first
- * elements of the given arrays, the second of which contains the second elements
- * of the given arrays, and so on.
- *
- * @static
- * @memberOf _
- * @category Array
- * @param {...Array} [arrays] The arrays to process.
- * @returns {Array} Returns the new array of grouped elements.
- * @example
- *
- * _.zip(['fred', 'barney'], [30, 40], [true, false]);
- * // => [['fred', 30, true], ['barney', 40, false]]
- */
-var zip = restParam(unzip);
-
-module.exports = zip;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zipObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/array/zipObject.js
deleted file mode 100644 (file)
index dec7a21..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var isArray = require('../lang/isArray');
-
-/**
- * The inverse of `_.pairs`; this method returns an object composed from arrays
- * of property names and values. Provide either a single two dimensional array,
- * e.g. `[[key1, value1], [key2, value2]]` or two arrays, one of property names
- * and one of corresponding values.
- *
- * @static
- * @memberOf _
- * @alias object
- * @category Array
- * @param {Array} props The property names.
- * @param {Array} [values=[]] The property values.
- * @returns {Object} Returns the new object.
- * @example
- *
- * _.zipObject([['fred', 30], ['barney', 40]]);
- * // => { 'fred': 30, 'barney': 40 }
- *
- * _.zipObject(['fred', 'barney'], [30, 40]);
- * // => { 'fred': 30, 'barney': 40 }
- */
-function zipObject(props, values) {
-  var index = -1,
-      length = props ? props.length : 0,
-      result = {};
-
-  if (length && !values && !isArray(props[0])) {
-    values = [];
-  }
-  while (++index < length) {
-    var key = props[index];
-    if (values) {
-      result[key] = values[index];
-    } else if (key) {
-      result[key[0]] = key[1];
-    }
-  }
-  return result;
-}
-
-module.exports = zipObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain.js
deleted file mode 100644 (file)
index 7992b73..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-module.exports = {
-  'chain': require('./chain/chain'),
-  'commit': require('./chain/commit'),
-  'lodash': require('./chain/lodash'),
-  'plant': require('./chain/plant'),
-  'reverse': require('./chain/reverse'),
-  'run': require('./chain/run'),
-  'tap': require('./chain/tap'),
-  'thru': require('./chain/thru'),
-  'toJSON': require('./chain/toJSON'),
-  'toString': require('./chain/toString'),
-  'value': require('./chain/value'),
-  'valueOf': require('./chain/valueOf'),
-  'wrapperChain': require('./chain/wrapperChain')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/chain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/chain.js
deleted file mode 100644 (file)
index 453ba1e..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var lodash = require('./lodash');
-
-/**
- * Creates a `lodash` object that wraps `value` with explicit method
- * chaining enabled.
- *
- * @static
- * @memberOf _
- * @category Chain
- * @param {*} value The value to wrap.
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var users = [
- *   { 'user': 'barney',  'age': 36 },
- *   { 'user': 'fred',    'age': 40 },
- *   { 'user': 'pebbles', 'age': 1 }
- * ];
- *
- * var youngest = _.chain(users)
- *   .sortBy('age')
- *   .map(function(chr) {
- *     return chr.user + ' is ' + chr.age;
- *   })
- *   .first()
- *   .value();
- * // => 'pebbles is 1'
- */
-function chain(value) {
-  var result = lodash(value);
-  result.__chain__ = true;
-  return result;
-}
-
-module.exports = chain;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/commit.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/commit.js
deleted file mode 100644 (file)
index c732d1b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperCommit');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/lodash.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/lodash.js
deleted file mode 100644 (file)
index 7ca104c..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-var LazyWrapper = require('../internal/LazyWrapper'),
-    LodashWrapper = require('../internal/LodashWrapper'),
-    baseLodash = require('../internal/baseLodash'),
-    isArray = require('../lang/isArray'),
-    isObjectLike = require('../internal/isObjectLike'),
-    wrapperClone = require('../internal/wrapperClone');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates a `lodash` object which wraps `value` to enable implicit chaining.
- * Methods that operate on and return arrays, collections, and functions can
- * be chained together. Methods that return a boolean or single value will
- * automatically end the chain returning the unwrapped value. Explicit chaining
- * may be enabled using `_.chain`. The execution of chained methods is lazy,
- * that is, execution is deferred until `_#value` is implicitly or explicitly
- * called.
- *
- * Lazy evaluation allows several methods to support shortcut fusion. Shortcut
- * fusion is an optimization that merges iteratees to avoid creating intermediate
- * arrays and reduce the number of iteratee executions.
- *
- * Chaining is supported in custom builds as long as the `_#value` method is
- * directly or indirectly included in the build.
- *
- * In addition to lodash methods, wrappers have `Array` and `String` methods.
- *
- * The wrapper `Array` methods are:
- * `concat`, `join`, `pop`, `push`, `reverse`, `shift`, `slice`, `sort`,
- * `splice`, and `unshift`
- *
- * The wrapper `String` methods are:
- * `replace` and `split`
- *
- * The wrapper methods that support shortcut fusion are:
- * `compact`, `drop`, `dropRight`, `dropRightWhile`, `dropWhile`, `filter`,
- * `first`, `initial`, `last`, `map`, `pluck`, `reject`, `rest`, `reverse`,
- * `slice`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `toArray`,
- * and `where`
- *
- * The chainable wrapper methods are:
- * `after`, `ary`, `assign`, `at`, `before`, `bind`, `bindAll`, `bindKey`,
- * `callback`, `chain`, `chunk`, `commit`, `compact`, `concat`, `constant`,
- * `countBy`, `create`, `curry`, `debounce`, `defaults`, `defer`, `delay`,
- * `difference`, `drop`, `dropRight`, `dropRightWhile`, `dropWhile`, `fill`,
- * `filter`, `flatten`, `flattenDeep`, `flow`, `flowRight`, `forEach`,
- * `forEachRight`, `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `functions`,
- * `groupBy`, `indexBy`, `initial`, `intersection`, `invert`, `invoke`, `keys`,
- * `keysIn`, `map`, `mapValues`, `matches`, `matchesProperty`, `memoize`,
- * `merge`, `mixin`, `negate`, `omit`, `once`, `pairs`, `partial`, `partialRight`,
- * `partition`, `pick`, `plant`, `pluck`, `property`, `propertyOf`, `pull`,
- * `pullAt`, `push`, `range`, `rearg`, `reject`, `remove`, `rest`, `reverse`,
- * `shuffle`, `slice`, `sort`, `sortBy`, `sortByAll`, `sortByOrder`, `splice`,
- * `spread`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `tap`,
- * `throttle`, `thru`, `times`, `toArray`, `toPlainObject`, `transform`,
- * `union`, `uniq`, `unshift`, `unzip`, `values`, `valuesIn`, `where`,
- * `without`, `wrap`, `xor`, `zip`, and `zipObject`
- *
- * The wrapper methods that are **not** chainable by default are:
- * `add`, `attempt`, `camelCase`, `capitalize`, `clone`, `cloneDeep`, `deburr`,
- * `endsWith`, `escape`, `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`,
- * `findLast`, `findLastIndex`, `findLastKey`, `findWhere`, `first`, `has`,
- * `identity`, `includes`, `indexOf`, `inRange`, `isArguments`, `isArray`,
- * `isBoolean`, `isDate`, `isElement`, `isEmpty`, `isEqual`, `isError`, `isFinite`
- * `isFunction`, `isMatch`, `isNative`, `isNaN`, `isNull`, `isNumber`, `isObject`,
- * `isPlainObject`, `isRegExp`, `isString`, `isUndefined`, `isTypedArray`,
- * `join`, `kebabCase`, `last`, `lastIndexOf`, `max`, `min`, `noConflict`,
- * `noop`, `now`, `pad`, `padLeft`, `padRight`, `parseInt`, `pop`, `random`,
- * `reduce`, `reduceRight`, `repeat`, `result`, `runInContext`, `shift`, `size`,
- * `snakeCase`, `some`, `sortedIndex`, `sortedLastIndex`, `startCase`, `startsWith`,
- * `sum`, `template`, `trim`, `trimLeft`, `trimRight`, `trunc`, `unescape`,
- * `uniqueId`, `value`, and `words`
- *
- * The wrapper method `sample` will return a wrapped value when `n` is provided,
- * otherwise an unwrapped value is returned.
- *
- * @name _
- * @constructor
- * @category Chain
- * @param {*} value The value to wrap in a `lodash` instance.
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var wrapped = _([1, 2, 3]);
- *
- * // returns an unwrapped value
- * wrapped.reduce(function(total, n) {
- *   return total + n;
- * });
- * // => 6
- *
- * // returns a wrapped value
- * var squares = wrapped.map(function(n) {
- *   return n * n;
- * });
- *
- * _.isArray(squares);
- * // => false
- *
- * _.isArray(squares.value());
- * // => true
- */
-function lodash(value) {
-  if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {
-    if (value instanceof LodashWrapper) {
-      return value;
-    }
-    if (hasOwnProperty.call(value, '__chain__') && hasOwnProperty.call(value, '__wrapped__')) {
-      return wrapperClone(value);
-    }
-  }
-  return new LodashWrapper(value);
-}
-
-// Ensure wrappers are instances of `baseLodash`.
-lodash.prototype = baseLodash.prototype;
-
-module.exports = lodash;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/plant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/plant.js
deleted file mode 100644 (file)
index 04099f2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperPlant');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/reverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/reverse.js
deleted file mode 100644 (file)
index f72a64a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperReverse');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/run.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/run.js
deleted file mode 100644 (file)
index 5e751a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperValue');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/tap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/tap.js
deleted file mode 100644 (file)
index 3d0257e..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * This method invokes `interceptor` and returns `value`. The interceptor is
- * bound to `thisArg` and invoked with one argument; (value). The purpose of
- * this method is to "tap into" a method chain in order to perform operations
- * on intermediate results within the chain.
- *
- * @static
- * @memberOf _
- * @category Chain
- * @param {*} value The value to provide to `interceptor`.
- * @param {Function} interceptor The function to invoke.
- * @param {*} [thisArg] The `this` binding of `interceptor`.
- * @returns {*} Returns `value`.
- * @example
- *
- * _([1, 2, 3])
- *  .tap(function(array) {
- *    array.pop();
- *  })
- *  .reverse()
- *  .value();
- * // => [2, 1]
- */
-function tap(value, interceptor, thisArg) {
-  interceptor.call(thisArg, value);
-  return value;
-}
-
-module.exports = tap;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/thru.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/thru.js
deleted file mode 100644 (file)
index a715780..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * This method is like `_.tap` except that it returns the result of `interceptor`.
- *
- * @static
- * @memberOf _
- * @category Chain
- * @param {*} value The value to provide to `interceptor`.
- * @param {Function} interceptor The function to invoke.
- * @param {*} [thisArg] The `this` binding of `interceptor`.
- * @returns {*} Returns the result of `interceptor`.
- * @example
- *
- * _('  abc  ')
- *  .chain()
- *  .trim()
- *  .thru(function(value) {
- *    return [value];
- *  })
- *  .value();
- * // => ['abc']
- */
-function thru(value, interceptor, thisArg) {
-  return interceptor.call(thisArg, value);
-}
-
-module.exports = thru;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toJSON.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toJSON.js
deleted file mode 100644 (file)
index 5e751a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperValue');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toString.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/toString.js
deleted file mode 100644 (file)
index c7bcbf9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperToString');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/value.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/value.js
deleted file mode 100644 (file)
index 5e751a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperValue');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/valueOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/valueOf.js
deleted file mode 100644 (file)
index 5e751a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./wrapperValue');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperChain.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperChain.js
deleted file mode 100644 (file)
index 3823481..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var chain = require('./chain');
-
-/**
- * Enables explicit method chaining on the wrapper object.
- *
- * @name chain
- * @memberOf _
- * @category Chain
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 40 }
- * ];
- *
- * // without explicit chaining
- * _(users).first();
- * // => { 'user': 'barney', 'age': 36 }
- *
- * // with explicit chaining
- * _(users).chain()
- *   .first()
- *   .pick('user')
- *   .value();
- * // => { 'user': 'barney' }
- */
-function wrapperChain() {
-  return chain(this);
-}
-
-module.exports = wrapperChain;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperCommit.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperCommit.js
deleted file mode 100644 (file)
index c46a787..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var LodashWrapper = require('../internal/LodashWrapper');
-
-/**
- * Executes the chained sequence and returns the wrapped result.
- *
- * @name commit
- * @memberOf _
- * @category Chain
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var array = [1, 2];
- * var wrapper = _(array).push(3);
- *
- * console.log(array);
- * // => [1, 2]
- *
- * wrapper = wrapper.commit();
- * console.log(array);
- * // => [1, 2, 3]
- *
- * wrapper.last();
- * // => 3
- *
- * console.log(array);
- * // => [1, 2, 3]
- */
-function wrapperCommit() {
-  return new LodashWrapper(this.value(), this.__chain__);
-}
-
-module.exports = wrapperCommit;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperPlant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperPlant.js
deleted file mode 100644 (file)
index a3de146..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-var baseLodash = require('../internal/baseLodash'),
-    wrapperClone = require('../internal/wrapperClone');
-
-/**
- * Creates a clone of the chained sequence planting `value` as the wrapped value.
- *
- * @name plant
- * @memberOf _
- * @category Chain
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var array = [1, 2];
- * var wrapper = _(array).map(function(value) {
- *   return Math.pow(value, 2);
- * });
- *
- * var other = [3, 4];
- * var otherWrapper = wrapper.plant(other);
- *
- * otherWrapper.value();
- * // => [9, 16]
- *
- * wrapper.value();
- * // => [1, 4]
- */
-function wrapperPlant(value) {
-  var result,
-      parent = this;
-
-  while (parent instanceof baseLodash) {
-    var clone = wrapperClone(parent);
-    if (result) {
-      previous.__wrapped__ = clone;
-    } else {
-      result = clone;
-    }
-    var previous = clone;
-    parent = parent.__wrapped__;
-  }
-  previous.__wrapped__ = value;
-  return result;
-}
-
-module.exports = wrapperPlant;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperReverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperReverse.js
deleted file mode 100644 (file)
index 4518b3e..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var LazyWrapper = require('../internal/LazyWrapper'),
-    LodashWrapper = require('../internal/LodashWrapper'),
-    thru = require('./thru');
-
-/**
- * Reverses the wrapped array so the first element becomes the last, the
- * second element becomes the second to last, and so on.
- *
- * **Note:** This method mutates the wrapped array.
- *
- * @name reverse
- * @memberOf _
- * @category Chain
- * @returns {Object} Returns the new reversed `lodash` wrapper instance.
- * @example
- *
- * var array = [1, 2, 3];
- *
- * _(array).reverse().value()
- * // => [3, 2, 1]
- *
- * console.log(array);
- * // => [3, 2, 1]
- */
-function wrapperReverse() {
-  var value = this.__wrapped__;
-  if (value instanceof LazyWrapper) {
-    if (this.__actions__.length) {
-      value = new LazyWrapper(this);
-    }
-    return new LodashWrapper(value.reverse(), this.__chain__);
-  }
-  return this.thru(function(value) {
-    return value.reverse();
-  });
-}
-
-module.exports = wrapperReverse;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperToString.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperToString.js
deleted file mode 100644 (file)
index db975a5..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Produces the result of coercing the unwrapped value to a string.
- *
- * @name toString
- * @memberOf _
- * @category Chain
- * @returns {string} Returns the coerced string value.
- * @example
- *
- * _([1, 2, 3]).toString();
- * // => '1,2,3'
- */
-function wrapperToString() {
-  return (this.value() + '');
-}
-
-module.exports = wrapperToString;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperValue.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/chain/wrapperValue.js
deleted file mode 100644 (file)
index 2734e41..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var baseWrapperValue = require('../internal/baseWrapperValue');
-
-/**
- * Executes the chained sequence to extract the unwrapped value.
- *
- * @name value
- * @memberOf _
- * @alias run, toJSON, valueOf
- * @category Chain
- * @returns {*} Returns the resolved unwrapped value.
- * @example
- *
- * _([1, 2, 3]).value();
- * // => [1, 2, 3]
- */
-function wrapperValue() {
-  return baseWrapperValue(this.__wrapped__, this.__actions__);
-}
-
-module.exports = wrapperValue;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection.js
deleted file mode 100644 (file)
index 0338857..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-module.exports = {
-  'all': require('./collection/all'),
-  'any': require('./collection/any'),
-  'at': require('./collection/at'),
-  'collect': require('./collection/collect'),
-  'contains': require('./collection/contains'),
-  'countBy': require('./collection/countBy'),
-  'detect': require('./collection/detect'),
-  'each': require('./collection/each'),
-  'eachRight': require('./collection/eachRight'),
-  'every': require('./collection/every'),
-  'filter': require('./collection/filter'),
-  'find': require('./collection/find'),
-  'findLast': require('./collection/findLast'),
-  'findWhere': require('./collection/findWhere'),
-  'foldl': require('./collection/foldl'),
-  'foldr': require('./collection/foldr'),
-  'forEach': require('./collection/forEach'),
-  'forEachRight': require('./collection/forEachRight'),
-  'groupBy': require('./collection/groupBy'),
-  'include': require('./collection/include'),
-  'includes': require('./collection/includes'),
-  'indexBy': require('./collection/indexBy'),
-  'inject': require('./collection/inject'),
-  'invoke': require('./collection/invoke'),
-  'map': require('./collection/map'),
-  'max': require('./math/max'),
-  'min': require('./math/min'),
-  'partition': require('./collection/partition'),
-  'pluck': require('./collection/pluck'),
-  'reduce': require('./collection/reduce'),
-  'reduceRight': require('./collection/reduceRight'),
-  'reject': require('./collection/reject'),
-  'sample': require('./collection/sample'),
-  'select': require('./collection/select'),
-  'shuffle': require('./collection/shuffle'),
-  'size': require('./collection/size'),
-  'some': require('./collection/some'),
-  'sortBy': require('./collection/sortBy'),
-  'sortByAll': require('./collection/sortByAll'),
-  'sortByOrder': require('./collection/sortByOrder'),
-  'sum': require('./math/sum'),
-  'where': require('./collection/where')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/all.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/all.js
deleted file mode 100644 (file)
index d0839f7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./every');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/any.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/any.js
deleted file mode 100644 (file)
index 900ac25..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./some');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/at.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/at.js
deleted file mode 100644 (file)
index 753f4ea..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var baseAt = require('../internal/baseAt'),
-    baseFlatten = require('../internal/baseFlatten'),
-    getLength = require('../internal/getLength'),
-    isLength = require('../internal/isLength'),
-    restParam = require('../function/restParam'),
-    toIterable = require('../internal/toIterable');
-
-/**
- * Creates an array of elements corresponding to the given keys, or indexes,
- * of `collection`. Keys may be specified as individual arguments or as arrays
- * of keys.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {...(number|number[]|string|string[])} [props] The property names
- *  or indexes of elements to pick, specified individually or in arrays.
- * @returns {Array} Returns the new array of picked elements.
- * @example
- *
- * _.at(['a', 'b', 'c'], [0, 2]);
- * // => ['a', 'c']
- *
- * _.at(['barney', 'fred', 'pebbles'], 0, 2);
- * // => ['barney', 'pebbles']
- */
-var at = restParam(function(collection, props) {
-  var length = collection ? getLength(collection) : 0;
-  if (isLength(length)) {
-    collection = toIterable(collection);
-  }
-  return baseAt(collection, baseFlatten(props));
-});
-
-module.exports = at;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/collect.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/collect.js
deleted file mode 100644 (file)
index 0d1e1ab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./map');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/contains.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/contains.js
deleted file mode 100644 (file)
index 594722a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./includes');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/countBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/countBy.js
deleted file mode 100644 (file)
index e97dbb7..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var createAggregator = require('../internal/createAggregator');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` through `iteratee`. The corresponding value
- * of each key is the number of times the key was returned by `iteratee`.
- * The `iteratee` is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * _.countBy([4.3, 6.1, 6.4], function(n) {
- *   return Math.floor(n);
- * });
- * // => { '4': 1, '6': 2 }
- *
- * _.countBy([4.3, 6.1, 6.4], function(n) {
- *   return this.floor(n);
- * }, Math);
- * // => { '4': 1, '6': 2 }
- *
- * _.countBy(['one', 'two', 'three'], 'length');
- * // => { '3': 2, '5': 1 }
- */
-var countBy = createAggregator(function(result, value, key) {
-  hasOwnProperty.call(result, key) ? ++result[key] : (result[key] = 1);
-});
-
-module.exports = countBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/detect.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/detect.js
deleted file mode 100644 (file)
index 2fb6303..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./find');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/each.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/each.js
deleted file mode 100644 (file)
index 8800f42..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./forEach');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/eachRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/eachRight.js
deleted file mode 100644 (file)
index 3252b2a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./forEachRight');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/every.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/every.js
deleted file mode 100644 (file)
index a04d3db..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-var arrayEvery = require('../internal/arrayEvery'),
-    baseCallback = require('../internal/baseCallback'),
-    baseEvery = require('../internal/baseEvery'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Checks if `predicate` returns truthy for **all** elements of `collection`.
- * The predicate is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @alias all
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- *  else `false`.
- * @example
- *
- * _.every([true, 1, null, 'yes'], Boolean);
- * // => false
- *
- * var users = [
- *   { 'user': 'barney', 'active': false },
- *   { 'user': 'fred',   'active': false }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.every(users, { 'user': 'barney', 'active': false });
- * // => false
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.every(users, 'active', false);
- * // => true
- *
- * // using the `_.property` callback shorthand
- * _.every(users, 'active');
- * // => false
- */
-function every(collection, predicate, thisArg) {
-  var func = isArray(collection) ? arrayEvery : baseEvery;
-  if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
-    predicate = null;
-  }
-  if (typeof predicate != 'function' || thisArg !== undefined) {
-    predicate = baseCallback(predicate, thisArg, 3);
-  }
-  return func(collection, predicate);
-}
-
-module.exports = every;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/filter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/filter.js
deleted file mode 100644 (file)
index 7620aa7..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-var arrayFilter = require('../internal/arrayFilter'),
-    baseCallback = require('../internal/baseCallback'),
-    baseFilter = require('../internal/baseFilter'),
-    isArray = require('../lang/isArray');
-
-/**
- * Iterates over elements of `collection`, returning an array of all elements
- * `predicate` returns truthy for. The predicate is bound to `thisArg` and
- * invoked with three arguments: (value, index|key, collection).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @alias select
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the new filtered array.
- * @example
- *
- * _.filter([4, 5, 6], function(n) {
- *   return n % 2 == 0;
- * });
- * // => [4, 6]
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36, 'active': true },
- *   { 'user': 'fred',   'age': 40, 'active': false }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.filter(users, { 'age': 36, 'active': true }), 'user');
- * // => ['barney']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.filter(users, 'active', false), 'user');
- * // => ['fred']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.filter(users, 'active'), 'user');
- * // => ['barney']
- */
-function filter(collection, predicate, thisArg) {
-  var func = isArray(collection) ? arrayFilter : baseFilter;
-  predicate = baseCallback(predicate, thisArg, 3);
-  return func(collection, predicate);
-}
-
-module.exports = filter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/find.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/find.js
deleted file mode 100644 (file)
index 7358cfe..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var baseEach = require('../internal/baseEach'),
-    createFind = require('../internal/createFind');
-
-/**
- * Iterates over elements of `collection`, returning the first element
- * `predicate` returns truthy for. The predicate is bound to `thisArg` and
- * invoked with three arguments: (value, index|key, collection).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @alias detect
- * @category Collection
- * @param {Array|Object|string} collection The collection to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {*} Returns the matched element, else `undefined`.
- * @example
- *
- * var users = [
- *   { 'user': 'barney',  'age': 36, 'active': true },
- *   { 'user': 'fred',    'age': 40, 'active': false },
- *   { 'user': 'pebbles', 'age': 1,  'active': true }
- * ];
- *
- * _.result(_.find(users, function(chr) {
- *   return chr.age < 40;
- * }), 'user');
- * // => 'barney'
- *
- * // using the `_.matches` callback shorthand
- * _.result(_.find(users, { 'age': 1, 'active': true }), 'user');
- * // => 'pebbles'
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.result(_.find(users, 'active', false), 'user');
- * // => 'fred'
- *
- * // using the `_.property` callback shorthand
- * _.result(_.find(users, 'active'), 'user');
- * // => 'barney'
- */
-var find = createFind(baseEach);
-
-module.exports = find;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findLast.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findLast.js
deleted file mode 100644 (file)
index 75dbadc..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var baseEachRight = require('../internal/baseEachRight'),
-    createFind = require('../internal/createFind');
-
-/**
- * This method is like `_.find` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {*} Returns the matched element, else `undefined`.
- * @example
- *
- * _.findLast([1, 2, 3, 4], function(n) {
- *   return n % 2 == 1;
- * });
- * // => 3
- */
-var findLast = createFind(baseEachRight, true);
-
-module.exports = findLast;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findWhere.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/findWhere.js
deleted file mode 100644 (file)
index 2d62065..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var baseMatches = require('../internal/baseMatches'),
-    find = require('./find');
-
-/**
- * Performs a deep comparison between each element in `collection` and the
- * source object, returning the first element that has equivalent property
- * values.
- *
- * **Note:** This method supports comparing arrays, booleans, `Date` objects,
- * numbers, `Object` objects, regexes, and strings. Objects are compared by
- * their own, not inherited, enumerable properties. For comparing a single
- * own or inherited property value see `_.matchesProperty`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to search.
- * @param {Object} source The object of property values to match.
- * @returns {*} Returns the matched element, else `undefined`.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36, 'active': true },
- *   { 'user': 'fred',   'age': 40, 'active': false }
- * ];
- *
- * _.result(_.findWhere(users, { 'age': 36, 'active': true }), 'user');
- * // => 'barney'
- *
- * _.result(_.findWhere(users, { 'age': 40, 'active': false }), 'user');
- * // => 'fred'
- */
-function findWhere(collection, source) {
-  return find(collection, baseMatches(source));
-}
-
-module.exports = findWhere;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldl.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldl.js
deleted file mode 100644 (file)
index 26f53cf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./reduce');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldr.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/foldr.js
deleted file mode 100644 (file)
index 8fb199e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./reduceRight');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEach.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEach.js
deleted file mode 100644 (file)
index 05a8e21..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var arrayEach = require('../internal/arrayEach'),
-    baseEach = require('../internal/baseEach'),
-    createForEach = require('../internal/createForEach');
-
-/**
- * Iterates over elements of `collection` invoking `iteratee` for each element.
- * The `iteratee` is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection). Iteratee functions may exit iteration early
- * by explicitly returning `false`.
- *
- * **Note:** As with other "Collections" methods, objects with a "length" property
- * are iterated like arrays. To avoid this behavior `_.forIn` or `_.forOwn`
- * may be used for object iteration.
- *
- * @static
- * @memberOf _
- * @alias each
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array|Object|string} Returns `collection`.
- * @example
- *
- * _([1, 2]).forEach(function(n) {
- *   console.log(n);
- * }).value();
- * // => logs each value from left to right and returns the array
- *
- * _.forEach({ 'a': 1, 'b': 2 }, function(n, key) {
- *   console.log(n, key);
- * });
- * // => logs each value-key pair and returns the object (iteration order is not guaranteed)
- */
-var forEach = createForEach(arrayEach, baseEach);
-
-module.exports = forEach;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEachRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/forEachRight.js
deleted file mode 100644 (file)
index 3499711..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var arrayEachRight = require('../internal/arrayEachRight'),
-    baseEachRight = require('../internal/baseEachRight'),
-    createForEach = require('../internal/createForEach');
-
-/**
- * This method is like `_.forEach` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @alias eachRight
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array|Object|string} Returns `collection`.
- * @example
- *
- * _([1, 2]).forEachRight(function(n) {
- *   console.log(n);
- * }).value();
- * // => logs each value from right to left and returns the array
- */
-var forEachRight = createForEach(arrayEachRight, baseEachRight);
-
-module.exports = forEachRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/groupBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/groupBy.js
deleted file mode 100644 (file)
index a925c89..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-var createAggregator = require('../internal/createAggregator');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` through `iteratee`. The corresponding value
- * of each key is an array of the elements responsible for generating the key.
- * The `iteratee` is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * _.groupBy([4.2, 6.1, 6.4], function(n) {
- *   return Math.floor(n);
- * });
- * // => { '4': [4.2], '6': [6.1, 6.4] }
- *
- * _.groupBy([4.2, 6.1, 6.4], function(n) {
- *   return this.floor(n);
- * }, Math);
- * // => { '4': [4.2], '6': [6.1, 6.4] }
- *
- * // using the `_.property` callback shorthand
- * _.groupBy(['one', 'two', 'three'], 'length');
- * // => { '3': ['one', 'two'], '5': ['three'] }
- */
-var groupBy = createAggregator(function(result, value, key) {
-  if (hasOwnProperty.call(result, key)) {
-    result[key].push(value);
-  } else {
-    result[key] = [value];
-  }
-});
-
-module.exports = groupBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/include.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/include.js
deleted file mode 100644 (file)
index 594722a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./includes');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/includes.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/includes.js
deleted file mode 100644 (file)
index dcf6f20..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-var baseIndexOf = require('../internal/baseIndexOf'),
-    getLength = require('../internal/getLength'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    isLength = require('../internal/isLength'),
-    isString = require('../lang/isString'),
-    values = require('../object/values');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Checks if `value` is in `collection` using `SameValueZero` for equality
- * comparisons. If `fromIndex` is negative, it is used as the offset from
- * the end of `collection`.
- *
- * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
- * comparisons are like strict equality comparisons, e.g. `===`, except that
- * `NaN` matches `NaN`.
- *
- * @static
- * @memberOf _
- * @alias contains, include
- * @category Collection
- * @param {Array|Object|string} collection The collection to search.
- * @param {*} target The value to search for.
- * @param {number} [fromIndex=0] The index to search from.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.reduce`.
- * @returns {boolean} Returns `true` if a matching element is found, else `false`.
- * @example
- *
- * _.includes([1, 2, 3], 1);
- * // => true
- *
- * _.includes([1, 2, 3], 1, 2);
- * // => false
- *
- * _.includes({ 'user': 'fred', 'age': 40 }, 'fred');
- * // => true
- *
- * _.includes('pebbles', 'eb');
- * // => true
- */
-function includes(collection, target, fromIndex, guard) {
-  var length = collection ? getLength(collection) : 0;
-  if (!isLength(length)) {
-    collection = values(collection);
-    length = collection.length;
-  }
-  if (!length) {
-    return false;
-  }
-  if (typeof fromIndex != 'number' || (guard && isIterateeCall(target, fromIndex, guard))) {
-    fromIndex = 0;
-  } else {
-    fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : (fromIndex || 0);
-  }
-  return (typeof collection == 'string' || !isArray(collection) && isString(collection))
-    ? (fromIndex < length && collection.indexOf(target, fromIndex) > -1)
-    : (baseIndexOf(collection, target, fromIndex) > -1);
-}
-
-module.exports = includes;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/indexBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/indexBy.js
deleted file mode 100644 (file)
index 34a941e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var createAggregator = require('../internal/createAggregator');
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` through `iteratee`. The corresponding value
- * of each key is the last element responsible for generating the key. The
- * iteratee function is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * var keyData = [
- *   { 'dir': 'left', 'code': 97 },
- *   { 'dir': 'right', 'code': 100 }
- * ];
- *
- * _.indexBy(keyData, 'dir');
- * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }
- *
- * _.indexBy(keyData, function(object) {
- *   return String.fromCharCode(object.code);
- * });
- * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }
- *
- * _.indexBy(keyData, function(object) {
- *   return this.fromCharCode(object.code);
- * }, String);
- * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }
- */
-var indexBy = createAggregator(function(result, value, key) {
-  result[key] = value;
-});
-
-module.exports = indexBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/inject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/inject.js
deleted file mode 100644 (file)
index 26f53cf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./reduce');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/invoke.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/invoke.js
deleted file mode 100644 (file)
index d68fa33..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var baseEach = require('../internal/baseEach'),
-    getLength = require('../internal/getLength'),
-    invokePath = require('../internal/invokePath'),
-    isKey = require('../internal/isKey'),
-    isLength = require('../internal/isLength'),
-    restParam = require('../function/restParam');
-
-/**
- * Invokes the method at `path` on each element in `collection`, returning
- * an array of the results of each invoked method. Any additional arguments
- * are provided to each invoked method. If `methodName` is a function it is
- * invoked for, and `this` bound to, each element in `collection`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Array|Function|string} path The path of the method to invoke or
- *  the function invoked per iteration.
- * @param {...*} [args] The arguments to invoke the method with.
- * @returns {Array} Returns the array of results.
- * @example
- *
- * _.invoke([[5, 1, 7], [3, 2, 1]], 'sort');
- * // => [[1, 5, 7], [1, 2, 3]]
- *
- * _.invoke([123, 456], String.prototype.split, '');
- * // => [['1', '2', '3'], ['4', '5', '6']]
- */
-var invoke = restParam(function(collection, path, args) {
-  var index = -1,
-      isFunc = typeof path == 'function',
-      isProp = isKey(path),
-      length = getLength(collection),
-      result = isLength(length) ? Array(length) : [];
-
-  baseEach(collection, function(value) {
-    var func = isFunc ? path : (isProp && value != null && value[path]);
-    result[++index] = func ? func.apply(value, args) : invokePath(value, path, args);
-  });
-  return result;
-});
-
-module.exports = invoke;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/map.js
deleted file mode 100644 (file)
index cc337bc..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var arrayMap = require('../internal/arrayMap'),
-    baseCallback = require('../internal/baseCallback'),
-    baseMap = require('../internal/baseMap'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates an array of values by running each element in `collection` through
- * `iteratee`. The `iteratee` is bound to `thisArg` and invoked with three
- * arguments: (value, index|key, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * Many lodash methods are guarded to work as interatees for methods like
- * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
- *
- * The guarded methods are:
- * `ary`, `callback`, `chunk`, `clone`, `create`, `curry`, `curryRight`, `drop`,
- * `dropRight`, `every`, `fill`, `flatten`, `invert`, `max`, `min`, `parseInt`,
- * `slice`, `sortBy`, `take`, `takeRight`, `template`, `trim`, `trimLeft`,
- * `trimRight`, `trunc`, `random`, `range`, `sample`, `some`, `uniq`, and `words`
- *
- * @static
- * @memberOf _
- * @alias collect
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array} Returns the new mapped array.
- * @example
- *
- * function timesThree(n) {
- *   return n * 3;
- * }
- *
- * _.map([1, 2], timesThree);
- * // => [3, 6]
- *
- * _.map({ 'a': 1, 'b': 2 }, timesThree);
- * // => [3, 6] (iteration order is not guaranteed)
- *
- * var users = [
- *   { 'user': 'barney' },
- *   { 'user': 'fred' }
- * ];
- *
- * // using the `_.property` callback shorthand
- * _.map(users, 'user');
- * // => ['barney', 'fred']
- */
-function map(collection, iteratee, thisArg) {
-  var func = isArray(collection) ? arrayMap : baseMap;
-  iteratee = baseCallback(iteratee, thisArg, 3);
-  return func(collection, iteratee);
-}
-
-module.exports = map;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/max.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/max.js
deleted file mode 100644 (file)
index bb1d213..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('../math/max');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/min.js
deleted file mode 100644 (file)
index eef13d0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('../math/min');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/partition.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/partition.js
deleted file mode 100644 (file)
index ee35f27..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-var createAggregator = require('../internal/createAggregator');
-
-/**
- * Creates an array of elements split into two groups, the first of which
- * contains elements `predicate` returns truthy for, while the second of which
- * contains elements `predicate` returns falsey for. The predicate is bound
- * to `thisArg` and invoked with three arguments: (value, index|key, collection).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the array of grouped elements.
- * @example
- *
- * _.partition([1, 2, 3], function(n) {
- *   return n % 2;
- * });
- * // => [[1, 3], [2]]
- *
- * _.partition([1.2, 2.3, 3.4], function(n) {
- *   return this.floor(n) % 2;
- * }, Math);
- * // => [[1.2, 3.4], [2.3]]
- *
- * var users = [
- *   { 'user': 'barney',  'age': 36, 'active': false },
- *   { 'user': 'fred',    'age': 40, 'active': true },
- *   { 'user': 'pebbles', 'age': 1,  'active': false }
- * ];
- *
- * var mapper = function(array) {
- *   return _.pluck(array, 'user');
- * };
- *
- * // using the `_.matches` callback shorthand
- * _.map(_.partition(users, { 'age': 1, 'active': false }), mapper);
- * // => [['pebbles'], ['barney', 'fred']]
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.map(_.partition(users, 'active', false), mapper);
- * // => [['barney', 'pebbles'], ['fred']]
- *
- * // using the `_.property` callback shorthand
- * _.map(_.partition(users, 'active'), mapper);
- * // => [['fred'], ['barney', 'pebbles']]
- */
-var partition = createAggregator(function(result, value, key) {
-  result[key ? 0 : 1].push(value);
-}, function() { return [[], []]; });
-
-module.exports = partition;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/pluck.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/pluck.js
deleted file mode 100644 (file)
index 5ee1ec8..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var map = require('./map'),
-    property = require('../utility/property');
-
-/**
- * Gets the property value of `path` from all elements in `collection`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Array|string} path The path of the property to pluck.
- * @returns {Array} Returns the property values.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 40 }
- * ];
- *
- * _.pluck(users, 'user');
- * // => ['barney', 'fred']
- *
- * var userIndex = _.indexBy(users, 'user');
- * _.pluck(userIndex, 'age');
- * // => [36, 40] (iteration order is not guaranteed)
- */
-function pluck(collection, path) {
-  return map(collection, property(path));
-}
-
-module.exports = pluck;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduce.js
deleted file mode 100644 (file)
index a483d25..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var arrayReduce = require('../internal/arrayReduce'),
-    baseEach = require('../internal/baseEach'),
-    createReduce = require('../internal/createReduce');
-
-/**
- * Reduces `collection` to a value which is the accumulated result of running
- * each element in `collection` through `iteratee`, where each successive
- * invocation is supplied the return value of the previous. If `accumulator`
- * is not provided the first element of `collection` is used as the initial
- * value. The `iteratee` is bound to `thisArg` and invoked with four arguments:
- * (accumulator, value, index|key, collection).
- *
- * Many lodash methods are guarded to work as interatees for methods like
- * `_.reduce`, `_.reduceRight`, and `_.transform`.
- *
- * The guarded methods are:
- * `assign`, `defaults`, `includes`, `merge`, `sortByAll`, and `sortByOrder`
- *
- * @static
- * @memberOf _
- * @alias foldl, inject
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {*} Returns the accumulated value.
- * @example
- *
- * _.reduce([1, 2], function(total, n) {
- *   return total + n;
- * });
- * // => 3
- *
- * _.reduce({ 'a': 1, 'b': 2 }, function(result, n, key) {
- *   result[key] = n * 3;
- *   return result;
- * }, {});
- * // => { 'a': 3, 'b': 6 } (iteration order is not guaranteed)
- */
-var reduce = createReduce(arrayReduce, baseEach);
-
-module.exports = reduce;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduceRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reduceRight.js
deleted file mode 100644 (file)
index b40e333..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var arrayReduceRight = require('../internal/arrayReduceRight'),
-    baseEachRight = require('../internal/baseEachRight'),
-    createReduce = require('../internal/createReduce');
-
-/**
- * This method is like `_.reduce` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @alias foldr
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {*} Returns the accumulated value.
- * @example
- *
- * var array = [[0, 1], [2, 3], [4, 5]];
- *
- * _.reduceRight(array, function(flattened, other) {
- *   return flattened.concat(other);
- * }, []);
- * // => [4, 5, 2, 3, 0, 1]
- */
-var reduceRight =  createReduce(arrayReduceRight, baseEachRight);
-
-module.exports = reduceRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/reject.js
deleted file mode 100644 (file)
index e783fc7..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-var arrayFilter = require('../internal/arrayFilter'),
-    baseCallback = require('../internal/baseCallback'),
-    baseFilter = require('../internal/baseFilter'),
-    isArray = require('../lang/isArray');
-
-/**
- * The opposite of `_.filter`; this method returns the elements of `collection`
- * that `predicate` does **not** return truthy for.
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Array} Returns the new filtered array.
- * @example
- *
- * _.reject([1, 2, 3, 4], function(n) {
- *   return n % 2 == 0;
- * });
- * // => [1, 3]
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36, 'active': false },
- *   { 'user': 'fred',   'age': 40, 'active': true }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.pluck(_.reject(users, { 'age': 40, 'active': true }), 'user');
- * // => ['barney']
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.pluck(_.reject(users, 'active', false), 'user');
- * // => ['fred']
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.reject(users, 'active'), 'user');
- * // => ['barney']
- */
-function reject(collection, predicate, thisArg) {
-  var func = isArray(collection) ? arrayFilter : baseFilter;
-  predicate = baseCallback(predicate, thisArg, 3);
-  return func(collection, function(value, index, collection) {
-    return !predicate(value, index, collection);
-  });
-}
-
-module.exports = reject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sample.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sample.js
deleted file mode 100644 (file)
index f090db1..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var baseRandom = require('../internal/baseRandom'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    shuffle = require('./shuffle'),
-    toIterable = require('../internal/toIterable');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Gets a random element or `n` random elements from a collection.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to sample.
- * @param {number} [n] The number of elements to sample.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {*} Returns the random sample(s).
- * @example
- *
- * _.sample([1, 2, 3, 4]);
- * // => 2
- *
- * _.sample([1, 2, 3, 4], 2);
- * // => [3, 1]
- */
-function sample(collection, n, guard) {
-  if (guard ? isIterateeCall(collection, n, guard) : n == null) {
-    collection = toIterable(collection);
-    var length = collection.length;
-    return length > 0 ? collection[baseRandom(0, length - 1)] : undefined;
-  }
-  var result = shuffle(collection);
-  result.length = nativeMin(n < 0 ? 0 : (+n || 0), result.length);
-  return result;
-}
-
-module.exports = sample;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/select.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/select.js
deleted file mode 100644 (file)
index ade80f6..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./filter');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/shuffle.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/shuffle.js
deleted file mode 100644 (file)
index 2281d4f..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var baseRandom = require('../internal/baseRandom'),
-    toIterable = require('../internal/toIterable');
-
-/**
- * Creates an array of shuffled values, using a version of the
- * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to shuffle.
- * @returns {Array} Returns the new shuffled array.
- * @example
- *
- * _.shuffle([1, 2, 3, 4]);
- * // => [4, 1, 3, 2]
- */
-function shuffle(collection) {
-  collection = toIterable(collection);
-
-  var index = -1,
-      length = collection.length,
-      result = Array(length);
-
-  while (++index < length) {
-    var rand = baseRandom(0, index);
-    if (index != rand) {
-      result[index] = result[rand];
-    }
-    result[rand] = collection[index];
-  }
-  return result;
-}
-
-module.exports = shuffle;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/size.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/size.js
deleted file mode 100644 (file)
index 78dcf4c..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var getLength = require('../internal/getLength'),
-    isLength = require('../internal/isLength'),
-    keys = require('../object/keys');
-
-/**
- * Gets the size of `collection` by returning its length for array-like
- * values or the number of own enumerable properties for objects.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to inspect.
- * @returns {number} Returns the size of `collection`.
- * @example
- *
- * _.size([1, 2, 3]);
- * // => 3
- *
- * _.size({ 'a': 1, 'b': 2 });
- * // => 2
- *
- * _.size('pebbles');
- * // => 7
- */
-function size(collection) {
-  var length = collection ? getLength(collection) : 0;
-  return isLength(length) ? length : keys(collection).length;
-}
-
-module.exports = size;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/some.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/some.js
deleted file mode 100644 (file)
index 2b866b4..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var arraySome = require('../internal/arraySome'),
-    baseCallback = require('../internal/baseCallback'),
-    baseSome = require('../internal/baseSome'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Checks if `predicate` returns truthy for **any** element of `collection`.
- * The function returns as soon as it finds a passing value and does not iterate
- * over the entire collection. The predicate is bound to `thisArg` and invoked
- * with three arguments: (value, index|key, collection).
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @alias any
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- *  else `false`.
- * @example
- *
- * _.some([null, 0, 'yes', false], Boolean);
- * // => true
- *
- * var users = [
- *   { 'user': 'barney', 'active': true },
- *   { 'user': 'fred',   'active': false }
- * ];
- *
- * // using the `_.matches` callback shorthand
- * _.some(users, { 'user': 'barney', 'active': false });
- * // => false
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.some(users, 'active', false);
- * // => true
- *
- * // using the `_.property` callback shorthand
- * _.some(users, 'active');
- * // => true
- */
-function some(collection, predicate, thisArg) {
-  var func = isArray(collection) ? arraySome : baseSome;
-  if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
-    predicate = null;
-  }
-  if (typeof predicate != 'function' || thisArg !== undefined) {
-    predicate = baseCallback(predicate, thisArg, 3);
-  }
-  return func(collection, predicate);
-}
-
-module.exports = some;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortBy.js
deleted file mode 100644 (file)
index 28d75f5..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseMap = require('../internal/baseMap'),
-    baseSortBy = require('../internal/baseSortBy'),
-    compareAscending = require('../internal/compareAscending'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates an array of elements, sorted in ascending order by the results of
- * running each element in a collection through `iteratee`. This method performs
- * a stable sort, that is, it preserves the original sort order of equal elements.
- * The `iteratee` is bound to `thisArg` and invoked with three arguments:
- * (value, index|key, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array} Returns the new sorted array.
- * @example
- *
- * _.sortBy([1, 2, 3], function(n) {
- *   return Math.sin(n);
- * });
- * // => [3, 1, 2]
- *
- * _.sortBy([1, 2, 3], function(n) {
- *   return this.sin(n);
- * }, Math);
- * // => [3, 1, 2]
- *
- * var users = [
- *   { 'user': 'fred' },
- *   { 'user': 'pebbles' },
- *   { 'user': 'barney' }
- * ];
- *
- * // using the `_.property` callback shorthand
- * _.pluck(_.sortBy(users, 'user'), 'user');
- * // => ['barney', 'fred', 'pebbles']
- */
-function sortBy(collection, iteratee, thisArg) {
-  if (collection == null) {
-    return [];
-  }
-  if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-    iteratee = null;
-  }
-  var index = -1;
-  iteratee = baseCallback(iteratee, thisArg, 3);
-
-  var result = baseMap(collection, function(value, key, collection) {
-    return { 'criteria': iteratee(value, key, collection), 'index': ++index, 'value': value };
-  });
-  return baseSortBy(result, compareAscending);
-}
-
-module.exports = sortBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByAll.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByAll.js
deleted file mode 100644 (file)
index 4766c20..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    baseSortByOrder = require('../internal/baseSortByOrder'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    restParam = require('../function/restParam');
-
-/**
- * This method is like `_.sortBy` except that it can sort by multiple iteratees
- * or property names.
- *
- * If a property name is provided for an iteratee the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If an object is provided for an iteratee the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {...(Function|Function[]|Object|Object[]|string|string[])} iteratees
- *  The iteratees to sort by, specified as individual values or arrays of values.
- * @returns {Array} Returns the new sorted array.
- * @example
- *
- * var users = [
- *   { 'user': 'fred',   'age': 48 },
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 42 },
- *   { 'user': 'barney', 'age': 34 }
- * ];
- *
- * _.map(_.sortByAll(users, ['user', 'age']), _.values);
- * // => [['barney', 34], ['barney', 36], ['fred', 42], ['fred', 48]]
- *
- * _.map(_.sortByAll(users, 'user', function(chr) {
- *   return Math.floor(chr.age / 10);
- * }), _.values);
- * // => [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
- */
-var sortByAll = restParam(function(collection, iteratees) {
-  if (collection == null) {
-    return [];
-  }
-  var guard = iteratees[2];
-  if (guard && isIterateeCall(iteratees[0], iteratees[1], guard)) {
-    iteratees.length = 1;
-  }
-  return baseSortByOrder(collection, baseFlatten(iteratees), []);
-});
-
-module.exports = sortByAll;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByOrder.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sortByOrder.js
deleted file mode 100644 (file)
index c704eeb..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-var baseSortByOrder = require('../internal/baseSortByOrder'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * This method is like `_.sortByAll` except that it allows specifying the
- * sort orders of the iteratees to sort by. A truthy value in `orders` will
- * sort the corresponding property name in ascending order while a falsey
- * value will sort it in descending order.
- *
- * If a property name is provided for an iteratee the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If an object is provided for an iteratee the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
- * @param {boolean[]} orders The sort orders of `iteratees`.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.reduce`.
- * @returns {Array} Returns the new sorted array.
- * @example
- *
- * var users = [
- *   { 'user': 'fred',   'age': 48 },
- *   { 'user': 'barney', 'age': 34 },
- *   { 'user': 'fred',   'age': 42 },
- *   { 'user': 'barney', 'age': 36 }
- * ];
- *
- * // sort by `user` in ascending order and by `age` in descending order
- * _.map(_.sortByOrder(users, ['user', 'age'], [true, false]), _.values);
- * // => [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
- */
-function sortByOrder(collection, iteratees, orders, guard) {
-  if (collection == null) {
-    return [];
-  }
-  if (guard && isIterateeCall(iteratees, orders, guard)) {
-    orders = null;
-  }
-  if (!isArray(iteratees)) {
-    iteratees = iteratees == null ? [] : [iteratees];
-  }
-  if (!isArray(orders)) {
-    orders = orders == null ? [] : [orders];
-  }
-  return baseSortByOrder(collection, iteratees, orders);
-}
-
-module.exports = sortByOrder;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/sum.js
deleted file mode 100644 (file)
index a2e9380..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('../math/sum');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/where.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/collection/where.js
deleted file mode 100644 (file)
index f603bf8..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var baseMatches = require('../internal/baseMatches'),
-    filter = require('./filter');
-
-/**
- * Performs a deep comparison between each element in `collection` and the
- * source object, returning an array of all elements that have equivalent
- * property values.
- *
- * **Note:** This method supports comparing arrays, booleans, `Date` objects,
- * numbers, `Object` objects, regexes, and strings. Objects are compared by
- * their own, not inherited, enumerable properties. For comparing a single
- * own or inherited property value see `_.matchesProperty`.
- *
- * @static
- * @memberOf _
- * @category Collection
- * @param {Array|Object|string} collection The collection to search.
- * @param {Object} source The object of property values to match.
- * @returns {Array} Returns the new filtered array.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36, 'active': false, 'pets': ['hoppy'] },
- *   { 'user': 'fred',   'age': 40, 'active': true, 'pets': ['baby puss', 'dino'] }
- * ];
- *
- * _.pluck(_.where(users, { 'age': 36, 'active': false }), 'user');
- * // => ['barney']
- *
- * _.pluck(_.where(users, { 'pets': ['dino'] }), 'user');
- * // => ['fred']
- */
-function where(collection, source) {
-  return filter(collection, baseMatches(source));
-}
-
-module.exports = where;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date.js
deleted file mode 100644 (file)
index 195366e..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = {
-  'now': require('./date/now')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date/now.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/date/now.js
deleted file mode 100644 (file)
index 628225d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var isNative = require('../lang/isNative');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeNow = isNative(nativeNow = Date.now) && nativeNow;
-
-/**
- * Gets the number of milliseconds that have elapsed since the Unix epoch
- * (1 January 1970 00:00:00 UTC).
- *
- * @static
- * @memberOf _
- * @category Date
- * @example
- *
- * _.defer(function(stamp) {
- *   console.log(_.now() - stamp);
- * }, _.now());
- * // => logs the number of milliseconds it took for the deferred function to be invoked
- */
-var now = nativeNow || function() {
-  return new Date().getTime();
-};
-
-module.exports = now;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function.js
deleted file mode 100644 (file)
index 2cacde1..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-module.exports = {
-  'after': require('./function/after'),
-  'ary': require('./function/ary'),
-  'backflow': require('./function/backflow'),
-  'before': require('./function/before'),
-  'bind': require('./function/bind'),
-  'bindAll': require('./function/bindAll'),
-  'bindKey': require('./function/bindKey'),
-  'compose': require('./function/compose'),
-  'curry': require('./function/curry'),
-  'curryRight': require('./function/curryRight'),
-  'debounce': require('./function/debounce'),
-  'defer': require('./function/defer'),
-  'delay': require('./function/delay'),
-  'flow': require('./function/flow'),
-  'flowRight': require('./function/flowRight'),
-  'memoize': require('./function/memoize'),
-  'negate': require('./function/negate'),
-  'once': require('./function/once'),
-  'partial': require('./function/partial'),
-  'partialRight': require('./function/partialRight'),
-  'rearg': require('./function/rearg'),
-  'restParam': require('./function/restParam'),
-  'spread': require('./function/spread'),
-  'throttle': require('./function/throttle'),
-  'wrap': require('./function/wrap')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/after.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/after.js
deleted file mode 100644 (file)
index e6a5de4..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
-
-/**
- * The opposite of `_.before`; this method creates a function that invokes
- * `func` once it is called `n` or more times.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {number} n The number of calls before `func` is invoked.
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * var saves = ['profile', 'settings'];
- *
- * var done = _.after(saves.length, function() {
- *   console.log('done saving!');
- * });
- *
- * _.forEach(saves, function(type) {
- *   asyncSave({ 'type': type, 'complete': done });
- * });
- * // => logs 'done saving!' after the two async saves have completed
- */
-function after(n, func) {
-  if (typeof func != 'function') {
-    if (typeof n == 'function') {
-      var temp = n;
-      n = func;
-      func = temp;
-    } else {
-      throw new TypeError(FUNC_ERROR_TEXT);
-    }
-  }
-  n = nativeIsFinite(n = +n) ? n : 0;
-  return function() {
-    if (--n < 1) {
-      return func.apply(this, arguments);
-    }
-  };
-}
-
-module.exports = after;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/ary.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/ary.js
deleted file mode 100644 (file)
index 1bcb6a7..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-var createWrapper = require('../internal/createWrapper'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var ARY_FLAG = 128;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that accepts up to `n` arguments ignoring any
- * additional arguments.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to cap arguments for.
- * @param {number} [n=func.length] The arity cap.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Function} Returns the new function.
- * @example
- *
- * _.map(['6', '8', '10'], _.ary(parseInt, 1));
- * // => [6, 8, 10]
- */
-function ary(func, n, guard) {
-  if (guard && isIterateeCall(func, n, guard)) {
-    n = null;
-  }
-  n = (func && n == null) ? func.length : nativeMax(+n || 0, 0);
-  return createWrapper(func, ARY_FLAG, null, null, null, null, n);
-}
-
-module.exports = ary;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/backflow.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/backflow.js
deleted file mode 100644 (file)
index 1954e94..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./flowRight');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/before.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/before.js
deleted file mode 100644 (file)
index 4afd1e6..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that invokes `func`, with the `this` binding and arguments
- * of the created function, while it is called less than `n` times. Subsequent
- * calls to the created function return the result of the last `func` invocation.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {number} n The number of calls at which `func` is no longer invoked.
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * jQuery('#add').on('click', _.before(5, addContactToList));
- * // => allows adding up to 4 contacts to the list
- */
-function before(n, func) {
-  var result;
-  if (typeof func != 'function') {
-    if (typeof n == 'function') {
-      var temp = n;
-      n = func;
-      func = temp;
-    } else {
-      throw new TypeError(FUNC_ERROR_TEXT);
-    }
-  }
-  return function() {
-    if (--n > 0) {
-      result = func.apply(this, arguments);
-    }
-    if (n <= 1) {
-      func = null;
-    }
-    return result;
-  };
-}
-
-module.exports = before;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bind.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bind.js
deleted file mode 100644 (file)
index 0de126a..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var createWrapper = require('../internal/createWrapper'),
-    replaceHolders = require('../internal/replaceHolders'),
-    restParam = require('./restParam');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1,
-    PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes `func` with the `this` binding of `thisArg`
- * and prepends any additional `_.bind` arguments to those provided to the
- * bound function.
- *
- * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,
- * may be used as a placeholder for partially applied arguments.
- *
- * **Note:** Unlike native `Function#bind` this method does not set the "length"
- * property of bound functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to bind.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new bound function.
- * @example
- *
- * var greet = function(greeting, punctuation) {
- *   return greeting + ' ' + this.user + punctuation;
- * };
- *
- * var object = { 'user': 'fred' };
- *
- * var bound = _.bind(greet, object, 'hi');
- * bound('!');
- * // => 'hi fred!'
- *
- * // using placeholders
- * var bound = _.bind(greet, object, _, '!');
- * bound('hi');
- * // => 'hi fred!'
- */
-var bind = restParam(function(func, thisArg, partials) {
-  var bitmask = BIND_FLAG;
-  if (partials.length) {
-    var holders = replaceHolders(partials, bind.placeholder);
-    bitmask |= PARTIAL_FLAG;
-  }
-  return createWrapper(func, bitmask, thisArg, partials, holders);
-});
-
-// Assign default placeholders.
-bind.placeholder = {};
-
-module.exports = bind;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindAll.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindAll.js
deleted file mode 100644 (file)
index a09e948..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    createWrapper = require('../internal/createWrapper'),
-    functions = require('../object/functions'),
-    restParam = require('./restParam');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1;
-
-/**
- * Binds methods of an object to the object itself, overwriting the existing
- * method. Method names may be specified as individual arguments or as arrays
- * of method names. If no method names are provided all enumerable function
- * properties, own and inherited, of `object` are bound.
- *
- * **Note:** This method does not set the "length" property of bound functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Object} object The object to bind and assign the bound methods to.
- * @param {...(string|string[])} [methodNames] The object method names to bind,
- *  specified as individual method names or arrays of method names.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var view = {
- *   'label': 'docs',
- *   'onClick': function() {
- *     console.log('clicked ' + this.label);
- *   }
- * };
- *
- * _.bindAll(view);
- * jQuery('#docs').on('click', view.onClick);
- * // => logs 'clicked docs' when the element is clicked
- */
-var bindAll = restParam(function(object, methodNames) {
-  methodNames = methodNames.length ? baseFlatten(methodNames) : functions(object);
-
-  var index = -1,
-      length = methodNames.length;
-
-  while (++index < length) {
-    var key = methodNames[index];
-    object[key] = createWrapper(object[key], BIND_FLAG, object);
-  }
-  return object;
-});
-
-module.exports = bindAll;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindKey.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/bindKey.js
deleted file mode 100644 (file)
index b787fe7..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-var createWrapper = require('../internal/createWrapper'),
-    replaceHolders = require('../internal/replaceHolders'),
-    restParam = require('./restParam');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1,
-    BIND_KEY_FLAG = 2,
-    PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes the method at `object[key]` and prepends
- * any additional `_.bindKey` arguments to those provided to the bound function.
- *
- * This method differs from `_.bind` by allowing bound functions to reference
- * methods that may be redefined or don't yet exist.
- * See [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)
- * for more details.
- *
- * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Object} object The object the method belongs to.
- * @param {string} key The key of the method.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new bound function.
- * @example
- *
- * var object = {
- *   'user': 'fred',
- *   'greet': function(greeting, punctuation) {
- *     return greeting + ' ' + this.user + punctuation;
- *   }
- * };
- *
- * var bound = _.bindKey(object, 'greet', 'hi');
- * bound('!');
- * // => 'hi fred!'
- *
- * object.greet = function(greeting, punctuation) {
- *   return greeting + 'ya ' + this.user + punctuation;
- * };
- *
- * bound('!');
- * // => 'hiya fred!'
- *
- * // using placeholders
- * var bound = _.bindKey(object, 'greet', _, '!');
- * bound('hi');
- * // => 'hiya fred!'
- */
-var bindKey = restParam(function(object, key, partials) {
-  var bitmask = BIND_FLAG | BIND_KEY_FLAG;
-  if (partials.length) {
-    var holders = replaceHolders(partials, bindKey.placeholder);
-    bitmask |= PARTIAL_FLAG;
-  }
-  return createWrapper(key, bitmask, object, partials, holders);
-});
-
-// Assign default placeholders.
-bindKey.placeholder = {};
-
-module.exports = bindKey;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/compose.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/compose.js
deleted file mode 100644 (file)
index 1954e94..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./flowRight');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curry.js
deleted file mode 100644 (file)
index b7db3fd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var createCurry = require('../internal/createCurry');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var CURRY_FLAG = 8;
-
-/**
- * Creates a function that accepts one or more arguments of `func` that when
- * called either invokes `func` returning its result, if all `func` arguments
- * have been provided, or returns a function that accepts one or more of the
- * remaining `func` arguments, and so on. The arity of `func` may be specified
- * if `func.length` is not sufficient.
- *
- * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,
- * may be used as a placeholder for provided arguments.
- *
- * **Note:** This method does not set the "length" property of curried functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to curry.
- * @param {number} [arity=func.length] The arity of `func`.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Function} Returns the new curried function.
- * @example
- *
- * var abc = function(a, b, c) {
- *   return [a, b, c];
- * };
- *
- * var curried = _.curry(abc);
- *
- * curried(1)(2)(3);
- * // => [1, 2, 3]
- *
- * curried(1, 2)(3);
- * // => [1, 2, 3]
- *
- * curried(1, 2, 3);
- * // => [1, 2, 3]
- *
- * // using placeholders
- * curried(1)(_, 3)(2);
- * // => [1, 2, 3]
- */
-var curry = createCurry(CURRY_FLAG);
-
-// Assign default placeholders.
-curry.placeholder = {};
-
-module.exports = curry;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curryRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/curryRight.js
deleted file mode 100644 (file)
index 11c5403..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-var createCurry = require('../internal/createCurry');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var CURRY_RIGHT_FLAG = 16;
-
-/**
- * This method is like `_.curry` except that arguments are applied to `func`
- * in the manner of `_.partialRight` instead of `_.partial`.
- *
- * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for provided arguments.
- *
- * **Note:** This method does not set the "length" property of curried functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to curry.
- * @param {number} [arity=func.length] The arity of `func`.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Function} Returns the new curried function.
- * @example
- *
- * var abc = function(a, b, c) {
- *   return [a, b, c];
- * };
- *
- * var curried = _.curryRight(abc);
- *
- * curried(3)(2)(1);
- * // => [1, 2, 3]
- *
- * curried(2, 3)(1);
- * // => [1, 2, 3]
- *
- * curried(1, 2, 3);
- * // => [1, 2, 3]
- *
- * // using placeholders
- * curried(3)(1, _)(2);
- * // => [1, 2, 3]
- */
-var curryRight = createCurry(CURRY_RIGHT_FLAG);
-
-// Assign default placeholders.
-curryRight.placeholder = {};
-
-module.exports = curryRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/debounce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/debounce.js
deleted file mode 100644 (file)
index 5fdf7fc..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-var isObject = require('../lang/isObject'),
-    now = require('../date/now');
-
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that delays invoking `func` until after `wait` milliseconds
- * have elapsed since the last time it was invoked. The created function comes
- * with a `cancel` method to cancel delayed invocations. Provide an options
- * object to indicate that `func` should be invoked on the leading and/or
- * trailing edge of the `wait` timeout. Subsequent calls to the debounced
- * function return the result of the last `func` invocation.
- *
- * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked
- * on the trailing edge of the timeout only if the the debounced function is
- * invoked more than once during the `wait` timeout.
- *
- * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)
- * for details over the differences between `_.debounce` and `_.throttle`.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to debounce.
- * @param {number} [wait=0] The number of milliseconds to delay.
- * @param {Object} [options] The options object.
- * @param {boolean} [options.leading=false] Specify invoking on the leading
- *  edge of the timeout.
- * @param {number} [options.maxWait] The maximum time `func` is allowed to be
- *  delayed before it is invoked.
- * @param {boolean} [options.trailing=true] Specify invoking on the trailing
- *  edge of the timeout.
- * @returns {Function} Returns the new debounced function.
- * @example
- *
- * // avoid costly calculations while the window size is in flux
- * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
- *
- * // invoke `sendMail` when the click event is fired, debouncing subsequent calls
- * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {
- *   'leading': true,
- *   'trailing': false
- * }));
- *
- * // ensure `batchLog` is invoked once after 1 second of debounced calls
- * var source = new EventSource('/stream');
- * jQuery(source).on('message', _.debounce(batchLog, 250, {
- *   'maxWait': 1000
- * }));
- *
- * // cancel a debounced call
- * var todoChanges = _.debounce(batchLog, 1000);
- * Object.observe(models.todo, todoChanges);
- *
- * Object.observe(models, function(changes) {
- *   if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {
- *     todoChanges.cancel();
- *   }
- * }, ['delete']);
- *
- * // ...at some point `models.todo` is changed
- * models.todo.completed = true;
- *
- * // ...before 1 second has passed `models.todo` is deleted
- * // which cancels the debounced `todoChanges` call
- * delete models.todo;
- */
-function debounce(func, wait, options) {
-  var args,
-      maxTimeoutId,
-      result,
-      stamp,
-      thisArg,
-      timeoutId,
-      trailingCall,
-      lastCalled = 0,
-      maxWait = false,
-      trailing = true;
-
-  if (typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  wait = wait < 0 ? 0 : (+wait || 0);
-  if (options === true) {
-    var leading = true;
-    trailing = false;
-  } else if (isObject(options)) {
-    leading = options.leading;
-    maxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);
-    trailing = 'trailing' in options ? options.trailing : trailing;
-  }
-
-  function cancel() {
-    if (timeoutId) {
-      clearTimeout(timeoutId);
-    }
-    if (maxTimeoutId) {
-      clearTimeout(maxTimeoutId);
-    }
-    maxTimeoutId = timeoutId = trailingCall = undefined;
-  }
-
-  function delayed() {
-    var remaining = wait - (now() - stamp);
-    if (remaining <= 0 || remaining > wait) {
-      if (maxTimeoutId) {
-        clearTimeout(maxTimeoutId);
-      }
-      var isCalled = trailingCall;
-      maxTimeoutId = timeoutId = trailingCall = undefined;
-      if (isCalled) {
-        lastCalled = now();
-        result = func.apply(thisArg, args);
-        if (!timeoutId && !maxTimeoutId) {
-          args = thisArg = null;
-        }
-      }
-    } else {
-      timeoutId = setTimeout(delayed, remaining);
-    }
-  }
-
-  function maxDelayed() {
-    if (timeoutId) {
-      clearTimeout(timeoutId);
-    }
-    maxTimeoutId = timeoutId = trailingCall = undefined;
-    if (trailing || (maxWait !== wait)) {
-      lastCalled = now();
-      result = func.apply(thisArg, args);
-      if (!timeoutId && !maxTimeoutId) {
-        args = thisArg = null;
-      }
-    }
-  }
-
-  function debounced() {
-    args = arguments;
-    stamp = now();
-    thisArg = this;
-    trailingCall = trailing && (timeoutId || !leading);
-
-    if (maxWait === false) {
-      var leadingCall = leading && !timeoutId;
-    } else {
-      if (!maxTimeoutId && !leading) {
-        lastCalled = stamp;
-      }
-      var remaining = maxWait - (stamp - lastCalled),
-          isCalled = remaining <= 0 || remaining > maxWait;
-
-      if (isCalled) {
-        if (maxTimeoutId) {
-          maxTimeoutId = clearTimeout(maxTimeoutId);
-        }
-        lastCalled = stamp;
-        result = func.apply(thisArg, args);
-      }
-      else if (!maxTimeoutId) {
-        maxTimeoutId = setTimeout(maxDelayed, remaining);
-      }
-    }
-    if (isCalled && timeoutId) {
-      timeoutId = clearTimeout(timeoutId);
-    }
-    else if (!timeoutId && wait !== maxWait) {
-      timeoutId = setTimeout(delayed, wait);
-    }
-    if (leadingCall) {
-      isCalled = true;
-      result = func.apply(thisArg, args);
-    }
-    if (isCalled && !timeoutId && !maxTimeoutId) {
-      args = thisArg = null;
-    }
-    return result;
-  }
-  debounced.cancel = cancel;
-  return debounced;
-}
-
-module.exports = debounce;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/defer.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/defer.js
deleted file mode 100644 (file)
index 369790c..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var baseDelay = require('../internal/baseDelay'),
-    restParam = require('./restParam');
-
-/**
- * Defers invoking the `func` until the current call stack has cleared. Any
- * additional arguments are provided to `func` when it is invoked.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to defer.
- * @param {...*} [args] The arguments to invoke the function with.
- * @returns {number} Returns the timer id.
- * @example
- *
- * _.defer(function(text) {
- *   console.log(text);
- * }, 'deferred');
- * // logs 'deferred' after one or more milliseconds
- */
-var defer = restParam(function(func, args) {
-  return baseDelay(func, 1, args);
-});
-
-module.exports = defer;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/delay.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/delay.js
deleted file mode 100644 (file)
index 955b059..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var baseDelay = require('../internal/baseDelay'),
-    restParam = require('./restParam');
-
-/**
- * Invokes `func` after `wait` milliseconds. Any additional arguments are
- * provided to `func` when it is invoked.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to delay.
- * @param {number} wait The number of milliseconds to delay invocation.
- * @param {...*} [args] The arguments to invoke the function with.
- * @returns {number} Returns the timer id.
- * @example
- *
- * _.delay(function(text) {
- *   console.log(text);
- * }, 1000, 'later');
- * // => logs 'later' after one second
- */
-var delay = restParam(function(func, wait, args) {
-  return baseDelay(func, wait, args);
-});
-
-module.exports = delay;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flow.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flow.js
deleted file mode 100644 (file)
index a435a3d..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var createFlow = require('../internal/createFlow');
-
-/**
- * Creates a function that returns the result of invoking the provided
- * functions with the `this` binding of the created function, where each
- * successive invocation is supplied the return value of the previous.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {...Function} [funcs] Functions to invoke.
- * @returns {Function} Returns the new function.
- * @example
- *
- * function square(n) {
- *   return n * n;
- * }
- *
- * var addSquare = _.flow(_.add, square);
- * addSquare(1, 2);
- * // => 9
- */
-var flow = createFlow();
-
-module.exports = flow;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flowRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/flowRight.js
deleted file mode 100644 (file)
index 23b9d76..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var createFlow = require('../internal/createFlow');
-
-/**
- * This method is like `_.flow` except that it creates a function that
- * invokes the provided functions from right to left.
- *
- * @static
- * @memberOf _
- * @alias backflow, compose
- * @category Function
- * @param {...Function} [funcs] Functions to invoke.
- * @returns {Function} Returns the new function.
- * @example
- *
- * function square(n) {
- *   return n * n;
- * }
- *
- * var addSquare = _.flowRight(square, _.add);
- * addSquare(1, 2);
- * // => 9
- */
-var flowRight = createFlow(true);
-
-module.exports = flowRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/memoize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/memoize.js
deleted file mode 100644 (file)
index c9de989..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-var MapCache = require('../internal/MapCache');
-
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that memoizes the result of `func`. If `resolver` is
- * provided it determines the cache key for storing the result based on the
- * arguments provided to the memoized function. By default, the first argument
- * provided to the memoized function is coerced to a string and used as the
- * cache key. The `func` is invoked with the `this` binding of the memoized
- * function.
- *
- * **Note:** The cache is exposed as the `cache` property on the memoized
- * function. Its creation may be customized by replacing the `_.memoize.Cache`
- * constructor with one whose instances implement the [`Map`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-properties-of-the-map-prototype-object)
- * method interface of `get`, `has`, and `set`.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to have its output memoized.
- * @param {Function} [resolver] The function to resolve the cache key.
- * @returns {Function} Returns the new memoizing function.
- * @example
- *
- * var upperCase = _.memoize(function(string) {
- *   return string.toUpperCase();
- * });
- *
- * upperCase('fred');
- * // => 'FRED'
- *
- * // modifying the result cache
- * upperCase.cache.set('fred', 'BARNEY');
- * upperCase('fred');
- * // => 'BARNEY'
- *
- * // replacing `_.memoize.Cache`
- * var object = { 'user': 'fred' };
- * var other = { 'user': 'barney' };
- * var identity = _.memoize(_.identity);
- *
- * identity(object);
- * // => { 'user': 'fred' }
- * identity(other);
- * // => { 'user': 'fred' }
- *
- * _.memoize.Cache = WeakMap;
- * var identity = _.memoize(_.identity);
- *
- * identity(object);
- * // => { 'user': 'fred' }
- * identity(other);
- * // => { 'user': 'barney' }
- */
-function memoize(func, resolver) {
-  if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  var memoized = function() {
-    var args = arguments,
-        cache = memoized.cache,
-        key = resolver ? resolver.apply(this, args) : args[0];
-
-    if (cache.has(key)) {
-      return cache.get(key);
-    }
-    var result = func.apply(this, args);
-    cache.set(key, result);
-    return result;
-  };
-  memoized.cache = new memoize.Cache;
-  return memoized;
-}
-
-// Assign cache to `_.memoize`.
-memoize.Cache = MapCache;
-
-module.exports = memoize;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/negate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/negate.js
deleted file mode 100644 (file)
index 8247939..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that negates the result of the predicate `func`. The
- * `func` predicate is invoked with the `this` binding and arguments of the
- * created function.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} predicate The predicate to negate.
- * @returns {Function} Returns the new function.
- * @example
- *
- * function isEven(n) {
- *   return n % 2 == 0;
- * }
- *
- * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
- * // => [1, 3, 5]
- */
-function negate(predicate) {
-  if (typeof predicate != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  return function() {
-    return !predicate.apply(this, arguments);
-  };
-}
-
-module.exports = negate;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/once.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/once.js
deleted file mode 100644 (file)
index 0b5bd85..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var before = require('./before');
-
-/**
- * Creates a function that is restricted to invoking `func` once. Repeat calls
- * to the function return the value of the first call. The `func` is invoked
- * with the `this` binding and arguments of the created function.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * var initialize = _.once(createApplication);
- * initialize();
- * initialize();
- * // `initialize` invokes `createApplication` once
- */
-function once(func) {
-  return before(2, func);
-}
-
-module.exports = once;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partial.js
deleted file mode 100644 (file)
index fb1d04f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var createPartial = require('../internal/createPartial');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes `func` with `partial` arguments prepended
- * to those provided to the new function. This method is like `_.bind` except
- * it does **not** alter the `this` binding.
- *
- * The `_.partial.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * **Note:** This method does not set the "length" property of partially
- * applied functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to partially apply arguments to.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new partially applied function.
- * @example
- *
- * var greet = function(greeting, name) {
- *   return greeting + ' ' + name;
- * };
- *
- * var sayHelloTo = _.partial(greet, 'hello');
- * sayHelloTo('fred');
- * // => 'hello fred'
- *
- * // using placeholders
- * var greetFred = _.partial(greet, _, 'fred');
- * greetFred('hi');
- * // => 'hi fred'
- */
-var partial = createPartial(PARTIAL_FLAG);
-
-// Assign default placeholders.
-partial.placeholder = {};
-
-module.exports = partial;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partialRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/partialRight.js
deleted file mode 100644 (file)
index 634e6a4..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-var createPartial = require('../internal/createPartial');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var PARTIAL_RIGHT_FLAG = 64;
-
-/**
- * This method is like `_.partial` except that partially applied arguments
- * are appended to those provided to the new function.
- *
- * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * **Note:** This method does not set the "length" property of partially
- * applied functions.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to partially apply arguments to.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new partially applied function.
- * @example
- *
- * var greet = function(greeting, name) {
- *   return greeting + ' ' + name;
- * };
- *
- * var greetFred = _.partialRight(greet, 'fred');
- * greetFred('hi');
- * // => 'hi fred'
- *
- * // using placeholders
- * var sayHelloTo = _.partialRight(greet, 'hello', _);
- * sayHelloTo('fred');
- * // => 'hello fred'
- */
-var partialRight = createPartial(PARTIAL_RIGHT_FLAG);
-
-// Assign default placeholders.
-partialRight.placeholder = {};
-
-module.exports = partialRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/rearg.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/rearg.js
deleted file mode 100644 (file)
index 0a4bf8f..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    createWrapper = require('../internal/createWrapper'),
-    restParam = require('./restParam');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var REARG_FLAG = 256;
-
-/**
- * Creates a function that invokes `func` with arguments arranged according
- * to the specified indexes where the argument value at the first index is
- * provided as the first argument, the argument value at the second index is
- * provided as the second argument, and so on.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to rearrange arguments for.
- * @param {...(number|number[])} indexes The arranged argument indexes,
- *  specified as individual indexes or arrays of indexes.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var rearged = _.rearg(function(a, b, c) {
- *   return [a, b, c];
- * }, 2, 0, 1);
- *
- * rearged('b', 'c', 'a')
- * // => ['a', 'b', 'c']
- *
- * var map = _.rearg(_.map, [1, 0]);
- * map(function(n) {
- *   return n * 3;
- * }, [1, 2, 3]);
- * // => [3, 6, 9]
- */
-var rearg = restParam(function(func, indexes) {
-  return createWrapper(func, REARG_FLAG, null, null, null, baseFlatten(indexes));
-});
-
-module.exports = rearg;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/restParam.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/restParam.js
deleted file mode 100644 (file)
index 3a1c157..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that invokes `func` with the `this` binding of the
- * created function and arguments from `start` and beyond provided as an array.
- *
- * **Note:** This method is based on the [rest parameter](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/rest_parameters).
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to apply a rest parameter to.
- * @param {number} [start=func.length-1] The start position of the rest parameter.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var say = _.restParam(function(what, names) {
- *   return what + ' ' + _.initial(names).join(', ') +
- *     (_.size(names) > 1 ? ', & ' : '') + _.last(names);
- * });
- *
- * say('hello', 'fred', 'barney', 'pebbles');
- * // => 'hello fred, barney, & pebbles'
- */
-function restParam(func, start) {
-  if (typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  start = nativeMax(start === undefined ? (func.length - 1) : (+start || 0), 0);
-  return function() {
-    var args = arguments,
-        index = -1,
-        length = nativeMax(args.length - start, 0),
-        rest = Array(length);
-
-    while (++index < length) {
-      rest[index] = args[start + index];
-    }
-    switch (start) {
-      case 0: return func.call(this, rest);
-      case 1: return func.call(this, args[0], rest);
-      case 2: return func.call(this, args[0], args[1], rest);
-    }
-    var otherArgs = Array(start + 1);
-    index = -1;
-    while (++index < start) {
-      otherArgs[index] = args[index];
-    }
-    otherArgs[start] = rest;
-    return func.apply(this, otherArgs);
-  };
-}
-
-module.exports = restParam;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/spread.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/spread.js
deleted file mode 100644 (file)
index aad4b71..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that invokes `func` with the `this` binding of the created
- * function and an array of arguments much like [`Function#apply`](https://es5.github.io/#x15.3.4.3).
- *
- * **Note:** This method is based on the [spread operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator).
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to spread arguments over.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var say = _.spread(function(who, what) {
- *   return who + ' says ' + what;
- * });
- *
- * say(['fred', 'hello']);
- * // => 'fred says hello'
- *
- * // with a Promise
- * var numbers = Promise.all([
- *   Promise.resolve(40),
- *   Promise.resolve(36)
- * ]);
- *
- * numbers.then(_.spread(function(x, y) {
- *   return x + y;
- * }));
- * // => a Promise of 76
- */
-function spread(func) {
-  if (typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  return function(array) {
-    return func.apply(this, array);
-  };
-}
-
-module.exports = spread;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/throttle.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/throttle.js
deleted file mode 100644 (file)
index 7c30e64..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-var debounce = require('./debounce'),
-    isObject = require('../lang/isObject');
-
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/** Used as an internal `_.debounce` options object by `_.throttle`. */
-var debounceOptions = {
-  'leading': false,
-  'maxWait': 0,
-  'trailing': false
-};
-
-/**
- * Creates a function that only invokes `func` at most once per every `wait`
- * milliseconds. The created function comes with a `cancel` method to cancel
- * delayed invocations. Provide an options object to indicate that `func`
- * should be invoked on the leading and/or trailing edge of the `wait` timeout.
- * Subsequent calls to the throttled function return the result of the last
- * `func` call.
- *
- * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked
- * on the trailing edge of the timeout only if the the throttled function is
- * invoked more than once during the `wait` timeout.
- *
- * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)
- * for details over the differences between `_.throttle` and `_.debounce`.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {Function} func The function to throttle.
- * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
- * @param {Object} [options] The options object.
- * @param {boolean} [options.leading=true] Specify invoking on the leading
- *  edge of the timeout.
- * @param {boolean} [options.trailing=true] Specify invoking on the trailing
- *  edge of the timeout.
- * @returns {Function} Returns the new throttled function.
- * @example
- *
- * // avoid excessively updating the position while scrolling
- * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
- *
- * // invoke `renewToken` when the click event is fired, but not more than once every 5 minutes
- * jQuery('.interactive').on('click', _.throttle(renewToken, 300000, {
- *   'trailing': false
- * }));
- *
- * // cancel a trailing throttled call
- * jQuery(window).on('popstate', throttled.cancel);
- */
-function throttle(func, wait, options) {
-  var leading = true,
-      trailing = true;
-
-  if (typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  if (options === false) {
-    leading = false;
-  } else if (isObject(options)) {
-    leading = 'leading' in options ? !!options.leading : leading;
-    trailing = 'trailing' in options ? !!options.trailing : trailing;
-  }
-  debounceOptions.leading = leading;
-  debounceOptions.maxWait = +wait;
-  debounceOptions.trailing = trailing;
-  return debounce(func, wait, debounceOptions);
-}
-
-module.exports = throttle;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/wrap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/function/wrap.js
deleted file mode 100644 (file)
index 68b09af..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var createWrapper = require('../internal/createWrapper'),
-    identity = require('../utility/identity');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that provides `value` to the wrapper function as its
- * first argument. Any additional arguments provided to the function are
- * appended to those provided to the wrapper function. The wrapper is invoked
- * with the `this` binding of the created function.
- *
- * @static
- * @memberOf _
- * @category Function
- * @param {*} value The value to wrap.
- * @param {Function} wrapper The wrapper function.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var p = _.wrap(_.escape, function(func, text) {
- *   return '<p>' + func(text) + '</p>';
- * });
- *
- * p('fred, barney, & pebbles');
- * // => '<p>fred, barney, &amp; pebbles</p>'
- */
-function wrap(value, wrapper) {
-  wrapper = wrapper == null ? identity : wrapper;
-  return createWrapper(wrapper, PARTIAL_FLAG, null, [value], []);
-}
-
-module.exports = wrap;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/index.js
deleted file mode 100644 (file)
index 546d82c..0000000
+++ /dev/null
@@ -1,12166 +0,0 @@
-/**
- * @license
- * lodash 3.7.0 (Custom Build) <https://lodash.com/>
- * Build: `lodash modern -d -o ./index.js`
- * Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
- * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- * Available under MIT license <https://lodash.com/license>
- */
-;(function() {
-
-  /** Used as a safe reference for `undefined` in pre-ES5 environments. */
-  var undefined;
-
-  /** Used as the semantic version number. */
-  var VERSION = '3.7.0';
-
-  /** Used to compose bitmasks for wrapper metadata. */
-  var BIND_FLAG = 1,
-      BIND_KEY_FLAG = 2,
-      CURRY_BOUND_FLAG = 4,
-      CURRY_FLAG = 8,
-      CURRY_RIGHT_FLAG = 16,
-      PARTIAL_FLAG = 32,
-      PARTIAL_RIGHT_FLAG = 64,
-      ARY_FLAG = 128,
-      REARG_FLAG = 256;
-
-  /** Used as default options for `_.trunc`. */
-  var DEFAULT_TRUNC_LENGTH = 30,
-      DEFAULT_TRUNC_OMISSION = '...';
-
-  /** Used to detect when a function becomes hot. */
-  var HOT_COUNT = 150,
-      HOT_SPAN = 16;
-
-  /** Used to indicate the type of lazy iteratees. */
-  var LAZY_DROP_WHILE_FLAG = 0,
-      LAZY_FILTER_FLAG = 1,
-      LAZY_MAP_FLAG = 2;
-
-  /** Used as the `TypeError` message for "Functions" methods. */
-  var FUNC_ERROR_TEXT = 'Expected a function';
-
-  /** Used as the internal argument placeholder. */
-  var PLACEHOLDER = '__lodash_placeholder__';
-
-  /** `Object#toString` result references. */
-  var argsTag = '[object Arguments]',
-      arrayTag = '[object Array]',
-      boolTag = '[object Boolean]',
-      dateTag = '[object Date]',
-      errorTag = '[object Error]',
-      funcTag = '[object Function]',
-      mapTag = '[object Map]',
-      numberTag = '[object Number]',
-      objectTag = '[object Object]',
-      regexpTag = '[object RegExp]',
-      setTag = '[object Set]',
-      stringTag = '[object String]',
-      weakMapTag = '[object WeakMap]';
-
-  var arrayBufferTag = '[object ArrayBuffer]',
-      float32Tag = '[object Float32Array]',
-      float64Tag = '[object Float64Array]',
-      int8Tag = '[object Int8Array]',
-      int16Tag = '[object Int16Array]',
-      int32Tag = '[object Int32Array]',
-      uint8Tag = '[object Uint8Array]',
-      uint8ClampedTag = '[object Uint8ClampedArray]',
-      uint16Tag = '[object Uint16Array]',
-      uint32Tag = '[object Uint32Array]';
-
-  /** Used to match empty string literals in compiled template source. */
-  var reEmptyStringLeading = /\b__p \+= '';/g,
-      reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
-      reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
-
-  /** Used to match HTML entities and HTML characters. */
-  var reEscapedHtml = /&(?:amp|lt|gt|quot|#39|#96);/g,
-      reUnescapedHtml = /[&<>"'`]/g,
-      reHasEscapedHtml = RegExp(reEscapedHtml.source),
-      reHasUnescapedHtml = RegExp(reUnescapedHtml.source);
-
-  /** Used to match template delimiters. */
-  var reEscape = /<%-([\s\S]+?)%>/g,
-      reEvaluate = /<%([\s\S]+?)%>/g,
-      reInterpolate = /<%=([\s\S]+?)%>/g;
-
-  /** Used to match property names within property paths. */
-  var reIsDeepProp = /\.|\[(?:[^[\]]+|(["'])(?:(?!\1)[^\n\\]|\\.)*?)\1\]/,
-      reIsPlainProp = /^\w*$/,
-      rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g;
-
-  /**
-   * Used to match `RegExp` [special characters](http://www.regular-expressions.info/characters.html#special).
-   * In addition to special characters the forward slash is escaped to allow for
-   * easier `eval` use and `Function` compilation.
-   */
-  var reRegExpChars = /[.*+?^${}()|[\]\/\\]/g,
-      reHasRegExpChars = RegExp(reRegExpChars.source);
-
-  /** Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). */
-  var reComboMark = /[\u0300-\u036f\ufe20-\ufe23]/g;
-
-  /** Used to match backslashes in property paths. */
-  var reEscapeChar = /\\(\\)?/g;
-
-  /** Used to match [ES template delimiters](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-template-literal-lexical-components). */
-  var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
-
-  /** Used to match `RegExp` flags from their coerced string values. */
-  var reFlags = /\w*$/;
-
-  /** Used to detect hexadecimal string values. */
-  var reHasHexPrefix = /^0[xX]/;
-
-  /** Used to detect host constructors (Safari > 5). */
-  var reIsHostCtor = /^\[object .+?Constructor\]$/;
-
-  /** Used to match latin-1 supplementary letters (excluding mathematical operators). */
-  var reLatin1 = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g;
-
-  /** Used to ensure capturing order of template delimiters. */
-  var reNoMatch = /($^)/;
-
-  /** Used to match unescaped characters in compiled string literals. */
-  var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
-
-  /** Used to match words to create compound words. */
-  var reWords = (function() {
-    var upper = '[A-Z\\xc0-\\xd6\\xd8-\\xde]',
-        lower = '[a-z\\xdf-\\xf6\\xf8-\\xff]+';
-
-    return RegExp(upper + '+(?=' + upper + lower + ')|' + upper + '?' + lower + '|' + upper + '+|[0-9]+', 'g');
-  }());
-
-  /** Used to detect and test for whitespace. */
-  var whitespace = (
-    // Basic whitespace characters.
-    ' \t\x0b\f\xa0\ufeff' +
-
-    // Line terminators.
-    '\n\r\u2028\u2029' +
-
-    // Unicode category "Zs" space separators.
-    '\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000'
-  );
-
-  /** Used to assign default `context` object properties. */
-  var contextProps = [
-    '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'
-  ];
-
-  /** Used to make template sourceURLs easier to identify. */
-  var templateCounter = -1;
-
-  /** Used to identify `toStringTag` values of typed arrays. */
-  var typedArrayTags = {};
-  typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
-  typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
-  typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
-  typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
-  typedArrayTags[uint32Tag] = true;
-  typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
-  typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
-  typedArrayTags[dateTag] = typedArrayTags[errorTag] =
-  typedArrayTags[funcTag] = typedArrayTags[mapTag] =
-  typedArrayTags[numberTag] = typedArrayTags[objectTag] =
-  typedArrayTags[regexpTag] = typedArrayTags[setTag] =
-  typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
-
-  /** Used to identify `toStringTag` values supported by `_.clone`. */
-  var cloneableTags = {};
-  cloneableTags[argsTag] = cloneableTags[arrayTag] =
-  cloneableTags[arrayBufferTag] = cloneableTags[boolTag] =
-  cloneableTags[dateTag] = cloneableTags[float32Tag] =
-  cloneableTags[float64Tag] = cloneableTags[int8Tag] =
-  cloneableTags[int16Tag] = cloneableTags[int32Tag] =
-  cloneableTags[numberTag] = cloneableTags[objectTag] =
-  cloneableTags[regexpTag] = cloneableTags[stringTag] =
-  cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
-  cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
-  cloneableTags[errorTag] = cloneableTags[funcTag] =
-  cloneableTags[mapTag] = cloneableTags[setTag] =
-  cloneableTags[weakMapTag] = false;
-
-  /** Used as an internal `_.debounce` options object by `_.throttle`. */
-  var debounceOptions = {
-    'leading': false,
-    'maxWait': 0,
-    'trailing': false
-  };
-
-  /** Used to map latin-1 supplementary letters to basic latin letters. */
-  var deburredLetters = {
-    '\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'
-  };
-
-  /** Used to map characters to HTML entities. */
-  var htmlEscapes = {
-    '&': '&amp;',
-    '<': '&lt;',
-    '>': '&gt;',
-    '"': '&quot;',
-    "'": '&#39;',
-    '`': '&#96;'
-  };
-
-  /** Used to map HTML entities to characters. */
-  var htmlUnescapes = {
-    '&amp;': '&',
-    '&lt;': '<',
-    '&gt;': '>',
-    '&quot;': '"',
-    '&#39;': "'",
-    '&#96;': '`'
-  };
-
-  /** Used to determine if values are of the language type `Object`. */
-  var objectTypes = {
-    'function': true,
-    'object': true
-  };
-
-  /** Used to escape characters for inclusion in compiled string literals. */
-  var stringEscapes = {
-    '\\': '\\',
-    "'": "'",
-    '\n': 'n',
-    '\r': 'r',
-    '\u2028': 'u2028',
-    '\u2029': 'u2029'
-  };
-
-  /** Detect free variable `exports`. */
-  var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
-
-  /** Detect free variable `module`. */
-  var freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
-
-  /** Detect free variable `global` from Node.js. */
-  var freeGlobal = freeExports && freeModule && typeof global == 'object' && global && 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;
-
-  /** Detect the popular CommonJS extension `module.exports`. */
-  var moduleExports = freeModule && freeModule.exports === freeExports && freeExports;
-
-  /**
-   * 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;
-
-  /*--------------------------------------------------------------------------*/
-
-  /**
-   * The base implementation of `compareAscending` which compares values and
-   * sorts them in ascending order without guaranteeing a stable sort.
-   *
-   * @private
-   * @param {*} value The value to compare to `other`.
-   * @param {*} other The value to compare to `value`.
-   * @returns {number} Returns the sort order indicator for `value`.
-   */
-  function baseCompareAscending(value, other) {
-    if (value !== other) {
-      var valIsReflexive = value === value,
-          othIsReflexive = other === other;
-
-      if (value > other || !valIsReflexive || (value === undefined && othIsReflexive)) {
-        return 1;
-      }
-      if (value < other || !othIsReflexive || (other === undefined && valIsReflexive)) {
-        return -1;
-      }
-    }
-    return 0;
-  }
-
-  /**
-   * The base implementation of `_.findIndex` and `_.findLastIndex` without
-   * support for callback shorthands and `this` binding.
-   *
-   * @private
-   * @param {Array} array The array to search.
-   * @param {Function} predicate The function invoked per iteration.
-   * @param {boolean} [fromRight] Specify iterating from right to left.
-   * @returns {number} Returns the index of the matched value, else `-1`.
-   */
-  function baseFindIndex(array, predicate, fromRight) {
-    var length = array.length,
-        index = fromRight ? length : -1;
-
-    while ((fromRight ? index-- : ++index < length)) {
-      if (predicate(array[index], index, array)) {
-        return index;
-      }
-    }
-    return -1;
-  }
-
-  /**
-   * The base implementation of `_.indexOf` without support for binary searches.
-   *
-   * @private
-   * @param {Array} array The array to search.
-   * @param {*} value The value to search for.
-   * @param {number} fromIndex The index to search from.
-   * @returns {number} Returns the index of the matched value, else `-1`.
-   */
-  function baseIndexOf(array, value, fromIndex) {
-    if (value !== value) {
-      return indexOfNaN(array, fromIndex);
-    }
-    var index = fromIndex - 1,
-        length = array.length;
-
-    while (++index < length) {
-      if (array[index] === value) {
-        return index;
-      }
-    }
-    return -1;
-  }
-
-  /**
-   * The base implementation of `_.isFunction` without support for environments
-   * with incorrect `typeof` results.
-   *
-   * @private
-   * @param {*} value The value to check.
-   * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-   */
-  function baseIsFunction(value) {
-    // Avoid a Chakra JIT bug in compatibility modes of IE 11.
-    // See https://github.com/jashkenas/underscore/issues/1621 for more details.
-    return typeof value == 'function' || false;
-  }
-
-  /**
-   * Converts `value` to a string if it is not one. An empty string is returned
-   * for `null` or `undefined` values.
-   *
-   * @private
-   * @param {*} value The value to process.
-   * @returns {string} Returns the string.
-   */
-  function baseToString(value) {
-    if (typeof value == 'string') {
-      return value;
-    }
-    return value == null ? '' : (value + '');
-  }
-
-  /**
-   * Used by `_.max` and `_.min` as the default callback for string values.
-   *
-   * @private
-   * @param {string} string The string to inspect.
-   * @returns {number} Returns the code unit of the first character of the string.
-   */
-  function charAtCallback(string) {
-    return string.charCodeAt(0);
-  }
-
-  /**
-   * Used by `_.trim` and `_.trimLeft` to get the index of the first character
-   * of `string` that is not found in `chars`.
-   *
-   * @private
-   * @param {string} string The string to inspect.
-   * @param {string} chars The characters to find.
-   * @returns {number} Returns the index of the first character not found in `chars`.
-   */
-  function charsLeftIndex(string, chars) {
-    var index = -1,
-        length = string.length;
-
-    while (++index < length && chars.indexOf(string.charAt(index)) > -1) {}
-    return index;
-  }
-
-  /**
-   * Used by `_.trim` and `_.trimRight` to get the index of the last character
-   * of `string` that is not found in `chars`.
-   *
-   * @private
-   * @param {string} string The string to inspect.
-   * @param {string} chars The characters to find.
-   * @returns {number} Returns the index of the last character not found in `chars`.
-   */
-  function charsRightIndex(string, chars) {
-    var index = string.length;
-
-    while (index-- && chars.indexOf(string.charAt(index)) > -1) {}
-    return index;
-  }
-
-  /**
-   * Used by `_.sortBy` to compare transformed elements of a collection and stable
-   * sort them in ascending order.
-   *
-   * @private
-   * @param {Object} object The object to compare to `other`.
-   * @param {Object} other The object to compare to `object`.
-   * @returns {number} Returns the sort order indicator for `object`.
-   */
-  function compareAscending(object, other) {
-    return baseCompareAscending(object.criteria, other.criteria) || (object.index - other.index);
-  }
-
-  /**
-   * Used by `_.sortByOrder` to compare multiple properties of each element
-   * in a collection and stable sort them in the following order:
-   *
-   * If `orders` is unspecified, sort in ascending order for all properties.
-   * Otherwise, for each property, sort in ascending order if its corresponding value in
-   * orders is true, and descending order if false.
-   *
-   * @private
-   * @param {Object} object The object to compare to `other`.
-   * @param {Object} other The object to compare to `object`.
-   * @param {boolean[]} orders The order to sort by for each property.
-   * @returns {number} Returns the sort order indicator for `object`.
-   */
-  function compareMultiple(object, other, orders) {
-    var index = -1,
-        objCriteria = object.criteria,
-        othCriteria = other.criteria,
-        length = objCriteria.length,
-        ordersLength = orders.length;
-
-    while (++index < length) {
-      var result = baseCompareAscending(objCriteria[index], othCriteria[index]);
-      if (result) {
-        if (index >= ordersLength) {
-          return result;
-        }
-        return result * (orders[index] ? 1 : -1);
-      }
-    }
-    // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications
-    // that causes it, under certain circumstances, to provide the same value for
-    // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247
-    // for more details.
-    //
-    // This also ensures a stable sort in V8 and other engines.
-    // See https://code.google.com/p/v8/issues/detail?id=90 for more details.
-    return object.index - other.index;
-  }
-
-  /**
-   * Used by `_.deburr` to convert latin-1 supplementary letters to basic latin letters.
-   *
-   * @private
-   * @param {string} letter The matched letter to deburr.
-   * @returns {string} Returns the deburred letter.
-   */
-  function deburrLetter(letter) {
-    return deburredLetters[letter];
-  }
-
-  /**
-   * Used by `_.escape` to convert characters to HTML entities.
-   *
-   * @private
-   * @param {string} chr The matched character to escape.
-   * @returns {string} Returns the escaped character.
-   */
-  function escapeHtmlChar(chr) {
-    return htmlEscapes[chr];
-  }
-
-  /**
-   * Used by `_.template` to escape characters for inclusion in compiled
-   * string literals.
-   *
-   * @private
-   * @param {string} chr The matched character to escape.
-   * @returns {string} Returns the escaped character.
-   */
-  function escapeStringChar(chr) {
-    return '\\' + stringEscapes[chr];
-  }
-
-  /**
-   * Gets the index at which the first occurrence of `NaN` is found in `array`.
-   *
-   * @private
-   * @param {Array} array The array to search.
-   * @param {number} fromIndex The index to search from.
-   * @param {boolean} [fromRight] Specify iterating from right to left.
-   * @returns {number} Returns the index of the matched `NaN`, else `-1`.
-   */
-  function indexOfNaN(array, fromIndex, fromRight) {
-    var length = array.length,
-        index = fromIndex + (fromRight ? 0 : -1);
-
-    while ((fromRight ? index-- : ++index < length)) {
-      var other = array[index];
-      if (other !== other) {
-        return index;
-      }
-    }
-    return -1;
-  }
-
-  /**
-   * Checks if `value` is object-like.
-   *
-   * @private
-   * @param {*} value The value to check.
-   * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
-   */
-  function isObjectLike(value) {
-    return !!value && typeof value == 'object';
-  }
-
-  /**
-   * Used by `trimmedLeftIndex` and `trimmedRightIndex` to determine if a
-   * character code is whitespace.
-   *
-   * @private
-   * @param {number} charCode The character code to inspect.
-   * @returns {boolean} Returns `true` if `charCode` is whitespace, else `false`.
-   */
-  function isSpace(charCode) {
-    return ((charCode <= 160 && (charCode >= 9 && charCode <= 13) || charCode == 32 || charCode == 160) || charCode == 5760 || charCode == 6158 ||
-      (charCode >= 8192 && (charCode <= 8202 || charCode == 8232 || charCode == 8233 || charCode == 8239 || charCode == 8287 || charCode == 12288 || charCode == 65279)));
-  }
-
-  /**
-   * Replaces all `placeholder` elements in `array` with an internal placeholder
-   * and returns an array of their indexes.
-   *
-   * @private
-   * @param {Array} array The array to modify.
-   * @param {*} placeholder The placeholder to replace.
-   * @returns {Array} Returns the new array of placeholder indexes.
-   */
-  function replaceHolders(array, placeholder) {
-    var index = -1,
-        length = array.length,
-        resIndex = -1,
-        result = [];
-
-    while (++index < length) {
-      if (array[index] === placeholder) {
-        array[index] = PLACEHOLDER;
-        result[++resIndex] = index;
-      }
-    }
-    return result;
-  }
-
-  /**
-   * An implementation of `_.uniq` optimized for sorted arrays without support
-   * for callback shorthands and `this` binding.
-   *
-   * @private
-   * @param {Array} array The array to inspect.
-   * @param {Function} [iteratee] The function invoked per iteration.
-   * @returns {Array} Returns the new duplicate-value-free array.
-   */
-  function sortedUniq(array, iteratee) {
-    var seen,
-        index = -1,
-        length = array.length,
-        resIndex = -1,
-        result = [];
-
-    while (++index < length) {
-      var value = array[index],
-          computed = iteratee ? iteratee(value, index, array) : value;
-
-      if (!index || seen !== computed) {
-        seen = computed;
-        result[++resIndex] = value;
-      }
-    }
-    return result;
-  }
-
-  /**
-   * Used by `_.trim` and `_.trimLeft` to get the index of the first non-whitespace
-   * character of `string`.
-   *
-   * @private
-   * @param {string} string The string to inspect.
-   * @returns {number} Returns the index of the first non-whitespace character.
-   */
-  function trimmedLeftIndex(string) {
-    var index = -1,
-        length = string.length;
-
-    while (++index < length && isSpace(string.charCodeAt(index))) {}
-    return index;
-  }
-
-  /**
-   * Used by `_.trim` and `_.trimRight` to get the index of the last non-whitespace
-   * character of `string`.
-   *
-   * @private
-   * @param {string} string The string to inspect.
-   * @returns {number} Returns the index of the last non-whitespace character.
-   */
-  function trimmedRightIndex(string) {
-    var index = string.length;
-
-    while (index-- && isSpace(string.charCodeAt(index))) {}
-    return index;
-  }
-
-  /**
-   * Used by `_.unescape` to convert HTML entities to characters.
-   *
-   * @private
-   * @param {string} chr The matched character to unescape.
-   * @returns {string} Returns the unescaped character.
-   */
-  function unescapeHtmlChar(chr) {
-    return htmlUnescapes[chr];
-  }
-
-  /*--------------------------------------------------------------------------*/
-
-  /**
-   * Create a new pristine `lodash` function using the given `context` object.
-   *
-   * @static
-   * @memberOf _
-   * @category Utility
-   * @param {Object} [context=root] The context object.
-   * @returns {Function} Returns a new `lodash` function.
-   * @example
-   *
-   * _.mixin({ 'foo': _.constant('foo') });
-   *
-   * var lodash = _.runInContext();
-   * lodash.mixin({ 'bar': lodash.constant('bar') });
-   *
-   * _.isFunction(_.foo);
-   * // => true
-   * _.isFunction(_.bar);
-   * // => false
-   *
-   * lodash.isFunction(lodash.foo);
-   * // => false
-   * lodash.isFunction(lodash.bar);
-   * // => true
-   *
-   * // using `context` to mock `Date#getTime` use in `_.now`
-   * var mock = _.runInContext({
-   *   'Date': function() {
-   *     return { 'getTime': getTimeMock };
-   *   }
-   * });
-   *
-   * // or creating a suped-up `defer` in Node.js
-   * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;
-   */
-  function runInContext(context) {
-    // Avoid issues with some ES3 environments that attempt to use values, named
-    // after built-in constructors like `Object`, for the creation of literals.
-    // ES5 clears this up by stating that literals must use built-in constructors.
-    // See https://es5.github.io/#x11.1.5 for more details.
-    context = context ? _.defaults(root.Object(), context, _.pick(root, contextProps)) : root;
-
-    /** Native constructor references. */
-    var Array = context.Array,
-        Date = context.Date,
-        Error = context.Error,
-        Function = context.Function,
-        Math = context.Math,
-        Number = context.Number,
-        Object = context.Object,
-        RegExp = context.RegExp,
-        String = context.String,
-        TypeError = context.TypeError;
-
-    /** Used for native method references. */
-    var arrayProto = Array.prototype,
-        objectProto = Object.prototype,
-        stringProto = String.prototype;
-
-    /** Used to detect DOM support. */
-    var document = (document = context.window) && document.document;
-
-    /** Used to resolve the decompiled source of functions. */
-    var fnToString = Function.prototype.toString;
-
-    /** Used to check objects for own properties. */
-    var hasOwnProperty = objectProto.hasOwnProperty;
-
-    /** Used to generate unique IDs. */
-    var idCounter = 0;
-
-    /**
-     * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
-     * of values.
-     */
-    var objToString = objectProto.toString;
-
-    /** Used to restore the original `_` reference in `_.noConflict`. */
-    var oldDash = context._;
-
-    /** Used to detect if a method is native. */
-    var reIsNative = RegExp('^' +
-      escapeRegExp(objToString)
-      .replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
-    );
-
-    /** Native method references. */
-    var ArrayBuffer = isNative(ArrayBuffer = context.ArrayBuffer) && ArrayBuffer,
-        bufferSlice = isNative(bufferSlice = ArrayBuffer && new ArrayBuffer(0).slice) && bufferSlice,
-        ceil = Math.ceil,
-        clearTimeout = context.clearTimeout,
-        floor = Math.floor,
-        getOwnPropertySymbols = isNative(getOwnPropertySymbols = Object.getOwnPropertySymbols) && getOwnPropertySymbols,
-        getPrototypeOf = isNative(getPrototypeOf = Object.getPrototypeOf) && getPrototypeOf,
-        push = arrayProto.push,
-        preventExtensions = isNative(Object.preventExtensions = Object.preventExtensions) && preventExtensions,
-        propertyIsEnumerable = objectProto.propertyIsEnumerable,
-        Set = isNative(Set = context.Set) && Set,
-        setTimeout = context.setTimeout,
-        splice = arrayProto.splice,
-        Uint8Array = isNative(Uint8Array = context.Uint8Array) && Uint8Array,
-        WeakMap = isNative(WeakMap = context.WeakMap) && WeakMap;
-
-    /** Used to clone array buffers. */
-    var Float64Array = (function() {
-      // Safari 5 errors when using an array buffer to initialize a typed array
-      // where the array buffer's `byteLength` is not a multiple of the typed
-      // array's `BYTES_PER_ELEMENT`.
-      try {
-        var func = isNative(func = context.Float64Array) && func,
-            result = new func(new ArrayBuffer(10), 0, 1) && func;
-      } catch(e) {}
-      return result;
-    }());
-
-    /** Used as `baseAssign`. */
-    var nativeAssign = (function() {
-      // Avoid `Object.assign` in Firefox 34-37 which have an early implementation
-      // with a now defunct try/catch behavior. See https://bugzilla.mozilla.org/show_bug.cgi?id=1103344
-      // for more details.
-      //
-      // Use `Object.preventExtensions` on a plain object instead of simply using
-      // `Object('x')` because Chrome and IE fail to throw an error when attempting
-      // to assign values to readonly indexes of strings in strict mode.
-      var object = { '1': 0 },
-          func = preventExtensions && isNative(func = Object.assign) && func;
-
-      try { func(preventExtensions(object), 'xo'); } catch(e) {}
-      return !object[1] && func;
-    }());
-
-    /* Native method references for those with the same name as other `lodash` methods. */
-    var nativeIsArray = isNative(nativeIsArray = Array.isArray) && nativeIsArray,
-        nativeCreate = isNative(nativeCreate = Object.create) && nativeCreate,
-        nativeIsFinite = context.isFinite,
-        nativeKeys = isNative(nativeKeys = Object.keys) && nativeKeys,
-        nativeMax = Math.max,
-        nativeMin = Math.min,
-        nativeNow = isNative(nativeNow = Date.now) && nativeNow,
-        nativeNumIsFinite = isNative(nativeNumIsFinite = Number.isFinite) && nativeNumIsFinite,
-        nativeParseInt = context.parseInt,
-        nativeRandom = Math.random;
-
-    /** Used as references for `-Infinity` and `Infinity`. */
-    var NEGATIVE_INFINITY = Number.NEGATIVE_INFINITY,
-        POSITIVE_INFINITY = Number.POSITIVE_INFINITY;
-
-    /** Used as references for the maximum length and index of an array. */
-    var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1,
-        MAX_ARRAY_INDEX =  MAX_ARRAY_LENGTH - 1,
-        HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
-
-    /** Used as the size, in bytes, of each `Float64Array` element. */
-    var FLOAT64_BYTES_PER_ELEMENT = Float64Array ? Float64Array.BYTES_PER_ELEMENT : 0;
-
-    /**
-     * Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer)
-     * of an array-like value.
-     */
-    var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;
-
-    /** Used to store function metadata. */
-    var metaMap = WeakMap && new WeakMap;
-
-    /** Used to lookup unminified function names. */
-    var realNames = {};
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates a `lodash` object which wraps `value` to enable implicit chaining.
-     * Methods that operate on and return arrays, collections, and functions can
-     * be chained together. Methods that return a boolean or single value will
-     * automatically end the chain returning the unwrapped value. Explicit chaining
-     * may be enabled using `_.chain`. The execution of chained methods is lazy,
-     * that is, execution is deferred until `_#value` is implicitly or explicitly
-     * called.
-     *
-     * Lazy evaluation allows several methods to support shortcut fusion. Shortcut
-     * fusion is an optimization that merges iteratees to avoid creating intermediate
-     * arrays and reduce the number of iteratee executions.
-     *
-     * Chaining is supported in custom builds as long as the `_#value` method is
-     * directly or indirectly included in the build.
-     *
-     * In addition to lodash methods, wrappers have `Array` and `String` methods.
-     *
-     * The wrapper `Array` methods are:
-     * `concat`, `join`, `pop`, `push`, `reverse`, `shift`, `slice`, `sort`,
-     * `splice`, and `unshift`
-     *
-     * The wrapper `String` methods are:
-     * `replace` and `split`
-     *
-     * The wrapper methods that support shortcut fusion are:
-     * `compact`, `drop`, `dropRight`, `dropRightWhile`, `dropWhile`, `filter`,
-     * `first`, `initial`, `last`, `map`, `pluck`, `reject`, `rest`, `reverse`,
-     * `slice`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `toArray`,
-     * and `where`
-     *
-     * The chainable wrapper methods are:
-     * `after`, `ary`, `assign`, `at`, `before`, `bind`, `bindAll`, `bindKey`,
-     * `callback`, `chain`, `chunk`, `commit`, `compact`, `concat`, `constant`,
-     * `countBy`, `create`, `curry`, `debounce`, `defaults`, `defer`, `delay`,
-     * `difference`, `drop`, `dropRight`, `dropRightWhile`, `dropWhile`, `fill`,
-     * `filter`, `flatten`, `flattenDeep`, `flow`, `flowRight`, `forEach`,
-     * `forEachRight`, `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `functions`,
-     * `groupBy`, `indexBy`, `initial`, `intersection`, `invert`, `invoke`, `keys`,
-     * `keysIn`, `map`, `mapValues`, `matches`, `matchesProperty`, `memoize`,
-     * `merge`, `mixin`, `negate`, `omit`, `once`, `pairs`, `partial`, `partialRight`,
-     * `partition`, `pick`, `plant`, `pluck`, `property`, `propertyOf`, `pull`,
-     * `pullAt`, `push`, `range`, `rearg`, `reject`, `remove`, `rest`, `reverse`,
-     * `shuffle`, `slice`, `sort`, `sortBy`, `sortByAll`, `sortByOrder`, `splice`,
-     * `spread`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, `tap`,
-     * `throttle`, `thru`, `times`, `toArray`, `toPlainObject`, `transform`,
-     * `union`, `uniq`, `unshift`, `unzip`, `values`, `valuesIn`, `where`,
-     * `without`, `wrap`, `xor`, `zip`, and `zipObject`
-     *
-     * The wrapper methods that are **not** chainable by default are:
-     * `add`, `attempt`, `camelCase`, `capitalize`, `clone`, `cloneDeep`, `deburr`,
-     * `endsWith`, `escape`, `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`,
-     * `findLast`, `findLastIndex`, `findLastKey`, `findWhere`, `first`, `has`,
-     * `identity`, `includes`, `indexOf`, `inRange`, `isArguments`, `isArray`,
-     * `isBoolean`, `isDate`, `isElement`, `isEmpty`, `isEqual`, `isError`, `isFinite`
-     * `isFunction`, `isMatch`, `isNative`, `isNaN`, `isNull`, `isNumber`, `isObject`,
-     * `isPlainObject`, `isRegExp`, `isString`, `isUndefined`, `isTypedArray`,
-     * `join`, `kebabCase`, `last`, `lastIndexOf`, `max`, `min`, `noConflict`,
-     * `noop`, `now`, `pad`, `padLeft`, `padRight`, `parseInt`, `pop`, `random`,
-     * `reduce`, `reduceRight`, `repeat`, `result`, `runInContext`, `shift`, `size`,
-     * `snakeCase`, `some`, `sortedIndex`, `sortedLastIndex`, `startCase`, `startsWith`,
-     * `sum`, `template`, `trim`, `trimLeft`, `trimRight`, `trunc`, `unescape`,
-     * `uniqueId`, `value`, and `words`
-     *
-     * The wrapper method `sample` will return a wrapped value when `n` is provided,
-     * otherwise an unwrapped value is returned.
-     *
-     * @name _
-     * @constructor
-     * @category Chain
-     * @param {*} value The value to wrap in a `lodash` instance.
-     * @returns {Object} Returns the new `lodash` wrapper instance.
-     * @example
-     *
-     * var wrapped = _([1, 2, 3]);
-     *
-     * // returns an unwrapped value
-     * wrapped.reduce(function(total, n) {
-     *   return total + n;
-     * });
-     * // => 6
-     *
-     * // returns a wrapped value
-     * var squares = wrapped.map(function(n) {
-     *   return n * n;
-     * });
-     *
-     * _.isArray(squares);
-     * // => false
-     *
-     * _.isArray(squares.value());
-     * // => true
-     */
-    function lodash(value) {
-      if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {
-        if (value instanceof LodashWrapper) {
-          return value;
-        }
-        if (hasOwnProperty.call(value, '__chain__') && hasOwnProperty.call(value, '__wrapped__')) {
-          return wrapperClone(value);
-        }
-      }
-      return new LodashWrapper(value);
-    }
-
-    /**
-     * The function whose prototype all chaining wrappers inherit from.
-     *
-     * @private
-     */
-    function baseLodash() {
-      // No operation performed.
-    }
-
-    /**
-     * The base constructor for creating `lodash` wrapper objects.
-     *
-     * @private
-     * @param {*} value The value to wrap.
-     * @param {boolean} [chainAll] Enable chaining for all wrapper methods.
-     * @param {Array} [actions=[]] Actions to peform to resolve the unwrapped value.
-     */
-    function LodashWrapper(value, chainAll, actions) {
-      this.__wrapped__ = value;
-      this.__actions__ = actions || [];
-      this.__chain__ = !!chainAll;
-    }
-
-    /**
-     * An object environment feature flags.
-     *
-     * @static
-     * @memberOf _
-     * @type Object
-     */
-    var support = lodash.support = {};
-
-    (function(x) {
-      var Ctor = function() { this.x = x; },
-          object = { '0': x, 'length': x },
-          props = [];
-
-      Ctor.prototype = { 'valueOf': x, 'y': x };
-      for (var key in new Ctor) { props.push(key); }
-
-      /**
-       * Detect if functions can be decompiled by `Function#toString`
-       * (all but Firefox OS certified apps, older Opera mobile browsers, and
-       * the PlayStation 3; forced `false` for Windows 8 apps).
-       *
-       * @memberOf _.support
-       * @type boolean
-       */
-      support.funcDecomp = /\bthis\b/.test(function() { return this; });
-
-      /**
-       * Detect if `Function#name` is supported (all but IE).
-       *
-       * @memberOf _.support
-       * @type boolean
-       */
-      support.funcNames = typeof Function.name == 'string';
-
-      /**
-       * Detect if the DOM is supported.
-       *
-       * @memberOf _.support
-       * @type boolean
-       */
-      try {
-        support.dom = document.createDocumentFragment().nodeType === 11;
-      } catch(e) {
-        support.dom = false;
-      }
-
-      /**
-       * Detect if `arguments` object indexes are non-enumerable.
-       *
-       * In Firefox < 4, IE < 9, PhantomJS, and Safari < 5.1 `arguments` object
-       * indexes are non-enumerable. Chrome < 25 and Node.js < 0.11.0 treat
-       * `arguments` object indexes as non-enumerable and fail `hasOwnProperty`
-       * checks for indexes that exceed the number of function parameters and
-       * whose associated argument values are `0`.
-       *
-       * @memberOf _.support
-       * @type boolean
-       */
-      try {
-        support.nonEnumArgs = !propertyIsEnumerable.call(arguments, 1);
-      } catch(e) {
-        support.nonEnumArgs = true;
-      }
-    }(1, 0));
-
-    /**
-     * By default, the template delimiters used by lodash are like those in
-     * embedded Ruby (ERB). Change the following template settings to use
-     * alternative delimiters.
-     *
-     * @static
-     * @memberOf _
-     * @type Object
-     */
-    lodash.templateSettings = {
-
-      /**
-       * Used to detect `data` property values to be HTML-escaped.
-       *
-       * @memberOf _.templateSettings
-       * @type RegExp
-       */
-      'escape': reEscape,
-
-      /**
-       * Used to detect code to be evaluated.
-       *
-       * @memberOf _.templateSettings
-       * @type RegExp
-       */
-      'evaluate': reEvaluate,
-
-      /**
-       * Used to detect `data` property values to inject.
-       *
-       * @memberOf _.templateSettings
-       * @type RegExp
-       */
-      'interpolate': reInterpolate,
-
-      /**
-       * Used to reference the data object in the template text.
-       *
-       * @memberOf _.templateSettings
-       * @type string
-       */
-      'variable': '',
-
-      /**
-       * Used to import variables into the compiled template.
-       *
-       * @memberOf _.templateSettings
-       * @type Object
-       */
-      'imports': {
-
-        /**
-         * A reference to the `lodash` function.
-         *
-         * @memberOf _.templateSettings.imports
-         * @type Function
-         */
-        '_': lodash
-      }
-    };
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.
-     *
-     * @private
-     * @param {*} value The value to wrap.
-     */
-    function LazyWrapper(value) {
-      this.__wrapped__ = value;
-      this.__actions__ = null;
-      this.__dir__ = 1;
-      this.__dropCount__ = 0;
-      this.__filtered__ = false;
-      this.__iteratees__ = null;
-      this.__takeCount__ = POSITIVE_INFINITY;
-      this.__views__ = null;
-    }
-
-    /**
-     * Creates a clone of the lazy wrapper object.
-     *
-     * @private
-     * @name clone
-     * @memberOf LazyWrapper
-     * @returns {Object} Returns the cloned `LazyWrapper` object.
-     */
-    function lazyClone() {
-      var actions = this.__actions__,
-          iteratees = this.__iteratees__,
-          views = this.__views__,
-          result = new LazyWrapper(this.__wrapped__);
-
-      result.__actions__ = actions ? arrayCopy(actions) : null;
-      result.__dir__ = this.__dir__;
-      result.__filtered__ = this.__filtered__;
-      result.__iteratees__ = iteratees ? arrayCopy(iteratees) : null;
-      result.__takeCount__ = this.__takeCount__;
-      result.__views__ = views ? arrayCopy(views) : null;
-      return result;
-    }
-
-    /**
-     * Reverses the direction of lazy iteration.
-     *
-     * @private
-     * @name reverse
-     * @memberOf LazyWrapper
-     * @returns {Object} Returns the new reversed `LazyWrapper` object.
-     */
-    function lazyReverse() {
-      if (this.__filtered__) {
-        var result = new LazyWrapper(this);
-        result.__dir__ = -1;
-        result.__filtered__ = true;
-      } else {
-        result = this.clone();
-        result.__dir__ *= -1;
-      }
-      return result;
-    }
-
-    /**
-     * Extracts the unwrapped value from its lazy wrapper.
-     *
-     * @private
-     * @name value
-     * @memberOf LazyWrapper
-     * @returns {*} Returns the unwrapped value.
-     */
-    function lazyValue() {
-      var array = this.__wrapped__.value();
-      if (!isArray(array)) {
-        return baseWrapperValue(array, this.__actions__);
-      }
-      var dir = this.__dir__,
-          isRight = dir < 0,
-          view = getView(0, array.length, this.__views__),
-          start = view.start,
-          end = view.end,
-          length = end - start,
-          index = isRight ? end : (start - 1),
-          takeCount = nativeMin(length, this.__takeCount__),
-          iteratees = this.__iteratees__,
-          iterLength = iteratees ? iteratees.length : 0,
-          resIndex = 0,
-          result = [];
-
-      outer:
-      while (length-- && resIndex < takeCount) {
-        index += dir;
-
-        var iterIndex = -1,
-            value = array[index];
-
-        while (++iterIndex < iterLength) {
-          var data = iteratees[iterIndex],
-              iteratee = data.iteratee,
-              type = data.type;
-
-          if (type == LAZY_DROP_WHILE_FLAG) {
-            if (data.done && (isRight ? (index > data.index) : (index < data.index))) {
-              data.count = 0;
-              data.done = false;
-            }
-            data.index = index;
-            if (!data.done) {
-              var limit = data.limit;
-              if (!(data.done = limit > -1 ? (data.count++ >= limit) : !iteratee(value))) {
-                continue outer;
-              }
-            }
-          } else {
-            var computed = iteratee(value);
-            if (type == LAZY_MAP_FLAG) {
-              value = computed;
-            } else if (!computed) {
-              if (type == LAZY_FILTER_FLAG) {
-                continue outer;
-              } else {
-                break outer;
-              }
-            }
-          }
-        }
-        result[resIndex++] = value;
-      }
-      return result;
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates a cache object to store key/value pairs.
-     *
-     * @private
-     * @static
-     * @name Cache
-     * @memberOf _.memoize
-     */
-    function MapCache() {
-      this.__data__ = {};
-    }
-
-    /**
-     * Removes `key` and its value from the cache.
-     *
-     * @private
-     * @name delete
-     * @memberOf _.memoize.Cache
-     * @param {string} key The key of the value to remove.
-     * @returns {boolean} Returns `true` if the entry was removed successfully, else `false`.
-     */
-    function mapDelete(key) {
-      return this.has(key) && delete this.__data__[key];
-    }
-
-    /**
-     * Gets the cached value for `key`.
-     *
-     * @private
-     * @name get
-     * @memberOf _.memoize.Cache
-     * @param {string} key The key of the value to get.
-     * @returns {*} Returns the cached value.
-     */
-    function mapGet(key) {
-      return key == '__proto__' ? undefined : this.__data__[key];
-    }
-
-    /**
-     * Checks if a cached value for `key` exists.
-     *
-     * @private
-     * @name has
-     * @memberOf _.memoize.Cache
-     * @param {string} key The key of the entry to check.
-     * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
-     */
-    function mapHas(key) {
-      return key != '__proto__' && hasOwnProperty.call(this.__data__, key);
-    }
-
-    /**
-     * Sets `value` to `key` of the cache.
-     *
-     * @private
-     * @name set
-     * @memberOf _.memoize.Cache
-     * @param {string} key The key of the value to cache.
-     * @param {*} value The value to cache.
-     * @returns {Object} Returns the cache object.
-     */
-    function mapSet(key, value) {
-      if (key != '__proto__') {
-        this.__data__[key] = value;
-      }
-      return this;
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     *
-     * Creates a cache object to store unique values.
-     *
-     * @private
-     * @param {Array} [values] The values to cache.
-     */
-    function SetCache(values) {
-      var length = values ? values.length : 0;
-
-      this.data = { 'hash': nativeCreate(null), 'set': new Set };
-      while (length--) {
-        this.push(values[length]);
-      }
-    }
-
-    /**
-     * Checks if `value` is in `cache` mimicking the return signature of
-     * `_.indexOf` by returning `0` if the value is found, else `-1`.
-     *
-     * @private
-     * @param {Object} cache The cache to search.
-     * @param {*} value The value to search for.
-     * @returns {number} Returns `0` if `value` is found, else `-1`.
-     */
-    function cacheIndexOf(cache, value) {
-      var data = cache.data,
-          result = (typeof value == 'string' || isObject(value)) ? data.set.has(value) : data.hash[value];
-
-      return result ? 0 : -1;
-    }
-
-    /**
-     * Adds `value` to the cache.
-     *
-     * @private
-     * @name push
-     * @memberOf SetCache
-     * @param {*} value The value to cache.
-     */
-    function cachePush(value) {
-      var data = this.data;
-      if (typeof value == 'string' || isObject(value)) {
-        data.set.add(value);
-      } else {
-        data.hash[value] = true;
-      }
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Copies the values of `source` to `array`.
-     *
-     * @private
-     * @param {Array} source The array to copy values from.
-     * @param {Array} [array=[]] The array to copy values to.
-     * @returns {Array} Returns `array`.
-     */
-    function arrayCopy(source, array) {
-      var index = -1,
-          length = source.length;
-
-      array || (array = Array(length));
-      while (++index < length) {
-        array[index] = source[index];
-      }
-      return array;
-    }
-
-    /**
-     * A specialized version of `_.forEach` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array} Returns `array`.
-     */
-    function arrayEach(array, iteratee) {
-      var index = -1,
-          length = array.length;
-
-      while (++index < length) {
-        if (iteratee(array[index], index, array) === false) {
-          break;
-        }
-      }
-      return array;
-    }
-
-    /**
-     * A specialized version of `_.forEachRight` for arrays without support for
-     * callback shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array} Returns `array`.
-     */
-    function arrayEachRight(array, iteratee) {
-      var length = array.length;
-
-      while (length--) {
-        if (iteratee(array[length], length, array) === false) {
-          break;
-        }
-      }
-      return array;
-    }
-
-    /**
-     * A specialized version of `_.every` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {boolean} Returns `true` if all elements pass the predicate check,
-     *  else `false`.
-     */
-    function arrayEvery(array, predicate) {
-      var index = -1,
-          length = array.length;
-
-      while (++index < length) {
-        if (!predicate(array[index], index, array)) {
-          return false;
-        }
-      }
-      return true;
-    }
-
-    /**
-     * A specialized version of `_.filter` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {Array} Returns the new filtered array.
-     */
-    function arrayFilter(array, predicate) {
-      var index = -1,
-          length = array.length,
-          resIndex = -1,
-          result = [];
-
-      while (++index < length) {
-        var value = array[index];
-        if (predicate(value, index, array)) {
-          result[++resIndex] = value;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * A specialized version of `_.map` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array} Returns the new mapped array.
-     */
-    function arrayMap(array, iteratee) {
-      var index = -1,
-          length = array.length,
-          result = Array(length);
-
-      while (++index < length) {
-        result[index] = iteratee(array[index], index, array);
-      }
-      return result;
-    }
-
-    /**
-     * A specialized version of `_.max` for arrays without support for iteratees.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @returns {*} Returns the maximum value.
-     */
-    function arrayMax(array) {
-      var index = -1,
-          length = array.length,
-          result = NEGATIVE_INFINITY;
-
-      while (++index < length) {
-        var value = array[index];
-        if (value > result) {
-          result = value;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * A specialized version of `_.min` for arrays without support for iteratees.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @returns {*} Returns the minimum value.
-     */
-    function arrayMin(array) {
-      var index = -1,
-          length = array.length,
-          result = POSITIVE_INFINITY;
-
-      while (++index < length) {
-        var value = array[index];
-        if (value < result) {
-          result = value;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * A specialized version of `_.reduce` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {*} [accumulator] The initial value.
-     * @param {boolean} [initFromArray] Specify using the first element of `array`
-     *  as the initial value.
-     * @returns {*} Returns the accumulated value.
-     */
-    function arrayReduce(array, iteratee, accumulator, initFromArray) {
-      var index = -1,
-          length = array.length;
-
-      if (initFromArray && length) {
-        accumulator = array[++index];
-      }
-      while (++index < length) {
-        accumulator = iteratee(accumulator, array[index], index, array);
-      }
-      return accumulator;
-    }
-
-    /**
-     * A specialized version of `_.reduceRight` for arrays without support for
-     * callback shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {*} [accumulator] The initial value.
-     * @param {boolean} [initFromArray] Specify using the last element of `array`
-     *  as the initial value.
-     * @returns {*} Returns the accumulated value.
-     */
-    function arrayReduceRight(array, iteratee, accumulator, initFromArray) {
-      var length = array.length;
-      if (initFromArray && length) {
-        accumulator = array[--length];
-      }
-      while (length--) {
-        accumulator = iteratee(accumulator, array[length], length, array);
-      }
-      return accumulator;
-    }
-
-    /**
-     * A specialized version of `_.some` for arrays without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {boolean} Returns `true` if any element passes the predicate check,
-     *  else `false`.
-     */
-    function arraySome(array, predicate) {
-      var index = -1,
-          length = array.length;
-
-      while (++index < length) {
-        if (predicate(array[index], index, array)) {
-          return true;
-        }
-      }
-      return false;
-    }
-
-    /**
-     * A specialized version of `_.sum` for arrays without support for iteratees.
-     *
-     * @private
-     * @param {Array} array The array to iterate over.
-     * @returns {number} Returns the sum.
-     */
-    function arraySum(array) {
-      var length = array.length,
-          result = 0;
-
-      while (length--) {
-        result += +array[length] || 0;
-      }
-      return result;
-    }
-
-    /**
-     * Used by `_.defaults` to customize its `_.assign` use.
-     *
-     * @private
-     * @param {*} objectValue The destination object property value.
-     * @param {*} sourceValue The source object property value.
-     * @returns {*} Returns the value to assign to the destination object.
-     */
-    function assignDefaults(objectValue, sourceValue) {
-      return objectValue === undefined ? sourceValue : objectValue;
-    }
-
-    /**
-     * Used by `_.template` to customize its `_.assign` use.
-     *
-     * **Note:** This function is like `assignDefaults` except that it ignores
-     * inherited property values when checking if a property is `undefined`.
-     *
-     * @private
-     * @param {*} objectValue The destination object property value.
-     * @param {*} sourceValue The source object property value.
-     * @param {string} key The key associated with the object and source values.
-     * @param {Object} object The destination object.
-     * @returns {*} Returns the value to assign to the destination object.
-     */
-    function assignOwnDefaults(objectValue, sourceValue, key, object) {
-      return (objectValue === undefined || !hasOwnProperty.call(object, key))
-        ? sourceValue
-        : objectValue;
-    }
-
-    /**
-     * A specialized version of `_.assign` for customizing assigned values without
-     * support for argument juggling, multiple sources, and `this` binding `customizer`
-     * functions.
-     *
-     * @private
-     * @param {Object} object The destination object.
-     * @param {Object} source The source object.
-     * @param {Function} customizer The function to customize assigned values.
-     * @returns {Object} Returns `object`.
-     */
-    function assignWith(object, source, customizer) {
-      var props = keys(source);
-      push.apply(props, getSymbols(source));
-
-      var index = -1,
-          length = props.length;
-
-      while (++index < length) {
-        var key = props[index],
-            value = object[key],
-            result = customizer(value, source[key], key, object, source);
-
-        if ((result === result ? (result !== value) : (value === value)) ||
-            (value === undefined && !(key in object))) {
-          object[key] = result;
-        }
-      }
-      return object;
-    }
-
-    /**
-     * The base implementation of `_.assign` without support for argument juggling,
-     * multiple sources, and `customizer` functions.
-     *
-     * @private
-     * @param {Object} object The destination object.
-     * @param {Object} source The source object.
-     * @returns {Object} Returns `object`.
-     */
-    var baseAssign = nativeAssign || function(object, source) {
-      return source == null
-        ? object
-        : baseCopy(source, getSymbols(source), baseCopy(source, keys(source), object));
-    };
-
-    /**
-     * The base implementation of `_.at` without support for string collections
-     * and individual key arguments.
-     *
-     * @private
-     * @param {Array|Object} collection The collection to iterate over.
-     * @param {number[]|string[]} props The property names or indexes of elements to pick.
-     * @returns {Array} Returns the new array of picked elements.
-     */
-    function baseAt(collection, props) {
-      var index = -1,
-          length = collection.length,
-          isArr = isLength(length),
-          propsLength = props.length,
-          result = Array(propsLength);
-
-      while(++index < propsLength) {
-        var key = props[index];
-        if (isArr) {
-          result[index] = isIndex(key, length) ? collection[key] : undefined;
-        } else {
-          result[index] = collection[key];
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Copies properties of `source` to `object`.
-     *
-     * @private
-     * @param {Object} source The object to copy properties from.
-     * @param {Array} props The property names to copy.
-     * @param {Object} [object={}] The object to copy properties to.
-     * @returns {Object} Returns `object`.
-     */
-    function baseCopy(source, props, object) {
-      object || (object = {});
-
-      var index = -1,
-          length = props.length;
-
-      while (++index < length) {
-        var key = props[index];
-        object[key] = source[key];
-      }
-      return object;
-    }
-
-    /**
-     * The base implementation of `_.callback` which supports specifying the
-     * number of arguments to provide to `func`.
-     *
-     * @private
-     * @param {*} [func=_.identity] The value to convert to a callback.
-     * @param {*} [thisArg] The `this` binding of `func`.
-     * @param {number} [argCount] The number of arguments to provide to `func`.
-     * @returns {Function} Returns the callback.
-     */
-    function baseCallback(func, thisArg, argCount) {
-      var type = typeof func;
-      if (type == 'function') {
-        return thisArg === undefined
-          ? func
-          : bindCallback(func, thisArg, argCount);
-      }
-      if (func == null) {
-        return identity;
-      }
-      if (type == 'object') {
-        return baseMatches(func);
-      }
-      return thisArg === undefined
-        ? property(func)
-        : baseMatchesProperty(func, thisArg);
-    }
-
-    /**
-     * The base implementation of `_.clone` without support for argument juggling
-     * and `this` binding `customizer` functions.
-     *
-     * @private
-     * @param {*} value The value to clone.
-     * @param {boolean} [isDeep] Specify a deep clone.
-     * @param {Function} [customizer] The function to customize cloning values.
-     * @param {string} [key] The key of `value`.
-     * @param {Object} [object] The object `value` belongs to.
-     * @param {Array} [stackA=[]] Tracks traversed source objects.
-     * @param {Array} [stackB=[]] Associates clones with source counterparts.
-     * @returns {*} Returns the cloned value.
-     */
-    function baseClone(value, isDeep, customizer, key, object, stackA, stackB) {
-      var result;
-      if (customizer) {
-        result = object ? customizer(value, key, object) : customizer(value);
-      }
-      if (result !== undefined) {
-        return result;
-      }
-      if (!isObject(value)) {
-        return value;
-      }
-      var isArr = isArray(value);
-      if (isArr) {
-        result = initCloneArray(value);
-        if (!isDeep) {
-          return arrayCopy(value, result);
-        }
-      } else {
-        var tag = objToString.call(value),
-            isFunc = tag == funcTag;
-
-        if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
-          result = initCloneObject(isFunc ? {} : value);
-          if (!isDeep) {
-            return baseAssign(result, value);
-          }
-        } else {
-          return cloneableTags[tag]
-            ? initCloneByTag(value, tag, isDeep)
-            : (object ? value : {});
-        }
-      }
-      // Check for circular references and return corresponding clone.
-      stackA || (stackA = []);
-      stackB || (stackB = []);
-
-      var length = stackA.length;
-      while (length--) {
-        if (stackA[length] == value) {
-          return stackB[length];
-        }
-      }
-      // Add the source value to the stack of traversed objects and associate it with its clone.
-      stackA.push(value);
-      stackB.push(result);
-
-      // Recursively populate clone (susceptible to call stack limits).
-      (isArr ? arrayEach : baseForOwn)(value, function(subValue, key) {
-        result[key] = baseClone(subValue, isDeep, customizer, key, value, stackA, stackB);
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.create` without support for assigning
-     * properties to the created object.
-     *
-     * @private
-     * @param {Object} prototype The object to inherit from.
-     * @returns {Object} Returns the new object.
-     */
-    var baseCreate = (function() {
-      function Object() {}
-      return function(prototype) {
-        if (isObject(prototype)) {
-          Object.prototype = prototype;
-          var result = new Object;
-          Object.prototype = null;
-        }
-        return result || context.Object();
-      };
-    }());
-
-    /**
-     * The base implementation of `_.delay` and `_.defer` which accepts an index
-     * of where to slice the arguments to provide to `func`.
-     *
-     * @private
-     * @param {Function} func The function to delay.
-     * @param {number} wait The number of milliseconds to delay invocation.
-     * @param {Object} args The arguments provide to `func`.
-     * @returns {number} Returns the timer id.
-     */
-    function baseDelay(func, wait, args) {
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      return setTimeout(function() { func.apply(undefined, args); }, wait);
-    }
-
-    /**
-     * The base implementation of `_.difference` which accepts a single array
-     * of values to exclude.
-     *
-     * @private
-     * @param {Array} array The array to inspect.
-     * @param {Array} values The values to exclude.
-     * @returns {Array} Returns the new array of filtered values.
-     */
-    function baseDifference(array, values) {
-      var length = array ? array.length : 0,
-          result = [];
-
-      if (!length) {
-        return result;
-      }
-      var index = -1,
-          indexOf = getIndexOf(),
-          isCommon = indexOf == baseIndexOf,
-          cache = (isCommon && values.length >= 200) ? createCache(values) : null,
-          valuesLength = values.length;
-
-      if (cache) {
-        indexOf = cacheIndexOf;
-        isCommon = false;
-        values = cache;
-      }
-      outer:
-      while (++index < length) {
-        var value = array[index];
-
-        if (isCommon && value === value) {
-          var valuesIndex = valuesLength;
-          while (valuesIndex--) {
-            if (values[valuesIndex] === value) {
-              continue outer;
-            }
-          }
-          result.push(value);
-        }
-        else if (indexOf(values, value, 0) < 0) {
-          result.push(value);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.forEach` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array|Object|string} Returns `collection`.
-     */
-    var baseEach = createBaseEach(baseForOwn);
-
-    /**
-     * The base implementation of `_.forEachRight` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array|Object|string} Returns `collection`.
-     */
-    var baseEachRight = createBaseEach(baseForOwnRight, true);
-
-    /**
-     * The base implementation of `_.every` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {boolean} Returns `true` if all elements pass the predicate check,
-     *  else `false`
-     */
-    function baseEvery(collection, predicate) {
-      var result = true;
-      baseEach(collection, function(value, index, collection) {
-        result = !!predicate(value, index, collection);
-        return result;
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.fill` without an iteratee call guard.
-     *
-     * @private
-     * @param {Array} array The array to fill.
-     * @param {*} value The value to fill `array` with.
-     * @param {number} [start=0] The start position.
-     * @param {number} [end=array.length] The end position.
-     * @returns {Array} Returns `array`.
-     */
-    function baseFill(array, value, start, end) {
-      var length = array.length;
-
-      start = start == null ? 0 : (+start || 0);
-      if (start < 0) {
-        start = -start > length ? 0 : (length + start);
-      }
-      end = (end === undefined || end > length) ? length : (+end || 0);
-      if (end < 0) {
-        end += length;
-      }
-      length = start > end ? 0 : (end >>> 0);
-      start >>>= 0;
-
-      while (start < length) {
-        array[start++] = value;
-      }
-      return array;
-    }
-
-    /**
-     * The base implementation of `_.filter` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {Array} Returns the new filtered array.
-     */
-    function baseFilter(collection, predicate) {
-      var result = [];
-      baseEach(collection, function(value, index, collection) {
-        if (predicate(value, index, collection)) {
-          result.push(value);
-        }
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.find`, `_.findLast`, `_.findKey`, and `_.findLastKey`,
-     * without support for callback shorthands and `this` binding, which iterates
-     * over `collection` using the provided `eachFunc`.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {Function} predicate The function invoked per iteration.
-     * @param {Function} eachFunc The function to iterate over `collection`.
-     * @param {boolean} [retKey] Specify returning the key of the found element
-     *  instead of the element itself.
-     * @returns {*} Returns the found element or its key, else `undefined`.
-     */
-    function baseFind(collection, predicate, eachFunc, retKey) {
-      var result;
-      eachFunc(collection, function(value, key, collection) {
-        if (predicate(value, key, collection)) {
-          result = retKey ? key : value;
-          return false;
-        }
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.flatten` with added support for restricting
-     * flattening and specifying the start index.
-     *
-     * @private
-     * @param {Array} array The array to flatten.
-     * @param {boolean} isDeep Specify a deep flatten.
-     * @param {boolean} isStrict Restrict flattening to arrays and `arguments` objects.
-     * @returns {Array} Returns the new flattened array.
-     */
-    function baseFlatten(array, isDeep, isStrict) {
-      var index = -1,
-          length = array.length,
-          resIndex = -1,
-          result = [];
-
-      while (++index < length) {
-        var value = array[index];
-
-        if (isObjectLike(value) && isLength(value.length) && (isArray(value) || isArguments(value))) {
-          if (isDeep) {
-            // Recursively flatten arrays (susceptible to call stack limits).
-            value = baseFlatten(value, isDeep, isStrict);
-          }
-          var valIndex = -1,
-              valLength = value.length;
-
-          result.length += valLength;
-          while (++valIndex < valLength) {
-            result[++resIndex] = value[valIndex];
-          }
-        } else if (!isStrict) {
-          result[++resIndex] = value;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `baseForIn` and `baseForOwn` which iterates
-     * over `object` properties returned by `keysFunc` invoking `iteratee` for
-     * each property. Iteratee functions may exit iteration early by explicitly
-     * returning `false`.
-     *
-     * @private
-     * @param {Object} object The object to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {Function} keysFunc The function to get the keys of `object`.
-     * @returns {Object} Returns `object`.
-     */
-    var baseFor = createBaseFor();
-
-    /**
-     * This function is like `baseFor` except that it iterates over properties
-     * in the opposite order.
-     *
-     * @private
-     * @param {Object} object The object to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {Function} keysFunc The function to get the keys of `object`.
-     * @returns {Object} Returns `object`.
-     */
-    var baseForRight = createBaseFor(true);
-
-    /**
-     * The base implementation of `_.forIn` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Object} object The object to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Object} Returns `object`.
-     */
-    function baseForIn(object, iteratee) {
-      return baseFor(object, iteratee, keysIn);
-    }
-
-    /**
-     * The base implementation of `_.forOwn` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Object} object The object to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Object} Returns `object`.
-     */
-    function baseForOwn(object, iteratee) {
-      return baseFor(object, iteratee, keys);
-    }
-
-    /**
-     * The base implementation of `_.forOwnRight` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Object} object The object to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Object} Returns `object`.
-     */
-    function baseForOwnRight(object, iteratee) {
-      return baseForRight(object, iteratee, keys);
-    }
-
-    /**
-     * The base implementation of `_.functions` which creates an array of
-     * `object` function property names filtered from those provided.
-     *
-     * @private
-     * @param {Object} object The object to inspect.
-     * @param {Array} props The property names to filter.
-     * @returns {Array} Returns the new array of filtered property names.
-     */
-    function baseFunctions(object, props) {
-      var index = -1,
-          length = props.length,
-          resIndex = -1,
-          result = [];
-
-      while (++index < length) {
-        var key = props[index];
-        if (isFunction(object[key])) {
-          result[++resIndex] = key;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `get` without support for string paths
-     * and default values.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @param {Array} path The path of the property to get.
-     * @param {string} [pathKey] The key representation of path.
-     * @returns {*} Returns the resolved value.
-     */
-    function baseGet(object, path, pathKey) {
-      if (object == null) {
-        return;
-      }
-      if (pathKey !== undefined && pathKey in toObject(object)) {
-        path = [pathKey];
-      }
-      var index = -1,
-          length = path.length;
-
-      while (object != null && ++index < length) {
-        var result = object = object[path[index]];
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.isEqual` without support for `this` binding
-     * `customizer` functions.
-     *
-     * @private
-     * @param {*} value The value to compare.
-     * @param {*} other The other value to compare.
-     * @param {Function} [customizer] The function to customize comparing values.
-     * @param {boolean} [isLoose] Specify performing partial comparisons.
-     * @param {Array} [stackA] Tracks traversed `value` objects.
-     * @param {Array} [stackB] Tracks traversed `other` objects.
-     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
-     */
-    function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
-      // Exit early for identical values.
-      if (value === other) {
-        // Treat `+0` vs. `-0` as not equal.
-        return value !== 0 || (1 / value == 1 / other);
-      }
-      var valType = typeof value,
-          othType = typeof other;
-
-      // Exit early for unlike primitive values.
-      if ((valType != 'function' && valType != 'object' && othType != 'function' && othType != 'object') ||
-          value == null || other == null) {
-        // Return `false` unless both values are `NaN`.
-        return value !== value && other !== other;
-      }
-      return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB);
-    }
-
-    /**
-     * A specialized version of `baseIsEqual` for arrays and objects which performs
-     * deep comparisons and tracks traversed objects enabling objects with circular
-     * references to be compared.
-     *
-     * @private
-     * @param {Object} object The object to compare.
-     * @param {Object} other The other object to compare.
-     * @param {Function} equalFunc The function to determine equivalents of values.
-     * @param {Function} [customizer] The function to customize comparing objects.
-     * @param {boolean} [isLoose] Specify performing partial comparisons.
-     * @param {Array} [stackA=[]] Tracks traversed `value` objects.
-     * @param {Array} [stackB=[]] Tracks traversed `other` objects.
-     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-     */
-    function baseIsEqualDeep(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-      var objIsArr = isArray(object),
-          othIsArr = isArray(other),
-          objTag = arrayTag,
-          othTag = arrayTag;
-
-      if (!objIsArr) {
-        objTag = objToString.call(object);
-        if (objTag == argsTag) {
-          objTag = objectTag;
-        } else if (objTag != objectTag) {
-          objIsArr = isTypedArray(object);
-        }
-      }
-      if (!othIsArr) {
-        othTag = objToString.call(other);
-        if (othTag == argsTag) {
-          othTag = objectTag;
-        } else if (othTag != objectTag) {
-          othIsArr = isTypedArray(other);
-        }
-      }
-      var objIsObj = objTag == objectTag,
-          othIsObj = othTag == objectTag,
-          isSameTag = objTag == othTag;
-
-      if (isSameTag && !(objIsArr || objIsObj)) {
-        return equalByTag(object, other, objTag);
-      }
-      if (!isLoose) {
-        var valWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
-            othWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
-
-        if (valWrapped || othWrapped) {
-          return equalFunc(valWrapped ? object.value() : object, othWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
-        }
-      }
-      if (!isSameTag) {
-        return false;
-      }
-      // Assume cyclic values are equal.
-      // For more information on detecting circular references see https://es5.github.io/#JO.
-      stackA || (stackA = []);
-      stackB || (stackB = []);
-
-      var length = stackA.length;
-      while (length--) {
-        if (stackA[length] == object) {
-          return stackB[length] == other;
-        }
-      }
-      // Add `object` and `other` to the stack of traversed objects.
-      stackA.push(object);
-      stackB.push(other);
-
-      var result = (objIsArr ? equalArrays : equalObjects)(object, other, equalFunc, customizer, isLoose, stackA, stackB);
-
-      stackA.pop();
-      stackB.pop();
-
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.isMatch` without support for callback
-     * shorthands and `this` binding.
-     *
-     * @private
-     * @param {Object} object The object to inspect.
-     * @param {Array} props The source property names to match.
-     * @param {Array} values The source values to match.
-     * @param {Array} strictCompareFlags Strict comparison flags for source values.
-     * @param {Function} [customizer] The function to customize comparing objects.
-     * @returns {boolean} Returns `true` if `object` is a match, else `false`.
-     */
-    function baseIsMatch(object, props, values, strictCompareFlags, customizer) {
-      var index = -1,
-          length = props.length,
-          noCustomizer = !customizer;
-
-      while (++index < length) {
-        if ((noCustomizer && strictCompareFlags[index])
-              ? values[index] !== object[props[index]]
-              : !(props[index] in object)
-            ) {
-          return false;
-        }
-      }
-      index = -1;
-      while (++index < length) {
-        var key = props[index],
-            objValue = object[key],
-            srcValue = values[index];
-
-        if (noCustomizer && strictCompareFlags[index]) {
-          var result = objValue !== undefined || (key in object);
-        } else {
-          result = customizer ? customizer(objValue, srcValue, key) : undefined;
-          if (result === undefined) {
-            result = baseIsEqual(srcValue, objValue, customizer, true);
-          }
-        }
-        if (!result) {
-          return false;
-        }
-      }
-      return true;
-    }
-
-    /**
-     * The base implementation of `_.map` without support for callback shorthands
-     * and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {Array} Returns the new mapped array.
-     */
-    function baseMap(collection, iteratee) {
-      var index = -1,
-          length = getLength(collection),
-          result = isLength(length) ? Array(length) : [];
-
-      baseEach(collection, function(value, key, collection) {
-        result[++index] = iteratee(value, key, collection);
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.matches` which does not clone `source`.
-     *
-     * @private
-     * @param {Object} source The object of property values to match.
-     * @returns {Function} Returns the new function.
-     */
-    function baseMatches(source) {
-      var props = keys(source),
-          length = props.length;
-
-      if (!length) {
-        return constant(true);
-      }
-      if (length == 1) {
-        var key = props[0],
-            value = source[key];
-
-        if (isStrictComparable(value)) {
-          return function(object) {
-            if (object == null) {
-              return false;
-            }
-            return object[key] === value && (value !== undefined || (key in toObject(object)));
-          };
-        }
-      }
-      var values = Array(length),
-          strictCompareFlags = Array(length);
-
-      while (length--) {
-        value = source[props[length]];
-        values[length] = value;
-        strictCompareFlags[length] = isStrictComparable(value);
-      }
-      return function(object) {
-        return object != null && baseIsMatch(toObject(object), props, values, strictCompareFlags);
-      };
-    }
-
-    /**
-     * The base implementation of `_.matchesProperty` which does not which does
-     * not clone `value`.
-     *
-     * @private
-     * @param {string} path The path of the property to get.
-     * @param {*} value The value to compare.
-     * @returns {Function} Returns the new function.
-     */
-    function baseMatchesProperty(path, value) {
-      var isArr = isArray(path),
-          isCommon = isKey(path) && isStrictComparable(value),
-          pathKey = (path + '');
-
-      path = toPath(path);
-      return function(object) {
-        if (object == null) {
-          return false;
-        }
-        var key = pathKey;
-        object = toObject(object);
-        if ((isArr || !isCommon) && !(key in object)) {
-          object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-          if (object == null) {
-            return false;
-          }
-          key = last(path);
-          object = toObject(object);
-        }
-        return object[key] === value
-          ? (value !== undefined || (key in object))
-          : baseIsEqual(value, object[key], null, true);
-      };
-    }
-
-    /**
-     * The base implementation of `_.merge` without support for argument juggling,
-     * multiple sources, and `this` binding `customizer` functions.
-     *
-     * @private
-     * @param {Object} object The destination object.
-     * @param {Object} source The source object.
-     * @param {Function} [customizer] The function to customize merging properties.
-     * @param {Array} [stackA=[]] Tracks traversed source objects.
-     * @param {Array} [stackB=[]] Associates values with source counterparts.
-     * @returns {Object} Returns `object`.
-     */
-    function baseMerge(object, source, customizer, stackA, stackB) {
-      if (!isObject(object)) {
-        return object;
-      }
-      var isSrcArr = isLength(source.length) && (isArray(source) || isTypedArray(source));
-      if (!isSrcArr) {
-        var props = keys(source);
-        push.apply(props, getSymbols(source));
-      }
-      arrayEach(props || source, function(srcValue, key) {
-        if (props) {
-          key = srcValue;
-          srcValue = source[key];
-        }
-        if (isObjectLike(srcValue)) {
-          stackA || (stackA = []);
-          stackB || (stackB = []);
-          baseMergeDeep(object, source, key, baseMerge, customizer, stackA, stackB);
-        }
-        else {
-          var value = object[key],
-              result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-              isCommon = result === undefined;
-
-          if (isCommon) {
-            result = srcValue;
-          }
-          if ((isSrcArr || result !== undefined) &&
-              (isCommon || (result === result ? (result !== value) : (value === value)))) {
-            object[key] = result;
-          }
-        }
-      });
-      return object;
-    }
-
-    /**
-     * A specialized version of `baseMerge` for arrays and objects which performs
-     * deep merges and tracks traversed objects enabling objects with circular
-     * references to be merged.
-     *
-     * @private
-     * @param {Object} object The destination object.
-     * @param {Object} source The source object.
-     * @param {string} key The key of the value to merge.
-     * @param {Function} mergeFunc The function to merge values.
-     * @param {Function} [customizer] The function to customize merging properties.
-     * @param {Array} [stackA=[]] Tracks traversed source objects.
-     * @param {Array} [stackB=[]] Associates values with source counterparts.
-     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-     */
-    function baseMergeDeep(object, source, key, mergeFunc, customizer, stackA, stackB) {
-      var length = stackA.length,
-          srcValue = source[key];
-
-      while (length--) {
-        if (stackA[length] == srcValue) {
-          object[key] = stackB[length];
-          return;
-        }
-      }
-      var value = object[key],
-          result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-          isCommon = result === undefined;
-
-      if (isCommon) {
-        result = srcValue;
-        if (isLength(srcValue.length) && (isArray(srcValue) || isTypedArray(srcValue))) {
-          result = isArray(value)
-            ? value
-            : (getLength(value) ? arrayCopy(value) : []);
-        }
-        else if (isPlainObject(srcValue) || isArguments(srcValue)) {
-          result = isArguments(value)
-            ? toPlainObject(value)
-            : (isPlainObject(value) ? value : {});
-        }
-        else {
-          isCommon = false;
-        }
-      }
-      // Add the source value to the stack of traversed objects and associate
-      // it with its merged value.
-      stackA.push(srcValue);
-      stackB.push(result);
-
-      if (isCommon) {
-        // Recursively merge objects and arrays (susceptible to call stack limits).
-        object[key] = mergeFunc(result, srcValue, customizer, stackA, stackB);
-      } else if (result === result ? (result !== value) : (value === value)) {
-        object[key] = result;
-      }
-    }
-
-    /**
-     * The base implementation of `_.property` without support for deep paths.
-     *
-     * @private
-     * @param {string} key The key of the property to get.
-     * @returns {Function} Returns the new function.
-     */
-    function baseProperty(key) {
-      return function(object) {
-        return object == null ? undefined : object[key];
-      };
-    }
-
-    /**
-     * A specialized version of `baseProperty` which supports deep paths.
-     *
-     * @private
-     * @param {Array|string} path The path of the property to get.
-     * @returns {Function} Returns the new function.
-     */
-    function basePropertyDeep(path) {
-      var pathKey = (path + '');
-      path = toPath(path);
-      return function(object) {
-        return baseGet(object, path, pathKey);
-      };
-    }
-
-    /**
-     * The base implementation of `_.pullAt` without support for individual
-     * index arguments and capturing the removed elements.
-     *
-     * @private
-     * @param {Array} array The array to modify.
-     * @param {number[]} indexes The indexes of elements to remove.
-     * @returns {Array} Returns `array`.
-     */
-    function basePullAt(array, indexes) {
-      var length = indexes.length;
-      while (length--) {
-        var index = parseFloat(indexes[length]);
-        if (index != previous && isIndex(index)) {
-          var previous = index;
-          splice.call(array, index, 1);
-        }
-      }
-      return array;
-    }
-
-    /**
-     * The base implementation of `_.random` without support for argument juggling
-     * and returning floating-point numbers.
-     *
-     * @private
-     * @param {number} min The minimum possible value.
-     * @param {number} max The maximum possible value.
-     * @returns {number} Returns the random number.
-     */
-    function baseRandom(min, max) {
-      return min + floor(nativeRandom() * (max - min + 1));
-    }
-
-    /**
-     * The base implementation of `_.reduce` and `_.reduceRight` without support
-     * for callback shorthands and `this` binding, which iterates over `collection`
-     * using the provided `eachFunc`.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {*} accumulator The initial value.
-     * @param {boolean} initFromCollection Specify using the first or last element
-     *  of `collection` as the initial value.
-     * @param {Function} eachFunc The function to iterate over `collection`.
-     * @returns {*} Returns the accumulated value.
-     */
-    function baseReduce(collection, iteratee, accumulator, initFromCollection, eachFunc) {
-      eachFunc(collection, function(value, index, collection) {
-        accumulator = initFromCollection
-          ? (initFromCollection = false, value)
-          : iteratee(accumulator, value, index, collection);
-      });
-      return accumulator;
-    }
-
-    /**
-     * The base implementation of `setData` without support for hot loop detection.
-     *
-     * @private
-     * @param {Function} func The function to associate metadata with.
-     * @param {*} data The metadata.
-     * @returns {Function} Returns `func`.
-     */
-    var baseSetData = !metaMap ? identity : function(func, data) {
-      metaMap.set(func, data);
-      return func;
-    };
-
-    /**
-     * The base implementation of `_.slice` without an iteratee call guard.
-     *
-     * @private
-     * @param {Array} array The array to slice.
-     * @param {number} [start=0] The start position.
-     * @param {number} [end=array.length] The end position.
-     * @returns {Array} Returns the slice of `array`.
-     */
-    function baseSlice(array, start, end) {
-      var index = -1,
-          length = array.length;
-
-      start = start == null ? 0 : (+start || 0);
-      if (start < 0) {
-        start = -start > length ? 0 : (length + start);
-      }
-      end = (end === undefined || end > length) ? length : (+end || 0);
-      if (end < 0) {
-        end += length;
-      }
-      length = start > end ? 0 : ((end - start) >>> 0);
-      start >>>= 0;
-
-      var result = Array(length);
-      while (++index < length) {
-        result[index] = array[index + start];
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.some` without support for callback shorthands
-     * and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {boolean} Returns `true` if any element passes the predicate check,
-     *  else `false`.
-     */
-    function baseSome(collection, predicate) {
-      var result;
-
-      baseEach(collection, function(value, index, collection) {
-        result = predicate(value, index, collection);
-        return !result;
-      });
-      return !!result;
-    }
-
-    /**
-     * The base implementation of `_.sortBy` which uses `comparer` to define
-     * the sort order of `array` and replaces criteria objects with their
-     * corresponding values.
-     *
-     * @private
-     * @param {Array} array The array to sort.
-     * @param {Function} comparer The function to define sort order.
-     * @returns {Array} Returns `array`.
-     */
-    function baseSortBy(array, comparer) {
-      var length = array.length;
-
-      array.sort(comparer);
-      while (length--) {
-        array[length] = array[length].value;
-      }
-      return array;
-    }
-
-    /**
-     * The base implementation of `_.sortByOrder` without param guards.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
-     * @param {boolean[]} orders The sort orders of `iteratees`.
-     * @returns {Array} Returns the new sorted array.
-     */
-    function baseSortByOrder(collection, iteratees, orders) {
-      var callback = getCallback(),
-          index = -1;
-
-      iteratees = arrayMap(iteratees, function(iteratee) { return callback(iteratee); });
-
-      var result = baseMap(collection, function(value) {
-        var criteria = arrayMap(iteratees, function(iteratee) { return iteratee(value); });
-        return { 'criteria': criteria, 'index': ++index, 'value': value };
-      });
-
-      return baseSortBy(result, function(object, other) {
-        return compareMultiple(object, other, orders);
-      });
-    }
-
-    /**
-     * The base implementation of `_.sum` without support for callback shorthands
-     * and `this` binding.
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @returns {number} Returns the sum.
-     */
-    function baseSum(collection, iteratee) {
-      var result = 0;
-      baseEach(collection, function(value, index, collection) {
-        result += +iteratee(value, index, collection) || 0;
-      });
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.uniq` without support for callback shorthands
-     * and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to inspect.
-     * @param {Function} [iteratee] The function invoked per iteration.
-     * @returns {Array} Returns the new duplicate-value-free array.
-     */
-    function baseUniq(array, iteratee) {
-      var index = -1,
-          indexOf = getIndexOf(),
-          length = array.length,
-          isCommon = indexOf == baseIndexOf,
-          isLarge = isCommon && length >= 200,
-          seen = isLarge ? createCache() : null,
-          result = [];
-
-      if (seen) {
-        indexOf = cacheIndexOf;
-        isCommon = false;
-      } else {
-        isLarge = false;
-        seen = iteratee ? [] : result;
-      }
-      outer:
-      while (++index < length) {
-        var value = array[index],
-            computed = iteratee ? iteratee(value, index, array) : value;
-
-        if (isCommon && value === value) {
-          var seenIndex = seen.length;
-          while (seenIndex--) {
-            if (seen[seenIndex] === computed) {
-              continue outer;
-            }
-          }
-          if (iteratee) {
-            seen.push(computed);
-          }
-          result.push(value);
-        }
-        else if (indexOf(seen, computed, 0) < 0) {
-          if (iteratee || isLarge) {
-            seen.push(computed);
-          }
-          result.push(value);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.values` and `_.valuesIn` which creates an
-     * array of `object` property values corresponding to the property names
-     * of `props`.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @param {Array} props The property names to get values for.
-     * @returns {Object} Returns the array of property values.
-     */
-    function baseValues(object, props) {
-      var index = -1,
-          length = props.length,
-          result = Array(length);
-
-      while (++index < length) {
-        result[index] = object[props[index]];
-      }
-      return result;
-    }
-
-    /**
-     * The base implementation of `_.dropRightWhile`, `_.dropWhile`, `_.takeRightWhile`,
-     * and `_.takeWhile` without support for callback shorthands and `this` binding.
-     *
-     * @private
-     * @param {Array} array The array to query.
-     * @param {Function} predicate The function invoked per iteration.
-     * @param {boolean} [isDrop] Specify dropping elements instead of taking them.
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Array} Returns the slice of `array`.
-     */
-    function baseWhile(array, predicate, isDrop, fromRight) {
-      var length = array.length,
-          index = fromRight ? length : -1;
-
-      while ((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)) {}
-      return isDrop
-        ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))
-        : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));
-    }
-
-    /**
-     * The base implementation of `wrapperValue` which returns the result of
-     * performing a sequence of actions on the unwrapped `value`, where each
-     * successive action is supplied the return value of the previous.
-     *
-     * @private
-     * @param {*} value The unwrapped value.
-     * @param {Array} actions Actions to peform to resolve the unwrapped value.
-     * @returns {*} Returns the resolved value.
-     */
-    function baseWrapperValue(value, actions) {
-      var result = value;
-      if (result instanceof LazyWrapper) {
-        result = result.value();
-      }
-      var index = -1,
-          length = actions.length;
-
-      while (++index < length) {
-        var args = [result],
-            action = actions[index];
-
-        push.apply(args, action.args);
-        result = action.func.apply(action.thisArg, args);
-      }
-      return result;
-    }
-
-    /**
-     * Performs a binary search of `array` to determine the index at which `value`
-     * should be inserted into `array` in order to maintain its sort order.
-     *
-     * @private
-     * @param {Array} array The sorted array to inspect.
-     * @param {*} value The value to evaluate.
-     * @param {boolean} [retHighest] Specify returning the highest qualified index.
-     * @returns {number} Returns the index at which `value` should be inserted
-     *  into `array`.
-     */
-    function binaryIndex(array, value, retHighest) {
-      var low = 0,
-          high = array ? array.length : low;
-
-      if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
-        while (low < high) {
-          var mid = (low + high) >>> 1,
-              computed = array[mid];
-
-          if (retHighest ? (computed <= value) : (computed < value)) {
-            low = mid + 1;
-          } else {
-            high = mid;
-          }
-        }
-        return high;
-      }
-      return binaryIndexBy(array, value, identity, retHighest);
-    }
-
-    /**
-     * This function is like `binaryIndex` except that it invokes `iteratee` for
-     * `value` and each element of `array` to compute their sort ranking. The
-     * iteratee is invoked with one argument; (value).
-     *
-     * @private
-     * @param {Array} array The sorted array to inspect.
-     * @param {*} value The value to evaluate.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {boolean} [retHighest] Specify returning the highest qualified index.
-     * @returns {number} Returns the index at which `value` should be inserted
-     *  into `array`.
-     */
-    function binaryIndexBy(array, value, iteratee, retHighest) {
-      value = iteratee(value);
-
-      var low = 0,
-          high = array ? array.length : 0,
-          valIsNaN = value !== value,
-          valIsUndef = value === undefined;
-
-      while (low < high) {
-        var mid = floor((low + high) / 2),
-            computed = iteratee(array[mid]),
-            isReflexive = computed === computed;
-
-        if (valIsNaN) {
-          var setLow = isReflexive || retHighest;
-        } else if (valIsUndef) {
-          setLow = isReflexive && (retHighest || computed !== undefined);
-        } else {
-          setLow = retHighest ? (computed <= value) : (computed < value);
-        }
-        if (setLow) {
-          low = mid + 1;
-        } else {
-          high = mid;
-        }
-      }
-      return nativeMin(high, MAX_ARRAY_INDEX);
-    }
-
-    /**
-     * A specialized version of `baseCallback` which only supports `this` binding
-     * and specifying the number of arguments to provide to `func`.
-     *
-     * @private
-     * @param {Function} func The function to bind.
-     * @param {*} thisArg The `this` binding of `func`.
-     * @param {number} [argCount] The number of arguments to provide to `func`.
-     * @returns {Function} Returns the callback.
-     */
-    function bindCallback(func, thisArg, argCount) {
-      if (typeof func != 'function') {
-        return identity;
-      }
-      if (thisArg === undefined) {
-        return func;
-      }
-      switch (argCount) {
-        case 1: return function(value) {
-          return func.call(thisArg, value);
-        };
-        case 3: return function(value, index, collection) {
-          return func.call(thisArg, value, index, collection);
-        };
-        case 4: return function(accumulator, value, index, collection) {
-          return func.call(thisArg, accumulator, value, index, collection);
-        };
-        case 5: return function(value, other, key, object, source) {
-          return func.call(thisArg, value, other, key, object, source);
-        };
-      }
-      return function() {
-        return func.apply(thisArg, arguments);
-      };
-    }
-
-    /**
-     * Creates a clone of the given array buffer.
-     *
-     * @private
-     * @param {ArrayBuffer} buffer The array buffer to clone.
-     * @returns {ArrayBuffer} Returns the cloned array buffer.
-     */
-    function bufferClone(buffer) {
-      return bufferSlice.call(buffer, 0);
-    }
-    if (!bufferSlice) {
-      // PhantomJS has `ArrayBuffer` and `Uint8Array` but not `Float64Array`.
-      bufferClone = !(ArrayBuffer && Uint8Array) ? constant(null) : function(buffer) {
-        var byteLength = buffer.byteLength,
-            floatLength = Float64Array ? floor(byteLength / FLOAT64_BYTES_PER_ELEMENT) : 0,
-            offset = floatLength * FLOAT64_BYTES_PER_ELEMENT,
-            result = new ArrayBuffer(byteLength);
-
-        if (floatLength) {
-          var view = new Float64Array(result, 0, floatLength);
-          view.set(new Float64Array(buffer, 0, floatLength));
-        }
-        if (byteLength != offset) {
-          view = new Uint8Array(result, offset);
-          view.set(new Uint8Array(buffer, offset));
-        }
-        return result;
-      };
-    }
-
-    /**
-     * Creates an array that is the composition of partially applied arguments,
-     * placeholders, and provided arguments into a single array of arguments.
-     *
-     * @private
-     * @param {Array|Object} args The provided arguments.
-     * @param {Array} partials The arguments to prepend to those provided.
-     * @param {Array} holders The `partials` placeholder indexes.
-     * @returns {Array} Returns the new array of composed arguments.
-     */
-    function composeArgs(args, partials, holders) {
-      var holdersLength = holders.length,
-          argsIndex = -1,
-          argsLength = nativeMax(args.length - holdersLength, 0),
-          leftIndex = -1,
-          leftLength = partials.length,
-          result = Array(argsLength + leftLength);
-
-      while (++leftIndex < leftLength) {
-        result[leftIndex] = partials[leftIndex];
-      }
-      while (++argsIndex < holdersLength) {
-        result[holders[argsIndex]] = args[argsIndex];
-      }
-      while (argsLength--) {
-        result[leftIndex++] = args[argsIndex++];
-      }
-      return result;
-    }
-
-    /**
-     * This function is like `composeArgs` except that the arguments composition
-     * is tailored for `_.partialRight`.
-     *
-     * @private
-     * @param {Array|Object} args The provided arguments.
-     * @param {Array} partials The arguments to append to those provided.
-     * @param {Array} holders The `partials` placeholder indexes.
-     * @returns {Array} Returns the new array of composed arguments.
-     */
-    function composeArgsRight(args, partials, holders) {
-      var holdersIndex = -1,
-          holdersLength = holders.length,
-          argsIndex = -1,
-          argsLength = nativeMax(args.length - holdersLength, 0),
-          rightIndex = -1,
-          rightLength = partials.length,
-          result = Array(argsLength + rightLength);
-
-      while (++argsIndex < argsLength) {
-        result[argsIndex] = args[argsIndex];
-      }
-      var pad = argsIndex;
-      while (++rightIndex < rightLength) {
-        result[pad + rightIndex] = partials[rightIndex];
-      }
-      while (++holdersIndex < holdersLength) {
-        result[pad + holders[holdersIndex]] = args[argsIndex++];
-      }
-      return result;
-    }
-
-    /**
-     * Creates a function that aggregates a collection, creating an accumulator
-     * object composed from the results of running each element in the collection
-     * through an iteratee.
-     *
-     * **Note:** This function is used to create `_.countBy`, `_.groupBy`, `_.indexBy`,
-     * and `_.partition`.
-     *
-     * @private
-     * @param {Function} setter The function to set keys and values of the accumulator object.
-     * @param {Function} [initializer] The function to initialize the accumulator object.
-     * @returns {Function} Returns the new aggregator function.
-     */
-    function createAggregator(setter, initializer) {
-      return function(collection, iteratee, thisArg) {
-        var result = initializer ? initializer() : {};
-        iteratee = getCallback(iteratee, thisArg, 3);
-
-        if (isArray(collection)) {
-          var index = -1,
-              length = collection.length;
-
-          while (++index < length) {
-            var value = collection[index];
-            setter(result, value, iteratee(value, index, collection), collection);
-          }
-        } else {
-          baseEach(collection, function(value, key, collection) {
-            setter(result, value, iteratee(value, key, collection), collection);
-          });
-        }
-        return result;
-      };
-    }
-
-    /**
-     * Creates a function that assigns properties of source object(s) to a given
-     * destination object.
-     *
-     * **Note:** This function is used to create `_.assign`, `_.defaults`, and `_.merge`.
-     *
-     * @private
-     * @param {Function} assigner The function to assign values.
-     * @returns {Function} Returns the new assigner function.
-     */
-    function createAssigner(assigner) {
-      return restParam(function(object, sources) {
-        var index = -1,
-            length = object == null ? 0 : sources.length,
-            customizer = length > 2 && sources[length - 2],
-            guard = length > 2 && sources[2],
-            thisArg = length > 1 && sources[length - 1];
-
-        if (typeof customizer == 'function') {
-          customizer = bindCallback(customizer, thisArg, 5);
-          length -= 2;
-        } else {
-          customizer = typeof thisArg == 'function' ? thisArg : null;
-          length -= (customizer ? 1 : 0);
-        }
-        if (guard && isIterateeCall(sources[0], sources[1], guard)) {
-          customizer = length < 3 ? null : customizer;
-          length = 1;
-        }
-        while (++index < length) {
-          var source = sources[index];
-          if (source) {
-            assigner(object, source, customizer);
-          }
-        }
-        return object;
-      });
-    }
-
-    /**
-     * Creates a `baseEach` or `baseEachRight` function.
-     *
-     * @private
-     * @param {Function} eachFunc The function to iterate over a collection.
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Function} Returns the new base function.
-     */
-    function createBaseEach(eachFunc, fromRight) {
-      return function(collection, iteratee) {
-        var length = collection ? getLength(collection) : 0;
-        if (!isLength(length)) {
-          return eachFunc(collection, iteratee);
-        }
-        var index = fromRight ? length : -1,
-            iterable = toObject(collection);
-
-        while ((fromRight ? index-- : ++index < length)) {
-          if (iteratee(iterable[index], index, iterable) === false) {
-            break;
-          }
-        }
-        return collection;
-      };
-    }
-
-    /**
-     * Creates a base function for `_.forIn` or `_.forInRight`.
-     *
-     * @private
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Function} Returns the new base function.
-     */
-    function createBaseFor(fromRight) {
-      return function(object, iteratee, keysFunc) {
-        var iterable = toObject(object),
-            props = keysFunc(object),
-            length = props.length,
-            index = fromRight ? length : -1;
-
-        while ((fromRight ? index-- : ++index < length)) {
-          var key = props[index];
-          if (iteratee(iterable[key], key, iterable) === false) {
-            break;
-          }
-        }
-        return object;
-      };
-    }
-
-    /**
-     * Creates a function that wraps `func` and invokes it with the `this`
-     * binding of `thisArg`.
-     *
-     * @private
-     * @param {Function} func The function to bind.
-     * @param {*} [thisArg] The `this` binding of `func`.
-     * @returns {Function} Returns the new bound function.
-     */
-    function createBindWrapper(func, thisArg) {
-      var Ctor = createCtorWrapper(func);
-
-      function wrapper() {
-        var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
-        return fn.apply(thisArg, arguments);
-      }
-      return wrapper;
-    }
-
-    /**
-     * Creates a `Set` cache object to optimize linear searches of large arrays.
-     *
-     * @private
-     * @param {Array} [values] The values to cache.
-     * @returns {null|Object} Returns the new cache object if `Set` is supported, else `null`.
-     */
-    var createCache = !(nativeCreate && Set) ? constant(null) : function(values) {
-      return new SetCache(values);
-    };
-
-    /**
-     * Creates a function that produces compound words out of the words in a
-     * given string.
-     *
-     * @private
-     * @param {Function} callback The function to combine each word.
-     * @returns {Function} Returns the new compounder function.
-     */
-    function createCompounder(callback) {
-      return function(string) {
-        var index = -1,
-            array = words(deburr(string)),
-            length = array.length,
-            result = '';
-
-        while (++index < length) {
-          result = callback(result, array[index], index);
-        }
-        return result;
-      };
-    }
-
-    /**
-     * Creates a function that produces an instance of `Ctor` regardless of
-     * whether it was invoked as part of a `new` expression or by `call` or `apply`.
-     *
-     * @private
-     * @param {Function} Ctor The constructor to wrap.
-     * @returns {Function} Returns the new wrapped function.
-     */
-    function createCtorWrapper(Ctor) {
-      return function() {
-        var thisBinding = baseCreate(Ctor.prototype),
-            result = Ctor.apply(thisBinding, arguments);
-
-        // Mimic the constructor's `return` behavior.
-        // See https://es5.github.io/#x13.2.2 for more details.
-        return isObject(result) ? result : thisBinding;
-      };
-    }
-
-    /**
-     * Creates a `_.curry` or `_.curryRight` function.
-     *
-     * @private
-     * @param {boolean} flag The curry bit flag.
-     * @returns {Function} Returns the new curry function.
-     */
-    function createCurry(flag) {
-      function curryFunc(func, arity, guard) {
-        if (guard && isIterateeCall(func, arity, guard)) {
-          arity = null;
-        }
-        var result = createWrapper(func, flag, null, null, null, null, null, arity);
-        result.placeholder = curryFunc.placeholder;
-        return result;
-      }
-      return curryFunc;
-    }
-
-    /**
-     * Creates a `_.max` or `_.min` function.
-     *
-     * @private
-     * @param {Function} arrayFunc The function to get the extremum value from an array.
-     * @param {boolean} [isMin] Specify returning the minimum, instead of the maximum,
-     *  extremum value.
-     * @returns {Function} Returns the new extremum function.
-     */
-    function createExtremum(arrayFunc, isMin) {
-      return function(collection, iteratee, thisArg) {
-        if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-          iteratee = null;
-        }
-        var func = getCallback(),
-            noIteratee = iteratee == null;
-
-        if (!(func === baseCallback && noIteratee)) {
-          noIteratee = false;
-          iteratee = func(iteratee, thisArg, 3);
-        }
-        if (noIteratee) {
-          var isArr = isArray(collection);
-          if (!isArr && isString(collection)) {
-            iteratee = charAtCallback;
-          } else {
-            return arrayFunc(isArr ? collection : toIterable(collection));
-          }
-        }
-        return extremumBy(collection, iteratee, isMin);
-      };
-    }
-
-    /**
-     * Creates a `_.find` or `_.findLast` function.
-     *
-     * @private
-     * @param {Function} eachFunc The function to iterate over a collection.
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Function} Returns the new find function.
-     */
-    function createFind(eachFunc, fromRight) {
-      return function(collection, predicate, thisArg) {
-        predicate = getCallback(predicate, thisArg, 3);
-        if (isArray(collection)) {
-          var index = baseFindIndex(collection, predicate, fromRight);
-          return index > -1 ? collection[index] : undefined;
-        }
-        return baseFind(collection, predicate, eachFunc);
-      }
-    }
-
-    /**
-     * Creates a `_.findIndex` or `_.findLastIndex` function.
-     *
-     * @private
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Function} Returns the new find function.
-     */
-    function createFindIndex(fromRight) {
-      return function(array, predicate, thisArg) {
-        if (!(array && array.length)) {
-          return -1;
-        }
-        predicate = getCallback(predicate, thisArg, 3);
-        return baseFindIndex(array, predicate, fromRight);
-      };
-    }
-
-    /**
-     * Creates a `_.findKey` or `_.findLastKey` function.
-     *
-     * @private
-     * @param {Function} objectFunc The function to iterate over an object.
-     * @returns {Function} Returns the new find function.
-     */
-    function createFindKey(objectFunc) {
-      return function(object, predicate, thisArg) {
-        predicate = getCallback(predicate, thisArg, 3);
-        return baseFind(object, predicate, objectFunc, true);
-      };
-    }
-
-    /**
-     * Creates a `_.flow` or `_.flowRight` function.
-     *
-     * @private
-     * @param {boolean} [fromRight] Specify iterating from right to left.
-     * @returns {Function} Returns the new flow function.
-     */
-    function createFlow(fromRight) {
-      return function() {
-        var length = arguments.length;
-        if (!length) {
-          return function() { return arguments[0]; };
-        }
-        var wrapper,
-            index = fromRight ? length : -1,
-            leftIndex = 0,
-            funcs = Array(length);
-
-        while ((fromRight ? index-- : ++index < length)) {
-          var func = funcs[leftIndex++] = arguments[index];
-          if (typeof func != 'function') {
-            throw new TypeError(FUNC_ERROR_TEXT);
-          }
-          var funcName = wrapper ? '' : getFuncName(func);
-          wrapper = funcName == 'wrapper' ? new LodashWrapper([]) : wrapper;
-        }
-        index = wrapper ? -1 : length;
-        while (++index < length) {
-          func = funcs[index];
-          funcName = getFuncName(func);
-
-          var data = funcName == 'wrapper' ? getData(func) : null;
-          if (data && isLaziable(data[0])) {
-            wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);
-          } else {
-            wrapper = (func.length == 1 && isLaziable(func)) ? wrapper[funcName]() : wrapper.thru(func);
-          }
-        }
-        return function() {
-          var args = arguments;
-          if (wrapper && args.length == 1 && isArray(args[0])) {
-            return wrapper.plant(args[0]).value();
-          }
-          var index = 0,
-              result = funcs[index].apply(this, args);
-
-          while (++index < length) {
-            result = funcs[index].call(this, result);
-          }
-          return result;
-        };
-      };
-    }
-
-    /**
-     * Creates a function for `_.forEach` or `_.forEachRight`.
-     *
-     * @private
-     * @param {Function} arrayFunc The function to iterate over an array.
-     * @param {Function} eachFunc The function to iterate over a collection.
-     * @returns {Function} Returns the new each function.
-     */
-    function createForEach(arrayFunc, eachFunc) {
-      return function(collection, iteratee, thisArg) {
-        return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
-          ? arrayFunc(collection, iteratee)
-          : eachFunc(collection, bindCallback(iteratee, thisArg, 3));
-      };
-    }
-
-    /**
-     * Creates a function for `_.forIn` or `_.forInRight`.
-     *
-     * @private
-     * @param {Function} objectFunc The function to iterate over an object.
-     * @returns {Function} Returns the new each function.
-     */
-    function createForIn(objectFunc) {
-      return function(object, iteratee, thisArg) {
-        if (typeof iteratee != 'function' || thisArg !== undefined) {
-          iteratee = bindCallback(iteratee, thisArg, 3);
-        }
-        return objectFunc(object, iteratee, keysIn);
-      };
-    }
-
-    /**
-     * Creates a function for `_.forOwn` or `_.forOwnRight`.
-     *
-     * @private
-     * @param {Function} objectFunc The function to iterate over an object.
-     * @returns {Function} Returns the new each function.
-     */
-    function createForOwn(objectFunc) {
-      return function(object, iteratee, thisArg) {
-        if (typeof iteratee != 'function' || thisArg !== undefined) {
-          iteratee = bindCallback(iteratee, thisArg, 3);
-        }
-        return objectFunc(object, iteratee);
-      };
-    }
-
-    /**
-     * Creates a function for `_.padLeft` or `_.padRight`.
-     *
-     * @private
-     * @param {boolean} [fromRight] Specify padding from the right.
-     * @returns {Function} Returns the new pad function.
-     */
-    function createPadDir(fromRight) {
-      return function(string, length, chars) {
-        string = baseToString(string);
-        return string && ((fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string));
-      };
-    }
-
-    /**
-     * Creates a `_.partial` or `_.partialRight` function.
-     *
-     * @private
-     * @param {boolean} flag The partial bit flag.
-     * @returns {Function} Returns the new partial function.
-     */
-    function createPartial(flag) {
-      var partialFunc = restParam(function(func, partials) {
-        var holders = replaceHolders(partials, partialFunc.placeholder);
-        return createWrapper(func, flag, null, partials, holders);
-      });
-      return partialFunc;
-    }
-
-    /**
-     * Creates a function for `_.reduce` or `_.reduceRight`.
-     *
-     * @private
-     * @param {Function} arrayFunc The function to iterate over an array.
-     * @param {Function} eachFunc The function to iterate over a collection.
-     * @returns {Function} Returns the new each function.
-     */
-    function createReduce(arrayFunc, eachFunc) {
-      return function(collection, iteratee, accumulator, thisArg) {
-        var initFromArray = arguments.length < 3;
-        return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
-          ? arrayFunc(collection, iteratee, accumulator, initFromArray)
-          : baseReduce(collection, getCallback(iteratee, thisArg, 4), accumulator, initFromArray, eachFunc);
-      };
-    }
-
-    /**
-     * Creates a function that wraps `func` and invokes it with optional `this`
-     * binding of, partial application, and currying.
-     *
-     * @private
-     * @param {Function|string} func The function or method name to reference.
-     * @param {number} bitmask The bitmask of flags. See `createWrapper` for more details.
-     * @param {*} [thisArg] The `this` binding of `func`.
-     * @param {Array} [partials] The arguments to prepend to those provided to the new function.
-     * @param {Array} [holders] The `partials` placeholder indexes.
-     * @param {Array} [partialsRight] The arguments to append to those provided to the new function.
-     * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.
-     * @param {Array} [argPos] The argument positions of the new function.
-     * @param {number} [ary] The arity cap of `func`.
-     * @param {number} [arity] The arity of `func`.
-     * @returns {Function} Returns the new wrapped function.
-     */
-    function createHybridWrapper(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {
-      var isAry = bitmask & ARY_FLAG,
-          isBind = bitmask & BIND_FLAG,
-          isBindKey = bitmask & BIND_KEY_FLAG,
-          isCurry = bitmask & CURRY_FLAG,
-          isCurryBound = bitmask & CURRY_BOUND_FLAG,
-          isCurryRight = bitmask & CURRY_RIGHT_FLAG;
-
-      var Ctor = !isBindKey && createCtorWrapper(func),
-          key = func;
-
-      function wrapper() {
-        // Avoid `arguments` object use disqualifying optimizations by
-        // converting it to an array before providing it to other functions.
-        var length = arguments.length,
-            index = length,
-            args = Array(length);
-
-        while (index--) {
-          args[index] = arguments[index];
-        }
-        if (partials) {
-          args = composeArgs(args, partials, holders);
-        }
-        if (partialsRight) {
-          args = composeArgsRight(args, partialsRight, holdersRight);
-        }
-        if (isCurry || isCurryRight) {
-          var placeholder = wrapper.placeholder,
-              argsHolders = replaceHolders(args, placeholder);
-
-          length -= argsHolders.length;
-          if (length < arity) {
-            var newArgPos = argPos ? arrayCopy(argPos) : null,
-                newArity = nativeMax(arity - length, 0),
-                newsHolders = isCurry ? argsHolders : null,
-                newHoldersRight = isCurry ? null : argsHolders,
-                newPartials = isCurry ? args : null,
-                newPartialsRight = isCurry ? null : args;
-
-            bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG);
-            bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG);
-
-            if (!isCurryBound) {
-              bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG);
-            }
-            var newData = [func, bitmask, thisArg, newPartials, newsHolders, newPartialsRight, newHoldersRight, newArgPos, ary, newArity],
-                result = createHybridWrapper.apply(undefined, newData);
-
-            if (isLaziable(func)) {
-              setData(result, newData);
-            }
-            result.placeholder = placeholder;
-            return result;
-          }
-        }
-        var thisBinding = isBind ? thisArg : this;
-        if (isBindKey) {
-          func = thisBinding[key];
-        }
-        if (argPos) {
-          args = reorder(args, argPos);
-        }
-        if (isAry && ary < args.length) {
-          args.length = ary;
-        }
-        var fn = (this && this !== root && this instanceof wrapper) ? (Ctor || createCtorWrapper(func)) : func;
-        return fn.apply(thisBinding, args);
-      }
-      return wrapper;
-    }
-
-    /**
-     * Creates the padding required for `string` based on the given `length`.
-     * The `chars` string is truncated if the number of characters exceeds `length`.
-     *
-     * @private
-     * @param {string} string The string to create padding for.
-     * @param {number} [length=0] The padding length.
-     * @param {string} [chars=' '] The string used as padding.
-     * @returns {string} Returns the pad for `string`.
-     */
-    function createPadding(string, length, chars) {
-      var strLength = string.length;
-      length = +length;
-
-      if (strLength >= length || !nativeIsFinite(length)) {
-        return '';
-      }
-      var padLength = length - strLength;
-      chars = chars == null ? ' ' : (chars + '');
-      return repeat(chars, ceil(padLength / chars.length)).slice(0, padLength);
-    }
-
-    /**
-     * Creates a function that wraps `func` and invokes it with the optional `this`
-     * binding of `thisArg` and the `partials` prepended to those provided to
-     * the wrapper.
-     *
-     * @private
-     * @param {Function} func The function to partially apply arguments to.
-     * @param {number} bitmask The bitmask of flags. See `createWrapper` for more details.
-     * @param {*} thisArg The `this` binding of `func`.
-     * @param {Array} partials The arguments to prepend to those provided to the new function.
-     * @returns {Function} Returns the new bound function.
-     */
-    function createPartialWrapper(func, bitmask, thisArg, partials) {
-      var isBind = bitmask & BIND_FLAG,
-          Ctor = createCtorWrapper(func);
-
-      function wrapper() {
-        // Avoid `arguments` object use disqualifying optimizations by
-        // converting it to an array before providing it `func`.
-        var argsIndex = -1,
-            argsLength = arguments.length,
-            leftIndex = -1,
-            leftLength = partials.length,
-            args = Array(argsLength + leftLength);
-
-        while (++leftIndex < leftLength) {
-          args[leftIndex] = partials[leftIndex];
-        }
-        while (argsLength--) {
-          args[leftIndex++] = arguments[++argsIndex];
-        }
-        var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
-        return fn.apply(isBind ? thisArg : this, args);
-      }
-      return wrapper;
-    }
-
-    /**
-     * Creates a `_.sortedIndex` or `_.sortedLastIndex` function.
-     *
-     * @private
-     * @param {boolean} [retHighest] Specify returning the highest qualified index.
-     * @returns {Function} Returns the new index function.
-     */
-    function createSortedIndex(retHighest) {
-      return function(array, value, iteratee, thisArg) {
-        var func = getCallback(iteratee);
-        return (func === baseCallback && iteratee == null)
-          ? binaryIndex(array, value, retHighest)
-          : binaryIndexBy(array, value, func(iteratee, thisArg, 1), retHighest);
-      };
-    }
-
-    /**
-     * Creates a function that either curries or invokes `func` with optional
-     * `this` binding and partially applied arguments.
-     *
-     * @private
-     * @param {Function|string} func The function or method name to reference.
-     * @param {number} bitmask The bitmask of flags.
-     *  The bitmask may be composed of the following flags:
-     *     1 - `_.bind`
-     *     2 - `_.bindKey`
-     *     4 - `_.curry` or `_.curryRight` of a bound function
-     *     8 - `_.curry`
-     *    16 - `_.curryRight`
-     *    32 - `_.partial`
-     *    64 - `_.partialRight`
-     *   128 - `_.rearg`
-     *   256 - `_.ary`
-     * @param {*} [thisArg] The `this` binding of `func`.
-     * @param {Array} [partials] The arguments to be partially applied.
-     * @param {Array} [holders] The `partials` placeholder indexes.
-     * @param {Array} [argPos] The argument positions of the new function.
-     * @param {number} [ary] The arity cap of `func`.
-     * @param {number} [arity] The arity of `func`.
-     * @returns {Function} Returns the new wrapped function.
-     */
-    function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {
-      var isBindKey = bitmask & BIND_KEY_FLAG;
-      if (!isBindKey && typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      var length = partials ? partials.length : 0;
-      if (!length) {
-        bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG);
-        partials = holders = null;
-      }
-      length -= (holders ? holders.length : 0);
-      if (bitmask & PARTIAL_RIGHT_FLAG) {
-        var partialsRight = partials,
-            holdersRight = holders;
-
-        partials = holders = null;
-      }
-      var data = isBindKey ? null : getData(func),
-          newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity];
-
-      if (data) {
-        mergeData(newData, data);
-        bitmask = newData[1];
-        arity = newData[9];
-      }
-      newData[9] = arity == null
-        ? (isBindKey ? 0 : func.length)
-        : (nativeMax(arity - length, 0) || 0);
-
-      if (bitmask == BIND_FLAG) {
-        var result = createBindWrapper(newData[0], newData[2]);
-      } else if ((bitmask == PARTIAL_FLAG || bitmask == (BIND_FLAG | PARTIAL_FLAG)) && !newData[4].length) {
-        result = createPartialWrapper.apply(undefined, newData);
-      } else {
-        result = createHybridWrapper.apply(undefined, newData);
-      }
-      var setter = data ? baseSetData : setData;
-      return setter(result, newData);
-    }
-
-    /**
-     * A specialized version of `baseIsEqualDeep` for arrays with support for
-     * partial deep comparisons.
-     *
-     * @private
-     * @param {Array} array The array to compare.
-     * @param {Array} other The other array to compare.
-     * @param {Function} equalFunc The function to determine equivalents of values.
-     * @param {Function} [customizer] The function to customize comparing arrays.
-     * @param {boolean} [isLoose] Specify performing partial comparisons.
-     * @param {Array} [stackA] Tracks traversed `value` objects.
-     * @param {Array} [stackB] Tracks traversed `other` objects.
-     * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
-     */
-    function equalArrays(array, other, equalFunc, customizer, isLoose, stackA, stackB) {
-      var index = -1,
-          arrLength = array.length,
-          othLength = other.length,
-          result = true;
-
-      if (arrLength != othLength && !(isLoose && othLength > arrLength)) {
-        return false;
-      }
-      // Deep compare the contents, ignoring non-numeric properties.
-      while (result && ++index < arrLength) {
-        var arrValue = array[index],
-            othValue = other[index];
-
-        result = undefined;
-        if (customizer) {
-          result = isLoose
-            ? customizer(othValue, arrValue, index)
-            : customizer(arrValue, othValue, index);
-        }
-        if (result === undefined) {
-          // Recursively compare arrays (susceptible to call stack limits).
-          if (isLoose) {
-            var othIndex = othLength;
-            while (othIndex--) {
-              othValue = other[othIndex];
-              result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
-              if (result) {
-                break;
-              }
-            }
-          } else {
-            result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
-          }
-        }
-      }
-      return !!result;
-    }
-
-    /**
-     * A specialized version of `baseIsEqualDeep` for comparing objects of
-     * the same `toStringTag`.
-     *
-     * **Note:** This function only supports comparing values with tags of
-     * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
-     *
-     * @private
-     * @param {Object} value The object to compare.
-     * @param {Object} other The other object to compare.
-     * @param {string} tag The `toStringTag` of the objects to compare.
-     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-     */
-    function equalByTag(object, other, tag) {
-      switch (tag) {
-        case boolTag:
-        case dateTag:
-          // Coerce dates and booleans to numbers, dates to milliseconds and booleans
-          // to `1` or `0` treating invalid dates coerced to `NaN` as not equal.
-          return +object == +other;
-
-        case errorTag:
-          return object.name == other.name && object.message == other.message;
-
-        case numberTag:
-          // Treat `NaN` vs. `NaN` as equal.
-          return (object != +object)
-            ? other != +other
-            // But, treat `-0` vs. `+0` as not equal.
-            : (object == 0 ? ((1 / object) == (1 / other)) : object == +other);
-
-        case regexpTag:
-        case stringTag:
-          // Coerce regexes to strings and treat strings primitives and string
-          // objects as equal. See https://es5.github.io/#x15.10.6.4 for more details.
-          return object == (other + '');
-      }
-      return false;
-    }
-
-    /**
-     * A specialized version of `baseIsEqualDeep` for objects with support for
-     * partial deep comparisons.
-     *
-     * @private
-     * @param {Object} object The object to compare.
-     * @param {Object} other The other object to compare.
-     * @param {Function} equalFunc The function to determine equivalents of values.
-     * @param {Function} [customizer] The function to customize comparing values.
-     * @param {boolean} [isLoose] Specify performing partial comparisons.
-     * @param {Array} [stackA] Tracks traversed `value` objects.
-     * @param {Array} [stackB] Tracks traversed `other` objects.
-     * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-     */
-    function equalObjects(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-      var objProps = keys(object),
-          objLength = objProps.length,
-          othProps = keys(other),
-          othLength = othProps.length;
-
-      if (objLength != othLength && !isLoose) {
-        return false;
-      }
-      var skipCtor = isLoose,
-          index = -1;
-
-      while (++index < objLength) {
-        var key = objProps[index],
-            result = isLoose ? key in other : hasOwnProperty.call(other, key);
-
-        if (result) {
-          var objValue = object[key],
-              othValue = other[key];
-
-          result = undefined;
-          if (customizer) {
-            result = isLoose
-              ? customizer(othValue, objValue, key)
-              : customizer(objValue, othValue, key);
-          }
-          if (result === undefined) {
-            // Recursively compare objects (susceptible to call stack limits).
-            result = (objValue && objValue === othValue) || equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB);
-          }
-        }
-        if (!result) {
-          return false;
-        }
-        skipCtor || (skipCtor = key == 'constructor');
-      }
-      if (!skipCtor) {
-        var objCtor = object.constructor,
-            othCtor = other.constructor;
-
-        // Non `Object` object instances with different constructors are not equal.
-        if (objCtor != othCtor &&
-            ('constructor' in object && 'constructor' in other) &&
-            !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
-              typeof othCtor == 'function' && othCtor instanceof othCtor)) {
-          return false;
-        }
-      }
-      return true;
-    }
-
-    /**
-     * Gets the extremum value of `collection` invoking `iteratee` for each value
-     * in `collection` to generate the criterion by which the value is ranked.
-     * The `iteratee` is invoked with three arguments: (value, index, collection).
-     *
-     * @private
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} iteratee The function invoked per iteration.
-     * @param {boolean} [isMin] Specify returning the minimum, instead of the
-     *  maximum, extremum value.
-     * @returns {*} Returns the extremum value.
-     */
-    function extremumBy(collection, iteratee, isMin) {
-      var exValue = isMin ? POSITIVE_INFINITY : NEGATIVE_INFINITY,
-          computed = exValue,
-          result = computed;
-
-      baseEach(collection, function(value, index, collection) {
-        var current = iteratee(value, index, collection);
-        if ((isMin ? (current < computed) : (current > computed)) ||
-            (current === exValue && current === result)) {
-          computed = current;
-          result = value;
-        }
-      });
-      return result;
-    }
-
-    /**
-     * Gets the appropriate "callback" function. If the `_.callback` method is
-     * customized this function returns the custom method, otherwise it returns
-     * the `baseCallback` function. If arguments are provided the chosen function
-     * is invoked with them and its result is returned.
-     *
-     * @private
-     * @returns {Function} Returns the chosen function or its result.
-     */
-    function getCallback(func, thisArg, argCount) {
-      var result = lodash.callback || callback;
-      result = result === callback ? baseCallback : result;
-      return argCount ? result(func, thisArg, argCount) : result;
-    }
-
-    /**
-     * Gets metadata for `func`.
-     *
-     * @private
-     * @param {Function} func The function to query.
-     * @returns {*} Returns the metadata for `func`.
-     */
-    var getData = !metaMap ? noop : function(func) {
-      return metaMap.get(func);
-    };
-
-    /**
-     * Gets the name of `func`.
-     *
-     * @private
-     * @param {Function} func The function to query.
-     * @returns {string} Returns the function name.
-     */
-    var getFuncName = (function() {
-      if (!support.funcNames) {
-        return constant('');
-      }
-      if (constant.name == 'constant') {
-        return baseProperty('name');
-      }
-      return function(func) {
-        var result = func.name,
-            array = realNames[result],
-            length = array ? array.length : 0;
-
-        while (length--) {
-          var data = array[length],
-              otherFunc = data.func;
-
-          if (otherFunc == null || otherFunc == func) {
-            return data.name;
-          }
-        }
-        return result;
-      };
-    }());
-
-    /**
-     * Gets the appropriate "indexOf" function. If the `_.indexOf` method is
-     * customized this function returns the custom method, otherwise it returns
-     * the `baseIndexOf` function. If arguments are provided the chosen function
-     * is invoked with them and its result is returned.
-     *
-     * @private
-     * @returns {Function|number} Returns the chosen function or its result.
-     */
-    function getIndexOf(collection, target, fromIndex) {
-      var result = lodash.indexOf || indexOf;
-      result = result === indexOf ? baseIndexOf : result;
-      return collection ? result(collection, target, fromIndex) : result;
-    }
-
-    /**
-     * Gets the "length" property value of `object`.
-     *
-     * **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
-     * in Safari on iOS 8.1 ARM64.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @returns {*} Returns the "length" value.
-     */
-    var getLength = baseProperty('length');
-
-    /**
-     * Creates an array of the own symbols of `object`.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of symbols.
-     */
-    var getSymbols = !getOwnPropertySymbols ? constant([]) : function(object) {
-      return getOwnPropertySymbols(toObject(object));
-    };
-
-    /**
-     * Gets the view, applying any `transforms` to the `start` and `end` positions.
-     *
-     * @private
-     * @param {number} start The start of the view.
-     * @param {number} end The end of the view.
-     * @param {Array} [transforms] The transformations to apply to the view.
-     * @returns {Object} Returns an object containing the `start` and `end`
-     *  positions of the view.
-     */
-    function getView(start, end, transforms) {
-      var index = -1,
-          length = transforms ? transforms.length : 0;
-
-      while (++index < length) {
-        var data = transforms[index],
-            size = data.size;
-
-        switch (data.type) {
-          case 'drop':      start += size; break;
-          case 'dropRight': end -= size; break;
-          case 'take':      end = nativeMin(end, start + size); break;
-          case 'takeRight': start = nativeMax(start, end - size); break;
-        }
-      }
-      return { 'start': start, 'end': end };
-    }
-
-    /**
-     * Initializes an array clone.
-     *
-     * @private
-     * @param {Array} array The array to clone.
-     * @returns {Array} Returns the initialized clone.
-     */
-    function initCloneArray(array) {
-      var length = array.length,
-          result = new array.constructor(length);
-
-      // Add array properties assigned by `RegExp#exec`.
-      if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
-        result.index = array.index;
-        result.input = array.input;
-      }
-      return result;
-    }
-
-    /**
-     * Initializes an object clone.
-     *
-     * @private
-     * @param {Object} object The object to clone.
-     * @returns {Object} Returns the initialized clone.
-     */
-    function initCloneObject(object) {
-      var Ctor = object.constructor;
-      if (!(typeof Ctor == 'function' && Ctor instanceof Ctor)) {
-        Ctor = Object;
-      }
-      return new Ctor;
-    }
-
-    /**
-     * Initializes an object clone based on its `toStringTag`.
-     *
-     * **Note:** This function only supports cloning values with tags of
-     * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
-     *
-     * @private
-     * @param {Object} object The object to clone.
-     * @param {string} tag The `toStringTag` of the object to clone.
-     * @param {boolean} [isDeep] Specify a deep clone.
-     * @returns {Object} Returns the initialized clone.
-     */
-    function initCloneByTag(object, tag, isDeep) {
-      var Ctor = object.constructor;
-      switch (tag) {
-        case arrayBufferTag:
-          return bufferClone(object);
-
-        case boolTag:
-        case dateTag:
-          return new Ctor(+object);
-
-        case float32Tag: case float64Tag:
-        case int8Tag: case int16Tag: case int32Tag:
-        case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
-          var buffer = object.buffer;
-          return new Ctor(isDeep ? bufferClone(buffer) : buffer, object.byteOffset, object.length);
-
-        case numberTag:
-        case stringTag:
-          return new Ctor(object);
-
-        case regexpTag:
-          var result = new Ctor(object.source, reFlags.exec(object));
-          result.lastIndex = object.lastIndex;
-      }
-      return result;
-    }
-
-    /**
-     * Invokes the method at `path` on `object`.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @param {Array|string} path The path of the method to invoke.
-     * @param {Array} args The arguments to invoke the method with.
-     * @returns {*} Returns the result of the invoked method.
-     */
-    function invokePath(object, path, args) {
-      if (object != null && !isKey(path, object)) {
-        path = toPath(path);
-        object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-        path = last(path);
-      }
-      var func = object == null ? object : object[path];
-      return func == null ? undefined : func.apply(object, args);
-    }
-
-    /**
-     * Checks if `value` is a valid array-like index.
-     *
-     * @private
-     * @param {*} value The value to check.
-     * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
-     * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
-     */
-    function isIndex(value, length) {
-      value = +value;
-      length = length == null ? MAX_SAFE_INTEGER : length;
-      return value > -1 && value % 1 == 0 && value < length;
-    }
-
-    /**
-     * Checks if the provided arguments are from an iteratee call.
-     *
-     * @private
-     * @param {*} value The potential iteratee value argument.
-     * @param {*} index The potential iteratee index or key argument.
-     * @param {*} object The potential iteratee object argument.
-     * @returns {boolean} Returns `true` if the arguments are from an iteratee call, else `false`.
-     */
-    function isIterateeCall(value, index, object) {
-      if (!isObject(object)) {
-        return false;
-      }
-      var type = typeof index;
-      if (type == 'number') {
-        var length = getLength(object),
-            prereq = isLength(length) && isIndex(index, length);
-      } else {
-        prereq = type == 'string' && index in object;
-      }
-      if (prereq) {
-        var other = object[index];
-        return value === value ? (value === other) : (other !== other);
-      }
-      return false;
-    }
-
-    /**
-     * Checks if `value` is a property name and not a property path.
-     *
-     * @private
-     * @param {*} value The value to check.
-     * @param {Object} [object] The object to query keys on.
-     * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
-     */
-    function isKey(value, object) {
-      var type = typeof value;
-      if ((type == 'string' && reIsPlainProp.test(value)) || type == 'number') {
-        return true;
-      }
-      if (isArray(value)) {
-        return false;
-      }
-      var result = !reIsDeepProp.test(value);
-      return result || (object != null && value in toObject(object));
-    }
-
-    /**
-     * Checks if `func` has a lazy counterpart.
-     *
-     * @private
-     * @param {Function} func The function to check.
-     * @returns {boolean} Returns `true` if `func` has a lazy counterpart, else `false`.
-     */
-    function isLaziable(func) {
-      var funcName = getFuncName(func);
-      return !!funcName && func === lodash[funcName] && funcName in LazyWrapper.prototype;
-    }
-
-    /**
-     * Checks if `value` is a valid array-like length.
-     *
-     * **Note:** This function is based on [`ToLength`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength).
-     *
-     * @private
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
-     */
-    function isLength(value) {
-      return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
-    }
-
-    /**
-     * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
-     *
-     * @private
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` if suitable for strict
-     *  equality comparisons, else `false`.
-     */
-    function isStrictComparable(value) {
-      return value === value && (value === 0 ? ((1 / value) > 0) : !isObject(value));
-    }
-
-    /**
-     * Merges the function metadata of `source` into `data`.
-     *
-     * Merging metadata reduces the number of wrappers required to invoke a function.
-     * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`
-     * may be applied regardless of execution order. Methods like `_.ary` and `_.rearg`
-     * augment function arguments, making the order in which they are executed important,
-     * preventing the merging of metadata. However, we make an exception for a safe
-     * common case where curried functions have `_.ary` and or `_.rearg` applied.
-     *
-     * @private
-     * @param {Array} data The destination metadata.
-     * @param {Array} source The source metadata.
-     * @returns {Array} Returns `data`.
-     */
-    function mergeData(data, source) {
-      var bitmask = data[1],
-          srcBitmask = source[1],
-          newBitmask = bitmask | srcBitmask,
-          isCommon = newBitmask < ARY_FLAG;
-
-      var isCombo =
-        (srcBitmask == ARY_FLAG && bitmask == CURRY_FLAG) ||
-        (srcBitmask == ARY_FLAG && bitmask == REARG_FLAG && data[7].length <= source[8]) ||
-        (srcBitmask == (ARY_FLAG | REARG_FLAG) && bitmask == CURRY_FLAG);
-
-      // Exit early if metadata can't be merged.
-      if (!(isCommon || isCombo)) {
-        return data;
-      }
-      // Use source `thisArg` if available.
-      if (srcBitmask & BIND_FLAG) {
-        data[2] = source[2];
-        // Set when currying a bound function.
-        newBitmask |= (bitmask & BIND_FLAG) ? 0 : CURRY_BOUND_FLAG;
-      }
-      // Compose partial arguments.
-      var value = source[3];
-      if (value) {
-        var partials = data[3];
-        data[3] = partials ? composeArgs(partials, value, source[4]) : arrayCopy(value);
-        data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : arrayCopy(source[4]);
-      }
-      // Compose partial right arguments.
-      value = source[5];
-      if (value) {
-        partials = data[5];
-        data[5] = partials ? composeArgsRight(partials, value, source[6]) : arrayCopy(value);
-        data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : arrayCopy(source[6]);
-      }
-      // Use source `argPos` if available.
-      value = source[7];
-      if (value) {
-        data[7] = arrayCopy(value);
-      }
-      // Use source `ary` if it's smaller.
-      if (srcBitmask & ARY_FLAG) {
-        data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
-      }
-      // Use source `arity` if one is not provided.
-      if (data[9] == null) {
-        data[9] = source[9];
-      }
-      // Use source `func` and merge bitmasks.
-      data[0] = source[0];
-      data[1] = newBitmask;
-
-      return data;
-    }
-
-    /**
-     * A specialized version of `_.pick` that picks `object` properties specified
-     * by `props`.
-     *
-     * @private
-     * @param {Object} object The source object.
-     * @param {string[]} props The property names to pick.
-     * @returns {Object} Returns the new object.
-     */
-    function pickByArray(object, props) {
-      object = toObject(object);
-
-      var index = -1,
-          length = props.length,
-          result = {};
-
-      while (++index < length) {
-        var key = props[index];
-        if (key in object) {
-          result[key] = object[key];
-        }
-      }
-      return result;
-    }
-
-    /**
-     * A specialized version of `_.pick` that picks `object` properties `predicate`
-     * returns truthy for.
-     *
-     * @private
-     * @param {Object} object The source object.
-     * @param {Function} predicate The function invoked per iteration.
-     * @returns {Object} Returns the new object.
-     */
-    function pickByCallback(object, predicate) {
-      var result = {};
-      baseForIn(object, function(value, key, object) {
-        if (predicate(value, key, object)) {
-          result[key] = value;
-        }
-      });
-      return result;
-    }
-
-    /**
-     * Reorder `array` according to the specified indexes where the element at
-     * the first index is assigned as the first element, the element at
-     * the second index is assigned as the second element, and so on.
-     *
-     * @private
-     * @param {Array} array The array to reorder.
-     * @param {Array} indexes The arranged array indexes.
-     * @returns {Array} Returns `array`.
-     */
-    function reorder(array, indexes) {
-      var arrLength = array.length,
-          length = nativeMin(indexes.length, arrLength),
-          oldArray = arrayCopy(array);
-
-      while (length--) {
-        var index = indexes[length];
-        array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
-      }
-      return array;
-    }
-
-    /**
-     * Sets metadata for `func`.
-     *
-     * **Note:** If this function becomes hot, i.e. is invoked a lot in a short
-     * period of time, it will trip its breaker and transition to an identity function
-     * to avoid garbage collection pauses in V8. See [V8 issue 2070](https://code.google.com/p/v8/issues/detail?id=2070)
-     * for more details.
-     *
-     * @private
-     * @param {Function} func The function to associate metadata with.
-     * @param {*} data The metadata.
-     * @returns {Function} Returns `func`.
-     */
-    var setData = (function() {
-      var count = 0,
-          lastCalled = 0;
-
-      return function(key, value) {
-        var stamp = now(),
-            remaining = HOT_SPAN - (stamp - lastCalled);
-
-        lastCalled = stamp;
-        if (remaining > 0) {
-          if (++count >= HOT_COUNT) {
-            return key;
-          }
-        } else {
-          count = 0;
-        }
-        return baseSetData(key, value);
-      };
-    }());
-
-    /**
-     * A fallback implementation of `_.isPlainObject` which checks if `value`
-     * is an object created by the `Object` constructor or has a `[[Prototype]]`
-     * of `null`.
-     *
-     * @private
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
-     */
-    function shimIsPlainObject(value) {
-      var Ctor,
-          support = lodash.support;
-
-      // Exit early for non `Object` objects.
-      if (!(isObjectLike(value) && objToString.call(value) == objectTag) ||
-          (!hasOwnProperty.call(value, 'constructor') &&
-            (Ctor = value.constructor, typeof Ctor == 'function' && !(Ctor instanceof Ctor)))) {
-        return false;
-      }
-      // IE < 9 iterates inherited properties before own properties. If the first
-      // iterated property is an object's own property then there are no inherited
-      // enumerable properties.
-      var result;
-      // In most environments an object's own properties are iterated before
-      // its inherited properties. If the last iterated property is an object's
-      // own property then there are no inherited enumerable properties.
-      baseForIn(value, function(subValue, key) {
-        result = key;
-      });
-      return result === undefined || hasOwnProperty.call(value, result);
-    }
-
-    /**
-     * A fallback implementation of `Object.keys` which creates an array of the
-     * own enumerable property names of `object`.
-     *
-     * @private
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of property names.
-     */
-    function shimKeys(object) {
-      var props = keysIn(object),
-          propsLength = props.length,
-          length = propsLength && object.length,
-          support = lodash.support;
-
-      var allowIndexes = length && isLength(length) &&
-        (isArray(object) || (support.nonEnumArgs && isArguments(object)));
-
-      var index = -1,
-          result = [];
-
-      while (++index < propsLength) {
-        var key = props[index];
-        if ((allowIndexes && isIndex(key, length)) || hasOwnProperty.call(object, key)) {
-          result.push(key);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Converts `value` to an array-like object if it is not one.
-     *
-     * @private
-     * @param {*} value The value to process.
-     * @returns {Array|Object} Returns the array-like object.
-     */
-    function toIterable(value) {
-      if (value == null) {
-        return [];
-      }
-      if (!isLength(getLength(value))) {
-        return values(value);
-      }
-      return isObject(value) ? value : Object(value);
-    }
-
-    /**
-     * Converts `value` to an object if it is not one.
-     *
-     * @private
-     * @param {*} value The value to process.
-     * @returns {Object} Returns the object.
-     */
-    function toObject(value) {
-      return isObject(value) ? value : Object(value);
-    }
-
-    /**
-     * Converts `value` to property path array if it is not one.
-     *
-     * @private
-     * @param {*} value The value to process.
-     * @returns {Array} Returns the property path array.
-     */
-    function toPath(value) {
-      if (isArray(value)) {
-        return value;
-      }
-      var result = [];
-      baseToString(value).replace(rePropName, function(match, number, quote, string) {
-        result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
-      });
-      return result;
-    }
-
-    /**
-     * Creates a clone of `wrapper`.
-     *
-     * @private
-     * @param {Object} wrapper The wrapper to clone.
-     * @returns {Object} Returns the cloned wrapper.
-     */
-    function wrapperClone(wrapper) {
-      return wrapper instanceof LazyWrapper
-        ? wrapper.clone()
-        : new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__, arrayCopy(wrapper.__actions__));
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates an array of elements split into groups the length of `size`.
-     * If `collection` can't be split evenly, the final chunk will be the remaining
-     * elements.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to process.
-     * @param {number} [size=1] The length of each chunk.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the new array containing chunks.
-     * @example
-     *
-     * _.chunk(['a', 'b', 'c', 'd'], 2);
-     * // => [['a', 'b'], ['c', 'd']]
-     *
-     * _.chunk(['a', 'b', 'c', 'd'], 3);
-     * // => [['a', 'b', 'c'], ['d']]
-     */
-    function chunk(array, size, guard) {
-      if (guard ? isIterateeCall(array, size, guard) : size == null) {
-        size = 1;
-      } else {
-        size = nativeMax(+size || 1, 1);
-      }
-      var index = 0,
-          length = array ? array.length : 0,
-          resIndex = -1,
-          result = Array(ceil(length / size));
-
-      while (index < length) {
-        result[++resIndex] = baseSlice(array, index, (index += size));
-      }
-      return result;
-    }
-
-    /**
-     * Creates an array with all falsey values removed. The values `false`, `null`,
-     * `0`, `""`, `undefined`, and `NaN` are falsey.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to compact.
-     * @returns {Array} Returns the new array of filtered values.
-     * @example
-     *
-     * _.compact([0, 1, false, 2, '', 3]);
-     * // => [1, 2, 3]
-     */
-    function compact(array) {
-      var index = -1,
-          length = array ? array.length : 0,
-          resIndex = -1,
-          result = [];
-
-      while (++index < length) {
-        var value = array[index];
-        if (value) {
-          result[++resIndex] = value;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Creates an array excluding all values of the provided arrays using
-     * `SameValueZero` for equality comparisons.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to inspect.
-     * @param {...Array} [values] The arrays of values to exclude.
-     * @returns {Array} Returns the new array of filtered values.
-     * @example
-     *
-     * _.difference([1, 2, 3], [4, 2]);
-     * // => [1, 3]
-     */
-    var difference = restParam(function(array, values) {
-      return (isArray(array) || isArguments(array))
-        ? baseDifference(array, baseFlatten(values, false, true))
-        : [];
-    });
-
-    /**
-     * Creates a slice of `array` with `n` elements dropped from the beginning.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {number} [n=1] The number of elements to drop.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.drop([1, 2, 3]);
-     * // => [2, 3]
-     *
-     * _.drop([1, 2, 3], 2);
-     * // => [3]
-     *
-     * _.drop([1, 2, 3], 5);
-     * // => []
-     *
-     * _.drop([1, 2, 3], 0);
-     * // => [1, 2, 3]
-     */
-    function drop(array, n, guard) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (guard ? isIterateeCall(array, n, guard) : n == null) {
-        n = 1;
-      }
-      return baseSlice(array, n < 0 ? 0 : n);
-    }
-
-    /**
-     * Creates a slice of `array` with `n` elements dropped from the end.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {number} [n=1] The number of elements to drop.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.dropRight([1, 2, 3]);
-     * // => [1, 2]
-     *
-     * _.dropRight([1, 2, 3], 2);
-     * // => [1]
-     *
-     * _.dropRight([1, 2, 3], 5);
-     * // => []
-     *
-     * _.dropRight([1, 2, 3], 0);
-     * // => [1, 2, 3]
-     */
-    function dropRight(array, n, guard) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (guard ? isIterateeCall(array, n, guard) : n == null) {
-        n = 1;
-      }
-      n = length - (+n || 0);
-      return baseSlice(array, 0, n < 0 ? 0 : n);
-    }
-
-    /**
-     * Creates a slice of `array` excluding elements dropped from the end.
-     * Elements are dropped until `predicate` returns falsey. The predicate is
-     * bound to `thisArg` and invoked with three arguments: (value, index, array).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that match the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.dropRightWhile([1, 2, 3], function(n) {
-     *   return n > 1;
-     * });
-     * // => [1]
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': true },
-     *   { 'user': 'fred',    'active': false },
-     *   { 'user': 'pebbles', 'active': false }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.dropRightWhile(users, { 'user': 'pebbles', 'active': false }), 'user');
-     * // => ['barney', 'fred']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.dropRightWhile(users, 'active', false), 'user');
-     * // => ['barney']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.dropRightWhile(users, 'active'), 'user');
-     * // => ['barney', 'fred', 'pebbles']
-     */
-    function dropRightWhile(array, predicate, thisArg) {
-      return (array && array.length)
-        ? baseWhile(array, getCallback(predicate, thisArg, 3), true, true)
-        : [];
-    }
-
-    /**
-     * Creates a slice of `array` excluding elements dropped from the beginning.
-     * Elements are dropped until `predicate` returns falsey. The predicate is
-     * bound to `thisArg` and invoked with three arguments: (value, index, array).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.dropWhile([1, 2, 3], function(n) {
-     *   return n < 3;
-     * });
-     * // => [3]
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': false },
-     *   { 'user': 'fred',    'active': false },
-     *   { 'user': 'pebbles', 'active': true }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.dropWhile(users, { 'user': 'barney', 'active': false }), 'user');
-     * // => ['fred', 'pebbles']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.dropWhile(users, 'active', false), 'user');
-     * // => ['pebbles']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.dropWhile(users, 'active'), 'user');
-     * // => ['barney', 'fred', 'pebbles']
-     */
-    function dropWhile(array, predicate, thisArg) {
-      return (array && array.length)
-        ? baseWhile(array, getCallback(predicate, thisArg, 3), true)
-        : [];
-    }
-
-    /**
-     * Fills elements of `array` with `value` from `start` up to, but not
-     * including, `end`.
-     *
-     * **Note:** This method mutates `array`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to fill.
-     * @param {*} value The value to fill `array` with.
-     * @param {number} [start=0] The start position.
-     * @param {number} [end=array.length] The end position.
-     * @returns {Array} Returns `array`.
-     * @example
-     *
-     * var array = [1, 2, 3];
-     *
-     * _.fill(array, 'a');
-     * console.log(array);
-     * // => ['a', 'a', 'a']
-     *
-     * _.fill(Array(3), 2);
-     * // => [2, 2, 2]
-     *
-     * _.fill([4, 6, 8], '*', 1, 2);
-     * // => [4, '*', 8]
-     */
-    function fill(array, value, start, end) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {
-        start = 0;
-        end = length;
-      }
-      return baseFill(array, value, start, end);
-    }
-
-    /**
-     * This method is like `_.find` except that it returns the index of the first
-     * element `predicate` returns truthy for instead of the element itself.
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {number} Returns the index of the found element, else `-1`.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': false },
-     *   { 'user': 'fred',    'active': false },
-     *   { 'user': 'pebbles', 'active': true }
-     * ];
-     *
-     * _.findIndex(users, function(chr) {
-     *   return chr.user == 'barney';
-     * });
-     * // => 0
-     *
-     * // using the `_.matches` callback shorthand
-     * _.findIndex(users, { 'user': 'fred', 'active': false });
-     * // => 1
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.findIndex(users, 'active', false);
-     * // => 0
-     *
-     * // using the `_.property` callback shorthand
-     * _.findIndex(users, 'active');
-     * // => 2
-     */
-    var findIndex = createFindIndex();
-
-    /**
-     * This method is like `_.findIndex` except that it iterates over elements
-     * of `collection` from right to left.
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {number} Returns the index of the found element, else `-1`.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': true },
-     *   { 'user': 'fred',    'active': false },
-     *   { 'user': 'pebbles', 'active': false }
-     * ];
-     *
-     * _.findLastIndex(users, function(chr) {
-     *   return chr.user == 'pebbles';
-     * });
-     * // => 2
-     *
-     * // using the `_.matches` callback shorthand
-     * _.findLastIndex(users, { 'user': 'barney', 'active': true });
-     * // => 0
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.findLastIndex(users, 'active', false);
-     * // => 2
-     *
-     * // using the `_.property` callback shorthand
-     * _.findLastIndex(users, 'active');
-     * // => 0
-     */
-    var findLastIndex = createFindIndex(true);
-
-    /**
-     * Gets the first element of `array`.
-     *
-     * @static
-     * @memberOf _
-     * @alias head
-     * @category Array
-     * @param {Array} array The array to query.
-     * @returns {*} Returns the first element of `array`.
-     * @example
-     *
-     * _.first([1, 2, 3]);
-     * // => 1
-     *
-     * _.first([]);
-     * // => undefined
-     */
-    function first(array) {
-      return array ? array[0] : undefined;
-    }
-
-    /**
-     * Flattens a nested array. If `isDeep` is `true` the array is recursively
-     * flattened, otherwise it is only flattened a single level.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to flatten.
-     * @param {boolean} [isDeep] Specify a deep flatten.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the new flattened array.
-     * @example
-     *
-     * _.flatten([1, [2, 3, [4]]]);
-     * // => [1, 2, 3, [4]]
-     *
-     * // using `isDeep`
-     * _.flatten([1, [2, 3, [4]]], true);
-     * // => [1, 2, 3, 4]
-     */
-    function flatten(array, isDeep, guard) {
-      var length = array ? array.length : 0;
-      if (guard && isIterateeCall(array, isDeep, guard)) {
-        isDeep = false;
-      }
-      return length ? baseFlatten(array, isDeep) : [];
-    }
-
-    /**
-     * Recursively flattens a nested array.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to recursively flatten.
-     * @returns {Array} Returns the new flattened array.
-     * @example
-     *
-     * _.flattenDeep([1, [2, 3, [4]]]);
-     * // => [1, 2, 3, 4]
-     */
-    function flattenDeep(array) {
-      var length = array ? array.length : 0;
-      return length ? baseFlatten(array, true) : [];
-    }
-
-    /**
-     * Gets the index at which the first occurrence of `value` is found in `array`
-     * using `SameValueZero` for equality comparisons. If `fromIndex` is negative,
-     * it is used as the offset from the end of `array`. If `array` is sorted
-     * providing `true` for `fromIndex` performs a faster binary search.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to search.
-     * @param {*} value The value to search for.
-     * @param {boolean|number} [fromIndex=0] The index to search from or `true`
-     *  to perform a binary search on a sorted array.
-     * @returns {number} Returns the index of the matched value, else `-1`.
-     * @example
-     *
-     * _.indexOf([1, 2, 1, 2], 2);
-     * // => 1
-     *
-     * // using `fromIndex`
-     * _.indexOf([1, 2, 1, 2], 2, 2);
-     * // => 3
-     *
-     * // performing a binary search
-     * _.indexOf([1, 1, 2, 2], 2, true);
-     * // => 2
-     */
-    function indexOf(array, value, fromIndex) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return -1;
-      }
-      if (typeof fromIndex == 'number') {
-        fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : fromIndex;
-      } else if (fromIndex) {
-        var index = binaryIndex(array, value),
-            other = array[index];
-
-        if (value === value ? (value === other) : (other !== other)) {
-          return index;
-        }
-        return -1;
-      }
-      return baseIndexOf(array, value, fromIndex || 0);
-    }
-
-    /**
-     * Gets all but the last element of `array`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.initial([1, 2, 3]);
-     * // => [1, 2]
-     */
-    function initial(array) {
-      return dropRight(array, 1);
-    }
-
-    /**
-     * Creates an array of unique values in all provided arrays using `SameValueZero`
-     * for equality comparisons.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {...Array} [arrays] The arrays to inspect.
-     * @returns {Array} Returns the new array of shared values.
-     * @example
-     * _.intersection([1, 2], [4, 2], [2, 1]);
-     * // => [2]
-     */
-    function intersection() {
-      var args = [],
-          argsIndex = -1,
-          argsLength = arguments.length,
-          caches = [],
-          indexOf = getIndexOf(),
-          isCommon = indexOf == baseIndexOf,
-          result = [];
-
-      while (++argsIndex < argsLength) {
-        var value = arguments[argsIndex];
-        if (isArray(value) || isArguments(value)) {
-          args.push(value);
-          caches.push((isCommon && value.length >= 120) ? createCache(argsIndex && value) : null);
-        }
-      }
-      argsLength = args.length;
-      if (argsLength < 2) {
-        return result;
-      }
-      var array = args[0],
-          index = -1,
-          length = array ? array.length : 0,
-          seen = caches[0];
-
-      outer:
-      while (++index < length) {
-        value = array[index];
-        if ((seen ? cacheIndexOf(seen, value) : indexOf(result, value, 0)) < 0) {
-          argsIndex = argsLength;
-          while (--argsIndex) {
-            var cache = caches[argsIndex];
-            if ((cache ? cacheIndexOf(cache, value) : indexOf(args[argsIndex], value, 0)) < 0) {
-              continue outer;
-            }
-          }
-          if (seen) {
-            seen.push(value);
-          }
-          result.push(value);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Gets the last element of `array`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @returns {*} Returns the last element of `array`.
-     * @example
-     *
-     * _.last([1, 2, 3]);
-     * // => 3
-     */
-    function last(array) {
-      var length = array ? array.length : 0;
-      return length ? array[length - 1] : undefined;
-    }
-
-    /**
-     * This method is like `_.indexOf` except that it iterates over elements of
-     * `array` from right to left.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to search.
-     * @param {*} value The value to search for.
-     * @param {boolean|number} [fromIndex=array.length-1] The index to search from
-     *  or `true` to perform a binary search on a sorted array.
-     * @returns {number} Returns the index of the matched value, else `-1`.
-     * @example
-     *
-     * _.lastIndexOf([1, 2, 1, 2], 2);
-     * // => 3
-     *
-     * // using `fromIndex`
-     * _.lastIndexOf([1, 2, 1, 2], 2, 2);
-     * // => 1
-     *
-     * // performing a binary search
-     * _.lastIndexOf([1, 1, 2, 2], 2, true);
-     * // => 3
-     */
-    function lastIndexOf(array, value, fromIndex) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return -1;
-      }
-      var index = length;
-      if (typeof fromIndex == 'number') {
-        index = (fromIndex < 0 ? nativeMax(length + fromIndex, 0) : nativeMin(fromIndex || 0, length - 1)) + 1;
-      } else if (fromIndex) {
-        index = binaryIndex(array, value, true) - 1;
-        var other = array[index];
-        if (value === value ? (value === other) : (other !== other)) {
-          return index;
-        }
-        return -1;
-      }
-      if (value !== value) {
-        return indexOfNaN(array, index, true);
-      }
-      while (index--) {
-        if (array[index] === value) {
-          return index;
-        }
-      }
-      return -1;
-    }
-
-    /**
-     * Removes all provided values from `array` using `SameValueZero` for equality
-     * comparisons.
-     *
-     * **Notes:**
-     *  - Unlike `_.without`, this method mutates `array`
-     *  - [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     *    comparisons are like strict equality comparisons, e.g. `===`, except
-     *    that `NaN` matches `NaN`
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to modify.
-     * @param {...*} [values] The values to remove.
-     * @returns {Array} Returns `array`.
-     * @example
-     *
-     * var array = [1, 2, 3, 1, 2, 3];
-     *
-     * _.pull(array, 2, 3);
-     * console.log(array);
-     * // => [1, 1]
-     */
-    function pull() {
-      var args = arguments,
-          array = args[0];
-
-      if (!(array && array.length)) {
-        return array;
-      }
-      var index = 0,
-          indexOf = getIndexOf(),
-          length = args.length;
-
-      while (++index < length) {
-        var fromIndex = 0,
-            value = args[index];
-
-        while ((fromIndex = indexOf(array, value, fromIndex)) > -1) {
-          splice.call(array, fromIndex, 1);
-        }
-      }
-      return array;
-    }
-
-    /**
-     * Removes elements from `array` corresponding to the given indexes and returns
-     * an array of the removed elements. Indexes may be specified as an array of
-     * indexes or as individual arguments.
-     *
-     * **Note:** Unlike `_.at`, this method mutates `array`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to modify.
-     * @param {...(number|number[])} [indexes] The indexes of elements to remove,
-     *  specified as individual indexes or arrays of indexes.
-     * @returns {Array} Returns the new array of removed elements.
-     * @example
-     *
-     * var array = [5, 10, 15, 20];
-     * var evens = _.pullAt(array, 1, 3);
-     *
-     * console.log(array);
-     * // => [5, 15]
-     *
-     * console.log(evens);
-     * // => [10, 20]
-     */
-    var pullAt = restParam(function(array, indexes) {
-      array || (array = []);
-      indexes = baseFlatten(indexes);
-
-      var result = baseAt(array, indexes);
-      basePullAt(array, indexes.sort(baseCompareAscending));
-      return result;
-    });
-
-    /**
-     * Removes all elements from `array` that `predicate` returns truthy for
-     * and returns an array of the removed elements. The predicate is bound to
-     * `thisArg` and invoked with three arguments: (value, index, array).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * **Note:** Unlike `_.filter`, this method mutates `array`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to modify.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the new array of removed elements.
-     * @example
-     *
-     * var array = [1, 2, 3, 4];
-     * var evens = _.remove(array, function(n) {
-     *   return n % 2 == 0;
-     * });
-     *
-     * console.log(array);
-     * // => [1, 3]
-     *
-     * console.log(evens);
-     * // => [2, 4]
-     */
-    function remove(array, predicate, thisArg) {
-      var result = [];
-      if (!(array && array.length)) {
-        return result;
-      }
-      var index = -1,
-          indexes = [],
-          length = array.length;
-
-      predicate = getCallback(predicate, thisArg, 3);
-      while (++index < length) {
-        var value = array[index];
-        if (predicate(value, index, array)) {
-          result.push(value);
-          indexes.push(index);
-        }
-      }
-      basePullAt(array, indexes);
-      return result;
-    }
-
-    /**
-     * Gets all but the first element of `array`.
-     *
-     * @static
-     * @memberOf _
-     * @alias tail
-     * @category Array
-     * @param {Array} array The array to query.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.rest([1, 2, 3]);
-     * // => [2, 3]
-     */
-    function rest(array) {
-      return drop(array, 1);
-    }
-
-    /**
-     * Creates a slice of `array` from `start` up to, but not including, `end`.
-     *
-     * **Note:** This method is used instead of `Array#slice` to support node
-     * lists in IE < 9 and to ensure dense arrays are returned.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to slice.
-     * @param {number} [start=0] The start position.
-     * @param {number} [end=array.length] The end position.
-     * @returns {Array} Returns the slice of `array`.
-     */
-    function slice(array, start, end) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {
-        start = 0;
-        end = length;
-      }
-      return baseSlice(array, start, end);
-    }
-
-    /**
-     * Uses a binary search to determine the lowest index at which `value` should
-     * be inserted into `array` in order to maintain its sort order. If an iteratee
-     * function is provided it is invoked for `value` and each element of `array`
-     * to compute their sort ranking. The iteratee is bound to `thisArg` and
-     * invoked with one argument; (value).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The sorted array to inspect.
-     * @param {*} value The value to evaluate.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {number} Returns the index at which `value` should be inserted
-     *  into `array`.
-     * @example
-     *
-     * _.sortedIndex([30, 50], 40);
-     * // => 1
-     *
-     * _.sortedIndex([4, 4, 5, 5], 5);
-     * // => 2
-     *
-     * var dict = { 'data': { 'thirty': 30, 'forty': 40, 'fifty': 50 } };
-     *
-     * // using an iteratee function
-     * _.sortedIndex(['thirty', 'fifty'], 'forty', function(word) {
-     *   return this.data[word];
-     * }, dict);
-     * // => 1
-     *
-     * // using the `_.property` callback shorthand
-     * _.sortedIndex([{ 'x': 30 }, { 'x': 50 }], { 'x': 40 }, 'x');
-     * // => 1
-     */
-    var sortedIndex = createSortedIndex();
-
-    /**
-     * This method is like `_.sortedIndex` except that it returns the highest
-     * index at which `value` should be inserted into `array` in order to
-     * maintain its sort order.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The sorted array to inspect.
-     * @param {*} value The value to evaluate.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {number} Returns the index at which `value` should be inserted
-     *  into `array`.
-     * @example
-     *
-     * _.sortedLastIndex([4, 4, 5, 5], 5);
-     * // => 4
-     */
-    var sortedLastIndex = createSortedIndex(true);
-
-    /**
-     * Creates a slice of `array` with `n` elements taken from the beginning.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {number} [n=1] The number of elements to take.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.take([1, 2, 3]);
-     * // => [1]
-     *
-     * _.take([1, 2, 3], 2);
-     * // => [1, 2]
-     *
-     * _.take([1, 2, 3], 5);
-     * // => [1, 2, 3]
-     *
-     * _.take([1, 2, 3], 0);
-     * // => []
-     */
-    function take(array, n, guard) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (guard ? isIterateeCall(array, n, guard) : n == null) {
-        n = 1;
-      }
-      return baseSlice(array, 0, n < 0 ? 0 : n);
-    }
-
-    /**
-     * Creates a slice of `array` with `n` elements taken from the end.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {number} [n=1] The number of elements to take.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.takeRight([1, 2, 3]);
-     * // => [3]
-     *
-     * _.takeRight([1, 2, 3], 2);
-     * // => [2, 3]
-     *
-     * _.takeRight([1, 2, 3], 5);
-     * // => [1, 2, 3]
-     *
-     * _.takeRight([1, 2, 3], 0);
-     * // => []
-     */
-    function takeRight(array, n, guard) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (guard ? isIterateeCall(array, n, guard) : n == null) {
-        n = 1;
-      }
-      n = length - (+n || 0);
-      return baseSlice(array, n < 0 ? 0 : n);
-    }
-
-    /**
-     * Creates a slice of `array` with elements taken from the end. Elements are
-     * taken until `predicate` returns falsey. The predicate is bound to `thisArg`
-     * and invoked with three arguments: (value, index, array).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.takeRightWhile([1, 2, 3], function(n) {
-     *   return n > 1;
-     * });
-     * // => [2, 3]
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': true },
-     *   { 'user': 'fred',    'active': false },
-     *   { 'user': 'pebbles', 'active': false }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.takeRightWhile(users, { 'user': 'pebbles', 'active': false }), 'user');
-     * // => ['pebbles']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.takeRightWhile(users, 'active', false), 'user');
-     * // => ['fred', 'pebbles']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.takeRightWhile(users, 'active'), 'user');
-     * // => []
-     */
-    function takeRightWhile(array, predicate, thisArg) {
-      return (array && array.length)
-        ? baseWhile(array, getCallback(predicate, thisArg, 3), false, true)
-        : [];
-    }
-
-    /**
-     * Creates a slice of `array` with elements taken from the beginning. Elements
-     * are taken until `predicate` returns falsey. The predicate is bound to
-     * `thisArg` and invoked with three arguments: (value, index, array).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to query.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the slice of `array`.
-     * @example
-     *
-     * _.takeWhile([1, 2, 3], function(n) {
-     *   return n < 3;
-     * });
-     * // => [1, 2]
-     *
-     * var users = [
-     *   { 'user': 'barney',  'active': false },
-     *   { 'user': 'fred',    'active': false},
-     *   { 'user': 'pebbles', 'active': true }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.takeWhile(users, { 'user': 'barney', 'active': false }), 'user');
-     * // => ['barney']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.takeWhile(users, 'active', false), 'user');
-     * // => ['barney', 'fred']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.takeWhile(users, 'active'), 'user');
-     * // => []
-     */
-    function takeWhile(array, predicate, thisArg) {
-      return (array && array.length)
-        ? baseWhile(array, getCallback(predicate, thisArg, 3))
-        : [];
-    }
-
-    /**
-     * Creates an array of unique values, in order, of the provided arrays using
-     * `SameValueZero` for equality comparisons.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {...Array} [arrays] The arrays to inspect.
-     * @returns {Array} Returns the new array of combined values.
-     * @example
-     *
-     * _.union([1, 2], [4, 2], [2, 1]);
-     * // => [1, 2, 4]
-     */
-    var union = restParam(function(arrays) {
-      return baseUniq(baseFlatten(arrays, false, true));
-    });
-
-    /**
-     * Creates a duplicate-free version of an array, using `SameValueZero` for
-     * equality comparisons, in which only the first occurence of each element
-     * is kept. Providing `true` for `isSorted` performs a faster search algorithm
-     * for sorted arrays. If an iteratee function is provided it is invoked for
-     * each element in the array to generate the criterion by which uniqueness
-     * is computed. The `iteratee` is bound to `thisArg` and invoked with three
-     * arguments: (value, index, array).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @alias unique
-     * @category Array
-     * @param {Array} array The array to inspect.
-     * @param {boolean} [isSorted] Specify the array is sorted.
-     * @param {Function|Object|string} [iteratee] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array} Returns the new duplicate-value-free array.
-     * @example
-     *
-     * _.uniq([2, 1, 2]);
-     * // => [2, 1]
-     *
-     * // using `isSorted`
-     * _.uniq([1, 1, 2], true);
-     * // => [1, 2]
-     *
-     * // using an iteratee function
-     * _.uniq([1, 2.5, 1.5, 2], function(n) {
-     *   return this.floor(n);
-     * }, Math);
-     * // => [1, 2.5]
-     *
-     * // using the `_.property` callback shorthand
-     * _.uniq([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');
-     * // => [{ 'x': 1 }, { 'x': 2 }]
-     */
-    function uniq(array, isSorted, iteratee, thisArg) {
-      var length = array ? array.length : 0;
-      if (!length) {
-        return [];
-      }
-      if (isSorted != null && typeof isSorted != 'boolean') {
-        thisArg = iteratee;
-        iteratee = isIterateeCall(array, isSorted, thisArg) ? null : isSorted;
-        isSorted = false;
-      }
-      var func = getCallback();
-      if (!(func === baseCallback && iteratee == null)) {
-        iteratee = func(iteratee, thisArg, 3);
-      }
-      return (isSorted && getIndexOf() == baseIndexOf)
-        ? sortedUniq(array, iteratee)
-        : baseUniq(array, iteratee);
-    }
-
-    /**
-     * This method is like `_.zip` except that it accepts an array of grouped
-     * elements and creates an array regrouping the elements to their pre-`_.zip`
-     * configuration.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array of grouped elements to process.
-     * @returns {Array} Returns the new array of regrouped elements.
-     * @example
-     *
-     * var zipped = _.zip(['fred', 'barney'], [30, 40], [true, false]);
-     * // => [['fred', 30, true], ['barney', 40, false]]
-     *
-     * _.unzip(zipped);
-     * // => [['fred', 'barney'], [30, 40], [true, false]]
-     */
-    function unzip(array) {
-      var index = -1,
-          length = (array && array.length && arrayMax(arrayMap(array, getLength))) >>> 0,
-          result = Array(length);
-
-      while (++index < length) {
-        result[index] = arrayMap(array, baseProperty(index));
-      }
-      return result;
-    }
-
-    /**
-     * Creates an array excluding all provided values using `SameValueZero` for
-     * equality comparisons.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {Array} array The array to filter.
-     * @param {...*} [values] The values to exclude.
-     * @returns {Array} Returns the new array of filtered values.
-     * @example
-     *
-     * _.without([1, 2, 1, 3], 1, 2);
-     * // => [3]
-     */
-    var without = restParam(function(array, values) {
-      return (isArray(array) || isArguments(array))
-        ? baseDifference(array, values)
-        : [];
-    });
-
-    /**
-     * Creates an array that is the [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)
-     * of the provided arrays.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {...Array} [arrays] The arrays to inspect.
-     * @returns {Array} Returns the new array of values.
-     * @example
-     *
-     * _.xor([1, 2], [4, 2]);
-     * // => [1, 4]
-     */
-    function xor() {
-      var index = -1,
-          length = arguments.length;
-
-      while (++index < length) {
-        var array = arguments[index];
-        if (isArray(array) || isArguments(array)) {
-          var result = result
-            ? baseDifference(result, array).concat(baseDifference(array, result))
-            : array;
-        }
-      }
-      return result ? baseUniq(result) : [];
-    }
-
-    /**
-     * Creates an array of grouped elements, the first of which contains the first
-     * elements of the given arrays, the second of which contains the second elements
-     * of the given arrays, and so on.
-     *
-     * @static
-     * @memberOf _
-     * @category Array
-     * @param {...Array} [arrays] The arrays to process.
-     * @returns {Array} Returns the new array of grouped elements.
-     * @example
-     *
-     * _.zip(['fred', 'barney'], [30, 40], [true, false]);
-     * // => [['fred', 30, true], ['barney', 40, false]]
-     */
-    var zip = restParam(unzip);
-
-    /**
-     * The inverse of `_.pairs`; this method returns an object composed from arrays
-     * of property names and values. Provide either a single two dimensional array,
-     * e.g. `[[key1, value1], [key2, value2]]` or two arrays, one of property names
-     * and one of corresponding values.
-     *
-     * @static
-     * @memberOf _
-     * @alias object
-     * @category Array
-     * @param {Array} props The property names.
-     * @param {Array} [values=[]] The property values.
-     * @returns {Object} Returns the new object.
-     * @example
-     *
-     * _.zipObject([['fred', 30], ['barney', 40]]);
-     * // => { 'fred': 30, 'barney': 40 }
-     *
-     * _.zipObject(['fred', 'barney'], [30, 40]);
-     * // => { 'fred': 30, 'barney': 40 }
-     */
-    function zipObject(props, values) {
-      var index = -1,
-          length = props ? props.length : 0,
-          result = {};
-
-      if (length && !values && !isArray(props[0])) {
-        values = [];
-      }
-      while (++index < length) {
-        var key = props[index];
-        if (values) {
-          result[key] = values[index];
-        } else if (key) {
-          result[key[0]] = key[1];
-        }
-      }
-      return result;
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates a `lodash` object that wraps `value` with explicit method
-     * chaining enabled.
-     *
-     * @static
-     * @memberOf _
-     * @category Chain
-     * @param {*} value The value to wrap.
-     * @returns {Object} Returns the new `lodash` wrapper instance.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney',  'age': 36 },
-     *   { 'user': 'fred',    'age': 40 },
-     *   { 'user': 'pebbles', 'age': 1 }
-     * ];
-     *
-     * var youngest = _.chain(users)
-     *   .sortBy('age')
-     *   .map(function(chr) {
-     *     return chr.user + ' is ' + chr.age;
-     *   })
-     *   .first()
-     *   .value();
-     * // => 'pebbles is 1'
-     */
-    function chain(value) {
-      var result = lodash(value);
-      result.__chain__ = true;
-      return result;
-    }
-
-    /**
-     * This method invokes `interceptor` and returns `value`. The interceptor is
-     * bound to `thisArg` and invoked with one argument; (value). The purpose of
-     * this method is to "tap into" a method chain in order to perform operations
-     * on intermediate results within the chain.
-     *
-     * @static
-     * @memberOf _
-     * @category Chain
-     * @param {*} value The value to provide to `interceptor`.
-     * @param {Function} interceptor The function to invoke.
-     * @param {*} [thisArg] The `this` binding of `interceptor`.
-     * @returns {*} Returns `value`.
-     * @example
-     *
-     * _([1, 2, 3])
-     *  .tap(function(array) {
-     *    array.pop();
-     *  })
-     *  .reverse()
-     *  .value();
-     * // => [2, 1]
-     */
-    function tap(value, interceptor, thisArg) {
-      interceptor.call(thisArg, value);
-      return value;
-    }
-
-    /**
-     * This method is like `_.tap` except that it returns the result of `interceptor`.
-     *
-     * @static
-     * @memberOf _
-     * @category Chain
-     * @param {*} value The value to provide to `interceptor`.
-     * @param {Function} interceptor The function to invoke.
-     * @param {*} [thisArg] The `this` binding of `interceptor`.
-     * @returns {*} Returns the result of `interceptor`.
-     * @example
-     *
-     * _('  abc  ')
-     *  .chain()
-     *  .trim()
-     *  .thru(function(value) {
-     *    return [value];
-     *  })
-     *  .value();
-     * // => ['abc']
-     */
-    function thru(value, interceptor, thisArg) {
-      return interceptor.call(thisArg, value);
-    }
-
-    /**
-     * Enables explicit method chaining on the wrapper object.
-     *
-     * @name chain
-     * @memberOf _
-     * @category Chain
-     * @returns {Object} Returns the new `lodash` wrapper instance.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 40 }
-     * ];
-     *
-     * // without explicit chaining
-     * _(users).first();
-     * // => { 'user': 'barney', 'age': 36 }
-     *
-     * // with explicit chaining
-     * _(users).chain()
-     *   .first()
-     *   .pick('user')
-     *   .value();
-     * // => { 'user': 'barney' }
-     */
-    function wrapperChain() {
-      return chain(this);
-    }
-
-    /**
-     * Executes the chained sequence and returns the wrapped result.
-     *
-     * @name commit
-     * @memberOf _
-     * @category Chain
-     * @returns {Object} Returns the new `lodash` wrapper instance.
-     * @example
-     *
-     * var array = [1, 2];
-     * var wrapper = _(array).push(3);
-     *
-     * console.log(array);
-     * // => [1, 2]
-     *
-     * wrapper = wrapper.commit();
-     * console.log(array);
-     * // => [1, 2, 3]
-     *
-     * wrapper.last();
-     * // => 3
-     *
-     * console.log(array);
-     * // => [1, 2, 3]
-     */
-    function wrapperCommit() {
-      return new LodashWrapper(this.value(), this.__chain__);
-    }
-
-    /**
-     * Creates a clone of the chained sequence planting `value` as the wrapped value.
-     *
-     * @name plant
-     * @memberOf _
-     * @category Chain
-     * @returns {Object} Returns the new `lodash` wrapper instance.
-     * @example
-     *
-     * var array = [1, 2];
-     * var wrapper = _(array).map(function(value) {
-     *   return Math.pow(value, 2);
-     * });
-     *
-     * var other = [3, 4];
-     * var otherWrapper = wrapper.plant(other);
-     *
-     * otherWrapper.value();
-     * // => [9, 16]
-     *
-     * wrapper.value();
-     * // => [1, 4]
-     */
-    function wrapperPlant(value) {
-      var result,
-          parent = this;
-
-      while (parent instanceof baseLodash) {
-        var clone = wrapperClone(parent);
-        if (result) {
-          previous.__wrapped__ = clone;
-        } else {
-          result = clone;
-        }
-        var previous = clone;
-        parent = parent.__wrapped__;
-      }
-      previous.__wrapped__ = value;
-      return result;
-    }
-
-    /**
-     * Reverses the wrapped array so the first element becomes the last, the
-     * second element becomes the second to last, and so on.
-     *
-     * **Note:** This method mutates the wrapped array.
-     *
-     * @name reverse
-     * @memberOf _
-     * @category Chain
-     * @returns {Object} Returns the new reversed `lodash` wrapper instance.
-     * @example
-     *
-     * var array = [1, 2, 3];
-     *
-     * _(array).reverse().value()
-     * // => [3, 2, 1]
-     *
-     * console.log(array);
-     * // => [3, 2, 1]
-     */
-    function wrapperReverse() {
-      var value = this.__wrapped__;
-      if (value instanceof LazyWrapper) {
-        if (this.__actions__.length) {
-          value = new LazyWrapper(this);
-        }
-        return new LodashWrapper(value.reverse(), this.__chain__);
-      }
-      return this.thru(function(value) {
-        return value.reverse();
-      });
-    }
-
-    /**
-     * Produces the result of coercing the unwrapped value to a string.
-     *
-     * @name toString
-     * @memberOf _
-     * @category Chain
-     * @returns {string} Returns the coerced string value.
-     * @example
-     *
-     * _([1, 2, 3]).toString();
-     * // => '1,2,3'
-     */
-    function wrapperToString() {
-      return (this.value() + '');
-    }
-
-    /**
-     * Executes the chained sequence to extract the unwrapped value.
-     *
-     * @name value
-     * @memberOf _
-     * @alias run, toJSON, valueOf
-     * @category Chain
-     * @returns {*} Returns the resolved unwrapped value.
-     * @example
-     *
-     * _([1, 2, 3]).value();
-     * // => [1, 2, 3]
-     */
-    function wrapperValue() {
-      return baseWrapperValue(this.__wrapped__, this.__actions__);
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates an array of elements corresponding to the given keys, or indexes,
-     * of `collection`. Keys may be specified as individual arguments or as arrays
-     * of keys.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {...(number|number[]|string|string[])} [props] The property names
-     *  or indexes of elements to pick, specified individually or in arrays.
-     * @returns {Array} Returns the new array of picked elements.
-     * @example
-     *
-     * _.at(['a', 'b', 'c'], [0, 2]);
-     * // => ['a', 'c']
-     *
-     * _.at(['barney', 'fred', 'pebbles'], 0, 2);
-     * // => ['barney', 'pebbles']
-     */
-    var at = restParam(function(collection, props) {
-      var length = collection ? getLength(collection) : 0;
-      if (isLength(length)) {
-        collection = toIterable(collection);
-      }
-      return baseAt(collection, baseFlatten(props));
-    });
-
-    /**
-     * Creates an object composed of keys generated from the results of running
-     * each element of `collection` through `iteratee`. The corresponding value
-     * of each key is the number of times the key was returned by `iteratee`.
-     * The `iteratee` is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns the composed aggregate object.
-     * @example
-     *
-     * _.countBy([4.3, 6.1, 6.4], function(n) {
-     *   return Math.floor(n);
-     * });
-     * // => { '4': 1, '6': 2 }
-     *
-     * _.countBy([4.3, 6.1, 6.4], function(n) {
-     *   return this.floor(n);
-     * }, Math);
-     * // => { '4': 1, '6': 2 }
-     *
-     * _.countBy(['one', 'two', 'three'], 'length');
-     * // => { '3': 2, '5': 1 }
-     */
-    var countBy = createAggregator(function(result, value, key) {
-      hasOwnProperty.call(result, key) ? ++result[key] : (result[key] = 1);
-    });
-
-    /**
-     * Checks if `predicate` returns truthy for **all** elements of `collection`.
-     * The predicate is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @alias all
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {boolean} Returns `true` if all elements pass the predicate check,
-     *  else `false`.
-     * @example
-     *
-     * _.every([true, 1, null, 'yes'], Boolean);
-     * // => false
-     *
-     * var users = [
-     *   { 'user': 'barney', 'active': false },
-     *   { 'user': 'fred',   'active': false }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.every(users, { 'user': 'barney', 'active': false });
-     * // => false
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.every(users, 'active', false);
-     * // => true
-     *
-     * // using the `_.property` callback shorthand
-     * _.every(users, 'active');
-     * // => false
-     */
-    function every(collection, predicate, thisArg) {
-      var func = isArray(collection) ? arrayEvery : baseEvery;
-      if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
-        predicate = null;
-      }
-      if (typeof predicate != 'function' || thisArg !== undefined) {
-        predicate = getCallback(predicate, thisArg, 3);
-      }
-      return func(collection, predicate);
-    }
-
-    /**
-     * Iterates over elements of `collection`, returning an array of all elements
-     * `predicate` returns truthy for. The predicate is bound to `thisArg` and
-     * invoked with three arguments: (value, index|key, collection).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @alias select
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the new filtered array.
-     * @example
-     *
-     * _.filter([4, 5, 6], function(n) {
-     *   return n % 2 == 0;
-     * });
-     * // => [4, 6]
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36, 'active': true },
-     *   { 'user': 'fred',   'age': 40, 'active': false }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.filter(users, { 'age': 36, 'active': true }), 'user');
-     * // => ['barney']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.filter(users, 'active', false), 'user');
-     * // => ['fred']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.filter(users, 'active'), 'user');
-     * // => ['barney']
-     */
-    function filter(collection, predicate, thisArg) {
-      var func = isArray(collection) ? arrayFilter : baseFilter;
-      predicate = getCallback(predicate, thisArg, 3);
-      return func(collection, predicate);
-    }
-
-    /**
-     * Iterates over elements of `collection`, returning the first element
-     * `predicate` returns truthy for. The predicate is bound to `thisArg` and
-     * invoked with three arguments: (value, index|key, collection).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @alias detect
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {*} Returns the matched element, else `undefined`.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney',  'age': 36, 'active': true },
-     *   { 'user': 'fred',    'age': 40, 'active': false },
-     *   { 'user': 'pebbles', 'age': 1,  'active': true }
-     * ];
-     *
-     * _.result(_.find(users, function(chr) {
-     *   return chr.age < 40;
-     * }), 'user');
-     * // => 'barney'
-     *
-     * // using the `_.matches` callback shorthand
-     * _.result(_.find(users, { 'age': 1, 'active': true }), 'user');
-     * // => 'pebbles'
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.result(_.find(users, 'active', false), 'user');
-     * // => 'fred'
-     *
-     * // using the `_.property` callback shorthand
-     * _.result(_.find(users, 'active'), 'user');
-     * // => 'barney'
-     */
-    var find = createFind(baseEach);
-
-    /**
-     * This method is like `_.find` except that it iterates over elements of
-     * `collection` from right to left.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {*} Returns the matched element, else `undefined`.
-     * @example
-     *
-     * _.findLast([1, 2, 3, 4], function(n) {
-     *   return n % 2 == 1;
-     * });
-     * // => 3
-     */
-    var findLast = createFind(baseEachRight, true);
-
-    /**
-     * Performs a deep comparison between each element in `collection` and the
-     * source object, returning the first element that has equivalent property
-     * values.
-     *
-     * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-     * numbers, `Object` objects, regexes, and strings. Objects are compared by
-     * their own, not inherited, enumerable properties. For comparing a single
-     * own or inherited property value see `_.matchesProperty`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {Object} source The object of property values to match.
-     * @returns {*} Returns the matched element, else `undefined`.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36, 'active': true },
-     *   { 'user': 'fred',   'age': 40, 'active': false }
-     * ];
-     *
-     * _.result(_.findWhere(users, { 'age': 36, 'active': true }), 'user');
-     * // => 'barney'
-     *
-     * _.result(_.findWhere(users, { 'age': 40, 'active': false }), 'user');
-     * // => 'fred'
-     */
-    function findWhere(collection, source) {
-      return find(collection, baseMatches(source));
-    }
-
-    /**
-     * Iterates over elements of `collection` invoking `iteratee` for each element.
-     * The `iteratee` is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection). Iteratee functions may exit iteration early
-     * by explicitly returning `false`.
-     *
-     * **Note:** As with other "Collections" methods, objects with a "length" property
-     * are iterated like arrays. To avoid this behavior `_.forIn` or `_.forOwn`
-     * may be used for object iteration.
-     *
-     * @static
-     * @memberOf _
-     * @alias each
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array|Object|string} Returns `collection`.
-     * @example
-     *
-     * _([1, 2]).forEach(function(n) {
-     *   console.log(n);
-     * }).value();
-     * // => logs each value from left to right and returns the array
-     *
-     * _.forEach({ 'a': 1, 'b': 2 }, function(n, key) {
-     *   console.log(n, key);
-     * });
-     * // => logs each value-key pair and returns the object (iteration order is not guaranteed)
-     */
-    var forEach = createForEach(arrayEach, baseEach);
-
-    /**
-     * This method is like `_.forEach` except that it iterates over elements of
-     * `collection` from right to left.
-     *
-     * @static
-     * @memberOf _
-     * @alias eachRight
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array|Object|string} Returns `collection`.
-     * @example
-     *
-     * _([1, 2]).forEachRight(function(n) {
-     *   console.log(n);
-     * }).value();
-     * // => logs each value from right to left and returns the array
-     */
-    var forEachRight = createForEach(arrayEachRight, baseEachRight);
-
-    /**
-     * Creates an object composed of keys generated from the results of running
-     * each element of `collection` through `iteratee`. The corresponding value
-     * of each key is an array of the elements responsible for generating the key.
-     * The `iteratee` is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns the composed aggregate object.
-     * @example
-     *
-     * _.groupBy([4.2, 6.1, 6.4], function(n) {
-     *   return Math.floor(n);
-     * });
-     * // => { '4': [4.2], '6': [6.1, 6.4] }
-     *
-     * _.groupBy([4.2, 6.1, 6.4], function(n) {
-     *   return this.floor(n);
-     * }, Math);
-     * // => { '4': [4.2], '6': [6.1, 6.4] }
-     *
-     * // using the `_.property` callback shorthand
-     * _.groupBy(['one', 'two', 'three'], 'length');
-     * // => { '3': ['one', 'two'], '5': ['three'] }
-     */
-    var groupBy = createAggregator(function(result, value, key) {
-      if (hasOwnProperty.call(result, key)) {
-        result[key].push(value);
-      } else {
-        result[key] = [value];
-      }
-    });
-
-    /**
-     * Checks if `value` is in `collection` using `SameValueZero` for equality
-     * comparisons. If `fromIndex` is negative, it is used as the offset from
-     * the end of `collection`.
-     *
-     * **Note:** [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
-     * comparisons are like strict equality comparisons, e.g. `===`, except that
-     * `NaN` matches `NaN`.
-     *
-     * @static
-     * @memberOf _
-     * @alias contains, include
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {*} target The value to search for.
-     * @param {number} [fromIndex=0] The index to search from.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.reduce`.
-     * @returns {boolean} Returns `true` if a matching element is found, else `false`.
-     * @example
-     *
-     * _.includes([1, 2, 3], 1);
-     * // => true
-     *
-     * _.includes([1, 2, 3], 1, 2);
-     * // => false
-     *
-     * _.includes({ 'user': 'fred', 'age': 40 }, 'fred');
-     * // => true
-     *
-     * _.includes('pebbles', 'eb');
-     * // => true
-     */
-    function includes(collection, target, fromIndex, guard) {
-      var length = collection ? getLength(collection) : 0;
-      if (!isLength(length)) {
-        collection = values(collection);
-        length = collection.length;
-      }
-      if (!length) {
-        return false;
-      }
-      if (typeof fromIndex != 'number' || (guard && isIterateeCall(target, fromIndex, guard))) {
-        fromIndex = 0;
-      } else {
-        fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : (fromIndex || 0);
-      }
-      return (typeof collection == 'string' || !isArray(collection) && isString(collection))
-        ? (fromIndex < length && collection.indexOf(target, fromIndex) > -1)
-        : (getIndexOf(collection, target, fromIndex) > -1);
-    }
-
-    /**
-     * Creates an object composed of keys generated from the results of running
-     * each element of `collection` through `iteratee`. The corresponding value
-     * of each key is the last element responsible for generating the key. The
-     * iteratee function is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns the composed aggregate object.
-     * @example
-     *
-     * var keyData = [
-     *   { 'dir': 'left', 'code': 97 },
-     *   { 'dir': 'right', 'code': 100 }
-     * ];
-     *
-     * _.indexBy(keyData, 'dir');
-     * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }
-     *
-     * _.indexBy(keyData, function(object) {
-     *   return String.fromCharCode(object.code);
-     * });
-     * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }
-     *
-     * _.indexBy(keyData, function(object) {
-     *   return this.fromCharCode(object.code);
-     * }, String);
-     * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }
-     */
-    var indexBy = createAggregator(function(result, value, key) {
-      result[key] = value;
-    });
-
-    /**
-     * Invokes the method at `path` on each element in `collection`, returning
-     * an array of the results of each invoked method. Any additional arguments
-     * are provided to each invoked method. If `methodName` is a function it is
-     * invoked for, and `this` bound to, each element in `collection`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Array|Function|string} path The path of the method to invoke or
-     *  the function invoked per iteration.
-     * @param {...*} [args] The arguments to invoke the method with.
-     * @returns {Array} Returns the array of results.
-     * @example
-     *
-     * _.invoke([[5, 1, 7], [3, 2, 1]], 'sort');
-     * // => [[1, 5, 7], [1, 2, 3]]
-     *
-     * _.invoke([123, 456], String.prototype.split, '');
-     * // => [['1', '2', '3'], ['4', '5', '6']]
-     */
-    var invoke = restParam(function(collection, path, args) {
-      var index = -1,
-          isFunc = typeof path == 'function',
-          isProp = isKey(path),
-          length = getLength(collection),
-          result = isLength(length) ? Array(length) : [];
-
-      baseEach(collection, function(value) {
-        var func = isFunc ? path : (isProp && value != null && value[path]);
-        result[++index] = func ? func.apply(value, args) : invokePath(value, path, args);
-      });
-      return result;
-    });
-
-    /**
-     * Creates an array of values by running each element in `collection` through
-     * `iteratee`. The `iteratee` is bound to `thisArg` and invoked with three
-     * arguments: (value, index|key, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * Many lodash methods are guarded to work as interatees for methods like
-     * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
-     *
-     * The guarded methods are:
-     * `ary`, `callback`, `chunk`, `clone`, `create`, `curry`, `curryRight`, `drop`,
-     * `dropRight`, `every`, `fill`, `flatten`, `invert`, `max`, `min`, `parseInt`,
-     * `slice`, `sortBy`, `take`, `takeRight`, `template`, `trim`, `trimLeft`,
-     * `trimRight`, `trunc`, `random`, `range`, `sample`, `some`, `uniq`, and `words`
-     *
-     * @static
-     * @memberOf _
-     * @alias collect
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array} Returns the new mapped array.
-     * @example
-     *
-     * function timesThree(n) {
-     *   return n * 3;
-     * }
-     *
-     * _.map([1, 2], timesThree);
-     * // => [3, 6]
-     *
-     * _.map({ 'a': 1, 'b': 2 }, timesThree);
-     * // => [3, 6] (iteration order is not guaranteed)
-     *
-     * var users = [
-     *   { 'user': 'barney' },
-     *   { 'user': 'fred' }
-     * ];
-     *
-     * // using the `_.property` callback shorthand
-     * _.map(users, 'user');
-     * // => ['barney', 'fred']
-     */
-    function map(collection, iteratee, thisArg) {
-      var func = isArray(collection) ? arrayMap : baseMap;
-      iteratee = getCallback(iteratee, thisArg, 3);
-      return func(collection, iteratee);
-    }
-
-    /**
-     * Creates an array of elements split into two groups, the first of which
-     * contains elements `predicate` returns truthy for, while the second of which
-     * contains elements `predicate` returns falsey for. The predicate is bound
-     * to `thisArg` and invoked with three arguments: (value, index|key, collection).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the array of grouped elements.
-     * @example
-     *
-     * _.partition([1, 2, 3], function(n) {
-     *   return n % 2;
-     * });
-     * // => [[1, 3], [2]]
-     *
-     * _.partition([1.2, 2.3, 3.4], function(n) {
-     *   return this.floor(n) % 2;
-     * }, Math);
-     * // => [[1.2, 3.4], [2.3]]
-     *
-     * var users = [
-     *   { 'user': 'barney',  'age': 36, 'active': false },
-     *   { 'user': 'fred',    'age': 40, 'active': true },
-     *   { 'user': 'pebbles', 'age': 1,  'active': false }
-     * ];
-     *
-     * var mapper = function(array) {
-     *   return _.pluck(array, 'user');
-     * };
-     *
-     * // using the `_.matches` callback shorthand
-     * _.map(_.partition(users, { 'age': 1, 'active': false }), mapper);
-     * // => [['pebbles'], ['barney', 'fred']]
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.map(_.partition(users, 'active', false), mapper);
-     * // => [['barney', 'pebbles'], ['fred']]
-     *
-     * // using the `_.property` callback shorthand
-     * _.map(_.partition(users, 'active'), mapper);
-     * // => [['fred'], ['barney', 'pebbles']]
-     */
-    var partition = createAggregator(function(result, value, key) {
-      result[key ? 0 : 1].push(value);
-    }, function() { return [[], []]; });
-
-    /**
-     * Gets the property value of `path` from all elements in `collection`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Array|string} path The path of the property to pluck.
-     * @returns {Array} Returns the property values.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 40 }
-     * ];
-     *
-     * _.pluck(users, 'user');
-     * // => ['barney', 'fred']
-     *
-     * var userIndex = _.indexBy(users, 'user');
-     * _.pluck(userIndex, 'age');
-     * // => [36, 40] (iteration order is not guaranteed)
-     */
-    function pluck(collection, path) {
-      return map(collection, property(path));
-    }
-
-    /**
-     * Reduces `collection` to a value which is the accumulated result of running
-     * each element in `collection` through `iteratee`, where each successive
-     * invocation is supplied the return value of the previous. If `accumulator`
-     * is not provided the first element of `collection` is used as the initial
-     * value. The `iteratee` is bound to `thisArg` and invoked with four arguments:
-     * (accumulator, value, index|key, collection).
-     *
-     * Many lodash methods are guarded to work as interatees for methods like
-     * `_.reduce`, `_.reduceRight`, and `_.transform`.
-     *
-     * The guarded methods are:
-     * `assign`, `defaults`, `includes`, `merge`, `sortByAll`, and `sortByOrder`
-     *
-     * @static
-     * @memberOf _
-     * @alias foldl, inject
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [accumulator] The initial value.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {*} Returns the accumulated value.
-     * @example
-     *
-     * _.reduce([1, 2], function(total, n) {
-     *   return total + n;
-     * });
-     * // => 3
-     *
-     * _.reduce({ 'a': 1, 'b': 2 }, function(result, n, key) {
-     *   result[key] = n * 3;
-     *   return result;
-     * }, {});
-     * // => { 'a': 3, 'b': 6 } (iteration order is not guaranteed)
-     */
-    var reduce = createReduce(arrayReduce, baseEach);
-
-    /**
-     * This method is like `_.reduce` except that it iterates over elements of
-     * `collection` from right to left.
-     *
-     * @static
-     * @memberOf _
-     * @alias foldr
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [accumulator] The initial value.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {*} Returns the accumulated value.
-     * @example
-     *
-     * var array = [[0, 1], [2, 3], [4, 5]];
-     *
-     * _.reduceRight(array, function(flattened, other) {
-     *   return flattened.concat(other);
-     * }, []);
-     * // => [4, 5, 2, 3, 0, 1]
-     */
-    var reduceRight =  createReduce(arrayReduceRight, baseEachRight);
-
-    /**
-     * The opposite of `_.filter`; this method returns the elements of `collection`
-     * that `predicate` does **not** return truthy for.
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Array} Returns the new filtered array.
-     * @example
-     *
-     * _.reject([1, 2, 3, 4], function(n) {
-     *   return n % 2 == 0;
-     * });
-     * // => [1, 3]
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36, 'active': false },
-     *   { 'user': 'fred',   'age': 40, 'active': true }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.pluck(_.reject(users, { 'age': 40, 'active': true }), 'user');
-     * // => ['barney']
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.pluck(_.reject(users, 'active', false), 'user');
-     * // => ['fred']
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.reject(users, 'active'), 'user');
-     * // => ['barney']
-     */
-    function reject(collection, predicate, thisArg) {
-      var func = isArray(collection) ? arrayFilter : baseFilter;
-      predicate = getCallback(predicate, thisArg, 3);
-      return func(collection, function(value, index, collection) {
-        return !predicate(value, index, collection);
-      });
-    }
-
-    /**
-     * Gets a random element or `n` random elements from a collection.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to sample.
-     * @param {number} [n] The number of elements to sample.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {*} Returns the random sample(s).
-     * @example
-     *
-     * _.sample([1, 2, 3, 4]);
-     * // => 2
-     *
-     * _.sample([1, 2, 3, 4], 2);
-     * // => [3, 1]
-     */
-    function sample(collection, n, guard) {
-      if (guard ? isIterateeCall(collection, n, guard) : n == null) {
-        collection = toIterable(collection);
-        var length = collection.length;
-        return length > 0 ? collection[baseRandom(0, length - 1)] : undefined;
-      }
-      var result = shuffle(collection);
-      result.length = nativeMin(n < 0 ? 0 : (+n || 0), result.length);
-      return result;
-    }
-
-    /**
-     * Creates an array of shuffled values, using a version of the
-     * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to shuffle.
-     * @returns {Array} Returns the new shuffled array.
-     * @example
-     *
-     * _.shuffle([1, 2, 3, 4]);
-     * // => [4, 1, 3, 2]
-     */
-    function shuffle(collection) {
-      collection = toIterable(collection);
-
-      var index = -1,
-          length = collection.length,
-          result = Array(length);
-
-      while (++index < length) {
-        var rand = baseRandom(0, index);
-        if (index != rand) {
-          result[index] = result[rand];
-        }
-        result[rand] = collection[index];
-      }
-      return result;
-    }
-
-    /**
-     * Gets the size of `collection` by returning its length for array-like
-     * values or the number of own enumerable properties for objects.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to inspect.
-     * @returns {number} Returns the size of `collection`.
-     * @example
-     *
-     * _.size([1, 2, 3]);
-     * // => 3
-     *
-     * _.size({ 'a': 1, 'b': 2 });
-     * // => 2
-     *
-     * _.size('pebbles');
-     * // => 7
-     */
-    function size(collection) {
-      var length = collection ? getLength(collection) : 0;
-      return isLength(length) ? length : keys(collection).length;
-    }
-
-    /**
-     * Checks if `predicate` returns truthy for **any** element of `collection`.
-     * The function returns as soon as it finds a passing value and does not iterate
-     * over the entire collection. The predicate is bound to `thisArg` and invoked
-     * with three arguments: (value, index|key, collection).
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @alias any
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {boolean} Returns `true` if any element passes the predicate check,
-     *  else `false`.
-     * @example
-     *
-     * _.some([null, 0, 'yes', false], Boolean);
-     * // => true
-     *
-     * var users = [
-     *   { 'user': 'barney', 'active': true },
-     *   { 'user': 'fred',   'active': false }
-     * ];
-     *
-     * // using the `_.matches` callback shorthand
-     * _.some(users, { 'user': 'barney', 'active': false });
-     * // => false
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.some(users, 'active', false);
-     * // => true
-     *
-     * // using the `_.property` callback shorthand
-     * _.some(users, 'active');
-     * // => true
-     */
-    function some(collection, predicate, thisArg) {
-      var func = isArray(collection) ? arraySome : baseSome;
-      if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
-        predicate = null;
-      }
-      if (typeof predicate != 'function' || thisArg !== undefined) {
-        predicate = getCallback(predicate, thisArg, 3);
-      }
-      return func(collection, predicate);
-    }
-
-    /**
-     * Creates an array of elements, sorted in ascending order by the results of
-     * running each element in a collection through `iteratee`. This method performs
-     * a stable sort, that is, it preserves the original sort order of equal elements.
-     * The `iteratee` is bound to `thisArg` and invoked with three arguments:
-     * (value, index|key, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array} Returns the new sorted array.
-     * @example
-     *
-     * _.sortBy([1, 2, 3], function(n) {
-     *   return Math.sin(n);
-     * });
-     * // => [3, 1, 2]
-     *
-     * _.sortBy([1, 2, 3], function(n) {
-     *   return this.sin(n);
-     * }, Math);
-     * // => [3, 1, 2]
-     *
-     * var users = [
-     *   { 'user': 'fred' },
-     *   { 'user': 'pebbles' },
-     *   { 'user': 'barney' }
-     * ];
-     *
-     * // using the `_.property` callback shorthand
-     * _.pluck(_.sortBy(users, 'user'), 'user');
-     * // => ['barney', 'fred', 'pebbles']
-     */
-    function sortBy(collection, iteratee, thisArg) {
-      if (collection == null) {
-        return [];
-      }
-      if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-        iteratee = null;
-      }
-      var index = -1;
-      iteratee = getCallback(iteratee, thisArg, 3);
-
-      var result = baseMap(collection, function(value, key, collection) {
-        return { 'criteria': iteratee(value, key, collection), 'index': ++index, 'value': value };
-      });
-      return baseSortBy(result, compareAscending);
-    }
-
-    /**
-     * This method is like `_.sortBy` except that it can sort by multiple iteratees
-     * or property names.
-     *
-     * If a property name is provided for an iteratee the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If an object is provided for an iteratee the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {...(Function|Function[]|Object|Object[]|string|string[])} iteratees
-     *  The iteratees to sort by, specified as individual values or arrays of values.
-     * @returns {Array} Returns the new sorted array.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'fred',   'age': 48 },
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 42 },
-     *   { 'user': 'barney', 'age': 34 }
-     * ];
-     *
-     * _.map(_.sortByAll(users, ['user', 'age']), _.values);
-     * // => [['barney', 34], ['barney', 36], ['fred', 42], ['fred', 48]]
-     *
-     * _.map(_.sortByAll(users, 'user', function(chr) {
-     *   return Math.floor(chr.age / 10);
-     * }), _.values);
-     * // => [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
-     */
-    var sortByAll = restParam(function(collection, iteratees) {
-      if (collection == null) {
-        return [];
-      }
-      var guard = iteratees[2];
-      if (guard && isIterateeCall(iteratees[0], iteratees[1], guard)) {
-        iteratees.length = 1;
-      }
-      return baseSortByOrder(collection, baseFlatten(iteratees), []);
-    });
-
-    /**
-     * This method is like `_.sortByAll` except that it allows specifying the
-     * sort orders of the iteratees to sort by. A truthy value in `orders` will
-     * sort the corresponding property name in ascending order while a falsey
-     * value will sort it in descending order.
-     *
-     * If a property name is provided for an iteratee the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If an object is provided for an iteratee the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
-     * @param {boolean[]} orders The sort orders of `iteratees`.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.reduce`.
-     * @returns {Array} Returns the new sorted array.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'fred',   'age': 48 },
-     *   { 'user': 'barney', 'age': 34 },
-     *   { 'user': 'fred',   'age': 42 },
-     *   { 'user': 'barney', 'age': 36 }
-     * ];
-     *
-     * // sort by `user` in ascending order and by `age` in descending order
-     * _.map(_.sortByOrder(users, ['user', 'age'], [true, false]), _.values);
-     * // => [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
-     */
-    function sortByOrder(collection, iteratees, orders, guard) {
-      if (collection == null) {
-        return [];
-      }
-      if (guard && isIterateeCall(iteratees, orders, guard)) {
-        orders = null;
-      }
-      if (!isArray(iteratees)) {
-        iteratees = iteratees == null ? [] : [iteratees];
-      }
-      if (!isArray(orders)) {
-        orders = orders == null ? [] : [orders];
-      }
-      return baseSortByOrder(collection, iteratees, orders);
-    }
-
-    /**
-     * Performs a deep comparison between each element in `collection` and the
-     * source object, returning an array of all elements that have equivalent
-     * property values.
-     *
-     * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-     * numbers, `Object` objects, regexes, and strings. Objects are compared by
-     * their own, not inherited, enumerable properties. For comparing a single
-     * own or inherited property value see `_.matchesProperty`.
-     *
-     * @static
-     * @memberOf _
-     * @category Collection
-     * @param {Array|Object|string} collection The collection to search.
-     * @param {Object} source The object of property values to match.
-     * @returns {Array} Returns the new filtered array.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36, 'active': false, 'pets': ['hoppy'] },
-     *   { 'user': 'fred',   'age': 40, 'active': true, 'pets': ['baby puss', 'dino'] }
-     * ];
-     *
-     * _.pluck(_.where(users, { 'age': 36, 'active': false }), 'user');
-     * // => ['barney']
-     *
-     * _.pluck(_.where(users, { 'pets': ['dino'] }), 'user');
-     * // => ['fred']
-     */
-    function where(collection, source) {
-      return filter(collection, baseMatches(source));
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Gets the number of milliseconds that have elapsed since the Unix epoch
-     * (1 January 1970 00:00:00 UTC).
-     *
-     * @static
-     * @memberOf _
-     * @category Date
-     * @example
-     *
-     * _.defer(function(stamp) {
-     *   console.log(_.now() - stamp);
-     * }, _.now());
-     * // => logs the number of milliseconds it took for the deferred function to be invoked
-     */
-    var now = nativeNow || function() {
-      return new Date().getTime();
-    };
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * The opposite of `_.before`; this method creates a function that invokes
-     * `func` once it is called `n` or more times.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {number} n The number of calls before `func` is invoked.
-     * @param {Function} func The function to restrict.
-     * @returns {Function} Returns the new restricted function.
-     * @example
-     *
-     * var saves = ['profile', 'settings'];
-     *
-     * var done = _.after(saves.length, function() {
-     *   console.log('done saving!');
-     * });
-     *
-     * _.forEach(saves, function(type) {
-     *   asyncSave({ 'type': type, 'complete': done });
-     * });
-     * // => logs 'done saving!' after the two async saves have completed
-     */
-    function after(n, func) {
-      if (typeof func != 'function') {
-        if (typeof n == 'function') {
-          var temp = n;
-          n = func;
-          func = temp;
-        } else {
-          throw new TypeError(FUNC_ERROR_TEXT);
-        }
-      }
-      n = nativeIsFinite(n = +n) ? n : 0;
-      return function() {
-        if (--n < 1) {
-          return func.apply(this, arguments);
-        }
-      };
-    }
-
-    /**
-     * Creates a function that accepts up to `n` arguments ignoring any
-     * additional arguments.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to cap arguments for.
-     * @param {number} [n=func.length] The arity cap.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * _.map(['6', '8', '10'], _.ary(parseInt, 1));
-     * // => [6, 8, 10]
-     */
-    function ary(func, n, guard) {
-      if (guard && isIterateeCall(func, n, guard)) {
-        n = null;
-      }
-      n = (func && n == null) ? func.length : nativeMax(+n || 0, 0);
-      return createWrapper(func, ARY_FLAG, null, null, null, null, n);
-    }
-
-    /**
-     * Creates a function that invokes `func`, with the `this` binding and arguments
-     * of the created function, while it is called less than `n` times. Subsequent
-     * calls to the created function return the result of the last `func` invocation.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {number} n The number of calls at which `func` is no longer invoked.
-     * @param {Function} func The function to restrict.
-     * @returns {Function} Returns the new restricted function.
-     * @example
-     *
-     * jQuery('#add').on('click', _.before(5, addContactToList));
-     * // => allows adding up to 4 contacts to the list
-     */
-    function before(n, func) {
-      var result;
-      if (typeof func != 'function') {
-        if (typeof n == 'function') {
-          var temp = n;
-          n = func;
-          func = temp;
-        } else {
-          throw new TypeError(FUNC_ERROR_TEXT);
-        }
-      }
-      return function() {
-        if (--n > 0) {
-          result = func.apply(this, arguments);
-        }
-        if (n <= 1) {
-          func = null;
-        }
-        return result;
-      };
-    }
-
-    /**
-     * Creates a function that invokes `func` with the `this` binding of `thisArg`
-     * and prepends any additional `_.bind` arguments to those provided to the
-     * bound function.
-     *
-     * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,
-     * may be used as a placeholder for partially applied arguments.
-     *
-     * **Note:** Unlike native `Function#bind` this method does not set the "length"
-     * property of bound functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to bind.
-     * @param {*} thisArg The `this` binding of `func`.
-     * @param {...*} [partials] The arguments to be partially applied.
-     * @returns {Function} Returns the new bound function.
-     * @example
-     *
-     * var greet = function(greeting, punctuation) {
-     *   return greeting + ' ' + this.user + punctuation;
-     * };
-     *
-     * var object = { 'user': 'fred' };
-     *
-     * var bound = _.bind(greet, object, 'hi');
-     * bound('!');
-     * // => 'hi fred!'
-     *
-     * // using placeholders
-     * var bound = _.bind(greet, object, _, '!');
-     * bound('hi');
-     * // => 'hi fred!'
-     */
-    var bind = restParam(function(func, thisArg, partials) {
-      var bitmask = BIND_FLAG;
-      if (partials.length) {
-        var holders = replaceHolders(partials, bind.placeholder);
-        bitmask |= PARTIAL_FLAG;
-      }
-      return createWrapper(func, bitmask, thisArg, partials, holders);
-    });
-
-    /**
-     * Binds methods of an object to the object itself, overwriting the existing
-     * method. Method names may be specified as individual arguments or as arrays
-     * of method names. If no method names are provided all enumerable function
-     * properties, own and inherited, of `object` are bound.
-     *
-     * **Note:** This method does not set the "length" property of bound functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Object} object The object to bind and assign the bound methods to.
-     * @param {...(string|string[])} [methodNames] The object method names to bind,
-     *  specified as individual method names or arrays of method names.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * var view = {
-     *   'label': 'docs',
-     *   'onClick': function() {
-     *     console.log('clicked ' + this.label);
-     *   }
-     * };
-     *
-     * _.bindAll(view);
-     * jQuery('#docs').on('click', view.onClick);
-     * // => logs 'clicked docs' when the element is clicked
-     */
-    var bindAll = restParam(function(object, methodNames) {
-      methodNames = methodNames.length ? baseFlatten(methodNames) : functions(object);
-
-      var index = -1,
-          length = methodNames.length;
-
-      while (++index < length) {
-        var key = methodNames[index];
-        object[key] = createWrapper(object[key], BIND_FLAG, object);
-      }
-      return object;
-    });
-
-    /**
-     * Creates a function that invokes the method at `object[key]` and prepends
-     * any additional `_.bindKey` arguments to those provided to the bound function.
-     *
-     * This method differs from `_.bind` by allowing bound functions to reference
-     * methods that may be redefined or don't yet exist.
-     * See [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)
-     * for more details.
-     *
-     * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic
-     * builds, may be used as a placeholder for partially applied arguments.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Object} object The object the method belongs to.
-     * @param {string} key The key of the method.
-     * @param {...*} [partials] The arguments to be partially applied.
-     * @returns {Function} Returns the new bound function.
-     * @example
-     *
-     * var object = {
-     *   'user': 'fred',
-     *   'greet': function(greeting, punctuation) {
-     *     return greeting + ' ' + this.user + punctuation;
-     *   }
-     * };
-     *
-     * var bound = _.bindKey(object, 'greet', 'hi');
-     * bound('!');
-     * // => 'hi fred!'
-     *
-     * object.greet = function(greeting, punctuation) {
-     *   return greeting + 'ya ' + this.user + punctuation;
-     * };
-     *
-     * bound('!');
-     * // => 'hiya fred!'
-     *
-     * // using placeholders
-     * var bound = _.bindKey(object, 'greet', _, '!');
-     * bound('hi');
-     * // => 'hiya fred!'
-     */
-    var bindKey = restParam(function(object, key, partials) {
-      var bitmask = BIND_FLAG | BIND_KEY_FLAG;
-      if (partials.length) {
-        var holders = replaceHolders(partials, bindKey.placeholder);
-        bitmask |= PARTIAL_FLAG;
-      }
-      return createWrapper(key, bitmask, object, partials, holders);
-    });
-
-    /**
-     * Creates a function that accepts one or more arguments of `func` that when
-     * called either invokes `func` returning its result, if all `func` arguments
-     * have been provided, or returns a function that accepts one or more of the
-     * remaining `func` arguments, and so on. The arity of `func` may be specified
-     * if `func.length` is not sufficient.
-     *
-     * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,
-     * may be used as a placeholder for provided arguments.
-     *
-     * **Note:** This method does not set the "length" property of curried functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to curry.
-     * @param {number} [arity=func.length] The arity of `func`.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Function} Returns the new curried function.
-     * @example
-     *
-     * var abc = function(a, b, c) {
-     *   return [a, b, c];
-     * };
-     *
-     * var curried = _.curry(abc);
-     *
-     * curried(1)(2)(3);
-     * // => [1, 2, 3]
-     *
-     * curried(1, 2)(3);
-     * // => [1, 2, 3]
-     *
-     * curried(1, 2, 3);
-     * // => [1, 2, 3]
-     *
-     * // using placeholders
-     * curried(1)(_, 3)(2);
-     * // => [1, 2, 3]
-     */
-    var curry = createCurry(CURRY_FLAG);
-
-    /**
-     * This method is like `_.curry` except that arguments are applied to `func`
-     * in the manner of `_.partialRight` instead of `_.partial`.
-     *
-     * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic
-     * builds, may be used as a placeholder for provided arguments.
-     *
-     * **Note:** This method does not set the "length" property of curried functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to curry.
-     * @param {number} [arity=func.length] The arity of `func`.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Function} Returns the new curried function.
-     * @example
-     *
-     * var abc = function(a, b, c) {
-     *   return [a, b, c];
-     * };
-     *
-     * var curried = _.curryRight(abc);
-     *
-     * curried(3)(2)(1);
-     * // => [1, 2, 3]
-     *
-     * curried(2, 3)(1);
-     * // => [1, 2, 3]
-     *
-     * curried(1, 2, 3);
-     * // => [1, 2, 3]
-     *
-     * // using placeholders
-     * curried(3)(1, _)(2);
-     * // => [1, 2, 3]
-     */
-    var curryRight = createCurry(CURRY_RIGHT_FLAG);
-
-    /**
-     * Creates a function that delays invoking `func` until after `wait` milliseconds
-     * have elapsed since the last time it was invoked. The created function comes
-     * with a `cancel` method to cancel delayed invocations. Provide an options
-     * object to indicate that `func` should be invoked on the leading and/or
-     * trailing edge of the `wait` timeout. Subsequent calls to the debounced
-     * function return the result of the last `func` invocation.
-     *
-     * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked
-     * on the trailing edge of the timeout only if the the debounced function is
-     * invoked more than once during the `wait` timeout.
-     *
-     * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)
-     * for details over the differences between `_.debounce` and `_.throttle`.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to debounce.
-     * @param {number} [wait=0] The number of milliseconds to delay.
-     * @param {Object} [options] The options object.
-     * @param {boolean} [options.leading=false] Specify invoking on the leading
-     *  edge of the timeout.
-     * @param {number} [options.maxWait] The maximum time `func` is allowed to be
-     *  delayed before it is invoked.
-     * @param {boolean} [options.trailing=true] Specify invoking on the trailing
-     *  edge of the timeout.
-     * @returns {Function} Returns the new debounced function.
-     * @example
-     *
-     * // avoid costly calculations while the window size is in flux
-     * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
-     *
-     * // invoke `sendMail` when the click event is fired, debouncing subsequent calls
-     * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {
-     *   'leading': true,
-     *   'trailing': false
-     * }));
-     *
-     * // ensure `batchLog` is invoked once after 1 second of debounced calls
-     * var source = new EventSource('/stream');
-     * jQuery(source).on('message', _.debounce(batchLog, 250, {
-     *   'maxWait': 1000
-     * }));
-     *
-     * // cancel a debounced call
-     * var todoChanges = _.debounce(batchLog, 1000);
-     * Object.observe(models.todo, todoChanges);
-     *
-     * Object.observe(models, function(changes) {
-     *   if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {
-     *     todoChanges.cancel();
-     *   }
-     * }, ['delete']);
-     *
-     * // ...at some point `models.todo` is changed
-     * models.todo.completed = true;
-     *
-     * // ...before 1 second has passed `models.todo` is deleted
-     * // which cancels the debounced `todoChanges` call
-     * delete models.todo;
-     */
-    function debounce(func, wait, options) {
-      var args,
-          maxTimeoutId,
-          result,
-          stamp,
-          thisArg,
-          timeoutId,
-          trailingCall,
-          lastCalled = 0,
-          maxWait = false,
-          trailing = true;
-
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      wait = wait < 0 ? 0 : (+wait || 0);
-      if (options === true) {
-        var leading = true;
-        trailing = false;
-      } else if (isObject(options)) {
-        leading = options.leading;
-        maxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);
-        trailing = 'trailing' in options ? options.trailing : trailing;
-      }
-
-      function cancel() {
-        if (timeoutId) {
-          clearTimeout(timeoutId);
-        }
-        if (maxTimeoutId) {
-          clearTimeout(maxTimeoutId);
-        }
-        maxTimeoutId = timeoutId = trailingCall = undefined;
-      }
-
-      function delayed() {
-        var remaining = wait - (now() - stamp);
-        if (remaining <= 0 || remaining > wait) {
-          if (maxTimeoutId) {
-            clearTimeout(maxTimeoutId);
-          }
-          var isCalled = trailingCall;
-          maxTimeoutId = timeoutId = trailingCall = undefined;
-          if (isCalled) {
-            lastCalled = now();
-            result = func.apply(thisArg, args);
-            if (!timeoutId && !maxTimeoutId) {
-              args = thisArg = null;
-            }
-          }
-        } else {
-          timeoutId = setTimeout(delayed, remaining);
-        }
-      }
-
-      function maxDelayed() {
-        if (timeoutId) {
-          clearTimeout(timeoutId);
-        }
-        maxTimeoutId = timeoutId = trailingCall = undefined;
-        if (trailing || (maxWait !== wait)) {
-          lastCalled = now();
-          result = func.apply(thisArg, args);
-          if (!timeoutId && !maxTimeoutId) {
-            args = thisArg = null;
-          }
-        }
-      }
-
-      function debounced() {
-        args = arguments;
-        stamp = now();
-        thisArg = this;
-        trailingCall = trailing && (timeoutId || !leading);
-
-        if (maxWait === false) {
-          var leadingCall = leading && !timeoutId;
-        } else {
-          if (!maxTimeoutId && !leading) {
-            lastCalled = stamp;
-          }
-          var remaining = maxWait - (stamp - lastCalled),
-              isCalled = remaining <= 0 || remaining > maxWait;
-
-          if (isCalled) {
-            if (maxTimeoutId) {
-              maxTimeoutId = clearTimeout(maxTimeoutId);
-            }
-            lastCalled = stamp;
-            result = func.apply(thisArg, args);
-          }
-          else if (!maxTimeoutId) {
-            maxTimeoutId = setTimeout(maxDelayed, remaining);
-          }
-        }
-        if (isCalled && timeoutId) {
-          timeoutId = clearTimeout(timeoutId);
-        }
-        else if (!timeoutId && wait !== maxWait) {
-          timeoutId = setTimeout(delayed, wait);
-        }
-        if (leadingCall) {
-          isCalled = true;
-          result = func.apply(thisArg, args);
-        }
-        if (isCalled && !timeoutId && !maxTimeoutId) {
-          args = thisArg = null;
-        }
-        return result;
-      }
-      debounced.cancel = cancel;
-      return debounced;
-    }
-
-    /**
-     * Defers invoking the `func` until the current call stack has cleared. Any
-     * additional arguments are provided to `func` when it is invoked.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to defer.
-     * @param {...*} [args] The arguments to invoke the function with.
-     * @returns {number} Returns the timer id.
-     * @example
-     *
-     * _.defer(function(text) {
-     *   console.log(text);
-     * }, 'deferred');
-     * // logs 'deferred' after one or more milliseconds
-     */
-    var defer = restParam(function(func, args) {
-      return baseDelay(func, 1, args);
-    });
-
-    /**
-     * Invokes `func` after `wait` milliseconds. Any additional arguments are
-     * provided to `func` when it is invoked.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to delay.
-     * @param {number} wait The number of milliseconds to delay invocation.
-     * @param {...*} [args] The arguments to invoke the function with.
-     * @returns {number} Returns the timer id.
-     * @example
-     *
-     * _.delay(function(text) {
-     *   console.log(text);
-     * }, 1000, 'later');
-     * // => logs 'later' after one second
-     */
-    var delay = restParam(function(func, wait, args) {
-      return baseDelay(func, wait, args);
-    });
-
-    /**
-     * Creates a function that returns the result of invoking the provided
-     * functions with the `this` binding of the created function, where each
-     * successive invocation is supplied the return value of the previous.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {...Function} [funcs] Functions to invoke.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * function square(n) {
-     *   return n * n;
-     * }
-     *
-     * var addSquare = _.flow(_.add, square);
-     * addSquare(1, 2);
-     * // => 9
-     */
-    var flow = createFlow();
-
-    /**
-     * This method is like `_.flow` except that it creates a function that
-     * invokes the provided functions from right to left.
-     *
-     * @static
-     * @memberOf _
-     * @alias backflow, compose
-     * @category Function
-     * @param {...Function} [funcs] Functions to invoke.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * function square(n) {
-     *   return n * n;
-     * }
-     *
-     * var addSquare = _.flowRight(square, _.add);
-     * addSquare(1, 2);
-     * // => 9
-     */
-    var flowRight = createFlow(true);
-
-    /**
-     * Creates a function that memoizes the result of `func`. If `resolver` is
-     * provided it determines the cache key for storing the result based on the
-     * arguments provided to the memoized function. By default, the first argument
-     * provided to the memoized function is coerced to a string and used as the
-     * cache key. The `func` is invoked with the `this` binding of the memoized
-     * function.
-     *
-     * **Note:** The cache is exposed as the `cache` property on the memoized
-     * function. Its creation may be customized by replacing the `_.memoize.Cache`
-     * constructor with one whose instances implement the [`Map`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-properties-of-the-map-prototype-object)
-     * method interface of `get`, `has`, and `set`.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to have its output memoized.
-     * @param {Function} [resolver] The function to resolve the cache key.
-     * @returns {Function} Returns the new memoizing function.
-     * @example
-     *
-     * var upperCase = _.memoize(function(string) {
-     *   return string.toUpperCase();
-     * });
-     *
-     * upperCase('fred');
-     * // => 'FRED'
-     *
-     * // modifying the result cache
-     * upperCase.cache.set('fred', 'BARNEY');
-     * upperCase('fred');
-     * // => 'BARNEY'
-     *
-     * // replacing `_.memoize.Cache`
-     * var object = { 'user': 'fred' };
-     * var other = { 'user': 'barney' };
-     * var identity = _.memoize(_.identity);
-     *
-     * identity(object);
-     * // => { 'user': 'fred' }
-     * identity(other);
-     * // => { 'user': 'fred' }
-     *
-     * _.memoize.Cache = WeakMap;
-     * var identity = _.memoize(_.identity);
-     *
-     * identity(object);
-     * // => { 'user': 'fred' }
-     * identity(other);
-     * // => { 'user': 'barney' }
-     */
-    function memoize(func, resolver) {
-      if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      var memoized = function() {
-        var args = arguments,
-            cache = memoized.cache,
-            key = resolver ? resolver.apply(this, args) : args[0];
-
-        if (cache.has(key)) {
-          return cache.get(key);
-        }
-        var result = func.apply(this, args);
-        cache.set(key, result);
-        return result;
-      };
-      memoized.cache = new memoize.Cache;
-      return memoized;
-    }
-
-    /**
-     * Creates a function that negates the result of the predicate `func`. The
-     * `func` predicate is invoked with the `this` binding and arguments of the
-     * created function.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} predicate The predicate to negate.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * function isEven(n) {
-     *   return n % 2 == 0;
-     * }
-     *
-     * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
-     * // => [1, 3, 5]
-     */
-    function negate(predicate) {
-      if (typeof predicate != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      return function() {
-        return !predicate.apply(this, arguments);
-      };
-    }
-
-    /**
-     * Creates a function that is restricted to invoking `func` once. Repeat calls
-     * to the function return the value of the first call. The `func` is invoked
-     * with the `this` binding and arguments of the created function.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to restrict.
-     * @returns {Function} Returns the new restricted function.
-     * @example
-     *
-     * var initialize = _.once(createApplication);
-     * initialize();
-     * initialize();
-     * // `initialize` invokes `createApplication` once
-     */
-    function once(func) {
-      return before(2, func);
-    }
-
-    /**
-     * Creates a function that invokes `func` with `partial` arguments prepended
-     * to those provided to the new function. This method is like `_.bind` except
-     * it does **not** alter the `this` binding.
-     *
-     * The `_.partial.placeholder` value, which defaults to `_` in monolithic
-     * builds, may be used as a placeholder for partially applied arguments.
-     *
-     * **Note:** This method does not set the "length" property of partially
-     * applied functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to partially apply arguments to.
-     * @param {...*} [partials] The arguments to be partially applied.
-     * @returns {Function} Returns the new partially applied function.
-     * @example
-     *
-     * var greet = function(greeting, name) {
-     *   return greeting + ' ' + name;
-     * };
-     *
-     * var sayHelloTo = _.partial(greet, 'hello');
-     * sayHelloTo('fred');
-     * // => 'hello fred'
-     *
-     * // using placeholders
-     * var greetFred = _.partial(greet, _, 'fred');
-     * greetFred('hi');
-     * // => 'hi fred'
-     */
-    var partial = createPartial(PARTIAL_FLAG);
-
-    /**
-     * This method is like `_.partial` except that partially applied arguments
-     * are appended to those provided to the new function.
-     *
-     * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic
-     * builds, may be used as a placeholder for partially applied arguments.
-     *
-     * **Note:** This method does not set the "length" property of partially
-     * applied functions.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to partially apply arguments to.
-     * @param {...*} [partials] The arguments to be partially applied.
-     * @returns {Function} Returns the new partially applied function.
-     * @example
-     *
-     * var greet = function(greeting, name) {
-     *   return greeting + ' ' + name;
-     * };
-     *
-     * var greetFred = _.partialRight(greet, 'fred');
-     * greetFred('hi');
-     * // => 'hi fred'
-     *
-     * // using placeholders
-     * var sayHelloTo = _.partialRight(greet, 'hello', _);
-     * sayHelloTo('fred');
-     * // => 'hello fred'
-     */
-    var partialRight = createPartial(PARTIAL_RIGHT_FLAG);
-
-    /**
-     * Creates a function that invokes `func` with arguments arranged according
-     * to the specified indexes where the argument value at the first index is
-     * provided as the first argument, the argument value at the second index is
-     * provided as the second argument, and so on.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to rearrange arguments for.
-     * @param {...(number|number[])} indexes The arranged argument indexes,
-     *  specified as individual indexes or arrays of indexes.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var rearged = _.rearg(function(a, b, c) {
-     *   return [a, b, c];
-     * }, 2, 0, 1);
-     *
-     * rearged('b', 'c', 'a')
-     * // => ['a', 'b', 'c']
-     *
-     * var map = _.rearg(_.map, [1, 0]);
-     * map(function(n) {
-     *   return n * 3;
-     * }, [1, 2, 3]);
-     * // => [3, 6, 9]
-     */
-    var rearg = restParam(function(func, indexes) {
-      return createWrapper(func, REARG_FLAG, null, null, null, baseFlatten(indexes));
-    });
-
-    /**
-     * Creates a function that invokes `func` with the `this` binding of the
-     * created function and arguments from `start` and beyond provided as an array.
-     *
-     * **Note:** This method is based on the [rest parameter](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/rest_parameters).
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to apply a rest parameter to.
-     * @param {number} [start=func.length-1] The start position of the rest parameter.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var say = _.restParam(function(what, names) {
-     *   return what + ' ' + _.initial(names).join(', ') +
-     *     (_.size(names) > 1 ? ', & ' : '') + _.last(names);
-     * });
-     *
-     * say('hello', 'fred', 'barney', 'pebbles');
-     * // => 'hello fred, barney, & pebbles'
-     */
-    function restParam(func, start) {
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      start = nativeMax(start === undefined ? (func.length - 1) : (+start || 0), 0);
-      return function() {
-        var args = arguments,
-            index = -1,
-            length = nativeMax(args.length - start, 0),
-            rest = Array(length);
-
-        while (++index < length) {
-          rest[index] = args[start + index];
-        }
-        switch (start) {
-          case 0: return func.call(this, rest);
-          case 1: return func.call(this, args[0], rest);
-          case 2: return func.call(this, args[0], args[1], rest);
-        }
-        var otherArgs = Array(start + 1);
-        index = -1;
-        while (++index < start) {
-          otherArgs[index] = args[index];
-        }
-        otherArgs[start] = rest;
-        return func.apply(this, otherArgs);
-      };
-    }
-
-    /**
-     * Creates a function that invokes `func` with the `this` binding of the created
-     * function and an array of arguments much like [`Function#apply`](https://es5.github.io/#x15.3.4.3).
-     *
-     * **Note:** This method is based on the [spread operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator).
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to spread arguments over.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var say = _.spread(function(who, what) {
-     *   return who + ' says ' + what;
-     * });
-     *
-     * say(['fred', 'hello']);
-     * // => 'fred says hello'
-     *
-     * // with a Promise
-     * var numbers = Promise.all([
-     *   Promise.resolve(40),
-     *   Promise.resolve(36)
-     * ]);
-     *
-     * numbers.then(_.spread(function(x, y) {
-     *   return x + y;
-     * }));
-     * // => a Promise of 76
-     */
-    function spread(func) {
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      return function(array) {
-        return func.apply(this, array);
-      };
-    }
-
-    /**
-     * Creates a function that only invokes `func` at most once per every `wait`
-     * milliseconds. The created function comes with a `cancel` method to cancel
-     * delayed invocations. Provide an options object to indicate that `func`
-     * should be invoked on the leading and/or trailing edge of the `wait` timeout.
-     * Subsequent calls to the throttled function return the result of the last
-     * `func` call.
-     *
-     * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked
-     * on the trailing edge of the timeout only if the the throttled function is
-     * invoked more than once during the `wait` timeout.
-     *
-     * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)
-     * for details over the differences between `_.throttle` and `_.debounce`.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {Function} func The function to throttle.
-     * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
-     * @param {Object} [options] The options object.
-     * @param {boolean} [options.leading=true] Specify invoking on the leading
-     *  edge of the timeout.
-     * @param {boolean} [options.trailing=true] Specify invoking on the trailing
-     *  edge of the timeout.
-     * @returns {Function} Returns the new throttled function.
-     * @example
-     *
-     * // avoid excessively updating the position while scrolling
-     * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
-     *
-     * // invoke `renewToken` when the click event is fired, but not more than once every 5 minutes
-     * jQuery('.interactive').on('click', _.throttle(renewToken, 300000, {
-     *   'trailing': false
-     * }));
-     *
-     * // cancel a trailing throttled call
-     * jQuery(window).on('popstate', throttled.cancel);
-     */
-    function throttle(func, wait, options) {
-      var leading = true,
-          trailing = true;
-
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      if (options === false) {
-        leading = false;
-      } else if (isObject(options)) {
-        leading = 'leading' in options ? !!options.leading : leading;
-        trailing = 'trailing' in options ? !!options.trailing : trailing;
-      }
-      debounceOptions.leading = leading;
-      debounceOptions.maxWait = +wait;
-      debounceOptions.trailing = trailing;
-      return debounce(func, wait, debounceOptions);
-    }
-
-    /**
-     * Creates a function that provides `value` to the wrapper function as its
-     * first argument. Any additional arguments provided to the function are
-     * appended to those provided to the wrapper function. The wrapper is invoked
-     * with the `this` binding of the created function.
-     *
-     * @static
-     * @memberOf _
-     * @category Function
-     * @param {*} value The value to wrap.
-     * @param {Function} wrapper The wrapper function.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var p = _.wrap(_.escape, function(func, text) {
-     *   return '<p>' + func(text) + '</p>';
-     * });
-     *
-     * p('fred, barney, & pebbles');
-     * // => '<p>fred, barney, &amp; pebbles</p>'
-     */
-    function wrap(value, wrapper) {
-      wrapper = wrapper == null ? identity : wrapper;
-      return createWrapper(wrapper, PARTIAL_FLAG, null, [value], []);
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Creates a clone of `value`. If `isDeep` is `true` nested objects are cloned,
-     * otherwise they are assigned by reference. If `customizer` is provided it is
-     * invoked to produce the cloned values. If `customizer` returns `undefined`
-     * cloning is handled by the method instead. The `customizer` is bound to
-     * `thisArg` and invoked with two argument; (value [, index|key, object]).
-     *
-     * **Note:** This method is loosely based on the
-     * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
-     * The enumerable properties of `arguments` objects and objects created by
-     * constructors other than `Object` are cloned to plain `Object` objects. An
-     * empty object is returned for uncloneable values such as functions, DOM nodes,
-     * Maps, Sets, and WeakMaps.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to clone.
-     * @param {boolean} [isDeep] Specify a deep clone.
-     * @param {Function} [customizer] The function to customize cloning values.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {*} Returns the cloned value.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney' },
-     *   { 'user': 'fred' }
-     * ];
-     *
-     * var shallow = _.clone(users);
-     * shallow[0] === users[0];
-     * // => true
-     *
-     * var deep = _.clone(users, true);
-     * deep[0] === users[0];
-     * // => false
-     *
-     * // using a customizer callback
-     * var el = _.clone(document.body, function(value) {
-     *   if (_.isElement(value)) {
-     *     return value.cloneNode(false);
-     *   }
-     * });
-     *
-     * el === document.body
-     * // => false
-     * el.nodeName
-     * // => BODY
-     * el.childNodes.length;
-     * // => 0
-     */
-    function clone(value, isDeep, customizer, thisArg) {
-      if (isDeep && typeof isDeep != 'boolean' && isIterateeCall(value, isDeep, customizer)) {
-        isDeep = false;
-      }
-      else if (typeof isDeep == 'function') {
-        thisArg = customizer;
-        customizer = isDeep;
-        isDeep = false;
-      }
-      customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
-      return baseClone(value, isDeep, customizer);
-    }
-
-    /**
-     * Creates a deep clone of `value`. If `customizer` is provided it is invoked
-     * to produce the cloned values. If `customizer` returns `undefined` cloning
-     * is handled by the method instead. The `customizer` is bound to `thisArg`
-     * and invoked with two argument; (value [, index|key, object]).
-     *
-     * **Note:** This method is loosely based on the
-     * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
-     * The enumerable properties of `arguments` objects and objects created by
-     * constructors other than `Object` are cloned to plain `Object` objects. An
-     * empty object is returned for uncloneable values such as functions, DOM nodes,
-     * Maps, Sets, and WeakMaps.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to deep clone.
-     * @param {Function} [customizer] The function to customize cloning values.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {*} Returns the deep cloned value.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney' },
-     *   { 'user': 'fred' }
-     * ];
-     *
-     * var deep = _.cloneDeep(users);
-     * deep[0] === users[0];
-     * // => false
-     *
-     * // using a customizer callback
-     * var el = _.cloneDeep(document.body, function(value) {
-     *   if (_.isElement(value)) {
-     *     return value.cloneNode(true);
-     *   }
-     * });
-     *
-     * el === document.body
-     * // => false
-     * el.nodeName
-     * // => BODY
-     * el.childNodes.length;
-     * // => 20
-     */
-    function cloneDeep(value, customizer, thisArg) {
-      customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
-      return baseClone(value, true, customizer);
-    }
-
-    /**
-     * Checks if `value` is classified as an `arguments` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isArguments(function() { return arguments; }());
-     * // => true
-     *
-     * _.isArguments([1, 2, 3]);
-     * // => false
-     */
-    function isArguments(value) {
-      var length = isObjectLike(value) ? value.length : undefined;
-      return isLength(length) && objToString.call(value) == argsTag;
-    }
-
-    /**
-     * Checks if `value` is classified as an `Array` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isArray([1, 2, 3]);
-     * // => true
-     *
-     * _.isArray(function() { return arguments; }());
-     * // => false
-     */
-    var isArray = nativeIsArray || function(value) {
-      return isObjectLike(value) && isLength(value.length) && objToString.call(value) == arrayTag;
-    };
-
-    /**
-     * Checks if `value` is classified as a boolean primitive or object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isBoolean(false);
-     * // => true
-     *
-     * _.isBoolean(null);
-     * // => false
-     */
-    function isBoolean(value) {
-      return value === true || value === false || (isObjectLike(value) && objToString.call(value) == boolTag);
-    }
-
-    /**
-     * Checks if `value` is classified as a `Date` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isDate(new Date);
-     * // => true
-     *
-     * _.isDate('Mon April 23 2012');
-     * // => false
-     */
-    function isDate(value) {
-      return isObjectLike(value) && objToString.call(value) == dateTag;
-    }
-
-    /**
-     * Checks if `value` is a DOM element.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.
-     * @example
-     *
-     * _.isElement(document.body);
-     * // => true
-     *
-     * _.isElement('<body>');
-     * // => false
-     */
-    function isElement(value) {
-      return !!value && value.nodeType === 1 && isObjectLike(value) &&
-        (objToString.call(value).indexOf('Element') > -1);
-    }
-    // Fallback for environments without DOM support.
-    if (!support.dom) {
-      isElement = function(value) {
-        return !!value && value.nodeType === 1 && isObjectLike(value) && !isPlainObject(value);
-      };
-    }
-
-    /**
-     * Checks if `value` is empty. A value is considered empty unless it is an
-     * `arguments` object, array, string, or jQuery-like collection with a length
-     * greater than `0` or an object with own enumerable properties.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {Array|Object|string} value The value to inspect.
-     * @returns {boolean} Returns `true` if `value` is empty, else `false`.
-     * @example
-     *
-     * _.isEmpty(null);
-     * // => true
-     *
-     * _.isEmpty(true);
-     * // => true
-     *
-     * _.isEmpty(1);
-     * // => true
-     *
-     * _.isEmpty([1, 2, 3]);
-     * // => false
-     *
-     * _.isEmpty({ 'a': 1 });
-     * // => false
-     */
-    function isEmpty(value) {
-      if (value == null) {
-        return true;
-      }
-      var length = getLength(value);
-      if (isLength(length) && (isArray(value) || isString(value) || isArguments(value) ||
-          (isObjectLike(value) && isFunction(value.splice)))) {
-        return !length;
-      }
-      return !keys(value).length;
-    }
-
-    /**
-     * Performs a deep comparison between two values to determine if they are
-     * equivalent. If `customizer` is provided it is invoked to compare values.
-     * If `customizer` returns `undefined` comparisons are handled by the method
-     * instead. The `customizer` is bound to `thisArg` and invoked with three
-     * arguments: (value, other [, index|key]).
-     *
-     * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-     * numbers, `Object` objects, regexes, and strings. Objects are compared by
-     * their own, not inherited, enumerable properties. Functions and DOM nodes
-     * are **not** supported. Provide a customizer function to extend support
-     * for comparing other values.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to compare.
-     * @param {*} other The other value to compare.
-     * @param {Function} [customizer] The function to customize value comparisons.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
-     * @example
-     *
-     * var object = { 'user': 'fred' };
-     * var other = { 'user': 'fred' };
-     *
-     * object == other;
-     * // => false
-     *
-     * _.isEqual(object, other);
-     * // => true
-     *
-     * // using a customizer callback
-     * var array = ['hello', 'goodbye'];
-     * var other = ['hi', 'goodbye'];
-     *
-     * _.isEqual(array, other, function(value, other) {
-     *   if (_.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/)) {
-     *     return true;
-     *   }
-     * });
-     * // => true
-     */
-    function isEqual(value, other, customizer, thisArg) {
-      customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
-      if (!customizer && isStrictComparable(value) && isStrictComparable(other)) {
-        return value === other;
-      }
-      var result = customizer ? customizer(value, other) : undefined;
-      return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
-    }
-
-    /**
-     * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
-     * `SyntaxError`, `TypeError`, or `URIError` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is an error object, else `false`.
-     * @example
-     *
-     * _.isError(new Error);
-     * // => true
-     *
-     * _.isError(Error);
-     * // => false
-     */
-    function isError(value) {
-      return isObjectLike(value) && typeof value.message == 'string' && objToString.call(value) == errorTag;
-    }
-
-    /**
-     * Checks if `value` is a finite primitive number.
-     *
-     * **Note:** This method is based on [`Number.isFinite`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.
-     * @example
-     *
-     * _.isFinite(10);
-     * // => true
-     *
-     * _.isFinite('10');
-     * // => false
-     *
-     * _.isFinite(true);
-     * // => false
-     *
-     * _.isFinite(Object(10));
-     * // => false
-     *
-     * _.isFinite(Infinity);
-     * // => false
-     */
-    var isFinite = nativeNumIsFinite || function(value) {
-      return typeof value == 'number' && nativeIsFinite(value);
-    };
-
-    /**
-     * Checks if `value` is classified as a `Function` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isFunction(_);
-     * // => true
-     *
-     * _.isFunction(/abc/);
-     * // => false
-     */
-    var isFunction = !(baseIsFunction(/x/) || (Uint8Array && !baseIsFunction(Uint8Array))) ? baseIsFunction : function(value) {
-      // The use of `Object#toString` avoids issues with the `typeof` operator
-      // in older versions of Chrome and Safari which return 'function' for regexes
-      // and Safari 8 equivalents which return 'object' for typed array constructors.
-      return objToString.call(value) == funcTag;
-    };
-
-    /**
-     * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.
-     * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is an object, else `false`.
-     * @example
-     *
-     * _.isObject({});
-     * // => true
-     *
-     * _.isObject([1, 2, 3]);
-     * // => true
-     *
-     * _.isObject(1);
-     * // => false
-     */
-    function isObject(value) {
-      // Avoid a V8 JIT bug in Chrome 19-20.
-      // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
-      var type = typeof value;
-      return type == 'function' || (!!value && type == 'object');
-    }
-
-    /**
-     * Performs a deep comparison between `object` and `source` to determine if
-     * `object` contains equivalent property values. If `customizer` is provided
-     * it is invoked to compare values. If `customizer` returns `undefined`
-     * comparisons are handled by the method instead. The `customizer` is bound
-     * to `thisArg` and invoked with three arguments: (value, other, index|key).
-     *
-     * **Note:** This method supports comparing properties of arrays, booleans,
-     * `Date` objects, numbers, `Object` objects, regexes, and strings. Functions
-     * and DOM nodes are **not** supported. Provide a customizer function to extend
-     * support for comparing other values.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {Object} object The object to inspect.
-     * @param {Object} source The object of property values to match.
-     * @param {Function} [customizer] The function to customize value comparisons.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {boolean} Returns `true` if `object` is a match, else `false`.
-     * @example
-     *
-     * var object = { 'user': 'fred', 'age': 40 };
-     *
-     * _.isMatch(object, { 'age': 40 });
-     * // => true
-     *
-     * _.isMatch(object, { 'age': 36 });
-     * // => false
-     *
-     * // using a customizer callback
-     * var object = { 'greeting': 'hello' };
-     * var source = { 'greeting': 'hi' };
-     *
-     * _.isMatch(object, source, function(value, other) {
-     *   return _.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/) || undefined;
-     * });
-     * // => true
-     */
-    function isMatch(object, source, customizer, thisArg) {
-      var props = keys(source),
-          length = props.length;
-
-      if (!length) {
-        return true;
-      }
-      if (object == null) {
-        return false;
-      }
-      customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
-      object = toObject(object);
-      if (!customizer && length == 1) {
-        var key = props[0],
-            value = source[key];
-
-        if (isStrictComparable(value)) {
-          return value === object[key] && (value !== undefined || (key in object));
-        }
-      }
-      var values = Array(length),
-          strictCompareFlags = Array(length);
-
-      while (length--) {
-        value = values[length] = source[props[length]];
-        strictCompareFlags[length] = isStrictComparable(value);
-      }
-      return baseIsMatch(object, props, values, strictCompareFlags, customizer);
-    }
-
-    /**
-     * Checks if `value` is `NaN`.
-     *
-     * **Note:** This method is not the same as [`isNaN`](https://es5.github.io/#x15.1.2.4)
-     * which returns `true` for `undefined` and other non-numeric values.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
-     * @example
-     *
-     * _.isNaN(NaN);
-     * // => true
-     *
-     * _.isNaN(new Number(NaN));
-     * // => true
-     *
-     * isNaN(undefined);
-     * // => true
-     *
-     * _.isNaN(undefined);
-     * // => false
-     */
-    function isNaN(value) {
-      // An `NaN` primitive is the only value that is not equal to itself.
-      // Perform the `toStringTag` check first to avoid errors with some host objects in IE.
-      return isNumber(value) && value != +value;
-    }
-
-    /**
-     * Checks if `value` is a native function.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a native function, else `false`.
-     * @example
-     *
-     * _.isNative(Array.prototype.push);
-     * // => true
-     *
-     * _.isNative(_);
-     * // => false
-     */
-    function isNative(value) {
-      if (value == null) {
-        return false;
-      }
-      if (objToString.call(value) == funcTag) {
-        return reIsNative.test(fnToString.call(value));
-      }
-      return isObjectLike(value) && reIsHostCtor.test(value);
-    }
-
-    /**
-     * Checks if `value` is `null`.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is `null`, else `false`.
-     * @example
-     *
-     * _.isNull(null);
-     * // => true
-     *
-     * _.isNull(void 0);
-     * // => false
-     */
-    function isNull(value) {
-      return value === null;
-    }
-
-    /**
-     * Checks if `value` is classified as a `Number` primitive or object.
-     *
-     * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are classified
-     * as numbers, use the `_.isFinite` method.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isNumber(8.4);
-     * // => true
-     *
-     * _.isNumber(NaN);
-     * // => true
-     *
-     * _.isNumber('8.4');
-     * // => false
-     */
-    function isNumber(value) {
-      return typeof value == 'number' || (isObjectLike(value) && objToString.call(value) == numberTag);
-    }
-
-    /**
-     * Checks if `value` is a plain object, that is, an object created by the
-     * `Object` constructor or one with a `[[Prototype]]` of `null`.
-     *
-     * **Note:** This method assumes objects created by the `Object` constructor
-     * have no inherited enumerable properties.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     * }
-     *
-     * _.isPlainObject(new Foo);
-     * // => false
-     *
-     * _.isPlainObject([1, 2, 3]);
-     * // => false
-     *
-     * _.isPlainObject({ 'x': 0, 'y': 0 });
-     * // => true
-     *
-     * _.isPlainObject(Object.create(null));
-     * // => true
-     */
-    var isPlainObject = !getPrototypeOf ? shimIsPlainObject : function(value) {
-      if (!(value && objToString.call(value) == objectTag)) {
-        return false;
-      }
-      var valueOf = value.valueOf,
-          objProto = isNative(valueOf) && (objProto = getPrototypeOf(valueOf)) && getPrototypeOf(objProto);
-
-      return objProto
-        ? (value == objProto || getPrototypeOf(value) == objProto)
-        : shimIsPlainObject(value);
-    };
-
-    /**
-     * Checks if `value` is classified as a `RegExp` object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isRegExp(/abc/);
-     * // => true
-     *
-     * _.isRegExp('/abc/');
-     * // => false
-     */
-    function isRegExp(value) {
-      return (isObjectLike(value) && objToString.call(value) == regexpTag) || false;
-    }
-
-    /**
-     * Checks if `value` is classified as a `String` primitive or object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isString('abc');
-     * // => true
-     *
-     * _.isString(1);
-     * // => false
-     */
-    function isString(value) {
-      return typeof value == 'string' || (isObjectLike(value) && objToString.call(value) == stringTag);
-    }
-
-    /**
-     * Checks if `value` is classified as a typed array.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-     * @example
-     *
-     * _.isTypedArray(new Uint8Array);
-     * // => true
-     *
-     * _.isTypedArray([]);
-     * // => false
-     */
-    function isTypedArray(value) {
-      return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objToString.call(value)];
-    }
-
-    /**
-     * Checks if `value` is `undefined`.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to check.
-     * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
-     * @example
-     *
-     * _.isUndefined(void 0);
-     * // => true
-     *
-     * _.isUndefined(null);
-     * // => false
-     */
-    function isUndefined(value) {
-      return value === undefined;
-    }
-
-    /**
-     * Converts `value` to an array.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to convert.
-     * @returns {Array} Returns the converted array.
-     * @example
-     *
-     * (function() {
-     *   return _.toArray(arguments).slice(1);
-     * }(1, 2, 3));
-     * // => [2, 3]
-     */
-    function toArray(value) {
-      var length = value ? getLength(value) : 0;
-      if (!isLength(length)) {
-        return values(value);
-      }
-      if (!length) {
-        return [];
-      }
-      return arrayCopy(value);
-    }
-
-    /**
-     * Converts `value` to a plain object flattening inherited enumerable
-     * properties of `value` to own properties of the plain object.
-     *
-     * @static
-     * @memberOf _
-     * @category Lang
-     * @param {*} value The value to convert.
-     * @returns {Object} Returns the converted plain object.
-     * @example
-     *
-     * function Foo() {
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.assign({ 'a': 1 }, new Foo);
-     * // => { 'a': 1, 'b': 2 }
-     *
-     * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
-     * // => { 'a': 1, 'b': 2, 'c': 3 }
-     */
-    function toPlainObject(value) {
-      return baseCopy(value, keysIn(value));
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Assigns own enumerable properties of source object(s) to the destination
-     * object. Subsequent sources overwrite property assignments of previous sources.
-     * If `customizer` is provided it is invoked to produce the assigned values.
-     * The `customizer` is bound to `thisArg` and invoked with five arguments:
-     * (objectValue, sourceValue, key, object, source).
-     *
-     * **Note:** This method mutates `object` and is based on
-     * [`Object.assign`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).
-     *
-     *
-     * @static
-     * @memberOf _
-     * @alias extend
-     * @category Object
-     * @param {Object} object The destination object.
-     * @param {...Object} [sources] The source objects.
-     * @param {Function} [customizer] The function to customize assigned values.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * _.assign({ 'user': 'barney' }, { 'age': 40 }, { 'user': 'fred' });
-     * // => { 'user': 'fred', 'age': 40 }
-     *
-     * // using a customizer callback
-     * var defaults = _.partialRight(_.assign, function(value, other) {
-     *   return _.isUndefined(value) ? other : value;
-     * });
-     *
-     * defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
-     * // => { 'user': 'barney', 'age': 36 }
-     */
-    var assign = createAssigner(function(object, source, customizer) {
-      return customizer
-        ? assignWith(object, source, customizer)
-        : baseAssign(object, source);
-    });
-
-    /**
-     * Creates an object that inherits from the given `prototype` object. If a
-     * `properties` object is provided its own enumerable properties are assigned
-     * to the created object.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} prototype The object to inherit from.
-     * @param {Object} [properties] The properties to assign to the object.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Object} Returns the new object.
-     * @example
-     *
-     * function Shape() {
-     *   this.x = 0;
-     *   this.y = 0;
-     * }
-     *
-     * function Circle() {
-     *   Shape.call(this);
-     * }
-     *
-     * Circle.prototype = _.create(Shape.prototype, {
-     *   'constructor': Circle
-     * });
-     *
-     * var circle = new Circle;
-     * circle instanceof Circle;
-     * // => true
-     *
-     * circle instanceof Shape;
-     * // => true
-     */
-    function create(prototype, properties, guard) {
-      var result = baseCreate(prototype);
-      if (guard && isIterateeCall(prototype, properties, guard)) {
-        properties = null;
-      }
-      return properties ? baseAssign(result, properties) : result;
-    }
-
-    /**
-     * Assigns own enumerable properties of source object(s) to the destination
-     * object for all destination properties that resolve to `undefined`. Once a
-     * property is set, additional values of the same property are ignored.
-     *
-     * **Note:** This method mutates `object`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The destination object.
-     * @param {...Object} [sources] The source objects.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * _.defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
-     * // => { 'user': 'barney', 'age': 36 }
-     */
-    var defaults = restParam(function(args) {
-      var object = args[0];
-      if (object == null) {
-        return object;
-      }
-      args.push(assignDefaults);
-      return assign.apply(undefined, args);
-    });
-
-    /**
-     * This method is like `_.find` except that it returns the key of the first
-     * element `predicate` returns truthy for instead of the element itself.
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {string|undefined} Returns the key of the matched element, else `undefined`.
-     * @example
-     *
-     * var users = {
-     *   'barney':  { 'age': 36, 'active': true },
-     *   'fred':    { 'age': 40, 'active': false },
-     *   'pebbles': { 'age': 1,  'active': true }
-     * };
-     *
-     * _.findKey(users, function(chr) {
-     *   return chr.age < 40;
-     * });
-     * // => 'barney' (iteration order is not guaranteed)
-     *
-     * // using the `_.matches` callback shorthand
-     * _.findKey(users, { 'age': 1, 'active': true });
-     * // => 'pebbles'
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.findKey(users, 'active', false);
-     * // => 'fred'
-     *
-     * // using the `_.property` callback shorthand
-     * _.findKey(users, 'active');
-     * // => 'barney'
-     */
-    var findKey = createFindKey(baseForOwn);
-
-    /**
-     * This method is like `_.findKey` except that it iterates over elements of
-     * a collection in the opposite order.
-     *
-     * If a property name is provided for `predicate` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `predicate` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to search.
-     * @param {Function|Object|string} [predicate=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {string|undefined} Returns the key of the matched element, else `undefined`.
-     * @example
-     *
-     * var users = {
-     *   'barney':  { 'age': 36, 'active': true },
-     *   'fred':    { 'age': 40, 'active': false },
-     *   'pebbles': { 'age': 1,  'active': true }
-     * };
-     *
-     * _.findLastKey(users, function(chr) {
-     *   return chr.age < 40;
-     * });
-     * // => returns `pebbles` assuming `_.findKey` returns `barney`
-     *
-     * // using the `_.matches` callback shorthand
-     * _.findLastKey(users, { 'age': 36, 'active': true });
-     * // => 'barney'
-     *
-     * // using the `_.matchesProperty` callback shorthand
-     * _.findLastKey(users, 'active', false);
-     * // => 'fred'
-     *
-     * // using the `_.property` callback shorthand
-     * _.findLastKey(users, 'active');
-     * // => 'pebbles'
-     */
-    var findLastKey = createFindKey(baseForOwnRight);
-
-    /**
-     * Iterates over own and inherited enumerable properties of an object invoking
-     * `iteratee` for each property. The `iteratee` is bound to `thisArg` and invoked
-     * with three arguments: (value, key, object). Iteratee functions may exit
-     * iteration early by explicitly returning `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.forIn(new Foo, function(value, key) {
-     *   console.log(key);
-     * });
-     * // => logs 'a', 'b', and 'c' (iteration order is not guaranteed)
-     */
-    var forIn = createForIn(baseFor);
-
-    /**
-     * This method is like `_.forIn` except that it iterates over properties of
-     * `object` in the opposite order.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.forInRight(new Foo, function(value, key) {
-     *   console.log(key);
-     * });
-     * // => logs 'c', 'b', and 'a' assuming `_.forIn ` logs 'a', 'b', and 'c'
-     */
-    var forInRight = createForIn(baseForRight);
-
-    /**
-     * Iterates over own enumerable properties of an object invoking `iteratee`
-     * for each property. The `iteratee` is bound to `thisArg` and invoked with
-     * three arguments: (value, key, object). Iteratee functions may exit iteration
-     * early by explicitly returning `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.forOwn(new Foo, function(value, key) {
-     *   console.log(key);
-     * });
-     * // => logs 'a' and 'b' (iteration order is not guaranteed)
-     */
-    var forOwn = createForOwn(baseForOwn);
-
-    /**
-     * This method is like `_.forOwn` except that it iterates over properties of
-     * `object` in the opposite order.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.forOwnRight(new Foo, function(value, key) {
-     *   console.log(key);
-     * });
-     * // => logs 'b' and 'a' assuming `_.forOwn` logs 'a' and 'b'
-     */
-    var forOwnRight = createForOwn(baseForOwnRight);
-
-    /**
-     * Creates an array of function property names from all enumerable properties,
-     * own and inherited, of `object`.
-     *
-     * @static
-     * @memberOf _
-     * @alias methods
-     * @category Object
-     * @param {Object} object The object to inspect.
-     * @returns {Array} Returns the new array of property names.
-     * @example
-     *
-     * _.functions(_);
-     * // => ['after', 'ary', 'assign', ...]
-     */
-    function functions(object) {
-      return baseFunctions(object, keysIn(object));
-    }
-
-    /**
-     * Gets the property value of `path` on `object`. If the resolved value is
-     * `undefined` the `defaultValue` is used in its place.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @param {Array|string} path The path of the property to get.
-     * @param {*} [defaultValue] The value returned if the resolved value is `undefined`.
-     * @returns {*} Returns the resolved value.
-     * @example
-     *
-     * var object = { 'a': [{ 'b': { 'c': 3 } }] };
-     *
-     * _.get(object, 'a[0].b.c');
-     * // => 3
-     *
-     * _.get(object, ['a', '0', 'b', 'c']);
-     * // => 3
-     *
-     * _.get(object, 'a.b.c', 'default');
-     * // => 'default'
-     */
-    function get(object, path, defaultValue) {
-      var result = object == null ? undefined : baseGet(object, toPath(path), path + '');
-      return result === undefined ? defaultValue : result;
-    }
-
-    /**
-     * Checks if `path` is a direct property.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @param {Array|string} path The path to check.
-     * @returns {boolean} Returns `true` if `path` is a direct property, else `false`.
-     * @example
-     *
-     * var object = { 'a': { 'b': { 'c': 3 } } };
-     *
-     * _.has(object, 'a');
-     * // => true
-     *
-     * _.has(object, 'a.b.c');
-     * // => true
-     *
-     * _.has(object, ['a', 'b', 'c']);
-     * // => true
-     */
-    function has(object, path) {
-      if (object == null) {
-        return false;
-      }
-      var result = hasOwnProperty.call(object, path);
-      if (!result && !isKey(path)) {
-        path = toPath(path);
-        object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-        path = last(path);
-        result = object != null && hasOwnProperty.call(object, path);
-      }
-      return result;
-    }
-
-    /**
-     * Creates an object composed of the inverted keys and values of `object`.
-     * If `object` contains duplicate values, subsequent values overwrite property
-     * assignments of previous values unless `multiValue` is `true`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to invert.
-     * @param {boolean} [multiValue] Allow multiple values per key.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Object} Returns the new inverted object.
-     * @example
-     *
-     * var object = { 'a': 1, 'b': 2, 'c': 1 };
-     *
-     * _.invert(object);
-     * // => { '1': 'c', '2': 'b' }
-     *
-     * // with `multiValue`
-     * _.invert(object, true);
-     * // => { '1': ['a', 'c'], '2': ['b'] }
-     */
-    function invert(object, multiValue, guard) {
-      if (guard && isIterateeCall(object, multiValue, guard)) {
-        multiValue = null;
-      }
-      var index = -1,
-          props = keys(object),
-          length = props.length,
-          result = {};
-
-      while (++index < length) {
-        var key = props[index],
-            value = object[key];
-
-        if (multiValue) {
-          if (hasOwnProperty.call(result, value)) {
-            result[value].push(key);
-          } else {
-            result[value] = [key];
-          }
-        }
-        else {
-          result[value] = key;
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Creates an array of the own enumerable property names of `object`.
-     *
-     * **Note:** Non-object values are coerced to objects. See the
-     * [ES spec](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys)
-     * for more details.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of property names.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.keys(new Foo);
-     * // => ['a', 'b'] (iteration order is not guaranteed)
-     *
-     * _.keys('hi');
-     * // => ['0', '1']
-     */
-    var keys = !nativeKeys ? shimKeys : function(object) {
-      if (object) {
-        var Ctor = object.constructor,
-            length = object.length;
-      }
-      if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
-          (typeof object != 'function' && isLength(length))) {
-        return shimKeys(object);
-      }
-      return isObject(object) ? nativeKeys(object) : [];
-    };
-
-    /**
-     * Creates an array of the own and inherited enumerable property names of `object`.
-     *
-     * **Note:** Non-object values are coerced to objects.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of property names.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.keysIn(new Foo);
-     * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
-     */
-    function keysIn(object) {
-      if (object == null) {
-        return [];
-      }
-      if (!isObject(object)) {
-        object = Object(object);
-      }
-      var length = object.length;
-      length = (length && isLength(length) &&
-        (isArray(object) || (support.nonEnumArgs && isArguments(object))) && length) || 0;
-
-      var Ctor = object.constructor,
-          index = -1,
-          isProto = typeof Ctor == 'function' && Ctor.prototype === object,
-          result = Array(length),
-          skipIndexes = length > 0;
-
-      while (++index < length) {
-        result[index] = (index + '');
-      }
-      for (var key in object) {
-        if (!(skipIndexes && isIndex(key, length)) &&
-            !(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
-          result.push(key);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Creates an object with the same keys as `object` and values generated by
-     * running each own enumerable property of `object` through `iteratee`. The
-     * iteratee function is bound to `thisArg` and invoked with three arguments:
-     * (value, key, object).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to iterate over.
-     * @param {Function|Object|string} [iteratee=_.identity] The function invoked
-     *  per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Object} Returns the new mapped object.
-     * @example
-     *
-     * _.mapValues({ 'a': 1, 'b': 2 }, function(n) {
-     *   return n * 3;
-     * });
-     * // => { 'a': 3, 'b': 6 }
-     *
-     * var users = {
-     *   'fred':    { 'user': 'fred',    'age': 40 },
-     *   'pebbles': { 'user': 'pebbles', 'age': 1 }
-     * };
-     *
-     * // using the `_.property` callback shorthand
-     * _.mapValues(users, 'age');
-     * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
-     */
-    function mapValues(object, iteratee, thisArg) {
-      var result = {};
-      iteratee = getCallback(iteratee, thisArg, 3);
-
-      baseForOwn(object, function(value, key, object) {
-        result[key] = iteratee(value, key, object);
-      });
-      return result;
-    }
-
-    /**
-     * Recursively merges own enumerable properties of the source object(s), that
-     * don't resolve to `undefined` into the destination object. Subsequent sources
-     * overwrite property assignments of previous sources. If `customizer` is
-     * provided it is invoked to produce the merged values of the destination and
-     * source properties. If `customizer` returns `undefined` merging is handled
-     * by the method instead. The `customizer` is bound to `thisArg` and invoked
-     * with five arguments: (objectValue, sourceValue, key, object, source).
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The destination object.
-     * @param {...Object} [sources] The source objects.
-     * @param {Function} [customizer] The function to customize assigned values.
-     * @param {*} [thisArg] The `this` binding of `customizer`.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * var users = {
-     *   'data': [{ 'user': 'barney' }, { 'user': 'fred' }]
-     * };
-     *
-     * var ages = {
-     *   'data': [{ 'age': 36 }, { 'age': 40 }]
-     * };
-     *
-     * _.merge(users, ages);
-     * // => { 'data': [{ 'user': 'barney', 'age': 36 }, { 'user': 'fred', 'age': 40 }] }
-     *
-     * // using a customizer callback
-     * var object = {
-     *   'fruits': ['apple'],
-     *   'vegetables': ['beet']
-     * };
-     *
-     * var other = {
-     *   'fruits': ['banana'],
-     *   'vegetables': ['carrot']
-     * };
-     *
-     * _.merge(object, other, function(a, b) {
-     *   if (_.isArray(a)) {
-     *     return a.concat(b);
-     *   }
-     * });
-     * // => { 'fruits': ['apple', 'banana'], 'vegetables': ['beet', 'carrot'] }
-     */
-    var merge = createAssigner(baseMerge);
-
-    /**
-     * The opposite of `_.pick`; this method creates an object composed of the
-     * own and inherited enumerable properties of `object` that are not omitted.
-     * Property names may be specified as individual arguments or as arrays of
-     * property names. If `predicate` is provided it is invoked for each property
-     * of `object` omitting the properties `predicate` returns truthy for. The
-     * predicate is bound to `thisArg` and invoked with three arguments:
-     * (value, key, object).
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The source object.
-     * @param {Function|...(string|string[])} [predicate] The function invoked per
-     *  iteration or property names to omit, specified as individual property
-     *  names or arrays of property names.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Object} Returns the new object.
-     * @example
-     *
-     * var object = { 'user': 'fred', 'age': 40 };
-     *
-     * _.omit(object, 'age');
-     * // => { 'user': 'fred' }
-     *
-     * _.omit(object, _.isNumber);
-     * // => { 'user': 'fred' }
-     */
-    var omit = restParam(function(object, props) {
-      if (object == null) {
-        return {};
-      }
-      if (typeof props[0] != 'function') {
-        var props = arrayMap(baseFlatten(props), String);
-        return pickByArray(object, baseDifference(keysIn(object), props));
-      }
-      var predicate = bindCallback(props[0], props[1], 3);
-      return pickByCallback(object, function(value, key, object) {
-        return !predicate(value, key, object);
-      });
-    });
-
-    /**
-     * Creates a two dimensional array of the key-value pairs for `object`,
-     * e.g. `[[key1, value1], [key2, value2]]`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the new array of key-value pairs.
-     * @example
-     *
-     * _.pairs({ 'barney': 36, 'fred': 40 });
-     * // => [['barney', 36], ['fred', 40]] (iteration order is not guaranteed)
-     */
-    function pairs(object) {
-      var index = -1,
-          props = keys(object),
-          length = props.length,
-          result = Array(length);
-
-      while (++index < length) {
-        var key = props[index];
-        result[index] = [key, object[key]];
-      }
-      return result;
-    }
-
-    /**
-     * Creates an object composed of the picked `object` properties. Property
-     * names may be specified as individual arguments or as arrays of property
-     * names. If `predicate` is provided it is invoked for each property of `object`
-     * picking the properties `predicate` returns truthy for. The predicate is
-     * bound to `thisArg` and invoked with three arguments: (value, key, object).
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The source object.
-     * @param {Function|...(string|string[])} [predicate] The function invoked per
-     *  iteration or property names to pick, specified as individual property
-     *  names or arrays of property names.
-     * @param {*} [thisArg] The `this` binding of `predicate`.
-     * @returns {Object} Returns the new object.
-     * @example
-     *
-     * var object = { 'user': 'fred', 'age': 40 };
-     *
-     * _.pick(object, 'user');
-     * // => { 'user': 'fred' }
-     *
-     * _.pick(object, _.isString);
-     * // => { 'user': 'fred' }
-     */
-    var pick = restParam(function(object, props) {
-      if (object == null) {
-        return {};
-      }
-      return typeof props[0] == 'function'
-        ? pickByCallback(object, bindCallback(props[0], props[1], 3))
-        : pickByArray(object, baseFlatten(props));
-    });
-
-    /**
-     * This method is like `_.get` except that if the resolved value is a function
-     * it is invoked with the `this` binding of its parent object and its result
-     * is returned.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @param {Array|string} path The path of the property to resolve.
-     * @param {*} [defaultValue] The value returned if the resolved value is `undefined`.
-     * @returns {*} Returns the resolved value.
-     * @example
-     *
-     * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };
-     *
-     * _.result(object, 'a[0].b.c1');
-     * // => 3
-     *
-     * _.result(object, 'a[0].b.c2');
-     * // => 4
-     *
-     * _.result(object, 'a.b.c', 'default');
-     * // => 'default'
-     *
-     * _.result(object, 'a.b.c', _.constant('default'));
-     * // => 'default'
-     */
-    function result(object, path, defaultValue) {
-      var result = object == null ? undefined : object[path];
-      if (result === undefined) {
-        if (object != null && !isKey(path, object)) {
-          path = toPath(path);
-          object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-          result = object == null ? undefined : object[last(path)];
-        }
-        result = result === undefined ? defaultValue : result;
-      }
-      return isFunction(result) ? result.call(object) : result;
-    }
-
-    /**
-     * Sets the property value of `path` on `object`. If a portion of `path`
-     * does not exist it is created.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to augment.
-     * @param {Array|string} path The path of the property to set.
-     * @param {*} value The value to set.
-     * @returns {Object} Returns `object`.
-     * @example
-     *
-     * var object = { 'a': [{ 'b': { 'c': 3 } }] };
-     *
-     * _.set(object, 'a[0].b.c', 4);
-     * console.log(object.a[0].b.c);
-     * // => 4
-     *
-     * _.set(object, 'x[0].y.z', 5);
-     * console.log(object.x[0].y.z);
-     * // => 5
-     */
-    function set(object, path, value) {
-      if (object == null) {
-        return object;
-      }
-      var pathKey = (path + '');
-      path = (object[pathKey] != null || isKey(path, object)) ? [pathKey] : toPath(path);
-
-      var index = -1,
-          length = path.length,
-          endIndex = length - 1,
-          nested = object;
-
-      while (nested != null && ++index < length) {
-        var key = path[index];
-        if (isObject(nested)) {
-          if (index == endIndex) {
-            nested[key] = value;
-          } else if (nested[key] == null) {
-            nested[key] = isIndex(path[index + 1]) ? [] : {};
-          }
-        }
-        nested = nested[key];
-      }
-      return object;
-    }
-
-    /**
-     * An alternative to `_.reduce`; this method transforms `object` to a new
-     * `accumulator` object which is the result of running each of its own enumerable
-     * properties through `iteratee`, with each invocation potentially mutating
-     * the `accumulator` object. The `iteratee` is bound to `thisArg` and invoked
-     * with four arguments: (accumulator, value, key, object). Iteratee functions
-     * may exit iteration early by explicitly returning `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Array|Object} object The object to iterate over.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [accumulator] The custom accumulator value.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {*} Returns the accumulated value.
-     * @example
-     *
-     * _.transform([2, 3, 4], function(result, n) {
-     *   result.push(n *= n);
-     *   return n % 2 == 0;
-     * });
-     * // => [4, 9]
-     *
-     * _.transform({ 'a': 1, 'b': 2 }, function(result, n, key) {
-     *   result[key] = n * 3;
-     * });
-     * // => { 'a': 3, 'b': 6 }
-     */
-    function transform(object, iteratee, accumulator, thisArg) {
-      var isArr = isArray(object) || isTypedArray(object);
-      iteratee = getCallback(iteratee, thisArg, 4);
-
-      if (accumulator == null) {
-        if (isArr || isObject(object)) {
-          var Ctor = object.constructor;
-          if (isArr) {
-            accumulator = isArray(object) ? new Ctor : [];
-          } else {
-            accumulator = baseCreate(isFunction(Ctor) && Ctor.prototype);
-          }
-        } else {
-          accumulator = {};
-        }
-      }
-      (isArr ? arrayEach : baseForOwn)(object, function(value, index, object) {
-        return iteratee(accumulator, value, index, object);
-      });
-      return accumulator;
-    }
-
-    /**
-     * Creates an array of the own enumerable property values of `object`.
-     *
-     * **Note:** Non-object values are coerced to objects.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of property values.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.values(new Foo);
-     * // => [1, 2] (iteration order is not guaranteed)
-     *
-     * _.values('hi');
-     * // => ['h', 'i']
-     */
-    function values(object) {
-      return baseValues(object, keys(object));
-    }
-
-    /**
-     * Creates an array of the own and inherited enumerable property values
-     * of `object`.
-     *
-     * **Note:** Non-object values are coerced to objects.
-     *
-     * @static
-     * @memberOf _
-     * @category Object
-     * @param {Object} object The object to query.
-     * @returns {Array} Returns the array of property values.
-     * @example
-     *
-     * function Foo() {
-     *   this.a = 1;
-     *   this.b = 2;
-     * }
-     *
-     * Foo.prototype.c = 3;
-     *
-     * _.valuesIn(new Foo);
-     * // => [1, 2, 3] (iteration order is not guaranteed)
-     */
-    function valuesIn(object) {
-      return baseValues(object, keysIn(object));
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Checks if `n` is between `start` and up to but not including, `end`. If
-     * `end` is not specified it is set to `start` with `start` then set to `0`.
-     *
-     * @static
-     * @memberOf _
-     * @category Number
-     * @param {number} n The number to check.
-     * @param {number} [start=0] The start of the range.
-     * @param {number} end The end of the range.
-     * @returns {boolean} Returns `true` if `n` is in the range, else `false`.
-     * @example
-     *
-     * _.inRange(3, 2, 4);
-     * // => true
-     *
-     * _.inRange(4, 8);
-     * // => true
-     *
-     * _.inRange(4, 2);
-     * // => false
-     *
-     * _.inRange(2, 2);
-     * // => false
-     *
-     * _.inRange(1.2, 2);
-     * // => true
-     *
-     * _.inRange(5.2, 4);
-     * // => false
-     */
-    function inRange(value, start, end) {
-      start = +start || 0;
-      if (typeof end === 'undefined') {
-        end = start;
-        start = 0;
-      } else {
-        end = +end || 0;
-      }
-      return value >= nativeMin(start, end) && value < nativeMax(start, end);
-    }
-
-    /**
-     * Produces a random number between `min` and `max` (inclusive). If only one
-     * argument is provided a number between `0` and the given number is returned.
-     * If `floating` is `true`, or either `min` or `max` are floats, a floating-point
-     * number is returned instead of an integer.
-     *
-     * @static
-     * @memberOf _
-     * @category Number
-     * @param {number} [min=0] The minimum possible value.
-     * @param {number} [max=1] The maximum possible value.
-     * @param {boolean} [floating] Specify returning a floating-point number.
-     * @returns {number} Returns the random number.
-     * @example
-     *
-     * _.random(0, 5);
-     * // => an integer between 0 and 5
-     *
-     * _.random(5);
-     * // => also an integer between 0 and 5
-     *
-     * _.random(5, true);
-     * // => a floating-point number between 0 and 5
-     *
-     * _.random(1.2, 5.2);
-     * // => a floating-point number between 1.2 and 5.2
-     */
-    function random(min, max, floating) {
-      if (floating && isIterateeCall(min, max, floating)) {
-        max = floating = null;
-      }
-      var noMin = min == null,
-          noMax = max == null;
-
-      if (floating == null) {
-        if (noMax && typeof min == 'boolean') {
-          floating = min;
-          min = 1;
-        }
-        else if (typeof max == 'boolean') {
-          floating = max;
-          noMax = true;
-        }
-      }
-      if (noMin && noMax) {
-        max = 1;
-        noMax = false;
-      }
-      min = +min || 0;
-      if (noMax) {
-        max = min;
-        min = 0;
-      } else {
-        max = +max || 0;
-      }
-      if (floating || min % 1 || max % 1) {
-        var rand = nativeRandom();
-        return nativeMin(min + (rand * (max - min + parseFloat('1e-' + ((rand + '').length - 1)))), max);
-      }
-      return baseRandom(min, max);
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to convert.
-     * @returns {string} Returns the camel cased string.
-     * @example
-     *
-     * _.camelCase('Foo Bar');
-     * // => 'fooBar'
-     *
-     * _.camelCase('--foo-bar');
-     * // => 'fooBar'
-     *
-     * _.camelCase('__foo_bar__');
-     * // => 'fooBar'
-     */
-    var camelCase = createCompounder(function(result, word, index) {
-      word = word.toLowerCase();
-      return result + (index ? (word.charAt(0).toUpperCase() + word.slice(1)) : word);
-    });
-
-    /**
-     * Capitalizes the first character of `string`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to capitalize.
-     * @returns {string} Returns the capitalized string.
-     * @example
-     *
-     * _.capitalize('fred');
-     * // => 'Fred'
-     */
-    function capitalize(string) {
-      string = baseToString(string);
-      return string && (string.charAt(0).toUpperCase() + string.slice(1));
-    }
-
-    /**
-     * Deburrs `string` by converting [latin-1 supplementary letters](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
-     * to basic latin letters and removing [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to deburr.
-     * @returns {string} Returns the deburred string.
-     * @example
-     *
-     * _.deburr('déjà vu');
-     * // => 'deja vu'
-     */
-    function deburr(string) {
-      string = baseToString(string);
-      return string && string.replace(reLatin1, deburrLetter).replace(reComboMark, '');
-    }
-
-    /**
-     * Checks if `string` ends with the given target string.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to search.
-     * @param {string} [target] The string to search for.
-     * @param {number} [position=string.length] The position to search from.
-     * @returns {boolean} Returns `true` if `string` ends with `target`, else `false`.
-     * @example
-     *
-     * _.endsWith('abc', 'c');
-     * // => true
-     *
-     * _.endsWith('abc', 'b');
-     * // => false
-     *
-     * _.endsWith('abc', 'b', 2);
-     * // => true
-     */
-    function endsWith(string, target, position) {
-      string = baseToString(string);
-      target = (target + '');
-
-      var length = string.length;
-      position = position === undefined
-        ? length
-        : nativeMin(position < 0 ? 0 : (+position || 0), length);
-
-      position -= target.length;
-      return position >= 0 && string.indexOf(target, position) == position;
-    }
-
-    /**
-     * Converts the characters "&", "<", ">", '"', "'", and "\`", in `string` to
-     * their corresponding HTML entities.
-     *
-     * **Note:** No other characters are escaped. To escape additional characters
-     * use a third-party library like [_he_](https://mths.be/he).
-     *
-     * Though the ">" character is escaped for symmetry, characters like
-     * ">" and "/" don't require escaping in HTML and have no special meaning
-     * unless they're part of a tag or unquoted attribute value.
-     * See [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)
-     * (under "semi-related fun fact") for more details.
-     *
-     * Backticks are escaped because in Internet Explorer < 9, they can break out
-     * of attribute values or HTML comments. See [#59](https://html5sec.org/#59),
-     * [#102](https://html5sec.org/#102), [#108](https://html5sec.org/#108), and
-     * [#133](https://html5sec.org/#133) of the [HTML5 Security Cheatsheet](https://html5sec.org/)
-     * for more details.
-     *
-     * When working with HTML you should always [quote attribute values](http://wonko.com/post/html-escaping)
-     * to reduce XSS vectors.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to escape.
-     * @returns {string} Returns the escaped string.
-     * @example
-     *
-     * _.escape('fred, barney, & pebbles');
-     * // => 'fred, barney, &amp; pebbles'
-     */
-    function escape(string) {
-      // Reset `lastIndex` because in IE < 9 `String#replace` does not.
-      string = baseToString(string);
-      return (string && reHasUnescapedHtml.test(string))
-        ? string.replace(reUnescapedHtml, escapeHtmlChar)
-        : string;
-    }
-
-    /**
-     * Escapes the `RegExp` special characters "\", "/", "^", "$", ".", "|", "?",
-     * "*", "+", "(", ")", "[", "]", "{" and "}" in `string`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to escape.
-     * @returns {string} Returns the escaped string.
-     * @example
-     *
-     * _.escapeRegExp('[lodash](https://lodash.com/)');
-     * // => '\[lodash\]\(https:\/\/lodash\.com\/\)'
-     */
-    function escapeRegExp(string) {
-      string = baseToString(string);
-      return (string && reHasRegExpChars.test(string))
-        ? string.replace(reRegExpChars, '\\$&')
-        : string;
-    }
-
-    /**
-     * Converts `string` to [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to convert.
-     * @returns {string} Returns the kebab cased string.
-     * @example
-     *
-     * _.kebabCase('Foo Bar');
-     * // => 'foo-bar'
-     *
-     * _.kebabCase('fooBar');
-     * // => 'foo-bar'
-     *
-     * _.kebabCase('__foo_bar__');
-     * // => 'foo-bar'
-     */
-    var kebabCase = createCompounder(function(result, word, index) {
-      return result + (index ? '-' : '') + word.toLowerCase();
-    });
-
-    /**
-     * Pads `string` on the left and right sides if it is shorter than `length`.
-     * Padding characters are truncated if they can't be evenly divided by `length`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to pad.
-     * @param {number} [length=0] The padding length.
-     * @param {string} [chars=' '] The string used as padding.
-     * @returns {string} Returns the padded string.
-     * @example
-     *
-     * _.pad('abc', 8);
-     * // => '  abc   '
-     *
-     * _.pad('abc', 8, '_-');
-     * // => '_-abc_-_'
-     *
-     * _.pad('abc', 3);
-     * // => 'abc'
-     */
-    function pad(string, length, chars) {
-      string = baseToString(string);
-      length = +length;
-
-      var strLength = string.length;
-      if (strLength >= length || !nativeIsFinite(length)) {
-        return string;
-      }
-      var mid = (length - strLength) / 2,
-          leftLength = floor(mid),
-          rightLength = ceil(mid);
-
-      chars = createPadding('', rightLength, chars);
-      return chars.slice(0, leftLength) + string + chars;
-    }
-
-    /**
-     * Pads `string` on the left side if it is shorter than `length`. Padding
-     * characters are truncated if they exceed `length`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to pad.
-     * @param {number} [length=0] The padding length.
-     * @param {string} [chars=' '] The string used as padding.
-     * @returns {string} Returns the padded string.
-     * @example
-     *
-     * _.padLeft('abc', 6);
-     * // => '   abc'
-     *
-     * _.padLeft('abc', 6, '_-');
-     * // => '_-_abc'
-     *
-     * _.padLeft('abc', 3);
-     * // => 'abc'
-     */
-    var padLeft = createPadDir();
-
-    /**
-     * Pads `string` on the right side if it is shorter than `length`. Padding
-     * characters are truncated if they exceed `length`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to pad.
-     * @param {number} [length=0] The padding length.
-     * @param {string} [chars=' '] The string used as padding.
-     * @returns {string} Returns the padded string.
-     * @example
-     *
-     * _.padRight('abc', 6);
-     * // => 'abc   '
-     *
-     * _.padRight('abc', 6, '_-');
-     * // => 'abc_-_'
-     *
-     * _.padRight('abc', 3);
-     * // => 'abc'
-     */
-    var padRight = createPadDir(true);
-
-    /**
-     * Converts `string` to an integer of the specified radix. If `radix` is
-     * `undefined` or `0`, a `radix` of `10` is used unless `value` is a hexadecimal,
-     * in which case a `radix` of `16` is used.
-     *
-     * **Note:** This method aligns with the [ES5 implementation](https://es5.github.io/#E)
-     * of `parseInt`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} string The string to convert.
-     * @param {number} [radix] The radix to interpret `value` by.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {number} Returns the converted integer.
-     * @example
-     *
-     * _.parseInt('08');
-     * // => 8
-     *
-     * _.map(['6', '08', '10'], _.parseInt);
-     * // => [6, 8, 10]
-     */
-    function parseInt(string, radix, guard) {
-      if (guard && isIterateeCall(string, radix, guard)) {
-        radix = 0;
-      }
-      return nativeParseInt(string, radix);
-    }
-    // Fallback for environments with pre-ES5 implementations.
-    if (nativeParseInt(whitespace + '08') != 8) {
-      parseInt = function(string, radix, guard) {
-        // Firefox < 21 and Opera < 15 follow ES3 for `parseInt`.
-        // Chrome fails to trim leading <BOM> whitespace characters.
-        // See https://code.google.com/p/v8/issues/detail?id=3109 for more details.
-        if (guard ? isIterateeCall(string, radix, guard) : radix == null) {
-          radix = 0;
-        } else if (radix) {
-          radix = +radix;
-        }
-        string = trim(string);
-        return nativeParseInt(string, radix || (reHasHexPrefix.test(string) ? 16 : 10));
-      };
-    }
-
-    /**
-     * Repeats the given string `n` times.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to repeat.
-     * @param {number} [n=0] The number of times to repeat the string.
-     * @returns {string} Returns the repeated string.
-     * @example
-     *
-     * _.repeat('*', 3);
-     * // => '***'
-     *
-     * _.repeat('abc', 2);
-     * // => 'abcabc'
-     *
-     * _.repeat('abc', 0);
-     * // => ''
-     */
-    function repeat(string, n) {
-      var result = '';
-      string = baseToString(string);
-      n = +n;
-      if (n < 1 || !string || !nativeIsFinite(n)) {
-        return result;
-      }
-      // Leverage the exponentiation by squaring algorithm for a faster repeat.
-      // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
-      do {
-        if (n % 2) {
-          result += string;
-        }
-        n = floor(n / 2);
-        string += string;
-      } while (n);
-
-      return result;
-    }
-
-    /**
-     * Converts `string` to [snake case](https://en.wikipedia.org/wiki/Snake_case).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to convert.
-     * @returns {string} Returns the snake cased string.
-     * @example
-     *
-     * _.snakeCase('Foo Bar');
-     * // => 'foo_bar'
-     *
-     * _.snakeCase('fooBar');
-     * // => 'foo_bar'
-     *
-     * _.snakeCase('--foo-bar');
-     * // => 'foo_bar'
-     */
-    var snakeCase = createCompounder(function(result, word, index) {
-      return result + (index ? '_' : '') + word.toLowerCase();
-    });
-
-    /**
-     * Converts `string` to [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to convert.
-     * @returns {string} Returns the start cased string.
-     * @example
-     *
-     * _.startCase('--foo-bar');
-     * // => 'Foo Bar'
-     *
-     * _.startCase('fooBar');
-     * // => 'Foo Bar'
-     *
-     * _.startCase('__foo_bar__');
-     * // => 'Foo Bar'
-     */
-    var startCase = createCompounder(function(result, word, index) {
-      return result + (index ? ' ' : '') + (word.charAt(0).toUpperCase() + word.slice(1));
-    });
-
-    /**
-     * Checks if `string` starts with the given target string.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to search.
-     * @param {string} [target] The string to search for.
-     * @param {number} [position=0] The position to search from.
-     * @returns {boolean} Returns `true` if `string` starts with `target`, else `false`.
-     * @example
-     *
-     * _.startsWith('abc', 'a');
-     * // => true
-     *
-     * _.startsWith('abc', 'b');
-     * // => false
-     *
-     * _.startsWith('abc', 'b', 1);
-     * // => true
-     */
-    function startsWith(string, target, position) {
-      string = baseToString(string);
-      position = position == null
-        ? 0
-        : nativeMin(position < 0 ? 0 : (+position || 0), string.length);
-
-      return string.lastIndexOf(target, position) == position;
-    }
-
-    /**
-     * Creates a compiled template function that can interpolate data properties
-     * in "interpolate" delimiters, HTML-escape interpolated data properties in
-     * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
-     * properties may be accessed as free variables in the template. If a setting
-     * object is provided it takes precedence over `_.templateSettings` values.
-     *
-     * **Note:** In the development build `_.template` utilizes
-     * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
-     * for easier debugging.
-     *
-     * For more information on precompiling templates see
-     * [lodash's custom builds documentation](https://lodash.com/custom-builds).
-     *
-     * For more information on Chrome extension sandboxes see
-     * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The template string.
-     * @param {Object} [options] The options object.
-     * @param {RegExp} [options.escape] The HTML "escape" delimiter.
-     * @param {RegExp} [options.evaluate] The "evaluate" delimiter.
-     * @param {Object} [options.imports] An object to import into the template as free variables.
-     * @param {RegExp} [options.interpolate] The "interpolate" delimiter.
-     * @param {string} [options.sourceURL] The sourceURL of the template's compiled source.
-     * @param {string} [options.variable] The data object variable name.
-     * @param- {Object} [otherOptions] Enables the legacy `options` param signature.
-     * @returns {Function} Returns the compiled template function.
-     * @example
-     *
-     * // using the "interpolate" delimiter to create a compiled template
-     * var compiled = _.template('hello <%= user %>!');
-     * compiled({ 'user': 'fred' });
-     * // => 'hello fred!'
-     *
-     * // using the HTML "escape" delimiter to escape data property values
-     * var compiled = _.template('<b><%- value %></b>');
-     * compiled({ 'value': '<script>' });
-     * // => '<b>&lt;script&gt;</b>'
-     *
-     * // using the "evaluate" delimiter to execute JavaScript and generate HTML
-     * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
-     * compiled({ 'users': ['fred', 'barney'] });
-     * // => '<li>fred</li><li>barney</li>'
-     *
-     * // using the internal `print` function in "evaluate" delimiters
-     * var compiled = _.template('<% print("hello " + user); %>!');
-     * compiled({ 'user': 'barney' });
-     * // => 'hello barney!'
-     *
-     * // using the ES delimiter as an alternative to the default "interpolate" delimiter
-     * var compiled = _.template('hello ${ user }!');
-     * compiled({ 'user': 'pebbles' });
-     * // => 'hello pebbles!'
-     *
-     * // using custom template delimiters
-     * _.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
-     * var compiled = _.template('hello {{ user }}!');
-     * compiled({ 'user': 'mustache' });
-     * // => 'hello mustache!'
-     *
-     * // using backslashes to treat delimiters as plain text
-     * var compiled = _.template('<%= "\\<%- value %\\>" %>');
-     * compiled({ 'value': 'ignored' });
-     * // => '<%- value %>'
-     *
-     * // using the `imports` option to import `jQuery` as `jq`
-     * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
-     * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
-     * compiled({ 'users': ['fred', 'barney'] });
-     * // => '<li>fred</li><li>barney</li>'
-     *
-     * // using the `sourceURL` option to specify a custom sourceURL for the template
-     * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
-     * compiled(data);
-     * // => find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector
-     *
-     * // using the `variable` option to ensure a with-statement isn't used in the compiled template
-     * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
-     * compiled.source;
-     * // => function(data) {
-     * //   var __t, __p = '';
-     * //   __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
-     * //   return __p;
-     * // }
-     *
-     * // using the `source` property to inline compiled templates for meaningful
-     * // line numbers in error messages and a stack trace
-     * fs.writeFileSync(path.join(cwd, 'jst.js'), '\
-     *   var JST = {\
-     *     "main": ' + _.template(mainText).source + '\
-     *   };\
-     * ');
-     */
-    function template(string, options, otherOptions) {
-      // Based on John Resig's `tmpl` implementation (http://ejohn.org/blog/javascript-micro-templating/)
-      // and Laura Doktorova's doT.js (https://github.com/olado/doT).
-      var settings = lodash.templateSettings;
-
-      if (otherOptions && isIterateeCall(string, options, otherOptions)) {
-        options = otherOptions = null;
-      }
-      string = baseToString(string);
-      options = assignWith(baseAssign({}, otherOptions || options), settings, assignOwnDefaults);
-
-      var imports = assignWith(baseAssign({}, options.imports), settings.imports, assignOwnDefaults),
-          importsKeys = keys(imports),
-          importsValues = baseValues(imports, importsKeys);
-
-      var isEscaping,
-          isEvaluating,
-          index = 0,
-          interpolate = options.interpolate || reNoMatch,
-          source = "__p += '";
-
-      // Compile the regexp to match each delimiter.
-      var reDelimiters = RegExp(
-        (options.escape || reNoMatch).source + '|' +
-        interpolate.source + '|' +
-        (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
-        (options.evaluate || reNoMatch).source + '|$'
-      , 'g');
-
-      // Use a sourceURL for easier debugging.
-      var sourceURL = '//# sourceURL=' +
-        ('sourceURL' in options
-          ? options.sourceURL
-          : ('lodash.templateSources[' + (++templateCounter) + ']')
-        ) + '\n';
-
-      string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
-        interpolateValue || (interpolateValue = esTemplateValue);
-
-        // Escape characters that can't be included in string literals.
-        source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
-
-        // Replace delimiters with snippets.
-        if (escapeValue) {
-          isEscaping = true;
-          source += "' +\n__e(" + escapeValue + ") +\n'";
-        }
-        if (evaluateValue) {
-          isEvaluating = true;
-          source += "';\n" + evaluateValue + ";\n__p += '";
-        }
-        if (interpolateValue) {
-          source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
-        }
-        index = offset + match.length;
-
-        // The JS engine embedded in Adobe products requires returning the `match`
-        // string in order to produce the correct `offset` value.
-        return match;
-      });
-
-      source += "';\n";
-
-      // If `variable` is not specified wrap a with-statement around the generated
-      // code to add the data object to the top of the scope chain.
-      var variable = options.variable;
-      if (!variable) {
-        source = 'with (obj) {\n' + source + '\n}\n';
-      }
-      // Cleanup code by stripping empty strings.
-      source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
-        .replace(reEmptyStringMiddle, '$1')
-        .replace(reEmptyStringTrailing, '$1;');
-
-      // Frame code as the function body.
-      source = 'function(' + (variable || 'obj') + ') {\n' +
-        (variable
-          ? ''
-          : 'obj || (obj = {});\n'
-        ) +
-        "var __t, __p = ''" +
-        (isEscaping
-           ? ', __e = _.escape'
-           : ''
-        ) +
-        (isEvaluating
-          ? ', __j = Array.prototype.join;\n' +
-            "function print() { __p += __j.call(arguments, '') }\n"
-          : ';\n'
-        ) +
-        source +
-        'return __p\n}';
-
-      var result = attempt(function() {
-        return Function(importsKeys, sourceURL + 'return ' + source).apply(undefined, importsValues);
-      });
-
-      // Provide the compiled function's source by its `toString` method or
-      // the `source` property as a convenience for inlining compiled templates.
-      result.source = source;
-      if (isError(result)) {
-        throw result;
-      }
-      return result;
-    }
-
-    /**
-     * Removes leading and trailing whitespace or specified characters from `string`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to trim.
-     * @param {string} [chars=whitespace] The characters to trim.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {string} Returns the trimmed string.
-     * @example
-     *
-     * _.trim('  abc  ');
-     * // => 'abc'
-     *
-     * _.trim('-_-abc-_-', '_-');
-     * // => 'abc'
-     *
-     * _.map(['  foo  ', '  bar  '], _.trim);
-     * // => ['foo', 'bar']
-     */
-    function trim(string, chars, guard) {
-      var value = string;
-      string = baseToString(string);
-      if (!string) {
-        return string;
-      }
-      if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-        return string.slice(trimmedLeftIndex(string), trimmedRightIndex(string) + 1);
-      }
-      chars = (chars + '');
-      return string.slice(charsLeftIndex(string, chars), charsRightIndex(string, chars) + 1);
-    }
-
-    /**
-     * Removes leading whitespace or specified characters from `string`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to trim.
-     * @param {string} [chars=whitespace] The characters to trim.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {string} Returns the trimmed string.
-     * @example
-     *
-     * _.trimLeft('  abc  ');
-     * // => 'abc  '
-     *
-     * _.trimLeft('-_-abc-_-', '_-');
-     * // => 'abc-_-'
-     */
-    function trimLeft(string, chars, guard) {
-      var value = string;
-      string = baseToString(string);
-      if (!string) {
-        return string;
-      }
-      if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-        return string.slice(trimmedLeftIndex(string));
-      }
-      return string.slice(charsLeftIndex(string, (chars + '')));
-    }
-
-    /**
-     * Removes trailing whitespace or specified characters from `string`.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to trim.
-     * @param {string} [chars=whitespace] The characters to trim.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {string} Returns the trimmed string.
-     * @example
-     *
-     * _.trimRight('  abc  ');
-     * // => '  abc'
-     *
-     * _.trimRight('-_-abc-_-', '_-');
-     * // => '-_-abc'
-     */
-    function trimRight(string, chars, guard) {
-      var value = string;
-      string = baseToString(string);
-      if (!string) {
-        return string;
-      }
-      if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-        return string.slice(0, trimmedRightIndex(string) + 1);
-      }
-      return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
-    }
-
-    /**
-     * Truncates `string` if it is longer than the given maximum string length.
-     * The last characters of the truncated string are replaced with the omission
-     * string which defaults to "...".
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to truncate.
-     * @param {Object|number} [options] The options object or maximum string length.
-     * @param {number} [options.length=30] The maximum string length.
-     * @param {string} [options.omission='...'] The string to indicate text is omitted.
-     * @param {RegExp|string} [options.separator] The separator pattern to truncate to.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {string} Returns the truncated string.
-     * @example
-     *
-     * _.trunc('hi-diddly-ho there, neighborino');
-     * // => 'hi-diddly-ho there, neighbo...'
-     *
-     * _.trunc('hi-diddly-ho there, neighborino', 24);
-     * // => 'hi-diddly-ho there, n...'
-     *
-     * _.trunc('hi-diddly-ho there, neighborino', {
-     *   'length': 24,
-     *   'separator': ' '
-     * });
-     * // => 'hi-diddly-ho there,...'
-     *
-     * _.trunc('hi-diddly-ho there, neighborino', {
-     *   'length': 24,
-     *   'separator': /,? +/
-     * });
-     * // => 'hi-diddly-ho there...'
-     *
-     * _.trunc('hi-diddly-ho there, neighborino', {
-     *   'omission': ' [...]'
-     * });
-     * // => 'hi-diddly-ho there, neig [...]'
-     */
-    function trunc(string, options, guard) {
-      if (guard && isIterateeCall(string, options, guard)) {
-        options = null;
-      }
-      var length = DEFAULT_TRUNC_LENGTH,
-          omission = DEFAULT_TRUNC_OMISSION;
-
-      if (options != null) {
-        if (isObject(options)) {
-          var separator = 'separator' in options ? options.separator : separator;
-          length = 'length' in options ? (+options.length || 0) : length;
-          omission = 'omission' in options ? baseToString(options.omission) : omission;
-        } else {
-          length = +options || 0;
-        }
-      }
-      string = baseToString(string);
-      if (length >= string.length) {
-        return string;
-      }
-      var end = length - omission.length;
-      if (end < 1) {
-        return omission;
-      }
-      var result = string.slice(0, end);
-      if (separator == null) {
-        return result + omission;
-      }
-      if (isRegExp(separator)) {
-        if (string.slice(end).search(separator)) {
-          var match,
-              newEnd,
-              substring = string.slice(0, end);
-
-          if (!separator.global) {
-            separator = RegExp(separator.source, (reFlags.exec(separator) || '') + 'g');
-          }
-          separator.lastIndex = 0;
-          while ((match = separator.exec(substring))) {
-            newEnd = match.index;
-          }
-          result = result.slice(0, newEnd == null ? end : newEnd);
-        }
-      } else if (string.indexOf(separator, end) != end) {
-        var index = result.lastIndexOf(separator);
-        if (index > -1) {
-          result = result.slice(0, index);
-        }
-      }
-      return result + omission;
-    }
-
-    /**
-     * The inverse of `_.escape`; this method converts the HTML entities
-     * `&amp;`, `&lt;`, `&gt;`, `&quot;`, `&#39;`, and `&#96;` in `string` to their
-     * corresponding characters.
-     *
-     * **Note:** No other HTML entities are unescaped. To unescape additional HTML
-     * entities use a third-party library like [_he_](https://mths.be/he).
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to unescape.
-     * @returns {string} Returns the unescaped string.
-     * @example
-     *
-     * _.unescape('fred, barney, &amp; pebbles');
-     * // => 'fred, barney, & pebbles'
-     */
-    function unescape(string) {
-      string = baseToString(string);
-      return (string && reHasEscapedHtml.test(string))
-        ? string.replace(reEscapedHtml, unescapeHtmlChar)
-        : string;
-    }
-
-    /**
-     * Splits `string` into an array of its words.
-     *
-     * @static
-     * @memberOf _
-     * @category String
-     * @param {string} [string=''] The string to inspect.
-     * @param {RegExp|string} [pattern] The pattern to match words.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Array} Returns the words of `string`.
-     * @example
-     *
-     * _.words('fred, barney, & pebbles');
-     * // => ['fred', 'barney', 'pebbles']
-     *
-     * _.words('fred, barney, & pebbles', /[^, ]+/g);
-     * // => ['fred', 'barney', '&', 'pebbles']
-     */
-    function words(string, pattern, guard) {
-      if (guard && isIterateeCall(string, pattern, guard)) {
-        pattern = null;
-      }
-      string = baseToString(string);
-      return string.match(pattern || reWords) || [];
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Attempts to invoke `func`, returning either the result or the caught error
-     * object. Any additional arguments are provided to `func` when it is invoked.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Function} func The function to attempt.
-     * @returns {*} Returns the `func` result or error object.
-     * @example
-     *
-     * // avoid throwing errors for invalid selectors
-     * var elements = _.attempt(function(selector) {
-     *   return document.querySelectorAll(selector);
-     * }, '>_>');
-     *
-     * if (_.isError(elements)) {
-     *   elements = [];
-     * }
-     */
-    var attempt = restParam(function(func, args) {
-      try {
-        return func.apply(undefined, args);
-      } catch(e) {
-        return isError(e) ? e : new Error(e);
-      }
-    });
-
-    /**
-     * Creates a function that invokes `func` with the `this` binding of `thisArg`
-     * and arguments of the created function. If `func` is a property name the
-     * created callback returns the property value for a given element. If `func`
-     * is an object the created callback returns `true` for elements that contain
-     * the equivalent object properties, otherwise it returns `false`.
-     *
-     * @static
-     * @memberOf _
-     * @alias iteratee
-     * @category Utility
-     * @param {*} [func=_.identity] The value to convert to a callback.
-     * @param {*} [thisArg] The `this` binding of `func`.
-     * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
-     * @returns {Function} Returns the callback.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 40 }
-     * ];
-     *
-     * // wrap to create custom callback shorthands
-     * _.callback = _.wrap(_.callback, function(callback, func, thisArg) {
-     *   var match = /^(.+?)__([gl]t)(.+)$/.exec(func);
-     *   if (!match) {
-     *     return callback(func, thisArg);
-     *   }
-     *   return function(object) {
-     *     return match[2] == 'gt'
-     *       ? object[match[1]] > match[3]
-     *       : object[match[1]] < match[3];
-     *   };
-     * });
-     *
-     * _.filter(users, 'age__gt36');
-     * // => [{ 'user': 'fred', 'age': 40 }]
-     */
-    function callback(func, thisArg, guard) {
-      if (guard && isIterateeCall(func, thisArg, guard)) {
-        thisArg = null;
-      }
-      return baseCallback(func, thisArg);
-    }
-
-    /**
-     * Creates a function that returns `value`.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {*} value The value to return from the new function.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var object = { 'user': 'fred' };
-     * var getter = _.constant(object);
-     *
-     * getter() === object;
-     * // => true
-     */
-    function constant(value) {
-      return function() {
-        return value;
-      };
-    }
-
-    /**
-     * This method returns the first argument provided to it.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {*} value Any value.
-     * @returns {*} Returns `value`.
-     * @example
-     *
-     * var object = { 'user': 'fred' };
-     *
-     * _.identity(object) === object;
-     * // => true
-     */
-    function identity(value) {
-      return value;
-    }
-
-    /**
-     * Creates a function which performs a deep comparison between a given object
-     * and `source`, returning `true` if the given object has equivalent property
-     * values, else `false`.
-     *
-     * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-     * numbers, `Object` objects, regexes, and strings. Objects are compared by
-     * their own, not inherited, enumerable properties. For comparing a single
-     * own or inherited property value see `_.matchesProperty`.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Object} source The object of property values to match.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36, 'active': true },
-     *   { 'user': 'fred',   'age': 40, 'active': false }
-     * ];
-     *
-     * _.filter(users, _.matches({ 'age': 40, 'active': false }));
-     * // => [{ 'user': 'fred', 'age': 40, 'active': false }]
-     */
-    function matches(source) {
-      return baseMatches(baseClone(source, true));
-    }
-
-    /**
-     * Creates a function which compares the property value of `path` on a given
-     * object to `value`.
-     *
-     * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-     * numbers, `Object` objects, regexes, and strings. Objects are compared by
-     * their own, not inherited, enumerable properties.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Array|string} path The path of the property to get.
-     * @param {*} value The value to compare.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var users = [
-     *   { 'user': 'barney' },
-     *   { 'user': 'fred' }
-     * ];
-     *
-     * _.find(users, _.matchesProperty('user', 'fred'));
-     * // => { 'user': 'fred' }
-     */
-    function matchesProperty(path, value) {
-      return baseMatchesProperty(path, baseClone(value, true));
-    }
-
-    /**
-     * Creates a function which invokes the method at `path` on a given object.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Array|string} path The path of the method to invoke.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var objects = [
-     *   { 'a': { 'b': { 'c': _.constant(2) } } },
-     *   { 'a': { 'b': { 'c': _.constant(1) } } }
-     * ];
-     *
-     * _.map(objects, _.method('a.b.c'));
-     * // => [2, 1]
-     *
-     * _.invoke(_.sortBy(objects, _.method(['a', 'b', 'c'])), 'a.b.c');
-     * // => [1, 2]
-     */
-    var method = restParam(function(path, args) {
-      return function(object) {
-        return invokePath(object, path, args);
-      }
-    });
-
-    /**
-     * The opposite of `_.method`; this method creates a function which invokes
-     * the method at a given path on `object`.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Object} object The object to query.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var array = _.times(3, _.constant),
-     *     object = { 'a': array, 'b': array, 'c': array };
-     *
-     * _.map(['a[2]', 'c[0]'], _.methodOf(object));
-     * // => [2, 0]
-     *
-     * _.map([['a', '2'], ['c', '0']], _.methodOf(object));
-     * // => [2, 0]
-     */
-    var methodOf = restParam(function(object, args) {
-      return function(path) {
-        return invokePath(object, path, args);
-      };
-    });
-
-    /**
-     * Adds all own enumerable function properties of a source object to the
-     * destination object. If `object` is a function then methods are added to
-     * its prototype as well.
-     *
-     * **Note:** Use `_.runInContext` to create a pristine `lodash` function to
-     * avoid conflicts caused by modifying the original.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Function|Object} [object=lodash] The destination object.
-     * @param {Object} source The object of functions to add.
-     * @param {Object} [options] The options object.
-     * @param {boolean} [options.chain=true] Specify whether the functions added
-     *  are chainable.
-     * @returns {Function|Object} Returns `object`.
-     * @example
-     *
-     * function vowels(string) {
-     *   return _.filter(string, function(v) {
-     *     return /[aeiou]/i.test(v);
-     *   });
-     * }
-     *
-     * // use `_.runInContext` to avoid conflicts (esp. in Node.js)
-     * var _ = require('lodash').runInContext();
-     *
-     * _.mixin({ 'vowels': vowels });
-     * _.vowels('fred');
-     * // => ['e']
-     *
-     * _('fred').vowels().value();
-     * // => ['e']
-     *
-     * _.mixin({ 'vowels': vowels }, { 'chain': false });
-     * _('fred').vowels();
-     * // => ['e']
-     */
-    function mixin(object, source, options) {
-      if (options == null) {
-        var isObj = isObject(source),
-            props = isObj && keys(source),
-            methodNames = props && props.length && baseFunctions(source, props);
-
-        if (!(methodNames ? methodNames.length : isObj)) {
-          methodNames = false;
-          options = source;
-          source = object;
-          object = this;
-        }
-      }
-      if (!methodNames) {
-        methodNames = baseFunctions(source, keys(source));
-      }
-      var chain = true,
-          index = -1,
-          isFunc = isFunction(object),
-          length = methodNames.length;
-
-      if (options === false) {
-        chain = false;
-      } else if (isObject(options) && 'chain' in options) {
-        chain = options.chain;
-      }
-      while (++index < length) {
-        var methodName = methodNames[index],
-            func = source[methodName];
-
-        object[methodName] = func;
-        if (isFunc) {
-          object.prototype[methodName] = (function(func) {
-            return function() {
-              var chainAll = this.__chain__;
-              if (chain || chainAll) {
-                var result = object(this.__wrapped__),
-                    actions = result.__actions__ = arrayCopy(this.__actions__);
-
-                actions.push({ 'func': func, 'args': arguments, 'thisArg': object });
-                result.__chain__ = chainAll;
-                return result;
-              }
-              var args = [this.value()];
-              push.apply(args, arguments);
-              return func.apply(object, args);
-            };
-          }(func));
-        }
-      }
-      return object;
-    }
-
-    /**
-     * Reverts the `_` variable to its previous value and returns a reference to
-     * the `lodash` function.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @returns {Function} Returns the `lodash` function.
-     * @example
-     *
-     * var lodash = _.noConflict();
-     */
-    function noConflict() {
-      context._ = oldDash;
-      return this;
-    }
-
-    /**
-     * A no-operation function which returns `undefined` regardless of the
-     * arguments it receives.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @example
-     *
-     * var object = { 'user': 'fred' };
-     *
-     * _.noop(object) === undefined;
-     * // => true
-     */
-    function noop() {
-      // No operation performed.
-    }
-
-    /**
-     * Creates a function which returns the property value at `path` on a
-     * given object.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Array|string} path The path of the property to get.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var objects = [
-     *   { 'a': { 'b': { 'c': 2 } } },
-     *   { 'a': { 'b': { 'c': 1 } } }
-     * ];
-     *
-     * _.map(objects, _.property('a.b.c'));
-     * // => [2, 1]
-     *
-     * _.pluck(_.sortBy(objects, _.property(['a', 'b', 'c'])), 'a.b.c');
-     * // => [1, 2]
-     */
-    function property(path) {
-      return isKey(path) ? baseProperty(path) : basePropertyDeep(path);
-    }
-
-    /**
-     * The opposite of `_.property`; this method creates a function which returns
-     * the property value at a given path on `object`.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {Object} object The object to query.
-     * @returns {Function} Returns the new function.
-     * @example
-     *
-     * var array = [0, 1, 2],
-     *     object = { 'a': array, 'b': array, 'c': array };
-     *
-     * _.map(['a[2]', 'c[0]'], _.propertyOf(object));
-     * // => [2, 0]
-     *
-     * _.map([['a', '2'], ['c', '0']], _.propertyOf(object));
-     * // => [2, 0]
-     */
-    function propertyOf(object) {
-      return function(path) {
-        return baseGet(object, toPath(path), path + '');
-      };
-    }
-
-    /**
-     * Creates an array of numbers (positive and/or negative) progressing from
-     * `start` up to, but not including, `end`. If `end` is not specified it is
-     * set to `start` with `start` then set to `0`. If `end` is less than `start`
-     * a zero-length range is created unless a negative `step` is specified.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {number} [start=0] The start of the range.
-     * @param {number} end The end of the range.
-     * @param {number} [step=1] The value to increment or decrement by.
-     * @returns {Array} Returns the new array of numbers.
-     * @example
-     *
-     * _.range(4);
-     * // => [0, 1, 2, 3]
-     *
-     * _.range(1, 5);
-     * // => [1, 2, 3, 4]
-     *
-     * _.range(0, 20, 5);
-     * // => [0, 5, 10, 15]
-     *
-     * _.range(0, -4, -1);
-     * // => [0, -1, -2, -3]
-     *
-     * _.range(1, 4, 0);
-     * // => [1, 1, 1]
-     *
-     * _.range(0);
-     * // => []
-     */
-    function range(start, end, step) {
-      if (step && isIterateeCall(start, end, step)) {
-        end = step = null;
-      }
-      start = +start || 0;
-      step = step == null ? 1 : (+step || 0);
-
-      if (end == null) {
-        end = start;
-        start = 0;
-      } else {
-        end = +end || 0;
-      }
-      // Use `Array(length)` so engines like Chakra and V8 avoid slower modes.
-      // See https://youtu.be/XAqIpGU8ZZk#t=17m25s for more details.
-      var index = -1,
-          length = nativeMax(ceil((end - start) / (step || 1)), 0),
-          result = Array(length);
-
-      while (++index < length) {
-        result[index] = start;
-        start += step;
-      }
-      return result;
-    }
-
-    /**
-     * Invokes the iteratee function `n` times, returning an array of the results
-     * of each invocation. The `iteratee` is bound to `thisArg` and invoked with
-     * one argument; (index).
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {number} n The number of times to invoke `iteratee`.
-     * @param {Function} [iteratee=_.identity] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {Array} Returns the array of results.
-     * @example
-     *
-     * var diceRolls = _.times(3, _.partial(_.random, 1, 6, false));
-     * // => [3, 6, 4]
-     *
-     * _.times(3, function(n) {
-     *   mage.castSpell(n);
-     * });
-     * // => invokes `mage.castSpell(n)` three times with `n` of `0`, `1`, and `2`
-     *
-     * _.times(3, function(n) {
-     *   this.cast(n);
-     * }, mage);
-     * // => also invokes `mage.castSpell(n)` three times
-     */
-    function times(n, iteratee, thisArg) {
-      n = floor(n);
-
-      // Exit early to avoid a JSC JIT bug in Safari 8
-      // where `Array(0)` is treated as `Array(1)`.
-      if (n < 1 || !nativeIsFinite(n)) {
-        return [];
-      }
-      var index = -1,
-          result = Array(nativeMin(n, MAX_ARRAY_LENGTH));
-
-      iteratee = bindCallback(iteratee, thisArg, 1);
-      while (++index < n) {
-        if (index < MAX_ARRAY_LENGTH) {
-          result[index] = iteratee(index);
-        } else {
-          iteratee(index);
-        }
-      }
-      return result;
-    }
-
-    /**
-     * Generates a unique ID. If `prefix` is provided the ID is appended to it.
-     *
-     * @static
-     * @memberOf _
-     * @category Utility
-     * @param {string} [prefix] The value to prefix the ID with.
-     * @returns {string} Returns the unique ID.
-     * @example
-     *
-     * _.uniqueId('contact_');
-     * // => 'contact_104'
-     *
-     * _.uniqueId();
-     * // => '105'
-     */
-    function uniqueId(prefix) {
-      var id = ++idCounter;
-      return baseToString(prefix) + id;
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * Adds two numbers.
-     *
-     * @static
-     * @memberOf _
-     * @category Math
-     * @param {number} augend The first number to add.
-     * @param {number} addend The second number to add.
-     * @returns {number} Returns the sum.
-     * @example
-     *
-     * _.add(6, 4);
-     * // => 10
-     */
-    function add(augend, addend) {
-      return (+augend || 0) + (+addend || 0);
-    }
-
-    /**
-     * Gets the maximum value of `collection`. If `collection` is empty or falsey
-     * `-Infinity` is returned. If an iteratee function is provided it is invoked
-     * for each value in `collection` to generate the criterion by which the value
-     * is ranked. The `iteratee` is bound to `thisArg` and invoked with three
-     * arguments: (value, index, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Math
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {*} Returns the maximum value.
-     * @example
-     *
-     * _.max([4, 2, 8, 6]);
-     * // => 8
-     *
-     * _.max([]);
-     * // => -Infinity
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 40 }
-     * ];
-     *
-     * _.max(users, function(chr) {
-     *   return chr.age;
-     * });
-     * // => { 'user': 'fred', 'age': 40 }
-     *
-     * // using the `_.property` callback shorthand
-     * _.max(users, 'age');
-     * // => { 'user': 'fred', 'age': 40 }
-     */
-    var max = createExtremum(arrayMax);
-
-    /**
-     * Gets the minimum value of `collection`. If `collection` is empty or falsey
-     * `Infinity` is returned. If an iteratee function is provided it is invoked
-     * for each value in `collection` to generate the criterion by which the value
-     * is ranked. The `iteratee` is bound to `thisArg` and invoked with three
-     * arguments: (value, index, collection).
-     *
-     * If a property name is provided for `iteratee` the created `_.property`
-     * style callback returns the property value of the given element.
-     *
-     * If a value is also provided for `thisArg` the created `_.matchesProperty`
-     * style callback returns `true` for elements that have a matching property
-     * value, else `false`.
-     *
-     * If an object is provided for `iteratee` the created `_.matches` style
-     * callback returns `true` for elements that have the properties of the given
-     * object, else `false`.
-     *
-     * @static
-     * @memberOf _
-     * @category Math
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {*} Returns the minimum value.
-     * @example
-     *
-     * _.min([4, 2, 8, 6]);
-     * // => 2
-     *
-     * _.min([]);
-     * // => Infinity
-     *
-     * var users = [
-     *   { 'user': 'barney', 'age': 36 },
-     *   { 'user': 'fred',   'age': 40 }
-     * ];
-     *
-     * _.min(users, function(chr) {
-     *   return chr.age;
-     * });
-     * // => { 'user': 'barney', 'age': 36 }
-     *
-     * // using the `_.property` callback shorthand
-     * _.min(users, 'age');
-     * // => { 'user': 'barney', 'age': 36 }
-     */
-    var min = createExtremum(arrayMin, true);
-
-    /**
-     * Gets the sum of the values in `collection`.
-     *
-     * @static
-     * @memberOf _
-     * @category Math
-     * @param {Array|Object|string} collection The collection to iterate over.
-     * @param {Function|Object|string} [iteratee] The function invoked per iteration.
-     * @param {*} [thisArg] The `this` binding of `iteratee`.
-     * @returns {number} Returns the sum.
-     * @example
-     *
-     * _.sum([4, 6]);
-     * // => 10
-     *
-     * _.sum({ 'a': 4, 'b': 6 });
-     * // => 10
-     *
-     * var objects = [
-     *   { 'n': 4 },
-     *   { 'n': 6 }
-     * ];
-     *
-     * _.sum(objects, function(object) {
-     *   return object.n;
-     * });
-     * // => 10
-     *
-     * // using the `_.property` callback shorthand
-     * _.sum(objects, 'n');
-     * // => 10
-     */
-    function sum(collection, iteratee, thisArg) {
-      if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-        iteratee = null;
-      }
-      var func = getCallback(),
-          noIteratee = iteratee == null;
-
-      if (!(func === baseCallback && noIteratee)) {
-        noIteratee = false;
-        iteratee = func(iteratee, thisArg, 3);
-      }
-      return noIteratee
-        ? arraySum(isArray(collection) ? collection : toIterable(collection))
-        : baseSum(collection, iteratee);
-    }
-
-    /*------------------------------------------------------------------------*/
-
-    // Ensure wrappers are instances of `baseLodash`.
-    lodash.prototype = baseLodash.prototype;
-
-    LodashWrapper.prototype = baseCreate(baseLodash.prototype);
-    LodashWrapper.prototype.constructor = LodashWrapper;
-
-    LazyWrapper.prototype = baseCreate(baseLodash.prototype);
-    LazyWrapper.prototype.constructor = LazyWrapper;
-
-    // Add functions to the `Map` cache.
-    MapCache.prototype['delete'] = mapDelete;
-    MapCache.prototype.get = mapGet;
-    MapCache.prototype.has = mapHas;
-    MapCache.prototype.set = mapSet;
-
-    // Add functions to the `Set` cache.
-    SetCache.prototype.push = cachePush;
-
-    // Assign cache to `_.memoize`.
-    memoize.Cache = MapCache;
-
-    // Add functions that return wrapped values when chaining.
-    lodash.after = after;
-    lodash.ary = ary;
-    lodash.assign = assign;
-    lodash.at = at;
-    lodash.before = before;
-    lodash.bind = bind;
-    lodash.bindAll = bindAll;
-    lodash.bindKey = bindKey;
-    lodash.callback = callback;
-    lodash.chain = chain;
-    lodash.chunk = chunk;
-    lodash.compact = compact;
-    lodash.constant = constant;
-    lodash.countBy = countBy;
-    lodash.create = create;
-    lodash.curry = curry;
-    lodash.curryRight = curryRight;
-    lodash.debounce = debounce;
-    lodash.defaults = defaults;
-    lodash.defer = defer;
-    lodash.delay = delay;
-    lodash.difference = difference;
-    lodash.drop = drop;
-    lodash.dropRight = dropRight;
-    lodash.dropRightWhile = dropRightWhile;
-    lodash.dropWhile = dropWhile;
-    lodash.fill = fill;
-    lodash.filter = filter;
-    lodash.flatten = flatten;
-    lodash.flattenDeep = flattenDeep;
-    lodash.flow = flow;
-    lodash.flowRight = flowRight;
-    lodash.forEach = forEach;
-    lodash.forEachRight = forEachRight;
-    lodash.forIn = forIn;
-    lodash.forInRight = forInRight;
-    lodash.forOwn = forOwn;
-    lodash.forOwnRight = forOwnRight;
-    lodash.functions = functions;
-    lodash.groupBy = groupBy;
-    lodash.indexBy = indexBy;
-    lodash.initial = initial;
-    lodash.intersection = intersection;
-    lodash.invert = invert;
-    lodash.invoke = invoke;
-    lodash.keys = keys;
-    lodash.keysIn = keysIn;
-    lodash.map = map;
-    lodash.mapValues = mapValues;
-    lodash.matches = matches;
-    lodash.matchesProperty = matchesProperty;
-    lodash.memoize = memoize;
-    lodash.merge = merge;
-    lodash.method = method;
-    lodash.methodOf = methodOf;
-    lodash.mixin = mixin;
-    lodash.negate = negate;
-    lodash.omit = omit;
-    lodash.once = once;
-    lodash.pairs = pairs;
-    lodash.partial = partial;
-    lodash.partialRight = partialRight;
-    lodash.partition = partition;
-    lodash.pick = pick;
-    lodash.pluck = pluck;
-    lodash.property = property;
-    lodash.propertyOf = propertyOf;
-    lodash.pull = pull;
-    lodash.pullAt = pullAt;
-    lodash.range = range;
-    lodash.rearg = rearg;
-    lodash.reject = reject;
-    lodash.remove = remove;
-    lodash.rest = rest;
-    lodash.restParam = restParam;
-    lodash.set = set;
-    lodash.shuffle = shuffle;
-    lodash.slice = slice;
-    lodash.sortBy = sortBy;
-    lodash.sortByAll = sortByAll;
-    lodash.sortByOrder = sortByOrder;
-    lodash.spread = spread;
-    lodash.take = take;
-    lodash.takeRight = takeRight;
-    lodash.takeRightWhile = takeRightWhile;
-    lodash.takeWhile = takeWhile;
-    lodash.tap = tap;
-    lodash.throttle = throttle;
-    lodash.thru = thru;
-    lodash.times = times;
-    lodash.toArray = toArray;
-    lodash.toPlainObject = toPlainObject;
-    lodash.transform = transform;
-    lodash.union = union;
-    lodash.uniq = uniq;
-    lodash.unzip = unzip;
-    lodash.values = values;
-    lodash.valuesIn = valuesIn;
-    lodash.where = where;
-    lodash.without = without;
-    lodash.wrap = wrap;
-    lodash.xor = xor;
-    lodash.zip = zip;
-    lodash.zipObject = zipObject;
-
-    // Add aliases.
-    lodash.backflow = flowRight;
-    lodash.collect = map;
-    lodash.compose = flowRight;
-    lodash.each = forEach;
-    lodash.eachRight = forEachRight;
-    lodash.extend = assign;
-    lodash.iteratee = callback;
-    lodash.methods = functions;
-    lodash.object = zipObject;
-    lodash.select = filter;
-    lodash.tail = rest;
-    lodash.unique = uniq;
-
-    // Add functions to `lodash.prototype`.
-    mixin(lodash, lodash);
-
-    /*------------------------------------------------------------------------*/
-
-    // Add functions that return unwrapped values when chaining.
-    lodash.add = add;
-    lodash.attempt = attempt;
-    lodash.camelCase = camelCase;
-    lodash.capitalize = capitalize;
-    lodash.clone = clone;
-    lodash.cloneDeep = cloneDeep;
-    lodash.deburr = deburr;
-    lodash.endsWith = endsWith;
-    lodash.escape = escape;
-    lodash.escapeRegExp = escapeRegExp;
-    lodash.every = every;
-    lodash.find = find;
-    lodash.findIndex = findIndex;
-    lodash.findKey = findKey;
-    lodash.findLast = findLast;
-    lodash.findLastIndex = findLastIndex;
-    lodash.findLastKey = findLastKey;
-    lodash.findWhere = findWhere;
-    lodash.first = first;
-    lodash.get = get;
-    lodash.has = has;
-    lodash.identity = identity;
-    lodash.includes = includes;
-    lodash.indexOf = indexOf;
-    lodash.inRange = inRange;
-    lodash.isArguments = isArguments;
-    lodash.isArray = isArray;
-    lodash.isBoolean = isBoolean;
-    lodash.isDate = isDate;
-    lodash.isElement = isElement;
-    lodash.isEmpty = isEmpty;
-    lodash.isEqual = isEqual;
-    lodash.isError = isError;
-    lodash.isFinite = isFinite;
-    lodash.isFunction = isFunction;
-    lodash.isMatch = isMatch;
-    lodash.isNaN = isNaN;
-    lodash.isNative = isNative;
-    lodash.isNull = isNull;
-    lodash.isNumber = isNumber;
-    lodash.isObject = isObject;
-    lodash.isPlainObject = isPlainObject;
-    lodash.isRegExp = isRegExp;
-    lodash.isString = isString;
-    lodash.isTypedArray = isTypedArray;
-    lodash.isUndefined = isUndefined;
-    lodash.kebabCase = kebabCase;
-    lodash.last = last;
-    lodash.lastIndexOf = lastIndexOf;
-    lodash.max = max;
-    lodash.min = min;
-    lodash.noConflict = noConflict;
-    lodash.noop = noop;
-    lodash.now = now;
-    lodash.pad = pad;
-    lodash.padLeft = padLeft;
-    lodash.padRight = padRight;
-    lodash.parseInt = parseInt;
-    lodash.random = random;
-    lodash.reduce = reduce;
-    lodash.reduceRight = reduceRight;
-    lodash.repeat = repeat;
-    lodash.result = result;
-    lodash.runInContext = runInContext;
-    lodash.size = size;
-    lodash.snakeCase = snakeCase;
-    lodash.some = some;
-    lodash.sortedIndex = sortedIndex;
-    lodash.sortedLastIndex = sortedLastIndex;
-    lodash.startCase = startCase;
-    lodash.startsWith = startsWith;
-    lodash.sum = sum;
-    lodash.template = template;
-    lodash.trim = trim;
-    lodash.trimLeft = trimLeft;
-    lodash.trimRight = trimRight;
-    lodash.trunc = trunc;
-    lodash.unescape = unescape;
-    lodash.uniqueId = uniqueId;
-    lodash.words = words;
-
-    // Add aliases.
-    lodash.all = every;
-    lodash.any = some;
-    lodash.contains = includes;
-    lodash.detect = find;
-    lodash.foldl = reduce;
-    lodash.foldr = reduceRight;
-    lodash.head = first;
-    lodash.include = includes;
-    lodash.inject = reduce;
-
-    mixin(lodash, (function() {
-      var source = {};
-      baseForOwn(lodash, function(func, methodName) {
-        if (!lodash.prototype[methodName]) {
-          source[methodName] = func;
-        }
-      });
-      return source;
-    }()), false);
-
-    /*------------------------------------------------------------------------*/
-
-    // Add functions capable of returning wrapped and unwrapped values when chaining.
-    lodash.sample = sample;
-
-    lodash.prototype.sample = function(n) {
-      if (!this.__chain__ && n == null) {
-        return sample(this.value());
-      }
-      return this.thru(function(value) {
-        return sample(value, n);
-      });
-    };
-
-    /*------------------------------------------------------------------------*/
-
-    /**
-     * The semantic version number.
-     *
-     * @static
-     * @memberOf _
-     * @type string
-     */
-    lodash.VERSION = VERSION;
-
-    // Assign default placeholders.
-    arrayEach(['bind', 'bindKey', 'curry', 'curryRight', 'partial', 'partialRight'], function(methodName) {
-      lodash[methodName].placeholder = lodash;
-    });
-
-    // Add `LazyWrapper` methods that accept an `iteratee` value.
-    arrayEach(['dropWhile', 'filter', 'map', 'takeWhile'], function(methodName, type) {
-      var isFilter = type != LAZY_MAP_FLAG,
-          isDropWhile = type == LAZY_DROP_WHILE_FLAG;
-
-      LazyWrapper.prototype[methodName] = function(iteratee, thisArg) {
-        var filtered = this.__filtered__,
-            result = (filtered && isDropWhile) ? new LazyWrapper(this) : this.clone(),
-            iteratees = result.__iteratees__ || (result.__iteratees__ = []);
-
-        iteratees.push({
-          'done': false,
-          'count': 0,
-          'index': 0,
-          'iteratee': getCallback(iteratee, thisArg, 1),
-          'limit': -1,
-          'type': type
-        });
-
-        result.__filtered__ = filtered || isFilter;
-        return result;
-      };
-    });
-
-    // Add `LazyWrapper` methods for `_.drop` and `_.take` variants.
-    arrayEach(['drop', 'take'], function(methodName, index) {
-      var whileName = methodName + 'While';
-
-      LazyWrapper.prototype[methodName] = function(n) {
-        var filtered = this.__filtered__,
-            result = (filtered && !index) ? this.dropWhile() : this.clone();
-
-        n = n == null ? 1 : nativeMax(floor(n) || 0, 0);
-        if (filtered) {
-          if (index) {
-            result.__takeCount__ = nativeMin(result.__takeCount__, n);
-          } else {
-            last(result.__iteratees__).limit = n;
-          }
-        } else {
-          var views = result.__views__ || (result.__views__ = []);
-          views.push({ 'size': n, 'type': methodName + (result.__dir__ < 0 ? 'Right' : '') });
-        }
-        return result;
-      };
-
-      LazyWrapper.prototype[methodName + 'Right'] = function(n) {
-        return this.reverse()[methodName](n).reverse();
-      };
-
-      LazyWrapper.prototype[methodName + 'RightWhile'] = function(predicate, thisArg) {
-        return this.reverse()[whileName](predicate, thisArg).reverse();
-      };
-    });
-
-    // Add `LazyWrapper` methods for `_.first` and `_.last`.
-    arrayEach(['first', 'last'], function(methodName, index) {
-      var takeName = 'take' + (index ? 'Right' : '');
-
-      LazyWrapper.prototype[methodName] = function() {
-        return this[takeName](1).value()[0];
-      };
-    });
-
-    // Add `LazyWrapper` methods for `_.initial` and `_.rest`.
-    arrayEach(['initial', 'rest'], function(methodName, index) {
-      var dropName = 'drop' + (index ? '' : 'Right');
-
-      LazyWrapper.prototype[methodName] = function() {
-        return this[dropName](1);
-      };
-    });
-
-    // Add `LazyWrapper` methods for `_.pluck` and `_.where`.
-    arrayEach(['pluck', 'where'], function(methodName, index) {
-      var operationName = index ? 'filter' : 'map',
-          createCallback = index ? baseMatches : property;
-
-      LazyWrapper.prototype[methodName] = function(value) {
-        return this[operationName](createCallback(value));
-      };
-    });
-
-    LazyWrapper.prototype.compact = function() {
-      return this.filter(identity);
-    };
-
-    LazyWrapper.prototype.reject = function(predicate, thisArg) {
-      predicate = getCallback(predicate, thisArg, 1);
-      return this.filter(function(value) {
-        return !predicate(value);
-      });
-    };
-
-    LazyWrapper.prototype.slice = function(start, end) {
-      start = start == null ? 0 : (+start || 0);
-      var result = start < 0 ? this.takeRight(-start) : this.drop(start);
-
-      if (end !== undefined) {
-        end = (+end || 0);
-        result = end < 0 ? result.dropRight(-end) : result.take(end - start);
-      }
-      return result;
-    };
-
-    LazyWrapper.prototype.toArray = function() {
-      return this.drop(0);
-    };
-
-    // Add `LazyWrapper` methods to `lodash.prototype`.
-    baseForOwn(LazyWrapper.prototype, function(func, methodName) {
-      var lodashFunc = lodash[methodName];
-      if (!lodashFunc) {
-        return;
-      }
-      var checkIteratee = /^(?:filter|map|reject)|While$/.test(methodName),
-          retUnwrapped = /^(?:first|last)$/.test(methodName);
-
-      lodash.prototype[methodName] = function() {
-        var args = arguments,
-            length = args.length,
-            chainAll = this.__chain__,
-            value = this.__wrapped__,
-            isHybrid = !!this.__actions__.length,
-            isLazy = value instanceof LazyWrapper,
-            iteratee = args[0],
-            useLazy = isLazy || isArray(value);
-
-        if (useLazy && checkIteratee && typeof iteratee == 'function' && iteratee.length != 1) {
-          // avoid lazy use if the iteratee has a "length" value other than `1`
-          isLazy = useLazy = false;
-        }
-        var onlyLazy = isLazy && !isHybrid;
-        if (retUnwrapped && !chainAll) {
-          return onlyLazy
-            ? func.call(value)
-            : lodashFunc.call(lodash, this.value());
-        }
-        var interceptor = function(value) {
-          var otherArgs = [value];
-          push.apply(otherArgs, args);
-          return lodashFunc.apply(lodash, otherArgs);
-        };
-        if (useLazy) {
-          var wrapper = onlyLazy ? value : new LazyWrapper(this),
-              result = func.apply(wrapper, args);
-
-          if (!retUnwrapped && (isHybrid || result.__actions__)) {
-            var actions = result.__actions__ || (result.__actions__ = []);
-            actions.push({ 'func': thru, 'args': [interceptor], 'thisArg': lodash });
-          }
-          return new LodashWrapper(result, chainAll);
-        }
-        return this.thru(interceptor);
-      };
-    });
-
-    // Add `Array` and `String` methods to `lodash.prototype`.
-    arrayEach(['concat', 'join', 'pop', 'push', 'replace', 'shift', 'sort', 'splice', 'split', 'unshift'], function(methodName) {
-      var func = (/^(?:replace|split)$/.test(methodName) ? stringProto : arrayProto)[methodName],
-          chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru',
-          retUnwrapped = /^(?:join|pop|replace|shift)$/.test(methodName);
-
-      lodash.prototype[methodName] = function() {
-        var args = arguments;
-        if (retUnwrapped && !this.__chain__) {
-          return func.apply(this.value(), args);
-        }
-        return this[chainName](function(value) {
-          return func.apply(value, args);
-        });
-      };
-    });
-
-    // Map minified function names to their real names.
-    baseForOwn(LazyWrapper.prototype, function(func, methodName) {
-      var lodashFunc = lodash[methodName];
-      if (lodashFunc) {
-        var key = lodashFunc.name,
-            names = realNames[key] || (realNames[key] = []);
-
-        names.push({ 'name': methodName, 'func': lodashFunc });
-      }
-    });
-
-    realNames[createHybridWrapper(null, BIND_KEY_FLAG).name] = [{ 'name': 'wrapper', 'func': null }];
-
-    // Add functions to the lazy wrapper.
-    LazyWrapper.prototype.clone = lazyClone;
-    LazyWrapper.prototype.reverse = lazyReverse;
-    LazyWrapper.prototype.value = lazyValue;
-
-    // Add chaining functions to the `lodash` wrapper.
-    lodash.prototype.chain = wrapperChain;
-    lodash.prototype.commit = wrapperCommit;
-    lodash.prototype.plant = wrapperPlant;
-    lodash.prototype.reverse = wrapperReverse;
-    lodash.prototype.toString = wrapperToString;
-    lodash.prototype.run = lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue;
-
-    // Add function aliases to the `lodash` wrapper.
-    lodash.prototype.collect = lodash.prototype.map;
-    lodash.prototype.head = lodash.prototype.first;
-    lodash.prototype.select = lodash.prototype.filter;
-    lodash.prototype.tail = lodash.prototype.rest;
-
-    return lodash;
-  }
-
-  /*--------------------------------------------------------------------------*/
-
-  // Export lodash.
-  var _ = runInContext();
-
-  // Some AMD build optimizers like r.js check for condition patterns like the following:
-  if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
-    // Expose lodash to the global object when an AMD loader is present to avoid
-    // errors in cases where lodash is loaded by a script tag and not intended
-    // as an AMD module. See http://requirejs.org/docs/errors.html#mismatch for
-    // more details.
-    root._ = _;
-
-    // Define as an anonymous module so, through path mapping, it can be
-    // referenced as the "underscore" module.
-    define(function() {
-      return _;
-    });
-  }
-  // Check for `exports` after `define` in case a build optimizer adds an `exports` object.
-  else if (freeExports && freeModule) {
-    // Export for Node.js or RingoJS.
-    if (moduleExports) {
-      (freeModule.exports = _)._ = _;
-    }
-    // Export for Narwhal or Rhino -require.
-    else {
-      freeExports._ = _;
-    }
-  }
-  else {
-    // Export for a browser or Rhino.
-    root._ = _;
-  }
-}.call(this));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LazyWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LazyWrapper.js
deleted file mode 100644 (file)
index 4c37097..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var baseCreate = require('./baseCreate'),
-    baseLodash = require('./baseLodash');
-
-/** Used as references for `-Infinity` and `Infinity`. */
-var POSITIVE_INFINITY = Number.POSITIVE_INFINITY;
-
-/**
- * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.
- *
- * @private
- * @param {*} value The value to wrap.
- */
-function LazyWrapper(value) {
-  this.__wrapped__ = value;
-  this.__actions__ = null;
-  this.__dir__ = 1;
-  this.__dropCount__ = 0;
-  this.__filtered__ = false;
-  this.__iteratees__ = null;
-  this.__takeCount__ = POSITIVE_INFINITY;
-  this.__views__ = null;
-}
-
-LazyWrapper.prototype = baseCreate(baseLodash.prototype);
-LazyWrapper.prototype.constructor = LazyWrapper;
-
-module.exports = LazyWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LodashWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/LodashWrapper.js
deleted file mode 100644 (file)
index ab06bc7..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var baseCreate = require('./baseCreate'),
-    baseLodash = require('./baseLodash');
-
-/**
- * The base constructor for creating `lodash` wrapper objects.
- *
- * @private
- * @param {*} value The value to wrap.
- * @param {boolean} [chainAll] Enable chaining for all wrapper methods.
- * @param {Array} [actions=[]] Actions to peform to resolve the unwrapped value.
- */
-function LodashWrapper(value, chainAll, actions) {
-  this.__wrapped__ = value;
-  this.__actions__ = actions || [];
-  this.__chain__ = !!chainAll;
-}
-
-LodashWrapper.prototype = baseCreate(baseLodash.prototype);
-LodashWrapper.prototype.constructor = LodashWrapper;
-
-module.exports = LodashWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/MapCache.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/MapCache.js
deleted file mode 100644 (file)
index 1d7ab98..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var mapDelete = require('./mapDelete'),
-    mapGet = require('./mapGet'),
-    mapHas = require('./mapHas'),
-    mapSet = require('./mapSet');
-
-/**
- * Creates a cache object to store key/value pairs.
- *
- * @private
- * @static
- * @name Cache
- * @memberOf _.memoize
- */
-function MapCache() {
-  this.__data__ = {};
-}
-
-// Add functions to the `Map` cache.
-MapCache.prototype['delete'] = mapDelete;
-MapCache.prototype.get = mapGet;
-MapCache.prototype.has = mapHas;
-MapCache.prototype.set = mapSet;
-
-module.exports = MapCache;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/SetCache.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/SetCache.js
deleted file mode 100644 (file)
index ed3dc6b..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var cachePush = require('./cachePush'),
-    isNative = require('../lang/isNative');
-
-/** Native method references. */
-var Set = isNative(Set = global.Set) && Set;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeCreate = isNative(nativeCreate = Object.create) && nativeCreate;
-
-/**
- *
- * Creates a cache object to store unique values.
- *
- * @private
- * @param {Array} [values] The values to cache.
- */
-function SetCache(values) {
-  var length = values ? values.length : 0;
-
-  this.data = { 'hash': nativeCreate(null), 'set': new Set };
-  while (length--) {
-    this.push(values[length]);
-  }
-}
-
-// Add functions to the `Set` cache.
-SetCache.prototype.push = cachePush;
-
-module.exports = SetCache;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayCopy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayCopy.js
deleted file mode 100644 (file)
index fa7067f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Copies the values of `source` to `array`.
- *
- * @private
- * @param {Array} source The array to copy values from.
- * @param {Array} [array=[]] The array to copy values to.
- * @returns {Array} Returns `array`.
- */
-function arrayCopy(source, array) {
-  var index = -1,
-      length = source.length;
-
-  array || (array = Array(length));
-  while (++index < length) {
-    array[index] = source[index];
-  }
-  return array;
-}
-
-module.exports = arrayCopy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEach.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEach.js
deleted file mode 100644 (file)
index 0f51382..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * A specialized version of `_.forEach` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns `array`.
- */
-function arrayEach(array, iteratee) {
-  var index = -1,
-      length = array.length;
-
-  while (++index < length) {
-    if (iteratee(array[index], index, array) === false) {
-      break;
-    }
-  }
-  return array;
-}
-
-module.exports = arrayEach;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEachRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEachRight.js
deleted file mode 100644 (file)
index 367e066..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A specialized version of `_.forEachRight` for arrays without support for
- * callback shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns `array`.
- */
-function arrayEachRight(array, iteratee) {
-  var length = array.length;
-
-  while (length--) {
-    if (iteratee(array[length], length, array) === false) {
-      break;
-    }
-  }
-  return array;
-}
-
-module.exports = arrayEachRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEvery.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayEvery.js
deleted file mode 100644 (file)
index 3fe6ed2..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * A specialized version of `_.every` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- *  else `false`.
- */
-function arrayEvery(array, predicate) {
-  var index = -1,
-      length = array.length;
-
-  while (++index < length) {
-    if (!predicate(array[index], index, array)) {
-      return false;
-    }
-  }
-  return true;
-}
-
-module.exports = arrayEvery;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayFilter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayFilter.js
deleted file mode 100644 (file)
index e14fe06..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * A specialized version of `_.filter` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- */
-function arrayFilter(array, predicate) {
-  var index = -1,
-      length = array.length,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    var value = array[index];
-    if (predicate(value, index, array)) {
-      result[++resIndex] = value;
-    }
-  }
-  return result;
-}
-
-module.exports = arrayFilter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMap.js
deleted file mode 100644 (file)
index 777c7c9..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A specialized version of `_.map` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns the new mapped array.
- */
-function arrayMap(array, iteratee) {
-  var index = -1,
-      length = array.length,
-      result = Array(length);
-
-  while (++index < length) {
-    result[index] = iteratee(array[index], index, array);
-  }
-  return result;
-}
-
-module.exports = arrayMap;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMax.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMax.js
deleted file mode 100644 (file)
index 3f62469..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/** Used as references for `-Infinity` and `Infinity`. */
-var NEGATIVE_INFINITY = Number.NEGATIVE_INFINITY;
-
-/**
- * A specialized version of `_.max` for arrays without support for iteratees.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @returns {*} Returns the maximum value.
- */
-function arrayMax(array) {
-  var index = -1,
-      length = array.length,
-      result = NEGATIVE_INFINITY;
-
-  while (++index < length) {
-    var value = array[index];
-    if (value > result) {
-      result = value;
-    }
-  }
-  return result;
-}
-
-module.exports = arrayMax;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayMin.js
deleted file mode 100644 (file)
index dd1f175..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/** Used as references for `-Infinity` and `Infinity`. */
-var POSITIVE_INFINITY = Number.POSITIVE_INFINITY;
-
-/**
- * A specialized version of `_.min` for arrays without support for iteratees.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @returns {*} Returns the minimum value.
- */
-function arrayMin(array) {
-  var index = -1,
-      length = array.length,
-      result = POSITIVE_INFINITY;
-
-  while (++index < length) {
-    var value = array[index];
-    if (value < result) {
-      result = value;
-    }
-  }
-  return result;
-}
-
-module.exports = arrayMin;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduce.js
deleted file mode 100644 (file)
index f948c8e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * A specialized version of `_.reduce` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {boolean} [initFromArray] Specify using the first element of `array`
- *  as the initial value.
- * @returns {*} Returns the accumulated value.
- */
-function arrayReduce(array, iteratee, accumulator, initFromArray) {
-  var index = -1,
-      length = array.length;
-
-  if (initFromArray && length) {
-    accumulator = array[++index];
-  }
-  while (++index < length) {
-    accumulator = iteratee(accumulator, array[index], index, array);
-  }
-  return accumulator;
-}
-
-module.exports = arrayReduce;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduceRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arrayReduceRight.js
deleted file mode 100644 (file)
index d4d68df..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * A specialized version of `_.reduceRight` for arrays without support for
- * callback shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {boolean} [initFromArray] Specify using the last element of `array`
- *  as the initial value.
- * @returns {*} Returns the accumulated value.
- */
-function arrayReduceRight(array, iteratee, accumulator, initFromArray) {
-  var length = array.length;
-  if (initFromArray && length) {
-    accumulator = array[--length];
-  }
-  while (length--) {
-    accumulator = iteratee(accumulator, array[length], length, array);
-  }
-  return accumulator;
-}
-
-module.exports = arrayReduceRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySome.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySome.js
deleted file mode 100644 (file)
index f7a0bb5..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * A specialized version of `_.some` for arrays without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- *  else `false`.
- */
-function arraySome(array, predicate) {
-  var index = -1,
-      length = array.length;
-
-  while (++index < length) {
-    if (predicate(array[index], index, array)) {
-      return true;
-    }
-  }
-  return false;
-}
-
-module.exports = arraySome;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/arraySum.js
deleted file mode 100644 (file)
index 59ccd99..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * A specialized version of `_.sum` for arrays without support for iteratees.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @returns {number} Returns the sum.
- */
-function arraySum(array) {
-  var length = array.length,
-      result = 0;
-
-  while (length--) {
-    result += +array[length] || 0;
-  }
-  return result;
-}
-
-module.exports = arraySum;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignDefaults.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignDefaults.js
deleted file mode 100644 (file)
index affd993..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Used by `_.defaults` to customize its `_.assign` use.
- *
- * @private
- * @param {*} objectValue The destination object property value.
- * @param {*} sourceValue The source object property value.
- * @returns {*} Returns the value to assign to the destination object.
- */
-function assignDefaults(objectValue, sourceValue) {
-  return objectValue === undefined ? sourceValue : objectValue;
-}
-
-module.exports = assignDefaults;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignOwnDefaults.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignOwnDefaults.js
deleted file mode 100644 (file)
index 682c460..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used by `_.template` to customize its `_.assign` use.
- *
- * **Note:** This function is like `assignDefaults` except that it ignores
- * inherited property values when checking if a property is `undefined`.
- *
- * @private
- * @param {*} objectValue The destination object property value.
- * @param {*} sourceValue The source object property value.
- * @param {string} key The key associated with the object and source values.
- * @param {Object} object The destination object.
- * @returns {*} Returns the value to assign to the destination object.
- */
-function assignOwnDefaults(objectValue, sourceValue, key, object) {
-  return (objectValue === undefined || !hasOwnProperty.call(object, key))
-    ? sourceValue
-    : objectValue;
-}
-
-module.exports = assignOwnDefaults;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignWith.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/assignWith.js
deleted file mode 100644 (file)
index c5a629d..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-var getSymbols = require('./getSymbols'),
-    keys = require('../object/keys');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var push = arrayProto.push;
-
-/**
- * A specialized version of `_.assign` for customizing assigned values without
- * support for argument juggling, multiple sources, and `this` binding `customizer`
- * functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {Function} customizer The function to customize assigned values.
- * @returns {Object} Returns `object`.
- */
-function assignWith(object, source, customizer) {
-  var props = keys(source);
-  push.apply(props, getSymbols(source));
-
-  var index = -1,
-      length = props.length;
-
-  while (++index < length) {
-    var key = props[index],
-        value = object[key],
-        result = customizer(value, source[key], key, object, source);
-
-    if ((result === result ? (result !== value) : (value === value)) ||
-        (value === undefined && !(key in object))) {
-      object[key] = result;
-    }
-  }
-  return object;
-}
-
-module.exports = assignWith;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAssign.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAssign.js
deleted file mode 100644 (file)
index 8e25f55..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseCopy = require('./baseCopy'),
-    getSymbols = require('./getSymbols'),
-    isNative = require('../lang/isNative'),
-    keys = require('../object/keys');
-
-/** Native method references. */
-var preventExtensions = isNative(Object.preventExtensions = Object.preventExtensions) && preventExtensions;
-
-/** Used as `baseAssign`. */
-var nativeAssign = (function() {
-  // Avoid `Object.assign` in Firefox 34-37 which have an early implementation
-  // with a now defunct try/catch behavior. See https://bugzilla.mozilla.org/show_bug.cgi?id=1103344
-  // for more details.
-  //
-  // Use `Object.preventExtensions` on a plain object instead of simply using
-  // `Object('x')` because Chrome and IE fail to throw an error when attempting
-  // to assign values to readonly indexes of strings in strict mode.
-  var object = { '1': 0 },
-      func = preventExtensions && isNative(func = Object.assign) && func;
-
-  try { func(preventExtensions(object), 'xo'); } catch(e) {}
-  return !object[1] && func;
-}());
-
-/**
- * The base implementation of `_.assign` without support for argument juggling,
- * multiple sources, and `customizer` functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @returns {Object} Returns `object`.
- */
-var baseAssign = nativeAssign || function(object, source) {
-  return source == null
-    ? object
-    : baseCopy(source, getSymbols(source), baseCopy(source, keys(source), object));
-};
-
-module.exports = baseAssign;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAt.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseAt.js
deleted file mode 100644 (file)
index f437989..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var isIndex = require('./isIndex'),
-    isLength = require('./isLength');
-
-/**
- * The base implementation of `_.at` without support for string collections
- * and individual key arguments.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {number[]|string[]} props The property names or indexes of elements to pick.
- * @returns {Array} Returns the new array of picked elements.
- */
-function baseAt(collection, props) {
-  var index = -1,
-      length = collection.length,
-      isArr = isLength(length),
-      propsLength = props.length,
-      result = Array(propsLength);
-
-  while(++index < propsLength) {
-    var key = props[index];
-    if (isArr) {
-      result[index] = isIndex(key, length) ? collection[key] : undefined;
-    } else {
-      result[index] = collection[key];
-    }
-  }
-  return result;
-}
-
-module.exports = baseAt;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCallback.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCallback.js
deleted file mode 100644 (file)
index 67fe087..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var baseMatches = require('./baseMatches'),
-    baseMatchesProperty = require('./baseMatchesProperty'),
-    bindCallback = require('./bindCallback'),
-    identity = require('../utility/identity'),
-    property = require('../utility/property');
-
-/**
- * The base implementation of `_.callback` which supports specifying the
- * number of arguments to provide to `func`.
- *
- * @private
- * @param {*} [func=_.identity] The value to convert to a callback.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {number} [argCount] The number of arguments to provide to `func`.
- * @returns {Function} Returns the callback.
- */
-function baseCallback(func, thisArg, argCount) {
-  var type = typeof func;
-  if (type == 'function') {
-    return thisArg === undefined
-      ? func
-      : bindCallback(func, thisArg, argCount);
-  }
-  if (func == null) {
-    return identity;
-  }
-  if (type == 'object') {
-    return baseMatches(func);
-  }
-  return thisArg === undefined
-    ? property(func)
-    : baseMatchesProperty(func, thisArg);
-}
-
-module.exports = baseCallback;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseClone.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseClone.js
deleted file mode 100644 (file)
index a747e85..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-var arrayCopy = require('./arrayCopy'),
-    arrayEach = require('./arrayEach'),
-    baseAssign = require('./baseAssign'),
-    baseForOwn = require('./baseForOwn'),
-    initCloneArray = require('./initCloneArray'),
-    initCloneByTag = require('./initCloneByTag'),
-    initCloneObject = require('./initCloneObject'),
-    isArray = require('../lang/isArray'),
-    isObject = require('../lang/isObject');
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
-    arrayTag = '[object Array]',
-    boolTag = '[object Boolean]',
-    dateTag = '[object Date]',
-    errorTag = '[object Error]',
-    funcTag = '[object Function]',
-    mapTag = '[object Map]',
-    numberTag = '[object Number]',
-    objectTag = '[object Object]',
-    regexpTag = '[object RegExp]',
-    setTag = '[object Set]',
-    stringTag = '[object String]',
-    weakMapTag = '[object WeakMap]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
-    float32Tag = '[object Float32Array]',
-    float64Tag = '[object Float64Array]',
-    int8Tag = '[object Int8Array]',
-    int16Tag = '[object Int16Array]',
-    int32Tag = '[object Int32Array]',
-    uint8Tag = '[object Uint8Array]',
-    uint8ClampedTag = '[object Uint8ClampedArray]',
-    uint16Tag = '[object Uint16Array]',
-    uint32Tag = '[object Uint32Array]';
-
-/** Used to identify `toStringTag` values supported by `_.clone`. */
-var cloneableTags = {};
-cloneableTags[argsTag] = cloneableTags[arrayTag] =
-cloneableTags[arrayBufferTag] = cloneableTags[boolTag] =
-cloneableTags[dateTag] = cloneableTags[float32Tag] =
-cloneableTags[float64Tag] = cloneableTags[int8Tag] =
-cloneableTags[int16Tag] = cloneableTags[int32Tag] =
-cloneableTags[numberTag] = cloneableTags[objectTag] =
-cloneableTags[regexpTag] = cloneableTags[stringTag] =
-cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
-cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
-cloneableTags[errorTag] = cloneableTags[funcTag] =
-cloneableTags[mapTag] = cloneableTags[setTag] =
-cloneableTags[weakMapTag] = false;
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * The base implementation of `_.clone` without support for argument juggling
- * and `this` binding `customizer` functions.
- *
- * @private
- * @param {*} value The value to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @param {Function} [customizer] The function to customize cloning values.
- * @param {string} [key] The key of `value`.
- * @param {Object} [object] The object `value` belongs to.
- * @param {Array} [stackA=[]] Tracks traversed source objects.
- * @param {Array} [stackB=[]] Associates clones with source counterparts.
- * @returns {*} Returns the cloned value.
- */
-function baseClone(value, isDeep, customizer, key, object, stackA, stackB) {
-  var result;
-  if (customizer) {
-    result = object ? customizer(value, key, object) : customizer(value);
-  }
-  if (result !== undefined) {
-    return result;
-  }
-  if (!isObject(value)) {
-    return value;
-  }
-  var isArr = isArray(value);
-  if (isArr) {
-    result = initCloneArray(value);
-    if (!isDeep) {
-      return arrayCopy(value, result);
-    }
-  } else {
-    var tag = objToString.call(value),
-        isFunc = tag == funcTag;
-
-    if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
-      result = initCloneObject(isFunc ? {} : value);
-      if (!isDeep) {
-        return baseAssign(result, value);
-      }
-    } else {
-      return cloneableTags[tag]
-        ? initCloneByTag(value, tag, isDeep)
-        : (object ? value : {});
-    }
-  }
-  // Check for circular references and return corresponding clone.
-  stackA || (stackA = []);
-  stackB || (stackB = []);
-
-  var length = stackA.length;
-  while (length--) {
-    if (stackA[length] == value) {
-      return stackB[length];
-    }
-  }
-  // Add the source value to the stack of traversed objects and associate it with its clone.
-  stackA.push(value);
-  stackB.push(result);
-
-  // Recursively populate clone (susceptible to call stack limits).
-  (isArr ? arrayEach : baseForOwn)(value, function(subValue, key) {
-    result[key] = baseClone(subValue, isDeep, customizer, key, value, stackA, stackB);
-  });
-  return result;
-}
-
-module.exports = baseClone;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCompareAscending.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCompareAscending.js
deleted file mode 100644 (file)
index f2b7657..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * The base implementation of `compareAscending` which compares values and
- * sorts them in ascending order without guaranteeing a stable sort.
- *
- * @private
- * @param {*} value The value to compare to `other`.
- * @param {*} other The value to compare to `value`.
- * @returns {number} Returns the sort order indicator for `value`.
- */
-function baseCompareAscending(value, other) {
-  if (value !== other) {
-    var valIsReflexive = value === value,
-        othIsReflexive = other === other;
-
-    if (value > other || !valIsReflexive || (value === undefined && othIsReflexive)) {
-      return 1;
-    }
-    if (value < other || !othIsReflexive || (other === undefined && valIsReflexive)) {
-      return -1;
-    }
-  }
-  return 0;
-}
-
-module.exports = baseCompareAscending;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCopy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCopy.js
deleted file mode 100644 (file)
index 15059f3..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Copies properties of `source` to `object`.
- *
- * @private
- * @param {Object} source The object to copy properties from.
- * @param {Array} props The property names to copy.
- * @param {Object} [object={}] The object to copy properties to.
- * @returns {Object} Returns `object`.
- */
-function baseCopy(source, props, object) {
-  object || (object = {});
-
-  var index = -1,
-      length = props.length;
-
-  while (++index < length) {
-    var key = props[index];
-    object[key] = source[key];
-  }
-  return object;
-}
-
-module.exports = baseCopy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCreate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseCreate.js
deleted file mode 100644 (file)
index da6725f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var isObject = require('../lang/isObject');
-
-/**
- * The base implementation of `_.create` without support for assigning
- * properties to the created object.
- *
- * @private
- * @param {Object} prototype The object to inherit from.
- * @returns {Object} Returns the new object.
- */
-var baseCreate = (function() {
-  function Object() {}
-  return function(prototype) {
-    if (isObject(prototype)) {
-      Object.prototype = prototype;
-      var result = new Object;
-      Object.prototype = null;
-    }
-    return result || global.Object();
-  };
-}());
-
-module.exports = baseCreate;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDelay.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDelay.js
deleted file mode 100644 (file)
index c405c37..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * The base implementation of `_.delay` and `_.defer` which accepts an index
- * of where to slice the arguments to provide to `func`.
- *
- * @private
- * @param {Function} func The function to delay.
- * @param {number} wait The number of milliseconds to delay invocation.
- * @param {Object} args The arguments provide to `func`.
- * @returns {number} Returns the timer id.
- */
-function baseDelay(func, wait, args) {
-  if (typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  return setTimeout(function() { func.apply(undefined, args); }, wait);
-}
-
-module.exports = baseDelay;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDifference.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseDifference.js
deleted file mode 100644 (file)
index 97853ed..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-var baseIndexOf = require('./baseIndexOf'),
-    cacheIndexOf = require('./cacheIndexOf'),
-    createCache = require('./createCache');
-
-/**
- * The base implementation of `_.difference` which accepts a single array
- * of values to exclude.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Array} values The values to exclude.
- * @returns {Array} Returns the new array of filtered values.
- */
-function baseDifference(array, values) {
-  var length = array ? array.length : 0,
-      result = [];
-
-  if (!length) {
-    return result;
-  }
-  var index = -1,
-      indexOf = baseIndexOf,
-      isCommon = true,
-      cache = (isCommon && values.length >= 200) ? createCache(values) : null,
-      valuesLength = values.length;
-
-  if (cache) {
-    indexOf = cacheIndexOf;
-    isCommon = false;
-    values = cache;
-  }
-  outer:
-  while (++index < length) {
-    var value = array[index];
-
-    if (isCommon && value === value) {
-      var valuesIndex = valuesLength;
-      while (valuesIndex--) {
-        if (values[valuesIndex] === value) {
-          continue outer;
-        }
-      }
-      result.push(value);
-    }
-    else if (indexOf(values, value, 0) < 0) {
-      result.push(value);
-    }
-  }
-  return result;
-}
-
-module.exports = baseDifference;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEach.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEach.js
deleted file mode 100644 (file)
index 09ef5a3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var baseForOwn = require('./baseForOwn'),
-    createBaseEach = require('./createBaseEach');
-
-/**
- * The base implementation of `_.forEach` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array|Object|string} Returns `collection`.
- */
-var baseEach = createBaseEach(baseForOwn);
-
-module.exports = baseEach;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEachRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEachRight.js
deleted file mode 100644 (file)
index f0520a8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var baseForOwnRight = require('./baseForOwnRight'),
-    createBaseEach = require('./createBaseEach');
-
-/**
- * The base implementation of `_.forEachRight` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array|Object|string} Returns `collection`.
- */
-var baseEachRight = createBaseEach(baseForOwnRight, true);
-
-module.exports = baseEachRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEvery.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseEvery.js
deleted file mode 100644 (file)
index a1fc1f3..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var baseEach = require('./baseEach');
-
-/**
- * The base implementation of `_.every` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- *  else `false`
- */
-function baseEvery(collection, predicate) {
-  var result = true;
-  baseEach(collection, function(value, index, collection) {
-    result = !!predicate(value, index, collection);
-    return result;
-  });
-  return result;
-}
-
-module.exports = baseEvery;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFill.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFill.js
deleted file mode 100644 (file)
index ef1a2fa..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * The base implementation of `_.fill` without an iteratee call guard.
- *
- * @private
- * @param {Array} array The array to fill.
- * @param {*} value The value to fill `array` with.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns `array`.
- */
-function baseFill(array, value, start, end) {
-  var length = array.length;
-
-  start = start == null ? 0 : (+start || 0);
-  if (start < 0) {
-    start = -start > length ? 0 : (length + start);
-  }
-  end = (end === undefined || end > length) ? length : (+end || 0);
-  if (end < 0) {
-    end += length;
-  }
-  length = start > end ? 0 : (end >>> 0);
-  start >>>= 0;
-
-  while (start < length) {
-    array[start++] = value;
-  }
-  return array;
-}
-
-module.exports = baseFill;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFilter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFilter.js
deleted file mode 100644 (file)
index 27773a4..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var baseEach = require('./baseEach');
-
-/**
- * The base implementation of `_.filter` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- */
-function baseFilter(collection, predicate) {
-  var result = [];
-  baseEach(collection, function(value, index, collection) {
-    if (predicate(value, index, collection)) {
-      result.push(value);
-    }
-  });
-  return result;
-}
-
-module.exports = baseFilter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFind.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFind.js
deleted file mode 100644 (file)
index be5848f..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * The base implementation of `_.find`, `_.findLast`, `_.findKey`, and `_.findLastKey`,
- * without support for callback shorthands and `this` binding, which iterates
- * over `collection` using the provided `eachFunc`.
- *
- * @private
- * @param {Array|Object|string} collection The collection to search.
- * @param {Function} predicate The function invoked per iteration.
- * @param {Function} eachFunc The function to iterate over `collection`.
- * @param {boolean} [retKey] Specify returning the key of the found element
- *  instead of the element itself.
- * @returns {*} Returns the found element or its key, else `undefined`.
- */
-function baseFind(collection, predicate, eachFunc, retKey) {
-  var result;
-  eachFunc(collection, function(value, key, collection) {
-    if (predicate(value, key, collection)) {
-      result = retKey ? key : value;
-      return false;
-    }
-  });
-  return result;
-}
-
-module.exports = baseFind;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFindIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFindIndex.js
deleted file mode 100644 (file)
index 7d4b502..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * The base implementation of `_.findIndex` and `_.findLastIndex` without
- * support for callback shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to search.
- * @param {Function} predicate The function invoked per iteration.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function baseFindIndex(array, predicate, fromRight) {
-  var length = array.length,
-      index = fromRight ? length : -1;
-
-  while ((fromRight ? index-- : ++index < length)) {
-    if (predicate(array[index], index, array)) {
-      return index;
-    }
-  }
-  return -1;
-}
-
-module.exports = baseFindIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFlatten.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFlatten.js
deleted file mode 100644 (file)
index 2a5421c..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    isLength = require('./isLength'),
-    isObjectLike = require('./isObjectLike');
-
-/**
- * The base implementation of `_.flatten` with added support for restricting
- * flattening and specifying the start index.
- *
- * @private
- * @param {Array} array The array to flatten.
- * @param {boolean} isDeep Specify a deep flatten.
- * @param {boolean} isStrict Restrict flattening to arrays and `arguments` objects.
- * @returns {Array} Returns the new flattened array.
- */
-function baseFlatten(array, isDeep, isStrict) {
-  var index = -1,
-      length = array.length,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    var value = array[index];
-
-    if (isObjectLike(value) && isLength(value.length) && (isArray(value) || isArguments(value))) {
-      if (isDeep) {
-        // Recursively flatten arrays (susceptible to call stack limits).
-        value = baseFlatten(value, isDeep, isStrict);
-      }
-      var valIndex = -1,
-          valLength = value.length;
-
-      result.length += valLength;
-      while (++valIndex < valLength) {
-        result[++resIndex] = value[valIndex];
-      }
-    } else if (!isStrict) {
-      result[++resIndex] = value;
-    }
-  }
-  return result;
-}
-
-module.exports = baseFlatten;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFor.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFor.js
deleted file mode 100644 (file)
index 94ee03f..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var createBaseFor = require('./createBaseFor');
-
-/**
- * The base implementation of `baseForIn` and `baseForOwn` which iterates
- * over `object` properties returned by `keysFunc` invoking `iteratee` for
- * each property. Iteratee functions may exit iteration early by explicitly
- * returning `false`.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {Function} keysFunc The function to get the keys of `object`.
- * @returns {Object} Returns `object`.
- */
-var baseFor = createBaseFor();
-
-module.exports = baseFor;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForIn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForIn.js
deleted file mode 100644 (file)
index 47d622c..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var baseFor = require('./baseFor'),
-    keysIn = require('../object/keysIn');
-
-/**
- * The base implementation of `_.forIn` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Object} Returns `object`.
- */
-function baseForIn(object, iteratee) {
-  return baseFor(object, iteratee, keysIn);
-}
-
-module.exports = baseForIn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwn.js
deleted file mode 100644 (file)
index bef4d4c..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var baseFor = require('./baseFor'),
-    keys = require('../object/keys');
-
-/**
- * The base implementation of `_.forOwn` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Object} Returns `object`.
- */
-function baseForOwn(object, iteratee) {
-  return baseFor(object, iteratee, keys);
-}
-
-module.exports = baseForOwn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwnRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForOwnRight.js
deleted file mode 100644 (file)
index bb916bc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var baseForRight = require('./baseForRight'),
-    keys = require('../object/keys');
-
-/**
- * The base implementation of `_.forOwnRight` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Object} Returns `object`.
- */
-function baseForOwnRight(object, iteratee) {
-  return baseForRight(object, iteratee, keys);
-}
-
-module.exports = baseForOwnRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseForRight.js
deleted file mode 100644 (file)
index 5ddd191..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var createBaseFor = require('./createBaseFor');
-
-/**
- * This function is like `baseFor` except that it iterates over properties
- * in the opposite order.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {Function} keysFunc The function to get the keys of `object`.
- * @returns {Object} Returns `object`.
- */
-var baseForRight = createBaseFor(true);
-
-module.exports = baseForRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFunctions.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseFunctions.js
deleted file mode 100644 (file)
index d56ea9c..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var isFunction = require('../lang/isFunction');
-
-/**
- * The base implementation of `_.functions` which creates an array of
- * `object` function property names filtered from those provided.
- *
- * @private
- * @param {Object} object The object to inspect.
- * @param {Array} props The property names to filter.
- * @returns {Array} Returns the new array of filtered property names.
- */
-function baseFunctions(object, props) {
-  var index = -1,
-      length = props.length,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    var key = props[index];
-    if (isFunction(object[key])) {
-      result[++resIndex] = key;
-    }
-  }
-  return result;
-}
-
-module.exports = baseFunctions;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseGet.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseGet.js
deleted file mode 100644 (file)
index 2444eeb..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var toObject = require('./toObject');
-
-/**
- * The base implementation of `get` without support for string paths
- * and default values.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array} path The path of the property to get.
- * @param {string} [pathKey] The key representation of path.
- * @returns {*} Returns the resolved value.
- */
-function baseGet(object, path, pathKey) {
-  if (object == null) {
-    return;
-  }
-  if (pathKey !== undefined && pathKey in toObject(object)) {
-    path = [pathKey];
-  }
-  var index = -1,
-      length = path.length;
-
-  while (object != null && ++index < length) {
-    var result = object = object[path[index]];
-  }
-  return result;
-}
-
-module.exports = baseGet;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIndexOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIndexOf.js
deleted file mode 100644 (file)
index 6b479bc..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var indexOfNaN = require('./indexOfNaN');
-
-/**
- * The base implementation of `_.indexOf` without support for binary searches.
- *
- * @private
- * @param {Array} array The array to search.
- * @param {*} value The value to search for.
- * @param {number} fromIndex The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function baseIndexOf(array, value, fromIndex) {
-  if (value !== value) {
-    return indexOfNaN(array, fromIndex);
-  }
-  var index = fromIndex - 1,
-      length = array.length;
-
-  while (++index < length) {
-    if (array[index] === value) {
-      return index;
-    }
-  }
-  return -1;
-}
-
-module.exports = baseIndexOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqual.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqual.js
deleted file mode 100644 (file)
index fc22dc4..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-var baseIsEqualDeep = require('./baseIsEqualDeep');
-
-/**
- * The base implementation of `_.isEqual` without support for `this` binding
- * `customizer` functions.
- *
- * @private
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @param {Function} [customizer] The function to customize comparing values.
- * @param {boolean} [isLoose] Specify performing partial comparisons.
- * @param {Array} [stackA] Tracks traversed `value` objects.
- * @param {Array} [stackB] Tracks traversed `other` objects.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- */
-function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
-  // Exit early for identical values.
-  if (value === other) {
-    // Treat `+0` vs. `-0` as not equal.
-    return value !== 0 || (1 / value == 1 / other);
-  }
-  var valType = typeof value,
-      othType = typeof other;
-
-  // Exit early for unlike primitive values.
-  if ((valType != 'function' && valType != 'object' && othType != 'function' && othType != 'object') ||
-      value == null || other == null) {
-    // Return `false` unless both values are `NaN`.
-    return value !== value && other !== other;
-  }
-  return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB);
-}
-
-module.exports = baseIsEqual;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqualDeep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsEqualDeep.js
deleted file mode 100644 (file)
index e6829a9..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-var equalArrays = require('./equalArrays'),
-    equalByTag = require('./equalByTag'),
-    equalObjects = require('./equalObjects'),
-    isArray = require('../lang/isArray'),
-    isTypedArray = require('../lang/isTypedArray');
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
-    arrayTag = '[object Array]',
-    objectTag = '[object Object]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * A specialized version of `baseIsEqual` for arrays and objects which performs
- * deep comparisons and tracks traversed objects enabling objects with circular
- * references to be compared.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Function} [customizer] The function to customize comparing objects.
- * @param {boolean} [isLoose] Specify performing partial comparisons.
- * @param {Array} [stackA=[]] Tracks traversed `value` objects.
- * @param {Array} [stackB=[]] Tracks traversed `other` objects.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function baseIsEqualDeep(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-  var objIsArr = isArray(object),
-      othIsArr = isArray(other),
-      objTag = arrayTag,
-      othTag = arrayTag;
-
-  if (!objIsArr) {
-    objTag = objToString.call(object);
-    if (objTag == argsTag) {
-      objTag = objectTag;
-    } else if (objTag != objectTag) {
-      objIsArr = isTypedArray(object);
-    }
-  }
-  if (!othIsArr) {
-    othTag = objToString.call(other);
-    if (othTag == argsTag) {
-      othTag = objectTag;
-    } else if (othTag != objectTag) {
-      othIsArr = isTypedArray(other);
-    }
-  }
-  var objIsObj = objTag == objectTag,
-      othIsObj = othTag == objectTag,
-      isSameTag = objTag == othTag;
-
-  if (isSameTag && !(objIsArr || objIsObj)) {
-    return equalByTag(object, other, objTag);
-  }
-  if (!isLoose) {
-    var valWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
-        othWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
-
-    if (valWrapped || othWrapped) {
-      return equalFunc(valWrapped ? object.value() : object, othWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
-    }
-  }
-  if (!isSameTag) {
-    return false;
-  }
-  // Assume cyclic values are equal.
-  // For more information on detecting circular references see https://es5.github.io/#JO.
-  stackA || (stackA = []);
-  stackB || (stackB = []);
-
-  var length = stackA.length;
-  while (length--) {
-    if (stackA[length] == object) {
-      return stackB[length] == other;
-    }
-  }
-  // Add `object` and `other` to the stack of traversed objects.
-  stackA.push(object);
-  stackB.push(other);
-
-  var result = (objIsArr ? equalArrays : equalObjects)(object, other, equalFunc, customizer, isLoose, stackA, stackB);
-
-  stackA.pop();
-  stackB.pop();
-
-  return result;
-}
-
-module.exports = baseIsEqualDeep;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsFunction.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsFunction.js
deleted file mode 100644 (file)
index cd92db3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * The base implementation of `_.isFunction` without support for environments
- * with incorrect `typeof` results.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- */
-function baseIsFunction(value) {
-  // Avoid a Chakra JIT bug in compatibility modes of IE 11.
-  // See https://github.com/jashkenas/underscore/issues/1621 for more details.
-  return typeof value == 'function' || false;
-}
-
-module.exports = baseIsFunction;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsMatch.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseIsMatch.js
deleted file mode 100644 (file)
index 5c9fb3a..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseIsEqual = require('./baseIsEqual');
-
-/**
- * The base implementation of `_.isMatch` without support for callback
- * shorthands and `this` binding.
- *
- * @private
- * @param {Object} object The object to inspect.
- * @param {Array} props The source property names to match.
- * @param {Array} values The source values to match.
- * @param {Array} strictCompareFlags Strict comparison flags for source values.
- * @param {Function} [customizer] The function to customize comparing objects.
- * @returns {boolean} Returns `true` if `object` is a match, else `false`.
- */
-function baseIsMatch(object, props, values, strictCompareFlags, customizer) {
-  var index = -1,
-      length = props.length,
-      noCustomizer = !customizer;
-
-  while (++index < length) {
-    if ((noCustomizer && strictCompareFlags[index])
-          ? values[index] !== object[props[index]]
-          : !(props[index] in object)
-        ) {
-      return false;
-    }
-  }
-  index = -1;
-  while (++index < length) {
-    var key = props[index],
-        objValue = object[key],
-        srcValue = values[index];
-
-    if (noCustomizer && strictCompareFlags[index]) {
-      var result = objValue !== undefined || (key in object);
-    } else {
-      result = customizer ? customizer(objValue, srcValue, key) : undefined;
-      if (result === undefined) {
-        result = baseIsEqual(srcValue, objValue, customizer, true);
-      }
-    }
-    if (!result) {
-      return false;
-    }
-  }
-  return true;
-}
-
-module.exports = baseIsMatch;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseLodash.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseLodash.js
deleted file mode 100644 (file)
index 15b79d3..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * The function whose prototype all chaining wrappers inherit from.
- *
- * @private
- */
-function baseLodash() {
-  // No operation performed.
-}
-
-module.exports = baseLodash;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMap.js
deleted file mode 100644 (file)
index 29b40c2..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var baseEach = require('./baseEach'),
-    getLength = require('./getLength'),
-    isLength = require('./isLength');
-
-/**
- * The base implementation of `_.map` without support for callback shorthands
- * and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns the new mapped array.
- */
-function baseMap(collection, iteratee) {
-  var index = -1,
-      length = getLength(collection),
-      result = isLength(length) ? Array(length) : [];
-
-  baseEach(collection, function(value, key, collection) {
-    result[++index] = iteratee(value, key, collection);
-  });
-  return result;
-}
-
-module.exports = baseMap;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatches.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatches.js
deleted file mode 100644 (file)
index 885e9f7..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-var baseIsMatch = require('./baseIsMatch'),
-    constant = require('../utility/constant'),
-    isStrictComparable = require('./isStrictComparable'),
-    keys = require('../object/keys'),
-    toObject = require('./toObject');
-
-/**
- * The base implementation of `_.matches` which does not clone `source`.
- *
- * @private
- * @param {Object} source The object of property values to match.
- * @returns {Function} Returns the new function.
- */
-function baseMatches(source) {
-  var props = keys(source),
-      length = props.length;
-
-  if (!length) {
-    return constant(true);
-  }
-  if (length == 1) {
-    var key = props[0],
-        value = source[key];
-
-    if (isStrictComparable(value)) {
-      return function(object) {
-        if (object == null) {
-          return false;
-        }
-        return object[key] === value && (value !== undefined || (key in toObject(object)));
-      };
-    }
-  }
-  var values = Array(length),
-      strictCompareFlags = Array(length);
-
-  while (length--) {
-    value = source[props[length]];
-    values[length] = value;
-    strictCompareFlags[length] = isStrictComparable(value);
-  }
-  return function(object) {
-    return object != null && baseIsMatch(toObject(object), props, values, strictCompareFlags);
-  };
-}
-
-module.exports = baseMatches;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatchesProperty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMatchesProperty.js
deleted file mode 100644 (file)
index 1bbd346..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-var baseGet = require('./baseGet'),
-    baseIsEqual = require('./baseIsEqual'),
-    baseSlice = require('./baseSlice'),
-    isArray = require('../lang/isArray'),
-    isKey = require('./isKey'),
-    isStrictComparable = require('./isStrictComparable'),
-    last = require('../array/last'),
-    toObject = require('./toObject'),
-    toPath = require('./toPath');
-
-/**
- * The base implementation of `_.matchesProperty` which does not which does
- * not clone `value`.
- *
- * @private
- * @param {string} path The path of the property to get.
- * @param {*} value The value to compare.
- * @returns {Function} Returns the new function.
- */
-function baseMatchesProperty(path, value) {
-  var isArr = isArray(path),
-      isCommon = isKey(path) && isStrictComparable(value),
-      pathKey = (path + '');
-
-  path = toPath(path);
-  return function(object) {
-    if (object == null) {
-      return false;
-    }
-    var key = pathKey;
-    object = toObject(object);
-    if ((isArr || !isCommon) && !(key in object)) {
-      object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-      if (object == null) {
-        return false;
-      }
-      key = last(path);
-      object = toObject(object);
-    }
-    return object[key] === value
-      ? (value !== undefined || (key in object))
-      : baseIsEqual(value, object[key], null, true);
-  };
-}
-
-module.exports = baseMatchesProperty;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMerge.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMerge.js
deleted file mode 100644 (file)
index f12e737..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-var arrayEach = require('./arrayEach'),
-    baseMergeDeep = require('./baseMergeDeep'),
-    getSymbols = require('./getSymbols'),
-    isArray = require('../lang/isArray'),
-    isLength = require('./isLength'),
-    isObject = require('../lang/isObject'),
-    isObjectLike = require('./isObjectLike'),
-    isTypedArray = require('../lang/isTypedArray'),
-    keys = require('../object/keys');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var push = arrayProto.push;
-
-/**
- * The base implementation of `_.merge` without support for argument juggling,
- * multiple sources, and `this` binding `customizer` functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {Function} [customizer] The function to customize merging properties.
- * @param {Array} [stackA=[]] Tracks traversed source objects.
- * @param {Array} [stackB=[]] Associates values with source counterparts.
- * @returns {Object} Returns `object`.
- */
-function baseMerge(object, source, customizer, stackA, stackB) {
-  if (!isObject(object)) {
-    return object;
-  }
-  var isSrcArr = isLength(source.length) && (isArray(source) || isTypedArray(source));
-  if (!isSrcArr) {
-    var props = keys(source);
-    push.apply(props, getSymbols(source));
-  }
-  arrayEach(props || source, function(srcValue, key) {
-    if (props) {
-      key = srcValue;
-      srcValue = source[key];
-    }
-    if (isObjectLike(srcValue)) {
-      stackA || (stackA = []);
-      stackB || (stackB = []);
-      baseMergeDeep(object, source, key, baseMerge, customizer, stackA, stackB);
-    }
-    else {
-      var value = object[key],
-          result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-          isCommon = result === undefined;
-
-      if (isCommon) {
-        result = srcValue;
-      }
-      if ((isSrcArr || result !== undefined) &&
-          (isCommon || (result === result ? (result !== value) : (value === value)))) {
-        object[key] = result;
-      }
-    }
-  });
-  return object;
-}
-
-module.exports = baseMerge;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMergeDeep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseMergeDeep.js
deleted file mode 100644 (file)
index e734cb2..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-var arrayCopy = require('./arrayCopy'),
-    getLength = require('./getLength'),
-    isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    isLength = require('./isLength'),
-    isPlainObject = require('../lang/isPlainObject'),
-    isTypedArray = require('../lang/isTypedArray'),
-    toPlainObject = require('../lang/toPlainObject');
-
-/**
- * A specialized version of `baseMerge` for arrays and objects which performs
- * deep merges and tracks traversed objects enabling objects with circular
- * references to be merged.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {string} key The key of the value to merge.
- * @param {Function} mergeFunc The function to merge values.
- * @param {Function} [customizer] The function to customize merging properties.
- * @param {Array} [stackA=[]] Tracks traversed source objects.
- * @param {Array} [stackB=[]] Associates values with source counterparts.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function baseMergeDeep(object, source, key, mergeFunc, customizer, stackA, stackB) {
-  var length = stackA.length,
-      srcValue = source[key];
-
-  while (length--) {
-    if (stackA[length] == srcValue) {
-      object[key] = stackB[length];
-      return;
-    }
-  }
-  var value = object[key],
-      result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-      isCommon = result === undefined;
-
-  if (isCommon) {
-    result = srcValue;
-    if (isLength(srcValue.length) && (isArray(srcValue) || isTypedArray(srcValue))) {
-      result = isArray(value)
-        ? value
-        : (getLength(value) ? arrayCopy(value) : []);
-    }
-    else if (isPlainObject(srcValue) || isArguments(srcValue)) {
-      result = isArguments(value)
-        ? toPlainObject(value)
-        : (isPlainObject(value) ? value : {});
-    }
-    else {
-      isCommon = false;
-    }
-  }
-  // Add the source value to the stack of traversed objects and associate
-  // it with its merged value.
-  stackA.push(srcValue);
-  stackB.push(result);
-
-  if (isCommon) {
-    // Recursively merge objects and arrays (susceptible to call stack limits).
-    object[key] = mergeFunc(result, srcValue, customizer, stackA, stackB);
-  } else if (result === result ? (result !== value) : (value === value)) {
-    object[key] = result;
-  }
-}
-
-module.exports = baseMergeDeep;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseProperty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseProperty.js
deleted file mode 100644 (file)
index e515941..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.property` without support for deep paths.
- *
- * @private
- * @param {string} key The key of the property to get.
- * @returns {Function} Returns the new function.
- */
-function baseProperty(key) {
-  return function(object) {
-    return object == null ? undefined : object[key];
-  };
-}
-
-module.exports = baseProperty;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePropertyDeep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePropertyDeep.js
deleted file mode 100644 (file)
index 1b6ce40..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var baseGet = require('./baseGet'),
-    toPath = require('./toPath');
-
-/**
- * A specialized version of `baseProperty` which supports deep paths.
- *
- * @private
- * @param {Array|string} path The path of the property to get.
- * @returns {Function} Returns the new function.
- */
-function basePropertyDeep(path) {
-  var pathKey = (path + '');
-  path = toPath(path);
-  return function(object) {
-    return baseGet(object, path, pathKey);
-  };
-}
-
-module.exports = basePropertyDeep;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePullAt.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/basePullAt.js
deleted file mode 100644 (file)
index cdb3c58..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var isIndex = require('./isIndex');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var splice = arrayProto.splice;
-
-/**
- * The base implementation of `_.pullAt` without support for individual
- * index arguments and capturing the removed elements.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {number[]} indexes The indexes of elements to remove.
- * @returns {Array} Returns `array`.
- */
-function basePullAt(array, indexes) {
-  var length = indexes.length;
-  while (length--) {
-    var index = parseFloat(indexes[length]);
-    if (index != previous && isIndex(index)) {
-      var previous = index;
-      splice.call(array, index, 1);
-    }
-  }
-  return array;
-}
-
-module.exports = basePullAt;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseRandom.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseRandom.js
deleted file mode 100644 (file)
index d71bb16..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/** Native method references. */
-var floor = Math.floor;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeRandom = Math.random;
-
-/**
- * The base implementation of `_.random` without support for argument juggling
- * and returning floating-point numbers.
- *
- * @private
- * @param {number} min The minimum possible value.
- * @param {number} max The maximum possible value.
- * @returns {number} Returns the random number.
- */
-function baseRandom(min, max) {
-  return min + floor(nativeRandom() * (max - min + 1));
-}
-
-module.exports = baseRandom;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseReduce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseReduce.js
deleted file mode 100644 (file)
index 5e6ae55..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * The base implementation of `_.reduce` and `_.reduceRight` without support
- * for callback shorthands and `this` binding, which iterates over `collection`
- * using the provided `eachFunc`.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} accumulator The initial value.
- * @param {boolean} initFromCollection Specify using the first or last element
- *  of `collection` as the initial value.
- * @param {Function} eachFunc The function to iterate over `collection`.
- * @returns {*} Returns the accumulated value.
- */
-function baseReduce(collection, iteratee, accumulator, initFromCollection, eachFunc) {
-  eachFunc(collection, function(value, index, collection) {
-    accumulator = initFromCollection
-      ? (initFromCollection = false, value)
-      : iteratee(accumulator, value, index, collection);
-  });
-  return accumulator;
-}
-
-module.exports = baseReduce;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSetData.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSetData.js
deleted file mode 100644 (file)
index 5c98622..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var identity = require('../utility/identity'),
-    metaMap = require('./metaMap');
-
-/**
- * The base implementation of `setData` without support for hot loop detection.
- *
- * @private
- * @param {Function} func The function to associate metadata with.
- * @param {*} data The metadata.
- * @returns {Function} Returns `func`.
- */
-var baseSetData = !metaMap ? identity : function(func, data) {
-  metaMap.set(func, data);
-  return func;
-};
-
-module.exports = baseSetData;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSlice.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSlice.js
deleted file mode 100644 (file)
index 9d1012e..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- * The base implementation of `_.slice` without an iteratee call guard.
- *
- * @private
- * @param {Array} array The array to slice.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns the slice of `array`.
- */
-function baseSlice(array, start, end) {
-  var index = -1,
-      length = array.length;
-
-  start = start == null ? 0 : (+start || 0);
-  if (start < 0) {
-    start = -start > length ? 0 : (length + start);
-  }
-  end = (end === undefined || end > length) ? length : (+end || 0);
-  if (end < 0) {
-    end += length;
-  }
-  length = start > end ? 0 : ((end - start) >>> 0);
-  start >>>= 0;
-
-  var result = Array(length);
-  while (++index < length) {
-    result[index] = array[index + start];
-  }
-  return result;
-}
-
-module.exports = baseSlice;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSome.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSome.js
deleted file mode 100644 (file)
index 39a0058..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var baseEach = require('./baseEach');
-
-/**
- * The base implementation of `_.some` without support for callback shorthands
- * and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- *  else `false`.
- */
-function baseSome(collection, predicate) {
-  var result;
-
-  baseEach(collection, function(value, index, collection) {
-    result = predicate(value, index, collection);
-    return !result;
-  });
-  return !!result;
-}
-
-module.exports = baseSome;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortBy.js
deleted file mode 100644 (file)
index fec0afe..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * The base implementation of `_.sortBy` which uses `comparer` to define
- * the sort order of `array` and replaces criteria objects with their
- * corresponding values.
- *
- * @private
- * @param {Array} array The array to sort.
- * @param {Function} comparer The function to define sort order.
- * @returns {Array} Returns `array`.
- */
-function baseSortBy(array, comparer) {
-  var length = array.length;
-
-  array.sort(comparer);
-  while (length--) {
-    array[length] = array[length].value;
-  }
-  return array;
-}
-
-module.exports = baseSortBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortByOrder.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSortByOrder.js
deleted file mode 100644 (file)
index 0a9ef20..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var arrayMap = require('./arrayMap'),
-    baseCallback = require('./baseCallback'),
-    baseMap = require('./baseMap'),
-    baseSortBy = require('./baseSortBy'),
-    compareMultiple = require('./compareMultiple');
-
-/**
- * The base implementation of `_.sortByOrder` without param guards.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
- * @param {boolean[]} orders The sort orders of `iteratees`.
- * @returns {Array} Returns the new sorted array.
- */
-function baseSortByOrder(collection, iteratees, orders) {
-  var index = -1;
-
-  iteratees = arrayMap(iteratees, function(iteratee) { return baseCallback(iteratee); });
-
-  var result = baseMap(collection, function(value) {
-    var criteria = arrayMap(iteratees, function(iteratee) { return iteratee(value); });
-    return { 'criteria': criteria, 'index': ++index, 'value': value };
-  });
-
-  return baseSortBy(result, function(object, other) {
-    return compareMultiple(object, other, orders);
-  });
-}
-
-module.exports = baseSortByOrder;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseSum.js
deleted file mode 100644 (file)
index 019e5ae..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var baseEach = require('./baseEach');
-
-/**
- * The base implementation of `_.sum` without support for callback shorthands
- * and `this` binding.
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {number} Returns the sum.
- */
-function baseSum(collection, iteratee) {
-  var result = 0;
-  baseEach(collection, function(value, index, collection) {
-    result += +iteratee(value, index, collection) || 0;
-  });
-  return result;
-}
-
-module.exports = baseSum;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseToString.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseToString.js
deleted file mode 100644 (file)
index 3b0d0ec..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Converts `value` to a string if it is not one. An empty string is returned
- * for `null` or `undefined` values.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {string} Returns the string.
- */
-function baseToString(value) {
-  if (typeof value == 'string') {
-    return value;
-  }
-  return value == null ? '' : (value + '');
-}
-
-module.exports = baseToString;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseUniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseUniq.js
deleted file mode 100644 (file)
index a70c8cb..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-var baseIndexOf = require('./baseIndexOf'),
-    cacheIndexOf = require('./cacheIndexOf'),
-    createCache = require('./createCache');
-
-/**
- * The base implementation of `_.uniq` without support for callback shorthands
- * and `this` binding.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Function} [iteratee] The function invoked per iteration.
- * @returns {Array} Returns the new duplicate-value-free array.
- */
-function baseUniq(array, iteratee) {
-  var index = -1,
-      indexOf = baseIndexOf,
-      length = array.length,
-      isCommon = true,
-      isLarge = isCommon && length >= 200,
-      seen = isLarge ? createCache() : null,
-      result = [];
-
-  if (seen) {
-    indexOf = cacheIndexOf;
-    isCommon = false;
-  } else {
-    isLarge = false;
-    seen = iteratee ? [] : result;
-  }
-  outer:
-  while (++index < length) {
-    var value = array[index],
-        computed = iteratee ? iteratee(value, index, array) : value;
-
-    if (isCommon && value === value) {
-      var seenIndex = seen.length;
-      while (seenIndex--) {
-        if (seen[seenIndex] === computed) {
-          continue outer;
-        }
-      }
-      if (iteratee) {
-        seen.push(computed);
-      }
-      result.push(value);
-    }
-    else if (indexOf(seen, computed, 0) < 0) {
-      if (iteratee || isLarge) {
-        seen.push(computed);
-      }
-      result.push(value);
-    }
-  }
-  return result;
-}
-
-module.exports = baseUniq;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseValues.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseValues.js
deleted file mode 100644 (file)
index e8d3ac7..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * The base implementation of `_.values` and `_.valuesIn` which creates an
- * array of `object` property values corresponding to the property names
- * of `props`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array} props The property names to get values for.
- * @returns {Object} Returns the array of property values.
- */
-function baseValues(object, props) {
-  var index = -1,
-      length = props.length,
-      result = Array(length);
-
-  while (++index < length) {
-    result[index] = object[props[index]];
-  }
-  return result;
-}
-
-module.exports = baseValues;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWhile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWhile.js
deleted file mode 100644 (file)
index c24e9bd..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var baseSlice = require('./baseSlice');
-
-/**
- * The base implementation of `_.dropRightWhile`, `_.dropWhile`, `_.takeRightWhile`,
- * and `_.takeWhile` without support for callback shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to query.
- * @param {Function} predicate The function invoked per iteration.
- * @param {boolean} [isDrop] Specify dropping elements instead of taking them.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Array} Returns the slice of `array`.
- */
-function baseWhile(array, predicate, isDrop, fromRight) {
-  var length = array.length,
-      index = fromRight ? length : -1;
-
-  while ((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)) {}
-  return isDrop
-    ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))
-    : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));
-}
-
-module.exports = baseWhile;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWrapperValue.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/baseWrapperValue.js
deleted file mode 100644 (file)
index 49c14fb..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var LazyWrapper = require('./LazyWrapper');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var push = arrayProto.push;
-
-/**
- * The base implementation of `wrapperValue` which returns the result of
- * performing a sequence of actions on the unwrapped `value`, where each
- * successive action is supplied the return value of the previous.
- *
- * @private
- * @param {*} value The unwrapped value.
- * @param {Array} actions Actions to peform to resolve the unwrapped value.
- * @returns {*} Returns the resolved value.
- */
-function baseWrapperValue(value, actions) {
-  var result = value;
-  if (result instanceof LazyWrapper) {
-    result = result.value();
-  }
-  var index = -1,
-      length = actions.length;
-
-  while (++index < length) {
-    var args = [result],
-        action = actions[index];
-
-    push.apply(args, action.args);
-    result = action.func.apply(action.thisArg, args);
-  }
-  return result;
-}
-
-module.exports = baseWrapperValue;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndex.js
deleted file mode 100644 (file)
index cd5a072..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var binaryIndexBy = require('./binaryIndexBy'),
-    identity = require('../utility/identity');
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1,
-    HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
-
-/**
- * Performs a binary search of `array` to determine the index at which `value`
- * should be inserted into `array` in order to maintain its sort order.
- *
- * @private
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {boolean} [retHighest] Specify returning the highest qualified index.
- * @returns {number} Returns the index at which `value` should be inserted
- *  into `array`.
- */
-function binaryIndex(array, value, retHighest) {
-  var low = 0,
-      high = array ? array.length : low;
-
-  if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
-    while (low < high) {
-      var mid = (low + high) >>> 1,
-          computed = array[mid];
-
-      if (retHighest ? (computed <= value) : (computed < value)) {
-        low = mid + 1;
-      } else {
-        high = mid;
-      }
-    }
-    return high;
-  }
-  return binaryIndexBy(array, value, identity, retHighest);
-}
-
-module.exports = binaryIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndexBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/binaryIndexBy.js
deleted file mode 100644 (file)
index fc627b6..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/** Native method references. */
-var floor = Math.floor;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1,
-    MAX_ARRAY_INDEX =  MAX_ARRAY_LENGTH - 1;
-
-/**
- * This function is like `binaryIndex` except that it invokes `iteratee` for
- * `value` and each element of `array` to compute their sort ranking. The
- * iteratee is invoked with one argument; (value).
- *
- * @private
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {boolean} [retHighest] Specify returning the highest qualified index.
- * @returns {number} Returns the index at which `value` should be inserted
- *  into `array`.
- */
-function binaryIndexBy(array, value, iteratee, retHighest) {
-  value = iteratee(value);
-
-  var low = 0,
-      high = array ? array.length : 0,
-      valIsNaN = value !== value,
-      valIsUndef = value === undefined;
-
-  while (low < high) {
-    var mid = floor((low + high) / 2),
-        computed = iteratee(array[mid]),
-        isReflexive = computed === computed;
-
-    if (valIsNaN) {
-      var setLow = isReflexive || retHighest;
-    } else if (valIsUndef) {
-      setLow = isReflexive && (retHighest || computed !== undefined);
-    } else {
-      setLow = retHighest ? (computed <= value) : (computed < value);
-    }
-    if (setLow) {
-      low = mid + 1;
-    } else {
-      high = mid;
-    }
-  }
-  return nativeMin(high, MAX_ARRAY_INDEX);
-}
-
-module.exports = binaryIndexBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bindCallback.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bindCallback.js
deleted file mode 100644 (file)
index cdc7f49..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var identity = require('../utility/identity');
-
-/**
- * A specialized version of `baseCallback` which only supports `this` binding
- * and specifying the number of arguments to provide to `func`.
- *
- * @private
- * @param {Function} func The function to bind.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {number} [argCount] The number of arguments to provide to `func`.
- * @returns {Function} Returns the callback.
- */
-function bindCallback(func, thisArg, argCount) {
-  if (typeof func != 'function') {
-    return identity;
-  }
-  if (thisArg === undefined) {
-    return func;
-  }
-  switch (argCount) {
-    case 1: return function(value) {
-      return func.call(thisArg, value);
-    };
-    case 3: return function(value, index, collection) {
-      return func.call(thisArg, value, index, collection);
-    };
-    case 4: return function(accumulator, value, index, collection) {
-      return func.call(thisArg, accumulator, value, index, collection);
-    };
-    case 5: return function(value, other, key, object, source) {
-      return func.call(thisArg, value, other, key, object, source);
-    };
-  }
-  return function() {
-    return func.apply(thisArg, arguments);
-  };
-}
-
-module.exports = bindCallback;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bufferClone.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/bufferClone.js
deleted file mode 100644 (file)
index 40322e1..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-var constant = require('../utility/constant'),
-    isNative = require('../lang/isNative');
-
-/** Native method references. */
-var ArrayBuffer = isNative(ArrayBuffer = global.ArrayBuffer) && ArrayBuffer,
-    bufferSlice = isNative(bufferSlice = ArrayBuffer && new ArrayBuffer(0).slice) && bufferSlice,
-    floor = Math.floor,
-    Uint8Array = isNative(Uint8Array = global.Uint8Array) && Uint8Array;
-
-/** Used to clone array buffers. */
-var Float64Array = (function() {
-  // Safari 5 errors when using an array buffer to initialize a typed array
-  // where the array buffer's `byteLength` is not a multiple of the typed
-  // array's `BYTES_PER_ELEMENT`.
-  try {
-    var func = isNative(func = global.Float64Array) && func,
-        result = new func(new ArrayBuffer(10), 0, 1) && func;
-  } catch(e) {}
-  return result;
-}());
-
-/** Used as the size, in bytes, of each `Float64Array` element. */
-var FLOAT64_BYTES_PER_ELEMENT = Float64Array ? Float64Array.BYTES_PER_ELEMENT : 0;
-
-/**
- * Creates a clone of the given array buffer.
- *
- * @private
- * @param {ArrayBuffer} buffer The array buffer to clone.
- * @returns {ArrayBuffer} Returns the cloned array buffer.
- */
-function bufferClone(buffer) {
-  return bufferSlice.call(buffer, 0);
-}
-if (!bufferSlice) {
-  // PhantomJS has `ArrayBuffer` and `Uint8Array` but not `Float64Array`.
-  bufferClone = !(ArrayBuffer && Uint8Array) ? constant(null) : function(buffer) {
-    var byteLength = buffer.byteLength,
-        floatLength = Float64Array ? floor(byteLength / FLOAT64_BYTES_PER_ELEMENT) : 0,
-        offset = floatLength * FLOAT64_BYTES_PER_ELEMENT,
-        result = new ArrayBuffer(byteLength);
-
-    if (floatLength) {
-      var view = new Float64Array(result, 0, floatLength);
-      view.set(new Float64Array(buffer, 0, floatLength));
-    }
-    if (byteLength != offset) {
-      view = new Uint8Array(result, offset);
-      view.set(new Uint8Array(buffer, offset));
-    }
-    return result;
-  };
-}
-
-module.exports = bufferClone;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cacheIndexOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cacheIndexOf.js
deleted file mode 100644 (file)
index 09f698a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var isObject = require('../lang/isObject');
-
-/**
- * Checks if `value` is in `cache` mimicking the return signature of
- * `_.indexOf` by returning `0` if the value is found, else `-1`.
- *
- * @private
- * @param {Object} cache The cache to search.
- * @param {*} value The value to search for.
- * @returns {number} Returns `0` if `value` is found, else `-1`.
- */
-function cacheIndexOf(cache, value) {
-  var data = cache.data,
-      result = (typeof value == 'string' || isObject(value)) ? data.set.has(value) : data.hash[value];
-
-  return result ? 0 : -1;
-}
-
-module.exports = cacheIndexOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cachePush.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/cachePush.js
deleted file mode 100644 (file)
index ba03a15..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var isObject = require('../lang/isObject');
-
-/**
- * Adds `value` to the cache.
- *
- * @private
- * @name push
- * @memberOf SetCache
- * @param {*} value The value to cache.
- */
-function cachePush(value) {
-  var data = this.data;
-  if (typeof value == 'string' || isObject(value)) {
-    data.set.add(value);
-  } else {
-    data.hash[value] = true;
-  }
-}
-
-module.exports = cachePush;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charAtCallback.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charAtCallback.js
deleted file mode 100644 (file)
index fbc3a91..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * Used by `_.max` and `_.min` as the default callback for string values.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {number} Returns the code unit of the first character of the string.
- */
-function charAtCallback(string) {
-  return string.charCodeAt(0);
-}
-
-module.exports = charAtCallback;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsLeftIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsLeftIndex.js
deleted file mode 100644 (file)
index a6d1d81..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Used by `_.trim` and `_.trimLeft` to get the index of the first character
- * of `string` that is not found in `chars`.
- *
- * @private
- * @param {string} string The string to inspect.
- * @param {string} chars The characters to find.
- * @returns {number} Returns the index of the first character not found in `chars`.
- */
-function charsLeftIndex(string, chars) {
-  var index = -1,
-      length = string.length;
-
-  while (++index < length && chars.indexOf(string.charAt(index)) > -1) {}
-  return index;
-}
-
-module.exports = charsLeftIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsRightIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/charsRightIndex.js
deleted file mode 100644 (file)
index 1251dcb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Used by `_.trim` and `_.trimRight` to get the index of the last character
- * of `string` that is not found in `chars`.
- *
- * @private
- * @param {string} string The string to inspect.
- * @param {string} chars The characters to find.
- * @returns {number} Returns the index of the last character not found in `chars`.
- */
-function charsRightIndex(string, chars) {
-  var index = string.length;
-
-  while (index-- && chars.indexOf(string.charAt(index)) > -1) {}
-  return index;
-}
-
-module.exports = charsRightIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareAscending.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareAscending.js
deleted file mode 100644 (file)
index 07f0019..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var baseCompareAscending = require('./baseCompareAscending');
-
-/**
- * Used by `_.sortBy` to compare transformed elements of a collection and stable
- * sort them in ascending order.
- *
- * @private
- * @param {Object} object The object to compare to `other`.
- * @param {Object} other The object to compare to `object`.
- * @returns {number} Returns the sort order indicator for `object`.
- */
-function compareAscending(object, other) {
-  return baseCompareAscending(object.criteria, other.criteria) || (object.index - other.index);
-}
-
-module.exports = compareAscending;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareMultiple.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/compareMultiple.js
deleted file mode 100644 (file)
index cc6c86c..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var baseCompareAscending = require('./baseCompareAscending');
-
-/**
- * Used by `_.sortByOrder` to compare multiple properties of each element
- * in a collection and stable sort them in the following order:
- *
- * If `orders` is unspecified, sort in ascending order for all properties.
- * Otherwise, for each property, sort in ascending order if its corresponding value in
- * orders is true, and descending order if false.
- *
- * @private
- * @param {Object} object The object to compare to `other`.
- * @param {Object} other The object to compare to `object`.
- * @param {boolean[]} orders The order to sort by for each property.
- * @returns {number} Returns the sort order indicator for `object`.
- */
-function compareMultiple(object, other, orders) {
-  var index = -1,
-      objCriteria = object.criteria,
-      othCriteria = other.criteria,
-      length = objCriteria.length,
-      ordersLength = orders.length;
-
-  while (++index < length) {
-    var result = baseCompareAscending(objCriteria[index], othCriteria[index]);
-    if (result) {
-      if (index >= ordersLength) {
-        return result;
-      }
-      return result * (orders[index] ? 1 : -1);
-    }
-  }
-  // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications
-  // that causes it, under certain circumstances, to provide the same value for
-  // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247
-  // for more details.
-  //
-  // This also ensures a stable sort in V8 and other engines.
-  // See https://code.google.com/p/v8/issues/detail?id=90 for more details.
-  return object.index - other.index;
-}
-
-module.exports = compareMultiple;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgs.js
deleted file mode 100644 (file)
index f5a98d5..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates an array that is the composition of partially applied arguments,
- * placeholders, and provided arguments into a single array of arguments.
- *
- * @private
- * @param {Array|Object} args The provided arguments.
- * @param {Array} partials The arguments to prepend to those provided.
- * @param {Array} holders The `partials` placeholder indexes.
- * @returns {Array} Returns the new array of composed arguments.
- */
-function composeArgs(args, partials, holders) {
-  var holdersLength = holders.length,
-      argsIndex = -1,
-      argsLength = nativeMax(args.length - holdersLength, 0),
-      leftIndex = -1,
-      leftLength = partials.length,
-      result = Array(argsLength + leftLength);
-
-  while (++leftIndex < leftLength) {
-    result[leftIndex] = partials[leftIndex];
-  }
-  while (++argsIndex < holdersLength) {
-    result[holders[argsIndex]] = args[argsIndex];
-  }
-  while (argsLength--) {
-    result[leftIndex++] = args[argsIndex++];
-  }
-  return result;
-}
-
-module.exports = composeArgs;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgsRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/composeArgsRight.js
deleted file mode 100644 (file)
index 8064ece..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * This function is like `composeArgs` except that the arguments composition
- * is tailored for `_.partialRight`.
- *
- * @private
- * @param {Array|Object} args The provided arguments.
- * @param {Array} partials The arguments to append to those provided.
- * @param {Array} holders The `partials` placeholder indexes.
- * @returns {Array} Returns the new array of composed arguments.
- */
-function composeArgsRight(args, partials, holders) {
-  var holdersIndex = -1,
-      holdersLength = holders.length,
-      argsIndex = -1,
-      argsLength = nativeMax(args.length - holdersLength, 0),
-      rightIndex = -1,
-      rightLength = partials.length,
-      result = Array(argsLength + rightLength);
-
-  while (++argsIndex < argsLength) {
-    result[argsIndex] = args[argsIndex];
-  }
-  var pad = argsIndex;
-  while (++rightIndex < rightLength) {
-    result[pad + rightIndex] = partials[rightIndex];
-  }
-  while (++holdersIndex < holdersLength) {
-    result[pad + holders[holdersIndex]] = args[argsIndex++];
-  }
-  return result;
-}
-
-module.exports = composeArgsRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAggregator.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAggregator.js
deleted file mode 100644 (file)
index 5137861..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    baseEach = require('./baseEach'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates a function that aggregates a collection, creating an accumulator
- * object composed from the results of running each element in the collection
- * through an iteratee.
- *
- * **Note:** This function is used to create `_.countBy`, `_.groupBy`, `_.indexBy`,
- * and `_.partition`.
- *
- * @private
- * @param {Function} setter The function to set keys and values of the accumulator object.
- * @param {Function} [initializer] The function to initialize the accumulator object.
- * @returns {Function} Returns the new aggregator function.
- */
-function createAggregator(setter, initializer) {
-  return function(collection, iteratee, thisArg) {
-    var result = initializer ? initializer() : {};
-    iteratee = baseCallback(iteratee, thisArg, 3);
-
-    if (isArray(collection)) {
-      var index = -1,
-          length = collection.length;
-
-      while (++index < length) {
-        var value = collection[index];
-        setter(result, value, iteratee(value, index, collection), collection);
-      }
-    } else {
-      baseEach(collection, function(value, key, collection) {
-        setter(result, value, iteratee(value, key, collection), collection);
-      });
-    }
-    return result;
-  };
-}
-
-module.exports = createAggregator;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAssigner.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createAssigner.js
deleted file mode 100644 (file)
index 43593f0..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var bindCallback = require('./bindCallback'),
-    isIterateeCall = require('./isIterateeCall'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates a function that assigns properties of source object(s) to a given
- * destination object.
- *
- * **Note:** This function is used to create `_.assign`, `_.defaults`, and `_.merge`.
- *
- * @private
- * @param {Function} assigner The function to assign values.
- * @returns {Function} Returns the new assigner function.
- */
-function createAssigner(assigner) {
-  return restParam(function(object, sources) {
-    var index = -1,
-        length = object == null ? 0 : sources.length,
-        customizer = length > 2 && sources[length - 2],
-        guard = length > 2 && sources[2],
-        thisArg = length > 1 && sources[length - 1];
-
-    if (typeof customizer == 'function') {
-      customizer = bindCallback(customizer, thisArg, 5);
-      length -= 2;
-    } else {
-      customizer = typeof thisArg == 'function' ? thisArg : null;
-      length -= (customizer ? 1 : 0);
-    }
-    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
-      customizer = length < 3 ? null : customizer;
-      length = 1;
-    }
-    while (++index < length) {
-      var source = sources[index];
-      if (source) {
-        assigner(object, source, customizer);
-      }
-    }
-    return object;
-  });
-}
-
-module.exports = createAssigner;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseEach.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseEach.js
deleted file mode 100644 (file)
index b55c39b..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var getLength = require('./getLength'),
-    isLength = require('./isLength'),
-    toObject = require('./toObject');
-
-/**
- * Creates a `baseEach` or `baseEachRight` function.
- *
- * @private
- * @param {Function} eachFunc The function to iterate over a collection.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new base function.
- */
-function createBaseEach(eachFunc, fromRight) {
-  return function(collection, iteratee) {
-    var length = collection ? getLength(collection) : 0;
-    if (!isLength(length)) {
-      return eachFunc(collection, iteratee);
-    }
-    var index = fromRight ? length : -1,
-        iterable = toObject(collection);
-
-    while ((fromRight ? index-- : ++index < length)) {
-      if (iteratee(iterable[index], index, iterable) === false) {
-        break;
-      }
-    }
-    return collection;
-  };
-}
-
-module.exports = createBaseEach;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseFor.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBaseFor.js
deleted file mode 100644 (file)
index 3c2cac5..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var toObject = require('./toObject');
-
-/**
- * Creates a base function for `_.forIn` or `_.forInRight`.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new base function.
- */
-function createBaseFor(fromRight) {
-  return function(object, iteratee, keysFunc) {
-    var iterable = toObject(object),
-        props = keysFunc(object),
-        length = props.length,
-        index = fromRight ? length : -1;
-
-    while ((fromRight ? index-- : ++index < length)) {
-      var key = props[index];
-      if (iteratee(iterable[key], key, iterable) === false) {
-        break;
-      }
-    }
-    return object;
-  };
-}
-
-module.exports = createBaseFor;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBindWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createBindWrapper.js
deleted file mode 100644 (file)
index 54086ee..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var createCtorWrapper = require('./createCtorWrapper');
-
-/**
- * Creates a function that wraps `func` and invokes it with the `this`
- * binding of `thisArg`.
- *
- * @private
- * @param {Function} func The function to bind.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @returns {Function} Returns the new bound function.
- */
-function createBindWrapper(func, thisArg) {
-  var Ctor = createCtorWrapper(func);
-
-  function wrapper() {
-    var fn = (this && this !== global && this instanceof wrapper) ? Ctor : func;
-    return fn.apply(thisArg, arguments);
-  }
-  return wrapper;
-}
-
-module.exports = createBindWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCache.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCache.js
deleted file mode 100644 (file)
index e12d9fd..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var SetCache = require('./SetCache'),
-    constant = require('../utility/constant'),
-    isNative = require('../lang/isNative');
-
-/** Native method references. */
-var Set = isNative(Set = global.Set) && Set;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeCreate = isNative(nativeCreate = Object.create) && nativeCreate;
-
-/**
- * Creates a `Set` cache object to optimize linear searches of large arrays.
- *
- * @private
- * @param {Array} [values] The values to cache.
- * @returns {null|Object} Returns the new cache object if `Set` is supported, else `null`.
- */
-var createCache = !(nativeCreate && Set) ? constant(null) : function(values) {
-  return new SetCache(values);
-};
-
-module.exports = createCache;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCompounder.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCompounder.js
deleted file mode 100644 (file)
index 4c75512..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var deburr = require('../string/deburr'),
-    words = require('../string/words');
-
-/**
- * Creates a function that produces compound words out of the words in a
- * given string.
- *
- * @private
- * @param {Function} callback The function to combine each word.
- * @returns {Function} Returns the new compounder function.
- */
-function createCompounder(callback) {
-  return function(string) {
-    var index = -1,
-        array = words(deburr(string)),
-        length = array.length,
-        result = '';
-
-    while (++index < length) {
-      result = callback(result, array[index], index);
-    }
-    return result;
-  };
-}
-
-module.exports = createCompounder;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCtorWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCtorWrapper.js
deleted file mode 100644 (file)
index 31bec3d..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var baseCreate = require('./baseCreate'),
-    isObject = require('../lang/isObject');
-
-/**
- * Creates a function that produces an instance of `Ctor` regardless of
- * whether it was invoked as part of a `new` expression or by `call` or `apply`.
- *
- * @private
- * @param {Function} Ctor The constructor to wrap.
- * @returns {Function} Returns the new wrapped function.
- */
-function createCtorWrapper(Ctor) {
-  return function() {
-    var thisBinding = baseCreate(Ctor.prototype),
-        result = Ctor.apply(thisBinding, arguments);
-
-    // Mimic the constructor's `return` behavior.
-    // See https://es5.github.io/#x13.2.2 for more details.
-    return isObject(result) ? result : thisBinding;
-  };
-}
-
-module.exports = createCtorWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCurry.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createCurry.js
deleted file mode 100644 (file)
index e140e71..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var createWrapper = require('./createWrapper'),
-    isIterateeCall = require('./isIterateeCall');
-
-/**
- * Creates a `_.curry` or `_.curryRight` function.
- *
- * @private
- * @param {boolean} flag The curry bit flag.
- * @returns {Function} Returns the new curry function.
- */
-function createCurry(flag) {
-  function curryFunc(func, arity, guard) {
-    if (guard && isIterateeCall(func, arity, guard)) {
-      arity = null;
-    }
-    var result = createWrapper(func, flag, null, null, null, null, null, arity);
-    result.placeholder = curryFunc.placeholder;
-    return result;
-  }
-  return curryFunc;
-}
-
-module.exports = createCurry;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createExtremum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createExtremum.js
deleted file mode 100644 (file)
index 4d05d2e..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    charAtCallback = require('./charAtCallback'),
-    extremumBy = require('./extremumBy'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('./isIterateeCall'),
-    isString = require('../lang/isString'),
-    toIterable = require('./toIterable');
-
-/**
- * Creates a `_.max` or `_.min` function.
- *
- * @private
- * @param {Function} arrayFunc The function to get the extremum value from an array.
- * @param {boolean} [isMin] Specify returning the minimum, instead of the maximum,
- *  extremum value.
- * @returns {Function} Returns the new extremum function.
- */
-function createExtremum(arrayFunc, isMin) {
-  return function(collection, iteratee, thisArg) {
-    if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-      iteratee = null;
-    }
-    var noIteratee = iteratee == null;
-
-    iteratee = noIteratee ? iteratee : baseCallback(iteratee, thisArg, 3);
-    if (noIteratee) {
-      var isArr = isArray(collection);
-      if (!isArr && isString(collection)) {
-        iteratee = charAtCallback;
-      } else {
-        return arrayFunc(isArr ? collection : toIterable(collection));
-      }
-    }
-    return extremumBy(collection, iteratee, isMin);
-  };
-}
-
-module.exports = createExtremum;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFind.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFind.js
deleted file mode 100644 (file)
index f65cfbf..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    baseFind = require('./baseFind'),
-    baseFindIndex = require('./baseFindIndex'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates a `_.find` or `_.findLast` function.
- *
- * @private
- * @param {Function} eachFunc The function to iterate over a collection.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new find function.
- */
-function createFind(eachFunc, fromRight) {
-  return function(collection, predicate, thisArg) {
-    predicate = baseCallback(predicate, thisArg, 3);
-    if (isArray(collection)) {
-      var index = baseFindIndex(collection, predicate, fromRight);
-      return index > -1 ? collection[index] : undefined;
-    }
-    return baseFind(collection, predicate, eachFunc);
-  }
-}
-
-module.exports = createFind;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindIndex.js
deleted file mode 100644 (file)
index 3947bea..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    baseFindIndex = require('./baseFindIndex');
-
-/**
- * Creates a `_.findIndex` or `_.findLastIndex` function.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new find function.
- */
-function createFindIndex(fromRight) {
-  return function(array, predicate, thisArg) {
-    if (!(array && array.length)) {
-      return -1;
-    }
-    predicate = baseCallback(predicate, thisArg, 3);
-    return baseFindIndex(array, predicate, fromRight);
-  };
-}
-
-module.exports = createFindIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindKey.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFindKey.js
deleted file mode 100644 (file)
index 0ce85e4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    baseFind = require('./baseFind');
-
-/**
- * Creates a `_.findKey` or `_.findLastKey` function.
- *
- * @private
- * @param {Function} objectFunc The function to iterate over an object.
- * @returns {Function} Returns the new find function.
- */
-function createFindKey(objectFunc) {
-  return function(object, predicate, thisArg) {
-    predicate = baseCallback(predicate, thisArg, 3);
-    return baseFind(object, predicate, objectFunc, true);
-  };
-}
-
-module.exports = createFindKey;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFlow.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createFlow.js
deleted file mode 100644 (file)
index 825c13f..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-var LodashWrapper = require('./LodashWrapper'),
-    getData = require('./getData'),
-    getFuncName = require('./getFuncName'),
-    isArray = require('../lang/isArray'),
-    isLaziable = require('./isLaziable');
-
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a `_.flow` or `_.flowRight` function.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new flow function.
- */
-function createFlow(fromRight) {
-  return function() {
-    var length = arguments.length;
-    if (!length) {
-      return function() { return arguments[0]; };
-    }
-    var wrapper,
-        index = fromRight ? length : -1,
-        leftIndex = 0,
-        funcs = Array(length);
-
-    while ((fromRight ? index-- : ++index < length)) {
-      var func = funcs[leftIndex++] = arguments[index];
-      if (typeof func != 'function') {
-        throw new TypeError(FUNC_ERROR_TEXT);
-      }
-      var funcName = wrapper ? '' : getFuncName(func);
-      wrapper = funcName == 'wrapper' ? new LodashWrapper([]) : wrapper;
-    }
-    index = wrapper ? -1 : length;
-    while (++index < length) {
-      func = funcs[index];
-      funcName = getFuncName(func);
-
-      var data = funcName == 'wrapper' ? getData(func) : null;
-      if (data && isLaziable(data[0])) {
-        wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);
-      } else {
-        wrapper = (func.length == 1 && isLaziable(func)) ? wrapper[funcName]() : wrapper.thru(func);
-      }
-    }
-    return function() {
-      var args = arguments;
-      if (wrapper && args.length == 1 && isArray(args[0])) {
-        return wrapper.plant(args[0]).value();
-      }
-      var index = 0,
-          result = funcs[index].apply(this, args);
-
-      while (++index < length) {
-        result = funcs[index].call(this, result);
-      }
-      return result;
-    };
-  };
-}
-
-module.exports = createFlow;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForEach.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForEach.js
deleted file mode 100644 (file)
index 2aad11c..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var bindCallback = require('./bindCallback'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates a function for `_.forEach` or `_.forEachRight`.
- *
- * @private
- * @param {Function} arrayFunc The function to iterate over an array.
- * @param {Function} eachFunc The function to iterate over a collection.
- * @returns {Function} Returns the new each function.
- */
-function createForEach(arrayFunc, eachFunc) {
-  return function(collection, iteratee, thisArg) {
-    return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
-      ? arrayFunc(collection, iteratee)
-      : eachFunc(collection, bindCallback(iteratee, thisArg, 3));
-  };
-}
-
-module.exports = createForEach;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForIn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForIn.js
deleted file mode 100644 (file)
index f63ffa0..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var bindCallback = require('./bindCallback'),
-    keysIn = require('../object/keysIn');
-
-/**
- * Creates a function for `_.forIn` or `_.forInRight`.
- *
- * @private
- * @param {Function} objectFunc The function to iterate over an object.
- * @returns {Function} Returns the new each function.
- */
-function createForIn(objectFunc) {
-  return function(object, iteratee, thisArg) {
-    if (typeof iteratee != 'function' || thisArg !== undefined) {
-      iteratee = bindCallback(iteratee, thisArg, 3);
-    }
-    return objectFunc(object, iteratee, keysIn);
-  };
-}
-
-module.exports = createForIn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForOwn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createForOwn.js
deleted file mode 100644 (file)
index b9a83c3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var bindCallback = require('./bindCallback');
-
-/**
- * Creates a function for `_.forOwn` or `_.forOwnRight`.
- *
- * @private
- * @param {Function} objectFunc The function to iterate over an object.
- * @returns {Function} Returns the new each function.
- */
-function createForOwn(objectFunc) {
-  return function(object, iteratee, thisArg) {
-    if (typeof iteratee != 'function' || thisArg !== undefined) {
-      iteratee = bindCallback(iteratee, thisArg, 3);
-    }
-    return objectFunc(object, iteratee);
-  };
-}
-
-module.exports = createForOwn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createHybridWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createHybridWrapper.js
deleted file mode 100644 (file)
index fb62371..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-var arrayCopy = require('./arrayCopy'),
-    composeArgs = require('./composeArgs'),
-    composeArgsRight = require('./composeArgsRight'),
-    createCtorWrapper = require('./createCtorWrapper'),
-    isLaziable = require('./isLaziable'),
-    reorder = require('./reorder'),
-    replaceHolders = require('./replaceHolders'),
-    setData = require('./setData');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1,
-    BIND_KEY_FLAG = 2,
-    CURRY_BOUND_FLAG = 4,
-    CURRY_FLAG = 8,
-    CURRY_RIGHT_FLAG = 16,
-    PARTIAL_FLAG = 32,
-    PARTIAL_RIGHT_FLAG = 64,
-    ARY_FLAG = 128;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that wraps `func` and invokes it with optional `this`
- * binding of, partial application, and currying.
- *
- * @private
- * @param {Function|string} func The function or method name to reference.
- * @param {number} bitmask The bitmask of flags. See `createWrapper` for more details.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {Array} [partials] The arguments to prepend to those provided to the new function.
- * @param {Array} [holders] The `partials` placeholder indexes.
- * @param {Array} [partialsRight] The arguments to append to those provided to the new function.
- * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.
- * @param {Array} [argPos] The argument positions of the new function.
- * @param {number} [ary] The arity cap of `func`.
- * @param {number} [arity] The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createHybridWrapper(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {
-  var isAry = bitmask & ARY_FLAG,
-      isBind = bitmask & BIND_FLAG,
-      isBindKey = bitmask & BIND_KEY_FLAG,
-      isCurry = bitmask & CURRY_FLAG,
-      isCurryBound = bitmask & CURRY_BOUND_FLAG,
-      isCurryRight = bitmask & CURRY_RIGHT_FLAG;
-
-  var Ctor = !isBindKey && createCtorWrapper(func),
-      key = func;
-
-  function wrapper() {
-    // Avoid `arguments` object use disqualifying optimizations by
-    // converting it to an array before providing it to other functions.
-    var length = arguments.length,
-        index = length,
-        args = Array(length);
-
-    while (index--) {
-      args[index] = arguments[index];
-    }
-    if (partials) {
-      args = composeArgs(args, partials, holders);
-    }
-    if (partialsRight) {
-      args = composeArgsRight(args, partialsRight, holdersRight);
-    }
-    if (isCurry || isCurryRight) {
-      var placeholder = wrapper.placeholder,
-          argsHolders = replaceHolders(args, placeholder);
-
-      length -= argsHolders.length;
-      if (length < arity) {
-        var newArgPos = argPos ? arrayCopy(argPos) : null,
-            newArity = nativeMax(arity - length, 0),
-            newsHolders = isCurry ? argsHolders : null,
-            newHoldersRight = isCurry ? null : argsHolders,
-            newPartials = isCurry ? args : null,
-            newPartialsRight = isCurry ? null : args;
-
-        bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG);
-        bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG);
-
-        if (!isCurryBound) {
-          bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG);
-        }
-        var newData = [func, bitmask, thisArg, newPartials, newsHolders, newPartialsRight, newHoldersRight, newArgPos, ary, newArity],
-            result = createHybridWrapper.apply(undefined, newData);
-
-        if (isLaziable(func)) {
-          setData(result, newData);
-        }
-        result.placeholder = placeholder;
-        return result;
-      }
-    }
-    var thisBinding = isBind ? thisArg : this;
-    if (isBindKey) {
-      func = thisBinding[key];
-    }
-    if (argPos) {
-      args = reorder(args, argPos);
-    }
-    if (isAry && ary < args.length) {
-      args.length = ary;
-    }
-    var fn = (this && this !== global && this instanceof wrapper) ? (Ctor || createCtorWrapper(func)) : func;
-    return fn.apply(thisBinding, args);
-  }
-  return wrapper;
-}
-
-module.exports = createHybridWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadDir.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadDir.js
deleted file mode 100644 (file)
index 430a5a1..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var baseToString = require('./baseToString'),
-    createPadding = require('./createPadding');
-
-/**
- * Creates a function for `_.padLeft` or `_.padRight`.
- *
- * @private
- * @param {boolean} [fromRight] Specify padding from the right.
- * @returns {Function} Returns the new pad function.
- */
-function createPadDir(fromRight) {
-  return function(string, length, chars) {
-    string = baseToString(string);
-    return string && ((fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string));
-  };
-}
-
-module.exports = createPadDir;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadding.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPadding.js
deleted file mode 100644 (file)
index 5797992..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var repeat = require('../string/repeat');
-
-/** Native method references. */
-var ceil = Math.ceil;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
-
-/**
- * Creates the padding required for `string` based on the given `length`.
- * The `chars` string is truncated if the number of characters exceeds `length`.
- *
- * @private
- * @param {string} string The string to create padding for.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the pad for `string`.
- */
-function createPadding(string, length, chars) {
-  var strLength = string.length;
-  length = +length;
-
-  if (strLength >= length || !nativeIsFinite(length)) {
-    return '';
-  }
-  var padLength = length - strLength;
-  chars = chars == null ? ' ' : (chars + '');
-  return repeat(chars, ceil(padLength / chars.length)).slice(0, padLength);
-}
-
-module.exports = createPadding;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartial.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartial.js
deleted file mode 100644 (file)
index c0e42b6..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var createWrapper = require('./createWrapper'),
-    replaceHolders = require('./replaceHolders'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates a `_.partial` or `_.partialRight` function.
- *
- * @private
- * @param {boolean} flag The partial bit flag.
- * @returns {Function} Returns the new partial function.
- */
-function createPartial(flag) {
-  var partialFunc = restParam(function(func, partials) {
-    var holders = replaceHolders(partials, partialFunc.placeholder);
-    return createWrapper(func, flag, null, partials, holders);
-  });
-  return partialFunc;
-}
-
-module.exports = createPartial;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartialWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createPartialWrapper.js
deleted file mode 100644 (file)
index 10af97c..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-var createCtorWrapper = require('./createCtorWrapper');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1;
-
-/**
- * Creates a function that wraps `func` and invokes it with the optional `this`
- * binding of `thisArg` and the `partials` prepended to those provided to
- * the wrapper.
- *
- * @private
- * @param {Function} func The function to partially apply arguments to.
- * @param {number} bitmask The bitmask of flags. See `createWrapper` for more details.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {Array} partials The arguments to prepend to those provided to the new function.
- * @returns {Function} Returns the new bound function.
- */
-function createPartialWrapper(func, bitmask, thisArg, partials) {
-  var isBind = bitmask & BIND_FLAG,
-      Ctor = createCtorWrapper(func);
-
-  function wrapper() {
-    // Avoid `arguments` object use disqualifying optimizations by
-    // converting it to an array before providing it `func`.
-    var argsIndex = -1,
-        argsLength = arguments.length,
-        leftIndex = -1,
-        leftLength = partials.length,
-        args = Array(argsLength + leftLength);
-
-    while (++leftIndex < leftLength) {
-      args[leftIndex] = partials[leftIndex];
-    }
-    while (argsLength--) {
-      args[leftIndex++] = arguments[++argsIndex];
-    }
-    var fn = (this && this !== global && this instanceof wrapper) ? Ctor : func;
-    return fn.apply(isBind ? thisArg : this, args);
-  }
-  return wrapper;
-}
-
-module.exports = createPartialWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createReduce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createReduce.js
deleted file mode 100644 (file)
index 816f4ce..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    baseReduce = require('./baseReduce'),
-    isArray = require('../lang/isArray');
-
-/**
- * Creates a function for `_.reduce` or `_.reduceRight`.
- *
- * @private
- * @param {Function} arrayFunc The function to iterate over an array.
- * @param {Function} eachFunc The function to iterate over a collection.
- * @returns {Function} Returns the new each function.
- */
-function createReduce(arrayFunc, eachFunc) {
-  return function(collection, iteratee, accumulator, thisArg) {
-    var initFromArray = arguments.length < 3;
-    return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
-      ? arrayFunc(collection, iteratee, accumulator, initFromArray)
-      : baseReduce(collection, baseCallback(iteratee, thisArg, 4), accumulator, initFromArray, eachFunc);
-  };
-}
-
-module.exports = createReduce;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createSortedIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createSortedIndex.js
deleted file mode 100644 (file)
index 86c7852..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var baseCallback = require('./baseCallback'),
-    binaryIndex = require('./binaryIndex'),
-    binaryIndexBy = require('./binaryIndexBy');
-
-/**
- * Creates a `_.sortedIndex` or `_.sortedLastIndex` function.
- *
- * @private
- * @param {boolean} [retHighest] Specify returning the highest qualified index.
- * @returns {Function} Returns the new index function.
- */
-function createSortedIndex(retHighest) {
-  return function(array, value, iteratee, thisArg) {
-    return iteratee == null
-      ? binaryIndex(array, value, retHighest)
-      : binaryIndexBy(array, value, baseCallback(iteratee, thisArg, 1), retHighest);
-  };
-}
-
-module.exports = createSortedIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createWrapper.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/createWrapper.js
deleted file mode 100644 (file)
index 6b53799..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-var baseSetData = require('./baseSetData'),
-    createBindWrapper = require('./createBindWrapper'),
-    createHybridWrapper = require('./createHybridWrapper'),
-    createPartialWrapper = require('./createPartialWrapper'),
-    getData = require('./getData'),
-    mergeData = require('./mergeData'),
-    setData = require('./setData');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1,
-    BIND_KEY_FLAG = 2,
-    PARTIAL_FLAG = 32,
-    PARTIAL_RIGHT_FLAG = 64;
-
-/** Used as the `TypeError` message for "Functions" methods. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that either curries or invokes `func` with optional
- * `this` binding and partially applied arguments.
- *
- * @private
- * @param {Function|string} func The function or method name to reference.
- * @param {number} bitmask The bitmask of flags.
- *  The bitmask may be composed of the following flags:
- *     1 - `_.bind`
- *     2 - `_.bindKey`
- *     4 - `_.curry` or `_.curryRight` of a bound function
- *     8 - `_.curry`
- *    16 - `_.curryRight`
- *    32 - `_.partial`
- *    64 - `_.partialRight`
- *   128 - `_.rearg`
- *   256 - `_.ary`
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {Array} [partials] The arguments to be partially applied.
- * @param {Array} [holders] The `partials` placeholder indexes.
- * @param {Array} [argPos] The argument positions of the new function.
- * @param {number} [ary] The arity cap of `func`.
- * @param {number} [arity] The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {
-  var isBindKey = bitmask & BIND_KEY_FLAG;
-  if (!isBindKey && typeof func != 'function') {
-    throw new TypeError(FUNC_ERROR_TEXT);
-  }
-  var length = partials ? partials.length : 0;
-  if (!length) {
-    bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG);
-    partials = holders = null;
-  }
-  length -= (holders ? holders.length : 0);
-  if (bitmask & PARTIAL_RIGHT_FLAG) {
-    var partialsRight = partials,
-        holdersRight = holders;
-
-    partials = holders = null;
-  }
-  var data = isBindKey ? null : getData(func),
-      newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity];
-
-  if (data) {
-    mergeData(newData, data);
-    bitmask = newData[1];
-    arity = newData[9];
-  }
-  newData[9] = arity == null
-    ? (isBindKey ? 0 : func.length)
-    : (nativeMax(arity - length, 0) || 0);
-
-  if (bitmask == BIND_FLAG) {
-    var result = createBindWrapper(newData[0], newData[2]);
-  } else if ((bitmask == PARTIAL_FLAG || bitmask == (BIND_FLAG | PARTIAL_FLAG)) && !newData[4].length) {
-    result = createPartialWrapper.apply(undefined, newData);
-  } else {
-    result = createHybridWrapper.apply(undefined, newData);
-  }
-  var setter = data ? baseSetData : setData;
-  return setter(result, newData);
-}
-
-module.exports = createWrapper;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/deburrLetter.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/deburrLetter.js
deleted file mode 100644 (file)
index e559dbe..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/** Used to map latin-1 supplementary letters to basic latin letters. */
-var deburredLetters = {
-  '\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'
-};
-
-/**
- * Used by `_.deburr` to convert latin-1 supplementary letters to basic latin letters.
- *
- * @private
- * @param {string} letter The matched letter to deburr.
- * @returns {string} Returns the deburred letter.
- */
-function deburrLetter(letter) {
-  return deburredLetters[letter];
-}
-
-module.exports = deburrLetter;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalArrays.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalArrays.js
deleted file mode 100644 (file)
index 0b032ac..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * A specialized version of `baseIsEqualDeep` for arrays with support for
- * partial deep comparisons.
- *
- * @private
- * @param {Array} array The array to compare.
- * @param {Array} other The other array to compare.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Function} [customizer] The function to customize comparing arrays.
- * @param {boolean} [isLoose] Specify performing partial comparisons.
- * @param {Array} [stackA] Tracks traversed `value` objects.
- * @param {Array} [stackB] Tracks traversed `other` objects.
- * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
- */
-function equalArrays(array, other, equalFunc, customizer, isLoose, stackA, stackB) {
-  var index = -1,
-      arrLength = array.length,
-      othLength = other.length,
-      result = true;
-
-  if (arrLength != othLength && !(isLoose && othLength > arrLength)) {
-    return false;
-  }
-  // Deep compare the contents, ignoring non-numeric properties.
-  while (result && ++index < arrLength) {
-    var arrValue = array[index],
-        othValue = other[index];
-
-    result = undefined;
-    if (customizer) {
-      result = isLoose
-        ? customizer(othValue, arrValue, index)
-        : customizer(arrValue, othValue, index);
-    }
-    if (result === undefined) {
-      // Recursively compare arrays (susceptible to call stack limits).
-      if (isLoose) {
-        var othIndex = othLength;
-        while (othIndex--) {
-          othValue = other[othIndex];
-          result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
-          if (result) {
-            break;
-          }
-        }
-      } else {
-        result = (arrValue && arrValue === othValue) || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
-      }
-    }
-  }
-  return !!result;
-}
-
-module.exports = equalArrays;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalByTag.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalByTag.js
deleted file mode 100644 (file)
index 37513d0..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]',
-    dateTag = '[object Date]',
-    errorTag = '[object Error]',
-    numberTag = '[object Number]',
-    regexpTag = '[object RegExp]',
-    stringTag = '[object String]';
-
-/**
- * A specialized version of `baseIsEqualDeep` for comparing objects of
- * the same `toStringTag`.
- *
- * **Note:** This function only supports comparing values with tags of
- * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
- *
- * @private
- * @param {Object} value The object to compare.
- * @param {Object} other The other object to compare.
- * @param {string} tag The `toStringTag` of the objects to compare.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function equalByTag(object, other, tag) {
-  switch (tag) {
-    case boolTag:
-    case dateTag:
-      // Coerce dates and booleans to numbers, dates to milliseconds and booleans
-      // to `1` or `0` treating invalid dates coerced to `NaN` as not equal.
-      return +object == +other;
-
-    case errorTag:
-      return object.name == other.name && object.message == other.message;
-
-    case numberTag:
-      // Treat `NaN` vs. `NaN` as equal.
-      return (object != +object)
-        ? other != +other
-        // But, treat `-0` vs. `+0` as not equal.
-        : (object == 0 ? ((1 / object) == (1 / other)) : object == +other);
-
-    case regexpTag:
-    case stringTag:
-      // Coerce regexes to strings and treat strings primitives and string
-      // objects as equal. See https://es5.github.io/#x15.10.6.4 for more details.
-      return object == (other + '');
-  }
-  return false;
-}
-
-module.exports = equalByTag;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalObjects.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/equalObjects.js
deleted file mode 100644 (file)
index 5ea4ec5..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-var keys = require('../object/keys');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * A specialized version of `baseIsEqualDeep` for objects with support for
- * partial deep comparisons.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Function} [customizer] The function to customize comparing values.
- * @param {boolean} [isLoose] Specify performing partial comparisons.
- * @param {Array} [stackA] Tracks traversed `value` objects.
- * @param {Array} [stackB] Tracks traversed `other` objects.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function equalObjects(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-  var objProps = keys(object),
-      objLength = objProps.length,
-      othProps = keys(other),
-      othLength = othProps.length;
-
-  if (objLength != othLength && !isLoose) {
-    return false;
-  }
-  var skipCtor = isLoose,
-      index = -1;
-
-  while (++index < objLength) {
-    var key = objProps[index],
-        result = isLoose ? key in other : hasOwnProperty.call(other, key);
-
-    if (result) {
-      var objValue = object[key],
-          othValue = other[key];
-
-      result = undefined;
-      if (customizer) {
-        result = isLoose
-          ? customizer(othValue, objValue, key)
-          : customizer(objValue, othValue, key);
-      }
-      if (result === undefined) {
-        // Recursively compare objects (susceptible to call stack limits).
-        result = (objValue && objValue === othValue) || equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB);
-      }
-    }
-    if (!result) {
-      return false;
-    }
-    skipCtor || (skipCtor = key == 'constructor');
-  }
-  if (!skipCtor) {
-    var objCtor = object.constructor,
-        othCtor = other.constructor;
-
-    // Non `Object` object instances with different constructors are not equal.
-    if (objCtor != othCtor &&
-        ('constructor' in object && 'constructor' in other) &&
-        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
-          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
-      return false;
-    }
-  }
-  return true;
-}
-
-module.exports = equalObjects;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeHtmlChar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeHtmlChar.js
deleted file mode 100644 (file)
index b21e452..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/** Used to map characters to HTML entities. */
-var htmlEscapes = {
-  '&': '&amp;',
-  '<': '&lt;',
-  '>': '&gt;',
-  '"': '&quot;',
-  "'": '&#39;',
-  '`': '&#96;'
-};
-
-/**
- * Used by `_.escape` to convert characters to HTML entities.
- *
- * @private
- * @param {string} chr The matched character to escape.
- * @returns {string} Returns the escaped character.
- */
-function escapeHtmlChar(chr) {
-  return htmlEscapes[chr];
-}
-
-module.exports = escapeHtmlChar;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeStringChar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/escapeStringChar.js
deleted file mode 100644 (file)
index c8fba0d..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/** Used to escape characters for inclusion in compiled string literals. */
-var stringEscapes = {
-  '\\': '\\',
-  "'": "'",
-  '\n': 'n',
-  '\r': 'r',
-  '\u2028': 'u2028',
-  '\u2029': 'u2029'
-};
-
-/**
- * Used by `_.template` to escape characters for inclusion in compiled
- * string literals.
- *
- * @private
- * @param {string} chr The matched character to escape.
- * @returns {string} Returns the escaped character.
- */
-function escapeStringChar(chr) {
-  return '\\' + stringEscapes[chr];
-}
-
-module.exports = escapeStringChar;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/extremumBy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/extremumBy.js
deleted file mode 100644 (file)
index ddbfe0c..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var baseEach = require('./baseEach');
-
-/** Used as references for `-Infinity` and `Infinity`. */
-var NEGATIVE_INFINITY = Number.NEGATIVE_INFINITY,
-    POSITIVE_INFINITY = Number.POSITIVE_INFINITY;
-
-/**
- * Gets the extremum value of `collection` invoking `iteratee` for each value
- * in `collection` to generate the criterion by which the value is ranked.
- * The `iteratee` is invoked with three arguments: (value, index, collection).
- *
- * @private
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {boolean} [isMin] Specify returning the minimum, instead of the
- *  maximum, extremum value.
- * @returns {*} Returns the extremum value.
- */
-function extremumBy(collection, iteratee, isMin) {
-  var exValue = isMin ? POSITIVE_INFINITY : NEGATIVE_INFINITY,
-      computed = exValue,
-      result = computed;
-
-  baseEach(collection, function(value, index, collection) {
-    var current = iteratee(value, index, collection);
-    if ((isMin ? (current < computed) : (current > computed)) ||
-        (current === exValue && current === result)) {
-      computed = current;
-      result = value;
-    }
-  });
-  return result;
-}
-
-module.exports = extremumBy;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getData.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getData.js
deleted file mode 100644 (file)
index 5bb4f46..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var metaMap = require('./metaMap'),
-    noop = require('../utility/noop');
-
-/**
- * Gets metadata for `func`.
- *
- * @private
- * @param {Function} func The function to query.
- * @returns {*} Returns the metadata for `func`.
- */
-var getData = !metaMap ? noop : function(func) {
-  return metaMap.get(func);
-};
-
-module.exports = getData;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getFuncName.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getFuncName.js
deleted file mode 100644 (file)
index 3102b71..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var baseProperty = require('./baseProperty'),
-    constant = require('../utility/constant'),
-    realNames = require('./realNames'),
-    support = require('../support');
-
-/**
- * Gets the name of `func`.
- *
- * @private
- * @param {Function} func The function to query.
- * @returns {string} Returns the function name.
- */
-var getFuncName = (function() {
-  if (!support.funcNames) {
-    return constant('');
-  }
-  if (constant.name == 'constant') {
-    return baseProperty('name');
-  }
-  return function(func) {
-    var result = func.name,
-        array = realNames[result],
-        length = array ? array.length : 0;
-
-    while (length--) {
-      var data = array[length],
-          otherFunc = data.func;
-
-      if (otherFunc == null || otherFunc == func) {
-        return data.name;
-      }
-    }
-    return result;
-  };
-}());
-
-module.exports = getFuncName;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getLength.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getLength.js
deleted file mode 100644 (file)
index 00a8622..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var baseProperty = require('./baseProperty');
-
-/**
- * Gets the "length" property value of `object`.
- *
- * **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
- * in Safari on iOS 8.1 ARM64.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {*} Returns the "length" value.
- */
-var getLength = baseProperty('length');
-
-module.exports = getLength;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getSymbols.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getSymbols.js
deleted file mode 100644 (file)
index e6a4d29..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var constant = require('../utility/constant'),
-    isNative = require('../lang/isNative'),
-    toObject = require('./toObject');
-
-/** Native method references. */
-var getOwnPropertySymbols = isNative(getOwnPropertySymbols = Object.getOwnPropertySymbols) && getOwnPropertySymbols;
-
-/**
- * Creates an array of the own symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of symbols.
- */
-var getSymbols = !getOwnPropertySymbols ? constant([]) : function(object) {
-  return getOwnPropertySymbols(toObject(object));
-};
-
-module.exports = getSymbols;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getView.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/getView.js
deleted file mode 100644 (file)
index 8cc291b..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
-    nativeMin = Math.min;
-
-/**
- * Gets the view, applying any `transforms` to the `start` and `end` positions.
- *
- * @private
- * @param {number} start The start of the view.
- * @param {number} end The end of the view.
- * @param {Array} [transforms] The transformations to apply to the view.
- * @returns {Object} Returns an object containing the `start` and `end`
- *  positions of the view.
- */
-function getView(start, end, transforms) {
-  var index = -1,
-      length = transforms ? transforms.length : 0;
-
-  while (++index < length) {
-    var data = transforms[index],
-        size = data.size;
-
-    switch (data.type) {
-      case 'drop':      start += size; break;
-      case 'dropRight': end -= size; break;
-      case 'take':      end = nativeMin(end, start + size); break;
-      case 'takeRight': start = nativeMax(start, end - size); break;
-    }
-  }
-  return { 'start': start, 'end': end };
-}
-
-module.exports = getView;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/indexOfNaN.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/indexOfNaN.js
deleted file mode 100644 (file)
index 05b8207..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Gets the index at which the first occurrence of `NaN` is found in `array`.
- *
- * @private
- * @param {Array} array The array to search.
- * @param {number} fromIndex The index to search from.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {number} Returns the index of the matched `NaN`, else `-1`.
- */
-function indexOfNaN(array, fromIndex, fromRight) {
-  var length = array.length,
-      index = fromIndex + (fromRight ? 0 : -1);
-
-  while ((fromRight ? index-- : ++index < length)) {
-    var other = array[index];
-    if (other !== other) {
-      return index;
-    }
-  }
-  return -1;
-}
-
-module.exports = indexOfNaN;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneArray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneArray.js
deleted file mode 100644 (file)
index c92dfa2..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Initializes an array clone.
- *
- * @private
- * @param {Array} array The array to clone.
- * @returns {Array} Returns the initialized clone.
- */
-function initCloneArray(array) {
-  var length = array.length,
-      result = new array.constructor(length);
-
-  // Add array properties assigned by `RegExp#exec`.
-  if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
-    result.index = array.index;
-    result.input = array.input;
-  }
-  return result;
-}
-
-module.exports = initCloneArray;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneByTag.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneByTag.js
deleted file mode 100644 (file)
index 8e3afc6..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-var bufferClone = require('./bufferClone');
-
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]',
-    dateTag = '[object Date]',
-    numberTag = '[object Number]',
-    regexpTag = '[object RegExp]',
-    stringTag = '[object String]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
-    float32Tag = '[object Float32Array]',
-    float64Tag = '[object Float64Array]',
-    int8Tag = '[object Int8Array]',
-    int16Tag = '[object Int16Array]',
-    int32Tag = '[object Int32Array]',
-    uint8Tag = '[object Uint8Array]',
-    uint8ClampedTag = '[object Uint8ClampedArray]',
-    uint16Tag = '[object Uint16Array]',
-    uint32Tag = '[object Uint32Array]';
-
-/** Used to match `RegExp` flags from their coerced string values. */
-var reFlags = /\w*$/;
-
-/**
- * Initializes an object clone based on its `toStringTag`.
- *
- * **Note:** This function only supports cloning values with tags of
- * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
- *
- * @private
- * @param {Object} object The object to clone.
- * @param {string} tag The `toStringTag` of the object to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the initialized clone.
- */
-function initCloneByTag(object, tag, isDeep) {
-  var Ctor = object.constructor;
-  switch (tag) {
-    case arrayBufferTag:
-      return bufferClone(object);
-
-    case boolTag:
-    case dateTag:
-      return new Ctor(+object);
-
-    case float32Tag: case float64Tag:
-    case int8Tag: case int16Tag: case int32Tag:
-    case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
-      var buffer = object.buffer;
-      return new Ctor(isDeep ? bufferClone(buffer) : buffer, object.byteOffset, object.length);
-
-    case numberTag:
-    case stringTag:
-      return new Ctor(object);
-
-    case regexpTag:
-      var result = new Ctor(object.source, reFlags.exec(object));
-      result.lastIndex = object.lastIndex;
-  }
-  return result;
-}
-
-module.exports = initCloneByTag;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/initCloneObject.js
deleted file mode 100644 (file)
index 48c4a23..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Initializes an object clone.
- *
- * @private
- * @param {Object} object The object to clone.
- * @returns {Object} Returns the initialized clone.
- */
-function initCloneObject(object) {
-  var Ctor = object.constructor;
-  if (!(typeof Ctor == 'function' && Ctor instanceof Ctor)) {
-    Ctor = Object;
-  }
-  return new Ctor;
-}
-
-module.exports = initCloneObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/invokePath.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/invokePath.js
deleted file mode 100644 (file)
index 935110f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var baseGet = require('./baseGet'),
-    baseSlice = require('./baseSlice'),
-    isKey = require('./isKey'),
-    last = require('../array/last'),
-    toPath = require('./toPath');
-
-/**
- * Invokes the method at `path` on `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the method to invoke.
- * @param {Array} args The arguments to invoke the method with.
- * @returns {*} Returns the result of the invoked method.
- */
-function invokePath(object, path, args) {
-  if (object != null && !isKey(path, object)) {
-    path = toPath(path);
-    object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-    path = last(path);
-  }
-  var func = object == null ? object : object[path];
-  return func == null ? undefined : func.apply(object, args);
-}
-
-module.exports = invokePath;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIndex.js
deleted file mode 100644 (file)
index caa2b94..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer)
- * of an array-like value.
- */
-var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;
-
-/**
- * Checks if `value` is a valid array-like index.
- *
- * @private
- * @param {*} value The value to check.
- * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
- * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
- */
-function isIndex(value, length) {
-  value = +value;
-  length = length == null ? MAX_SAFE_INTEGER : length;
-  return value > -1 && value % 1 == 0 && value < length;
-}
-
-module.exports = isIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIterateeCall.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isIterateeCall.js
deleted file mode 100644 (file)
index 5adfd95..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var getLength = require('./getLength'),
-    isIndex = require('./isIndex'),
-    isLength = require('./isLength'),
-    isObject = require('../lang/isObject');
-
-/**
- * Checks if the provided arguments are from an iteratee call.
- *
- * @private
- * @param {*} value The potential iteratee value argument.
- * @param {*} index The potential iteratee index or key argument.
- * @param {*} object The potential iteratee object argument.
- * @returns {boolean} Returns `true` if the arguments are from an iteratee call, else `false`.
- */
-function isIterateeCall(value, index, object) {
-  if (!isObject(object)) {
-    return false;
-  }
-  var type = typeof index;
-  if (type == 'number') {
-    var length = getLength(object),
-        prereq = isLength(length) && isIndex(index, length);
-  } else {
-    prereq = type == 'string' && index in object;
-  }
-  if (prereq) {
-    var other = object[index];
-    return value === value ? (value === other) : (other !== other);
-  }
-  return false;
-}
-
-module.exports = isIterateeCall;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isKey.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isKey.js
deleted file mode 100644 (file)
index 10005cc..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-var isArray = require('../lang/isArray'),
-    toObject = require('./toObject');
-
-/** Used to match property names within property paths. */
-var reIsDeepProp = /\.|\[(?:[^[\]]+|(["'])(?:(?!\1)[^\n\\]|\\.)*?)\1\]/,
-    reIsPlainProp = /^\w*$/;
-
-/**
- * Checks if `value` is a property name and not a property path.
- *
- * @private
- * @param {*} value The value to check.
- * @param {Object} [object] The object to query keys on.
- * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
- */
-function isKey(value, object) {
-  var type = typeof value;
-  if ((type == 'string' && reIsPlainProp.test(value)) || type == 'number') {
-    return true;
-  }
-  if (isArray(value)) {
-    return false;
-  }
-  var result = !reIsDeepProp.test(value);
-  return result || (object != null && value in toObject(object));
-}
-
-module.exports = isKey;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLaziable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLaziable.js
deleted file mode 100644 (file)
index 7b48299..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-var LazyWrapper = require('./LazyWrapper'),
-    getFuncName = require('./getFuncName'),
-    lodash = require('../chain/lodash');
-
-/**
- * Checks if `func` has a lazy counterpart.
- *
- * @private
- * @param {Function} func The function to check.
- * @returns {boolean} Returns `true` if `func` has a lazy counterpart, else `false`.
- */
-function isLaziable(func) {
-  var funcName = getFuncName(func);
-  return !!funcName && func === lodash[funcName] && funcName in LazyWrapper.prototype;
-}
-
-module.exports = isLaziable;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLength.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isLength.js
deleted file mode 100644 (file)
index 1e3f11c..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Used as the [maximum length](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer)
- * of an array-like value.
- */
-var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;
-
-/**
- * Checks if `value` is a valid array-like length.
- *
- * **Note:** This function is based on [`ToLength`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength).
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
- */
-function isLength(value) {
-  return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
-}
-
-module.exports = isLength;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isObjectLike.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isObjectLike.js
deleted file mode 100644 (file)
index 8ca0585..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * Checks if `value` is object-like.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
- */
-function isObjectLike(value) {
-  return !!value && typeof value == 'object';
-}
-
-module.exports = isObjectLike;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isSpace.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isSpace.js
deleted file mode 100644 (file)
index 16ea6f3..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Used by `trimmedLeftIndex` and `trimmedRightIndex` to determine if a
- * character code is whitespace.
- *
- * @private
- * @param {number} charCode The character code to inspect.
- * @returns {boolean} Returns `true` if `charCode` is whitespace, else `false`.
- */
-function isSpace(charCode) {
-  return ((charCode <= 160 && (charCode >= 9 && charCode <= 13) || charCode == 32 || charCode == 160) || charCode == 5760 || charCode == 6158 ||
-    (charCode >= 8192 && (charCode <= 8202 || charCode == 8232 || charCode == 8233 || charCode == 8239 || charCode == 8287 || charCode == 12288 || charCode == 65279)));
-}
-
-module.exports = isSpace;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isStrictComparable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/isStrictComparable.js
deleted file mode 100644 (file)
index b7933e1..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var isObject = require('../lang/isObject');
-
-/**
- * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` if suitable for strict
- *  equality comparisons, else `false`.
- */
-function isStrictComparable(value) {
-  return value === value && (value === 0 ? ((1 / value) > 0) : !isObject(value));
-}
-
-module.exports = isStrictComparable;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyClone.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyClone.js
deleted file mode 100644 (file)
index 20cc8ed..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var LazyWrapper = require('./LazyWrapper'),
-    arrayCopy = require('./arrayCopy');
-
-/**
- * Creates a clone of the lazy wrapper object.
- *
- * @private
- * @name clone
- * @memberOf LazyWrapper
- * @returns {Object} Returns the cloned `LazyWrapper` object.
- */
-function lazyClone() {
-  var actions = this.__actions__,
-      iteratees = this.__iteratees__,
-      views = this.__views__,
-      result = new LazyWrapper(this.__wrapped__);
-
-  result.__actions__ = actions ? arrayCopy(actions) : null;
-  result.__dir__ = this.__dir__;
-  result.__filtered__ = this.__filtered__;
-  result.__iteratees__ = iteratees ? arrayCopy(iteratees) : null;
-  result.__takeCount__ = this.__takeCount__;
-  result.__views__ = views ? arrayCopy(views) : null;
-  return result;
-}
-
-module.exports = lazyClone;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyReverse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyReverse.js
deleted file mode 100644 (file)
index c658402..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var LazyWrapper = require('./LazyWrapper');
-
-/**
- * Reverses the direction of lazy iteration.
- *
- * @private
- * @name reverse
- * @memberOf LazyWrapper
- * @returns {Object} Returns the new reversed `LazyWrapper` object.
- */
-function lazyReverse() {
-  if (this.__filtered__) {
-    var result = new LazyWrapper(this);
-    result.__dir__ = -1;
-    result.__filtered__ = true;
-  } else {
-    result = this.clone();
-    result.__dir__ *= -1;
-  }
-  return result;
-}
-
-module.exports = lazyReverse;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyValue.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/lazyValue.js
deleted file mode 100644 (file)
index f0e3425..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-var baseWrapperValue = require('./baseWrapperValue'),
-    getView = require('./getView'),
-    isArray = require('../lang/isArray');
-
-/** Used to indicate the type of lazy iteratees. */
-var LAZY_DROP_WHILE_FLAG = 0,
-    LAZY_FILTER_FLAG = 1,
-    LAZY_MAP_FLAG = 2;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Extracts the unwrapped value from its lazy wrapper.
- *
- * @private
- * @name value
- * @memberOf LazyWrapper
- * @returns {*} Returns the unwrapped value.
- */
-function lazyValue() {
-  var array = this.__wrapped__.value();
-  if (!isArray(array)) {
-    return baseWrapperValue(array, this.__actions__);
-  }
-  var dir = this.__dir__,
-      isRight = dir < 0,
-      view = getView(0, array.length, this.__views__),
-      start = view.start,
-      end = view.end,
-      length = end - start,
-      index = isRight ? end : (start - 1),
-      takeCount = nativeMin(length, this.__takeCount__),
-      iteratees = this.__iteratees__,
-      iterLength = iteratees ? iteratees.length : 0,
-      resIndex = 0,
-      result = [];
-
-  outer:
-  while (length-- && resIndex < takeCount) {
-    index += dir;
-
-    var iterIndex = -1,
-        value = array[index];
-
-    while (++iterIndex < iterLength) {
-      var data = iteratees[iterIndex],
-          iteratee = data.iteratee,
-          type = data.type;
-
-      if (type == LAZY_DROP_WHILE_FLAG) {
-        if (data.done && (isRight ? (index > data.index) : (index < data.index))) {
-          data.count = 0;
-          data.done = false;
-        }
-        data.index = index;
-        if (!data.done) {
-          var limit = data.limit;
-          if (!(data.done = limit > -1 ? (data.count++ >= limit) : !iteratee(value))) {
-            continue outer;
-          }
-        }
-      } else {
-        var computed = iteratee(value);
-        if (type == LAZY_MAP_FLAG) {
-          value = computed;
-        } else if (!computed) {
-          if (type == LAZY_FILTER_FLAG) {
-            continue outer;
-          } else {
-            break outer;
-          }
-        }
-      }
-    }
-    result[resIndex++] = value;
-  }
-  return result;
-}
-
-module.exports = lazyValue;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapDelete.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapDelete.js
deleted file mode 100644 (file)
index 8b7fd53..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Removes `key` and its value from the cache.
- *
- * @private
- * @name delete
- * @memberOf _.memoize.Cache
- * @param {string} key The key of the value to remove.
- * @returns {boolean} Returns `true` if the entry was removed successfully, else `false`.
- */
-function mapDelete(key) {
-  return this.has(key) && delete this.__data__[key];
-}
-
-module.exports = mapDelete;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapGet.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapGet.js
deleted file mode 100644 (file)
index 1f22295..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Gets the cached value for `key`.
- *
- * @private
- * @name get
- * @memberOf _.memoize.Cache
- * @param {string} key The key of the value to get.
- * @returns {*} Returns the cached value.
- */
-function mapGet(key) {
-  return key == '__proto__' ? undefined : this.__data__[key];
-}
-
-module.exports = mapGet;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapHas.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapHas.js
deleted file mode 100644 (file)
index 6d94ce4..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Checks if a cached value for `key` exists.
- *
- * @private
- * @name has
- * @memberOf _.memoize.Cache
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function mapHas(key) {
-  return key != '__proto__' && hasOwnProperty.call(this.__data__, key);
-}
-
-module.exports = mapHas;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapSet.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mapSet.js
deleted file mode 100644 (file)
index 0434c3f..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Sets `value` to `key` of the cache.
- *
- * @private
- * @name set
- * @memberOf _.memoize.Cache
- * @param {string} key The key of the value to cache.
- * @param {*} value The value to cache.
- * @returns {Object} Returns the cache object.
- */
-function mapSet(key, value) {
-  if (key != '__proto__') {
-    this.__data__[key] = value;
-  }
-  return this;
-}
-
-module.exports = mapSet;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mergeData.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/mergeData.js
deleted file mode 100644 (file)
index 29297c7..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-var arrayCopy = require('./arrayCopy'),
-    composeArgs = require('./composeArgs'),
-    composeArgsRight = require('./composeArgsRight'),
-    replaceHolders = require('./replaceHolders');
-
-/** Used to compose bitmasks for wrapper metadata. */
-var BIND_FLAG = 1,
-    CURRY_BOUND_FLAG = 4,
-    CURRY_FLAG = 8,
-    ARY_FLAG = 128,
-    REARG_FLAG = 256;
-
-/** Used as the internal argument placeholder. */
-var PLACEHOLDER = '__lodash_placeholder__';
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Merges the function metadata of `source` into `data`.
- *
- * Merging metadata reduces the number of wrappers required to invoke a function.
- * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`
- * may be applied regardless of execution order. Methods like `_.ary` and `_.rearg`
- * augment function arguments, making the order in which they are executed important,
- * preventing the merging of metadata. However, we make an exception for a safe
- * common case where curried functions have `_.ary` and or `_.rearg` applied.
- *
- * @private
- * @param {Array} data The destination metadata.
- * @param {Array} source The source metadata.
- * @returns {Array} Returns `data`.
- */
-function mergeData(data, source) {
-  var bitmask = data[1],
-      srcBitmask = source[1],
-      newBitmask = bitmask | srcBitmask,
-      isCommon = newBitmask < ARY_FLAG;
-
-  var isCombo =
-    (srcBitmask == ARY_FLAG && bitmask == CURRY_FLAG) ||
-    (srcBitmask == ARY_FLAG && bitmask == REARG_FLAG && data[7].length <= source[8]) ||
-    (srcBitmask == (ARY_FLAG | REARG_FLAG) && bitmask == CURRY_FLAG);
-
-  // Exit early if metadata can't be merged.
-  if (!(isCommon || isCombo)) {
-    return data;
-  }
-  // Use source `thisArg` if available.
-  if (srcBitmask & BIND_FLAG) {
-    data[2] = source[2];
-    // Set when currying a bound function.
-    newBitmask |= (bitmask & BIND_FLAG) ? 0 : CURRY_BOUND_FLAG;
-  }
-  // Compose partial arguments.
-  var value = source[3];
-  if (value) {
-    var partials = data[3];
-    data[3] = partials ? composeArgs(partials, value, source[4]) : arrayCopy(value);
-    data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : arrayCopy(source[4]);
-  }
-  // Compose partial right arguments.
-  value = source[5];
-  if (value) {
-    partials = data[5];
-    data[5] = partials ? composeArgsRight(partials, value, source[6]) : arrayCopy(value);
-    data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : arrayCopy(source[6]);
-  }
-  // Use source `argPos` if available.
-  value = source[7];
-  if (value) {
-    data[7] = arrayCopy(value);
-  }
-  // Use source `ary` if it's smaller.
-  if (srcBitmask & ARY_FLAG) {
-    data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
-  }
-  // Use source `arity` if one is not provided.
-  if (data[9] == null) {
-    data[9] = source[9];
-  }
-  // Use source `func` and merge bitmasks.
-  data[0] = source[0];
-  data[1] = newBitmask;
-
-  return data;
-}
-
-module.exports = mergeData;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/metaMap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/metaMap.js
deleted file mode 100644 (file)
index 3573837..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var isNative = require('../lang/isNative');
-
-/** Native method references. */
-var WeakMap = isNative(WeakMap = global.WeakMap) && WeakMap;
-
-/** Used to store function metadata. */
-var metaMap = WeakMap && new WeakMap;
-
-module.exports = metaMap;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByArray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByArray.js
deleted file mode 100644 (file)
index cd1e3b8..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-var toObject = require('./toObject');
-
-/**
- * A specialized version of `_.pick` that picks `object` properties specified
- * by `props`.
- *
- * @private
- * @param {Object} object The source object.
- * @param {string[]} props The property names to pick.
- * @returns {Object} Returns the new object.
- */
-function pickByArray(object, props) {
-  object = toObject(object);
-
-  var index = -1,
-      length = props.length,
-      result = {};
-
-  while (++index < length) {
-    var key = props[index];
-    if (key in object) {
-      result[key] = object[key];
-    }
-  }
-  return result;
-}
-
-module.exports = pickByArray;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByCallback.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/pickByCallback.js
deleted file mode 100644 (file)
index 38b178e..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-var baseForIn = require('./baseForIn');
-
-/**
- * A specialized version of `_.pick` that picks `object` properties `predicate`
- * returns truthy for.
- *
- * @private
- * @param {Object} object The source object.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {Object} Returns the new object.
- */
-function pickByCallback(object, predicate) {
-  var result = {};
-  baseForIn(object, function(value, key, object) {
-    if (predicate(value, key, object)) {
-      result[key] = value;
-    }
-  });
-  return result;
-}
-
-module.exports = pickByCallback;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEscape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEscape.js
deleted file mode 100644 (file)
index 7f47eda..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reEscape = /<%-([\s\S]+?)%>/g;
-
-module.exports = reEscape;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEvaluate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reEvaluate.js
deleted file mode 100644 (file)
index 6adfc31..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reEvaluate = /<%([\s\S]+?)%>/g;
-
-module.exports = reEvaluate;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reInterpolate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reInterpolate.js
deleted file mode 100644 (file)
index d02ff0b..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reInterpolate = /<%=([\s\S]+?)%>/g;
-
-module.exports = reInterpolate;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/realNames.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/realNames.js
deleted file mode 100644 (file)
index aa0d529..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to lookup unminified function names. */
-var realNames = {};
-
-module.exports = realNames;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reorder.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/reorder.js
deleted file mode 100644 (file)
index 9424927..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var arrayCopy = require('./arrayCopy'),
-    isIndex = require('./isIndex');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Reorder `array` according to the specified indexes where the element at
- * the first index is assigned as the first element, the element at
- * the second index is assigned as the second element, and so on.
- *
- * @private
- * @param {Array} array The array to reorder.
- * @param {Array} indexes The arranged array indexes.
- * @returns {Array} Returns `array`.
- */
-function reorder(array, indexes) {
-  var arrLength = array.length,
-      length = nativeMin(indexes.length, arrLength),
-      oldArray = arrayCopy(array);
-
-  while (length--) {
-    var index = indexes[length];
-    array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
-  }
-  return array;
-}
-
-module.exports = reorder;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/replaceHolders.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/replaceHolders.js
deleted file mode 100644 (file)
index 3089e75..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-/** Used as the internal argument placeholder. */
-var PLACEHOLDER = '__lodash_placeholder__';
-
-/**
- * Replaces all `placeholder` elements in `array` with an internal placeholder
- * and returns an array of their indexes.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {*} placeholder The placeholder to replace.
- * @returns {Array} Returns the new array of placeholder indexes.
- */
-function replaceHolders(array, placeholder) {
-  var index = -1,
-      length = array.length,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    if (array[index] === placeholder) {
-      array[index] = PLACEHOLDER;
-      result[++resIndex] = index;
-    }
-  }
-  return result;
-}
-
-module.exports = replaceHolders;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/setData.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/setData.js
deleted file mode 100644 (file)
index 7eb3f40..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-var baseSetData = require('./baseSetData'),
-    now = require('../date/now');
-
-/** Used to detect when a function becomes hot. */
-var HOT_COUNT = 150,
-    HOT_SPAN = 16;
-
-/**
- * Sets metadata for `func`.
- *
- * **Note:** If this function becomes hot, i.e. is invoked a lot in a short
- * period of time, it will trip its breaker and transition to an identity function
- * to avoid garbage collection pauses in V8. See [V8 issue 2070](https://code.google.com/p/v8/issues/detail?id=2070)
- * for more details.
- *
- * @private
- * @param {Function} func The function to associate metadata with.
- * @param {*} data The metadata.
- * @returns {Function} Returns `func`.
- */
-var setData = (function() {
-  var count = 0,
-      lastCalled = 0;
-
-  return function(key, value) {
-    var stamp = now(),
-        remaining = HOT_SPAN - (stamp - lastCalled);
-
-    lastCalled = stamp;
-    if (remaining > 0) {
-      if (++count >= HOT_COUNT) {
-        return key;
-      }
-    } else {
-      count = 0;
-    }
-    return baseSetData(key, value);
-  };
-}());
-
-module.exports = setData;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimIsPlainObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimIsPlainObject.js
deleted file mode 100644 (file)
index 9821286..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-var baseForIn = require('./baseForIn'),
-    isObjectLike = require('./isObjectLike');
-
-/** `Object#toString` result references. */
-var objectTag = '[object Object]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * A fallback implementation of `_.isPlainObject` which checks if `value`
- * is an object created by the `Object` constructor or has a `[[Prototype]]`
- * of `null`.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
- */
-function shimIsPlainObject(value) {
-  var Ctor;
-
-  // Exit early for non `Object` objects.
-  if (!(isObjectLike(value) && objToString.call(value) == objectTag) ||
-      (!hasOwnProperty.call(value, 'constructor') &&
-        (Ctor = value.constructor, typeof Ctor == 'function' && !(Ctor instanceof Ctor)))) {
-    return false;
-  }
-  // IE < 9 iterates inherited properties before own properties. If the first
-  // iterated property is an object's own property then there are no inherited
-  // enumerable properties.
-  var result;
-  // In most environments an object's own properties are iterated before
-  // its inherited properties. If the last iterated property is an object's
-  // own property then there are no inherited enumerable properties.
-  baseForIn(value, function(subValue, key) {
-    result = key;
-  });
-  return result === undefined || hasOwnProperty.call(value, result);
-}
-
-module.exports = shimIsPlainObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimKeys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/shimKeys.js
deleted file mode 100644 (file)
index d165c40..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-var isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    isIndex = require('./isIndex'),
-    isLength = require('./isLength'),
-    keysIn = require('../object/keysIn'),
-    support = require('../support');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * A fallback implementation of `Object.keys` which creates an array of the
- * own enumerable property names of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- */
-function shimKeys(object) {
-  var props = keysIn(object),
-      propsLength = props.length,
-      length = propsLength && object.length;
-
-  var allowIndexes = length && isLength(length) &&
-    (isArray(object) || (support.nonEnumArgs && isArguments(object)));
-
-  var index = -1,
-      result = [];
-
-  while (++index < propsLength) {
-    var key = props[index];
-    if ((allowIndexes && isIndex(key, length)) || hasOwnProperty.call(object, key)) {
-      result.push(key);
-    }
-  }
-  return result;
-}
-
-module.exports = shimKeys;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/sortedUniq.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/sortedUniq.js
deleted file mode 100644 (file)
index 22887eb..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * An implementation of `_.uniq` optimized for sorted arrays without support
- * for callback shorthands and `this` binding.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Function} [iteratee] The function invoked per iteration.
- * @returns {Array} Returns the new duplicate-value-free array.
- */
-function sortedUniq(array, iteratee) {
-  var seen,
-      index = -1,
-      length = array.length,
-      resIndex = -1,
-      result = [];
-
-  while (++index < length) {
-    var value = array[index],
-        computed = iteratee ? iteratee(value, index, array) : value;
-
-    if (!index || seen !== computed) {
-      seen = computed;
-      result[++resIndex] = value;
-    }
-  }
-  return result;
-}
-
-module.exports = sortedUniq;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toIterable.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toIterable.js
deleted file mode 100644 (file)
index 3999a14..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var getLength = require('./getLength'),
-    isLength = require('./isLength'),
-    isObject = require('../lang/isObject'),
-    values = require('../object/values');
-
-/**
- * Converts `value` to an array-like object if it is not one.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {Array|Object} Returns the array-like object.
- */
-function toIterable(value) {
-  if (value == null) {
-    return [];
-  }
-  if (!isLength(getLength(value))) {
-    return values(value);
-  }
-  return isObject(value) ? value : Object(value);
-}
-
-module.exports = toIterable;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toObject.js
deleted file mode 100644 (file)
index 1c10934..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-var isObject = require('../lang/isObject');
-
-/**
- * Converts `value` to an object if it is not one.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {Object} Returns the object.
- */
-function toObject(value) {
-  return isObject(value) ? value : Object(value);
-}
-
-module.exports = toObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toPath.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/toPath.js
deleted file mode 100644 (file)
index 45314d1..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-var baseToString = require('./baseToString'),
-    isArray = require('../lang/isArray');
-
-/** Used to match property names within property paths. */
-var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g;
-
-/** Used to match backslashes in property paths. */
-var reEscapeChar = /\\(\\)?/g;
-
-/**
- * Converts `value` to property path array if it is not one.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {Array} Returns the property path array.
- */
-function toPath(value) {
-  if (isArray(value)) {
-    return value;
-  }
-  var result = [];
-  baseToString(value).replace(rePropName, function(match, number, quote, string) {
-    result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
-  });
-  return result;
-}
-
-module.exports = toPath;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedLeftIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedLeftIndex.js
deleted file mode 100644 (file)
index 08aeb13..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var isSpace = require('./isSpace');
-
-/**
- * Used by `_.trim` and `_.trimLeft` to get the index of the first non-whitespace
- * character of `string`.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {number} Returns the index of the first non-whitespace character.
- */
-function trimmedLeftIndex(string) {
-  var index = -1,
-      length = string.length;
-
-  while (++index < length && isSpace(string.charCodeAt(index))) {}
-  return index;
-}
-
-module.exports = trimmedLeftIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedRightIndex.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/trimmedRightIndex.js
deleted file mode 100644 (file)
index 71b9e38..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var isSpace = require('./isSpace');
-
-/**
- * Used by `_.trim` and `_.trimRight` to get the index of the last non-whitespace
- * character of `string`.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {number} Returns the index of the last non-whitespace character.
- */
-function trimmedRightIndex(string) {
-  var index = string.length;
-
-  while (index-- && isSpace(string.charCodeAt(index))) {}
-  return index;
-}
-
-module.exports = trimmedRightIndex;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/unescapeHtmlChar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/unescapeHtmlChar.js
deleted file mode 100644 (file)
index 28b3454..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/** Used to map HTML entities to characters. */
-var htmlUnescapes = {
-  '&amp;': '&',
-  '&lt;': '<',
-  '&gt;': '>',
-  '&quot;': '"',
-  '&#39;': "'",
-  '&#96;': '`'
-};
-
-/**
- * Used by `_.unescape` to convert HTML entities to characters.
- *
- * @private
- * @param {string} chr The matched character to unescape.
- * @returns {string} Returns the unescaped character.
- */
-function unescapeHtmlChar(chr) {
-  return htmlUnescapes[chr];
-}
-
-module.exports = unescapeHtmlChar;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/wrapperClone.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/internal/wrapperClone.js
deleted file mode 100644 (file)
index e5e10da..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var LazyWrapper = require('./LazyWrapper'),
-    LodashWrapper = require('./LodashWrapper'),
-    arrayCopy = require('./arrayCopy');
-
-/**
- * Creates a clone of `wrapper`.
- *
- * @private
- * @param {Object} wrapper The wrapper to clone.
- * @returns {Object} Returns the cloned wrapper.
- */
-function wrapperClone(wrapper) {
-  return wrapper instanceof LazyWrapper
-    ? wrapper.clone()
-    : new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__, arrayCopy(wrapper.__actions__));
-}
-
-module.exports = wrapperClone;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang.js
deleted file mode 100644 (file)
index d8a7796..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-module.exports = {
-  'clone': require('./lang/clone'),
-  'cloneDeep': require('./lang/cloneDeep'),
-  'isArguments': require('./lang/isArguments'),
-  'isArray': require('./lang/isArray'),
-  'isBoolean': require('./lang/isBoolean'),
-  'isDate': require('./lang/isDate'),
-  'isElement': require('./lang/isElement'),
-  'isEmpty': require('./lang/isEmpty'),
-  'isEqual': require('./lang/isEqual'),
-  'isError': require('./lang/isError'),
-  'isFinite': require('./lang/isFinite'),
-  'isFunction': require('./lang/isFunction'),
-  'isMatch': require('./lang/isMatch'),
-  'isNaN': require('./lang/isNaN'),
-  'isNative': require('./lang/isNative'),
-  'isNull': require('./lang/isNull'),
-  'isNumber': require('./lang/isNumber'),
-  'isObject': require('./lang/isObject'),
-  'isPlainObject': require('./lang/isPlainObject'),
-  'isRegExp': require('./lang/isRegExp'),
-  'isString': require('./lang/isString'),
-  'isTypedArray': require('./lang/isTypedArray'),
-  'isUndefined': require('./lang/isUndefined'),
-  'toArray': require('./lang/toArray'),
-  'toPlainObject': require('./lang/toPlainObject')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/clone.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/clone.js
deleted file mode 100644 (file)
index 76f030a..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-var baseClone = require('../internal/baseClone'),
-    bindCallback = require('../internal/bindCallback'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a clone of `value`. If `isDeep` is `true` nested objects are cloned,
- * otherwise they are assigned by reference. If `customizer` is provided it is
- * invoked to produce the cloned values. If `customizer` returns `undefined`
- * cloning is handled by the method instead. The `customizer` is bound to
- * `thisArg` and invoked with two argument; (value [, index|key, object]).
- *
- * **Note:** This method is loosely based on the
- * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
- * The enumerable properties of `arguments` objects and objects created by
- * constructors other than `Object` are cloned to plain `Object` objects. An
- * empty object is returned for uncloneable values such as functions, DOM nodes,
- * Maps, Sets, and WeakMaps.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @param {Function} [customizer] The function to customize cloning values.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {*} Returns the cloned value.
- * @example
- *
- * var users = [
- *   { 'user': 'barney' },
- *   { 'user': 'fred' }
- * ];
- *
- * var shallow = _.clone(users);
- * shallow[0] === users[0];
- * // => true
- *
- * var deep = _.clone(users, true);
- * deep[0] === users[0];
- * // => false
- *
- * // using a customizer callback
- * var el = _.clone(document.body, function(value) {
- *   if (_.isElement(value)) {
- *     return value.cloneNode(false);
- *   }
- * });
- *
- * el === document.body
- * // => false
- * el.nodeName
- * // => BODY
- * el.childNodes.length;
- * // => 0
- */
-function clone(value, isDeep, customizer, thisArg) {
-  if (isDeep && typeof isDeep != 'boolean' && isIterateeCall(value, isDeep, customizer)) {
-    isDeep = false;
-  }
-  else if (typeof isDeep == 'function') {
-    thisArg = customizer;
-    customizer = isDeep;
-    isDeep = false;
-  }
-  customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
-  return baseClone(value, isDeep, customizer);
-}
-
-module.exports = clone;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/cloneDeep.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/cloneDeep.js
deleted file mode 100644 (file)
index 4319d45..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var baseClone = require('../internal/baseClone'),
-    bindCallback = require('../internal/bindCallback');
-
-/**
- * Creates a deep clone of `value`. If `customizer` is provided it is invoked
- * to produce the cloned values. If `customizer` returns `undefined` cloning
- * is handled by the method instead. The `customizer` is bound to `thisArg`
- * and invoked with two argument; (value [, index|key, object]).
- *
- * **Note:** This method is loosely based on the
- * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
- * The enumerable properties of `arguments` objects and objects created by
- * constructors other than `Object` are cloned to plain `Object` objects. An
- * empty object is returned for uncloneable values such as functions, DOM nodes,
- * Maps, Sets, and WeakMaps.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to deep clone.
- * @param {Function} [customizer] The function to customize cloning values.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {*} Returns the deep cloned value.
- * @example
- *
- * var users = [
- *   { 'user': 'barney' },
- *   { 'user': 'fred' }
- * ];
- *
- * var deep = _.cloneDeep(users);
- * deep[0] === users[0];
- * // => false
- *
- * // using a customizer callback
- * var el = _.cloneDeep(document.body, function(value) {
- *   if (_.isElement(value)) {
- *     return value.cloneNode(true);
- *   }
- * });
- *
- * el === document.body
- * // => false
- * el.nodeName
- * // => BODY
- * el.childNodes.length;
- * // => 20
- */
-function cloneDeep(value, customizer, thisArg) {
-  customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 1);
-  return baseClone(value, true, customizer);
-}
-
-module.exports = cloneDeep;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArguments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArguments.js
deleted file mode 100644 (file)
index 07c266c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var isLength = require('../internal/isLength'),
-    isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as an `arguments` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isArguments(function() { return arguments; }());
- * // => true
- *
- * _.isArguments([1, 2, 3]);
- * // => false
- */
-function isArguments(value) {
-  var length = isObjectLike(value) ? value.length : undefined;
-  return isLength(length) && objToString.call(value) == argsTag;
-}
-
-module.exports = isArguments;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isArray.js
deleted file mode 100644 (file)
index 36a5608..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var isLength = require('../internal/isLength'),
-    isNative = require('./isNative'),
-    isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var arrayTag = '[object Array]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsArray = isNative(nativeIsArray = Array.isArray) && nativeIsArray;
-
-/**
- * Checks if `value` is classified as an `Array` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isArray([1, 2, 3]);
- * // => true
- *
- * _.isArray(function() { return arguments; }());
- * // => false
- */
-var isArray = nativeIsArray || function(value) {
-  return isObjectLike(value) && isLength(value.length) && objToString.call(value) == arrayTag;
-};
-
-module.exports = isArray;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isBoolean.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isBoolean.js
deleted file mode 100644 (file)
index 8999da3..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a boolean primitive or object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isBoolean(false);
- * // => true
- *
- * _.isBoolean(null);
- * // => false
- */
-function isBoolean(value) {
-  return value === true || value === false || (isObjectLike(value) && objToString.call(value) == boolTag);
-}
-
-module.exports = isBoolean;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isDate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isDate.js
deleted file mode 100644 (file)
index 5d80e3d..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var dateTag = '[object Date]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a `Date` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isDate(new Date);
- * // => true
- *
- * _.isDate('Mon April 23 2012');
- * // => false
- */
-function isDate(value) {
-  return isObjectLike(value) && objToString.call(value) == dateTag;
-}
-
-module.exports = isDate;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isElement.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isElement.js
deleted file mode 100644 (file)
index 4a1e312..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike'),
-    isPlainObject = require('./isPlainObject'),
-    support = require('../support');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is a DOM element.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.
- * @example
- *
- * _.isElement(document.body);
- * // => true
- *
- * _.isElement('<body>');
- * // => false
- */
-function isElement(value) {
-  return !!value && value.nodeType === 1 && isObjectLike(value) &&
-    (objToString.call(value).indexOf('Element') > -1);
-}
-// Fallback for environments without DOM support.
-if (!support.dom) {
-  isElement = function(value) {
-    return !!value && value.nodeType === 1 && isObjectLike(value) && !isPlainObject(value);
-  };
-}
-
-module.exports = isElement;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
deleted file mode 100644 (file)
index 7a6f6f2..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var getLength = require('../internal/getLength'),
-    isArguments = require('./isArguments'),
-    isArray = require('./isArray'),
-    isFunction = require('./isFunction'),
-    isLength = require('../internal/isLength'),
-    isObjectLike = require('../internal/isObjectLike'),
-    isString = require('./isString'),
-    keys = require('../object/keys');
-
-/**
- * Checks if `value` is empty. A value is considered empty unless it is an
- * `arguments` object, array, string, or jQuery-like collection with a length
- * greater than `0` or an object with own enumerable properties.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {Array|Object|string} value The value to inspect.
- * @returns {boolean} Returns `true` if `value` is empty, else `false`.
- * @example
- *
- * _.isEmpty(null);
- * // => true
- *
- * _.isEmpty(true);
- * // => true
- *
- * _.isEmpty(1);
- * // => true
- *
- * _.isEmpty([1, 2, 3]);
- * // => false
- *
- * _.isEmpty({ 'a': 1 });
- * // => false
- */
-function isEmpty(value) {
-  if (value == null) {
-    return true;
-  }
-  var length = getLength(value);
-  if (isLength(length) && (isArray(value) || isString(value) || isArguments(value) ||
-      (isObjectLike(value) && isFunction(value.splice)))) {
-    return !length;
-  }
-  return !keys(value).length;
-}
-
-module.exports = isEmpty;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEqual.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEqual.js
deleted file mode 100644 (file)
index 7daddb8..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-var baseIsEqual = require('../internal/baseIsEqual'),
-    bindCallback = require('../internal/bindCallback'),
-    isStrictComparable = require('../internal/isStrictComparable');
-
-/**
- * Performs a deep comparison between two values to determine if they are
- * equivalent. If `customizer` is provided it is invoked to compare values.
- * If `customizer` returns `undefined` comparisons are handled by the method
- * instead. The `customizer` is bound to `thisArg` and invoked with three
- * arguments: (value, other [, index|key]).
- *
- * **Note:** This method supports comparing arrays, booleans, `Date` objects,
- * numbers, `Object` objects, regexes, and strings. Objects are compared by
- * their own, not inherited, enumerable properties. Functions and DOM nodes
- * are **not** supported. Provide a customizer function to extend support
- * for comparing other values.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @param {Function} [customizer] The function to customize value comparisons.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- * @example
- *
- * var object = { 'user': 'fred' };
- * var other = { 'user': 'fred' };
- *
- * object == other;
- * // => false
- *
- * _.isEqual(object, other);
- * // => true
- *
- * // using a customizer callback
- * var array = ['hello', 'goodbye'];
- * var other = ['hi', 'goodbye'];
- *
- * _.isEqual(array, other, function(value, other) {
- *   if (_.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/)) {
- *     return true;
- *   }
- * });
- * // => true
- */
-function isEqual(value, other, customizer, thisArg) {
-  customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
-  if (!customizer && isStrictComparable(value) && isStrictComparable(other)) {
-    return value === other;
-  }
-  var result = customizer ? customizer(value, other) : undefined;
-  return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
-}
-
-module.exports = isEqual;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isError.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isError.js
deleted file mode 100644 (file)
index 4ec836d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var errorTag = '[object Error]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
- * `SyntaxError`, `TypeError`, or `URIError` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an error object, else `false`.
- * @example
- *
- * _.isError(new Error);
- * // => true
- *
- * _.isError(Error);
- * // => false
- */
-function isError(value) {
-  return isObjectLike(value) && typeof value.message == 'string' && objToString.call(value) == errorTag;
-}
-
-module.exports = isError;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFinite.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFinite.js
deleted file mode 100644 (file)
index fc250ca..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var isNative = require('./isNative');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite,
-    nativeNumIsFinite = isNative(nativeNumIsFinite = Number.isFinite) && nativeNumIsFinite;
-
-/**
- * Checks if `value` is a finite primitive number.
- *
- * **Note:** This method is based on [`Number.isFinite`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.
- * @example
- *
- * _.isFinite(10);
- * // => true
- *
- * _.isFinite('10');
- * // => false
- *
- * _.isFinite(true);
- * // => false
- *
- * _.isFinite(Object(10));
- * // => false
- *
- * _.isFinite(Infinity);
- * // => false
- */
-var isFinite = nativeNumIsFinite || function(value) {
-  return typeof value == 'number' && nativeIsFinite(value);
-};
-
-module.exports = isFinite;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFunction.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isFunction.js
deleted file mode 100644 (file)
index 44c5415..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-var baseIsFunction = require('../internal/baseIsFunction'),
-    isNative = require('./isNative');
-
-/** `Object#toString` result references. */
-var funcTag = '[object Function]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/** Native method references. */
-var Uint8Array = isNative(Uint8Array = global.Uint8Array) && Uint8Array;
-
-/**
- * Checks if `value` is classified as a `Function` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isFunction(_);
- * // => true
- *
- * _.isFunction(/abc/);
- * // => false
- */
-var isFunction = !(baseIsFunction(/x/) || (Uint8Array && !baseIsFunction(Uint8Array))) ? baseIsFunction : function(value) {
-  // The use of `Object#toString` avoids issues with the `typeof` operator
-  // in older versions of Chrome and Safari which return 'function' for regexes
-  // and Safari 8 equivalents which return 'object' for typed array constructors.
-  return objToString.call(value) == funcTag;
-};
-
-module.exports = isFunction;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isMatch.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isMatch.js
deleted file mode 100644 (file)
index 9bc7ac1..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-var baseIsMatch = require('../internal/baseIsMatch'),
-    bindCallback = require('../internal/bindCallback'),
-    isStrictComparable = require('../internal/isStrictComparable'),
-    keys = require('../object/keys'),
-    toObject = require('../internal/toObject');
-
-/**
- * Performs a deep comparison between `object` and `source` to determine if
- * `object` contains equivalent property values. If `customizer` is provided
- * it is invoked to compare values. If `customizer` returns `undefined`
- * comparisons are handled by the method instead. The `customizer` is bound
- * to `thisArg` and invoked with three arguments: (value, other, index|key).
- *
- * **Note:** This method supports comparing properties of arrays, booleans,
- * `Date` objects, numbers, `Object` objects, regexes, and strings. Functions
- * and DOM nodes are **not** supported. Provide a customizer function to extend
- * support for comparing other values.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property values to match.
- * @param {Function} [customizer] The function to customize value comparisons.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {boolean} Returns `true` if `object` is a match, else `false`.
- * @example
- *
- * var object = { 'user': 'fred', 'age': 40 };
- *
- * _.isMatch(object, { 'age': 40 });
- * // => true
- *
- * _.isMatch(object, { 'age': 36 });
- * // => false
- *
- * // using a customizer callback
- * var object = { 'greeting': 'hello' };
- * var source = { 'greeting': 'hi' };
- *
- * _.isMatch(object, source, function(value, other) {
- *   return _.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/) || undefined;
- * });
- * // => true
- */
-function isMatch(object, source, customizer, thisArg) {
-  var props = keys(source),
-      length = props.length;
-
-  if (!length) {
-    return true;
-  }
-  if (object == null) {
-    return false;
-  }
-  customizer = typeof customizer == 'function' && bindCallback(customizer, thisArg, 3);
-  object = toObject(object);
-  if (!customizer && length == 1) {
-    var key = props[0],
-        value = source[key];
-
-    if (isStrictComparable(value)) {
-      return value === object[key] && (value !== undefined || (key in object));
-    }
-  }
-  var values = Array(length),
-      strictCompareFlags = Array(length);
-
-  while (length--) {
-    value = values[length] = source[props[length]];
-    strictCompareFlags[length] = isStrictComparable(value);
-  }
-  return baseIsMatch(object, props, values, strictCompareFlags, customizer);
-}
-
-module.exports = isMatch;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNaN.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNaN.js
deleted file mode 100644 (file)
index cf83d56..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-var isNumber = require('./isNumber');
-
-/**
- * Checks if `value` is `NaN`.
- *
- * **Note:** This method is not the same as [`isNaN`](https://es5.github.io/#x15.1.2.4)
- * which returns `true` for `undefined` and other non-numeric values.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
- * @example
- *
- * _.isNaN(NaN);
- * // => true
- *
- * _.isNaN(new Number(NaN));
- * // => true
- *
- * isNaN(undefined);
- * // => true
- *
- * _.isNaN(undefined);
- * // => false
- */
-function isNaN(value) {
-  // An `NaN` primitive is the only value that is not equal to itself.
-  // Perform the `toStringTag` check first to avoid errors with some host objects in IE.
-  return isNumber(value) && value != +value;
-}
-
-module.exports = isNaN;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNative.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNative.js
deleted file mode 100644 (file)
index f27bb5a..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var escapeRegExp = require('../string/escapeRegExp'),
-    isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var funcTag = '[object Function]';
-
-/** Used to detect host constructors (Safari > 5). */
-var reIsHostCtor = /^\[object .+?Constructor\]$/;
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to resolve the decompiled source of functions. */
-var fnToString = Function.prototype.toString;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/** Used to detect if a method is native. */
-var reIsNative = RegExp('^' +
-  escapeRegExp(objToString)
-  .replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
-);
-
-/**
- * Checks if `value` is a native function.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a native function, else `false`.
- * @example
- *
- * _.isNative(Array.prototype.push);
- * // => true
- *
- * _.isNative(_);
- * // => false
- */
-function isNative(value) {
-  if (value == null) {
-    return false;
-  }
-  if (objToString.call(value) == funcTag) {
-    return reIsNative.test(fnToString.call(value));
-  }
-  return isObjectLike(value) && reIsHostCtor.test(value);
-}
-
-module.exports = isNative;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNull.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNull.js
deleted file mode 100644 (file)
index ec66c4d..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Checks if `value` is `null`.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `null`, else `false`.
- * @example
- *
- * _.isNull(null);
- * // => true
- *
- * _.isNull(void 0);
- * // => false
- */
-function isNull(value) {
-  return value === null;
-}
-
-module.exports = isNull;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNumber.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isNumber.js
deleted file mode 100644 (file)
index 9404dc8..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var numberTag = '[object Number]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a `Number` primitive or object.
- *
- * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are classified
- * as numbers, use the `_.isFinite` method.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isNumber(8.4);
- * // => true
- *
- * _.isNumber(NaN);
- * // => true
- *
- * _.isNumber('8.4');
- * // => false
- */
-function isNumber(value) {
-  return typeof value == 'number' || (isObjectLike(value) && objToString.call(value) == numberTag);
-}
-
-module.exports = isNumber;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isObject.js
deleted file mode 100644 (file)
index 63c3e95..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.
- * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
- * @example
- *
- * _.isObject({});
- * // => true
- *
- * _.isObject([1, 2, 3]);
- * // => true
- *
- * _.isObject(1);
- * // => false
- */
-function isObject(value) {
-  // Avoid a V8 JIT bug in Chrome 19-20.
-  // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
-  var type = typeof value;
-  return type == 'function' || (!!value && type == 'object');
-}
-
-module.exports = isObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isPlainObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isPlainObject.js
deleted file mode 100644 (file)
index 89e0c74..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-var isNative = require('./isNative'),
-    shimIsPlainObject = require('../internal/shimIsPlainObject');
-
-/** `Object#toString` result references. */
-var objectTag = '[object Object]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/** Native method references. */
-var getPrototypeOf = isNative(getPrototypeOf = Object.getPrototypeOf) && getPrototypeOf;
-
-/**
- * Checks if `value` is a plain object, that is, an object created by the
- * `Object` constructor or one with a `[[Prototype]]` of `null`.
- *
- * **Note:** This method assumes objects created by the `Object` constructor
- * have no inherited enumerable properties.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- * }
- *
- * _.isPlainObject(new Foo);
- * // => false
- *
- * _.isPlainObject([1, 2, 3]);
- * // => false
- *
- * _.isPlainObject({ 'x': 0, 'y': 0 });
- * // => true
- *
- * _.isPlainObject(Object.create(null));
- * // => true
- */
-var isPlainObject = !getPrototypeOf ? shimIsPlainObject : function(value) {
-  if (!(value && objToString.call(value) == objectTag)) {
-    return false;
-  }
-  var valueOf = value.valueOf,
-      objProto = isNative(valueOf) && (objProto = getPrototypeOf(valueOf)) && getPrototypeOf(objProto);
-
-  return objProto
-    ? (value == objProto || getPrototypeOf(value) == objProto)
-    : shimIsPlainObject(value);
-};
-
-module.exports = isPlainObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isRegExp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isRegExp.js
deleted file mode 100644 (file)
index 296b60a..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var regexpTag = '[object RegExp]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a `RegExp` object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isRegExp(/abc/);
- * // => true
- *
- * _.isRegExp('/abc/');
- * // => false
- */
-function isRegExp(value) {
-  return (isObjectLike(value) && objToString.call(value) == regexpTag) || false;
-}
-
-module.exports = isRegExp;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isString.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isString.js
deleted file mode 100644 (file)
index f4155dc..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-var isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var stringTag = '[object String]';
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a `String` primitive or object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isString('abc');
- * // => true
- *
- * _.isString(1);
- * // => false
- */
-function isString(value) {
-  return typeof value == 'string' || (isObjectLike(value) && objToString.call(value) == stringTag);
-}
-
-module.exports = isString;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isTypedArray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isTypedArray.js
deleted file mode 100644 (file)
index 4642c7a..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-var isLength = require('../internal/isLength'),
-    isObjectLike = require('../internal/isObjectLike');
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
-    arrayTag = '[object Array]',
-    boolTag = '[object Boolean]',
-    dateTag = '[object Date]',
-    errorTag = '[object Error]',
-    funcTag = '[object Function]',
-    mapTag = '[object Map]',
-    numberTag = '[object Number]',
-    objectTag = '[object Object]',
-    regexpTag = '[object RegExp]',
-    setTag = '[object Set]',
-    stringTag = '[object String]',
-    weakMapTag = '[object WeakMap]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
-    float32Tag = '[object Float32Array]',
-    float64Tag = '[object Float64Array]',
-    int8Tag = '[object Int8Array]',
-    int16Tag = '[object Int16Array]',
-    int32Tag = '[object Int32Array]',
-    uint8Tag = '[object Uint8Array]',
-    uint8ClampedTag = '[object Uint8ClampedArray]',
-    uint16Tag = '[object Uint16Array]',
-    uint32Tag = '[object Uint32Array]';
-
-/** Used to identify `toStringTag` values of typed arrays. */
-var typedArrayTags = {};
-typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
-typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
-typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
-typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
-typedArrayTags[uint32Tag] = true;
-typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
-typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
-typedArrayTags[dateTag] = typedArrayTags[errorTag] =
-typedArrayTags[funcTag] = typedArrayTags[mapTag] =
-typedArrayTags[numberTag] = typedArrayTags[objectTag] =
-typedArrayTags[regexpTag] = typedArrayTags[setTag] =
-typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the [`toStringTag`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.prototype.tostring)
- * of values.
- */
-var objToString = objectProto.toString;
-
-/**
- * Checks if `value` is classified as a typed array.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
- * @example
- *
- * _.isTypedArray(new Uint8Array);
- * // => true
- *
- * _.isTypedArray([]);
- * // => false
- */
-function isTypedArray(value) {
-  return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objToString.call(value)];
-}
-
-module.exports = isTypedArray;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isUndefined.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isUndefined.js
deleted file mode 100644 (file)
index d64e560..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Checks if `value` is `undefined`.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
- * @example
- *
- * _.isUndefined(void 0);
- * // => true
- *
- * _.isUndefined(null);
- * // => false
- */
-function isUndefined(value) {
-  return value === undefined;
-}
-
-module.exports = isUndefined;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toArray.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toArray.js
deleted file mode 100644 (file)
index 72b0b46..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var arrayCopy = require('../internal/arrayCopy'),
-    getLength = require('../internal/getLength'),
-    isLength = require('../internal/isLength'),
-    values = require('../object/values');
-
-/**
- * Converts `value` to an array.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to convert.
- * @returns {Array} Returns the converted array.
- * @example
- *
- * (function() {
- *   return _.toArray(arguments).slice(1);
- * }(1, 2, 3));
- * // => [2, 3]
- */
-function toArray(value) {
-  var length = value ? getLength(value) : 0;
-  if (!isLength(length)) {
-    return values(value);
-  }
-  if (!length) {
-    return [];
-  }
-  return arrayCopy(value);
-}
-
-module.exports = toArray;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toPlainObject.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/toPlainObject.js
deleted file mode 100644 (file)
index 6315176..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseCopy = require('../internal/baseCopy'),
-    keysIn = require('../object/keysIn');
-
-/**
- * Converts `value` to a plain object flattening inherited enumerable
- * properties of `value` to own properties of the plain object.
- *
- * @static
- * @memberOf _
- * @category Lang
- * @param {*} value The value to convert.
- * @returns {Object} Returns the converted plain object.
- * @example
- *
- * function Foo() {
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.assign({ 'a': 1 }, new Foo);
- * // => { 'a': 1, 'b': 2 }
- *
- * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
- * // => { 'a': 1, 'b': 2, 'c': 3 }
- */
-function toPlainObject(value) {
-  return baseCopy(value, keysIn(value));
-}
-
-module.exports = toPlainObject;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math.js
deleted file mode 100644 (file)
index 3e551b2..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-module.exports = {
-  'add': require('./math/add'),
-  'max': require('./math/max'),
-  'min': require('./math/min'),
-  'sum': require('./math/sum')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/add.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/add.js
deleted file mode 100644 (file)
index 59ced2f..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Adds two numbers.
- *
- * @static
- * @memberOf _
- * @category Math
- * @param {number} augend The first number to add.
- * @param {number} addend The second number to add.
- * @returns {number} Returns the sum.
- * @example
- *
- * _.add(6, 4);
- * // => 10
- */
-function add(augend, addend) {
-  return (+augend || 0) + (+addend || 0);
-}
-
-module.exports = add;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/max.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/max.js
deleted file mode 100644 (file)
index 6808841..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var arrayMax = require('../internal/arrayMax'),
-    createExtremum = require('../internal/createExtremum');
-
-/**
- * Gets the maximum value of `collection`. If `collection` is empty or falsey
- * `-Infinity` is returned. If an iteratee function is provided it is invoked
- * for each value in `collection` to generate the criterion by which the value
- * is ranked. The `iteratee` is bound to `thisArg` and invoked with three
- * arguments: (value, index, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Math
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {*} Returns the maximum value.
- * @example
- *
- * _.max([4, 2, 8, 6]);
- * // => 8
- *
- * _.max([]);
- * // => -Infinity
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 40 }
- * ];
- *
- * _.max(users, function(chr) {
- *   return chr.age;
- * });
- * // => { 'user': 'fred', 'age': 40 }
- *
- * // using the `_.property` callback shorthand
- * _.max(users, 'age');
- * // => { 'user': 'fred', 'age': 40 }
- */
-var max = createExtremum(arrayMax);
-
-module.exports = max;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/min.js
deleted file mode 100644 (file)
index 4381b0a..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-var arrayMin = require('../internal/arrayMin'),
-    createExtremum = require('../internal/createExtremum');
-
-/**
- * Gets the minimum value of `collection`. If `collection` is empty or falsey
- * `Infinity` is returned. If an iteratee function is provided it is invoked
- * for each value in `collection` to generate the criterion by which the value
- * is ranked. The `iteratee` is bound to `thisArg` and invoked with three
- * arguments: (value, index, collection).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Math
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {*} Returns the minimum value.
- * @example
- *
- * _.min([4, 2, 8, 6]);
- * // => 2
- *
- * _.min([]);
- * // => Infinity
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 40 }
- * ];
- *
- * _.min(users, function(chr) {
- *   return chr.age;
- * });
- * // => { 'user': 'barney', 'age': 36 }
- *
- * // using the `_.property` callback shorthand
- * _.min(users, 'age');
- * // => { 'user': 'barney', 'age': 36 }
- */
-var min = createExtremum(arrayMin, true);
-
-module.exports = min;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/sum.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/math/sum.js
deleted file mode 100644 (file)
index 0e18780..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-var arraySum = require('../internal/arraySum'),
-    baseCallback = require('../internal/baseCallback'),
-    baseSum = require('../internal/baseSum'),
-    isArray = require('../lang/isArray'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    toIterable = require('../internal/toIterable');
-
-/**
- * Gets the sum of the values in `collection`.
- *
- * @static
- * @memberOf _
- * @category Math
- * @param {Array|Object|string} collection The collection to iterate over.
- * @param {Function|Object|string} [iteratee] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {number} Returns the sum.
- * @example
- *
- * _.sum([4, 6]);
- * // => 10
- *
- * _.sum({ 'a': 4, 'b': 6 });
- * // => 10
- *
- * var objects = [
- *   { 'n': 4 },
- *   { 'n': 6 }
- * ];
- *
- * _.sum(objects, function(object) {
- *   return object.n;
- * });
- * // => 10
- *
- * // using the `_.property` callback shorthand
- * _.sum(objects, 'n');
- * // => 10
- */
-function sum(collection, iteratee, thisArg) {
-  if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
-    iteratee = null;
-  }
-  var noIteratee = iteratee == null;
-
-  iteratee = noIteratee ? iteratee : baseCallback(iteratee, thisArg, 3);
-  return noIteratee
-    ? arraySum(isArray(collection) ? collection : toIterable(collection))
-    : baseSum(collection, iteratee);
-}
-
-module.exports = sum;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number.js
deleted file mode 100644 (file)
index afab9d9..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-module.exports = {
-  'inRange': require('./number/inRange'),
-  'random': require('./number/random')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/inRange.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/inRange.js
deleted file mode 100644 (file)
index 4e5cc88..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
-    nativeMin = Math.min;
-
-/**
- * Checks if `n` is between `start` and up to but not including, `end`. If
- * `end` is not specified it is set to `start` with `start` then set to `0`.
- *
- * @static
- * @memberOf _
- * @category Number
- * @param {number} n The number to check.
- * @param {number} [start=0] The start of the range.
- * @param {number} end The end of the range.
- * @returns {boolean} Returns `true` if `n` is in the range, else `false`.
- * @example
- *
- * _.inRange(3, 2, 4);
- * // => true
- *
- * _.inRange(4, 8);
- * // => true
- *
- * _.inRange(4, 2);
- * // => false
- *
- * _.inRange(2, 2);
- * // => false
- *
- * _.inRange(1.2, 2);
- * // => true
- *
- * _.inRange(5.2, 4);
- * // => false
- */
-function inRange(value, start, end) {
-  start = +start || 0;
-  if (typeof end === 'undefined') {
-    end = start;
-    start = 0;
-  } else {
-    end = +end || 0;
-  }
-  return value >= nativeMin(start, end) && value < nativeMax(start, end);
-}
-
-module.exports = inRange;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/random.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/number/random.js
deleted file mode 100644 (file)
index 4212c2b..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-var baseRandom = require('../internal/baseRandom'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min,
-    nativeRandom = Math.random;
-
-/**
- * Produces a random number between `min` and `max` (inclusive). If only one
- * argument is provided a number between `0` and the given number is returned.
- * If `floating` is `true`, or either `min` or `max` are floats, a floating-point
- * number is returned instead of an integer.
- *
- * @static
- * @memberOf _
- * @category Number
- * @param {number} [min=0] The minimum possible value.
- * @param {number} [max=1] The maximum possible value.
- * @param {boolean} [floating] Specify returning a floating-point number.
- * @returns {number} Returns the random number.
- * @example
- *
- * _.random(0, 5);
- * // => an integer between 0 and 5
- *
- * _.random(5);
- * // => also an integer between 0 and 5
- *
- * _.random(5, true);
- * // => a floating-point number between 0 and 5
- *
- * _.random(1.2, 5.2);
- * // => a floating-point number between 1.2 and 5.2
- */
-function random(min, max, floating) {
-  if (floating && isIterateeCall(min, max, floating)) {
-    max = floating = null;
-  }
-  var noMin = min == null,
-      noMax = max == null;
-
-  if (floating == null) {
-    if (noMax && typeof min == 'boolean') {
-      floating = min;
-      min = 1;
-    }
-    else if (typeof max == 'boolean') {
-      floating = max;
-      noMax = true;
-    }
-  }
-  if (noMin && noMax) {
-    max = 1;
-    noMax = false;
-  }
-  min = +min || 0;
-  if (noMax) {
-    max = min;
-    min = 0;
-  } else {
-    max = +max || 0;
-  }
-  if (floating || min % 1 || max % 1) {
-    var rand = nativeRandom();
-    return nativeMin(min + (rand * (max - min + parseFloat('1e-' + ((rand + '').length - 1)))), max);
-  }
-  return baseRandom(min, max);
-}
-
-module.exports = random;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object.js
deleted file mode 100644 (file)
index 2d7a5c6..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-module.exports = {
-  'assign': require('./object/assign'),
-  'create': require('./object/create'),
-  'defaults': require('./object/defaults'),
-  'extend': require('./object/extend'),
-  'findKey': require('./object/findKey'),
-  'findLastKey': require('./object/findLastKey'),
-  'forIn': require('./object/forIn'),
-  'forInRight': require('./object/forInRight'),
-  'forOwn': require('./object/forOwn'),
-  'forOwnRight': require('./object/forOwnRight'),
-  'functions': require('./object/functions'),
-  'get': require('./object/get'),
-  'has': require('./object/has'),
-  'invert': require('./object/invert'),
-  'keys': require('./object/keys'),
-  'keysIn': require('./object/keysIn'),
-  'mapValues': require('./object/mapValues'),
-  'merge': require('./object/merge'),
-  'methods': require('./object/methods'),
-  'omit': require('./object/omit'),
-  'pairs': require('./object/pairs'),
-  'pick': require('./object/pick'),
-  'result': require('./object/result'),
-  'set': require('./object/set'),
-  'transform': require('./object/transform'),
-  'values': require('./object/values'),
-  'valuesIn': require('./object/valuesIn')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/assign.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/assign.js
deleted file mode 100644 (file)
index 3c6770e..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var assignWith = require('../internal/assignWith'),
-    baseAssign = require('../internal/baseAssign'),
-    createAssigner = require('../internal/createAssigner');
-
-/**
- * Assigns own enumerable properties of source object(s) to the destination
- * object. Subsequent sources overwrite property assignments of previous sources.
- * If `customizer` is provided it is invoked to produce the assigned values.
- * The `customizer` is bound to `thisArg` and invoked with five arguments:
- * (objectValue, sourceValue, key, object, source).
- *
- * **Note:** This method mutates `object` and is based on
- * [`Object.assign`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).
- *
- *
- * @static
- * @memberOf _
- * @alias extend
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @param {Function} [customizer] The function to customize assigned values.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * _.assign({ 'user': 'barney' }, { 'age': 40 }, { 'user': 'fred' });
- * // => { 'user': 'fred', 'age': 40 }
- *
- * // using a customizer callback
- * var defaults = _.partialRight(_.assign, function(value, other) {
- *   return _.isUndefined(value) ? other : value;
- * });
- *
- * defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
- * // => { 'user': 'barney', 'age': 36 }
- */
-var assign = createAssigner(function(object, source, customizer) {
-  return customizer
-    ? assignWith(object, source, customizer)
-    : baseAssign(object, source);
-});
-
-module.exports = assign;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/create.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/create.js
deleted file mode 100644 (file)
index a11d75b..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-var baseAssign = require('../internal/baseAssign'),
-    baseCreate = require('../internal/baseCreate'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates an object that inherits from the given `prototype` object. If a
- * `properties` object is provided its own enumerable properties are assigned
- * to the created object.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} prototype The object to inherit from.
- * @param {Object} [properties] The properties to assign to the object.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Object} Returns the new object.
- * @example
- *
- * function Shape() {
- *   this.x = 0;
- *   this.y = 0;
- * }
- *
- * function Circle() {
- *   Shape.call(this);
- * }
- *
- * Circle.prototype = _.create(Shape.prototype, {
- *   'constructor': Circle
- * });
- *
- * var circle = new Circle;
- * circle instanceof Circle;
- * // => true
- *
- * circle instanceof Shape;
- * // => true
- */
-function create(prototype, properties, guard) {
-  var result = baseCreate(prototype);
-  if (guard && isIterateeCall(prototype, properties, guard)) {
-    properties = null;
-  }
-  return properties ? baseAssign(result, properties) : result;
-}
-
-module.exports = create;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/defaults.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/defaults.js
deleted file mode 100644 (file)
index bcbd9f4..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var assign = require('./assign'),
-    assignDefaults = require('../internal/assignDefaults'),
-    restParam = require('../function/restParam');
-
-/**
- * Assigns own enumerable properties of source object(s) to the destination
- * object for all destination properties that resolve to `undefined`. Once a
- * property is set, additional values of the same property are ignored.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @example
- *
- * _.defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
- * // => { 'user': 'barney', 'age': 36 }
- */
-var defaults = restParam(function(args) {
-  var object = args[0];
-  if (object == null) {
-    return object;
-  }
-  args.push(assignDefaults);
-  return assign.apply(undefined, args);
-});
-
-module.exports = defaults;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/extend.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/extend.js
deleted file mode 100644 (file)
index dd0ca94..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./assign');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findKey.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findKey.js
deleted file mode 100644 (file)
index 1359df3..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var baseForOwn = require('../internal/baseForOwn'),
-    createFindKey = require('../internal/createFindKey');
-
-/**
- * This method is like `_.find` except that it returns the key of the first
- * element `predicate` returns truthy for instead of the element itself.
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {string|undefined} Returns the key of the matched element, else `undefined`.
- * @example
- *
- * var users = {
- *   'barney':  { 'age': 36, 'active': true },
- *   'fred':    { 'age': 40, 'active': false },
- *   'pebbles': { 'age': 1,  'active': true }
- * };
- *
- * _.findKey(users, function(chr) {
- *   return chr.age < 40;
- * });
- * // => 'barney' (iteration order is not guaranteed)
- *
- * // using the `_.matches` callback shorthand
- * _.findKey(users, { 'age': 1, 'active': true });
- * // => 'pebbles'
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.findKey(users, 'active', false);
- * // => 'fred'
- *
- * // using the `_.property` callback shorthand
- * _.findKey(users, 'active');
- * // => 'barney'
- */
-var findKey = createFindKey(baseForOwn);
-
-module.exports = findKey;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findLastKey.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/findLastKey.js
deleted file mode 100644 (file)
index 42893a4..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var baseForOwnRight = require('../internal/baseForOwnRight'),
-    createFindKey = require('../internal/createFindKey');
-
-/**
- * This method is like `_.findKey` except that it iterates over elements of
- * a collection in the opposite order.
- *
- * If a property name is provided for `predicate` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `predicate` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to search.
- * @param {Function|Object|string} [predicate=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {string|undefined} Returns the key of the matched element, else `undefined`.
- * @example
- *
- * var users = {
- *   'barney':  { 'age': 36, 'active': true },
- *   'fred':    { 'age': 40, 'active': false },
- *   'pebbles': { 'age': 1,  'active': true }
- * };
- *
- * _.findLastKey(users, function(chr) {
- *   return chr.age < 40;
- * });
- * // => returns `pebbles` assuming `_.findKey` returns `barney`
- *
- * // using the `_.matches` callback shorthand
- * _.findLastKey(users, { 'age': 36, 'active': true });
- * // => 'barney'
- *
- * // using the `_.matchesProperty` callback shorthand
- * _.findLastKey(users, 'active', false);
- * // => 'fred'
- *
- * // using the `_.property` callback shorthand
- * _.findLastKey(users, 'active');
- * // => 'pebbles'
- */
-var findLastKey = createFindKey(baseForOwnRight);
-
-module.exports = findLastKey;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forIn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forIn.js
deleted file mode 100644 (file)
index 52d34af..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseFor = require('../internal/baseFor'),
-    createForIn = require('../internal/createForIn');
-
-/**
- * Iterates over own and inherited enumerable properties of an object invoking
- * `iteratee` for each property. The `iteratee` is bound to `thisArg` and invoked
- * with three arguments: (value, key, object). Iteratee functions may exit
- * iteration early by explicitly returning `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forIn(new Foo, function(value, key) {
- *   console.log(key);
- * });
- * // => logs 'a', 'b', and 'c' (iteration order is not guaranteed)
- */
-var forIn = createForIn(baseFor);
-
-module.exports = forIn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forInRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forInRight.js
deleted file mode 100644 (file)
index 6780b92..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseForRight = require('../internal/baseForRight'),
-    createForIn = require('../internal/createForIn');
-
-/**
- * This method is like `_.forIn` except that it iterates over properties of
- * `object` in the opposite order.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forInRight(new Foo, function(value, key) {
- *   console.log(key);
- * });
- * // => logs 'c', 'b', and 'a' assuming `_.forIn ` logs 'a', 'b', and 'c'
- */
-var forInRight = createForIn(baseForRight);
-
-module.exports = forInRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwn.js
deleted file mode 100644 (file)
index 747bb76..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseForOwn = require('../internal/baseForOwn'),
-    createForOwn = require('../internal/createForOwn');
-
-/**
- * Iterates over own enumerable properties of an object invoking `iteratee`
- * for each property. The `iteratee` is bound to `thisArg` and invoked with
- * three arguments: (value, key, object). Iteratee functions may exit iteration
- * early by explicitly returning `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forOwn(new Foo, function(value, key) {
- *   console.log(key);
- * });
- * // => logs 'a' and 'b' (iteration order is not guaranteed)
- */
-var forOwn = createForOwn(baseForOwn);
-
-module.exports = forOwn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwnRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/forOwnRight.js
deleted file mode 100644 (file)
index 8122338..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseForOwnRight = require('../internal/baseForOwnRight'),
-    createForOwn = require('../internal/createForOwn');
-
-/**
- * This method is like `_.forOwn` except that it iterates over properties of
- * `object` in the opposite order.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forOwnRight(new Foo, function(value, key) {
- *   console.log(key);
- * });
- * // => logs 'b' and 'a' assuming `_.forOwn` logs 'a' and 'b'
- */
-var forOwnRight = createForOwn(baseForOwnRight);
-
-module.exports = forOwnRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/functions.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/functions.js
deleted file mode 100644 (file)
index 10799be..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var baseFunctions = require('../internal/baseFunctions'),
-    keysIn = require('./keysIn');
-
-/**
- * Creates an array of function property names from all enumerable properties,
- * own and inherited, of `object`.
- *
- * @static
- * @memberOf _
- * @alias methods
- * @category Object
- * @param {Object} object The object to inspect.
- * @returns {Array} Returns the new array of property names.
- * @example
- *
- * _.functions(_);
- * // => ['after', 'ary', 'assign', ...]
- */
-function functions(object) {
-  return baseFunctions(object, keysIn(object));
-}
-
-module.exports = functions;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/get.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/get.js
deleted file mode 100644 (file)
index 7e8a310..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseGet = require('../internal/baseGet'),
-    toPath = require('../internal/toPath');
-
-/**
- * Gets the property value of `path` on `object`. If the resolved value is
- * `undefined` the `defaultValue` is used in its place.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the property to get.
- * @param {*} [defaultValue] The value returned if the resolved value is `undefined`.
- * @returns {*} Returns the resolved value.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': 3 } }] };
- *
- * _.get(object, 'a[0].b.c');
- * // => 3
- *
- * _.get(object, ['a', '0', 'b', 'c']);
- * // => 3
- *
- * _.get(object, 'a.b.c', 'default');
- * // => 'default'
- */
-function get(object, path, defaultValue) {
-  var result = object == null ? undefined : baseGet(object, toPath(path), path + '');
-  return result === undefined ? defaultValue : result;
-}
-
-module.exports = get;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/has.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/has.js
deleted file mode 100644 (file)
index f208f8a..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseGet = require('../internal/baseGet'),
-    baseSlice = require('../internal/baseSlice'),
-    isKey = require('../internal/isKey'),
-    last = require('../array/last'),
-    toPath = require('../internal/toPath');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Checks if `path` is a direct property.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path to check.
- * @returns {boolean} Returns `true` if `path` is a direct property, else `false`.
- * @example
- *
- * var object = { 'a': { 'b': { 'c': 3 } } };
- *
- * _.has(object, 'a');
- * // => true
- *
- * _.has(object, 'a.b.c');
- * // => true
- *
- * _.has(object, ['a', 'b', 'c']);
- * // => true
- */
-function has(object, path) {
-  if (object == null) {
-    return false;
-  }
-  var result = hasOwnProperty.call(object, path);
-  if (!result && !isKey(path)) {
-    path = toPath(path);
-    object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-    path = last(path);
-    result = object != null && hasOwnProperty.call(object, path);
-  }
-  return result;
-}
-
-module.exports = has;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/invert.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/invert.js
deleted file mode 100644 (file)
index de02c08..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-var isIterateeCall = require('../internal/isIterateeCall'),
-    keys = require('./keys');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an object composed of the inverted keys and values of `object`.
- * If `object` contains duplicate values, subsequent values overwrite property
- * assignments of previous values unless `multiValue` is `true`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to invert.
- * @param {boolean} [multiValue] Allow multiple values per key.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Object} Returns the new inverted object.
- * @example
- *
- * var object = { 'a': 1, 'b': 2, 'c': 1 };
- *
- * _.invert(object);
- * // => { '1': 'c', '2': 'b' }
- *
- * // with `multiValue`
- * _.invert(object, true);
- * // => { '1': ['a', 'c'], '2': ['b'] }
- */
-function invert(object, multiValue, guard) {
-  if (guard && isIterateeCall(object, multiValue, guard)) {
-    multiValue = null;
-  }
-  var index = -1,
-      props = keys(object),
-      length = props.length,
-      result = {};
-
-  while (++index < length) {
-    var key = props[index],
-        value = object[key];
-
-    if (multiValue) {
-      if (hasOwnProperty.call(result, value)) {
-        result[value].push(key);
-      } else {
-        result[value] = [key];
-      }
-    }
-    else {
-      result[value] = key;
-    }
-  }
-  return result;
-}
-
-module.exports = invert;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keys.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keys.js
deleted file mode 100644 (file)
index c028656..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-var isLength = require('../internal/isLength'),
-    isNative = require('../lang/isNative'),
-    isObject = require('../lang/isObject'),
-    shimKeys = require('../internal/shimKeys');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeKeys = isNative(nativeKeys = Object.keys) && nativeKeys;
-
-/**
- * Creates an array of the own enumerable property names of `object`.
- *
- * **Note:** Non-object values are coerced to objects. See the
- * [ES spec](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys)
- * for more details.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.keys(new Foo);
- * // => ['a', 'b'] (iteration order is not guaranteed)
- *
- * _.keys('hi');
- * // => ['0', '1']
- */
-var keys = !nativeKeys ? shimKeys : function(object) {
-  if (object) {
-    var Ctor = object.constructor,
-        length = object.length;
-  }
-  if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
-      (typeof object != 'function' && isLength(length))) {
-    return shimKeys(object);
-  }
-  return isObject(object) ? nativeKeys(object) : [];
-};
-
-module.exports = keys;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keysIn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/keysIn.js
deleted file mode 100644 (file)
index 72a1c5e..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-var isArguments = require('../lang/isArguments'),
-    isArray = require('../lang/isArray'),
-    isIndex = require('../internal/isIndex'),
-    isLength = require('../internal/isLength'),
-    isObject = require('../lang/isObject'),
-    support = require('../support');
-
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an array of the own and inherited enumerable property names of `object`.
- *
- * **Note:** Non-object values are coerced to objects.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.keysIn(new Foo);
- * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
- */
-function keysIn(object) {
-  if (object == null) {
-    return [];
-  }
-  if (!isObject(object)) {
-    object = Object(object);
-  }
-  var length = object.length;
-  length = (length && isLength(length) &&
-    (isArray(object) || (support.nonEnumArgs && isArguments(object))) && length) || 0;
-
-  var Ctor = object.constructor,
-      index = -1,
-      isProto = typeof Ctor == 'function' && Ctor.prototype === object,
-      result = Array(length),
-      skipIndexes = length > 0;
-
-  while (++index < length) {
-    result[index] = (index + '');
-  }
-  for (var key in object) {
-    if (!(skipIndexes && isIndex(key, length)) &&
-        !(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
-      result.push(key);
-    }
-  }
-  return result;
-}
-
-module.exports = keysIn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/mapValues.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/mapValues.js
deleted file mode 100644 (file)
index 32edea0..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    baseForOwn = require('../internal/baseForOwn');
-
-/**
- * Creates an object with the same keys as `object` and values generated by
- * running each own enumerable property of `object` through `iteratee`. The
- * iteratee function is bound to `thisArg` and invoked with three arguments:
- * (value, key, object).
- *
- * If a property name is provided for `iteratee` the created `_.property`
- * style callback returns the property value of the given element.
- *
- * If a value is also provided for `thisArg` the created `_.matchesProperty`
- * style callback returns `true` for elements that have a matching property
- * value, else `false`.
- *
- * If an object is provided for `iteratee` the created `_.matches` style
- * callback returns `true` for elements that have the properties of the given
- * object, else `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function|Object|string} [iteratee=_.identity] The function invoked
- *  per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Object} Returns the new mapped object.
- * @example
- *
- * _.mapValues({ 'a': 1, 'b': 2 }, function(n) {
- *   return n * 3;
- * });
- * // => { 'a': 3, 'b': 6 }
- *
- * var users = {
- *   'fred':    { 'user': 'fred',    'age': 40 },
- *   'pebbles': { 'user': 'pebbles', 'age': 1 }
- * };
- *
- * // using the `_.property` callback shorthand
- * _.mapValues(users, 'age');
- * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
- */
-function mapValues(object, iteratee, thisArg) {
-  var result = {};
-  iteratee = baseCallback(iteratee, thisArg, 3);
-
-  baseForOwn(object, function(value, key, object) {
-    result[key] = iteratee(value, key, object);
-  });
-  return result;
-}
-
-module.exports = mapValues;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/merge.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/merge.js
deleted file mode 100644 (file)
index dc0b95e..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-var baseMerge = require('../internal/baseMerge'),
-    createAssigner = require('../internal/createAssigner');
-
-/**
- * Recursively merges own enumerable properties of the source object(s), that
- * don't resolve to `undefined` into the destination object. Subsequent sources
- * overwrite property assignments of previous sources. If `customizer` is
- * provided it is invoked to produce the merged values of the destination and
- * source properties. If `customizer` returns `undefined` merging is handled
- * by the method instead. The `customizer` is bound to `thisArg` and invoked
- * with five arguments: (objectValue, sourceValue, key, object, source).
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @param {Function} [customizer] The function to customize assigned values.
- * @param {*} [thisArg] The `this` binding of `customizer`.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var users = {
- *   'data': [{ 'user': 'barney' }, { 'user': 'fred' }]
- * };
- *
- * var ages = {
- *   'data': [{ 'age': 36 }, { 'age': 40 }]
- * };
- *
- * _.merge(users, ages);
- * // => { 'data': [{ 'user': 'barney', 'age': 36 }, { 'user': 'fred', 'age': 40 }] }
- *
- * // using a customizer callback
- * var object = {
- *   'fruits': ['apple'],
- *   'vegetables': ['beet']
- * };
- *
- * var other = {
- *   'fruits': ['banana'],
- *   'vegetables': ['carrot']
- * };
- *
- * _.merge(object, other, function(a, b) {
- *   if (_.isArray(a)) {
- *     return a.concat(b);
- *   }
- * });
- * // => { 'fruits': ['apple', 'banana'], 'vegetables': ['beet', 'carrot'] }
- */
-var merge = createAssigner(baseMerge);
-
-module.exports = merge;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/methods.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/methods.js
deleted file mode 100644 (file)
index 8a304fe..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./functions');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/omit.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/omit.js
deleted file mode 100644 (file)
index 2154b4a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-var arrayMap = require('../internal/arrayMap'),
-    baseDifference = require('../internal/baseDifference'),
-    baseFlatten = require('../internal/baseFlatten'),
-    bindCallback = require('../internal/bindCallback'),
-    keysIn = require('./keysIn'),
-    pickByArray = require('../internal/pickByArray'),
-    pickByCallback = require('../internal/pickByCallback'),
-    restParam = require('../function/restParam');
-
-/**
- * The opposite of `_.pick`; this method creates an object composed of the
- * own and inherited enumerable properties of `object` that are not omitted.
- * Property names may be specified as individual arguments or as arrays of
- * property names. If `predicate` is provided it is invoked for each property
- * of `object` omitting the properties `predicate` returns truthy for. The
- * predicate is bound to `thisArg` and invoked with three arguments:
- * (value, key, object).
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The source object.
- * @param {Function|...(string|string[])} [predicate] The function invoked per
- *  iteration or property names to omit, specified as individual property
- *  names or arrays of property names.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'user': 'fred', 'age': 40 };
- *
- * _.omit(object, 'age');
- * // => { 'user': 'fred' }
- *
- * _.omit(object, _.isNumber);
- * // => { 'user': 'fred' }
- */
-var omit = restParam(function(object, props) {
-  if (object == null) {
-    return {};
-  }
-  if (typeof props[0] != 'function') {
-    var props = arrayMap(baseFlatten(props), String);
-    return pickByArray(object, baseDifference(keysIn(object), props));
-  }
-  var predicate = bindCallback(props[0], props[1], 3);
-  return pickByCallback(object, function(value, key, object) {
-    return !predicate(value, key, object);
-  });
-});
-
-module.exports = omit;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pairs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pairs.js
deleted file mode 100644 (file)
index 64de3ed..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var keys = require('./keys');
-
-/**
- * Creates a two dimensional array of the key-value pairs for `object`,
- * e.g. `[[key1, value1], [key2, value2]]`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the new array of key-value pairs.
- * @example
- *
- * _.pairs({ 'barney': 36, 'fred': 40 });
- * // => [['barney', 36], ['fred', 40]] (iteration order is not guaranteed)
- */
-function pairs(object) {
-  var index = -1,
-      props = keys(object),
-      length = props.length,
-      result = Array(length);
-
-  while (++index < length) {
-    var key = props[index];
-    result[index] = [key, object[key]];
-  }
-  return result;
-}
-
-module.exports = pairs;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pick.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/pick.js
deleted file mode 100644 (file)
index c880c31..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-var baseFlatten = require('../internal/baseFlatten'),
-    bindCallback = require('../internal/bindCallback'),
-    pickByArray = require('../internal/pickByArray'),
-    pickByCallback = require('../internal/pickByCallback'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates an object composed of the picked `object` properties. Property
- * names may be specified as individual arguments or as arrays of property
- * names. If `predicate` is provided it is invoked for each property of `object`
- * picking the properties `predicate` returns truthy for. The predicate is
- * bound to `thisArg` and invoked with three arguments: (value, key, object).
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The source object.
- * @param {Function|...(string|string[])} [predicate] The function invoked per
- *  iteration or property names to pick, specified as individual property
- *  names or arrays of property names.
- * @param {*} [thisArg] The `this` binding of `predicate`.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'user': 'fred', 'age': 40 };
- *
- * _.pick(object, 'user');
- * // => { 'user': 'fred' }
- *
- * _.pick(object, _.isString);
- * // => { 'user': 'fred' }
- */
-var pick = restParam(function(object, props) {
-  if (object == null) {
-    return {};
-  }
-  return typeof props[0] == 'function'
-    ? pickByCallback(object, bindCallback(props[0], props[1], 3))
-    : pickByArray(object, baseFlatten(props));
-});
-
-module.exports = pick;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/result.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/result.js
deleted file mode 100644 (file)
index 05ca6df..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseGet = require('../internal/baseGet'),
-    baseSlice = require('../internal/baseSlice'),
-    isFunction = require('../lang/isFunction'),
-    isKey = require('../internal/isKey'),
-    last = require('../array/last'),
-    toPath = require('../internal/toPath');
-
-/**
- * This method is like `_.get` except that if the resolved value is a function
- * it is invoked with the `this` binding of its parent object and its result
- * is returned.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the property to resolve.
- * @param {*} [defaultValue] The value returned if the resolved value is `undefined`.
- * @returns {*} Returns the resolved value.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };
- *
- * _.result(object, 'a[0].b.c1');
- * // => 3
- *
- * _.result(object, 'a[0].b.c2');
- * // => 4
- *
- * _.result(object, 'a.b.c', 'default');
- * // => 'default'
- *
- * _.result(object, 'a.b.c', _.constant('default'));
- * // => 'default'
- */
-function result(object, path, defaultValue) {
-  var result = object == null ? undefined : object[path];
-  if (result === undefined) {
-    if (object != null && !isKey(path, object)) {
-      path = toPath(path);
-      object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
-      result = object == null ? undefined : object[last(path)];
-    }
-    result = result === undefined ? defaultValue : result;
-  }
-  return isFunction(result) ? result.call(object) : result;
-}
-
-module.exports = result;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/set.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/set.js
deleted file mode 100644 (file)
index 02caf31..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-var isIndex = require('../internal/isIndex'),
-    isKey = require('../internal/isKey'),
-    isObject = require('../lang/isObject'),
-    toPath = require('../internal/toPath');
-
-/**
- * Sets the property value of `path` on `object`. If a portion of `path`
- * does not exist it is created.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to augment.
- * @param {Array|string} path The path of the property to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': 3 } }] };
- *
- * _.set(object, 'a[0].b.c', 4);
- * console.log(object.a[0].b.c);
- * // => 4
- *
- * _.set(object, 'x[0].y.z', 5);
- * console.log(object.x[0].y.z);
- * // => 5
- */
-function set(object, path, value) {
-  if (object == null) {
-    return object;
-  }
-  var pathKey = (path + '');
-  path = (object[pathKey] != null || isKey(path, object)) ? [pathKey] : toPath(path);
-
-  var index = -1,
-      length = path.length,
-      endIndex = length - 1,
-      nested = object;
-
-  while (nested != null && ++index < length) {
-    var key = path[index];
-    if (isObject(nested)) {
-      if (index == endIndex) {
-        nested[key] = value;
-      } else if (nested[key] == null) {
-        nested[key] = isIndex(path[index + 1]) ? [] : {};
-      }
-    }
-    nested = nested[key];
-  }
-  return object;
-}
-
-module.exports = set;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/transform.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/transform.js
deleted file mode 100644 (file)
index 4537ba1..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-var arrayEach = require('../internal/arrayEach'),
-    baseCallback = require('../internal/baseCallback'),
-    baseCreate = require('../internal/baseCreate'),
-    baseForOwn = require('../internal/baseForOwn'),
-    isArray = require('../lang/isArray'),
-    isFunction = require('../lang/isFunction'),
-    isObject = require('../lang/isObject'),
-    isTypedArray = require('../lang/isTypedArray');
-
-/**
- * An alternative to `_.reduce`; this method transforms `object` to a new
- * `accumulator` object which is the result of running each of its own enumerable
- * properties through `iteratee`, with each invocation potentially mutating
- * the `accumulator` object. The `iteratee` is bound to `thisArg` and invoked
- * with four arguments: (accumulator, value, key, object). Iteratee functions
- * may exit iteration early by explicitly returning `false`.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Array|Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [accumulator] The custom accumulator value.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {*} Returns the accumulated value.
- * @example
- *
- * _.transform([2, 3, 4], function(result, n) {
- *   result.push(n *= n);
- *   return n % 2 == 0;
- * });
- * // => [4, 9]
- *
- * _.transform({ 'a': 1, 'b': 2 }, function(result, n, key) {
- *   result[key] = n * 3;
- * });
- * // => { 'a': 3, 'b': 6 }
- */
-function transform(object, iteratee, accumulator, thisArg) {
-  var isArr = isArray(object) || isTypedArray(object);
-  iteratee = baseCallback(iteratee, thisArg, 4);
-
-  if (accumulator == null) {
-    if (isArr || isObject(object)) {
-      var Ctor = object.constructor;
-      if (isArr) {
-        accumulator = isArray(object) ? new Ctor : [];
-      } else {
-        accumulator = baseCreate(isFunction(Ctor) && Ctor.prototype);
-      }
-    } else {
-      accumulator = {};
-    }
-  }
-  (isArr ? arrayEach : baseForOwn)(object, function(value, index, object) {
-    return iteratee(accumulator, value, index, object);
-  });
-  return accumulator;
-}
-
-module.exports = transform;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/values.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/values.js
deleted file mode 100644 (file)
index 0171515..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseValues = require('../internal/baseValues'),
-    keys = require('./keys');
-
-/**
- * Creates an array of the own enumerable property values of `object`.
- *
- * **Note:** Non-object values are coerced to objects.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property values.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.values(new Foo);
- * // => [1, 2] (iteration order is not guaranteed)
- *
- * _.values('hi');
- * // => ['h', 'i']
- */
-function values(object) {
-  return baseValues(object, keys(object));
-}
-
-module.exports = values;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/valuesIn.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/object/valuesIn.js
deleted file mode 100644 (file)
index 5f067c0..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseValues = require('../internal/baseValues'),
-    keysIn = require('./keysIn');
-
-/**
- * Creates an array of the own and inherited enumerable property values
- * of `object`.
- *
- * **Note:** Non-object values are coerced to objects.
- *
- * @static
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property values.
- * @example
- *
- * function Foo() {
- *   this.a = 1;
- *   this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.valuesIn(new Foo);
- * // => [1, 2, 3] (iteration order is not guaranteed)
- */
-function valuesIn(object) {
-  return baseValues(object, keysIn(object));
-}
-
-module.exports = valuesIn;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/package.json
deleted file mode 100644 (file)
index 411d8cd..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-{
-  "_args": [
-    [
-      "lodash@https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "lodash@https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-  "_id": "lodash@https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Nni9irmVBXwHreg27S7wh9qBHUU=",
-  "_location": "/grunt-standard/standard/eslint/js-yaml/argparse/lodash",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "lodash@https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-    "name": "lodash",
-    "escapedName": "lodash",
-    "rawSpec": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/js-yaml/argparse"
-  ],
-  "_spec": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "John-David Dalton",
-    "email": "john.david.dalton@gmail.com",
-    "url": "http://allyoucanleet.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/lodash/lodash/issues"
-  },
-  "contributors": [
-    {
-      "name": "John-David Dalton",
-      "email": "john.david.dalton@gmail.com",
-      "url": "http://allyoucanleet.com/"
-    },
-    {
-      "name": "Benjamin Tan",
-      "email": "demoneaux@gmail.com",
-      "url": "https://d10.github.io/"
-    },
-    {
-      "name": "Blaine Bublitz",
-      "email": "blaine@iceddev.com",
-      "url": "http://www.iceddev.com/"
-    },
-    {
-      "name": "Kit Cambridge",
-      "email": "github@kitcambridge.be",
-      "url": "http://kitcambridge.be/"
-    },
-    {
-      "name": "Mathias Bynens",
-      "email": "mathias@qiwi.be",
-      "url": "https://mathiasbynens.be/"
-    }
-  ],
-  "description": "The modern build of lodash modular utilities.",
-  "homepage": "https://lodash.com/",
-  "icon": "https://lodash.com/icon.svg",
-  "keywords": [
-    "modules",
-    "stdlib",
-    "util"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "lodash",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/lodash/lodash.git"
-  },
-  "scripts": {
-    "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\""
-  },
-  "version": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string.js
deleted file mode 100644 (file)
index f777945..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-module.exports = {
-  'camelCase': require('./string/camelCase'),
-  'capitalize': require('./string/capitalize'),
-  'deburr': require('./string/deburr'),
-  'endsWith': require('./string/endsWith'),
-  'escape': require('./string/escape'),
-  'escapeRegExp': require('./string/escapeRegExp'),
-  'kebabCase': require('./string/kebabCase'),
-  'pad': require('./string/pad'),
-  'padLeft': require('./string/padLeft'),
-  'padRight': require('./string/padRight'),
-  'parseInt': require('./string/parseInt'),
-  'repeat': require('./string/repeat'),
-  'snakeCase': require('./string/snakeCase'),
-  'startCase': require('./string/startCase'),
-  'startsWith': require('./string/startsWith'),
-  'template': require('./string/template'),
-  'templateSettings': require('./string/templateSettings'),
-  'trim': require('./string/trim'),
-  'trimLeft': require('./string/trimLeft'),
-  'trimRight': require('./string/trimRight'),
-  'trunc': require('./string/trunc'),
-  'unescape': require('./string/unescape'),
-  'words': require('./string/words')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/camelCase.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/camelCase.js
deleted file mode 100644 (file)
index 2d438f4..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var createCompounder = require('../internal/createCompounder');
-
-/**
- * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the camel cased string.
- * @example
- *
- * _.camelCase('Foo Bar');
- * // => 'fooBar'
- *
- * _.camelCase('--foo-bar');
- * // => 'fooBar'
- *
- * _.camelCase('__foo_bar__');
- * // => 'fooBar'
- */
-var camelCase = createCompounder(function(result, word, index) {
-  word = word.toLowerCase();
-  return result + (index ? (word.charAt(0).toUpperCase() + word.slice(1)) : word);
-});
-
-module.exports = camelCase;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/capitalize.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/capitalize.js
deleted file mode 100644 (file)
index f9222dc..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/**
- * Capitalizes the first character of `string`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to capitalize.
- * @returns {string} Returns the capitalized string.
- * @example
- *
- * _.capitalize('fred');
- * // => 'Fred'
- */
-function capitalize(string) {
-  string = baseToString(string);
-  return string && (string.charAt(0).toUpperCase() + string.slice(1));
-}
-
-module.exports = capitalize;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/deburr.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/deburr.js
deleted file mode 100644 (file)
index 0bd03e6..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    deburrLetter = require('../internal/deburrLetter');
-
-/** Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). */
-var reComboMark = /[\u0300-\u036f\ufe20-\ufe23]/g;
-
-/** Used to match latin-1 supplementary letters (excluding mathematical operators). */
-var reLatin1 = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g;
-
-/**
- * Deburrs `string` by converting [latin-1 supplementary letters](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
- * to basic latin letters and removing [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to deburr.
- * @returns {string} Returns the deburred string.
- * @example
- *
- * _.deburr('déjà vu');
- * // => 'deja vu'
- */
-function deburr(string) {
-  string = baseToString(string);
-  return string && string.replace(reLatin1, deburrLetter).replace(reComboMark, '');
-}
-
-module.exports = deburr;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/endsWith.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/endsWith.js
deleted file mode 100644 (file)
index 26821e2..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Checks if `string` ends with the given target string.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to search.
- * @param {string} [target] The string to search for.
- * @param {number} [position=string.length] The position to search from.
- * @returns {boolean} Returns `true` if `string` ends with `target`, else `false`.
- * @example
- *
- * _.endsWith('abc', 'c');
- * // => true
- *
- * _.endsWith('abc', 'b');
- * // => false
- *
- * _.endsWith('abc', 'b', 2);
- * // => true
- */
-function endsWith(string, target, position) {
-  string = baseToString(string);
-  target = (target + '');
-
-  var length = string.length;
-  position = position === undefined
-    ? length
-    : nativeMin(position < 0 ? 0 : (+position || 0), length);
-
-  position -= target.length;
-  return position >= 0 && string.indexOf(target, position) == position;
-}
-
-module.exports = endsWith;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escape.js
deleted file mode 100644 (file)
index c4e72cc..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    escapeHtmlChar = require('../internal/escapeHtmlChar');
-
-/** Used to match HTML entities and HTML characters. */
-var reUnescapedHtml = /[&<>"'`]/g,
-    reHasUnescapedHtml = RegExp(reUnescapedHtml.source);
-
-/**
- * Converts the characters "&", "<", ">", '"', "'", and "\`", in `string` to
- * their corresponding HTML entities.
- *
- * **Note:** No other characters are escaped. To escape additional characters
- * use a third-party library like [_he_](https://mths.be/he).
- *
- * Though the ">" character is escaped for symmetry, characters like
- * ">" and "/" don't require escaping in HTML and have no special meaning
- * unless they're part of a tag or unquoted attribute value.
- * See [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)
- * (under "semi-related fun fact") for more details.
- *
- * Backticks are escaped because in Internet Explorer < 9, they can break out
- * of attribute values or HTML comments. See [#59](https://html5sec.org/#59),
- * [#102](https://html5sec.org/#102), [#108](https://html5sec.org/#108), and
- * [#133](https://html5sec.org/#133) of the [HTML5 Security Cheatsheet](https://html5sec.org/)
- * for more details.
- *
- * When working with HTML you should always [quote attribute values](http://wonko.com/post/html-escaping)
- * to reduce XSS vectors.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to escape.
- * @returns {string} Returns the escaped string.
- * @example
- *
- * _.escape('fred, barney, & pebbles');
- * // => 'fred, barney, &amp; pebbles'
- */
-function escape(string) {
-  // Reset `lastIndex` because in IE < 9 `String#replace` does not.
-  string = baseToString(string);
-  return (string && reHasUnescapedHtml.test(string))
-    ? string.replace(reUnescapedHtml, escapeHtmlChar)
-    : string;
-}
-
-module.exports = escape;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escapeRegExp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/escapeRegExp.js
deleted file mode 100644 (file)
index 0234d67..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/**
- * Used to match `RegExp` [special characters](http://www.regular-expressions.info/characters.html#special).
- * In addition to special characters the forward slash is escaped to allow for
- * easier `eval` use and `Function` compilation.
- */
-var reRegExpChars = /[.*+?^${}()|[\]\/\\]/g,
-    reHasRegExpChars = RegExp(reRegExpChars.source);
-
-/**
- * Escapes the `RegExp` special characters "\", "/", "^", "$", ".", "|", "?",
- * "*", "+", "(", ")", "[", "]", "{" and "}" in `string`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to escape.
- * @returns {string} Returns the escaped string.
- * @example
- *
- * _.escapeRegExp('[lodash](https://lodash.com/)');
- * // => '\[lodash\]\(https:\/\/lodash\.com\/\)'
- */
-function escapeRegExp(string) {
-  string = baseToString(string);
-  return (string && reHasRegExpChars.test(string))
-    ? string.replace(reRegExpChars, '\\$&')
-    : string;
-}
-
-module.exports = escapeRegExp;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/kebabCase.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/kebabCase.js
deleted file mode 100644 (file)
index d29c2f9..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var createCompounder = require('../internal/createCompounder');
-
-/**
- * Converts `string` to [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the kebab cased string.
- * @example
- *
- * _.kebabCase('Foo Bar');
- * // => 'foo-bar'
- *
- * _.kebabCase('fooBar');
- * // => 'foo-bar'
- *
- * _.kebabCase('__foo_bar__');
- * // => 'foo-bar'
- */
-var kebabCase = createCompounder(function(result, word, index) {
-  return result + (index ? '-' : '') + word.toLowerCase();
-});
-
-module.exports = kebabCase;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/pad.js
deleted file mode 100644 (file)
index df37ded..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    createPadding = require('../internal/createPadding');
-
-/** Native method references. */
-var ceil = Math.ceil,
-    floor = Math.floor;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
-
-/**
- * Pads `string` on the left and right sides if it is shorter than `length`.
- * Padding characters are truncated if they can't be evenly divided by `length`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.pad('abc', 8);
- * // => '  abc   '
- *
- * _.pad('abc', 8, '_-');
- * // => '_-abc_-_'
- *
- * _.pad('abc', 3);
- * // => 'abc'
- */
-function pad(string, length, chars) {
-  string = baseToString(string);
-  length = +length;
-
-  var strLength = string.length;
-  if (strLength >= length || !nativeIsFinite(length)) {
-    return string;
-  }
-  var mid = (length - strLength) / 2,
-      leftLength = floor(mid),
-      rightLength = ceil(mid);
-
-  chars = createPadding('', rightLength, chars);
-  return chars.slice(0, leftLength) + string + chars;
-}
-
-module.exports = pad;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padLeft.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padLeft.js
deleted file mode 100644 (file)
index af5a498..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var createPadDir = require('../internal/createPadDir');
-
-/**
- * Pads `string` on the left side if it is shorter than `length`. Padding
- * characters are truncated if they exceed `length`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.padLeft('abc', 6);
- * // => '   abc'
- *
- * _.padLeft('abc', 6, '_-');
- * // => '_-_abc'
- *
- * _.padLeft('abc', 3);
- * // => 'abc'
- */
-var padLeft = createPadDir();
-
-module.exports = padLeft;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/padRight.js
deleted file mode 100644 (file)
index e78daa5..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var createPadDir = require('../internal/createPadDir');
-
-/**
- * Pads `string` on the right side if it is shorter than `length`. Padding
- * characters are truncated if they exceed `length`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.padRight('abc', 6);
- * // => 'abc   '
- *
- * _.padRight('abc', 6, '_-');
- * // => 'abc_-_'
- *
- * _.padRight('abc', 3);
- * // => 'abc'
- */
-var padRight = createPadDir(true);
-
-module.exports = padRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/parseInt.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/parseInt.js
deleted file mode 100644 (file)
index c4cf71a..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var isIterateeCall = require('../internal/isIterateeCall'),
-    trim = require('./trim');
-
-/** Used to detect hexadecimal string values. */
-var reHasHexPrefix = /^0[xX]/;
-
-/** Used to detect and test for whitespace. */
-var whitespace = (
-  // Basic whitespace characters.
-  ' \t\x0b\f\xa0\ufeff' +
-
-  // Line terminators.
-  '\n\r\u2028\u2029' +
-
-  // Unicode category "Zs" space separators.
-  '\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000'
-);
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeParseInt = global.parseInt;
-
-/**
- * Converts `string` to an integer of the specified radix. If `radix` is
- * `undefined` or `0`, a `radix` of `10` is used unless `value` is a hexadecimal,
- * in which case a `radix` of `16` is used.
- *
- * **Note:** This method aligns with the [ES5 implementation](https://es5.github.io/#E)
- * of `parseInt`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} string The string to convert.
- * @param {number} [radix] The radix to interpret `value` by.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {number} Returns the converted integer.
- * @example
- *
- * _.parseInt('08');
- * // => 8
- *
- * _.map(['6', '08', '10'], _.parseInt);
- * // => [6, 8, 10]
- */
-function parseInt(string, radix, guard) {
-  if (guard && isIterateeCall(string, radix, guard)) {
-    radix = 0;
-  }
-  return nativeParseInt(string, radix);
-}
-// Fallback for environments with pre-ES5 implementations.
-if (nativeParseInt(whitespace + '08') != 8) {
-  parseInt = function(string, radix, guard) {
-    // Firefox < 21 and Opera < 15 follow ES3 for `parseInt`.
-    // Chrome fails to trim leading <BOM> whitespace characters.
-    // See https://code.google.com/p/v8/issues/detail?id=3109 for more details.
-    if (guard ? isIterateeCall(string, radix, guard) : radix == null) {
-      radix = 0;
-    } else if (radix) {
-      radix = +radix;
-    }
-    string = trim(string);
-    return nativeParseInt(string, radix || (reHasHexPrefix.test(string) ? 16 : 10));
-  };
-}
-
-module.exports = parseInt;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/repeat.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/repeat.js
deleted file mode 100644 (file)
index 271156b..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/** Native method references. */
-var floor = Math.floor;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite;
-
-/**
- * Repeats the given string `n` times.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to repeat.
- * @param {number} [n=0] The number of times to repeat the string.
- * @returns {string} Returns the repeated string.
- * @example
- *
- * _.repeat('*', 3);
- * // => '***'
- *
- * _.repeat('abc', 2);
- * // => 'abcabc'
- *
- * _.repeat('abc', 0);
- * // => ''
- */
-function repeat(string, n) {
-  var result = '';
-  string = baseToString(string);
-  n = +n;
-  if (n < 1 || !string || !nativeIsFinite(n)) {
-    return result;
-  }
-  // Leverage the exponentiation by squaring algorithm for a faster repeat.
-  // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
-  do {
-    if (n % 2) {
-      result += string;
-    }
-    n = floor(n / 2);
-    string += string;
-  } while (n);
-
-  return result;
-}
-
-module.exports = repeat;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/snakeCase.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/snakeCase.js
deleted file mode 100644 (file)
index c9ebffd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var createCompounder = require('../internal/createCompounder');
-
-/**
- * Converts `string` to [snake case](https://en.wikipedia.org/wiki/Snake_case).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the snake cased string.
- * @example
- *
- * _.snakeCase('Foo Bar');
- * // => 'foo_bar'
- *
- * _.snakeCase('fooBar');
- * // => 'foo_bar'
- *
- * _.snakeCase('--foo-bar');
- * // => 'foo_bar'
- */
-var snakeCase = createCompounder(function(result, word, index) {
-  return result + (index ? '_' : '') + word.toLowerCase();
-});
-
-module.exports = snakeCase;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startCase.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startCase.js
deleted file mode 100644 (file)
index 740d48a..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var createCompounder = require('../internal/createCompounder');
-
-/**
- * Converts `string` to [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the start cased string.
- * @example
- *
- * _.startCase('--foo-bar');
- * // => 'Foo Bar'
- *
- * _.startCase('fooBar');
- * // => 'Foo Bar'
- *
- * _.startCase('__foo_bar__');
- * // => 'Foo Bar'
- */
-var startCase = createCompounder(function(result, word, index) {
-  return result + (index ? ' ' : '') + (word.charAt(0).toUpperCase() + word.slice(1));
-});
-
-module.exports = startCase;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startsWith.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/startsWith.js
deleted file mode 100644 (file)
index 65fae2a..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Checks if `string` starts with the given target string.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to search.
- * @param {string} [target] The string to search for.
- * @param {number} [position=0] The position to search from.
- * @returns {boolean} Returns `true` if `string` starts with `target`, else `false`.
- * @example
- *
- * _.startsWith('abc', 'a');
- * // => true
- *
- * _.startsWith('abc', 'b');
- * // => false
- *
- * _.startsWith('abc', 'b', 1);
- * // => true
- */
-function startsWith(string, target, position) {
-  string = baseToString(string);
-  position = position == null
-    ? 0
-    : nativeMin(position < 0 ? 0 : (+position || 0), string.length);
-
-  return string.lastIndexOf(target, position) == position;
-}
-
-module.exports = startsWith;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/template.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/template.js
deleted file mode 100644 (file)
index b391048..0000000
+++ /dev/null
@@ -1,226 +0,0 @@
-var assignOwnDefaults = require('../internal/assignOwnDefaults'),
-    assignWith = require('../internal/assignWith'),
-    attempt = require('../utility/attempt'),
-    baseAssign = require('../internal/baseAssign'),
-    baseToString = require('../internal/baseToString'),
-    baseValues = require('../internal/baseValues'),
-    escapeStringChar = require('../internal/escapeStringChar'),
-    isError = require('../lang/isError'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    keys = require('../object/keys'),
-    reInterpolate = require('../internal/reInterpolate'),
-    templateSettings = require('./templateSettings');
-
-/** Used to match empty string literals in compiled template source. */
-var reEmptyStringLeading = /\b__p \+= '';/g,
-    reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
-    reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
-
-/** Used to match [ES template delimiters](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-template-literal-lexical-components). */
-var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
-
-/** Used to ensure capturing order of template delimiters. */
-var reNoMatch = /($^)/;
-
-/** Used to match unescaped characters in compiled string literals. */
-var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
-
-/**
- * Creates a compiled template function that can interpolate data properties
- * in "interpolate" delimiters, HTML-escape interpolated data properties in
- * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
- * properties may be accessed as free variables in the template. If a setting
- * object is provided it takes precedence over `_.templateSettings` values.
- *
- * **Note:** In the development build `_.template` utilizes
- * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
- * for easier debugging.
- *
- * For more information on precompiling templates see
- * [lodash's custom builds documentation](https://lodash.com/custom-builds).
- *
- * For more information on Chrome extension sandboxes see
- * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The template string.
- * @param {Object} [options] The options object.
- * @param {RegExp} [options.escape] The HTML "escape" delimiter.
- * @param {RegExp} [options.evaluate] The "evaluate" delimiter.
- * @param {Object} [options.imports] An object to import into the template as free variables.
- * @param {RegExp} [options.interpolate] The "interpolate" delimiter.
- * @param {string} [options.sourceURL] The sourceURL of the template's compiled source.
- * @param {string} [options.variable] The data object variable name.
- * @param- {Object} [otherOptions] Enables the legacy `options` param signature.
- * @returns {Function} Returns the compiled template function.
- * @example
- *
- * // using the "interpolate" delimiter to create a compiled template
- * var compiled = _.template('hello <%= user %>!');
- * compiled({ 'user': 'fred' });
- * // => 'hello fred!'
- *
- * // using the HTML "escape" delimiter to escape data property values
- * var compiled = _.template('<b><%- value %></b>');
- * compiled({ 'value': '<script>' });
- * // => '<b>&lt;script&gt;</b>'
- *
- * // using the "evaluate" delimiter to execute JavaScript and generate HTML
- * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
- * compiled({ 'users': ['fred', 'barney'] });
- * // => '<li>fred</li><li>barney</li>'
- *
- * // using the internal `print` function in "evaluate" delimiters
- * var compiled = _.template('<% print("hello " + user); %>!');
- * compiled({ 'user': 'barney' });
- * // => 'hello barney!'
- *
- * // using the ES delimiter as an alternative to the default "interpolate" delimiter
- * var compiled = _.template('hello ${ user }!');
- * compiled({ 'user': 'pebbles' });
- * // => 'hello pebbles!'
- *
- * // using custom template delimiters
- * _.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
- * var compiled = _.template('hello {{ user }}!');
- * compiled({ 'user': 'mustache' });
- * // => 'hello mustache!'
- *
- * // using backslashes to treat delimiters as plain text
- * var compiled = _.template('<%= "\\<%- value %\\>" %>');
- * compiled({ 'value': 'ignored' });
- * // => '<%- value %>'
- *
- * // using the `imports` option to import `jQuery` as `jq`
- * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
- * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
- * compiled({ 'users': ['fred', 'barney'] });
- * // => '<li>fred</li><li>barney</li>'
- *
- * // using the `sourceURL` option to specify a custom sourceURL for the template
- * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
- * compiled(data);
- * // => find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector
- *
- * // using the `variable` option to ensure a with-statement isn't used in the compiled template
- * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
- * compiled.source;
- * // => function(data) {
- * //   var __t, __p = '';
- * //   __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
- * //   return __p;
- * // }
- *
- * // using the `source` property to inline compiled templates for meaningful
- * // line numbers in error messages and a stack trace
- * fs.writeFileSync(path.join(cwd, 'jst.js'), '\
- *   var JST = {\
- *     "main": ' + _.template(mainText).source + '\
- *   };\
- * ');
- */
-function template(string, options, otherOptions) {
-  // Based on John Resig's `tmpl` implementation (http://ejohn.org/blog/javascript-micro-templating/)
-  // and Laura Doktorova's doT.js (https://github.com/olado/doT).
-  var settings = templateSettings.imports._.templateSettings || templateSettings;
-
-  if (otherOptions && isIterateeCall(string, options, otherOptions)) {
-    options = otherOptions = null;
-  }
-  string = baseToString(string);
-  options = assignWith(baseAssign({}, otherOptions || options), settings, assignOwnDefaults);
-
-  var imports = assignWith(baseAssign({}, options.imports), settings.imports, assignOwnDefaults),
-      importsKeys = keys(imports),
-      importsValues = baseValues(imports, importsKeys);
-
-  var isEscaping,
-      isEvaluating,
-      index = 0,
-      interpolate = options.interpolate || reNoMatch,
-      source = "__p += '";
-
-  // Compile the regexp to match each delimiter.
-  var reDelimiters = RegExp(
-    (options.escape || reNoMatch).source + '|' +
-    interpolate.source + '|' +
-    (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
-    (options.evaluate || reNoMatch).source + '|$'
-  , 'g');
-
-  // Use a sourceURL for easier debugging.
-  var sourceURL = 'sourceURL' in options ? '//# sourceURL=' + options.sourceURL + '\n' : '';
-
-  string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
-    interpolateValue || (interpolateValue = esTemplateValue);
-
-    // Escape characters that can't be included in string literals.
-    source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
-
-    // Replace delimiters with snippets.
-    if (escapeValue) {
-      isEscaping = true;
-      source += "' +\n__e(" + escapeValue + ") +\n'";
-    }
-    if (evaluateValue) {
-      isEvaluating = true;
-      source += "';\n" + evaluateValue + ";\n__p += '";
-    }
-    if (interpolateValue) {
-      source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
-    }
-    index = offset + match.length;
-
-    // The JS engine embedded in Adobe products requires returning the `match`
-    // string in order to produce the correct `offset` value.
-    return match;
-  });
-
-  source += "';\n";
-
-  // If `variable` is not specified wrap a with-statement around the generated
-  // code to add the data object to the top of the scope chain.
-  var variable = options.variable;
-  if (!variable) {
-    source = 'with (obj) {\n' + source + '\n}\n';
-  }
-  // Cleanup code by stripping empty strings.
-  source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
-    .replace(reEmptyStringMiddle, '$1')
-    .replace(reEmptyStringTrailing, '$1;');
-
-  // Frame code as the function body.
-  source = 'function(' + (variable || 'obj') + ') {\n' +
-    (variable
-      ? ''
-      : 'obj || (obj = {});\n'
-    ) +
-    "var __t, __p = ''" +
-    (isEscaping
-       ? ', __e = _.escape'
-       : ''
-    ) +
-    (isEvaluating
-      ? ', __j = Array.prototype.join;\n' +
-        "function print() { __p += __j.call(arguments, '') }\n"
-      : ';\n'
-    ) +
-    source +
-    'return __p\n}';
-
-  var result = attempt(function() {
-    return Function(importsKeys, sourceURL + 'return ' + source).apply(undefined, importsValues);
-  });
-
-  // Provide the compiled function's source by its `toString` method or
-  // the `source` property as a convenience for inlining compiled templates.
-  result.source = source;
-  if (isError(result)) {
-    throw result;
-  }
-  return result;
-}
-
-module.exports = template;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/templateSettings.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/templateSettings.js
deleted file mode 100644 (file)
index cdcef9b..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-var escape = require('./escape'),
-    reEscape = require('../internal/reEscape'),
-    reEvaluate = require('../internal/reEvaluate'),
-    reInterpolate = require('../internal/reInterpolate');
-
-/**
- * By default, the template delimiters used by lodash are like those in
- * embedded Ruby (ERB). Change the following template settings to use
- * alternative delimiters.
- *
- * @static
- * @memberOf _
- * @type Object
- */
-var templateSettings = {
-
-  /**
-   * Used to detect `data` property values to be HTML-escaped.
-   *
-   * @memberOf _.templateSettings
-   * @type RegExp
-   */
-  'escape': reEscape,
-
-  /**
-   * Used to detect code to be evaluated.
-   *
-   * @memberOf _.templateSettings
-   * @type RegExp
-   */
-  'evaluate': reEvaluate,
-
-  /**
-   * Used to detect `data` property values to inject.
-   *
-   * @memberOf _.templateSettings
-   * @type RegExp
-   */
-  'interpolate': reInterpolate,
-
-  /**
-   * Used to reference the data object in the template text.
-   *
-   * @memberOf _.templateSettings
-   * @type string
-   */
-  'variable': '',
-
-  /**
-   * Used to import variables into the compiled template.
-   *
-   * @memberOf _.templateSettings
-   * @type Object
-   */
-  'imports': {
-
-    /**
-     * A reference to the `lodash` function.
-     *
-     * @memberOf _.templateSettings.imports
-     * @type Function
-     */
-    '_': { 'escape': escape }
-  }
-};
-
-module.exports = templateSettings;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trim.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trim.js
deleted file mode 100644 (file)
index 22cd38a..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    charsLeftIndex = require('../internal/charsLeftIndex'),
-    charsRightIndex = require('../internal/charsRightIndex'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    trimmedLeftIndex = require('../internal/trimmedLeftIndex'),
-    trimmedRightIndex = require('../internal/trimmedRightIndex');
-
-/**
- * Removes leading and trailing whitespace or specified characters from `string`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to trim.
- * @param {string} [chars=whitespace] The characters to trim.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {string} Returns the trimmed string.
- * @example
- *
- * _.trim('  abc  ');
- * // => 'abc'
- *
- * _.trim('-_-abc-_-', '_-');
- * // => 'abc'
- *
- * _.map(['  foo  ', '  bar  '], _.trim);
- * // => ['foo', 'bar']
- */
-function trim(string, chars, guard) {
-  var value = string;
-  string = baseToString(string);
-  if (!string) {
-    return string;
-  }
-  if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-    return string.slice(trimmedLeftIndex(string), trimmedRightIndex(string) + 1);
-  }
-  chars = (chars + '');
-  return string.slice(charsLeftIndex(string, chars), charsRightIndex(string, chars) + 1);
-}
-
-module.exports = trim;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimLeft.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimLeft.js
deleted file mode 100644 (file)
index 2929967..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    charsLeftIndex = require('../internal/charsLeftIndex'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    trimmedLeftIndex = require('../internal/trimmedLeftIndex');
-
-/**
- * Removes leading whitespace or specified characters from `string`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to trim.
- * @param {string} [chars=whitespace] The characters to trim.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {string} Returns the trimmed string.
- * @example
- *
- * _.trimLeft('  abc  ');
- * // => 'abc  '
- *
- * _.trimLeft('-_-abc-_-', '_-');
- * // => 'abc-_-'
- */
-function trimLeft(string, chars, guard) {
-  var value = string;
-  string = baseToString(string);
-  if (!string) {
-    return string;
-  }
-  if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-    return string.slice(trimmedLeftIndex(string));
-  }
-  return string.slice(charsLeftIndex(string, (chars + '')));
-}
-
-module.exports = trimLeft;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimRight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trimRight.js
deleted file mode 100644 (file)
index 0f9be71..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    charsRightIndex = require('../internal/charsRightIndex'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    trimmedRightIndex = require('../internal/trimmedRightIndex');
-
-/**
- * Removes trailing whitespace or specified characters from `string`.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to trim.
- * @param {string} [chars=whitespace] The characters to trim.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {string} Returns the trimmed string.
- * @example
- *
- * _.trimRight('  abc  ');
- * // => '  abc'
- *
- * _.trimRight('-_-abc-_-', '_-');
- * // => '-_-abc'
- */
-function trimRight(string, chars, guard) {
-  var value = string;
-  string = baseToString(string);
-  if (!string) {
-    return string;
-  }
-  if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
-    return string.slice(0, trimmedRightIndex(string) + 1);
-  }
-  return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
-}
-
-module.exports = trimRight;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trunc.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/trunc.js
deleted file mode 100644 (file)
index b8e6117..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    isIterateeCall = require('../internal/isIterateeCall'),
-    isObject = require('../lang/isObject'),
-    isRegExp = require('../lang/isRegExp');
-
-/** Used as default options for `_.trunc`. */
-var DEFAULT_TRUNC_LENGTH = 30,
-    DEFAULT_TRUNC_OMISSION = '...';
-
-/** Used to match `RegExp` flags from their coerced string values. */
-var reFlags = /\w*$/;
-
-/**
- * Truncates `string` if it is longer than the given maximum string length.
- * The last characters of the truncated string are replaced with the omission
- * string which defaults to "...".
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to truncate.
- * @param {Object|number} [options] The options object or maximum string length.
- * @param {number} [options.length=30] The maximum string length.
- * @param {string} [options.omission='...'] The string to indicate text is omitted.
- * @param {RegExp|string} [options.separator] The separator pattern to truncate to.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {string} Returns the truncated string.
- * @example
- *
- * _.trunc('hi-diddly-ho there, neighborino');
- * // => 'hi-diddly-ho there, neighbo...'
- *
- * _.trunc('hi-diddly-ho there, neighborino', 24);
- * // => 'hi-diddly-ho there, n...'
- *
- * _.trunc('hi-diddly-ho there, neighborino', {
- *   'length': 24,
- *   'separator': ' '
- * });
- * // => 'hi-diddly-ho there,...'
- *
- * _.trunc('hi-diddly-ho there, neighborino', {
- *   'length': 24,
- *   'separator': /,? +/
- * });
- * // => 'hi-diddly-ho there...'
- *
- * _.trunc('hi-diddly-ho there, neighborino', {
- *   'omission': ' [...]'
- * });
- * // => 'hi-diddly-ho there, neig [...]'
- */
-function trunc(string, options, guard) {
-  if (guard && isIterateeCall(string, options, guard)) {
-    options = null;
-  }
-  var length = DEFAULT_TRUNC_LENGTH,
-      omission = DEFAULT_TRUNC_OMISSION;
-
-  if (options != null) {
-    if (isObject(options)) {
-      var separator = 'separator' in options ? options.separator : separator;
-      length = 'length' in options ? (+options.length || 0) : length;
-      omission = 'omission' in options ? baseToString(options.omission) : omission;
-    } else {
-      length = +options || 0;
-    }
-  }
-  string = baseToString(string);
-  if (length >= string.length) {
-    return string;
-  }
-  var end = length - omission.length;
-  if (end < 1) {
-    return omission;
-  }
-  var result = string.slice(0, end);
-  if (separator == null) {
-    return result + omission;
-  }
-  if (isRegExp(separator)) {
-    if (string.slice(end).search(separator)) {
-      var match,
-          newEnd,
-          substring = string.slice(0, end);
-
-      if (!separator.global) {
-        separator = RegExp(separator.source, (reFlags.exec(separator) || '') + 'g');
-      }
-      separator.lastIndex = 0;
-      while ((match = separator.exec(substring))) {
-        newEnd = match.index;
-      }
-      result = result.slice(0, newEnd == null ? end : newEnd);
-    }
-  } else if (string.indexOf(separator, end) != end) {
-    var index = result.lastIndexOf(separator);
-    if (index > -1) {
-      result = result.slice(0, index);
-    }
-  }
-  return result + omission;
-}
-
-module.exports = trunc;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/unescape.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/unescape.js
deleted file mode 100644 (file)
index b0266a7..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    unescapeHtmlChar = require('../internal/unescapeHtmlChar');
-
-/** Used to match HTML entities and HTML characters. */
-var reEscapedHtml = /&(?:amp|lt|gt|quot|#39|#96);/g,
-    reHasEscapedHtml = RegExp(reEscapedHtml.source);
-
-/**
- * The inverse of `_.escape`; this method converts the HTML entities
- * `&amp;`, `&lt;`, `&gt;`, `&quot;`, `&#39;`, and `&#96;` in `string` to their
- * corresponding characters.
- *
- * **Note:** No other HTML entities are unescaped. To unescape additional HTML
- * entities use a third-party library like [_he_](https://mths.be/he).
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to unescape.
- * @returns {string} Returns the unescaped string.
- * @example
- *
- * _.unescape('fred, barney, &amp; pebbles');
- * // => 'fred, barney, & pebbles'
- */
-function unescape(string) {
-  string = baseToString(string);
-  return (string && reHasEscapedHtml.test(string))
-    ? string.replace(reEscapedHtml, unescapeHtmlChar)
-    : string;
-}
-
-module.exports = unescape;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/words.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/string/words.js
deleted file mode 100644 (file)
index 364e971..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var baseToString = require('../internal/baseToString'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/** Used to match words to create compound words. */
-var reWords = (function() {
-  var upper = '[A-Z\\xc0-\\xd6\\xd8-\\xde]',
-      lower = '[a-z\\xdf-\\xf6\\xf8-\\xff]+';
-
-  return RegExp(upper + '+(?=' + upper + lower + ')|' + upper + '?' + lower + '|' + upper + '+|[0-9]+', 'g');
-}());
-
-/**
- * Splits `string` into an array of its words.
- *
- * @static
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to inspect.
- * @param {RegExp|string} [pattern] The pattern to match words.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Array} Returns the words of `string`.
- * @example
- *
- * _.words('fred, barney, & pebbles');
- * // => ['fred', 'barney', 'pebbles']
- *
- * _.words('fred, barney, & pebbles', /[^, ]+/g);
- * // => ['fred', 'barney', '&', 'pebbles']
- */
-function words(string, pattern, guard) {
-  if (guard && isIterateeCall(string, pattern, guard)) {
-    pattern = null;
-  }
-  string = baseToString(string);
-  return string.match(pattern || reWords) || [];
-}
-
-module.exports = words;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/support.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/support.js
deleted file mode 100644 (file)
index 6db6adb..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-/** Used for native method references. */
-var objectProto = Object.prototype;
-
-/** Used to detect DOM support. */
-var document = (document = global.window) && document.document;
-
-/** Native method references. */
-var propertyIsEnumerable = objectProto.propertyIsEnumerable;
-
-/**
- * An object environment feature flags.
- *
- * @static
- * @memberOf _
- * @type Object
- */
-var support = {};
-
-(function(x) {
-  var Ctor = function() { this.x = x; },
-      object = { '0': x, 'length': x },
-      props = [];
-
-  Ctor.prototype = { 'valueOf': x, 'y': x };
-  for (var key in new Ctor) { props.push(key); }
-
-  /**
-   * Detect if functions can be decompiled by `Function#toString`
-   * (all but Firefox OS certified apps, older Opera mobile browsers, and
-   * the PlayStation 3; forced `false` for Windows 8 apps).
-   *
-   * @memberOf _.support
-   * @type boolean
-   */
-  support.funcDecomp = /\bthis\b/.test(function() { return this; });
-
-  /**
-   * Detect if `Function#name` is supported (all but IE).
-   *
-   * @memberOf _.support
-   * @type boolean
-   */
-  support.funcNames = typeof Function.name == 'string';
-
-  /**
-   * Detect if the DOM is supported.
-   *
-   * @memberOf _.support
-   * @type boolean
-   */
-  try {
-    support.dom = document.createDocumentFragment().nodeType === 11;
-  } catch(e) {
-    support.dom = false;
-  }
-
-  /**
-   * Detect if `arguments` object indexes are non-enumerable.
-   *
-   * In Firefox < 4, IE < 9, PhantomJS, and Safari < 5.1 `arguments` object
-   * indexes are non-enumerable. Chrome < 25 and Node.js < 0.11.0 treat
-   * `arguments` object indexes as non-enumerable and fail `hasOwnProperty`
-   * checks for indexes that exceed the number of function parameters and
-   * whose associated argument values are `0`.
-   *
-   * @memberOf _.support
-   * @type boolean
-   */
-  try {
-    support.nonEnumArgs = !propertyIsEnumerable.call(arguments, 1);
-  } catch(e) {
-    support.nonEnumArgs = true;
-  }
-}(1, 0));
-
-module.exports = support;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility.js
deleted file mode 100644 (file)
index 25311fa..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-module.exports = {
-  'attempt': require('./utility/attempt'),
-  'callback': require('./utility/callback'),
-  'constant': require('./utility/constant'),
-  'identity': require('./utility/identity'),
-  'iteratee': require('./utility/iteratee'),
-  'matches': require('./utility/matches'),
-  'matchesProperty': require('./utility/matchesProperty'),
-  'method': require('./utility/method'),
-  'methodOf': require('./utility/methodOf'),
-  'mixin': require('./utility/mixin'),
-  'noop': require('./utility/noop'),
-  'property': require('./utility/property'),
-  'propertyOf': require('./utility/propertyOf'),
-  'range': require('./utility/range'),
-  'times': require('./utility/times'),
-  'uniqueId': require('./utility/uniqueId')
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/attempt.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/attempt.js
deleted file mode 100644 (file)
index 80afe69..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var isError = require('../lang/isError'),
-    restParam = require('../function/restParam');
-
-/**
- * Attempts to invoke `func`, returning either the result or the caught error
- * object. Any additional arguments are provided to `func` when it is invoked.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Function} func The function to attempt.
- * @returns {*} Returns the `func` result or error object.
- * @example
- *
- * // avoid throwing errors for invalid selectors
- * var elements = _.attempt(function(selector) {
- *   return document.querySelectorAll(selector);
- * }, '>_>');
- *
- * if (_.isError(elements)) {
- *   elements = [];
- * }
- */
-var attempt = restParam(function(func, args) {
-  try {
-    return func.apply(undefined, args);
-  } catch(e) {
-    return isError(e) ? e : new Error(e);
-  }
-});
-
-module.exports = attempt;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/callback.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/callback.js
deleted file mode 100644 (file)
index 83d5d88..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var baseCallback = require('../internal/baseCallback'),
-    isIterateeCall = require('../internal/isIterateeCall');
-
-/**
- * Creates a function that invokes `func` with the `this` binding of `thisArg`
- * and arguments of the created function. If `func` is a property name the
- * created callback returns the property value for a given element. If `func`
- * is an object the created callback returns `true` for elements that contain
- * the equivalent object properties, otherwise it returns `false`.
- *
- * @static
- * @memberOf _
- * @alias iteratee
- * @category Utility
- * @param {*} [func=_.identity] The value to convert to a callback.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
- * @returns {Function} Returns the callback.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36 },
- *   { 'user': 'fred',   'age': 40 }
- * ];
- *
- * // wrap to create custom callback shorthands
- * _.callback = _.wrap(_.callback, function(callback, func, thisArg) {
- *   var match = /^(.+?)__([gl]t)(.+)$/.exec(func);
- *   if (!match) {
- *     return callback(func, thisArg);
- *   }
- *   return function(object) {
- *     return match[2] == 'gt'
- *       ? object[match[1]] > match[3]
- *       : object[match[1]] < match[3];
- *   };
- * });
- *
- * _.filter(users, 'age__gt36');
- * // => [{ 'user': 'fred', 'age': 40 }]
- */
-function callback(func, thisArg, guard) {
-  if (guard && isIterateeCall(func, thisArg, guard)) {
-    thisArg = null;
-  }
-  return baseCallback(func, thisArg);
-}
-
-module.exports = callback;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/constant.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/constant.js
deleted file mode 100644 (file)
index 6919b76..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Creates a function that returns `value`.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {*} value The value to return from the new function.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var object = { 'user': 'fred' };
- * var getter = _.constant(object);
- *
- * getter() === object;
- * // => true
- */
-function constant(value) {
-  return function() {
-    return value;
-  };
-}
-
-module.exports = constant;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/identity.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/identity.js
deleted file mode 100644 (file)
index 3a1d1d4..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * This method returns the first argument provided to it.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {*} value Any value.
- * @returns {*} Returns `value`.
- * @example
- *
- * var object = { 'user': 'fred' };
- *
- * _.identity(object) === object;
- * // => true
- */
-function identity(value) {
-  return value;
-}
-
-module.exports = identity;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/iteratee.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/iteratee.js
deleted file mode 100644 (file)
index fcfa202..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./callback');
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matches.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matches.js
deleted file mode 100644 (file)
index 6b14143..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-var baseClone = require('../internal/baseClone'),
-    baseMatches = require('../internal/baseMatches');
-
-/**
- * Creates a function which performs a deep comparison between a given object
- * and `source`, returning `true` if the given object has equivalent property
- * values, else `false`.
- *
- * **Note:** This method supports comparing arrays, booleans, `Date` objects,
- * numbers, `Object` objects, regexes, and strings. Objects are compared by
- * their own, not inherited, enumerable properties. For comparing a single
- * own or inherited property value see `_.matchesProperty`.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Object} source The object of property values to match.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var users = [
- *   { 'user': 'barney', 'age': 36, 'active': true },
- *   { 'user': 'fred',   'age': 40, 'active': false }
- * ];
- *
- * _.filter(users, _.matches({ 'age': 40, 'active': false }));
- * // => [{ 'user': 'fred', 'age': 40, 'active': false }]
- */
-function matches(source) {
-  return baseMatches(baseClone(source, true));
-}
-
-module.exports = matches;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matchesProperty.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/matchesProperty.js
deleted file mode 100644 (file)
index 05a7efb..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var baseClone = require('../internal/baseClone'),
-    baseMatchesProperty = require('../internal/baseMatchesProperty');
-
-/**
- * Creates a function which compares the property value of `path` on a given
- * object to `value`.
- *
- * **Note:** This method supports comparing arrays, booleans, `Date` objects,
- * numbers, `Object` objects, regexes, and strings. Objects are compared by
- * their own, not inherited, enumerable properties.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Array|string} path The path of the property to get.
- * @param {*} value The value to compare.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var users = [
- *   { 'user': 'barney' },
- *   { 'user': 'fred' }
- * ];
- *
- * _.find(users, _.matchesProperty('user', 'fred'));
- * // => { 'user': 'fred' }
- */
-function matchesProperty(path, value) {
-  return baseMatchesProperty(path, baseClone(value, true));
-}
-
-module.exports = matchesProperty;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/method.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/method.js
deleted file mode 100644 (file)
index c3b8cd5..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var invokePath = require('../internal/invokePath'),
-    restParam = require('../function/restParam');
-
-/**
- * Creates a function which invokes the method at `path` on a given object.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Array|string} path The path of the method to invoke.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var objects = [
- *   { 'a': { 'b': { 'c': _.constant(2) } } },
- *   { 'a': { 'b': { 'c': _.constant(1) } } }
- * ];
- *
- * _.map(objects, _.method('a.b.c'));
- * // => [2, 1]
- *
- * _.invoke(_.sortBy(objects, _.method(['a', 'b', 'c'])), 'a.b.c');
- * // => [1, 2]
- */
-var method = restParam(function(path, args) {
-  return function(object) {
-    return invokePath(object, path, args);
-  }
-});
-
-module.exports = method;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/methodOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/methodOf.js
deleted file mode 100644 (file)
index 9286cc2..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var invokePath = require('../internal/invokePath'),
-    restParam = require('../function/restParam');
-
-/**
- * The opposite of `_.method`; this method creates a function which invokes
- * the method at a given path on `object`.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Object} object The object to query.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var array = _.times(3, _.constant),
- *     object = { 'a': array, 'b': array, 'c': array };
- *
- * _.map(['a[2]', 'c[0]'], _.methodOf(object));
- * // => [2, 0]
- *
- * _.map([['a', '2'], ['c', '0']], _.methodOf(object));
- * // => [2, 0]
- */
-var methodOf = restParam(function(object, args) {
-  return function(path) {
-    return invokePath(object, path, args);
-  };
-});
-
-module.exports = methodOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/mixin.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/mixin.js
deleted file mode 100644 (file)
index 926042b..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-var arrayCopy = require('../internal/arrayCopy'),
-    baseFunctions = require('../internal/baseFunctions'),
-    isFunction = require('../lang/isFunction'),
-    isObject = require('../lang/isObject'),
-    keys = require('../object/keys');
-
-/** Used for native method references. */
-var arrayProto = Array.prototype;
-
-/** Native method references. */
-var push = arrayProto.push;
-
-/**
- * Adds all own enumerable function properties of a source object to the
- * destination object. If `object` is a function then methods are added to
- * its prototype as well.
- *
- * **Note:** Use `_.runInContext` to create a pristine `lodash` function to
- * avoid conflicts caused by modifying the original.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Function|Object} [object=lodash] The destination object.
- * @param {Object} source The object of functions to add.
- * @param {Object} [options] The options object.
- * @param {boolean} [options.chain=true] Specify whether the functions added
- *  are chainable.
- * @returns {Function|Object} Returns `object`.
- * @example
- *
- * function vowels(string) {
- *   return _.filter(string, function(v) {
- *     return /[aeiou]/i.test(v);
- *   });
- * }
- *
- * // use `_.runInContext` to avoid conflicts (esp. in Node.js)
- * var _ = require('lodash').runInContext();
- *
- * _.mixin({ 'vowels': vowels });
- * _.vowels('fred');
- * // => ['e']
- *
- * _('fred').vowels().value();
- * // => ['e']
- *
- * _.mixin({ 'vowels': vowels }, { 'chain': false });
- * _('fred').vowels();
- * // => ['e']
- */
-function mixin(object, source, options) {
-  var methodNames = baseFunctions(source, keys(source));
-
-  var chain = true,
-      index = -1,
-      isFunc = isFunction(object),
-      length = methodNames.length;
-
-  if (options === false) {
-    chain = false;
-  } else if (isObject(options) && 'chain' in options) {
-    chain = options.chain;
-  }
-  while (++index < length) {
-    var methodName = methodNames[index],
-        func = source[methodName];
-
-    object[methodName] = func;
-    if (isFunc) {
-      object.prototype[methodName] = (function(func) {
-        return function() {
-          var chainAll = this.__chain__;
-          if (chain || chainAll) {
-            var result = object(this.__wrapped__),
-                actions = result.__actions__ = arrayCopy(this.__actions__);
-
-            actions.push({ 'func': func, 'args': arguments, 'thisArg': object });
-            result.__chain__ = chainAll;
-            return result;
-          }
-          var args = [this.value()];
-          push.apply(args, arguments);
-          return func.apply(object, args);
-        };
-      }(func));
-    }
-  }
-  return object;
-}
-
-module.exports = mixin;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/noop.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/noop.js
deleted file mode 100644 (file)
index 344adea..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * A no-operation function which returns `undefined` regardless of the
- * arguments it receives.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @example
- *
- * var object = { 'user': 'fred' };
- *
- * _.noop(object) === undefined;
- * // => true
- */
-function noop() {
-  // No operation performed.
-}
-
-module.exports = noop;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/property.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/property.js
deleted file mode 100644 (file)
index e149f6d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var baseProperty = require('../internal/baseProperty'),
-    basePropertyDeep = require('../internal/basePropertyDeep'),
-    isKey = require('../internal/isKey');
-
-/**
- * Creates a function which returns the property value at `path` on a
- * given object.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Array|string} path The path of the property to get.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var objects = [
- *   { 'a': { 'b': { 'c': 2 } } },
- *   { 'a': { 'b': { 'c': 1 } } }
- * ];
- *
- * _.map(objects, _.property('a.b.c'));
- * // => [2, 1]
- *
- * _.pluck(_.sortBy(objects, _.property(['a', 'b', 'c'])), 'a.b.c');
- * // => [1, 2]
- */
-function property(path) {
-  return isKey(path) ? baseProperty(path) : basePropertyDeep(path);
-}
-
-module.exports = property;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/propertyOf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/propertyOf.js
deleted file mode 100644 (file)
index a3b9c27..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var baseGet = require('../internal/baseGet'),
-    toPath = require('../internal/toPath');
-
-/**
- * The opposite of `_.property`; this method creates a function which returns
- * the property value at a given path on `object`.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {Object} object The object to query.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var array = [0, 1, 2],
- *     object = { 'a': array, 'b': array, 'c': array };
- *
- * _.map(['a[2]', 'c[0]'], _.propertyOf(object));
- * // => [2, 0]
- *
- * _.map([['a', '2'], ['c', '0']], _.propertyOf(object));
- * // => [2, 0]
- */
-function propertyOf(object) {
-  return function(path) {
-    return baseGet(object, toPath(path), path + '');
-  };
-}
-
-module.exports = propertyOf;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/range.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/range.js
deleted file mode 100644 (file)
index fad70a4..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-var isIterateeCall = require('../internal/isIterateeCall');
-
-/** Native method references. */
-var ceil = Math.ceil;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates an array of numbers (positive and/or negative) progressing from
- * `start` up to, but not including, `end`. If `end` is not specified it is
- * set to `start` with `start` then set to `0`. If `end` is less than `start`
- * a zero-length range is created unless a negative `step` is specified.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {number} [start=0] The start of the range.
- * @param {number} end The end of the range.
- * @param {number} [step=1] The value to increment or decrement by.
- * @returns {Array} Returns the new array of numbers.
- * @example
- *
- * _.range(4);
- * // => [0, 1, 2, 3]
- *
- * _.range(1, 5);
- * // => [1, 2, 3, 4]
- *
- * _.range(0, 20, 5);
- * // => [0, 5, 10, 15]
- *
- * _.range(0, -4, -1);
- * // => [0, -1, -2, -3]
- *
- * _.range(1, 4, 0);
- * // => [1, 1, 1]
- *
- * _.range(0);
- * // => []
- */
-function range(start, end, step) {
-  if (step && isIterateeCall(start, end, step)) {
-    end = step = null;
-  }
-  start = +start || 0;
-  step = step == null ? 1 : (+step || 0);
-
-  if (end == null) {
-    end = start;
-    start = 0;
-  } else {
-    end = +end || 0;
-  }
-  // Use `Array(length)` so engines like Chakra and V8 avoid slower modes.
-  // See https://youtu.be/XAqIpGU8ZZk#t=17m25s for more details.
-  var index = -1,
-      length = nativeMax(ceil((end - start) / (step || 1)), 0),
-      result = Array(length);
-
-  while (++index < length) {
-    result[index] = start;
-    start += step;
-  }
-  return result;
-}
-
-module.exports = range;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/times.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/times.js
deleted file mode 100644 (file)
index 28e6f02..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-var bindCallback = require('../internal/bindCallback');
-
-/** Native method references. */
-var floor = Math.floor;
-
-/* Native method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = global.isFinite,
-    nativeMin = Math.min;
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = Math.pow(2, 32) - 1;
-
-/**
- * Invokes the iteratee function `n` times, returning an array of the results
- * of each invocation. The `iteratee` is bound to `thisArg` and invoked with
- * one argument; (index).
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {number} n The number of times to invoke `iteratee`.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [thisArg] The `this` binding of `iteratee`.
- * @returns {Array} Returns the array of results.
- * @example
- *
- * var diceRolls = _.times(3, _.partial(_.random, 1, 6, false));
- * // => [3, 6, 4]
- *
- * _.times(3, function(n) {
- *   mage.castSpell(n);
- * });
- * // => invokes `mage.castSpell(n)` three times with `n` of `0`, `1`, and `2`
- *
- * _.times(3, function(n) {
- *   this.cast(n);
- * }, mage);
- * // => also invokes `mage.castSpell(n)` three times
- */
-function times(n, iteratee, thisArg) {
-  n = floor(n);
-
-  // Exit early to avoid a JSC JIT bug in Safari 8
-  // where `Array(0)` is treated as `Array(1)`.
-  if (n < 1 || !nativeIsFinite(n)) {
-    return [];
-  }
-  var index = -1,
-      result = Array(nativeMin(n, MAX_ARRAY_LENGTH));
-
-  iteratee = bindCallback(iteratee, thisArg, 1);
-  while (++index < n) {
-    if (index < MAX_ARRAY_LENGTH) {
-      result[index] = iteratee(index);
-    } else {
-      iteratee(index);
-    }
-  }
-  return result;
-}
-
-module.exports = times;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/uniqueId.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/utility/uniqueId.js
deleted file mode 100644 (file)
index 88e02bf..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var baseToString = require('../internal/baseToString');
-
-/** Used to generate unique IDs. */
-var idCounter = 0;
-
-/**
- * Generates a unique ID. If `prefix` is provided the ID is appended to it.
- *
- * @static
- * @memberOf _
- * @category Utility
- * @param {string} [prefix] The value to prefix the ID with.
- * @returns {string} Returns the unique ID.
- * @example
- *
- * _.uniqueId('contact_');
- * // => 'contact_104'
- *
- * _.uniqueId();
- * // => '105'
- */
-function uniqueId(prefix) {
-  var id = ++idCounter;
-  return baseToString(prefix) + id;
-}
-
-module.exports = uniqueId;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/.npmignore
deleted file mode 100644 (file)
index 096746c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-/node_modules/
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/LICENSE
deleted file mode 100644 (file)
index 5c74c82..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Copyright (c) 2007-2013, Alexandru Marasteanu <hello [at) alexei (dot] ro>
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-* Redistributions of source code must retain the above copyright
-  notice, this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright
-  notice, this list of conditions and the following disclaimer in the
-  documentation and/or other materials provided with the distribution.
-* Neither the name of this software nor the names of its contributors may be
-  used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/README.md
deleted file mode 100644 (file)
index d4c7203..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-# sprintf.js
-**sprintf.js** is a complete open source JavaScript sprintf implementation for the *browser* and *node.js*.
-
-Its prototype is simple:
-
-    string sprintf(string format , [mixed arg1 [, mixed arg2 [ ,...]]])
-
-The placeholders in the format string are marked by `%` and are followed by one or more of these elements, in this order:
-
-* An optional number followed by a `$` sign that selects which argument index to use for the value. If not specified, arguments will be placed in the same order as the placeholders in the input string.
-* An optional `+` sign that forces to preceed the result with a plus or minus sign on numeric values. By default, only the `-` sign is used on negative numbers.
-* An optional padding specifier that says what character to use for padding (if specified). Possible values are `0` or any other character precedeed by a `'` (single quote). The default is to pad with *spaces*.
-* An optional `-` sign, that causes sprintf to left-align the result of this placeholder. The default is to right-align the result.
-* An optional number, that says how many characters the result should have. If the value to be returned is shorter than this number, the result will be padded.
-* An optional precision modifier, consisting of a `.` (dot) followed by a number, that says how many digits should be displayed for floating point numbers. When used on a string, it causes the result to be truncated.
-* A type specifier that can be any of:
-    * `%` — yields a literal `%` character
-    * `b` — yields an integer as a binary number
-    * `c` — yields an integer as the character with that ASCII value
-    * `d` or `i` — yields an integer as a signed decimal number
-    * `e` — yields a float using scientific notation
-    * `u` — yields an integer as an unsigned decimal number
-    * `f` — yields a float as is
-    * `o` — yields an integer as an octal number
-    * `s` — yields a string as is
-    * `x` — yields an integer as a hexadecimal number (lower-case)
-    * `X` — yields an integer as a hexadecimal number (upper-case)
-
-## JavaScript `vsprintf`
-`vsprintf` is the same as `sprintf` except that it accepts an array of arguments, rather than a variable number of arguments:
-
-    vsprintf("The first 4 letters of the english alphabet are: %s, %s, %s and %s", ["a", "b", "c", "d"])
-
-## Argument swapping
-You can also swap the arguments. That is, the order of the placeholders doesn't have to match the order of the arguments. You can do that by simply indicating in the format string which arguments the placeholders refer to:
-
-    sprintf("%2$s %3$s a %1$s", "cracker", "Polly", "wants")
-And, of course, you can repeat the placeholders without having to increase the number of arguments.
-
-## Named arguments
-Format strings may contain replacement fields rather than positional placeholders. Instead of referring to a certain argument, you can now refer to a certain key within an object. Replacement fields are surrounded by rounded parentheses - `(` and `)` - and begin with a keyword that refers to a key:
-
-    var user = {
-        name: "Dolly"
-    }
-    sprintf("Hello %(name)s", user) // Hello Dolly
-Keywords in replacement fields can be optionally followed by any number of keywords or indexes:
-
-    var users = [
-        {name: "Dolly"},
-        {name: "Molly"},
-        {name: "Polly"}
-    ]
-    sprintf("Hello %(users[0].name)s, %(users[1].name)s and %(users[2].name)s", {users: users}) // Hello Dolly, Molly and Polly
-Note: mixing positional and named placeholders is not (yet) supported
-
-## Computed values
-You can pass in a function as a dynamic value and it will be invoked (with no arguments) in order to compute the value on-the-fly.
-
-    sprintf("Current timestamp: %d", Date.now) // Current timestamp: 1398005382890
-    sprintf("Current date and time: %s", function() { return new Date().toString() })
-
-# AngularJS
-You can now use `sprintf` and `vsprintf` (also aliased as `fmt` and `vfmt` respectively) in your AngularJS projects. See `demo/`.
-
-# Installation
-
-## Via Bower
-
-    bower install sprintf
-
-## Or as a node.js module
-
-    npm install sprintf-js
-
-### Usage
-
-    var sprintf = require("sprintf-js").sprintf,
-        vsprintf = require("sprintf-js").vsprintf
-
-    sprintf("%2$s %3$s a %1$s", "cracker", "Polly", "wants")
-    vsprintf("The first 4 letters of the english alphabet are: %s, %s, %s and %s", ["a", "b", "c", "d"])
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/bower.json
deleted file mode 100644 (file)
index ecdf6d5..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "name": "sprintf",
-  "description": "JavaScript sprintf implementation",
-  "version": "1.0.2",
-  "main": "src/sprintf.js",
-  "license": "BSD-3-Clause-Clear",
-  "keywords": ["sprintf", "string", "formatting"],
-  "authors": ["Alexandru Marasteanu <hello@alexei.ro> (http://alexei.ro/)"],
-  "homepage": "https://github.com/alexei/sprintf.js",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/alexei/sprintf.js.git"
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/demo/angular.html b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/demo/angular.html
deleted file mode 100644 (file)
index 3559efd..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html>
-<html ng-app="app">
-<head>
-    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.3/angular.min.js"></script>
-    <script src="../src/sprintf.js"></script>
-    <script src="../src/angular-sprintf.js"></script>
-</head>
-<body>
-    <pre>{{ "%+010d"|sprintf:-123 }}</pre>
-    <pre>{{ "%+010d"|vsprintf:[-123] }}</pre>
-    <pre>{{ "%+010d"|fmt:-123 }}</pre>
-    <pre>{{ "%+010d"|vfmt:[-123] }}</pre>
-    <pre>{{ "I've got %2$d apples and %1$d oranges."|fmt:4:2 }}</pre>
-    <pre>{{ "I've got %(apples)d apples and %(oranges)d oranges."|fmt:{apples: 2, oranges: 4} }}</pre>
-
-    <script>
-        angular.module("app", ["sprintf"])
-    </script>
-</body>
-</html>
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.js
deleted file mode 100644 (file)
index dbaf744..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! sprintf-js | Alexandru Marasteanu <hello@alexei.ro> (http://alexei.ro/) | BSD-3-Clause */
-
-angular.module("sprintf",[]).filter("sprintf",function(){return function(){return sprintf.apply(null,arguments)}}).filter("fmt",["$filter",function(a){return a("sprintf")}]).filter("vsprintf",function(){return function(a,b){return vsprintf(a,b)}}).filter("vfmt",["$filter",function(a){return a("vsprintf")}]);
-//# sourceMappingURL=angular-sprintf.min.map
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.map b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/angular-sprintf.min.map
deleted file mode 100644 (file)
index 055964c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"angular-sprintf.min.js","sources":["../src/angular-sprintf.js"],"names":["angular","module","filter","sprintf","apply","arguments","$filter","format","argv","vsprintf"],"mappings":";;AAAAA,QACIC,OAAO,cACPC,OAAO,UAAW,WACd,MAAO,YACH,MAAOC,SAAQC,MAAM,KAAMC,cAGnCH,OAAO,OAAQ,UAAW,SAASI,GAC/B,MAAOA,GAAQ,cAEnBJ,OAAO,WAAY,WACf,MAAO,UAASK,EAAQC,GACpB,MAAOC,UAASF,EAAQC,MAGhCN,OAAO,QAAS,UAAW,SAASI,GAChC,MAAOA,GAAQ"}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.js
deleted file mode 100644 (file)
index d5bcd09..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! sprintf-js | Alexandru Marasteanu <hello@alexei.ro> (http://alexei.ro/) | BSD-3-Clause */
-
-!function(a){function b(){var a=arguments[0],c=b.cache;return c[a]&&c.hasOwnProperty(a)||(c[a]=b.parse(a)),b.format.call(null,c[a],arguments)}function c(a){return Object.prototype.toString.call(a).slice(8,-1).toLowerCase()}function d(a,b){return Array(b+1).join(a)}var e={not_string:/[^s]/,number:/[dief]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fiosuxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[\+\-]/};b.format=function(a,f){var g,h,i,j,k,l,m,n=1,o=a.length,p="",q=[],r=!0,s="";for(h=0;o>h;h++)if(p=c(a[h]),"string"===p)q[q.length]=a[h];else if("array"===p){if(j=a[h],j[2])for(g=f[n],i=0;i<j[2].length;i++){if(!g.hasOwnProperty(j[2][i]))throw new Error(b("[sprintf] property '%s' does not exist",j[2][i]));g=g[j[2][i]]}else g=j[1]?f[j[1]]:f[n++];if("function"==c(g)&&(g=g()),e.not_string.test(j[8])&&"number"!=c(g)&&isNaN(g))throw new TypeError(b("[sprintf] expecting number but found %s",c(g)));switch(e.number.test(j[8])&&(r=g>=0),j[8]){case"b":g=g.toString(2);break;case"c":g=String.fromCharCode(g);break;case"d":case"i":g=parseInt(g,10);break;case"e":g=j[7]?g.toExponential(j[7]):g.toExponential();break;case"f":g=j[7]?parseFloat(g).toFixed(j[7]):parseFloat(g);break;case"o":g=g.toString(8);break;case"s":g=(g=String(g))&&j[7]?g.substring(0,j[7]):g;break;case"u":g>>>=0;break;case"x":g=g.toString(16);break;case"X":g=g.toString(16).toUpperCase()}!e.number.test(j[8])||r&&!j[3]?s="":(s=r?"+":"-",g=g.toString().replace(e.sign,"")),l=j[4]?"0"===j[4]?"0":j[4].charAt(1):" ",m=j[6]-(s+g).length,k=j[6]&&m>0?d(l,m):"",q[q.length]=j[5]?s+g+k:"0"===l?s+k+g:k+s+g}return q.join("")},b.cache={},b.parse=function(a){for(var b=a,c=[],d=[],f=0;b;){if(null!==(c=e.text.exec(b)))d[d.length]=c[0];else if(null!==(c=e.modulo.exec(b)))d[d.length]="%";else{if(null===(c=e.placeholder.exec(b)))throw new SyntaxError("[sprintf] unexpected placeholder");if(c[2]){f|=1;var g=[],h=c[2],i=[];if(null===(i=e.key.exec(h)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(g[g.length]=i[1];""!==(h=h.substring(i[0].length));)if(null!==(i=e.key_access.exec(h)))g[g.length]=i[1];else{if(null===(i=e.index_access.exec(h)))throw new SyntaxError("[sprintf] failed to parse named argument key");g[g.length]=i[1]}c[2]=g}else f|=2;if(3===f)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");d[d.length]=c}b=b.substring(c[0].length)}return d};var f=function(a,c,d){return d=(c||[]).slice(0),d.splice(0,0,a),b.apply(null,d)};"undefined"!=typeof exports?(exports.sprintf=b,exports.vsprintf=f):(a.sprintf=b,a.vsprintf=f,"function"==typeof define&&define.amd&&define(function(){return{sprintf:b,vsprintf:f}}))}("undefined"==typeof window?this:window);
-//# sourceMappingURL=sprintf.min.map
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.map b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/dist/sprintf.min.map
deleted file mode 100644 (file)
index 33fe163..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"sprintf.min.js","sources":["../src/sprintf.js"],"names":["window","sprintf","key","arguments","cache","hasOwnProperty","parse","format","call","get_type","variable","Object","prototype","toString","slice","toLowerCase","str_repeat","input","multiplier","Array","join","re","not_string","number","text","modulo","placeholder","key_access","index_access","sign","parse_tree","argv","arg","i","k","match","pad","pad_character","pad_length","cursor","tree_length","length","node_type","output","is_positive","Error","test","isNaN","TypeError","String","fromCharCode","parseInt","toExponential","parseFloat","toFixed","substring","toUpperCase","replace","charAt","fmt","_fmt","arg_names","exec","SyntaxError","field_list","replacement_field","field_match","vsprintf","_argv","splice","apply","exports","define","amd","this"],"mappings":";;CAAA,SAAUA,GAaN,QAASC,KACL,GAAIC,GAAMC,UAAU,GAAIC,EAAQH,EAAQG,KAIxC,OAHMA,GAAMF,IAAQE,EAAMC,eAAeH,KACrCE,EAAMF,GAAOD,EAAQK,MAAMJ,IAExBD,EAAQM,OAAOC,KAAK,KAAMJ,EAAMF,GAAMC,WAoJjD,QAASM,GAASC,GACd,MAAOC,QAAOC,UAAUC,SAASL,KAAKE,GAAUI,MAAM,EAAG,IAAIC,cAGjE,QAASC,GAAWC,EAAOC,GACvB,MAAOC,OAAMD,EAAa,GAAGE,KAAKH,GA1KtC,GAAII,IACAC,WAAY,OACZC,OAAQ,SACRC,KAAM,YACNC,OAAQ,WACRC,YAAa,wFACbxB,IAAK,sBACLyB,WAAY,wBACZC,aAAc,aACdC,KAAM,UAWV5B,GAAQM,OAAS,SAASuB,EAAYC,GAClC,GAAiEC,GAAkBC,EAAGC,EAAGC,EAAOC,EAAKC,EAAeC,EAAhHC,EAAS,EAAGC,EAAcV,EAAWW,OAAQC,EAAY,GAASC,KAA0DC,GAAc,EAAMf,EAAO,EAC3J,KAAKI,EAAI,EAAOO,EAAJP,EAAiBA,IAEzB,GADAS,EAAYjC,EAASqB,EAAWG,IACd,WAAdS,EACAC,EAAOA,EAAOF,QAAUX,EAAWG,OAElC,IAAkB,UAAdS,EAAuB,CAE5B,GADAP,EAAQL,EAAWG,GACfE,EAAM,GAEN,IADAH,EAAMD,EAAKQ,GACNL,EAAI,EAAGA,EAAIC,EAAM,GAAGM,OAAQP,IAAK,CAClC,IAAKF,EAAI3B,eAAe8B,EAAM,GAAGD,IAC7B,KAAM,IAAIW,OAAM5C,EAAQ,yCAA0CkC,EAAM,GAAGD,IAE/EF,GAAMA,EAAIG,EAAM,GAAGD,QAIvBF,GADKG,EAAM,GACLJ,EAAKI,EAAM,IAGXJ,EAAKQ,IAOf,IAJqB,YAAjB9B,EAASuB,KACTA,EAAMA,KAGNX,EAAGC,WAAWwB,KAAKX,EAAM,KAAyB,UAAjB1B,EAASuB,IAAoBe,MAAMf,GACpE,KAAM,IAAIgB,WAAU/C,EAAQ,0CAA2CQ,EAASuB,IAOpF,QAJIX,EAAGE,OAAOuB,KAAKX,EAAM,MACrBS,EAAcZ,GAAO,GAGjBG,EAAM,IACV,IAAK,IACDH,EAAMA,EAAInB,SAAS,EACvB,MACA,KAAK,IACDmB,EAAMiB,OAAOC,aAAalB,EAC9B,MACA,KAAK,IACL,IAAK,IACDA,EAAMmB,SAASnB,EAAK,GACxB,MACA,KAAK,IACDA,EAAMG,EAAM,GAAKH,EAAIoB,cAAcjB,EAAM,IAAMH,EAAIoB,eACvD,MACA,KAAK,IACDpB,EAAMG,EAAM,GAAKkB,WAAWrB,GAAKsB,QAAQnB,EAAM,IAAMkB,WAAWrB,EACpE,MACA,KAAK,IACDA,EAAMA,EAAInB,SAAS,EACvB,MACA,KAAK,IACDmB,GAAQA,EAAMiB,OAAOjB,KAASG,EAAM,GAAKH,EAAIuB,UAAU,EAAGpB,EAAM,IAAMH,CAC1E,MACA,KAAK,IACDA,KAAc,CAClB,MACA,KAAK,IACDA,EAAMA,EAAInB,SAAS,GACvB,MACA,KAAK,IACDmB,EAAMA,EAAInB,SAAS,IAAI2C,eAG3BnC,EAAGE,OAAOuB,KAAKX,EAAM,KAASS,IAAeT,EAAM,GAKnDN,EAAO,IAJPA,EAAOe,EAAc,IAAM,IAC3BZ,EAAMA,EAAInB,WAAW4C,QAAQpC,EAAGQ,KAAM,KAK1CQ,EAAgBF,EAAM,GAAkB,MAAbA,EAAM,GAAa,IAAMA,EAAM,GAAGuB,OAAO,GAAK,IACzEpB,EAAaH,EAAM,IAAMN,EAAOG,GAAKS,OACrCL,EAAMD,EAAM,IAAMG,EAAa,EAAItB,EAAWqB,EAAeC,GAAoB,GACjFK,EAAOA,EAAOF,QAAUN,EAAM,GAAKN,EAAOG,EAAMI,EAAyB,MAAlBC,EAAwBR,EAAOO,EAAMJ,EAAMI,EAAMP,EAAOG,EAGvH,MAAOW,GAAOvB,KAAK,KAGvBnB,EAAQG,SAERH,EAAQK,MAAQ,SAASqD,GAErB,IADA,GAAIC,GAAOD,EAAKxB,KAAYL,KAAiB+B,EAAY,EAClDD,GAAM,CACT,GAAqC,QAAhCzB,EAAQd,EAAGG,KAAKsC,KAAKF,IACtB9B,EAAWA,EAAWW,QAAUN,EAAM,OAErC,IAAuC,QAAlCA,EAAQd,EAAGI,OAAOqC,KAAKF,IAC7B9B,EAAWA,EAAWW,QAAU,QAE/B,CAAA,GAA4C,QAAvCN,EAAQd,EAAGK,YAAYoC,KAAKF,IAgClC,KAAM,IAAIG,aAAY,mCA/BtB,IAAI5B,EAAM,GAAI,CACV0B,GAAa,CACb,IAAIG,MAAiBC,EAAoB9B,EAAM,GAAI+B,IACnD,IAAuD,QAAlDA,EAAc7C,EAAGnB,IAAI4D,KAAKG,IAe3B,KAAM,IAAIF,aAAY,+CAbtB,KADAC,EAAWA,EAAWvB,QAAUyB,EAAY,GACwC,MAA5ED,EAAoBA,EAAkBV,UAAUW,EAAY,GAAGzB,UACnE,GAA8D,QAAzDyB,EAAc7C,EAAGM,WAAWmC,KAAKG,IAClCD,EAAWA,EAAWvB,QAAUyB,EAAY,OAE3C,CAAA,GAAgE,QAA3DA,EAAc7C,EAAGO,aAAakC,KAAKG,IAIzC,KAAM,IAAIF,aAAY,+CAHtBC,GAAWA,EAAWvB,QAAUyB,EAAY,GAUxD/B,EAAM,GAAK6B,MAGXH,IAAa,CAEjB,IAAkB,IAAdA,EACA,KAAM,IAAIhB,OAAM,4EAEpBf,GAAWA,EAAWW,QAAUN,EAKpCyB,EAAOA,EAAKL,UAAUpB,EAAM,GAAGM,QAEnC,MAAOX,GAGX,IAAIqC,GAAW,SAASR,EAAK5B,EAAMqC,GAG/B,MAFAA,IAASrC,OAAYjB,MAAM,GAC3BsD,EAAMC,OAAO,EAAG,EAAGV,GACZ1D,EAAQqE,MAAM,KAAMF,GAiBR,oBAAZG,UACPA,QAAQtE,QAAUA,EAClBsE,QAAQJ,SAAWA,IAGnBnE,EAAOC,QAAUA,EACjBD,EAAOmE,SAAWA,EAEI,kBAAXK,SAAyBA,OAAOC,KACvCD,OAAO,WACH,OACIvE,QAASA,EACTkE,SAAUA,OAKT,mBAAXnE,QAAyB0E,KAAO1E"}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/gruntfile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/gruntfile.js
deleted file mode 100644 (file)
index 246e1c3..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-module.exports = function(grunt) {
-    grunt.initConfig({
-        pkg: grunt.file.readJSON("package.json"),
-
-        uglify: {
-            options: {
-                banner: "/*! <%= pkg.name %> | <%= pkg.author %> | <%= pkg.license %> */\n",
-                sourceMap: true
-            },
-            build: {
-                files: [
-                    {
-                        src: "src/sprintf.js",
-                        dest: "dist/sprintf.min.js"
-                    },
-                    {
-                        src: "src/angular-sprintf.js",
-                        dest: "dist/angular-sprintf.min.js"
-                    }
-                ]
-            }
-        },
-
-        watch: {
-            js: {
-                files: "src/*.js",
-                tasks: ["uglify"]
-            }
-        }
-    })
-
-    grunt.loadNpmTasks("grunt-contrib-uglify")
-    grunt.loadNpmTasks("grunt-contrib-watch")
-
-    grunt.registerTask("default", ["uglify", "watch"])
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/package.json
deleted file mode 100644 (file)
index e27c6e8..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-{
-  "_args": [
-    [
-      "sprintf-js@https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "sprintf-js@https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-  "_id": "sprintf-js@https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-EeTYT/MhRONbC/Omb4WH842PmXg=",
-  "_location": "/grunt-standard/standard/eslint/js-yaml/argparse/sprintf-js",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "sprintf-js@https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-    "name": "sprintf-js",
-    "escapedName": "sprintf-js",
-    "rawSpec": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/js-yaml/argparse"
-  ],
-  "_spec": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Alexandru Marasteanu",
-    "email": "hello@alexei.ro",
-    "url": "http://alexei.ro/"
-  },
-  "bugs": {
-    "url": "https://github.com/alexei/sprintf.js/issues"
-  },
-  "description": "JavaScript sprintf implementation",
-  "devDependencies": {
-    "grunt": "*",
-    "grunt-contrib-uglify": "*",
-    "grunt-contrib-watch": "*",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/alexei/sprintf.js#readme",
-  "license": "BSD-3-Clause",
-  "main": "src/sprintf.js",
-  "name": "sprintf-js",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/alexei/sprintf.js.git"
-  },
-  "scripts": {
-    "test": "mocha test/test.js"
-  },
-  "version": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/angular-sprintf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/angular-sprintf.js
deleted file mode 100644 (file)
index 9c69123..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-angular.
-    module("sprintf", []).
-    filter("sprintf", function() {
-        return function() {
-            return sprintf.apply(null, arguments)
-        }
-    }).
-    filter("fmt", ["$filter", function($filter) {
-        return $filter("sprintf")
-    }]).
-    filter("vsprintf", function() {
-        return function(format, argv) {
-            return vsprintf(format, argv)
-        }
-    }).
-    filter("vfmt", ["$filter", function($filter) {
-        return $filter("vsprintf")
-    }])
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/sprintf.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/src/sprintf.js
deleted file mode 100644 (file)
index 0ccb64c..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-(function(window) {
-    var re = {
-        not_string: /[^s]/,
-        number: /[dief]/,
-        text: /^[^\x25]+/,
-        modulo: /^\x25{2}/,
-        placeholder: /^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fiosuxX])/,
-        key: /^([a-z_][a-z_\d]*)/i,
-        key_access: /^\.([a-z_][a-z_\d]*)/i,
-        index_access: /^\[(\d+)\]/,
-        sign: /^[\+\-]/
-    }
-
-    function sprintf() {
-        var key = arguments[0], cache = sprintf.cache
-        if (!(cache[key] && cache.hasOwnProperty(key))) {
-            cache[key] = sprintf.parse(key)
-        }
-        return sprintf.format.call(null, cache[key], arguments)
-    }
-
-    sprintf.format = function(parse_tree, argv) {
-        var cursor = 1, tree_length = parse_tree.length, node_type = "", arg, output = [], i, k, match, pad, pad_character, pad_length, is_positive = true, sign = ""
-        for (i = 0; i < tree_length; i++) {
-            node_type = get_type(parse_tree[i])
-            if (node_type === "string") {
-                output[output.length] = parse_tree[i]
-            }
-            else if (node_type === "array") {
-                match = parse_tree[i] // convenience purposes only
-                if (match[2]) { // keyword argument
-                    arg = argv[cursor]
-                    for (k = 0; k < match[2].length; k++) {
-                        if (!arg.hasOwnProperty(match[2][k])) {
-                            throw new Error(sprintf("[sprintf] property '%s' does not exist", match[2][k]))
-                        }
-                        arg = arg[match[2][k]]
-                    }
-                }
-                else if (match[1]) { // positional argument (explicit)
-                    arg = argv[match[1]]
-                }
-                else { // positional argument (implicit)
-                    arg = argv[cursor++]
-                }
-
-                if (get_type(arg) == "function") {
-                    arg = arg()
-                }
-
-                if (re.not_string.test(match[8]) && (get_type(arg) != "number" && isNaN(arg))) {
-                    throw new TypeError(sprintf("[sprintf] expecting number but found %s", get_type(arg)))
-                }
-
-                if (re.number.test(match[8])) {
-                    is_positive = arg >= 0
-                }
-
-                switch (match[8]) {
-                    case "b":
-                        arg = arg.toString(2)
-                    break
-                    case "c":
-                        arg = String.fromCharCode(arg)
-                    break
-                    case "d":
-                    case "i":
-                        arg = parseInt(arg, 10)
-                    break
-                    case "e":
-                        arg = match[7] ? arg.toExponential(match[7]) : arg.toExponential()
-                    break
-                    case "f":
-                        arg = match[7] ? parseFloat(arg).toFixed(match[7]) : parseFloat(arg)
-                    break
-                    case "o":
-                        arg = arg.toString(8)
-                    break
-                    case "s":
-                        arg = ((arg = String(arg)) && match[7] ? arg.substring(0, match[7]) : arg)
-                    break
-                    case "u":
-                        arg = arg >>> 0
-                    break
-                    case "x":
-                        arg = arg.toString(16)
-                    break
-                    case "X":
-                        arg = arg.toString(16).toUpperCase()
-                    break
-                }
-                if (re.number.test(match[8]) && (!is_positive || match[3])) {
-                    sign = is_positive ? "+" : "-"
-                    arg = arg.toString().replace(re.sign, "")
-                }
-                else {
-                    sign = ""
-                }
-                pad_character = match[4] ? match[4] === "0" ? "0" : match[4].charAt(1) : " "
-                pad_length = match[6] - (sign + arg).length
-                pad = match[6] ? (pad_length > 0 ? str_repeat(pad_character, pad_length) : "") : ""
-                output[output.length] = match[5] ? sign + arg + pad : (pad_character === "0" ? sign + pad + arg : pad + sign + arg)
-            }
-        }
-        return output.join("")
-    }
-
-    sprintf.cache = {}
-
-    sprintf.parse = function(fmt) {
-        var _fmt = fmt, match = [], parse_tree = [], arg_names = 0
-        while (_fmt) {
-            if ((match = re.text.exec(_fmt)) !== null) {
-                parse_tree[parse_tree.length] = match[0]
-            }
-            else if ((match = re.modulo.exec(_fmt)) !== null) {
-                parse_tree[parse_tree.length] = "%"
-            }
-            else if ((match = re.placeholder.exec(_fmt)) !== null) {
-                if (match[2]) {
-                    arg_names |= 1
-                    var field_list = [], replacement_field = match[2], field_match = []
-                    if ((field_match = re.key.exec(replacement_field)) !== null) {
-                        field_list[field_list.length] = field_match[1]
-                        while ((replacement_field = replacement_field.substring(field_match[0].length)) !== "") {
-                            if ((field_match = re.key_access.exec(replacement_field)) !== null) {
-                                field_list[field_list.length] = field_match[1]
-                            }
-                            else if ((field_match = re.index_access.exec(replacement_field)) !== null) {
-                                field_list[field_list.length] = field_match[1]
-                            }
-                            else {
-                                throw new SyntaxError("[sprintf] failed to parse named argument key")
-                            }
-                        }
-                    }
-                    else {
-                        throw new SyntaxError("[sprintf] failed to parse named argument key")
-                    }
-                    match[2] = field_list
-                }
-                else {
-                    arg_names |= 2
-                }
-                if (arg_names === 3) {
-                    throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported")
-                }
-                parse_tree[parse_tree.length] = match
-            }
-            else {
-                throw new SyntaxError("[sprintf] unexpected placeholder")
-            }
-            _fmt = _fmt.substring(match[0].length)
-        }
-        return parse_tree
-    }
-
-    var vsprintf = function(fmt, argv, _argv) {
-        _argv = (argv || []).slice(0)
-        _argv.splice(0, 0, fmt)
-        return sprintf.apply(null, _argv)
-    }
-
-    /**
-     * helpers
-     */
-    function get_type(variable) {
-        return Object.prototype.toString.call(variable).slice(8, -1).toLowerCase()
-    }
-
-    function str_repeat(input, multiplier) {
-        return Array(multiplier + 1).join(input)
-    }
-
-    /**
-     * export to either browser or node.js
-     */
-    if (typeof exports !== "undefined") {
-        exports.sprintf = sprintf
-        exports.vsprintf = vsprintf
-    }
-    else {
-        window.sprintf = sprintf
-        window.vsprintf = vsprintf
-
-        if (typeof define === "function" && define.amd) {
-            define(function() {
-                return {
-                    sprintf: sprintf,
-                    vsprintf: vsprintf
-                }
-            })
-        }
-    }
-})(typeof window === "undefined" ? this : window);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/test/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/node_modules/sprintf-js/test/test.js
deleted file mode 100644 (file)
index 1717d8f..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-var assert = require("assert"),
-    sprintfjs = require("../src/sprintf.js"),
-    sprintf = sprintfjs.sprintf,
-    vsprintf = sprintfjs.vsprintf
-
-describe("sprintfjs", function() {
-    it("should return formated strings for simple placeholders", function() {
-        assert.equal("%", sprintf("%%"))
-        assert.equal("10", sprintf("%b", 2))
-        assert.equal("A", sprintf("%c", 65))
-        assert.equal("2", sprintf("%d", 2))
-        assert.equal("2", sprintf("%i", 2))
-        assert.equal("2", sprintf("%d", "2"))
-        assert.equal("2", sprintf("%i", "2"))
-        assert.equal("2e+0", sprintf("%e", 2))
-        assert.equal("2", sprintf("%u", 2))
-        assert.equal("4294967294", sprintf("%u", -2))
-        assert.equal("2.2", sprintf("%f", 2.2))
-        assert.equal("10", sprintf("%o", 8))
-        assert.equal("%s", sprintf("%s", "%s"))
-        assert.equal("ff", sprintf("%x", 255))
-        assert.equal("FF", sprintf("%X", 255))
-        assert.equal("Polly wants a cracker", sprintf("%2$s %3$s a %1$s", "cracker", "Polly", "wants"))
-        assert.equal("Hello world!", sprintf("Hello %(who)s!", {"who": "world"}))
-    })
-
-    it("should return formated strings for complex placeholders", function() {
-        // sign
-        assert.equal("2", sprintf("%d", 2))
-        assert.equal("-2", sprintf("%d", -2))
-        assert.equal("+2", sprintf("%+d", 2))
-        assert.equal("-2", sprintf("%+d", -2))
-        assert.equal("2", sprintf("%i", 2))
-        assert.equal("-2", sprintf("%i", -2))
-        assert.equal("+2", sprintf("%+i", 2))
-        assert.equal("-2", sprintf("%+i", -2))
-        assert.equal("2.2", sprintf("%f", 2.2))
-        assert.equal("-2.2", sprintf("%f", -2.2))
-        assert.equal("+2.2", sprintf("%+f", 2.2))
-        assert.equal("-2.2", sprintf("%+f", -2.2))
-        assert.equal("-2.3", sprintf("%+.1f", -2.34))
-        assert.equal("-0.0", sprintf("%+.1f", -0.01))
-        assert.equal("-000000123", sprintf("%+010d", -123))
-        assert.equal("______-123", sprintf("%+'_10d", -123))
-        assert.equal("-234.34 123.2", sprintf("%f %f", -234.34, 123.2))
-
-        // padding
-        assert.equal("-0002", sprintf("%05d", -2))
-        assert.equal("-0002", sprintf("%05i", -2))
-        assert.equal("    <", sprintf("%5s", "<"))
-        assert.equal("0000<", sprintf("%05s", "<"))
-        assert.equal("____<", sprintf("%'_5s", "<"))
-        assert.equal(">    ", sprintf("%-5s", ">"))
-        assert.equal(">0000", sprintf("%0-5s", ">"))
-        assert.equal(">____", sprintf("%'_-5s", ">"))
-        assert.equal("xxxxxx", sprintf("%5s", "xxxxxx"))
-        assert.equal("1234", sprintf("%02u", 1234))
-        assert.equal(" -10.235", sprintf("%8.3f", -10.23456))
-        assert.equal("-12.34 xxx", sprintf("%f %s", -12.34, "xxx"))
-
-        // precision
-        assert.equal("2.3", sprintf("%.1f", 2.345))
-        assert.equal("xxxxx", sprintf("%5.5s", "xxxxxx"))
-        assert.equal("    x", sprintf("%5.1s", "xxxxxx"))
-
-    })
-
-    it("should return formated strings for callbacks", function() {
-        assert.equal("foobar", sprintf("%s", function() { return "foobar" }))
-        assert.equal(Date.now(), sprintf("%s", Date.now)) // should pass...
-    })
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/argparse/package.json
deleted file mode 100644 (file)
index 0ef0477..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-{
-  "_args": [
-    [
-      "argparse@https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "argparse@https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-  "_id": "argparse@https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-vPrjkFllbRlz0LnmoadBVLWpoTY=",
-  "_location": "/grunt-standard/standard/eslint/js-yaml/argparse",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "argparse@https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-    "name": "argparse",
-    "escapedName": "argparse",
-    "rawSpec": "https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/js-yaml"
-  ],
-  "_spec": "https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "bugs": {
-    "url": "https://github.com/nodeca/argparse/issues"
-  },
-  "contributors": [
-    {
-      "name": "Eugene Shkuropat"
-    },
-    {
-      "name": "Paul Jacobson"
-    }
-  ],
-  "dependencies": {
-    "lodash": ">= 3.2.0 < 4.0.0",
-    "sprintf-js": "~1.0.2"
-  },
-  "description": "Very powerful CLI arguments parser. Native port of argparse - python's options parsing library",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/nodeca/argparse",
-  "keywords": [
-    "cli",
-    "parser",
-    "argparse",
-    "option",
-    "args"
-  ],
-  "license": "MIT",
-  "main": "./index.js",
-  "name": "argparse",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/nodeca/argparse.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/argparse/-/argparse-1.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/README.md
deleted file mode 100644 (file)
index f7a9a21..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-**Esprima** ([esprima.org](http://esprima.org), BSD license) is a high performance,
-standard-compliant [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
-parser written in ECMAScript (also popularly known as
-[JavaScript](http://en.wikipedia.org/wiki/JavaScript>JavaScript)).
-Esprima is created and maintained by [Ariya Hidayat](http://twitter.com/ariyahidayat),
-with the help of [many contributors](https://github.com/jquery/esprima/contributors).
-
-### Features
-
-- Full support for ECMAScript 5.1 ([ECMA-262](http://www.ecma-international.org/publications/standards/Ecma-262.htm))
-- Sensible [syntax tree format](http://esprima.org/doc/index.html#ast) compatible with Mozilla
-[Parser AST](https://developer.mozilla.org/en/SpiderMonkey/Parser_API)
-- Optional tracking of syntax node location (index-based and line-column)
-- Heavily tested (> 700 [unit tests](http://esprima.org/test/) with [full code coverage](http://esprima.org/test/coverage.html))
-- [Partial support](http://esprima.org/doc/es6.html) for ECMAScript 6
-
-Esprima serves as a **building block** for some JavaScript
-language tools, from [code instrumentation](http://esprima.org/demo/functiontrace.html)
-to [editor autocompletion](http://esprima.org/demo/autocomplete.html).
-
-Esprima runs on many popular web browsers, as well as other ECMAScript platforms such as
-[Rhino](http://www.mozilla.org/rhino), [Nashorn](http://openjdk.java.net/projects/nashorn/), and [Node.js](https://npmjs.org/package/esprima).
-
-For more information, check the web site [esprima.org](http://esprima.org).
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esparse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esparse.js
deleted file mode 100755 (executable)
index 5603666..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true node:true rhino:true */
-
-var fs, esprima, fname, content, options, syntax;
-
-if (typeof require === 'function') {
-    fs = require('fs');
-    esprima = require('esprima');
-} else if (typeof load === 'function') {
-    try {
-        load('esprima.js');
-    } catch (e) {
-        load('../esprima.js');
-    }
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esparse.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esparse [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --comment      Gather all line and block comments in an array');
-    console.log('  --loc          Include line-column location info for each syntax node');
-    console.log('  --range        Include index-based range for each syntax node');
-    console.log('  --raw          Display the raw value of literals');
-    console.log('  --tokens       List all tokens in an array');
-    console.log('  --tolerant     Tolerate errors on a best-effort basis (experimental)');
-    console.log('  -v, --version  Shows program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {};
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Parser (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry === '--comment') {
-        options.comment = true;
-    } else if (entry === '--loc') {
-        options.loc = true;
-    } else if (entry === '--range') {
-        options.range = true;
-    } else if (entry === '--raw') {
-        options.raw = true;
-    } else if (entry === '--tokens') {
-        options.tokens = true;
-    } else if (entry === '--tolerant') {
-        options.tolerant = true;
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else if (typeof fname === 'string') {
-        console.log('Error: more than one input file.');
-        process.exit(1);
-    } else {
-        fname = entry;
-    }
-});
-
-if (typeof fname !== 'string') {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-// Special handling for regular expression literal since we need to
-// convert it to a string literal, otherwise it will be decoded
-// as object "{}" and the regular expression would be lost.
-function adjustRegexLiteral(key, value) {
-    if (key === 'value' && value instanceof RegExp) {
-        value = value.toString();
-    }
-    return value;
-}
-
-try {
-    content = fs.readFileSync(fname, 'utf-8');
-    syntax = esprima.parse(content, options);
-    console.log(JSON.stringify(syntax, adjustRegexLiteral, 4));
-} catch (e) {
-    console.log('Error: ' + e.message);
-    process.exit(1);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js
deleted file mode 100755 (executable)
index dddd8a2..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-#!/usr/bin/env node
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint sloppy:true plusplus:true node:true rhino:true */
-/*global phantom:true */
-
-var fs, system, esprima, options, fnames, count;
-
-if (typeof esprima === 'undefined') {
-    // PhantomJS can only require() relative files
-    if (typeof phantom === 'object') {
-        fs = require('fs');
-        system = require('system');
-        esprima = require('./esprima');
-    } else if (typeof require === 'function') {
-        fs = require('fs');
-        esprima = require('esprima');
-    } else if (typeof load === 'function') {
-        try {
-            load('esprima.js');
-        } catch (e) {
-            load('../esprima.js');
-        }
-    }
-}
-
-// Shims to Node.js objects when running under PhantomJS 1.7+.
-if (typeof phantom === 'object') {
-    fs.readFileSync = fs.read;
-    process = {
-        argv: [].slice.call(system.args),
-        exit: phantom.exit
-    };
-    process.argv.unshift('phantomjs');
-}
-
-// Shims to Node.js objects when running under Rhino.
-if (typeof console === 'undefined' && typeof process === 'undefined') {
-    console = { log: print };
-    fs = { readFileSync: readFile };
-    process = { argv: arguments, exit: quit };
-    process.argv.unshift('esvalidate.js');
-    process.argv.unshift('rhino');
-}
-
-function showUsage() {
-    console.log('Usage:');
-    console.log('   esvalidate [options] file.js');
-    console.log();
-    console.log('Available options:');
-    console.log();
-    console.log('  --format=type  Set the report format, plain (default) or junit');
-    console.log('  -v, --version  Print program version');
-    console.log();
-    process.exit(1);
-}
-
-if (process.argv.length <= 2) {
-    showUsage();
-}
-
-options = {
-    format: 'plain'
-};
-
-fnames = [];
-
-process.argv.splice(2).forEach(function (entry) {
-
-    if (entry === '-h' || entry === '--help') {
-        showUsage();
-    } else if (entry === '-v' || entry === '--version') {
-        console.log('ECMAScript Validator (using Esprima version', esprima.version, ')');
-        console.log();
-        process.exit(0);
-    } else if (entry.slice(0, 9) === '--format=') {
-        options.format = entry.slice(9);
-        if (options.format !== 'plain' && options.format !== 'junit') {
-            console.log('Error: unknown report format ' + options.format + '.');
-            process.exit(1);
-        }
-    } else if (entry.slice(0, 2) === '--') {
-        console.log('Error: unknown option ' + entry + '.');
-        process.exit(1);
-    } else {
-        fnames.push(entry);
-    }
-});
-
-if (fnames.length === 0) {
-    console.log('Error: no input file.');
-    process.exit(1);
-}
-
-if (options.format === 'junit') {
-    console.log('<?xml version="1.0" encoding="UTF-8"?>');
-    console.log('<testsuites>');
-}
-
-count = 0;
-fnames.forEach(function (fname) {
-    var content, timestamp, syntax, name;
-    try {
-        content = fs.readFileSync(fname, 'utf-8');
-
-        if (content[0] === '#' && content[1] === '!') {
-            content = '//' + content.substr(2, content.length);
-        }
-
-        timestamp = Date.now();
-        syntax = esprima.parse(content, { tolerant: true });
-
-        if (options.format === 'junit') {
-
-            name = fname;
-            if (name.lastIndexOf('/') >= 0) {
-                name = name.slice(name.lastIndexOf('/') + 1);
-            }
-
-            console.log('<testsuite name="' + fname + '" errors="0" ' +
-                ' failures="' + syntax.errors.length + '" ' +
-                ' tests="' + syntax.errors.length + '" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) +
-                '">');
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                console.log('  <testcase name="Line ' + error.lineNumber + ': ' + msg + '" ' +
-                    ' time="0">');
-                console.log('    <error type="SyntaxError" message="' + error.message + '">' +
-                    error.message + '(' + name + ':' + error.lineNumber + ')' +
-                    '</error>');
-                console.log('  </testcase>');
-            });
-
-            console.log('</testsuite>');
-
-        } else if (options.format === 'plain') {
-
-            syntax.errors.forEach(function (error) {
-                var msg = error.message;
-                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
-                msg = fname + ':' + error.lineNumber + ': ' + msg;
-                console.log(msg);
-                ++count;
-            });
-
-        }
-    } catch (e) {
-        ++count;
-        if (options.format === 'junit') {
-            console.log('<testsuite name="' + fname + '" errors="1" failures="0" tests="1" ' +
-                ' time="' + Math.round((Date.now() - timestamp) / 1000) + '">');
-            console.log(' <testcase name="' + e.message + '" ' + ' time="0">');
-            console.log(' <error type="ParseError" message="' + e.message + '">' +
-                e.message + '(' + fname + ((e.lineNumber) ? ':' + e.lineNumber : '') +
-                ')</error>');
-            console.log(' </testcase>');
-            console.log('</testsuite>');
-        } else {
-            console.log('Error: ' + e.message);
-        }
-    }
-});
-
-if (options.format === 'junit') {
-    console.log('</testsuites>');
-}
-
-if (count > 0) {
-    process.exit(1);
-}
-
-if (count === 0 && typeof phantom === 'object') {
-    process.exit(0);
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/esprima.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/esprima.js
deleted file mode 100644 (file)
index a1f80c8..0000000
+++ /dev/null
@@ -1,4156 +0,0 @@
-/*
-  Copyright (C) 2013 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2013 Thaddee Tyl <thaddee.tyl@gmail.com>
-  Copyright (C) 2013 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Kris Kowal <kris.kowal@cixar.com>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-(function (root, factory) {
-    'use strict';
-
-    // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js,
-    // Rhino, and plain browser loading.
-
-    /* istanbul ignore next */
-    if (typeof define === 'function' && define.amd) {
-        define(['exports'], factory);
-    } else if (typeof exports !== 'undefined') {
-        factory(exports);
-    } else {
-        factory((root.esprima = {}));
-    }
-}(this, function (exports) {
-    'use strict';
-
-    var Token,
-        TokenName,
-        FnExprTokens,
-        Syntax,
-        PlaceHolders,
-        PropertyKind,
-        Messages,
-        Regex,
-        source,
-        strict,
-        index,
-        lineNumber,
-        lineStart,
-        length,
-        lookahead,
-        state,
-        extra;
-
-    Token = {
-        BooleanLiteral: 1,
-        EOF: 2,
-        Identifier: 3,
-        Keyword: 4,
-        NullLiteral: 5,
-        NumericLiteral: 6,
-        Punctuator: 7,
-        StringLiteral: 8,
-        RegularExpression: 9
-    };
-
-    TokenName = {};
-    TokenName[Token.BooleanLiteral] = 'Boolean';
-    TokenName[Token.EOF] = '<end>';
-    TokenName[Token.Identifier] = 'Identifier';
-    TokenName[Token.Keyword] = 'Keyword';
-    TokenName[Token.NullLiteral] = 'Null';
-    TokenName[Token.NumericLiteral] = 'Numeric';
-    TokenName[Token.Punctuator] = 'Punctuator';
-    TokenName[Token.StringLiteral] = 'String';
-    TokenName[Token.RegularExpression] = 'RegularExpression';
-
-    // A function following one of those tokens is an expression.
-    FnExprTokens = ['(', '{', '[', 'in', 'typeof', 'instanceof', 'new',
-                    'return', 'case', 'delete', 'throw', 'void',
-                    // assignment operators
-                    '=', '+=', '-=', '*=', '/=', '%=', '<<=', '>>=', '>>>=',
-                    '&=', '|=', '^=', ',',
-                    // binary/unary operators
-                    '+', '-', '*', '/', '%', '++', '--', '<<', '>>', '>>>', '&',
-                    '|', '^', '!', '~', '&&', '||', '?', ':', '===', '==', '>=',
-                    '<=', '<', '>', '!=', '!=='];
-
-    Syntax = {
-        AssignmentExpression: 'AssignmentExpression',
-        ArrayExpression: 'ArrayExpression',
-        ArrowFunctionExpression: 'ArrowFunctionExpression',
-        BlockStatement: 'BlockStatement',
-        BinaryExpression: 'BinaryExpression',
-        BreakStatement: 'BreakStatement',
-        CallExpression: 'CallExpression',
-        CatchClause: 'CatchClause',
-        ConditionalExpression: 'ConditionalExpression',
-        ContinueStatement: 'ContinueStatement',
-        DoWhileStatement: 'DoWhileStatement',
-        DebuggerStatement: 'DebuggerStatement',
-        EmptyStatement: 'EmptyStatement',
-        ExpressionStatement: 'ExpressionStatement',
-        ForStatement: 'ForStatement',
-        ForInStatement: 'ForInStatement',
-        FunctionDeclaration: 'FunctionDeclaration',
-        FunctionExpression: 'FunctionExpression',
-        Identifier: 'Identifier',
-        IfStatement: 'IfStatement',
-        Literal: 'Literal',
-        LabeledStatement: 'LabeledStatement',
-        LogicalExpression: 'LogicalExpression',
-        MemberExpression: 'MemberExpression',
-        NewExpression: 'NewExpression',
-        ObjectExpression: 'ObjectExpression',
-        Program: 'Program',
-        Property: 'Property',
-        ReturnStatement: 'ReturnStatement',
-        SequenceExpression: 'SequenceExpression',
-        SwitchStatement: 'SwitchStatement',
-        SwitchCase: 'SwitchCase',
-        ThisExpression: 'ThisExpression',
-        ThrowStatement: 'ThrowStatement',
-        TryStatement: 'TryStatement',
-        UnaryExpression: 'UnaryExpression',
-        UpdateExpression: 'UpdateExpression',
-        VariableDeclaration: 'VariableDeclaration',
-        VariableDeclarator: 'VariableDeclarator',
-        WhileStatement: 'WhileStatement',
-        WithStatement: 'WithStatement'
-    };
-
-    PlaceHolders = {
-        ArrowParameterPlaceHolder: {
-            type: 'ArrowParameterPlaceHolder'
-        }
-    };
-
-    PropertyKind = {
-        Data: 1,
-        Get: 2,
-        Set: 4
-    };
-
-    // Error messages should be identical to V8.
-    Messages = {
-        UnexpectedToken: 'Unexpected token %0',
-        UnexpectedNumber: 'Unexpected number',
-        UnexpectedString: 'Unexpected string',
-        UnexpectedIdentifier: 'Unexpected identifier',
-        UnexpectedReserved: 'Unexpected reserved word',
-        UnexpectedEOS: 'Unexpected end of input',
-        NewlineAfterThrow: 'Illegal newline after throw',
-        InvalidRegExp: 'Invalid regular expression',
-        UnterminatedRegExp: 'Invalid regular expression: missing /',
-        InvalidLHSInAssignment: 'Invalid left-hand side in assignment',
-        InvalidLHSInForIn: 'Invalid left-hand side in for-in',
-        MultipleDefaultsInSwitch: 'More than one default clause in switch statement',
-        NoCatchOrFinally: 'Missing catch or finally after try',
-        UnknownLabel: 'Undefined label \'%0\'',
-        Redeclaration: '%0 \'%1\' has already been declared',
-        IllegalContinue: 'Illegal continue statement',
-        IllegalBreak: 'Illegal break statement',
-        IllegalReturn: 'Illegal return statement',
-        StrictModeWith: 'Strict mode code may not include a with statement',
-        StrictCatchVariable: 'Catch variable may not be eval or arguments in strict mode',
-        StrictVarName: 'Variable name may not be eval or arguments in strict mode',
-        StrictParamName: 'Parameter name eval or arguments is not allowed in strict mode',
-        StrictParamDupe: 'Strict mode function may not have duplicate parameter names',
-        StrictFunctionName: 'Function name may not be eval or arguments in strict mode',
-        StrictOctalLiteral: 'Octal literals are not allowed in strict mode.',
-        StrictDelete: 'Delete of an unqualified identifier in strict mode.',
-        StrictDuplicateProperty: 'Duplicate data property in object literal not allowed in strict mode',
-        AccessorDataProperty: 'Object literal may not have data and accessor property with the same name',
-        AccessorGetSet: 'Object literal may not have multiple get/set accessors with the same name',
-        StrictLHSAssignment: 'Assignment to eval or arguments is not allowed in strict mode',
-        StrictLHSPostfix: 'Postfix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictLHSPrefix: 'Prefix increment/decrement may not have eval or arguments operand in strict mode',
-        StrictReservedWord: 'Use of future reserved word in strict mode'
-    };
-
-    // See also tools/generate-unicode-regex.py.
-    Regex = {
-        NonAsciiIdentifierStart: new RegExp('[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B2\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]'),
-        NonAsciiIdentifierPart: new RegExp('[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B2\u08E4-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2D\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]')
-    };
-
-    // Ensure the condition is true, otherwise throw an error.
-    // This is only to have a better contract semantic, i.e. another safety net
-    // to catch a logic error. The condition shall be fulfilled in normal case.
-    // Do NOT use this to enforce a certain condition on any user input.
-
-    function assert(condition, message) {
-        /* istanbul ignore if */
-        if (!condition) {
-            throw new Error('ASSERT: ' + message);
-        }
-    }
-
-    function isDecimalDigit(ch) {
-        return (ch >= 0x30 && ch <= 0x39);   // 0..9
-    }
-
-    function isHexDigit(ch) {
-        return '0123456789abcdefABCDEF'.indexOf(ch) >= 0;
-    }
-
-    function isOctalDigit(ch) {
-        return '01234567'.indexOf(ch) >= 0;
-    }
-
-
-    // 7.2 White Space
-
-    function isWhiteSpace(ch) {
-        return (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||
-            (ch >= 0x1680 && [0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF].indexOf(ch) >= 0);
-    }
-
-    // 7.3 Line Terminators
-
-    function isLineTerminator(ch) {
-        return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029);
-    }
-
-    // 7.6 Identifier Names and Identifiers
-
-    function isIdentifierStart(ch) {
-        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
-            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
-            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
-            (ch === 0x5C) ||                      // \ (backslash)
-            ((ch >= 0x80) && Regex.NonAsciiIdentifierStart.test(String.fromCharCode(ch)));
-    }
-
-    function isIdentifierPart(ch) {
-        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
-            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
-            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
-            (ch >= 0x30 && ch <= 0x39) ||         // 0..9
-            (ch === 0x5C) ||                      // \ (backslash)
-            ((ch >= 0x80) && Regex.NonAsciiIdentifierPart.test(String.fromCharCode(ch)));
-    }
-
-    // 7.6.1.2 Future Reserved Words
-
-    function isFutureReservedWord(id) {
-        switch (id) {
-        case 'class':
-        case 'enum':
-        case 'export':
-        case 'extends':
-        case 'import':
-        case 'super':
-            return true;
-        default:
-            return false;
-        }
-    }
-
-    function isStrictModeReservedWord(id) {
-        switch (id) {
-        case 'implements':
-        case 'interface':
-        case 'package':
-        case 'private':
-        case 'protected':
-        case 'public':
-        case 'static':
-        case 'yield':
-        case 'let':
-            return true;
-        default:
-            return false;
-        }
-    }
-
-    function isRestrictedWord(id) {
-        return id === 'eval' || id === 'arguments';
-    }
-
-    // 7.6.1.1 Keywords
-
-    function isKeyword(id) {
-        if (strict && isStrictModeReservedWord(id)) {
-            return true;
-        }
-
-        // 'const' is specialized as Keyword in V8.
-        // 'yield' and 'let' are for compatibility with SpiderMonkey and ES.next.
-        // Some others are from future reserved words.
-
-        switch (id.length) {
-        case 2:
-            return (id === 'if') || (id === 'in') || (id === 'do');
-        case 3:
-            return (id === 'var') || (id === 'for') || (id === 'new') ||
-                (id === 'try') || (id === 'let');
-        case 4:
-            return (id === 'this') || (id === 'else') || (id === 'case') ||
-                (id === 'void') || (id === 'with') || (id === 'enum');
-        case 5:
-            return (id === 'while') || (id === 'break') || (id === 'catch') ||
-                (id === 'throw') || (id === 'const') || (id === 'yield') ||
-                (id === 'class') || (id === 'super');
-        case 6:
-            return (id === 'return') || (id === 'typeof') || (id === 'delete') ||
-                (id === 'switch') || (id === 'export') || (id === 'import');
-        case 7:
-            return (id === 'default') || (id === 'finally') || (id === 'extends');
-        case 8:
-            return (id === 'function') || (id === 'continue') || (id === 'debugger');
-        case 10:
-            return (id === 'instanceof');
-        default:
-            return false;
-        }
-    }
-
-    // 7.4 Comments
-
-    function addComment(type, value, start, end, loc) {
-        var comment;
-
-        assert(typeof start === 'number', 'Comment must have valid position');
-
-        // Because the way the actual token is scanned, often the comments
-        // (if any) are skipped twice during the lexical analysis.
-        // Thus, we need to skip adding a comment if the comment array already
-        // handled it.
-        if (state.lastCommentStart >= start) {
-            return;
-        }
-        state.lastCommentStart = start;
-
-        comment = {
-            type: type,
-            value: value
-        };
-        if (extra.range) {
-            comment.range = [start, end];
-        }
-        if (extra.loc) {
-            comment.loc = loc;
-        }
-        extra.comments.push(comment);
-        if (extra.attachComment) {
-            extra.leadingComments.push(comment);
-            extra.trailingComments.push(comment);
-        }
-    }
-
-    function skipSingleLineComment(offset) {
-        var start, loc, ch, comment;
-
-        start = index - offset;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart - offset
-            }
-        };
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            ++index;
-            if (isLineTerminator(ch)) {
-                if (extra.comments) {
-                    comment = source.slice(start + offset, index - 1);
-                    loc.end = {
-                        line: lineNumber,
-                        column: index - lineStart - 1
-                    };
-                    addComment('Line', comment, start, index - 1, loc);
-                }
-                if (ch === 13 && source.charCodeAt(index) === 10) {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-                return;
-            }
-        }
-
-        if (extra.comments) {
-            comment = source.slice(start + offset, index);
-            loc.end = {
-                line: lineNumber,
-                column: index - lineStart
-            };
-            addComment('Line', comment, start, index, loc);
-        }
-    }
-
-    function skipMultiLineComment() {
-        var start, loc, ch, comment;
-
-        if (extra.comments) {
-            start = index - 2;
-            loc = {
-                start: {
-                    line: lineNumber,
-                    column: index - lineStart - 2
-                }
-            };
-        }
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (isLineTerminator(ch)) {
-                if (ch === 0x0D && source.charCodeAt(index + 1) === 0x0A) {
-                    ++index;
-                }
-                ++lineNumber;
-                ++index;
-                lineStart = index;
-                if (index >= length) {
-                    throwUnexpectedToken();
-                }
-            } else if (ch === 0x2A) {
-                // Block comment ends with '*/'.
-                if (source.charCodeAt(index + 1) === 0x2F) {
-                    ++index;
-                    ++index;
-                    if (extra.comments) {
-                        comment = source.slice(start + 2, index - 2);
-                        loc.end = {
-                            line: lineNumber,
-                            column: index - lineStart
-                        };
-                        addComment('Block', comment, start, index, loc);
-                    }
-                    return;
-                }
-                ++index;
-            } else {
-                ++index;
-            }
-        }
-
-        throwUnexpectedToken();
-    }
-
-    function skipComment() {
-        var ch, start;
-
-        start = (index === 0);
-        while (index < length) {
-            ch = source.charCodeAt(index);
-
-            if (isWhiteSpace(ch)) {
-                ++index;
-            } else if (isLineTerminator(ch)) {
-                ++index;
-                if (ch === 0x0D && source.charCodeAt(index) === 0x0A) {
-                    ++index;
-                }
-                ++lineNumber;
-                lineStart = index;
-                start = true;
-            } else if (ch === 0x2F) { // U+002F is '/'
-                ch = source.charCodeAt(index + 1);
-                if (ch === 0x2F) {
-                    ++index;
-                    ++index;
-                    skipSingleLineComment(2);
-                    start = true;
-                } else if (ch === 0x2A) {  // U+002A is '*'
-                    ++index;
-                    ++index;
-                    skipMultiLineComment();
-                } else {
-                    break;
-                }
-            } else if (start && ch === 0x2D) { // U+002D is '-'
-                // U+003E is '>'
-                if ((source.charCodeAt(index + 1) === 0x2D) && (source.charCodeAt(index + 2) === 0x3E)) {
-                    // '-->' is a single-line comment
-                    index += 3;
-                    skipSingleLineComment(3);
-                } else {
-                    break;
-                }
-            } else if (ch === 0x3C) { // U+003C is '<'
-                if (source.slice(index + 1, index + 4) === '!--') {
-                    ++index; // `<`
-                    ++index; // `!`
-                    ++index; // `-`
-                    ++index; // `-`
-                    skipSingleLineComment(4);
-                } else {
-                    break;
-                }
-            } else {
-                break;
-            }
-        }
-    }
-
-    function scanHexEscape(prefix) {
-        var i, len, ch, code = 0;
-
-        len = (prefix === 'u') ? 4 : 2;
-        for (i = 0; i < len; ++i) {
-            if (index < length && isHexDigit(source[index])) {
-                ch = source[index++];
-                code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
-            } else {
-                return '';
-            }
-        }
-        return String.fromCharCode(code);
-    }
-
-    function scanUnicodeCodePointEscape() {
-        var ch, code, cu1, cu2;
-
-        ch = source[index];
-        code = 0;
-
-        // At least, one hex digit is required.
-        if (ch === '}') {
-            throwUnexpectedToken();
-        }
-
-        while (index < length) {
-            ch = source[index++];
-            if (!isHexDigit(ch)) {
-                break;
-            }
-            code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
-        }
-
-        if (code > 0x10FFFF || ch !== '}') {
-            throwUnexpectedToken();
-        }
-
-        // UTF-16 Encoding
-        if (code <= 0xFFFF) {
-            return String.fromCharCode(code);
-        }
-        cu1 = ((code - 0x10000) >> 10) + 0xD800;
-        cu2 = ((code - 0x10000) & 1023) + 0xDC00;
-        return String.fromCharCode(cu1, cu2);
-    }
-
-    function getEscapedIdentifier() {
-        var ch, id;
-
-        ch = source.charCodeAt(index++);
-        id = String.fromCharCode(ch);
-
-        // '\u' (U+005C, U+0075) denotes an escaped character.
-        if (ch === 0x5C) {
-            if (source.charCodeAt(index) !== 0x75) {
-                throwUnexpectedToken();
-            }
-            ++index;
-            ch = scanHexEscape('u');
-            if (!ch || ch === '\\' || !isIdentifierStart(ch.charCodeAt(0))) {
-                throwUnexpectedToken();
-            }
-            id = ch;
-        }
-
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (!isIdentifierPart(ch)) {
-                break;
-            }
-            ++index;
-            id += String.fromCharCode(ch);
-
-            // '\u' (U+005C, U+0075) denotes an escaped character.
-            if (ch === 0x5C) {
-                id = id.substr(0, id.length - 1);
-                if (source.charCodeAt(index) !== 0x75) {
-                    throwUnexpectedToken();
-                }
-                ++index;
-                ch = scanHexEscape('u');
-                if (!ch || ch === '\\' || !isIdentifierPart(ch.charCodeAt(0))) {
-                    throwUnexpectedToken();
-                }
-                id += ch;
-            }
-        }
-
-        return id;
-    }
-
-    function getIdentifier() {
-        var start, ch;
-
-        start = index++;
-        while (index < length) {
-            ch = source.charCodeAt(index);
-            if (ch === 0x5C) {
-                // Blackslash (U+005C) marks Unicode escape sequence.
-                index = start;
-                return getEscapedIdentifier();
-            }
-            if (isIdentifierPart(ch)) {
-                ++index;
-            } else {
-                break;
-            }
-        }
-
-        return source.slice(start, index);
-    }
-
-    function scanIdentifier() {
-        var start, id, type;
-
-        start = index;
-
-        // Backslash (U+005C) starts an escaped character.
-        id = (source.charCodeAt(index) === 0x5C) ? getEscapedIdentifier() : getIdentifier();
-
-        // There is no keyword or literal with only one character.
-        // Thus, it must be an identifier.
-        if (id.length === 1) {
-            type = Token.Identifier;
-        } else if (isKeyword(id)) {
-            type = Token.Keyword;
-        } else if (id === 'null') {
-            type = Token.NullLiteral;
-        } else if (id === 'true' || id === 'false') {
-            type = Token.BooleanLiteral;
-        } else {
-            type = Token.Identifier;
-        }
-
-        return {
-            type: type,
-            value: id,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-
-    // 7.7 Punctuators
-
-    function scanPunctuator() {
-        var start = index,
-            code = source.charCodeAt(index),
-            code2,
-            ch1 = source[index],
-            ch2,
-            ch3,
-            ch4;
-
-        switch (code) {
-
-        // Check for most common single-character punctuators.
-        case 0x2E:  // . dot
-        case 0x28:  // ( open bracket
-        case 0x29:  // ) close bracket
-        case 0x3B:  // ; semicolon
-        case 0x2C:  // , comma
-        case 0x7B:  // { open curly brace
-        case 0x7D:  // } close curly brace
-        case 0x5B:  // [
-        case 0x5D:  // ]
-        case 0x3A:  // :
-        case 0x3F:  // ?
-        case 0x7E:  // ~
-            ++index;
-            if (extra.tokenize) {
-                if (code === 0x28) {
-                    extra.openParenToken = extra.tokens.length;
-                } else if (code === 0x7B) {
-                    extra.openCurlyToken = extra.tokens.length;
-                }
-            }
-            return {
-                type: Token.Punctuator,
-                value: String.fromCharCode(code),
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-
-        default:
-            code2 = source.charCodeAt(index + 1);
-
-            // '=' (U+003D) marks an assignment or comparison operator.
-            if (code2 === 0x3D) {
-                switch (code) {
-                case 0x2B:  // +
-                case 0x2D:  // -
-                case 0x2F:  // /
-                case 0x3C:  // <
-                case 0x3E:  // >
-                case 0x5E:  // ^
-                case 0x7C:  // |
-                case 0x25:  // %
-                case 0x26:  // &
-                case 0x2A:  // *
-                    index += 2;
-                    return {
-                        type: Token.Punctuator,
-                        value: String.fromCharCode(code) + String.fromCharCode(code2),
-                        lineNumber: lineNumber,
-                        lineStart: lineStart,
-                        start: start,
-                        end: index
-                    };
-
-                case 0x21: // !
-                case 0x3D: // =
-                    index += 2;
-
-                    // !== and ===
-                    if (source.charCodeAt(index) === 0x3D) {
-                        ++index;
-                    }
-                    return {
-                        type: Token.Punctuator,
-                        value: source.slice(start, index),
-                        lineNumber: lineNumber,
-                        lineStart: lineStart,
-                        start: start,
-                        end: index
-                    };
-                }
-            }
-        }
-
-        // 4-character punctuator: >>>=
-
-        ch4 = source.substr(index, 4);
-
-        if (ch4 === '>>>=') {
-            index += 4;
-            return {
-                type: Token.Punctuator,
-                value: ch4,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        // 3-character punctuators: === !== >>> <<= >>=
-
-        ch3 = ch4.substr(0, 3);
-
-        if (ch3 === '>>>' || ch3 === '<<=' || ch3 === '>>=') {
-            index += 3;
-            return {
-                type: Token.Punctuator,
-                value: ch3,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        // Other 2-character punctuators: ++ -- << >> && ||
-        ch2 = ch3.substr(0, 2);
-
-        if ((ch1 === ch2[1] && ('+-<>&|'.indexOf(ch1) >= 0)) || ch2 === '=>') {
-            index += 2;
-            return {
-                type: Token.Punctuator,
-                value: ch2,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        // 1-character punctuators: < > = ! + - * % & | ^ /
-
-        if ('<>=!+-*%&|^/'.indexOf(ch1) >= 0) {
-            ++index;
-            return {
-                type: Token.Punctuator,
-                value: ch1,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        throwUnexpectedToken();
-    }
-
-    // 7.8.3 Numeric Literals
-
-    function scanHexLiteral(start) {
-        var number = '';
-
-        while (index < length) {
-            if (!isHexDigit(source[index])) {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (number.length === 0) {
-            throwUnexpectedToken();
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt('0x' + number, 16),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function scanBinaryLiteral(start) {
-        var ch, number;
-
-        number = '';
-
-        while (index < length) {
-            ch = source[index];
-            if (ch !== '0' && ch !== '1') {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (number.length === 0) {
-            // only 0b or 0B
-            throwUnexpectedToken();
-        }
-
-        if (index < length) {
-            ch = source.charCodeAt(index);
-            /* istanbul ignore else */
-            if (isIdentifierStart(ch) || isDecimalDigit(ch)) {
-                throwUnexpectedToken();
-            }
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt(number, 2),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function scanOctalLiteral(prefix, start) {
-        var number, octal;
-
-        if (isOctalDigit(prefix)) {
-            octal = true;
-            number = '0' + source[index++];
-        } else {
-            octal = false;
-            ++index;
-            number = '';
-        }
-
-        while (index < length) {
-            if (!isOctalDigit(source[index])) {
-                break;
-            }
-            number += source[index++];
-        }
-
-        if (!octal && number.length === 0) {
-            // only 0o or 0O
-            throwUnexpectedToken();
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index)) || isDecimalDigit(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseInt(number, 8),
-            octal: octal,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function isImplicitOctalLiteral() {
-        var i, ch;
-
-        // Implicit octal, unless there is a non-octal digit.
-        // (Annex B.1.1 on Numeric Literals)
-        for (i = index + 1; i < length; ++i) {
-            ch = source[i];
-            if (ch === '8' || ch === '9') {
-                return false;
-            }
-            if (!isOctalDigit(ch)) {
-                return true;
-            }
-        }
-
-        return true;
-    }
-
-    function scanNumericLiteral() {
-        var number, start, ch;
-
-        ch = source[index];
-        assert(isDecimalDigit(ch.charCodeAt(0)) || (ch === '.'),
-            'Numeric literal must start with a decimal digit or a decimal point');
-
-        start = index;
-        number = '';
-        if (ch !== '.') {
-            number = source[index++];
-            ch = source[index];
-
-            // Hex number starts with '0x'.
-            // Octal number starts with '0'.
-            // Octal number in ES6 starts with '0o'.
-            // Binary number in ES6 starts with '0b'.
-            if (number === '0') {
-                if (ch === 'x' || ch === 'X') {
-                    ++index;
-                    return scanHexLiteral(start);
-                }
-                if (ch === 'b' || ch === 'B') {
-                    ++index;
-                    return scanBinaryLiteral(start);
-                }
-                if (ch === 'o' || ch === 'O') {
-                    return scanOctalLiteral(ch, start);
-                }
-
-                if (isOctalDigit(ch)) {
-                    if (isImplicitOctalLiteral()) {
-                        return scanOctalLiteral(ch, start);
-                    }
-                }
-            }
-
-            while (isDecimalDigit(source.charCodeAt(index))) {
-                number += source[index++];
-            }
-            ch = source[index];
-        }
-
-        if (ch === '.') {
-            number += source[index++];
-            while (isDecimalDigit(source.charCodeAt(index))) {
-                number += source[index++];
-            }
-            ch = source[index];
-        }
-
-        if (ch === 'e' || ch === 'E') {
-            number += source[index++];
-
-            ch = source[index];
-            if (ch === '+' || ch === '-') {
-                number += source[index++];
-            }
-            if (isDecimalDigit(source.charCodeAt(index))) {
-                while (isDecimalDigit(source.charCodeAt(index))) {
-                    number += source[index++];
-                }
-            } else {
-                throwUnexpectedToken();
-            }
-        }
-
-        if (isIdentifierStart(source.charCodeAt(index))) {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.NumericLiteral,
-            value: parseFloat(number),
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    // 7.8.4 String Literals
-
-    function scanStringLiteral() {
-        var str = '', quote, start, ch, code, unescaped, restore, octal = false, startLineNumber, startLineStart;
-        startLineNumber = lineNumber;
-        startLineStart = lineStart;
-
-        quote = source[index];
-        assert((quote === '\'' || quote === '"'),
-            'String literal must starts with a quote');
-
-        start = index;
-        ++index;
-
-        while (index < length) {
-            ch = source[index++];
-
-            if (ch === quote) {
-                quote = '';
-                break;
-            } else if (ch === '\\') {
-                ch = source[index++];
-                if (!ch || !isLineTerminator(ch.charCodeAt(0))) {
-                    switch (ch) {
-                    case 'u':
-                    case 'x':
-                        if (source[index] === '{') {
-                            ++index;
-                            str += scanUnicodeCodePointEscape();
-                        } else {
-                            restore = index;
-                            unescaped = scanHexEscape(ch);
-                            if (unescaped) {
-                                str += unescaped;
-                            } else {
-                                index = restore;
-                                str += ch;
-                            }
-                        }
-                        break;
-                    case 'n':
-                        str += '\n';
-                        break;
-                    case 'r':
-                        str += '\r';
-                        break;
-                    case 't':
-                        str += '\t';
-                        break;
-                    case 'b':
-                        str += '\b';
-                        break;
-                    case 'f':
-                        str += '\f';
-                        break;
-                    case 'v':
-                        str += '\x0B';
-                        break;
-
-                    default:
-                        if (isOctalDigit(ch)) {
-                            code = '01234567'.indexOf(ch);
-
-                            // \0 is not octal escape sequence
-                            if (code !== 0) {
-                                octal = true;
-                            }
-
-                            if (index < length && isOctalDigit(source[index])) {
-                                octal = true;
-                                code = code * 8 + '01234567'.indexOf(source[index++]);
-
-                                // 3 digits are only allowed when string starts
-                                // with 0, 1, 2, 3
-                                if ('0123'.indexOf(ch) >= 0 &&
-                                        index < length &&
-                                        isOctalDigit(source[index])) {
-                                    code = code * 8 + '01234567'.indexOf(source[index++]);
-                                }
-                            }
-                            str += String.fromCharCode(code);
-                        } else {
-                            str += ch;
-                        }
-                        break;
-                    }
-                } else {
-                    ++lineNumber;
-                    if (ch === '\r' && source[index] === '\n') {
-                        ++index;
-                    }
-                    lineStart = index;
-                }
-            } else if (isLineTerminator(ch.charCodeAt(0))) {
-                break;
-            } else {
-                str += ch;
-            }
-        }
-
-        if (quote !== '') {
-            throwUnexpectedToken();
-        }
-
-        return {
-            type: Token.StringLiteral,
-            value: str,
-            octal: octal,
-            startLineNumber: startLineNumber,
-            startLineStart: startLineStart,
-            lineNumber: lineNumber,
-            lineStart: lineStart,
-            start: start,
-            end: index
-        };
-    }
-
-    function testRegExp(pattern, flags) {
-        var tmp = pattern,
-            value;
-
-        if (flags.indexOf('u') >= 0) {
-            // Replace each astral symbol and every Unicode code point
-            // escape sequence with a single ASCII symbol to avoid throwing on
-            // regular expressions that are only valid in combination with the
-            // `/u` flag.
-            // Note: replacing with the ASCII symbol `x` might cause false
-            // negatives in unlikely scenarios. For example, `[\u{61}-b]` is a
-            // perfectly valid pattern that is equivalent to `[a-b]`, but it
-            // would be replaced by `[x-b]` which throws an error.
-            tmp = tmp
-                .replace(/\\u\{([0-9a-fA-F]+)\}/g, function ($0, $1) {
-                    if (parseInt($1, 16) <= 0x10FFFF) {
-                        return 'x';
-                    }
-                    throwError(Messages.InvalidRegExp);
-                })
-                .replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, 'x');
-        }
-
-        // First, detect invalid regular expressions.
-        try {
-            value = new RegExp(tmp);
-        } catch (e) {
-            throwError(Messages.InvalidRegExp);
-        }
-
-        // Return a regular expression object for this pattern-flag pair, or
-        // `null` in case the current environment doesn't support the flags it
-        // uses.
-        try {
-            return new RegExp(pattern, flags);
-        } catch (exception) {
-            return null;
-        }
-    }
-
-    function scanRegExpBody() {
-        var ch, str, classMarker, terminated, body;
-
-        ch = source[index];
-        assert(ch === '/', 'Regular expression literal must start with a slash');
-        str = source[index++];
-
-        classMarker = false;
-        terminated = false;
-        while (index < length) {
-            ch = source[index++];
-            str += ch;
-            if (ch === '\\') {
-                ch = source[index++];
-                // ECMA-262 7.8.5
-                if (isLineTerminator(ch.charCodeAt(0))) {
-                    throwError(Messages.UnterminatedRegExp);
-                }
-                str += ch;
-            } else if (isLineTerminator(ch.charCodeAt(0))) {
-                throwError(Messages.UnterminatedRegExp);
-            } else if (classMarker) {
-                if (ch === ']') {
-                    classMarker = false;
-                }
-            } else {
-                if (ch === '/') {
-                    terminated = true;
-                    break;
-                } else if (ch === '[') {
-                    classMarker = true;
-                }
-            }
-        }
-
-        if (!terminated) {
-            throwError(Messages.UnterminatedRegExp);
-        }
-
-        // Exclude leading and trailing slash.
-        body = str.substr(1, str.length - 2);
-        return {
-            value: body,
-            literal: str
-        };
-    }
-
-    function scanRegExpFlags() {
-        var ch, str, flags, restore;
-
-        str = '';
-        flags = '';
-        while (index < length) {
-            ch = source[index];
-            if (!isIdentifierPart(ch.charCodeAt(0))) {
-                break;
-            }
-
-            ++index;
-            if (ch === '\\' && index < length) {
-                ch = source[index];
-                if (ch === 'u') {
-                    ++index;
-                    restore = index;
-                    ch = scanHexEscape('u');
-                    if (ch) {
-                        flags += ch;
-                        for (str += '\\u'; restore < index; ++restore) {
-                            str += source[restore];
-                        }
-                    } else {
-                        index = restore;
-                        flags += 'u';
-                        str += '\\u';
-                    }
-                    tolerateUnexpectedToken();
-                } else {
-                    str += '\\';
-                    tolerateUnexpectedToken();
-                }
-            } else {
-                flags += ch;
-                str += ch;
-            }
-        }
-
-        return {
-            value: flags,
-            literal: str
-        };
-    }
-
-    function scanRegExp() {
-        var start, body, flags, value;
-
-        lookahead = null;
-        skipComment();
-        start = index;
-
-        body = scanRegExpBody();
-        flags = scanRegExpFlags();
-        value = testRegExp(body.value, flags.value);
-
-        if (extra.tokenize) {
-            return {
-                type: Token.RegularExpression,
-                value: value,
-                regex: {
-                    pattern: body.value,
-                    flags: flags.value
-                },
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: start,
-                end: index
-            };
-        }
-
-        return {
-            literal: body.literal + flags.literal,
-            value: value,
-            regex: {
-                pattern: body.value,
-                flags: flags.value
-            },
-            start: start,
-            end: index
-        };
-    }
-
-    function collectRegex() {
-        var pos, loc, regex, token;
-
-        skipComment();
-
-        pos = index;
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        regex = scanRegExp();
-
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        /* istanbul ignore next */
-        if (!extra.tokenize) {
-            // Pop the previous token, which is likely '/' or '/='
-            if (extra.tokens.length > 0) {
-                token = extra.tokens[extra.tokens.length - 1];
-                if (token.range[0] === pos && token.type === 'Punctuator') {
-                    if (token.value === '/' || token.value === '/=') {
-                        extra.tokens.pop();
-                    }
-                }
-            }
-
-            extra.tokens.push({
-                type: 'RegularExpression',
-                value: regex.literal,
-                regex: regex.regex,
-                range: [pos, index],
-                loc: loc
-            });
-        }
-
-        return regex;
-    }
-
-    function isIdentifierName(token) {
-        return token.type === Token.Identifier ||
-            token.type === Token.Keyword ||
-            token.type === Token.BooleanLiteral ||
-            token.type === Token.NullLiteral;
-    }
-
-    function advanceSlash() {
-        var prevToken,
-            checkToken;
-        // Using the following algorithm:
-        // https://github.com/mozilla/sweet.js/wiki/design
-        prevToken = extra.tokens[extra.tokens.length - 1];
-        if (!prevToken) {
-            // Nothing before that: it cannot be a division.
-            return collectRegex();
-        }
-        if (prevToken.type === 'Punctuator') {
-            if (prevToken.value === ']') {
-                return scanPunctuator();
-            }
-            if (prevToken.value === ')') {
-                checkToken = extra.tokens[extra.openParenToken - 1];
-                if (checkToken &&
-                        checkToken.type === 'Keyword' &&
-                        (checkToken.value === 'if' ||
-                         checkToken.value === 'while' ||
-                         checkToken.value === 'for' ||
-                         checkToken.value === 'with')) {
-                    return collectRegex();
-                }
-                return scanPunctuator();
-            }
-            if (prevToken.value === '}') {
-                // Dividing a function by anything makes little sense,
-                // but we have to check for that.
-                if (extra.tokens[extra.openCurlyToken - 3] &&
-                        extra.tokens[extra.openCurlyToken - 3].type === 'Keyword') {
-                    // Anonymous function.
-                    checkToken = extra.tokens[extra.openCurlyToken - 4];
-                    if (!checkToken) {
-                        return scanPunctuator();
-                    }
-                } else if (extra.tokens[extra.openCurlyToken - 4] &&
-                        extra.tokens[extra.openCurlyToken - 4].type === 'Keyword') {
-                    // Named function.
-                    checkToken = extra.tokens[extra.openCurlyToken - 5];
-                    if (!checkToken) {
-                        return collectRegex();
-                    }
-                } else {
-                    return scanPunctuator();
-                }
-                // checkToken determines whether the function is
-                // a declaration or an expression.
-                if (FnExprTokens.indexOf(checkToken.value) >= 0) {
-                    // It is an expression.
-                    return scanPunctuator();
-                }
-                // It is a declaration.
-                return collectRegex();
-            }
-            return collectRegex();
-        }
-        if (prevToken.type === 'Keyword' && prevToken.value !== 'this') {
-            return collectRegex();
-        }
-        return scanPunctuator();
-    }
-
-    function advance() {
-        var ch;
-
-        skipComment();
-
-        if (index >= length) {
-            return {
-                type: Token.EOF,
-                lineNumber: lineNumber,
-                lineStart: lineStart,
-                start: index,
-                end: index
-            };
-        }
-
-        ch = source.charCodeAt(index);
-
-        if (isIdentifierStart(ch)) {
-            return scanIdentifier();
-        }
-
-        // Very common: ( and ) and ;
-        if (ch === 0x28 || ch === 0x29 || ch === 0x3B) {
-            return scanPunctuator();
-        }
-
-        // String literal starts with single quote (U+0027) or double quote (U+0022).
-        if (ch === 0x27 || ch === 0x22) {
-            return scanStringLiteral();
-        }
-
-
-        // Dot (.) U+002E can also start a floating-point number, hence the need
-        // to check the next character.
-        if (ch === 0x2E) {
-            if (isDecimalDigit(source.charCodeAt(index + 1))) {
-                return scanNumericLiteral();
-            }
-            return scanPunctuator();
-        }
-
-        if (isDecimalDigit(ch)) {
-            return scanNumericLiteral();
-        }
-
-        // Slash (/) U+002F can also start a regex.
-        if (extra.tokenize && ch === 0x2F) {
-            return advanceSlash();
-        }
-
-        return scanPunctuator();
-    }
-
-    function collectToken() {
-        var loc, token, value, entry;
-
-        skipComment();
-        loc = {
-            start: {
-                line: lineNumber,
-                column: index - lineStart
-            }
-        };
-
-        token = advance();
-        loc.end = {
-            line: lineNumber,
-            column: index - lineStart
-        };
-
-        if (token.type !== Token.EOF) {
-            value = source.slice(token.start, token.end);
-            entry = {
-                type: TokenName[token.type],
-                value: value,
-                range: [token.start, token.end],
-                loc: loc
-            };
-            if (token.regex) {
-                entry.regex = {
-                    pattern: token.regex.pattern,
-                    flags: token.regex.flags
-                };
-            }
-            extra.tokens.push(entry);
-        }
-
-        return token;
-    }
-
-    function lex() {
-        var token;
-
-        token = lookahead;
-        index = token.end;
-        lineNumber = token.lineNumber;
-        lineStart = token.lineStart;
-
-        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
-
-        index = token.end;
-        lineNumber = token.lineNumber;
-        lineStart = token.lineStart;
-
-        return token;
-    }
-
-    function peek() {
-        var pos, line, start;
-
-        pos = index;
-        line = lineNumber;
-        start = lineStart;
-        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
-        index = pos;
-        lineNumber = line;
-        lineStart = start;
-    }
-
-    function Position() {
-        this.line = lineNumber;
-        this.column = index - lineStart;
-    }
-
-    function SourceLocation() {
-        this.start = new Position();
-        this.end = null;
-    }
-
-    function WrappingSourceLocation(startToken) {
-        if (startToken.type === Token.StringLiteral) {
-            this.start = {
-                line: startToken.startLineNumber,
-                column: startToken.start - startToken.startLineStart
-            };
-        } else {
-            this.start = {
-                line: startToken.lineNumber,
-                column: startToken.start - startToken.lineStart
-            };
-        }
-        this.end = null;
-    }
-
-    function Node() {
-        // Skip comment.
-        index = lookahead.start;
-        if (lookahead.type === Token.StringLiteral) {
-            lineNumber = lookahead.startLineNumber;
-            lineStart = lookahead.startLineStart;
-        } else {
-            lineNumber = lookahead.lineNumber;
-            lineStart = lookahead.lineStart;
-        }
-        if (extra.range) {
-            this.range = [index, 0];
-        }
-        if (extra.loc) {
-            this.loc = new SourceLocation();
-        }
-    }
-
-    function WrappingNode(startToken) {
-        if (extra.range) {
-            this.range = [startToken.start, 0];
-        }
-        if (extra.loc) {
-            this.loc = new WrappingSourceLocation(startToken);
-        }
-    }
-
-    WrappingNode.prototype = Node.prototype = {
-
-        processComment: function () {
-            var lastChild,
-                leadingComments,
-                trailingComments,
-                bottomRight = extra.bottomRightStack,
-                i,
-                comment,
-                last = bottomRight[bottomRight.length - 1];
-
-            if (this.type === Syntax.Program) {
-                if (this.body.length > 0) {
-                    return;
-                }
-            }
-
-            if (extra.trailingComments.length > 0) {
-                trailingComments = [];
-                for (i = extra.trailingComments.length - 1; i >= 0; --i) {
-                    comment = extra.trailingComments[i];
-                    if (comment.range[0] >= this.range[1]) {
-                        trailingComments.unshift(comment);
-                        extra.trailingComments.splice(i, 1);
-                    }
-                }
-                extra.trailingComments = [];
-            } else {
-                if (last && last.trailingComments && last.trailingComments[0].range[0] >= this.range[1]) {
-                    trailingComments = last.trailingComments;
-                    delete last.trailingComments;
-                }
-            }
-
-            // Eating the stack.
-            if (last) {
-                while (last && last.range[0] >= this.range[0]) {
-                    lastChild = last;
-                    last = bottomRight.pop();
-                }
-            }
-
-            if (lastChild) {
-                if (lastChild.leadingComments && lastChild.leadingComments[lastChild.leadingComments.length - 1].range[1] <= this.range[0]) {
-                    this.leadingComments = lastChild.leadingComments;
-                    lastChild.leadingComments = undefined;
-                }
-            } else if (extra.leadingComments.length > 0) {
-                leadingComments = [];
-                for (i = extra.leadingComments.length - 1; i >= 0; --i) {
-                    comment = extra.leadingComments[i];
-                    if (comment.range[1] <= this.range[0]) {
-                        leadingComments.unshift(comment);
-                        extra.leadingComments.splice(i, 1);
-                    }
-                }
-            }
-
-
-            if (leadingComments && leadingComments.length > 0) {
-                this.leadingComments = leadingComments;
-            }
-            if (trailingComments && trailingComments.length > 0) {
-                this.trailingComments = trailingComments;
-            }
-
-            bottomRight.push(this);
-        },
-
-        finish: function () {
-            if (extra.range) {
-                this.range[1] = index;
-            }
-            if (extra.loc) {
-                this.loc.end = new Position();
-                if (extra.source) {
-                    this.loc.source = extra.source;
-                }
-            }
-
-            if (extra.attachComment) {
-                this.processComment();
-            }
-        },
-
-        finishArrayExpression: function (elements) {
-            this.type = Syntax.ArrayExpression;
-            this.elements = elements;
-            this.finish();
-            return this;
-        },
-
-        finishArrowFunctionExpression: function (params, defaults, body, expression) {
-            this.type = Syntax.ArrowFunctionExpression;
-            this.id = null;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.rest = null;
-            this.generator = false;
-            this.expression = expression;
-            this.finish();
-            return this;
-        },
-
-        finishAssignmentExpression: function (operator, left, right) {
-            this.type = Syntax.AssignmentExpression;
-            this.operator = operator;
-            this.left = left;
-            this.right = right;
-            this.finish();
-            return this;
-        },
-
-        finishBinaryExpression: function (operator, left, right) {
-            this.type = (operator === '||' || operator === '&&') ? Syntax.LogicalExpression : Syntax.BinaryExpression;
-            this.operator = operator;
-            this.left = left;
-            this.right = right;
-            this.finish();
-            return this;
-        },
-
-        finishBlockStatement: function (body) {
-            this.type = Syntax.BlockStatement;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishBreakStatement: function (label) {
-            this.type = Syntax.BreakStatement;
-            this.label = label;
-            this.finish();
-            return this;
-        },
-
-        finishCallExpression: function (callee, args) {
-            this.type = Syntax.CallExpression;
-            this.callee = callee;
-            this.arguments = args;
-            this.finish();
-            return this;
-        },
-
-        finishCatchClause: function (param, body) {
-            this.type = Syntax.CatchClause;
-            this.param = param;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishConditionalExpression: function (test, consequent, alternate) {
-            this.type = Syntax.ConditionalExpression;
-            this.test = test;
-            this.consequent = consequent;
-            this.alternate = alternate;
-            this.finish();
-            return this;
-        },
-
-        finishContinueStatement: function (label) {
-            this.type = Syntax.ContinueStatement;
-            this.label = label;
-            this.finish();
-            return this;
-        },
-
-        finishDebuggerStatement: function () {
-            this.type = Syntax.DebuggerStatement;
-            this.finish();
-            return this;
-        },
-
-        finishDoWhileStatement: function (body, test) {
-            this.type = Syntax.DoWhileStatement;
-            this.body = body;
-            this.test = test;
-            this.finish();
-            return this;
-        },
-
-        finishEmptyStatement: function () {
-            this.type = Syntax.EmptyStatement;
-            this.finish();
-            return this;
-        },
-
-        finishExpressionStatement: function (expression) {
-            this.type = Syntax.ExpressionStatement;
-            this.expression = expression;
-            this.finish();
-            return this;
-        },
-
-        finishForStatement: function (init, test, update, body) {
-            this.type = Syntax.ForStatement;
-            this.init = init;
-            this.test = test;
-            this.update = update;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishForInStatement: function (left, right, body) {
-            this.type = Syntax.ForInStatement;
-            this.left = left;
-            this.right = right;
-            this.body = body;
-            this.each = false;
-            this.finish();
-            return this;
-        },
-
-        finishFunctionDeclaration: function (id, params, defaults, body) {
-            this.type = Syntax.FunctionDeclaration;
-            this.id = id;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.rest = null;
-            this.generator = false;
-            this.expression = false;
-            this.finish();
-            return this;
-        },
-
-        finishFunctionExpression: function (id, params, defaults, body) {
-            this.type = Syntax.FunctionExpression;
-            this.id = id;
-            this.params = params;
-            this.defaults = defaults;
-            this.body = body;
-            this.rest = null;
-            this.generator = false;
-            this.expression = false;
-            this.finish();
-            return this;
-        },
-
-        finishIdentifier: function (name) {
-            this.type = Syntax.Identifier;
-            this.name = name;
-            this.finish();
-            return this;
-        },
-
-        finishIfStatement: function (test, consequent, alternate) {
-            this.type = Syntax.IfStatement;
-            this.test = test;
-            this.consequent = consequent;
-            this.alternate = alternate;
-            this.finish();
-            return this;
-        },
-
-        finishLabeledStatement: function (label, body) {
-            this.type = Syntax.LabeledStatement;
-            this.label = label;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishLiteral: function (token) {
-            this.type = Syntax.Literal;
-            this.value = token.value;
-            this.raw = source.slice(token.start, token.end);
-            if (token.regex) {
-                this.regex = token.regex;
-            }
-            this.finish();
-            return this;
-        },
-
-        finishMemberExpression: function (accessor, object, property) {
-            this.type = Syntax.MemberExpression;
-            this.computed = accessor === '[';
-            this.object = object;
-            this.property = property;
-            this.finish();
-            return this;
-        },
-
-        finishNewExpression: function (callee, args) {
-            this.type = Syntax.NewExpression;
-            this.callee = callee;
-            this.arguments = args;
-            this.finish();
-            return this;
-        },
-
-        finishObjectExpression: function (properties) {
-            this.type = Syntax.ObjectExpression;
-            this.properties = properties;
-            this.finish();
-            return this;
-        },
-
-        finishPostfixExpression: function (operator, argument) {
-            this.type = Syntax.UpdateExpression;
-            this.operator = operator;
-            this.argument = argument;
-            this.prefix = false;
-            this.finish();
-            return this;
-        },
-
-        finishProgram: function (body) {
-            this.type = Syntax.Program;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishProperty: function (kind, key, value, method, shorthand) {
-            this.type = Syntax.Property;
-            this.key = key;
-            this.value = value;
-            this.kind = kind;
-            this.method = method;
-            this.shorthand = shorthand;
-            this.finish();
-            return this;
-        },
-
-        finishReturnStatement: function (argument) {
-            this.type = Syntax.ReturnStatement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishSequenceExpression: function (expressions) {
-            this.type = Syntax.SequenceExpression;
-            this.expressions = expressions;
-            this.finish();
-            return this;
-        },
-
-        finishSwitchCase: function (test, consequent) {
-            this.type = Syntax.SwitchCase;
-            this.test = test;
-            this.consequent = consequent;
-            this.finish();
-            return this;
-        },
-
-        finishSwitchStatement: function (discriminant, cases) {
-            this.type = Syntax.SwitchStatement;
-            this.discriminant = discriminant;
-            this.cases = cases;
-            this.finish();
-            return this;
-        },
-
-        finishThisExpression: function () {
-            this.type = Syntax.ThisExpression;
-            this.finish();
-            return this;
-        },
-
-        finishThrowStatement: function (argument) {
-            this.type = Syntax.ThrowStatement;
-            this.argument = argument;
-            this.finish();
-            return this;
-        },
-
-        finishTryStatement: function (block, guardedHandlers, handlers, finalizer) {
-            this.type = Syntax.TryStatement;
-            this.block = block;
-            this.guardedHandlers = guardedHandlers;
-            this.handlers = handlers;
-            this.finalizer = finalizer;
-            this.finish();
-            return this;
-        },
-
-        finishUnaryExpression: function (operator, argument) {
-            this.type = (operator === '++' || operator === '--') ? Syntax.UpdateExpression : Syntax.UnaryExpression;
-            this.operator = operator;
-            this.argument = argument;
-            this.prefix = true;
-            this.finish();
-            return this;
-        },
-
-        finishVariableDeclaration: function (declarations, kind) {
-            this.type = Syntax.VariableDeclaration;
-            this.declarations = declarations;
-            this.kind = kind;
-            this.finish();
-            return this;
-        },
-
-        finishVariableDeclarator: function (id, init) {
-            this.type = Syntax.VariableDeclarator;
-            this.id = id;
-            this.init = init;
-            this.finish();
-            return this;
-        },
-
-        finishWhileStatement: function (test, body) {
-            this.type = Syntax.WhileStatement;
-            this.test = test;
-            this.body = body;
-            this.finish();
-            return this;
-        },
-
-        finishWithStatement: function (object, body) {
-            this.type = Syntax.WithStatement;
-            this.object = object;
-            this.body = body;
-            this.finish();
-            return this;
-        }
-    };
-
-    // Return true if there is a line terminator before the next token.
-
-    function peekLineTerminator() {
-        var pos, line, start, found;
-
-        pos = index;
-        line = lineNumber;
-        start = lineStart;
-        skipComment();
-        found = lineNumber !== line;
-        index = pos;
-        lineNumber = line;
-        lineStart = start;
-
-        return found;
-    }
-
-    function createError(line, pos, description) {
-        var error = new Error('Line ' + line + ': ' + description);
-        error.index = pos;
-        error.lineNumber = line;
-        error.column = pos - lineStart + 1;
-        error.description = description;
-        return error;
-    }
-
-    // Throw an exception
-
-    function throwError(messageFormat) {
-        var args, msg;
-
-        args = Array.prototype.slice.call(arguments, 1);
-        msg = messageFormat.replace(/%(\d)/g,
-            function (whole, idx) {
-                assert(idx < args.length, 'Message reference must be in range');
-                return args[idx];
-            }
-        );
-
-        throw createError(lineNumber, index, msg);
-    }
-
-    function tolerateError(messageFormat) {
-        var args, msg, error;
-
-        args = Array.prototype.slice.call(arguments, 1);
-        /* istanbul ignore next */
-        msg = messageFormat.replace(/%(\d)/g,
-            function (whole, idx) {
-                assert(idx < args.length, 'Message reference must be in range');
-                return args[idx];
-            }
-        );
-
-        error = createError(lineNumber, index, msg);
-        if (extra.errors) {
-            extra.errors.push(error);
-        } else {
-            throw error;
-        }
-    }
-
-    // Throw an exception because of the token.
-
-    function unexpectedTokenError(token, message) {
-        var msg = Messages.UnexpectedToken;
-
-        if (token) {
-            msg = message ? message :
-                (token.type === Token.EOF) ? Messages.UnexpectedEOS :
-                (token.type === Token.Identifier) ? Messages.UnexpectedIdentifier :
-                (token.type === Token.NumericLiteral) ? Messages.UnexpectedNumber :
-                (token.type === Token.StringLiteral) ? Messages.UnexpectedString :
-                Messages.UnexpectedToken;
-
-            if (token.type === Token.Keyword) {
-                if (isFutureReservedWord(token.value)) {
-                    msg = Messages.UnexpectedReserved;
-                } else if (strict && isStrictModeReservedWord(token.value)) {
-                    msg = Messages.StrictReservedWord;
-                }
-            }
-        }
-
-        msg = msg.replace('%0', token ? token.value : 'ILLEGAL');
-
-        return (token && typeof token.lineNumber === 'number') ?
-            createError(token.lineNumber, token.start, msg) :
-            createError(lineNumber, index, msg);
-    }
-
-    function throwUnexpectedToken(token, message) {
-        throw unexpectedTokenError(token, message);
-    }
-
-    function tolerateUnexpectedToken(token, message) {
-        var error = unexpectedTokenError(token, message);
-        if (extra.errors) {
-            extra.errors.push(error);
-        } else {
-            throw error;
-        }
-    }
-
-    // Expect the next token to match the specified punctuator.
-    // If not, an exception will be thrown.
-
-    function expect(value) {
-        var token = lex();
-        if (token.type !== Token.Punctuator || token.value !== value) {
-            throwUnexpectedToken(token);
-        }
-    }
-
-    /**
-     * @name expectCommaSeparator
-     * @description Quietly expect a comma when in tolerant mode, otherwise delegates
-     * to <code>expect(value)</code>
-     * @since 2.0
-     */
-    function expectCommaSeparator() {
-        var token;
-
-        if (extra.errors) {
-            token = lookahead;
-            if (token.type === Token.Punctuator && token.value === ',') {
-                lex();
-            } else if (token.type === Token.Punctuator && token.value === ';') {
-                lex();
-                tolerateUnexpectedToken(token);
-            } else {
-                tolerateUnexpectedToken(token, Messages.UnexpectedToken);
-            }
-        } else {
-            expect(',');
-        }
-    }
-
-    // Expect the next token to match the specified keyword.
-    // If not, an exception will be thrown.
-
-    function expectKeyword(keyword) {
-        var token = lex();
-        if (token.type !== Token.Keyword || token.value !== keyword) {
-            throwUnexpectedToken(token);
-        }
-    }
-
-    // Return true if the next token matches the specified punctuator.
-
-    function match(value) {
-        return lookahead.type === Token.Punctuator && lookahead.value === value;
-    }
-
-    // Return true if the next token matches the specified keyword
-
-    function matchKeyword(keyword) {
-        return lookahead.type === Token.Keyword && lookahead.value === keyword;
-    }
-
-    // Return true if the next token is an assignment operator
-
-    function matchAssign() {
-        var op;
-
-        if (lookahead.type !== Token.Punctuator) {
-            return false;
-        }
-        op = lookahead.value;
-        return op === '=' ||
-            op === '*=' ||
-            op === '/=' ||
-            op === '%=' ||
-            op === '+=' ||
-            op === '-=' ||
-            op === '<<=' ||
-            op === '>>=' ||
-            op === '>>>=' ||
-            op === '&=' ||
-            op === '^=' ||
-            op === '|=';
-    }
-
-    function consumeSemicolon() {
-        var line, oldIndex = index, oldLineNumber = lineNumber,
-            oldLineStart = lineStart, oldLookahead = lookahead;
-
-        // Catch the very common case first: immediately a semicolon (U+003B).
-        if (source.charCodeAt(index) === 0x3B || match(';')) {
-            lex();
-            return;
-        }
-
-        line = lineNumber;
-        skipComment();
-        if (lineNumber !== line) {
-            index = oldIndex;
-            lineNumber = oldLineNumber;
-            lineStart = oldLineStart;
-            lookahead = oldLookahead;
-            return;
-        }
-
-        if (lookahead.type !== Token.EOF && !match('}')) {
-            throwUnexpectedToken(lookahead);
-        }
-    }
-
-    // Return true if provided expression is LeftHandSideExpression
-
-    function isLeftHandSide(expr) {
-        return expr.type === Syntax.Identifier || expr.type === Syntax.MemberExpression;
-    }
-
-    // 11.1.4 Array Initialiser
-
-    function parseArrayInitialiser() {
-        var elements = [], node = new Node();
-
-        expect('[');
-
-        while (!match(']')) {
-            if (match(',')) {
-                lex();
-                elements.push(null);
-            } else {
-                elements.push(parseAssignmentExpression());
-
-                if (!match(']')) {
-                    expect(',');
-                }
-            }
-        }
-
-        lex();
-
-        return node.finishArrayExpression(elements);
-    }
-
-    // 11.1.5 Object Initialiser
-
-    function parsePropertyFunction(param, first) {
-        var previousStrict, body, node = new Node();
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (first && strict && isRestrictedWord(param[0].name)) {
-            tolerateUnexpectedToken(first, Messages.StrictParamName);
-        }
-        strict = previousStrict;
-        return node.finishFunctionExpression(null, param, [], body);
-    }
-
-    function parsePropertyMethodFunction() {
-        var previousStrict, param, method;
-
-        previousStrict = strict;
-        strict = true;
-        param = parseParams();
-        method = parsePropertyFunction(param.params);
-        strict = previousStrict;
-
-        return method;
-    }
-
-    function parseObjectPropertyKey() {
-        var token, node = new Node();
-
-        token = lex();
-
-        // Note: This function is called only from parseObjectProperty(), where
-        // EOF and Punctuator tokens are already filtered out.
-
-        if (token.type === Token.StringLiteral || token.type === Token.NumericLiteral) {
-            if (strict && token.octal) {
-                tolerateUnexpectedToken(token, Messages.StrictOctalLiteral);
-            }
-            return node.finishLiteral(token);
-        }
-
-        return node.finishIdentifier(token.value);
-    }
-
-    function parseObjectProperty() {
-        var token, key, id, value, param, node = new Node();
-
-        token = lookahead;
-
-        if (token.type === Token.Identifier) {
-
-            id = parseObjectPropertyKey();
-
-            // Property Assignment: Getter and Setter.
-
-            if (token.value === 'get' && !(match(':') || match('('))) {
-                key = parseObjectPropertyKey();
-                expect('(');
-                expect(')');
-                value = parsePropertyFunction([]);
-                return node.finishProperty('get', key, value, false, false);
-            }
-            if (token.value === 'set' && !(match(':') || match('('))) {
-                key = parseObjectPropertyKey();
-                expect('(');
-                token = lookahead;
-                if (token.type !== Token.Identifier) {
-                    expect(')');
-                    tolerateUnexpectedToken(token);
-                    value = parsePropertyFunction([]);
-                } else {
-                    param = [ parseVariableIdentifier() ];
-                    expect(')');
-                    value = parsePropertyFunction(param, token);
-                }
-                return node.finishProperty('set', key, value, false, false);
-            }
-            if (match(':')) {
-                lex();
-                value = parseAssignmentExpression();
-                return node.finishProperty('init', id, value, false, false);
-            }
-            if (match('(')) {
-                value = parsePropertyMethodFunction();
-                return node.finishProperty('init', id, value, true, false);
-            }
-
-            value = id;
-            return node.finishProperty('init', id, value, false, true);
-        }
-        if (token.type === Token.EOF || token.type === Token.Punctuator) {
-            throwUnexpectedToken(token);
-        } else {
-            key = parseObjectPropertyKey();
-            if (match(':')) {
-                lex();
-                value = parseAssignmentExpression();
-                return node.finishProperty('init', key, value, false, false);
-            }
-            if (match('(')) {
-                value = parsePropertyMethodFunction();
-                return node.finishProperty('init', key, value, true, false);
-            }
-            throwUnexpectedToken(lex());
-        }
-    }
-
-    function parseObjectInitialiser() {
-        var properties = [], property, name, key, kind, map = {}, toString = String, node = new Node();
-
-        expect('{');
-
-        while (!match('}')) {
-            property = parseObjectProperty();
-
-            if (property.key.type === Syntax.Identifier) {
-                name = property.key.name;
-            } else {
-                name = toString(property.key.value);
-            }
-            kind = (property.kind === 'init') ? PropertyKind.Data : (property.kind === 'get') ? PropertyKind.Get : PropertyKind.Set;
-
-            key = '$' + name;
-            if (Object.prototype.hasOwnProperty.call(map, key)) {
-                if (map[key] === PropertyKind.Data) {
-                    if (strict && kind === PropertyKind.Data) {
-                        tolerateError(Messages.StrictDuplicateProperty);
-                    } else if (kind !== PropertyKind.Data) {
-                        tolerateError(Messages.AccessorDataProperty);
-                    }
-                } else {
-                    if (kind === PropertyKind.Data) {
-                        tolerateError(Messages.AccessorDataProperty);
-                    } else if (map[key] & kind) {
-                        tolerateError(Messages.AccessorGetSet);
-                    }
-                }
-                map[key] |= kind;
-            } else {
-                map[key] = kind;
-            }
-
-            properties.push(property);
-
-            if (!match('}')) {
-                expectCommaSeparator();
-            }
-        }
-
-        expect('}');
-
-        return node.finishObjectExpression(properties);
-    }
-
-    // 11.1.6 The Grouping Operator
-
-    function parseGroupExpression() {
-        var expr;
-
-        expect('(');
-
-        if (match(')')) {
-            lex();
-            return PlaceHolders.ArrowParameterPlaceHolder;
-        }
-
-        ++state.parenthesisCount;
-
-        expr = parseExpression();
-
-        expect(')');
-
-        return expr;
-    }
-
-
-    // 11.1 Primary Expressions
-
-    function parsePrimaryExpression() {
-        var type, token, expr, node;
-
-        if (match('(')) {
-            return parseGroupExpression();
-        }
-
-        if (match('[')) {
-            return parseArrayInitialiser();
-        }
-
-        if (match('{')) {
-            return parseObjectInitialiser();
-        }
-
-        type = lookahead.type;
-        node = new Node();
-
-        if (type === Token.Identifier) {
-            expr = node.finishIdentifier(lex().value);
-        } else if (type === Token.StringLiteral || type === Token.NumericLiteral) {
-            if (strict && lookahead.octal) {
-                tolerateUnexpectedToken(lookahead, Messages.StrictOctalLiteral);
-            }
-            expr = node.finishLiteral(lex());
-        } else if (type === Token.Keyword) {
-            if (matchKeyword('function')) {
-                return parseFunctionExpression();
-            }
-            if (matchKeyword('this')) {
-                lex();
-                expr = node.finishThisExpression();
-            } else {
-                throwUnexpectedToken(lex());
-            }
-        } else if (type === Token.BooleanLiteral) {
-            token = lex();
-            token.value = (token.value === 'true');
-            expr = node.finishLiteral(token);
-        } else if (type === Token.NullLiteral) {
-            token = lex();
-            token.value = null;
-            expr = node.finishLiteral(token);
-        } else if (match('/') || match('/=')) {
-            if (typeof extra.tokens !== 'undefined') {
-                expr = node.finishLiteral(collectRegex());
-            } else {
-                expr = node.finishLiteral(scanRegExp());
-            }
-            peek();
-        } else {
-            throwUnexpectedToken(lex());
-        }
-
-        return expr;
-    }
-
-    // 11.2 Left-Hand-Side Expressions
-
-    function parseArguments() {
-        var args = [];
-
-        expect('(');
-
-        if (!match(')')) {
-            while (index < length) {
-                args.push(parseAssignmentExpression());
-                if (match(')')) {
-                    break;
-                }
-                expectCommaSeparator();
-            }
-        }
-
-        expect(')');
-
-        return args;
-    }
-
-    function parseNonComputedProperty() {
-        var token, node = new Node();
-
-        token = lex();
-
-        if (!isIdentifierName(token)) {
-            throwUnexpectedToken(token);
-        }
-
-        return node.finishIdentifier(token.value);
-    }
-
-    function parseNonComputedMember() {
-        expect('.');
-
-        return parseNonComputedProperty();
-    }
-
-    function parseComputedMember() {
-        var expr;
-
-        expect('[');
-
-        expr = parseExpression();
-
-        expect(']');
-
-        return expr;
-    }
-
-    function parseNewExpression() {
-        var callee, args, node = new Node();
-
-        expectKeyword('new');
-        callee = parseLeftHandSideExpression();
-        args = match('(') ? parseArguments() : [];
-
-        return node.finishNewExpression(callee, args);
-    }
-
-    function parseLeftHandSideExpressionAllowCall() {
-        var expr, args, property, startToken, previousAllowIn = state.allowIn;
-
-        startToken = lookahead;
-        state.allowIn = true;
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        for (;;) {
-            if (match('.')) {
-                property = parseNonComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
-            } else if (match('(')) {
-                args = parseArguments();
-                expr = new WrappingNode(startToken).finishCallExpression(expr, args);
-            } else if (match('[')) {
-                property = parseComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
-            } else {
-                break;
-            }
-        }
-        state.allowIn = previousAllowIn;
-
-        return expr;
-    }
-
-    function parseLeftHandSideExpression() {
-        var expr, property, startToken;
-        assert(state.allowIn, 'callee of new expression always allow in keyword.');
-
-        startToken = lookahead;
-
-        expr = matchKeyword('new') ? parseNewExpression() : parsePrimaryExpression();
-
-        for (;;) {
-            if (match('[')) {
-                property = parseComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
-            } else if (match('.')) {
-                property = parseNonComputedMember();
-                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
-            } else {
-                break;
-            }
-        }
-        return expr;
-    }
-
-    // 11.3 Postfix Expressions
-
-    function parsePostfixExpression() {
-        var expr, token, startToken = lookahead;
-
-        expr = parseLeftHandSideExpressionAllowCall();
-
-        if (lookahead.type === Token.Punctuator) {
-            if ((match('++') || match('--')) && !peekLineTerminator()) {
-                // 11.3.1, 11.3.2
-                if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                    tolerateError(Messages.StrictLHSPostfix);
-                }
-
-                if (!isLeftHandSide(expr)) {
-                    tolerateError(Messages.InvalidLHSInAssignment);
-                }
-
-                token = lex();
-                expr = new WrappingNode(startToken).finishPostfixExpression(token.value, expr);
-            }
-        }
-
-        return expr;
-    }
-
-    // 11.4 Unary Operators
-
-    function parseUnaryExpression() {
-        var token, expr, startToken;
-
-        if (lookahead.type !== Token.Punctuator && lookahead.type !== Token.Keyword) {
-            expr = parsePostfixExpression();
-        } else if (match('++') || match('--')) {
-            startToken = lookahead;
-            token = lex();
-            expr = parseUnaryExpression();
-            // 11.4.4, 11.4.5
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                tolerateError(Messages.StrictLHSPrefix);
-            }
-
-            if (!isLeftHandSide(expr)) {
-                tolerateError(Messages.InvalidLHSInAssignment);
-            }
-
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-        } else if (match('+') || match('-') || match('~') || match('!')) {
-            startToken = lookahead;
-            token = lex();
-            expr = parseUnaryExpression();
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-        } else if (matchKeyword('delete') || matchKeyword('void') || matchKeyword('typeof')) {
-            startToken = lookahead;
-            token = lex();
-            expr = parseUnaryExpression();
-            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
-            if (strict && expr.operator === 'delete' && expr.argument.type === Syntax.Identifier) {
-                tolerateError(Messages.StrictDelete);
-            }
-        } else {
-            expr = parsePostfixExpression();
-        }
-
-        return expr;
-    }
-
-    function binaryPrecedence(token, allowIn) {
-        var prec = 0;
-
-        if (token.type !== Token.Punctuator && token.type !== Token.Keyword) {
-            return 0;
-        }
-
-        switch (token.value) {
-        case '||':
-            prec = 1;
-            break;
-
-        case '&&':
-            prec = 2;
-            break;
-
-        case '|':
-            prec = 3;
-            break;
-
-        case '^':
-            prec = 4;
-            break;
-
-        case '&':
-            prec = 5;
-            break;
-
-        case '==':
-        case '!=':
-        case '===':
-        case '!==':
-            prec = 6;
-            break;
-
-        case '<':
-        case '>':
-        case '<=':
-        case '>=':
-        case 'instanceof':
-            prec = 7;
-            break;
-
-        case 'in':
-            prec = allowIn ? 7 : 0;
-            break;
-
-        case '<<':
-        case '>>':
-        case '>>>':
-            prec = 8;
-            break;
-
-        case '+':
-        case '-':
-            prec = 9;
-            break;
-
-        case '*':
-        case '/':
-        case '%':
-            prec = 11;
-            break;
-
-        default:
-            break;
-        }
-
-        return prec;
-    }
-
-    // 11.5 Multiplicative Operators
-    // 11.6 Additive Operators
-    // 11.7 Bitwise Shift Operators
-    // 11.8 Relational Operators
-    // 11.9 Equality Operators
-    // 11.10 Binary Bitwise Operators
-    // 11.11 Binary Logical Operators
-
-    function parseBinaryExpression() {
-        var marker, markers, expr, token, prec, stack, right, operator, left, i;
-
-        marker = lookahead;
-        left = parseUnaryExpression();
-        if (left === PlaceHolders.ArrowParameterPlaceHolder) {
-            return left;
-        }
-
-        token = lookahead;
-        prec = binaryPrecedence(token, state.allowIn);
-        if (prec === 0) {
-            return left;
-        }
-        token.prec = prec;
-        lex();
-
-        markers = [marker, lookahead];
-        right = parseUnaryExpression();
-
-        stack = [left, token, right];
-
-        while ((prec = binaryPrecedence(lookahead, state.allowIn)) > 0) {
-
-            // Reduce: make a binary expression from the three topmost entries.
-            while ((stack.length > 2) && (prec <= stack[stack.length - 2].prec)) {
-                right = stack.pop();
-                operator = stack.pop().value;
-                left = stack.pop();
-                markers.pop();
-                expr = new WrappingNode(markers[markers.length - 1]).finishBinaryExpression(operator, left, right);
-                stack.push(expr);
-            }
-
-            // Shift.
-            token = lex();
-            token.prec = prec;
-            stack.push(token);
-            markers.push(lookahead);
-            expr = parseUnaryExpression();
-            stack.push(expr);
-        }
-
-        // Final reduce to clean-up the stack.
-        i = stack.length - 1;
-        expr = stack[i];
-        markers.pop();
-        while (i > 1) {
-            expr = new WrappingNode(markers.pop()).finishBinaryExpression(stack[i - 1].value, stack[i - 2], expr);
-            i -= 2;
-        }
-
-        return expr;
-    }
-
-
-    // 11.12 Conditional Operator
-
-    function parseConditionalExpression() {
-        var expr, previousAllowIn, consequent, alternate, startToken;
-
-        startToken = lookahead;
-
-        expr = parseBinaryExpression();
-        if (expr === PlaceHolders.ArrowParameterPlaceHolder) {
-            return expr;
-        }
-        if (match('?')) {
-            lex();
-            previousAllowIn = state.allowIn;
-            state.allowIn = true;
-            consequent = parseAssignmentExpression();
-            state.allowIn = previousAllowIn;
-            expect(':');
-            alternate = parseAssignmentExpression();
-
-            expr = new WrappingNode(startToken).finishConditionalExpression(expr, consequent, alternate);
-        }
-
-        return expr;
-    }
-
-    // [ES6] 14.2 Arrow Function
-
-    function parseConciseBody() {
-        if (match('{')) {
-            return parseFunctionSourceElements();
-        }
-        return parseAssignmentExpression();
-    }
-
-    function reinterpretAsCoverFormalsList(expressions) {
-        var i, len, param, params, defaults, defaultCount, options, rest, token;
-
-        params = [];
-        defaults = [];
-        defaultCount = 0;
-        rest = null;
-        options = {
-            paramSet: {}
-        };
-
-        for (i = 0, len = expressions.length; i < len; i += 1) {
-            param = expressions[i];
-            if (param.type === Syntax.Identifier) {
-                params.push(param);
-                defaults.push(null);
-                validateParam(options, param, param.name);
-            } else if (param.type === Syntax.AssignmentExpression) {
-                params.push(param.left);
-                defaults.push(param.right);
-                ++defaultCount;
-                validateParam(options, param.left, param.left.name);
-            } else {
-                return null;
-            }
-        }
-
-        if (options.message === Messages.StrictParamDupe) {
-            token = strict ? options.stricted : options.firstRestricted;
-            throwUnexpectedToken(token, options.message);
-        }
-
-        if (defaultCount === 0) {
-            defaults = [];
-        }
-
-        return {
-            params: params,
-            defaults: defaults,
-            rest: rest,
-            stricted: options.stricted,
-            firstRestricted: options.firstRestricted,
-            message: options.message
-        };
-    }
-
-    function parseArrowFunctionExpression(options, node) {
-        var previousStrict, body;
-
-        expect('=>');
-        previousStrict = strict;
-
-        body = parseConciseBody();
-
-        if (strict && options.firstRestricted) {
-            throwUnexpectedToken(options.firstRestricted, options.message);
-        }
-        if (strict && options.stricted) {
-            tolerateUnexpectedToken(options.stricted, options.message);
-        }
-
-        strict = previousStrict;
-
-        return node.finishArrowFunctionExpression(options.params, options.defaults, body, body.type !== Syntax.BlockStatement);
-    }
-
-    // 11.13 Assignment Operators
-
-    function parseAssignmentExpression() {
-        var oldParenthesisCount, token, expr, right, list, startToken;
-
-        oldParenthesisCount = state.parenthesisCount;
-
-        startToken = lookahead;
-        token = lookahead;
-
-        expr = parseConditionalExpression();
-
-        if (expr === PlaceHolders.ArrowParameterPlaceHolder || match('=>')) {
-            if (state.parenthesisCount === oldParenthesisCount ||
-                    state.parenthesisCount === (oldParenthesisCount + 1)) {
-                if (expr.type === Syntax.Identifier) {
-                    list = reinterpretAsCoverFormalsList([ expr ]);
-                } else if (expr.type === Syntax.AssignmentExpression) {
-                    list = reinterpretAsCoverFormalsList([ expr ]);
-                } else if (expr.type === Syntax.SequenceExpression) {
-                    list = reinterpretAsCoverFormalsList(expr.expressions);
-                } else if (expr === PlaceHolders.ArrowParameterPlaceHolder) {
-                    list = reinterpretAsCoverFormalsList([]);
-                }
-                if (list) {
-                    return parseArrowFunctionExpression(list, new WrappingNode(startToken));
-                }
-            }
-        }
-
-        if (matchAssign()) {
-            // LeftHandSideExpression
-            if (!isLeftHandSide(expr)) {
-                tolerateError(Messages.InvalidLHSInAssignment);
-            }
-
-            // 11.13.1
-            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
-                tolerateUnexpectedToken(token, Messages.StrictLHSAssignment);
-            }
-
-            token = lex();
-            right = parseAssignmentExpression();
-            expr = new WrappingNode(startToken).finishAssignmentExpression(token.value, expr, right);
-        }
-
-        return expr;
-    }
-
-    // 11.14 Comma Operator
-
-    function parseExpression() {
-        var expr, startToken = lookahead, expressions;
-
-        expr = parseAssignmentExpression();
-
-        if (match(',')) {
-            expressions = [expr];
-
-            while (index < length) {
-                if (!match(',')) {
-                    break;
-                }
-                lex();
-                expressions.push(parseAssignmentExpression());
-            }
-
-            expr = new WrappingNode(startToken).finishSequenceExpression(expressions);
-        }
-
-        return expr;
-    }
-
-    // 12.1 Block
-
-    function parseStatementList() {
-        var list = [],
-            statement;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            statement = parseSourceElement();
-            if (typeof statement === 'undefined') {
-                break;
-            }
-            list.push(statement);
-        }
-
-        return list;
-    }
-
-    function parseBlock() {
-        var block, node = new Node();
-
-        expect('{');
-
-        block = parseStatementList();
-
-        expect('}');
-
-        return node.finishBlockStatement(block);
-    }
-
-    // 12.2 Variable Statement
-
-    function parseVariableIdentifier() {
-        var token, node = new Node();
-
-        token = lex();
-
-        if (token.type !== Token.Identifier) {
-            if (strict && token.type === Token.Keyword && isStrictModeReservedWord(token.value)) {
-                tolerateUnexpectedToken(token, Messages.StrictReservedWord);
-            } else {
-                throwUnexpectedToken(token);
-            }
-        }
-
-        return node.finishIdentifier(token.value);
-    }
-
-    function parseVariableDeclaration(kind) {
-        var init = null, id, node = new Node();
-
-        id = parseVariableIdentifier();
-
-        // 12.2.1
-        if (strict && isRestrictedWord(id.name)) {
-            tolerateError(Messages.StrictVarName);
-        }
-
-        if (kind === 'const') {
-            expect('=');
-            init = parseAssignmentExpression();
-        } else if (match('=')) {
-            lex();
-            init = parseAssignmentExpression();
-        }
-
-        return node.finishVariableDeclarator(id, init);
-    }
-
-    function parseVariableDeclarationList(kind) {
-        var list = [];
-
-        do {
-            list.push(parseVariableDeclaration(kind));
-            if (!match(',')) {
-                break;
-            }
-            lex();
-        } while (index < length);
-
-        return list;
-    }
-
-    function parseVariableStatement(node) {
-        var declarations;
-
-        expectKeyword('var');
-
-        declarations = parseVariableDeclarationList();
-
-        consumeSemicolon();
-
-        return node.finishVariableDeclaration(declarations, 'var');
-    }
-
-    // kind may be `const` or `let`
-    // Both are experimental and not in the specification yet.
-    // see http://wiki.ecmascript.org/doku.php?id=harmony:const
-    // and http://wiki.ecmascript.org/doku.php?id=harmony:let
-    function parseConstLetDeclaration(kind) {
-        var declarations, node = new Node();
-
-        expectKeyword(kind);
-
-        declarations = parseVariableDeclarationList(kind);
-
-        consumeSemicolon();
-
-        return node.finishVariableDeclaration(declarations, kind);
-    }
-
-    // 12.3 Empty Statement
-
-    function parseEmptyStatement() {
-        var node = new Node();
-        expect(';');
-        return node.finishEmptyStatement();
-    }
-
-    // 12.4 Expression Statement
-
-    function parseExpressionStatement(node) {
-        var expr = parseExpression();
-        consumeSemicolon();
-        return node.finishExpressionStatement(expr);
-    }
-
-    // 12.5 If statement
-
-    function parseIfStatement(node) {
-        var test, consequent, alternate;
-
-        expectKeyword('if');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        consequent = parseStatement();
-
-        if (matchKeyword('else')) {
-            lex();
-            alternate = parseStatement();
-        } else {
-            alternate = null;
-        }
-
-        return node.finishIfStatement(test, consequent, alternate);
-    }
-
-    // 12.6 Iteration Statements
-
-    function parseDoWhileStatement(node) {
-        var body, test, oldInIteration;
-
-        expectKeyword('do');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        if (match(';')) {
-            lex();
-        }
-
-        return node.finishDoWhileStatement(body, test);
-    }
-
-    function parseWhileStatement(node) {
-        var test, body, oldInIteration;
-
-        expectKeyword('while');
-
-        expect('(');
-
-        test = parseExpression();
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        return node.finishWhileStatement(test, body);
-    }
-
-    function parseForVariableDeclaration() {
-        var token, declarations, node = new Node();
-
-        token = lex();
-        declarations = parseVariableDeclarationList();
-
-        return node.finishVariableDeclaration(declarations, token.value);
-    }
-
-    function parseForStatement(node) {
-        var init, test, update, left, right, body, oldInIteration, previousAllowIn = state.allowIn;
-
-        init = test = update = null;
-
-        expectKeyword('for');
-
-        expect('(');
-
-        if (match(';')) {
-            lex();
-        } else {
-            if (matchKeyword('var') || matchKeyword('let')) {
-                state.allowIn = false;
-                init = parseForVariableDeclaration();
-                state.allowIn = previousAllowIn;
-
-                if (init.declarations.length === 1 && matchKeyword('in')) {
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                }
-            } else {
-                state.allowIn = false;
-                init = parseExpression();
-                state.allowIn = previousAllowIn;
-
-                if (matchKeyword('in')) {
-                    // LeftHandSideExpression
-                    if (!isLeftHandSide(init)) {
-                        tolerateError(Messages.InvalidLHSInForIn);
-                    }
-
-                    lex();
-                    left = init;
-                    right = parseExpression();
-                    init = null;
-                }
-            }
-
-            if (typeof left === 'undefined') {
-                expect(';');
-            }
-        }
-
-        if (typeof left === 'undefined') {
-
-            if (!match(';')) {
-                test = parseExpression();
-            }
-            expect(';');
-
-            if (!match(')')) {
-                update = parseExpression();
-            }
-        }
-
-        expect(')');
-
-        oldInIteration = state.inIteration;
-        state.inIteration = true;
-
-        body = parseStatement();
-
-        state.inIteration = oldInIteration;
-
-        return (typeof left === 'undefined') ?
-                node.finishForStatement(init, test, update, body) :
-                node.finishForInStatement(left, right, body);
-    }
-
-    // 12.7 The continue statement
-
-    function parseContinueStatement(node) {
-        var label = null, key;
-
-        expectKeyword('continue');
-
-        // Optimize the most common form: 'continue;'.
-        if (source.charCodeAt(index) === 0x3B) {
-            lex();
-
-            if (!state.inIteration) {
-                throwError(Messages.IllegalContinue);
-            }
-
-            return node.finishContinueStatement(null);
-        }
-
-        if (peekLineTerminator()) {
-            if (!state.inIteration) {
-                throwError(Messages.IllegalContinue);
-            }
-
-            return node.finishContinueStatement(null);
-        }
-
-        if (lookahead.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            key = '$' + label.name;
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !state.inIteration) {
-            throwError(Messages.IllegalContinue);
-        }
-
-        return node.finishContinueStatement(label);
-    }
-
-    // 12.8 The break statement
-
-    function parseBreakStatement(node) {
-        var label = null, key;
-
-        expectKeyword('break');
-
-        // Catch the very common case first: immediately a semicolon (U+003B).
-        if (source.charCodeAt(index) === 0x3B) {
-            lex();
-
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError(Messages.IllegalBreak);
-            }
-
-            return node.finishBreakStatement(null);
-        }
-
-        if (peekLineTerminator()) {
-            if (!(state.inIteration || state.inSwitch)) {
-                throwError(Messages.IllegalBreak);
-            }
-
-            return node.finishBreakStatement(null);
-        }
-
-        if (lookahead.type === Token.Identifier) {
-            label = parseVariableIdentifier();
-
-            key = '$' + label.name;
-            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.UnknownLabel, label.name);
-            }
-        }
-
-        consumeSemicolon();
-
-        if (label === null && !(state.inIteration || state.inSwitch)) {
-            throwError(Messages.IllegalBreak);
-        }
-
-        return node.finishBreakStatement(label);
-    }
-
-    // 12.9 The return statement
-
-    function parseReturnStatement(node) {
-        var argument = null;
-
-        expectKeyword('return');
-
-        if (!state.inFunctionBody) {
-            tolerateError(Messages.IllegalReturn);
-        }
-
-        // 'return' followed by a space and an identifier is very common.
-        if (source.charCodeAt(index) === 0x20) {
-            if (isIdentifierStart(source.charCodeAt(index + 1))) {
-                argument = parseExpression();
-                consumeSemicolon();
-                return node.finishReturnStatement(argument);
-            }
-        }
-
-        if (peekLineTerminator()) {
-            return node.finishReturnStatement(null);
-        }
-
-        if (!match(';')) {
-            if (!match('}') && lookahead.type !== Token.EOF) {
-                argument = parseExpression();
-            }
-        }
-
-        consumeSemicolon();
-
-        return node.finishReturnStatement(argument);
-    }
-
-    // 12.10 The with statement
-
-    function parseWithStatement(node) {
-        var object, body;
-
-        if (strict) {
-            // TODO(ikarienator): Should we update the test cases instead?
-            skipComment();
-            tolerateError(Messages.StrictModeWith);
-        }
-
-        expectKeyword('with');
-
-        expect('(');
-
-        object = parseExpression();
-
-        expect(')');
-
-        body = parseStatement();
-
-        return node.finishWithStatement(object, body);
-    }
-
-    // 12.10 The swith statement
-
-    function parseSwitchCase() {
-        var test, consequent = [], statement, node = new Node();
-
-        if (matchKeyword('default')) {
-            lex();
-            test = null;
-        } else {
-            expectKeyword('case');
-            test = parseExpression();
-        }
-        expect(':');
-
-        while (index < length) {
-            if (match('}') || matchKeyword('default') || matchKeyword('case')) {
-                break;
-            }
-            statement = parseStatement();
-            consequent.push(statement);
-        }
-
-        return node.finishSwitchCase(test, consequent);
-    }
-
-    function parseSwitchStatement(node) {
-        var discriminant, cases, clause, oldInSwitch, defaultFound;
-
-        expectKeyword('switch');
-
-        expect('(');
-
-        discriminant = parseExpression();
-
-        expect(')');
-
-        expect('{');
-
-        cases = [];
-
-        if (match('}')) {
-            lex();
-            return node.finishSwitchStatement(discriminant, cases);
-        }
-
-        oldInSwitch = state.inSwitch;
-        state.inSwitch = true;
-        defaultFound = false;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            clause = parseSwitchCase();
-            if (clause.test === null) {
-                if (defaultFound) {
-                    throwError(Messages.MultipleDefaultsInSwitch);
-                }
-                defaultFound = true;
-            }
-            cases.push(clause);
-        }
-
-        state.inSwitch = oldInSwitch;
-
-        expect('}');
-
-        return node.finishSwitchStatement(discriminant, cases);
-    }
-
-    // 12.13 The throw statement
-
-    function parseThrowStatement(node) {
-        var argument;
-
-        expectKeyword('throw');
-
-        if (peekLineTerminator()) {
-            throwError(Messages.NewlineAfterThrow);
-        }
-
-        argument = parseExpression();
-
-        consumeSemicolon();
-
-        return node.finishThrowStatement(argument);
-    }
-
-    // 12.14 The try statement
-
-    function parseCatchClause() {
-        var param, body, node = new Node();
-
-        expectKeyword('catch');
-
-        expect('(');
-        if (match(')')) {
-            throwUnexpectedToken(lookahead);
-        }
-
-        param = parseVariableIdentifier();
-        // 12.14.1
-        if (strict && isRestrictedWord(param.name)) {
-            tolerateError(Messages.StrictCatchVariable);
-        }
-
-        expect(')');
-        body = parseBlock();
-        return node.finishCatchClause(param, body);
-    }
-
-    function parseTryStatement(node) {
-        var block, handlers = [], finalizer = null;
-
-        expectKeyword('try');
-
-        block = parseBlock();
-
-        if (matchKeyword('catch')) {
-            handlers.push(parseCatchClause());
-        }
-
-        if (matchKeyword('finally')) {
-            lex();
-            finalizer = parseBlock();
-        }
-
-        if (handlers.length === 0 && !finalizer) {
-            throwError(Messages.NoCatchOrFinally);
-        }
-
-        return node.finishTryStatement(block, [], handlers, finalizer);
-    }
-
-    // 12.15 The debugger statement
-
-    function parseDebuggerStatement(node) {
-        expectKeyword('debugger');
-
-        consumeSemicolon();
-
-        return node.finishDebuggerStatement();
-    }
-
-    // 12 Statements
-
-    function parseStatement() {
-        var type = lookahead.type,
-            expr,
-            labeledBody,
-            key,
-            node;
-
-        if (type === Token.EOF) {
-            throwUnexpectedToken(lookahead);
-        }
-
-        if (type === Token.Punctuator && lookahead.value === '{') {
-            return parseBlock();
-        }
-
-        node = new Node();
-
-        if (type === Token.Punctuator) {
-            switch (lookahead.value) {
-            case ';':
-                return parseEmptyStatement(node);
-            case '(':
-                return parseExpressionStatement(node);
-            default:
-                break;
-            }
-        } else if (type === Token.Keyword) {
-            switch (lookahead.value) {
-            case 'break':
-                return parseBreakStatement(node);
-            case 'continue':
-                return parseContinueStatement(node);
-            case 'debugger':
-                return parseDebuggerStatement(node);
-            case 'do':
-                return parseDoWhileStatement(node);
-            case 'for':
-                return parseForStatement(node);
-            case 'function':
-                return parseFunctionDeclaration(node);
-            case 'if':
-                return parseIfStatement(node);
-            case 'return':
-                return parseReturnStatement(node);
-            case 'switch':
-                return parseSwitchStatement(node);
-            case 'throw':
-                return parseThrowStatement(node);
-            case 'try':
-                return parseTryStatement(node);
-            case 'var':
-                return parseVariableStatement(node);
-            case 'while':
-                return parseWhileStatement(node);
-            case 'with':
-                return parseWithStatement(node);
-            default:
-                break;
-            }
-        }
-
-        expr = parseExpression();
-
-        // 12.12 Labelled Statements
-        if ((expr.type === Syntax.Identifier) && match(':')) {
-            lex();
-
-            key = '$' + expr.name;
-            if (Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
-                throwError(Messages.Redeclaration, 'Label', expr.name);
-            }
-
-            state.labelSet[key] = true;
-            labeledBody = parseStatement();
-            delete state.labelSet[key];
-            return node.finishLabeledStatement(expr, labeledBody);
-        }
-
-        consumeSemicolon();
-
-        return node.finishExpressionStatement(expr);
-    }
-
-    // 13 Function Definition
-
-    function parseFunctionSourceElements() {
-        var sourceElement, sourceElements = [], token, directive, firstRestricted,
-            oldLabelSet, oldInIteration, oldInSwitch, oldInFunctionBody, oldParenthesisCount,
-            node = new Node();
-
-        expect('{');
-
-        while (index < length) {
-            if (lookahead.type !== Token.StringLiteral) {
-                break;
-            }
-            token = lookahead;
-
-            sourceElement = parseSourceElement();
-            sourceElements.push(sourceElement);
-            if (sourceElement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = source.slice(token.start + 1, token.end - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        oldLabelSet = state.labelSet;
-        oldInIteration = state.inIteration;
-        oldInSwitch = state.inSwitch;
-        oldInFunctionBody = state.inFunctionBody;
-        oldParenthesisCount = state.parenthesizedCount;
-
-        state.labelSet = {};
-        state.inIteration = false;
-        state.inSwitch = false;
-        state.inFunctionBody = true;
-        state.parenthesizedCount = 0;
-
-        while (index < length) {
-            if (match('}')) {
-                break;
-            }
-            sourceElement = parseSourceElement();
-            if (typeof sourceElement === 'undefined') {
-                break;
-            }
-            sourceElements.push(sourceElement);
-        }
-
-        expect('}');
-
-        state.labelSet = oldLabelSet;
-        state.inIteration = oldInIteration;
-        state.inSwitch = oldInSwitch;
-        state.inFunctionBody = oldInFunctionBody;
-        state.parenthesizedCount = oldParenthesisCount;
-
-        return node.finishBlockStatement(sourceElements);
-    }
-
-    function validateParam(options, param, name) {
-        var key = '$' + name;
-        if (strict) {
-            if (isRestrictedWord(name)) {
-                options.stricted = param;
-                options.message = Messages.StrictParamName;
-            }
-            if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
-                options.stricted = param;
-                options.message = Messages.StrictParamDupe;
-            }
-        } else if (!options.firstRestricted) {
-            if (isRestrictedWord(name)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictParamName;
-            } else if (isStrictModeReservedWord(name)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictReservedWord;
-            } else if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
-                options.firstRestricted = param;
-                options.message = Messages.StrictParamDupe;
-            }
-        }
-        options.paramSet[key] = true;
-    }
-
-    function parseParam(options) {
-        var token, param, def;
-
-        token = lookahead;
-        param = parseVariableIdentifier();
-        validateParam(options, token, token.value);
-        if (match('=')) {
-            lex();
-            def = parseAssignmentExpression();
-            ++options.defaultCount;
-        }
-
-        options.params.push(param);
-        options.defaults.push(def);
-
-        return !match(')');
-    }
-
-    function parseParams(firstRestricted) {
-        var options;
-
-        options = {
-            params: [],
-            defaultCount: 0,
-            defaults: [],
-            firstRestricted: firstRestricted
-        };
-
-        expect('(');
-
-        if (!match(')')) {
-            options.paramSet = {};
-            while (index < length) {
-                if (!parseParam(options)) {
-                    break;
-                }
-                expect(',');
-            }
-        }
-
-        expect(')');
-
-        if (options.defaultCount === 0) {
-            options.defaults = [];
-        }
-
-        return {
-            params: options.params,
-            defaults: options.defaults,
-            stricted: options.stricted,
-            firstRestricted: options.firstRestricted,
-            message: options.message
-        };
-    }
-
-    function parseFunctionDeclaration() {
-        var id, params = [], defaults = [], body, token, stricted, tmp, firstRestricted, message, previousStrict, node = new Node();
-
-        expectKeyword('function');
-        token = lookahead;
-        id = parseVariableIdentifier();
-        if (strict) {
-            if (isRestrictedWord(token.value)) {
-                tolerateUnexpectedToken(token, Messages.StrictFunctionName);
-            }
-        } else {
-            if (isRestrictedWord(token.value)) {
-                firstRestricted = token;
-                message = Messages.StrictFunctionName;
-            } else if (isStrictModeReservedWord(token.value)) {
-                firstRestricted = token;
-                message = Messages.StrictReservedWord;
-            }
-        }
-
-        tmp = parseParams(firstRestricted);
-        params = tmp.params;
-        defaults = tmp.defaults;
-        stricted = tmp.stricted;
-        firstRestricted = tmp.firstRestricted;
-        if (tmp.message) {
-            message = tmp.message;
-        }
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwUnexpectedToken(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            tolerateUnexpectedToken(stricted, message);
-        }
-        strict = previousStrict;
-
-        return node.finishFunctionDeclaration(id, params, defaults, body);
-    }
-
-    function parseFunctionExpression() {
-        var token, id = null, stricted, firstRestricted, message, tmp,
-            params = [], defaults = [], body, previousStrict, node = new Node();
-
-        expectKeyword('function');
-
-        if (!match('(')) {
-            token = lookahead;
-            id = parseVariableIdentifier();
-            if (strict) {
-                if (isRestrictedWord(token.value)) {
-                    tolerateUnexpectedToken(token, Messages.StrictFunctionName);
-                }
-            } else {
-                if (isRestrictedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictFunctionName;
-                } else if (isStrictModeReservedWord(token.value)) {
-                    firstRestricted = token;
-                    message = Messages.StrictReservedWord;
-                }
-            }
-        }
-
-        tmp = parseParams(firstRestricted);
-        params = tmp.params;
-        defaults = tmp.defaults;
-        stricted = tmp.stricted;
-        firstRestricted = tmp.firstRestricted;
-        if (tmp.message) {
-            message = tmp.message;
-        }
-
-        previousStrict = strict;
-        body = parseFunctionSourceElements();
-        if (strict && firstRestricted) {
-            throwUnexpectedToken(firstRestricted, message);
-        }
-        if (strict && stricted) {
-            tolerateUnexpectedToken(stricted, message);
-        }
-        strict = previousStrict;
-
-        return node.finishFunctionExpression(id, params, defaults, body);
-    }
-
-    // 14 Program
-
-    function parseSourceElement() {
-        if (lookahead.type === Token.Keyword) {
-            switch (lookahead.value) {
-            case 'const':
-            case 'let':
-                return parseConstLetDeclaration(lookahead.value);
-            case 'function':
-                return parseFunctionDeclaration();
-            default:
-                return parseStatement();
-            }
-        }
-
-        if (lookahead.type !== Token.EOF) {
-            return parseStatement();
-        }
-    }
-
-    function parseSourceElements() {
-        var sourceElement, sourceElements = [], token, directive, firstRestricted;
-
-        while (index < length) {
-            token = lookahead;
-            if (token.type !== Token.StringLiteral) {
-                break;
-            }
-
-            sourceElement = parseSourceElement();
-            sourceElements.push(sourceElement);
-            if (sourceElement.expression.type !== Syntax.Literal) {
-                // this is not directive
-                break;
-            }
-            directive = source.slice(token.start + 1, token.end - 1);
-            if (directive === 'use strict') {
-                strict = true;
-                if (firstRestricted) {
-                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
-                }
-            } else {
-                if (!firstRestricted && token.octal) {
-                    firstRestricted = token;
-                }
-            }
-        }
-
-        while (index < length) {
-            sourceElement = parseSourceElement();
-            /* istanbul ignore if */
-            if (typeof sourceElement === 'undefined') {
-                break;
-            }
-            sourceElements.push(sourceElement);
-        }
-        return sourceElements;
-    }
-
-    function parseProgram() {
-        var body, node;
-
-        skipComment();
-        peek();
-        node = new Node();
-        strict = false;
-
-        body = parseSourceElements();
-        return node.finishProgram(body);
-    }
-
-    function filterTokenLocation() {
-        var i, entry, token, tokens = [];
-
-        for (i = 0; i < extra.tokens.length; ++i) {
-            entry = extra.tokens[i];
-            token = {
-                type: entry.type,
-                value: entry.value
-            };
-            if (entry.regex) {
-                token.regex = {
-                    pattern: entry.regex.pattern,
-                    flags: entry.regex.flags
-                };
-            }
-            if (extra.range) {
-                token.range = entry.range;
-            }
-            if (extra.loc) {
-                token.loc = entry.loc;
-            }
-            tokens.push(token);
-        }
-
-        extra.tokens = tokens;
-    }
-
-    function tokenize(code, options) {
-        var toString,
-            tokens;
-
-        toString = String;
-        if (typeof code !== 'string' && !(code instanceof String)) {
-            code = toString(code);
-        }
-
-        source = code;
-        index = 0;
-        lineNumber = (source.length > 0) ? 1 : 0;
-        lineStart = 0;
-        length = source.length;
-        lookahead = null;
-        state = {
-            allowIn: true,
-            labelSet: {},
-            inFunctionBody: false,
-            inIteration: false,
-            inSwitch: false,
-            lastCommentStart: -1
-        };
-
-        extra = {};
-
-        // Options matching.
-        options = options || {};
-
-        // Of course we collect tokens here.
-        options.tokens = true;
-        extra.tokens = [];
-        extra.tokenize = true;
-        // The following two fields are necessary to compute the Regex tokens.
-        extra.openParenToken = -1;
-        extra.openCurlyToken = -1;
-
-        extra.range = (typeof options.range === 'boolean') && options.range;
-        extra.loc = (typeof options.loc === 'boolean') && options.loc;
-
-        if (typeof options.comment === 'boolean' && options.comment) {
-            extra.comments = [];
-        }
-        if (typeof options.tolerant === 'boolean' && options.tolerant) {
-            extra.errors = [];
-        }
-
-        try {
-            peek();
-            if (lookahead.type === Token.EOF) {
-                return extra.tokens;
-            }
-
-            lex();
-            while (lookahead.type !== Token.EOF) {
-                try {
-                    lex();
-                } catch (lexError) {
-                    if (extra.errors) {
-                        extra.errors.push(lexError);
-                        // We have to break on the first error
-                        // to avoid infinite loops.
-                        break;
-                    } else {
-                        throw lexError;
-                    }
-                }
-            }
-
-            filterTokenLocation();
-            tokens = extra.tokens;
-            if (typeof extra.comments !== 'undefined') {
-                tokens.comments = extra.comments;
-            }
-            if (typeof extra.errors !== 'undefined') {
-                tokens.errors = extra.errors;
-            }
-        } catch (e) {
-            throw e;
-        } finally {
-            extra = {};
-        }
-        return tokens;
-    }
-
-    function parse(code, options) {
-        var program, toString;
-
-        toString = String;
-        if (typeof code !== 'string' && !(code instanceof String)) {
-            code = toString(code);
-        }
-
-        source = code;
-        index = 0;
-        lineNumber = (source.length > 0) ? 1 : 0;
-        lineStart = 0;
-        length = source.length;
-        lookahead = null;
-        state = {
-            allowIn: true,
-            labelSet: {},
-            parenthesisCount: 0,
-            inFunctionBody: false,
-            inIteration: false,
-            inSwitch: false,
-            lastCommentStart: -1
-        };
-
-        extra = {};
-        if (typeof options !== 'undefined') {
-            extra.range = (typeof options.range === 'boolean') && options.range;
-            extra.loc = (typeof options.loc === 'boolean') && options.loc;
-            extra.attachComment = (typeof options.attachComment === 'boolean') && options.attachComment;
-
-            if (extra.loc && options.source !== null && options.source !== undefined) {
-                extra.source = toString(options.source);
-            }
-
-            if (typeof options.tokens === 'boolean' && options.tokens) {
-                extra.tokens = [];
-            }
-            if (typeof options.comment === 'boolean' && options.comment) {
-                extra.comments = [];
-            }
-            if (typeof options.tolerant === 'boolean' && options.tolerant) {
-                extra.errors = [];
-            }
-            if (extra.attachComment) {
-                extra.range = true;
-                extra.comments = [];
-                extra.bottomRightStack = [];
-                extra.trailingComments = [];
-                extra.leadingComments = [];
-            }
-        }
-
-        try {
-            program = parseProgram();
-            if (typeof extra.comments !== 'undefined') {
-                program.comments = extra.comments;
-            }
-            if (typeof extra.tokens !== 'undefined') {
-                filterTokenLocation();
-                program.tokens = extra.tokens;
-            }
-            if (typeof extra.errors !== 'undefined') {
-                program.errors = extra.errors;
-            }
-        } catch (e) {
-            throw e;
-        } finally {
-            extra = {};
-        }
-
-        return program;
-    }
-
-    // Sync with *.json manifests.
-    exports.version = '2.0.0';
-
-    exports.tokenize = tokenize;
-
-    exports.parse = parse;
-
-    // Deep copy.
-   /* istanbul ignore next */
-    exports.Syntax = (function () {
-        var name, types = {};
-
-        if (typeof Object.create === 'function') {
-            types = Object.create(null);
-        }
-
-        for (name in Syntax) {
-            if (Syntax.hasOwnProperty(name)) {
-                types[name] = Syntax[name];
-            }
-        }
-
-        if (typeof Object.freeze === 'function') {
-            Object.freeze(types);
-        }
-
-        return types;
-    }());
-
-}));
-/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/package.json
deleted file mode 100644 (file)
index 90347b4..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-{
-  "_args": [
-    [
-      "esprima@https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-  "_id": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-YJrFwmZ+rlQztB657OziMxtBSY8=",
-  "_location": "/grunt-standard/standard/eslint/js-yaml/esprima",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "esprima@https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-    "name": "esprima",
-    "escapedName": "esprima",
-    "rawSpec": "https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/js-yaml"
-  ],
-  "_spec": "https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Ariya Hidayat",
-    "email": "ariya.hidayat@gmail.com"
-  },
-  "bin": {
-    "esparse": "./bin/esparse.js",
-    "esvalidate": "./bin/esvalidate.js"
-  },
-  "bugs": {
-    "url": "http://issues.esprima.org"
-  },
-  "description": "ECMAScript parsing infrastructure for multipurpose analysis",
-  "devDependencies": {
-    "complexity-report": "~1.1.1",
-    "escomplex-js": "1.0.0",
-    "eslint": "~0.12.0",
-    "istanbul": "~0.2.6",
-    "jscs": "~1.10.0",
-    "json-diff": "~0.3.1",
-    "optimist": "~0.6.0",
-    "regenerate": "~0.6.2",
-    "unicode-7.0.0": "~0.1.5"
-  },
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "files": [
-    "bin",
-    "test/run.js",
-    "test/runner.js",
-    "test/test.js",
-    "test/compat.js",
-    "test/reflect.js",
-    "esprima.js"
-  ],
-  "homepage": "http://esprima.org",
-  "keywords": [
-    "ast",
-    "ecmascript",
-    "javascript",
-    "parser",
-    "syntax"
-  ],
-  "licenses": [
-    {
-      "type": "BSD",
-      "url": "https://github.com/jquery/esprima/raw/master/LICENSE.BSD"
-    }
-  ],
-  "main": "esprima.js",
-  "maintainers": [
-    {
-      "name": "Ariya Hidayat",
-      "email": "ariya.hidayat@gmail.com",
-      "url": "http://ariya.ofilabs.com"
-    }
-  ],
-  "name": "esprima",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/jquery/esprima.git"
-  },
-  "scripts": {
-    "analyze-coverage": "node node_modules/istanbul/lib/cli.js cover test/runner.js",
-    "benchmark": "node test/benchmarks.js",
-    "benchmark-quick": "node test/benchmarks.js quick",
-    "check-coverage": "node node_modules/istanbul/lib/cli.js check-coverage --statement 100 --branch 100 --function 100",
-    "check-version": "node tools/check-version.js",
-    "complexity": "node tools/list-complexity.js && cr -s -l -w --maxcyc 16 esprima.js",
-    "coverage": "npm run analyze-coverage && npm run check-coverage",
-    "eslint": "node node_modules/eslint/bin/eslint.js esprima.js",
-    "generate-regex": "node tools/generate-identifier-regex.js",
-    "jscs": "jscs esprima.js test/*test.js",
-    "lint": "npm run check-version && npm run eslint && npm run jscs && npm run complexity",
-    "test": "node test/run.js && npm run lint && npm run coverage"
-  },
-  "version": "https://registry.npmjs.org/esprima/-/esprima-2.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/compat.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/compat.js
deleted file mode 100644 (file)
index 1f67307..0000000
+++ /dev/null
@@ -1,244 +0,0 @@
-/*
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint node: true */
-/*global document: true, window:true, esprima: true, testReflect: true */
-
-var runTests;
-
-function getContext(esprima, reportCase, reportFailure) {
-    'use strict';
-
-    var Reflect, Pattern;
-
-    // Maps Mozilla Reflect object to our Esprima parser.
-    Reflect = {
-        parse: function (code) {
-            var result;
-
-            reportCase(code);
-
-            try {
-                result = esprima.parse(code);
-            } catch (error) {
-                result = error;
-            }
-
-            return result;
-        }
-    };
-
-    // This is used by Reflect test suite to match a syntax tree.
-    Pattern = function (obj) {
-        var pattern;
-
-        // Poor man's deep object cloning.
-        pattern = JSON.parse(JSON.stringify(obj));
-
-        // Special handling for regular expression literal since we need to
-        // convert it to a string literal, otherwise it will be decoded
-        // as object "{}" and the regular expression would be lost.
-        if (obj.type && obj.type === 'Literal') {
-            if (obj.value instanceof RegExp) {
-                pattern = {
-                    type: obj.type,
-                    value: obj.value.toString()
-                };
-            }
-        }
-
-        // Special handling for branch statement because SpiderMonkey
-        // prefers to put the 'alternate' property before 'consequent'.
-        if (obj.type && obj.type === 'IfStatement') {
-            pattern = {
-                type: pattern.type,
-                test: pattern.test,
-                consequent: pattern.consequent,
-                alternate: pattern.alternate
-            };
-        }
-
-        // Special handling for do while statement because SpiderMonkey
-        // prefers to put the 'test' property before 'body'.
-        if (obj.type && obj.type === 'DoWhileStatement') {
-            pattern = {
-                type: pattern.type,
-                body: pattern.body,
-                test: pattern.test
-            };
-        }
-
-        function adjustRegexLiteralAndRaw(key, value) {
-            if (key === 'value' && value instanceof RegExp) {
-                value = value.toString();
-            } else if (key === 'raw' && typeof value === "string") {
-                // Ignore Esprima-specific 'raw' property.
-                return undefined;
-            } else if (key === 'regex' && typeof value === "object") {
-                // Ignore Esprima-specific 'regex' property.
-                return undefined;
-            }
-            return value;
-        }
-
-        if (obj.type && (obj.type === 'Program')) {
-            pattern.assert = function (tree) {
-                var actual, expected;
-                actual = JSON.stringify(tree, adjustRegexLiteralAndRaw, 4);
-                expected = JSON.stringify(obj, null, 4);
-
-                if (expected !== actual) {
-                    reportFailure(expected, actual);
-                }
-            };
-        }
-
-        return pattern;
-    };
-
-    return {
-        Reflect: Reflect,
-        Pattern: Pattern
-    };
-}
-
-if (typeof window !== 'undefined') {
-    // Run all tests in a browser environment.
-    runTests = function () {
-        'use strict';
-
-        var total = 0,
-            failures = 0;
-
-        function setText(el, str) {
-            if (typeof el.innerText === 'string') {
-                el.innerText = str;
-            } else {
-                el.textContent = str;
-            }
-        }
-
-        function reportCase(code) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-            total += 1;
-        }
-
-        function reportFailure(expected, actual) {
-            var report, e;
-
-            failures += 1;
-
-            report = document.getElementById('report');
-
-            e = document.createElement('p');
-            setText(e, 'Expected');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'expected');
-            setText(e, expected);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Actual');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'actual');
-            setText(e, actual);
-            report.appendChild(e);
-        }
-
-        setText(document.getElementById('version'), esprima.version);
-
-        window.setTimeout(function () {
-            var tick, context = getContext(esprima, reportCase, reportFailure);
-
-            tick = new Date();
-            testReflect(context.Reflect, context.Pattern);
-            tick = (new Date()) - tick;
-
-            if (failures > 0) {
-                document.getElementById('status').className = 'alert-box alert';
-                setText(document.getElementById('status'), total + ' tests. ' +
-                    'Failures: ' + failures + '. ' + tick + ' ms');
-            } else {
-                document.getElementById('status').className = 'alert-box success';
-                setText(document.getElementById('status'), total + ' tests. ' +
-                    'No failure. ' + tick + ' ms');
-            }
-        }, 11);
-    };
-} else {
-    (function (global) {
-        'use strict';
-        var esprima = require('../esprima'),
-            tick,
-            total = 0,
-            failures = [],
-            header,
-            current,
-            context;
-
-        function reportCase(code) {
-            total += 1;
-            current = code;
-        }
-
-        function reportFailure(expected, actual) {
-            failures.push({
-                source: current,
-                expected: expected.toString(),
-                actual: actual.toString()
-            });
-        }
-
-        context = getContext(esprima, reportCase, reportFailure);
-
-        tick = new Date();
-        require('./reflect').testReflect(context.Reflect, context.Pattern);
-        tick = (new Date()) - tick;
-
-        header = total + ' tests. ' + failures.length + ' failures. ' +
-            tick + ' ms';
-        if (failures.length) {
-            console.error(header);
-            failures.forEach(function (failure) {
-                console.error(failure.source + ': Expected\n    ' +
-                    failure.expected.split('\n').join('\n    ') +
-                    '\nto match\n    ' + failure.actual);
-            });
-        } else {
-            console.log(header);
-        }
-        process.exit(failures.length === 0 ? 0 : 1);
-    }(this));
-}
-/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/reflect.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/reflect.js
deleted file mode 100644 (file)
index 4941bbb..0000000
+++ /dev/null
@@ -1,422 +0,0 @@
-// This is modified from Mozilla Reflect.parse test suite (the file is located
-// at js/src/tests/js1_8_5/extensions/reflect-parse.js in the source tree).
-//
-// Some notable changes:
-//   * Removed unsupported features (destructuring, let, comprehensions...).
-//   * Removed tests for E4X (ECMAScript for XML).
-//   * Removed everything related to builder.
-//   * Enclosed every 'Pattern' construct with a scope.
-//   * Tweaked some expected tree to remove generator field.
-//   * Removed the test for bug 632030 and bug 632024.
-
-/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/licenses/publicdomain/
- */
-
-(function (exports) {
-
-function testReflect(Reflect, Pattern) {
-
-function program(elts) { return Pattern({ type: "Program", body: elts }); }
-function exprStmt(expr) { return Pattern({ type: "ExpressionStatement", expression: expr }); }
-function throwStmt(expr) { return Pattern({ type: "ThrowStatement", argument: expr }); }
-function returnStmt(expr) { return Pattern({ type: "ReturnStatement", argument: expr }); }
-function yieldExpr(expr) { return Pattern({ type: "YieldExpression", argument: expr }); }
-function lit(val) { return Pattern({ type: "Literal", value: val }); }
-var thisExpr = Pattern({ type: "ThisExpression" });
-function funDecl(id, params, body) { return Pattern({ type: "FunctionDeclaration",
-                                             id: id,
-                                             params: params,
-                                             defaults: [],
-                                             body: body,
-                                             rest: null,
-                                             generator: false,
-                                             expression: false
-                                             }); }
-function genFunDecl(id, params, body) { return Pattern({ type: "FunctionDeclaration",
-                                                id: id,
-                                                params: params,
-                                                defaults: [],
-                                                body: body,
-                                                rest: null,
-                                                generator: false,
-                                                expression: false
-                                                }); }
-function declarator(id, init) { return Pattern({ type: "VariableDeclarator", id: id, init: init }); }
-function varDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "var" }); }
-function letDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "let" }); }
-function constDecl(decls) { return Pattern({ type: "VariableDeclaration", declarations: decls, kind: "const" }); }
-function ident(name) { return Pattern({ type: "Identifier", name: name }); }
-function dotExpr(obj, id) { return Pattern({ type: "MemberExpression", computed: false, object: obj, property: id }); }
-function memExpr(obj, id) { return Pattern({ type: "MemberExpression", computed: true, object: obj, property: id }); }
-function forStmt(init, test, update, body) { return Pattern({ type: "ForStatement", init: init, test: test, update: update, body: body }); }
-function forInStmt(lhs, rhs, body) { return Pattern({ type: "ForInStatement", left: lhs, right: rhs, body: body, each: false }); }
-function forEachInStmt(lhs, rhs, body) { return Pattern({ type: "ForInStatement", left: lhs, right: rhs, body: body, each: true }); }
-function breakStmt(lab) { return Pattern({ type: "BreakStatement", label: lab }); }
-function continueStmt(lab) { return Pattern({ type: "ContinueStatement", label: lab }); }
-function blockStmt(body) { return Pattern({ type: "BlockStatement", body: body }); }
-var emptyStmt = Pattern({ type: "EmptyStatement" });
-function ifStmt(test, cons, alt) { return Pattern({ type: "IfStatement", test: test, alternate: alt, consequent: cons }); }
-function labStmt(lab, stmt) { return Pattern({ type: "LabeledStatement", label: lab, body: stmt }); }
-function withStmt(obj, stmt) { return Pattern({ type: "WithStatement", object: obj, body: stmt }); }
-function whileStmt(test, stmt) { return Pattern({ type: "WhileStatement", test: test, body: stmt }); }
-function doStmt(stmt, test) { return Pattern({ type: "DoWhileStatement", test: test, body: stmt }); }
-function switchStmt(disc, cases) { return Pattern({ type: "SwitchStatement", discriminant: disc, cases: cases }); }
-function caseClause(test, stmts) { return Pattern({ type: "SwitchCase", test: test, consequent: stmts }); }
-function defaultClause(stmts) { return Pattern({ type: "SwitchCase", test: null, consequent: stmts }); }
-function catchClause(id, guard, body) { if (guard) { return Pattern({ type: "GuardedCatchClause", param: id, guard: guard, body: body }) } else { return Pattern({ type: "CatchClause", param: id, body: body }); } }
-function tryStmt(body, guarded, catches, fin) { return Pattern({ type: "TryStatement", block: body, guardedHandlers: guarded, handlers: catches, finalizer: fin }); }
-function letStmt(head, body) { return Pattern({ type: "LetStatement", head: head, body: body }); }
-function funExpr(id, args, body, gen) { return Pattern({ type: "FunctionExpression",
-                                                id: id,
-                                                params: args,
-                                                defaults: [],
-                                                body: body,
-                                                rest: null,
-                                                generator: false,
-                                                expression: false
-                                                }); }
-function genFunExpr(id, args, body) { return Pattern({ type: "FunctionExpression",
-                                              id: id,
-                                              params: args,
-                                              defaults: [],
-                                              body: body,
-                                              rest: null,
-                                              generator: false,
-                                              expression: false
-                                              }); }
-
-function unExpr(op, arg) { return Pattern({ type: "UnaryExpression", operator: op, argument: arg, prefix: true }); }
-function binExpr(op, left, right) { return Pattern({ type: "BinaryExpression", operator: op, left: left, right: right }); }
-function aExpr(op, left, right) { return Pattern({ type: "AssignmentExpression", operator: op, left: left, right: right }); }
-function updExpr(op, arg, prefix) { return Pattern({ type: "UpdateExpression", operator: op, argument: arg, prefix: prefix }); }
-function logExpr(op, left, right) { return Pattern({ type: "LogicalExpression", operator: op, left: left, right: right }); }
-
-function condExpr(test, cons, alt) { return Pattern({ type: "ConditionalExpression", test: test, consequent: cons, alternate: alt }); }
-function seqExpr(exprs) { return Pattern({ type: "SequenceExpression", expressions: exprs }); }
-function newExpr(callee, args) { return Pattern({ type: "NewExpression", callee: callee, arguments: args }); }
-function callExpr(callee, args) { return Pattern({ type: "CallExpression", callee: callee, arguments: args }); }
-function arrExpr(elts) { return Pattern({ type: "ArrayExpression", elements: elts }); }
-function objExpr(elts) { return Pattern({ type: "ObjectExpression", properties: elts }); }
-function objProp(key, value, kind) { return Pattern({ type: "Property", key: key, value: value, kind: kind, method: false, shorthand: false }); }
-
-function arrPatt(elts) { return Pattern({ type: "ArrayPattern", elements: elts }); }
-function objPatt(elts) { return Pattern({ type: "ObjectPattern", properties: elts }); }
-
-function localSrc(src) { return "(function(){ " + src + " })"; }
-function localPatt(patt) { return program([exprStmt(funExpr(null, [], blockStmt([patt])))]); }
-function blockSrc(src) { return "(function(){ { " + src + " } })"; }
-function blockPatt(patt) { return program([exprStmt(funExpr(null, [], blockStmt([blockStmt([patt])])))]); }
-
-function assertBlockStmt(src, patt) {
-    blockPatt(patt).assert(Reflect.parse(blockSrc(src)));
-}
-
-function assertBlockExpr(src, patt) {
-    assertBlockStmt(src, exprStmt(patt));
-}
-
-function assertBlockDecl(src, patt, builder) {
-    blockPatt(patt).assert(Reflect.parse(blockSrc(src), {builder: builder}));
-}
-
-function assertLocalStmt(src, patt) {
-    localPatt(patt).assert(Reflect.parse(localSrc(src)));
-}
-
-function assertLocalExpr(src, patt) {
-    assertLocalStmt(src, exprStmt(patt));
-}
-
-function assertLocalDecl(src, patt) {
-    localPatt(patt).assert(Reflect.parse(localSrc(src)));
-}
-
-function assertGlobalStmt(src, patt, builder) {
-    program([patt]).assert(Reflect.parse(src, {builder: builder}));
-}
-
-function assertGlobalExpr(src, patt, builder) {
-    program([exprStmt(patt)]).assert(Reflect.parse(src, {builder: builder}));
-    //assertStmt(src, exprStmt(patt));
-}
-
-function assertGlobalDecl(src, patt) {
-    program([patt]).assert(Reflect.parse(src));
-}
-
-function assertProg(src, patt) {
-    program(patt).assert(Reflect.parse(src));
-}
-
-function assertStmt(src, patt) {
-    assertLocalStmt(src, patt);
-    assertGlobalStmt(src, patt);
-    assertBlockStmt(src, patt);
-}
-
-function assertExpr(src, patt) {
-    assertLocalExpr(src, patt);
-    assertGlobalExpr(src, patt);
-    assertBlockExpr(src, patt);
-}
-
-function assertDecl(src, patt) {
-    assertLocalDecl(src, patt);
-    assertGlobalDecl(src, patt);
-    assertBlockDecl(src, patt);
-}
-
-function assertError(src, errorType) {
-    try {
-        Reflect.parse(src);
-    } catch (e) {
-        return;
-    }
-    throw new Error("expected " + errorType.name + " for " + uneval(src));
-}
-
-
-// general tests
-
-// NB: These are useful but for now jit-test doesn't do I/O reliably.
-
-//program(_).assert(Reflect.parse(snarf('data/flapjax.txt')));
-//program(_).assert(Reflect.parse(snarf('data/jquery-1.4.2.txt')));
-//program(_).assert(Reflect.parse(snarf('data/prototype.js')));
-//program(_).assert(Reflect.parse(snarf('data/dojo.js.uncompressed.js')));
-//program(_).assert(Reflect.parse(snarf('data/mootools-1.2.4-core-nc.js')));
-
-
-// declarations
-
-assertDecl("var x = 1, y = 2, z = 3",
-           varDecl([declarator(ident("x"), lit(1)),
-                    declarator(ident("y"), lit(2)),
-                    declarator(ident("z"), lit(3))]));
-assertDecl("var x, y, z",
-           varDecl([declarator(ident("x"), null),
-                    declarator(ident("y"), null),
-                    declarator(ident("z"), null)]));
-assertDecl("function foo() { }",
-           funDecl(ident("foo"), [], blockStmt([])));
-assertDecl("function foo() { return 42 }",
-           funDecl(ident("foo"), [], blockStmt([returnStmt(lit(42))])));
-
-
-// Bug 591437: rebound args have their defs turned into uses
-assertDecl("function f(a) { function a() { } }",
-           funDecl(ident("f"), [ident("a")], blockStmt([funDecl(ident("a"), [], blockStmt([]))])));
-assertDecl("function f(a,b,c) { function b() { } }",
-           funDecl(ident("f"), [ident("a"),ident("b"),ident("c")], blockStmt([funDecl(ident("b"), [], blockStmt([]))])));
-
-// expressions
-
-assertExpr("true", lit(true));
-assertExpr("false", lit(false));
-assertExpr("42", lit(42));
-assertExpr("(/asdf/)", lit(/asdf/));
-assertExpr("this", thisExpr);
-assertExpr("foo", ident("foo"));
-assertExpr("foo.bar", dotExpr(ident("foo"), ident("bar")));
-assertExpr("foo[bar]", memExpr(ident("foo"), ident("bar")));
-assertExpr("(function(){})", funExpr(null, [], blockStmt([])));
-assertExpr("(function f() {})", funExpr(ident("f"), [], blockStmt([])));
-assertExpr("(function f(x,y,z) {})", funExpr(ident("f"), [ident("x"),ident("y"),ident("z")], blockStmt([])));
-assertExpr("(++x)", updExpr("++", ident("x"), true));
-assertExpr("(x++)", updExpr("++", ident("x"), false));
-assertExpr("(+x)", unExpr("+", ident("x")));
-assertExpr("(-x)", unExpr("-", ident("x")));
-assertExpr("(!x)", unExpr("!", ident("x")));
-assertExpr("(~x)", unExpr("~", ident("x")));
-assertExpr("(delete x)", unExpr("delete", ident("x")));
-assertExpr("(typeof x)", unExpr("typeof", ident("x")));
-assertExpr("(void x)", unExpr("void", ident("x")));
-assertExpr("(x == y)", binExpr("==", ident("x"), ident("y")));
-assertExpr("(x != y)", binExpr("!=", ident("x"), ident("y")));
-assertExpr("(x === y)", binExpr("===", ident("x"), ident("y")));
-assertExpr("(x !== y)", binExpr("!==", ident("x"), ident("y")));
-assertExpr("(x < y)", binExpr("<", ident("x"), ident("y")));
-assertExpr("(x <= y)", binExpr("<=", ident("x"), ident("y")));
-assertExpr("(x > y)", binExpr(">", ident("x"), ident("y")));
-assertExpr("(x >= y)", binExpr(">=", ident("x"), ident("y")));
-assertExpr("(x << y)", binExpr("<<", ident("x"), ident("y")));
-assertExpr("(x >> y)", binExpr(">>", ident("x"), ident("y")));
-assertExpr("(x >>> y)", binExpr(">>>", ident("x"), ident("y")));
-assertExpr("(x + y)", binExpr("+", ident("x"), ident("y")));
-assertExpr("(w + x + y + z)", binExpr("+", binExpr("+", binExpr("+", ident("w"), ident("x")), ident("y")), ident("z")));
-assertExpr("(x - y)", binExpr("-", ident("x"), ident("y")));
-assertExpr("(w - x - y - z)", binExpr("-", binExpr("-", binExpr("-", ident("w"), ident("x")), ident("y")), ident("z")));
-assertExpr("(x * y)", binExpr("*", ident("x"), ident("y")));
-assertExpr("(x / y)", binExpr("/", ident("x"), ident("y")));
-assertExpr("(x % y)", binExpr("%", ident("x"), ident("y")));
-assertExpr("(x | y)", binExpr("|", ident("x"), ident("y")));
-assertExpr("(x ^ y)", binExpr("^", ident("x"), ident("y")));
-assertExpr("(x & y)", binExpr("&", ident("x"), ident("y")));
-assertExpr("(x in y)", binExpr("in", ident("x"), ident("y")));
-assertExpr("(x instanceof y)", binExpr("instanceof", ident("x"), ident("y")));
-assertExpr("(x = y)", aExpr("=", ident("x"), ident("y")));
-assertExpr("(x += y)", aExpr("+=", ident("x"), ident("y")));
-assertExpr("(x -= y)", aExpr("-=", ident("x"), ident("y")));
-assertExpr("(x *= y)", aExpr("*=", ident("x"), ident("y")));
-assertExpr("(x /= y)", aExpr("/=", ident("x"), ident("y")));
-assertExpr("(x %= y)", aExpr("%=", ident("x"), ident("y")));
-assertExpr("(x <<= y)", aExpr("<<=", ident("x"), ident("y")));
-assertExpr("(x >>= y)", aExpr(">>=", ident("x"), ident("y")));
-assertExpr("(x >>>= y)", aExpr(">>>=", ident("x"), ident("y")));
-assertExpr("(x |= y)", aExpr("|=", ident("x"), ident("y")));
-assertExpr("(x ^= y)", aExpr("^=", ident("x"), ident("y")));
-assertExpr("(x &= y)", aExpr("&=", ident("x"), ident("y")));
-assertExpr("(x || y)", logExpr("||", ident("x"), ident("y")));
-assertExpr("(x && y)", logExpr("&&", ident("x"), ident("y")));
-assertExpr("(w || x || y || z)", logExpr("||", logExpr("||", logExpr("||", ident("w"), ident("x")), ident("y")), ident("z")));
-assertExpr("(x ? y : z)", condExpr(ident("x"), ident("y"), ident("z")));
-assertExpr("(x,y)", seqExpr([ident("x"),ident("y")]));
-assertExpr("(x,y,z)", seqExpr([ident("x"),ident("y"),ident("z")]));
-assertExpr("(a,b,c,d,e,f,g)", seqExpr([ident("a"),ident("b"),ident("c"),ident("d"),ident("e"),ident("f"),ident("g")]));
-assertExpr("(new Object)", newExpr(ident("Object"), []));
-assertExpr("(new Object())", newExpr(ident("Object"), []));
-assertExpr("(new Object(42))", newExpr(ident("Object"), [lit(42)]));
-assertExpr("(new Object(1,2,3))", newExpr(ident("Object"), [lit(1),lit(2),lit(3)]));
-assertExpr("(String())", callExpr(ident("String"), []));
-assertExpr("(String(42))", callExpr(ident("String"), [lit(42)]));
-assertExpr("(String(1,2,3))", callExpr(ident("String"), [lit(1),lit(2),lit(3)]));
-assertExpr("[]", arrExpr([]));
-assertExpr("[1]", arrExpr([lit(1)]));
-assertExpr("[1,2]", arrExpr([lit(1),lit(2)]));
-assertExpr("[1,2,3]", arrExpr([lit(1),lit(2),lit(3)]));
-assertExpr("[1,,2,3]", arrExpr([lit(1),,lit(2),lit(3)]));
-assertExpr("[1,,,2,3]", arrExpr([lit(1),,,lit(2),lit(3)]));
-assertExpr("[1,,,2,,3]", arrExpr([lit(1),,,lit(2),,lit(3)]));
-assertExpr("[1,,,2,,,3]", arrExpr([lit(1),,,lit(2),,,lit(3)]));
-assertExpr("[,1,2,3]", arrExpr([,lit(1),lit(2),lit(3)]));
-assertExpr("[,,1,2,3]", arrExpr([,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3]", arrExpr([,,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3,]", arrExpr([,,,lit(1),lit(2),lit(3)]));
-assertExpr("[,,,1,2,3,,]", arrExpr([,,,lit(1),lit(2),lit(3),undefined]));
-assertExpr("[,,,1,2,3,,,]", arrExpr([,,,lit(1),lit(2),lit(3),undefined,undefined]));
-assertExpr("[,,,,,]", arrExpr([undefined,undefined,undefined,undefined,undefined]));
-assertExpr("({})", objExpr([]));
-assertExpr("({x:1})", objExpr([objProp(ident("x"), lit(1), "init")]));
-assertExpr("({x:1, y:2})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                    objProp(ident("y"), lit(2), "init")]));
-assertExpr("({x:1, y:2, z:3})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                         objProp(ident("y"), lit(2), "init"),
-                                         objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({x:1, 'y':2, z:3})", objExpr([objProp(ident("x"), lit(1), "init"),
-                                           objProp(lit("y"), lit(2), "init"),
-                                           objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({'x':1, 'y':2, z:3})", objExpr([objProp(lit("x"), lit(1), "init"),
-                                             objProp(lit("y"), lit(2), "init"),
-                                             objProp(ident("z"), lit(3), "init") ]));
-assertExpr("({'x':1, 'y':2, 3:3})", objExpr([objProp(lit("x"), lit(1), "init"),
-                                             objProp(lit("y"), lit(2), "init"),
-                                             objProp(lit(3), lit(3), "init") ]));
-
-// Bug 571617: eliminate constant-folding
-assertExpr("2 + 3", binExpr("+", lit(2), lit(3)));
-
-// Bug 632026: constant-folding
-assertExpr("typeof(0?0:a)", unExpr("typeof", condExpr(lit(0), lit(0), ident("a"))));
-
-// Bug 632056: constant-folding
-program([exprStmt(ident("f")),
-         ifStmt(lit(1),
-                funDecl(ident("f"), [], blockStmt([])),
-                null)]).assert(Reflect.parse("f; if (1) function f(){}"));
-
-// statements
-
-assertStmt("throw 42", throwStmt(lit(42)));
-assertStmt("for (;;) break", forStmt(null, null, null, breakStmt(null)));
-assertStmt("for (x; y; z) break", forStmt(ident("x"), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (var x; y; z) break", forStmt(varDecl([declarator(ident("x"), null)]), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (var x = 42; y; z) break", forStmt(varDecl([declarator(ident("x"), lit(42))]), ident("y"), ident("z"), breakStmt(null)));
-assertStmt("for (x; ; z) break", forStmt(ident("x"), null, ident("z"), breakStmt(null)));
-assertStmt("for (var x; ; z) break", forStmt(varDecl([declarator(ident("x"), null)]), null, ident("z"), breakStmt(null)));
-assertStmt("for (var x = 42; ; z) break", forStmt(varDecl([declarator(ident("x"), lit(42))]), null, ident("z"), breakStmt(null)));
-assertStmt("for (x; y; ) break", forStmt(ident("x"), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x; y; ) break", forStmt(varDecl([declarator(ident("x"), null)]), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x = 42; y; ) break", forStmt(varDecl([declarator(ident("x"),lit(42))]), ident("y"), null, breakStmt(null)));
-assertStmt("for (var x in y) break", forInStmt(varDecl([declarator(ident("x"),null)]), ident("y"), breakStmt(null)));
-assertStmt("for (x in y) break", forInStmt(ident("x"), ident("y"), breakStmt(null)));
-assertStmt("{ }", blockStmt([]));
-assertStmt("{ throw 1; throw 2; throw 3; }", blockStmt([ throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]));
-assertStmt(";", emptyStmt);
-assertStmt("if (foo) throw 42;", ifStmt(ident("foo"), throwStmt(lit(42)), null));
-assertStmt("if (foo) throw 42; else true;", ifStmt(ident("foo"), throwStmt(lit(42)), exprStmt(lit(true))));
-assertStmt("if (foo) { throw 1; throw 2; throw 3; }",
-           ifStmt(ident("foo"),
-                  blockStmt([throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]),
-                  null));
-assertStmt("if (foo) { throw 1; throw 2; throw 3; } else true;",
-           ifStmt(ident("foo"),
-                  blockStmt([throwStmt(lit(1)), throwStmt(lit(2)), throwStmt(lit(3))]),
-                  exprStmt(lit(true))));
-assertStmt("foo: for(;;) break foo;", labStmt(ident("foo"), forStmt(null, null, null, breakStmt(ident("foo")))));
-assertStmt("foo: for(;;) continue foo;", labStmt(ident("foo"), forStmt(null, null, null, continueStmt(ident("foo")))));
-assertStmt("with (obj) { }", withStmt(ident("obj"), blockStmt([])));
-assertStmt("with (obj) { obj; }", withStmt(ident("obj"), blockStmt([exprStmt(ident("obj"))])));
-assertStmt("while (foo) { }", whileStmt(ident("foo"), blockStmt([])));
-assertStmt("while (foo) { foo; }", whileStmt(ident("foo"), blockStmt([exprStmt(ident("foo"))])));
-assertStmt("do { } while (foo);", doStmt(blockStmt([]), ident("foo")));
-assertStmt("do { foo; } while (foo)", doStmt(blockStmt([exprStmt(ident("foo"))]), ident("foo")));
-assertStmt("switch (foo) { case 1: 1; break; case 2: 2; break; default: 3; }",
-           switchStmt(ident("foo"),
-                      [ caseClause(lit(1), [ exprStmt(lit(1)), breakStmt(null) ]),
-                        caseClause(lit(2), [ exprStmt(lit(2)), breakStmt(null) ]),
-                        defaultClause([ exprStmt(lit(3)) ]) ]));
-assertStmt("switch (foo) { case 1: 1; break; case 2: 2; break; default: 3; case 42: 42; }",
-           switchStmt(ident("foo"),
-                      [ caseClause(lit(1), [ exprStmt(lit(1)), breakStmt(null) ]),
-                        caseClause(lit(2), [ exprStmt(lit(2)), breakStmt(null) ]),
-                        defaultClause([ exprStmt(lit(3)) ]),
-                        caseClause(lit(42), [ exprStmt(lit(42)) ]) ]));
-assertStmt("try { } catch (e) { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [ catchClause(ident("e"), null, blockStmt([])) ],
-                   null));
-assertStmt("try { } catch (e) { } finally { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [ catchClause(ident("e"), null, blockStmt([])) ],
-                   blockStmt([])));
-assertStmt("try { } finally { }",
-           tryStmt(blockStmt([]),
-                   [],
-                   [],
-                   blockStmt([])));
-
-// redeclarations (TOK_NAME nodes with lexdef)
-
-assertStmt("function f() { function g() { } function g() { } }",
-           funDecl(ident("f"), [], blockStmt([funDecl(ident("g"), [], blockStmt([])),
-                                              funDecl(ident("g"), [], blockStmt([]))])));
-
-assertStmt("function f() { function g() { } function g() { return 42 } }",
-           funDecl(ident("f"), [], blockStmt([funDecl(ident("g"), [], blockStmt([])),
-                                              funDecl(ident("g"), [], blockStmt([returnStmt(lit(42))]))])));
-
-assertStmt("function f() { var x = 42; var x = 43; }",
-           funDecl(ident("f"), [], blockStmt([varDecl([declarator(ident("x"),lit(42))]),
-                                              varDecl([declarator(ident("x"),lit(43))])])));
-
-// getters and setters
-
- assertExpr("({ get x() { return 42 } })",
-            objExpr([ objProp(ident("x"),
-                              funExpr(null, [], blockStmt([returnStmt(lit(42))])),
-                              "get" ) ]));
- assertExpr("({ set x(v) { return 42 } })",
-            objExpr([ objProp(ident("x"),
-                              funExpr(null, [ident("v")], blockStmt([returnStmt(lit(42))])),
-                              "set" ) ]));
-
-}
-
-exports.testReflect = testReflect;
-
-}(typeof exports === 'undefined' ? this : exports));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/run.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/run.js
deleted file mode 100644 (file)
index 0f08f15..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint node:true */
-
-(function () {
-    'use strict';
-
-    var child = require('child_process'),
-        nodejs = '"' + process.execPath + '"',
-        ret = 0,
-        suites,
-        index;
-
-    suites = [
-        'runner',
-        'compat',
-        'parselibs'
-    ];
-
-    function nextTest() {
-        var suite = suites[index];
-
-        if (index < suites.length) {
-            child.exec(nodejs + ' ./test/' + suite + '.js', function (err, stdout, stderr) {
-                if (stdout) {
-                    process.stdout.write(suite + ': ' + stdout);
-                }
-                if (stderr) {
-                    process.stderr.write(suite + ': ' + stderr);
-                }
-                if (err) {
-                    ret = err.code;
-                }
-                index += 1;
-                nextTest();
-            });
-        } else {
-            process.exit(ret);
-        }
-    }
-
-    index = 0;
-    nextTest();
-}());
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/runner.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/runner.js
deleted file mode 100644 (file)
index 6811f65..0000000
+++ /dev/null
@@ -1,494 +0,0 @@
-/*
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2011 Arpad Borsos <arpad.borsos@googlemail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*jslint browser:true node:true */
-/*global esprima:true, testFixture:true */
-
-var runTests;
-
-// Special handling for regular expression literals: remove their `value`
-// property since it may be `null` if it represents a regular expression
-// that is not supported in the current environment. The `regex` property
-// will be compared instead.
-function adjustRegexLiteral(key, value) {
-    'use strict';
-    if (key === 'value' && value instanceof RegExp) {
-        value = value.toString();
-    }
-    return value;
-}
-
-function NotMatchingError(expected, actual) {
-    'use strict';
-    Error.call(this, 'Expected ');
-    this.expected = expected;
-    this.actual = actual;
-}
-NotMatchingError.prototype = new Error();
-
-function errorToObject(e) {
-    'use strict';
-    var msg = e.toString();
-
-    // Opera 9.64 produces an non-standard string in toString().
-    if (msg.substr(0, 6) !== 'Error:') {
-        if (typeof e.message === 'string') {
-            msg = 'Error: ' + e.message;
-        }
-    }
-
-    return {
-        index: e.index,
-        lineNumber: e.lineNumber,
-        column: e.column,
-        message: msg
-    };
-}
-
-function sortedObject(o) {
-    if (o === null) {
-        return o;
-    }
-    if (o instanceof Array) {
-        return o.map(sortedObject);
-    }
-    if (typeof o !== 'object') {
-        return o;
-    }
-    if (o instanceof RegExp) {
-        return o;
-    }
-    var keys = Object.keys(o);
-    var result = {
-        range: undefined,
-        loc: undefined
-    };
-    keys.forEach(function (key) {
-        if (o.hasOwnProperty(key)){
-            result[key] = sortedObject(o[key]);
-        }
-    });
-    return result;
-}
-
-function hasAttachedComment(syntax) {
-    var key;
-    for (key in syntax) {
-        if (key === 'leadingComments' || key === 'trailingComments') {
-            return true;
-        }
-       if (typeof syntax[key] === 'object' && syntax[key] !== null) {
-           if (hasAttachedComment(syntax[key])) {
-               return true;
-           }
-       }
-    }
-    return false;
-}
-
-function testParse(esprima, code, syntax) {
-    'use strict';
-    var expected, tree, actual, options, StringObject, i, len;
-
-    // alias, so that JSLint does not complain.
-    StringObject = String;
-
-    options = {
-        comment: (typeof syntax.comments !== 'undefined'),
-        range: true,
-        loc: true,
-        tokens: (typeof syntax.tokens !== 'undefined'),
-        raw: true,
-        tolerant: (typeof syntax.errors !== 'undefined'),
-        source: null
-    };
-
-    if (options.comment) {
-        options.attachComment = hasAttachedComment(syntax);
-    }
-
-    if (typeof syntax.tokens !== 'undefined') {
-        if (syntax.tokens.length > 0) {
-            options.range = (typeof syntax.tokens[0].range !== 'undefined');
-            options.loc = (typeof syntax.tokens[0].loc !== 'undefined');
-        }
-    }
-
-    if (typeof syntax.comments !== 'undefined') {
-        if (syntax.comments.length > 0) {
-            options.range = (typeof syntax.comments[0].range !== 'undefined');
-            options.loc = (typeof syntax.comments[0].loc !== 'undefined');
-        }
-    }
-
-    if (options.loc) {
-        options.source = syntax.loc.source;
-    }
-
-    syntax = sortedObject(syntax);
-    expected = JSON.stringify(syntax, adjustRegexLiteral, 4);
-    try {
-        // Some variations of the options.
-        tree = esprima.parse(code, { tolerant: options.tolerant });
-        tree = esprima.parse(code, { tolerant: options.tolerant, range: true });
-        tree = esprima.parse(code, { tolerant: options.tolerant, loc: true });
-
-        tree = esprima.parse(code, options);
-        tree = (options.comment || options.tokens || options.tolerant) ? tree : tree.body[0];
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-        tree = sortedObject(tree);
-        actual = JSON.stringify(tree, adjustRegexLiteral, 4);
-
-        // Only to ensure that there is no error when using string object.
-        esprima.parse(new StringObject(code), options);
-
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-
-    function filter(key, value) {
-        if (key === 'value' && value instanceof RegExp) {
-            value = value.toString();
-        }
-        return (key === 'loc' || key === 'range') ? undefined : value;
-    }
-
-    if (options.tolerant) {
-        return;
-    }
-
-
-    // Check again without any location info.
-    options.range = false;
-    options.loc = false;
-    syntax = sortedObject(syntax);
-    expected = JSON.stringify(syntax, filter, 4);
-    try {
-        tree = esprima.parse(code, options);
-        tree = (options.comment || options.tokens) ? tree : tree.body[0];
-
-        if (options.tolerant) {
-            for (i = 0, len = tree.errors.length; i < len; i += 1) {
-                tree.errors[i] = errorToObject(tree.errors[i]);
-            }
-        }
-        tree = sortedObject(tree);
-        actual = JSON.stringify(tree, filter, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function testTokenize(esprima, code, tokens) {
-    'use strict';
-    var options, expected, actual, tree;
-
-    options = {
-        comment: true,
-        tolerant: true,
-        loc: true,
-        range: true
-    };
-
-    expected = JSON.stringify(tokens, null, 4);
-
-    try {
-        tree = esprima.tokenize(code, options);
-        actual = JSON.stringify(tree, null, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function testError(esprima, code, exception) {
-    'use strict';
-    var i, options, expected, actual, err, handleInvalidRegexFlag, tokenize;
-
-    // Different parsing options should give the same error.
-    options = [
-        {},
-        { comment: true },
-        { raw: true },
-        { raw: true, comment: true }
-    ];
-
-    // If handleInvalidRegexFlag is true, an invalid flag in a regular expression
-    // will throw an exception. In some old version of V8, this is not the case
-    // and hence handleInvalidRegexFlag is false.
-    handleInvalidRegexFlag = false;
-    try {
-        'test'.match(new RegExp('[a-z]', 'x'));
-    } catch (e) {
-        handleInvalidRegexFlag = true;
-    }
-
-    exception.description = exception.message.replace(/Error: Line [0-9]+: /, '');
-
-    if (exception.tokenize) {
-        tokenize = true;
-        exception.tokenize = undefined;
-    }
-    expected = JSON.stringify(exception);
-
-    for (i = 0; i < options.length; i += 1) {
-
-        try {
-            if (tokenize) {
-                esprima.tokenize(code, options[i]);
-            } else {
-                esprima.parse(code, options[i]);
-            }
-        } catch (e) {
-            err = errorToObject(e);
-            err.description = e.description;
-            actual = JSON.stringify(err);
-        }
-
-        if (expected !== actual) {
-
-            // Compensate for old V8 which does not handle invalid flag.
-            if (exception.message.indexOf('Invalid regular expression') > 0) {
-                if (typeof actual === 'undefined' && !handleInvalidRegexFlag) {
-                    return;
-                }
-            }
-
-            throw new NotMatchingError(expected, actual);
-        }
-
-    }
-}
-
-function testAPI(esprima, code, result) {
-    'use strict';
-    var expected, res, actual;
-
-    expected = JSON.stringify(result.result, null, 4);
-    try {
-        if (typeof result.property !== 'undefined') {
-            res = esprima[result.property];
-        } else {
-            res = esprima[result.call].apply(esprima, result.args);
-        }
-        actual = JSON.stringify(res, adjustRegexLiteral, 4);
-    } catch (e) {
-        throw new NotMatchingError(expected, e.toString());
-    }
-    if (expected !== actual) {
-        throw new NotMatchingError(expected, actual);
-    }
-}
-
-function runTest(esprima, code, result) {
-    'use strict';
-    if (result.hasOwnProperty('lineNumber')) {
-        testError(esprima, code, result);
-    } else if (result.hasOwnProperty('result')) {
-        testAPI(esprima, code, result);
-    } else if (result instanceof Array) {
-        testTokenize(esprima, code, result);
-    } else {
-        testParse(esprima, code, result);
-    }
-}
-
-if (typeof window !== 'undefined') {
-    // Run all tests in a browser environment.
-    runTests = function () {
-        'use strict';
-        var total = 0,
-            failures = 0,
-            category,
-            fixture,
-            source,
-            tick,
-            expected;
-
-        function setText(el, str) {
-            if (typeof el.innerText === 'string') {
-                el.innerText = str;
-            } else {
-                el.textContent = str;
-            }
-        }
-
-        function startCategory(category) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('h4');
-            setText(e, category);
-            report.appendChild(e);
-        }
-
-        function reportSuccess(code) {
-            var report, e;
-            report = document.getElementById('report');
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-        }
-
-        function reportFailure(code, expected, actual) {
-            var report, e;
-
-            report = document.getElementById('report');
-
-            e = document.createElement('p');
-            setText(e, 'Code:');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'code');
-            setText(e, code);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Expected');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'expected');
-            setText(e, expected);
-            report.appendChild(e);
-
-            e = document.createElement('p');
-            setText(e, 'Actual');
-            report.appendChild(e);
-
-            e = document.createElement('pre');
-            e.setAttribute('class', 'actual');
-            setText(e, actual);
-            report.appendChild(e);
-        }
-
-        setText(document.getElementById('version'), esprima.version);
-
-        tick = new Date();
-        for (category in testFixture) {
-            if (testFixture.hasOwnProperty(category)) {
-                startCategory(category);
-                fixture = testFixture[category];
-                for (source in fixture) {
-                    if (fixture.hasOwnProperty(source)) {
-                        expected = fixture[source];
-                        total += 1;
-                        try {
-                            runTest(esprima, source, expected);
-                            reportSuccess(source, JSON.stringify(expected, null, 4));
-                        } catch (e) {
-                            failures += 1;
-                            reportFailure(source, e.expected, e.actual);
-                        }
-                    }
-                }
-            }
-        }
-        tick = (new Date()) - tick;
-
-        if (failures > 0) {
-            document.getElementById('status').className = 'alert-box alert';
-            setText(document.getElementById('status'), total + ' tests. ' +
-                'Failures: ' + failures + '. ' + tick + ' ms.');
-        } else {
-            document.getElementById('status').className = 'alert-box success';
-            setText(document.getElementById('status'), total + ' tests. ' +
-                'No failure. ' + tick + ' ms.');
-        }
-    };
-} else {
-    (function () {
-        'use strict';
-
-        var esprima = require('../esprima'),
-            vm = require('vm'),
-            fs = require('fs'),
-            diff = require('json-diff').diffString,
-            total = 0,
-            failures = [],
-            tick = new Date(),
-            expected,
-            header;
-
-        vm.runInThisContext(fs.readFileSync(__dirname + '/test.js', 'utf-8'));
-
-        Object.keys(testFixture).forEach(function (category) {
-            Object.keys(testFixture[category]).forEach(function (source) {
-                total += 1;
-                expected = testFixture[category][source];
-                try {
-                    runTest(esprima, source, expected);
-                } catch (e) {
-                    e.source = source;
-                    failures.push(e);
-                }
-            });
-        });
-        tick = (new Date()) - tick;
-
-        header = total + ' tests. ' + failures.length + ' failures. ' +
-            tick + ' ms';
-        if (failures.length) {
-            console.error(header);
-            failures.forEach(function (failure) {
-                try {
-                    var expectedObject = JSON.parse(failure.expected);
-                    var actualObject = JSON.parse(failure.actual);
-
-                    console.error(failure.source + ': Expected\n    ' +
-                        failure.expected.split('\n').join('\n    ') +
-                        '\nto match\n    ' + failure.actual + '\nDiff:\n' +
-                        diff(expectedObject, actualObject));
-                } catch (ex) {
-                    console.error(failure.source + ': Expected\n    ' +
-                        failure.expected.split('\n').join('\n    ') +
-                        '\nto match\n    ' + failure.actual);
-                }
-            });
-        } else {
-            console.log(header);
-        }
-        process.exit(failures.length === 0 ? 0 : 1);
-    }());
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/node_modules/esprima/test/test.js
deleted file mode 100644 (file)
index 20370b7..0000000
+++ /dev/null
@@ -1,29995 +0,0 @@
-/*
-  Copyright (C) 2013 Mathias Bynens <mathias@qiwi.be>
-  Copyright (C) 2012 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2012 Joost-Wim Boekesteijn <joost-wim@boekesteijn.nl>
-  Copyright (C) 2012 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2012 Arpad Borsos <arpad.borsos@googlemail.com>
-  Copyright (C) 2011 Ariya Hidayat <ariya.hidayat@gmail.com>
-  Copyright (C) 2011 Yusuke Suzuki <utatane.tea@gmail.com>
-  Copyright (C) 2011 Arpad Borsos <arpad.borsos@googlemail.com>
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
-  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-var testFixture = {
-
-    'Primary Expression': {
-
-        'this\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'ThisExpression',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }],
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'this',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        'null\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: null,
-                    raw: 'null',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }],
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            },
-            tokens: [{
-                type: 'Null',
-                value: 'null',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        '\n    42\n\n': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [5, 7],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [5, 7],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            tokens: [{
-                type: 'Numeric',
-                value: '42',
-                range: [5, 7],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }]
-        },
-
-        '(1 + 2 ) * 3': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [1, 2],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 2 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [1, 6],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        }
-
-    },
-
-    'Grouping Operator': {
-
-        '(1) + (2  ) + 3': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [1, 2],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 2 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [7, 8],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    range: [0, 11],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [14, 15],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '4 + 5 << (6)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Literal',
-                        value: 4,
-                        raw: '4',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 5,
-                        raw: '5',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 6,
-                    raw: '6',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        }
-
-    },
-
-    'Array Initializer': {
-
-        'x = []': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'ArrayExpression',
-                        elements: [],
-                        range: [4, 6],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            },
-            tokens: [{
-                type: 'Identifier',
-                value: 'x',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [2, 3],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '[',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: ']',
-                range: [5, 6],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 6 }
-                }
-            }]
-        },
-
-        'x = [ ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x = [ 42 ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [6, 8],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 8 }
-                        }
-                    }],
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'x = [ 42, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [6, 8],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 8 }
-                        }
-                    }],
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x = [ ,, 42 ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [
-                        null,
-                        null,
-                        {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [9, 11],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 11 }
-                            }
-                        }],
-                    range: [4, 13],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'x = [ 1, 2, 3, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = [ 1, 2,, 3, ]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }, null, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '日本語 = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '日本語',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'T\u203F = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u203F',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'T\u200C = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u200C',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'T\u200D = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'T\u200D',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\u2163\u2161 = []': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '\u2163\u2161',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\u2163\u2161\u200A=\u2009[]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: '\u2163\u2161',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Object Initializer': {
-
-        'x = {}': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [],
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x = { }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [],
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x = { answer: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'answer',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [14, 16],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 16],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 16 }
-                        }
-                    }],
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'x = { if: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [6, 8],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 12],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 12 }
-                        }
-                    }],
-                    range: [4, 14],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x = { true: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [12, 14],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = { false: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [6, 11],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 11 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [13, 15],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 15],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 15 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'x = { null: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [12, 14],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'x = { "answer": 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'answer',
-                            raw: '"answer"',
-                            range: [6, 14],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [16, 18],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 18],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }],
-                    range: [4, 20],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'x = { x: 1, x: 2 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [
-                        {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [6, 7],
-                                loc: {
-                                    start: { line: 1, column: 6 },
-                                    end: { line: 1, column: 7 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [9, 10],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 10 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [12, 13],
-                                loc: {
-                                    start: { line: 1, column: 12 },
-                                    end: { line: 1, column: 13 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 2,
-                                raw: '2',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [12, 16],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 16 }
-                            }
-                        }
-                    ],
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'x = { get width() { return m_width } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ReturnStatement',
-                                    argument: {
-                                        type: 'Identifier',
-                                        name: 'm_width',
-                                        range: [27, 34],
-                                        loc: {
-                                            start: { line: 1, column: 27 },
-                                            end: { line: 1, column: 34 }
-                                        }
-                                    },
-                                    range: [20, 35],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 35 }
-                                    }
-                                }],
-                                range: [18, 36],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 36],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 36],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 36 }
-                        }
-                    }],
-                    range: [4, 38],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            },
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'x = { get undef() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'undef',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [18, 20],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 20 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 20],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 20],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'x = { get if() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [15, 17],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [15, 17],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 17],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 17 }
-                        }
-                    }],
-                    range: [4, 19],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 19],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'x = { get true() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [17, 19],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [17, 19],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 19],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }],
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'x = { get false() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [18, 20],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 20 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 20],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 20],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'x = { get null() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [17, 19],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [17, 19],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 19],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }],
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'x = { get "undef"() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'undef',
-                            raw: '"undef"',
-                            range: [10, 17],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [20, 22],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 22 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [20, 22],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 22 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 22],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 22 }
-                        }
-                    }],
-                    range: [4, 24],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [0, 24],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'x = { get 10() {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 10,
-                            raw: '10',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [15, 17],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [15, 17],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 17],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 17 }
-                        }
-                    }],
-                    range: [4, 19],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 19],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'x = { set width(w) { m_width = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_width',
-                                            range: [21, 28],
-                                            loc: {
-                                                start: { line: 1, column: 21 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [21, 32],
-                                        loc: {
-                                            start: { line: 1, column: 21 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [21, 33],
-                                    loc: {
-                                        start: { line: 1, column: 21 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [19, 34],
-                                loc: {
-                                    start: { line: 1, column: 19 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [19, 34],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set if(w) { m_if = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'if',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [13, 14],
-                                loc: {
-                                    start: { line: 1, column: 13 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_if',
-                                            range: [18, 22],
-                                            loc: {
-                                                start: { line: 1, column: 18 },
-                                                end: { line: 1, column: 22 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [25, 26],
-                                            loc: {
-                                                start: { line: 1, column: 25 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        range: [18, 26],
-                                        loc: {
-                                            start: { line: 1, column: 18 },
-                                            end: { line: 1, column: 26 }
-                                        }
-                                    },
-                                    range: [18, 27],
-                                    loc: {
-                                        start: { line: 1, column: 18 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                }],
-                                range: [16, 28],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [16, 28],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 28 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 28],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 28 }
-                        }
-                    }],
-                    range: [4, 30],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [0, 30],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'x = { set true(w) { m_true = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'true',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_true',
-                                            range: [20, 26],
-                                            loc: {
-                                                start: { line: 1, column: 20 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [29, 30],
-                                            loc: {
-                                                start: { line: 1, column: 29 },
-                                                end: { line: 1, column: 30 }
-                                            }
-                                        },
-                                        range: [20, 30],
-                                        loc: {
-                                            start: { line: 1, column: 20 },
-                                            end: { line: 1, column: 30 }
-                                        }
-                                    },
-                                    range: [20, 31],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                range: [18, 32],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 32 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 32],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 32 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 32],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 32 }
-                        }
-                    }],
-                    range: [4, 34],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [0, 34],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'x = { set false(w) { m_false = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'false',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_false',
-                                            range: [21, 28],
-                                            loc: {
-                                                start: { line: 1, column: 21 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [21, 32],
-                                        loc: {
-                                            start: { line: 1, column: 21 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [21, 33],
-                                    loc: {
-                                        start: { line: 1, column: 21 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [19, 34],
-                                loc: {
-                                    start: { line: 1, column: 19 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [19, 34],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set null(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'null',
-                            range: [10, 14],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [15, 16],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [20, 26],
-                                            loc: {
-                                                start: { line: 1, column: 20 },
-                                                end: { line: 1, column: 26 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [29, 30],
-                                            loc: {
-                                                start: { line: 1, column: 29 },
-                                                end: { line: 1, column: 30 }
-                                            }
-                                        },
-                                        range: [20, 30],
-                                        loc: {
-                                            start: { line: 1, column: 20 },
-                                            end: { line: 1, column: 30 }
-                                        }
-                                    },
-                                    range: [20, 31],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                range: [18, 32],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 32 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 32],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 32 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 32],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 32 }
-                        }
-                    }],
-                    range: [4, 34],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [0, 34],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'x = { set "null"(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'null',
-                            raw: '"null"',
-                            range: [10, 16],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [17, 18],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 18 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [22, 28],
-                                            loc: {
-                                                start: { line: 1, column: 22 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [31, 32],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 32 }
-                                            }
-                                        },
-                                        range: [22, 32],
-                                        loc: {
-                                            start: { line: 1, column: 22 },
-                                            end: { line: 1, column: 32 }
-                                        }
-                                    },
-                                    range: [22, 33],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                }],
-                                range: [20, 34],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [20, 34],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 34],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [4, 36],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'x = { set 10(w) { m_null = w } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 10,
-                            raw: '10',
-                            range: [10, 12],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'w',
-                                range: [13, 14],
-                                loc: {
-                                    start: { line: 1, column: 13 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_null',
-                                            range: [18, 24],
-                                            loc: {
-                                                start: { line: 1, column: 18 },
-                                                end: { line: 1, column: 24 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'w',
-                                            range: [27, 28],
-                                            loc: {
-                                                start: { line: 1, column: 27 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        range: [18, 28],
-                                        loc: {
-                                            start: { line: 1, column: 18 },
-                                            end: { line: 1, column: 28 }
-                                        }
-                                    },
-                                    range: [18, 29],
-                                    loc: {
-                                        start: { line: 1, column: 18 },
-                                        end: { line: 1, column: 29 }
-                                    }
-                                }],
-                                range: [16, 30],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 30 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [16, 30],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 30 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 30],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 30 }
-                        }
-                    }],
-                    range: [4, 32],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                range: [0, 32],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 32 }
-                }
-            },
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 32 }
-            }
-        },
-
-        'x = { get: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'get',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [11, 13],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 13 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 13],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        'x = { set: 43 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'set',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 43,
-                            raw: '43',
-                            range: [11, 13],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 13 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 13],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        'x = { __proto__: 2 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: '__proto__',
-                            range: [6, 15],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 2,
-                            raw: '2',
-                            range: [17, 18],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 18],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }],
-                    range: [4, 20],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'x = {"__proto__": 2 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: '__proto__',
-                            raw: '"__proto__"',
-                            range: [5, 16],
-                            loc: {
-                                start: { line: 1, column: 5 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 2,
-                            raw: '2',
-                            range: [18, 19],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [5, 19],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }],
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'x = { get width() { return m_width }, set width(width) { m_width = width; } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ReturnStatement',
-                                    argument: {
-                                        type: 'Identifier',
-                                        name: 'm_width',
-                                        range: [27, 34],
-                                        loc: {
-                                            start: { line: 1, column: 27 },
-                                            end: { line: 1, column: 34 }
-                                        }
-                                    },
-                                    range: [20, 35],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 35 }
-                                    }
-                                }],
-                                range: [18, 36],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [18, 36],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        kind: 'get',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 36],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 36 }
-                        }
-                    }, {
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'width',
-                            range: [42, 47],
-                            loc: {
-                                start: { line: 1, column: 42 },
-                                end: { line: 1, column: 47 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'width',
-                                range: [48, 53],
-                                loc: {
-                                    start: { line: 1, column: 48 },
-                                    end: { line: 1, column: 53 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'ExpressionStatement',
-                                    expression: {
-                                        type: 'AssignmentExpression',
-                                        operator: '=',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'm_width',
-                                            range: [57, 64],
-                                            loc: {
-                                                start: { line: 1, column: 57 },
-                                                end: { line: 1, column: 64 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'Identifier',
-                                            name: 'width',
-                                            range: [67, 72],
-                                            loc: {
-                                                start: { line: 1, column: 67 },
-                                                end: { line: 1, column: 72 }
-                                            }
-                                        },
-                                        range: [57, 72],
-                                        loc: {
-                                            start: { line: 1, column: 57 },
-                                            end: { line: 1, column: 72 }
-                                        }
-                                    },
-                                    range: [57, 73],
-                                    loc: {
-                                        start: { line: 1, column: 57 },
-                                        end: { line: 1, column: 73 }
-                                    }
-                                }],
-                                range: [55, 75],
-                                loc: {
-                                    start: { line: 1, column: 55 },
-                                    end: { line: 1, column: 75 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [55, 75],
-                            loc: {
-                                start: { line: 1, column: 55 },
-                                end: { line: 1, column: 75 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [38, 75],
-                        loc: {
-                            start: { line: 1, column: 38 },
-                            end: { line: 1, column: 75 }
-                        }
-                    }],
-                    range: [4, 77],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 77 }
-                    }
-                },
-                range: [0, 77],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 77 }
-                }
-            },
-            range: [0, 77],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 77 }
-            }
-        }
-
-
-    },
-
-    'Comments': {
-
-        '/* block comment */ 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [20, 22],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [20, 22],
-            loc: {
-                start: { line: 1, column: 20 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '42 /* block comment 1 */ /* block comment 2 */': {
-            "type": "Program",
-            "body": [
-                {
-                    "type": "ExpressionStatement",
-                    "expression": {
-                        "type": "Literal",
-                        "value": 42,
-                        "raw": "42",
-                        "range": [
-                            0,
-                            2
-                        ],
-                        "trailingComments": [
-                            {
-                                "type": "Block",
-                                "value": " block comment 1 ",
-                                "range": [
-                                    3,
-                                    24
-                                ]
-                            },
-                            {
-                                "type": "Block",
-                                "value": " block comment 2 ",
-                                "range": [
-                                    25,
-                                    46
-                                ]
-                            }
-                        ]
-                    },
-                    "range": [
-                        0,
-                        46
-                    ]
-                }
-            ],
-            "range": [
-                0,
-                46
-            ],
-            "comments": [
-                {
-                    "type": "Block",
-                    "value": " block comment 1 ",
-                    "range": [
-                        3,
-                        24
-                    ]
-                },
-                {
-                    "type": "Block",
-                    "value": " block comment 2 ",
-                    "range": [
-                        25,
-                        46
-                    ]
-                }
-            ],
-            "tokens": [
-                {
-                    "type": "Numeric",
-                    "range": [
-                        0,
-                        2
-                    ],
-                    "value": "42"
-                }
-            ]
-        },
-
-        'var p1;/* block comment 1 */ /* block comment 2 */': {
-            "range": [
-                0,
-                7
-            ],
-            "loc": {
-                "start": {
-                    "line": 1,
-                    "column": 0
-                },
-                "end": {
-                    "line": 1,
-                    "column": 7
-                }
-            },
-            "type": "Program",
-            "body": [
-                {
-                    "range": [
-                        0,
-                        7
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 7
-                        }
-                    },
-                    "type": "VariableDeclaration",
-                    "declarations": [
-                        {
-                            "range": [
-                                4,
-                                6
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 4
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 6
-                                }
-                            },
-                            "type": "VariableDeclarator",
-                            "id": {
-                                "range": [
-                                    4,
-                                    6
-                                ],
-                                "loc": {
-                                    "start": {
-                                        "line": 1,
-                                        "column": 4
-                                    },
-                                    "end": {
-                                        "line": 1,
-                                        "column": 6
-                                    }
-                                },
-                                "type": "Identifier",
-                                "name": "p1"
-                            },
-                            "init": null
-                        }
-                    ],
-                    "kind": "var",
-                    "trailingComments": [
-                        {
-                            "range": [
-                                7,
-                                28
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 7
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 28
-                                }
-                            },
-                            "type": "Block",
-                            "value": " block comment 1 "
-                        },
-                        {
-                            "range": [
-                                29,
-                                50
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 29
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 50
-                                }
-                            },
-                            "type": "Block",
-                            "value": " block comment 2 "
-                        }
-                    ]
-                }
-            ],
-            "comments": [
-                {
-                    "range": [
-                        7,
-                        28
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 7
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 28
-                        }
-                    },
-                    "type": "Block",
-                    "value": " block comment 1 "
-                },
-                {
-                    "range": [
-                        29,
-                        50
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 29
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 50
-                        }
-                    },
-                    "type": "Block",
-                    "value": " block comment 2 "
-                }
-            ],
-            "tokens": [
-                {
-                    "range": [
-                        0,
-                        3
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 3
-                        }
-                    },
-                    "type": "Keyword",
-                    "value": "var"
-                },
-                {
-                    "range": [
-                        4,
-                        6
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 4
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 6
-                        }
-                    },
-                    "type": "Identifier",
-                    "value": "p1"
-                },
-                {
-                    "range": [
-                        6,
-                        7
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 6
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 7
-                        }
-                    },
-                    "type": "Punctuator",
-                    "value": ";"
-                }
-            ]
-        },
-
-        '/*42*/': {
-            "range": [
-                6,
-                6
-            ],
-            "loc": {
-                "start": {
-                    "line": 1,
-                    "column": 6
-                },
-                "end": {
-                    "line": 1,
-                    "column": 6
-                }
-            },
-            "type": "Program",
-            "body": [],
-            "leadingComments": [
-                {
-                    "range": [
-                        0,
-                        6
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 6
-                        }
-                    },
-                    "type": "Block",
-                    "value": "42"
-                }
-            ],
-            "comments": [
-                {
-                    "range": [
-                        0,
-                        6
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 6
-                        }
-                    },
-                    "type": "Block",
-                    "value": "42"
-                }
-            ],
-            "tokens": []
-        },
-
-        '(a + /* assignmenr */b ) * c': {
-            "type": "Program",
-            "body": [
-                {
-                    "type": "ExpressionStatement",
-                    "expression": {
-                        "type": "BinaryExpression",
-                        "operator": "*",
-                        "left": {
-                            "type": "BinaryExpression",
-                            "operator": "+",
-                            "left": {
-                                "type": "Identifier",
-                                "name": "a",
-                                "range": [
-                                    1,
-                                    2
-                                ],
-                                "loc": {
-                                    "start": {
-                                        "line": 1,
-                                        "column": 1
-                                    },
-                                    "end": {
-                                        "line": 1,
-                                        "column": 2
-                                    }
-                                }
-                            },
-                            "right": {
-                                "type": "Identifier",
-                                "name": "b",
-                                "range": [
-                                    21,
-                                    22
-                                ],
-                                "loc": {
-                                    "start": {
-                                        "line": 1,
-                                        "column": 21
-                                    },
-                                    "end": {
-                                        "line": 1,
-                                        "column": 22
-                                    }
-                                },
-                                "leadingComments": [
-                                    {
-                                        "type": "Block",
-                                        "value": " assignmenr ",
-                                        "range": [
-                                            5,
-                                            21
-                                        ],
-                                        "loc": {
-                                            "start": {
-                                                "line": 1,
-                                                "column": 5
-                                            },
-                                            "end": {
-                                                "line": 1,
-                                                "column": 21
-                                            }
-                                        }
-                                    }
-                                ]
-                            },
-                            "range": [
-                                1,
-                                22
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 1
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 22
-                                }
-                            }
-                        },
-                        "right": {
-                            "type": "Identifier",
-                            "name": "c",
-                            "range": [
-                                27,
-                                28
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 27
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 28
-                                }
-                            }
-                        },
-                        "range": [
-                            0,
-                            28
-                        ],
-                        "loc": {
-                            "start": {
-                                "line": 1,
-                                "column": 0
-                            },
-                            "end": {
-                                "line": 1,
-                                "column": 28
-                            }
-                        }
-                    },
-                    "range": [
-                        0,
-                        28
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 28
-                        }
-                    }
-                }
-            ],
-            "range": [
-                0,
-                28
-            ],
-            "loc": {
-                "start": {
-                    "line": 1,
-                    "column": 0
-                },
-                "end": {
-                    "line": 1,
-                    "column": 28
-                }
-            },
-            "comments": [
-                {
-                    "type": "Block",
-                    "value": " assignmenr ",
-                    "range": [
-                        5,
-                        21
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 5
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 21
-                        }
-                    }
-                }
-            ]
-        },
-
-        '/* assignmenr */\n a = b': {
-            "type": "Program",
-            "body": [
-                {
-                    "type": "ExpressionStatement",
-                    "expression": {
-                        "type": "AssignmentExpression",
-                        "operator": "=",
-                        "left": {
-                            "type": "Identifier",
-                            "name": "a",
-                            "range": [
-                                18,
-                                19
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 2,
-                                    "column": 1
-                                },
-                                "end": {
-                                    "line": 2,
-                                    "column": 2
-                                }
-                            }
-                        },
-                        "right": {
-                            "type": "Identifier",
-                            "name": "b",
-                            "range": [
-                                22,
-                                23
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 2,
-                                    "column": 5
-                                },
-                                "end": {
-                                    "line": 2,
-                                    "column": 6
-                                }
-                            }
-                        },
-                        "range": [
-                            18,
-                            23
-                        ],
-                        "loc": {
-                            "start": {
-                                "line": 2,
-                                "column": 1
-                            },
-                            "end": {
-                                "line": 2,
-                                "column": 6
-                            }
-                        }
-                    },
-                    "range": [
-                        18,
-                        23
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 2,
-                            "column": 1
-                        },
-                        "end": {
-                            "line": 2,
-                            "column": 6
-                        }
-                    },
-                    "leadingComments": [
-                        {
-                            "type": "Block",
-                            "value": " assignmenr ",
-                            "range": [
-                                0,
-                                16
-                            ],
-                            "loc": {
-                                "start": {
-                                    "line": 1,
-                                    "column": 0
-                                },
-                                "end": {
-                                    "line": 1,
-                                    "column": 16
-                                }
-                            }
-                        }
-                    ]
-                }
-            ],
-            "range": [
-                18,
-                23
-            ],
-            "loc": {
-                "start": {
-                    "line": 2,
-                    "column": 1
-                },
-                "end": {
-                    "line": 2,
-                    "column": 6
-                }
-            },
-            "comments": [
-                {
-                    "type": "Block",
-                    "value": " assignmenr ",
-                    "range": [
-                        0,
-                        16
-                    ],
-                    "loc": {
-                        "start": {
-                            "line": 1,
-                            "column": 0
-                        },
-                        "end": {
-                            "line": 1,
-                            "column": 16
-                        }
-                    }
-                }
-            ]
-        },
-
-        '42 /*The*/ /*Answer*/': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'The',
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            }, {
-                type: 'Block',
-                value: 'Answer',
-                range: [11, 21],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 21 }
-                }
-            }]
-        },
-
-        '42 /*the*/ /*answer*/': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2]
-                },
-                range: [0, 21]
-            }],
-            range: [0, 21],
-            comments: [{
-                type: 'Block',
-                value: 'the',
-                range: [3, 10]
-            }, {
-                type: 'Block',
-                value: 'answer',
-                range: [11, 21]
-            }]
-        },
-
-        '42 /* the * answer */': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        '42 /* The * answer */': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' The * answer ',
-                range: [3, 21],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 21 }
-                }
-            }]
-        },
-
-        '/* multiline\ncomment\nshould\nbe\nignored */ 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [42, 44],
-                loc: {
-                    start: { line: 5, column: 11 },
-                    end: { line: 5, column: 13 }
-                }
-            },
-            range: [42, 44],
-            loc: {
-                start: { line: 5, column: 11 },
-                end: { line: 5, column: 13 }
-            }
-        },
-
-        '/*a\r\nb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [9, 11],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [9, 11],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                },
-                leadingComments: [{
-                    type: 'Block',
-                    value: 'a\r\nb',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                }]
-            }],
-            range: [9, 11],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\r\nb',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\rb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [8, 10],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [8, 10],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\rb',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\nb*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [8, 10],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                },
-                leadingComments: [{
-                    type: 'Block',
-                    value: 'a\nb',
-                    range: [0, 7],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                }]
-            }],
-            range: [8, 10],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\nb',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '/*a\nc*/ 42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 2, column: 4 },
-                        end: { line: 2, column: 6 }
-                    }
-                },
-                range: [8, 10],
-                loc: {
-                    start: { line: 2, column: 4 },
-                    end: { line: 2, column: 6 }
-                },
-                leadingComments: [{
-                    type: 'Block',
-                    value: 'a\nc',
-                    range: [0, 7],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                }]
-            }],
-            range: [8, 10],
-            loc: {
-                start: { line: 2, column: 4 },
-                end: { line: 2, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: 'a\nc',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 3 }
-                }
-            }]
-        },
-
-        '// one\\n': {
-            type: 'Program',
-            body: [],
-            range: [8, 8],
-            loc: {
-                start: { line: 1, column: 8 },
-                end: { line: 1, column: 8 }
-            },
-            leadingComments: [{
-                type: 'Line',
-                value: ' one\\n',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            }],
-            comments: [{
-                type: 'Line',
-                value: ' one\\n',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            }]
-        },
-
-        '// line comment\n42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [16, 18],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            },
-            range: [16, 18],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            }
-        },
-
-        '42 // line comment': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    },
-                    trailingComments: [{
-                        type: 'Line',
-                        value: ' line comment',
-                        range: [3, 18],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }]
-                },
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' line comment',
-                range: [3, 18],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 18 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [17, 19],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 2 }
-                    }
-                },
-                range: [17, 19],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                },
-                leadingComments: [{
-                    type: 'Line',
-                    value: ' Hello, world!',
-                    range: [0, 16],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 16 }
-                    }
-                }]
-            }],
-            range: [17, 19],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n': {
-            type: 'Program',
-            body: [],
-            range: [17, 17],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '// Hallo, world!\n': {
-            type: 'Program',
-            body: [],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 0 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hallo, world!',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        '//\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [3, 5],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 2 }
-                    }
-                },
-                range: [3, 5],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                },
-                leadingComments: [{
-                    type: 'Line',
-                    value: '',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    }
-                }]
-            }],
-            range: [3, 5],
-            loc: {
-                start: { line: 2, column: 0 },
-                end: { line: 2, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: '',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            }]
-        },
-
-        '//': {
-            type: 'Program',
-            body: [],
-            range: [2, 2],
-            loc: {
-                start: { line: 1, column: 2 },
-                end: { line: 1, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: '',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            }]
-        },
-
-        '// ': {
-            type: 'Program',
-            body: [],
-            range: [3, 3],
-            comments: [{
-                type: 'Line',
-                value: ' ',
-                range: [0, 3]
-            }]
-        },
-
-        '/**/42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [4, 6],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 6 }
-                },
-                leadingComments: [{
-                    type: 'Block',
-                    value: '',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                }]
-            }],
-            range: [4, 6],
-            loc: {
-                start: { line: 1, column: 4 },
-                end: { line: 1, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: '',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        '42/**/': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [0, 2],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 2 }
-                    },
-                    trailingComments: [{
-                        type: 'Block',
-                        value: '',
-                        range: [2, 6],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 6 }
-                        }
-                    }]
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            },
-            comments: [{
-                type: 'Block',
-                value: '',
-                range: [2, 6],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 6 }
-                }
-            }]
-        },
-
-        '// Hello, world!\n\n//   Another hello\n42': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [37, 39],
-                    loc: {
-                        start: { line: 4, column: 0 },
-                        end: { line: 4, column: 2 }
-                    }
-                },
-                range: [37, 39],
-                loc: {
-                    start: { line: 4, column: 0 },
-                    end: { line: 4, column: 2 }
-                },
-                leadingComments: [{
-                    type: 'Line',
-                    value: ' Hello, world!',
-                    range: [0, 16],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 16 }
-                    }
-                }, {
-                    type: 'Line',
-                    value: '   Another hello',
-                    range: [18, 36],
-                    loc: {
-                        start: { line: 3, column: 0 },
-                        end: { line: 3, column: 18 }
-                    }
-                }]
-            }],
-            range: [37, 39],
-            loc: {
-                start: { line: 4, column: 0 },
-                end: { line: 4, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Hello, world!',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }, {
-                type: 'Line',
-                value: '   Another hello',
-                range: [18, 36],
-                loc: {
-                    start: { line: 3, column: 0 },
-                    end: { line: 3, column: 18 }
-                }
-            }]
-        },
-
-        'if (x) { doThat() // Some comment\n }': {
-            type: 'Program',
-            body: [{
-                type: 'IfStatement',
-                test: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                consequent: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'doThat',
-                                range: [9, 15],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 15 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [9, 17],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        range: [9, 17],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 17 }
-                        },
-                        trailingComments: [{
-                            type: 'Line',
-                            value: ' Some comment',
-                            range: [18, 33],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 33 }
-                            }
-                        }]
-                    }],
-                    range: [7, 36],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 2, column: 2 }
-                    }
-                },
-                alternate: null,
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 2 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Some comment',
-                range: [18, 33],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 33 }
-                }
-            }]
-        },
-
-        'if (x) { // Some comment\ndoThat(); }': {
-            type: 'Program',
-            body: [{
-                type: 'IfStatement',
-                test: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                consequent: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'doThat',
-                                range: [25, 31],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 6 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [25, 33],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 8 }
-                            }
-                        },
-                        range: [25, 34],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 9 }
-                        },
-                        leadingComments: [{
-                            type: 'Line',
-                            value: ' Some comment',
-                            range: [9, 24],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 24 }
-                            }
-                        }]
-                    }],
-                    range: [7, 36],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 2, column: 11 }
-                    }
-                },
-                alternate: null,
-                range: [0, 36],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 11 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 11 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' Some comment',
-                range: [9, 24],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 24 }
-                }
-            }]
-        },
-
-        'if (x) { /* Some comment */ doThat() }': {
-            type: 'Program',
-            body: [{
-                type: 'IfStatement',
-                test: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                consequent: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'doThat',
-                                range: [28, 34],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [28, 36],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        range: [28, 37],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 37 }
-                        },
-                        leadingComments: [{
-                            type: 'Block',
-                            value: ' Some comment ',
-                            range: [9, 27],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 27 }
-                            }
-                        }]
-                    }],
-                    range: [7, 38],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                alternate: null,
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' Some comment ',
-                range: [9, 27],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 27 }
-                }
-            }]
-        },
-
-        'if (x) { doThat() /* Some comment */ }': {
-            type: 'Program',
-            body: [{
-                type: 'IfStatement',
-                test: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                consequent: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'doThat',
-                                range: [9, 15],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 15 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [9, 17],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 17 }
-                            },
-                            trailingComments: [{
-                                type: 'Block',
-                                value: ' Some comment ',
-                                range: [18, 36],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            }]
-                        },
-                        range: [9, 37],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [7, 38],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                alternate: null,
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' Some comment ',
-                range: [18, 36],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 36 }
-                }
-            }]
-        },
-
-        'switch (answer) { case 42: /* perfect */ bingo() }': {
-            type: 'Program',
-            body: [{
-                type: 'SwitchStatement',
-                discriminant: {
-                    type: 'Identifier',
-                    name: 'answer',
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                cases: [{
-                    type: 'SwitchCase',
-                    test: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [23, 25],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    consequent: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'bingo',
-                                range: [41, 46],
-                                loc: {
-                                    start: { line: 1, column: 41 },
-                                    end: { line: 1, column: 46 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [41, 48],
-                            loc: {
-                                start: { line: 1, column: 41 },
-                                end: { line: 1, column: 48 }
-                            }
-                        },
-                        range: [41, 49],
-                        loc: {
-                            start: { line: 1, column: 41 },
-                            end: { line: 1, column: 49 }
-                        },
-                        leadingComments: [{
-                            type: 'Block',
-                            value: ' perfect ',
-                            range: [27, 40],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 40 }
-                            }
-                        }]
-                    }],
-                    range: [18, 49],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 49 }
-                    }
-                }],
-                range: [0, 50],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 50 }
-                }
-            }],
-            range: [0, 50],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 50 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' perfect ',
-                range: [27, 40],
-                loc: {
-                    start: { line: 1, column: 27 },
-                    end: { line: 1, column: 40 }
-                }
-            }]
-        },
-
-        'switch (answer) { case 42: bingo() /* perfect */ }': {
-            type: 'Program',
-            body: [{
-                type: 'SwitchStatement',
-                discriminant: {
-                    type: 'Identifier',
-                    name: 'answer',
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                cases: [{
-                    type: 'SwitchCase',
-                    test: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [23, 25],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    consequent: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'bingo',
-                                range: [27, 32],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 32 }
-                                }
-                            },
-                            'arguments': [],
-                            range: [27, 34],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 34 }
-                            },
-                            trailingComments: [{
-                                type: 'Block',
-                                value: ' perfect ',
-                                range: [35, 48],
-                                loc: {
-                                    start: { line: 1, column: 35 },
-                                    end: { line: 1, column: 48 }
-                                }
-                            }]
-                        },
-                        range: [27, 49],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 49 }
-                        }
-                    }],
-                    range: [18, 49],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 49 }
-                    }
-                }],
-                range: [0, 50],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 50 }
-                }
-            }],
-            range: [0, 50],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 50 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' perfect ',
-                range: [35, 48],
-                loc: {
-                    start: { line: 1, column: 35 },
-                    end: { line: 1, column: 48 }
-                }
-            }]
-        },
-
-        '/* header */ (function(){ var version = 1; }).call(this)': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'VariableDeclaration',
-                                    declarations: [{
-                                        type: 'VariableDeclarator',
-                                        id: {
-                                            type: 'Identifier',
-                                            name: 'version',
-                                            range: [30, 37],
-                                            loc: {
-                                                start: { line: 1, column: 30 },
-                                                end: { line: 1, column: 37 }
-                                            }
-                                        },
-                                        init: {
-                                            type: 'Literal',
-                                            value: 1,
-                                            raw: '1',
-                                            range: [40, 41],
-                                            loc: {
-                                                start: { line: 1, column: 40 },
-                                                end: { line: 1, column: 41 }
-                                            }
-                                        },
-                                        range: [30, 41],
-                                        loc: {
-                                            start: { line: 1, column: 30 },
-                                            end: { line: 1, column: 41 }
-                                        }
-                                    }],
-                                    kind: 'var',
-                                    range: [26, 42],
-                                    loc: {
-                                        start: { line: 1, column: 26 },
-                                        end: { line: 1, column: 42 }
-                                    }
-                                }],
-                                range: [24, 44],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 44 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [14, 44],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 44 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'call',
-                            range: [46, 50],
-                            loc: {
-                                start: { line: 1, column: 46 },
-                                end: { line: 1, column: 50 }
-                            }
-                        },
-                        range: [13, 50],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 50 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'ThisExpression',
-                        range: [51, 55],
-                        loc: {
-                            start: { line: 1, column: 51 },
-                            end: { line: 1, column: 55 }
-                        }
-                    }],
-                    range: [13, 56],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 56 }
-                    }
-                },
-                range: [13, 56],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 56 }
-                },
-                leadingComments: [{
-                    type: 'Block',
-                    value: ' header ',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                }]
-            }],
-            range: [13, 56],
-            loc: {
-                start: { line: 1, column: 13 },
-                end: { line: 1, column: 56 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' header ',
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            }]
-        },
-
-        '(function(){ var version = 1; /* sync */ }).call(this)': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [{
-                                    type: 'VariableDeclaration',
-                                    declarations: [{
-                                        type: 'VariableDeclarator',
-                                        id: {
-                                            type: 'Identifier',
-                                            name: 'version',
-                                            range: [17, 24],
-                                            loc: {
-                                                start: { line: 1, column: 17 },
-                                                end: { line: 1, column: 24 }
-                                            }
-                                        },
-                                        init: {
-                                            type: 'Literal',
-                                            value: 1,
-                                            raw: '1',
-                                            range: [27, 28],
-                                            loc: {
-                                                start: { line: 1, column: 27 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        range: [17, 28],
-                                        loc: {
-                                            start: { line: 1, column: 17 },
-                                            end: { line: 1, column: 28 }
-                                        }
-                                    }],
-                                    kind: 'var',
-                                    range: [13, 29],
-                                    loc: {
-                                        start: { line: 1, column: 13 },
-                                        end: { line: 1, column: 29 }
-                                    },
-                                    trailingComments: [{
-                                        type: 'Block',
-                                        value: ' sync ',
-                                        range: [30, 40],
-                                        loc: {
-                                            start: { line: 1, column: 30 },
-                                            end: { line: 1, column: 40 }
-                                        }
-                                    }]
-                                }],
-                                range: [11, 42],
-                                loc: {
-                                    start: { line: 1, column: 11 },
-                                    end: { line: 1, column: 42 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [1, 42],
-                            loc: {
-                                start: { line: 1, column: 1 },
-                                end: { line: 1, column: 42 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'call',
-                            range: [44, 48],
-                            loc: {
-                                start: { line: 1, column: 44 },
-                                end: { line: 1, column: 48 }
-                            },
-                            leadingComments: [{
-                                type: 'Block',
-                                value: ' sync ',
-                                range: [30, 40],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 40 }
-                                }
-                            }]
-                        },
-                        range: [0, 48],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 48 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'ThisExpression',
-                        range: [49, 53],
-                        loc: {
-                            start: { line: 1, column: 49 },
-                            end: { line: 1, column: 53 }
-                        }
-                    }],
-                    range: [0, 54],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 54 }
-                    }
-                },
-                range: [0, 54],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 54 }
-                }
-            }],
-            range: [0, 54],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 54 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' sync ',
-                range: [30, 40],
-                loc: {
-                    start: { line: 1, column: 30 },
-                    end: { line: 1, column: 40 }
-                }
-            }]
-        },
-
-        'function f() { /* infinite */ while (true) { } /* bar */ var each; }': {
-            type: 'Program',
-            body: [{
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'WhileStatement',
-                        test: {
-                            type: 'Literal',
-                            value: true,
-                            raw: 'true',
-                            range: [37, 41],
-                            loc: {
-                                start: { line: 1, column: 37 },
-                                end: { line: 1, column: 41 }
-                            }
-                        },
-                        body: {
-                            type: 'BlockStatement',
-                            body: [],
-                            range: [43, 46],
-                            loc: {
-                                start: { line: 1, column: 43 },
-                                end: { line: 1, column: 46 }
-                            }
-                        },
-                        range: [30, 46],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 46 }
-                        },
-                        leadingComments: [{
-                            type: 'Block',
-                            value: ' infinite ',
-                            range: [15, 29],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 29 }
-                            }
-                        }],
-                        trailingComments: [{
-                            type: 'Block',
-                            value: ' bar ',
-                            range: [47, 56],
-                            loc: {
-                                start: { line: 1, column: 47 },
-                                end: { line: 1, column: 56 }
-                            }
-                        }]
-                    }, {
-                        type: 'VariableDeclaration',
-                        declarations: [{
-                            type: 'VariableDeclarator',
-                            id: {
-                                type: 'Identifier',
-                                name: 'each',
-                                range: [61, 65],
-                                loc: {
-                                    start: { line: 1, column: 61 },
-                                    end: { line: 1, column: 65 }
-                                }
-                            },
-                            init: null,
-                            range: [61, 65],
-                            loc: {
-                                start: { line: 1, column: 61 },
-                                end: { line: 1, column: 65 }
-                            }
-                        }],
-                        kind: 'var',
-                        range: [57, 66],
-                        loc: {
-                            start: { line: 1, column: 57 },
-                            end: { line: 1, column: 66 }
-                        },
-                        leadingComments: [{
-                            type: 'Block',
-                            value: ' bar ',
-                            range: [47, 56],
-                            loc: {
-                                start: { line: 1, column: 47 },
-                                end: { line: 1, column: 56 }
-                            }
-                        }]
-                    }],
-                    range: [13, 68],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 68 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 68],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 68 }
-                }
-            }],
-            range: [0, 68],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 68 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' infinite ',
-                range: [15, 29],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 29 }
-                }
-            }, {
-                type: 'Block',
-                value: ' bar ',
-                range: [47, 56],
-                loc: {
-                    start: { line: 1, column: 47 },
-                    end: { line: 1, column: 56 }
-                }
-            }]
-        },
-
-        '<!-- foo': {
-            type: 'Program',
-            body: [],
-            comments: [{
-                type: 'Line',
-                value: ' foo'
-            }]
-        },
-
-        'var x = 1<!--foo': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x'
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1'
-                    }
-                }],
-                kind: 'var'
-            }],
-            comments: [{
-                type: 'Line',
-                value: 'foo'
-            }]
-        },
-
-        '--> comment': {
-            type: 'Program',
-            body: [],
-            range: [11, 11],
-            loc: {
-                start: { line: 1, column: 11 },
-                end: { line: 1, column: 11 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' comment',
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            }]
-        },
-
-        '<!-- comment': {
-            type: 'Program',
-            body: [],
-            range: [12, 12],
-            loc: {
-                start: { line: 1, column: 12 },
-                end: { line: 1, column: 12 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' comment',
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            }]
-        },
-
-        ' \t --> comment': {
-            type: 'Program',
-            body: [],
-            range: [14, 14],
-            loc: {
-                start: { line: 1, column: 14 },
-                end: { line: 1, column: 14 }
-            },
-            comments: [{
-                type: 'Line',
-                value: ' comment',
-                range: [3, 14],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 14 }
-                }
-            }]
-        },
-
-        ' \t /* block comment */  --> comment': {
-            type: 'Program',
-            body: [],
-            range: [35, 35],
-            loc: {
-                start: { line: 1, column: 35 },
-                end: { line: 1, column: 35 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' block comment ',
-                range: [3, 22],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'Line',
-                value: ' comment',
-                range: [24, 35],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 35 }
-                }
-            }]
-        },
-
-        '/* block comment */--> comment': {
-            type: 'Program',
-            body: [],
-            range: [30, 30],
-            loc: {
-                start: { line: 1, column: 30 },
-                end: { line: 1, column: 30 }
-            },
-            comments: [{
-                type: 'Block',
-                value: ' block comment ',
-                range: [0, 19],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 19 }
-                }
-            }, {
-                type: 'Line',
-                value: ' comment',
-                range: [19, 30],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 30 }
-                }
-            }]
-        },
-
-        '/* not comment*/; i-->0': {
-            type: 'Program',
-            body: [{
-                type: 'EmptyStatement',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'BinaryExpression',
-                    operator: '>',
-                    left: {
-                        type: 'UpdateExpression',
-                        operator: '--',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'i',
-                            range: [18, 19],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        prefix: false,
-                        range: [18, 21],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [22, 23],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    range: [18, 23],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 23 }
-                    }
-                },
-                range: [18, 23],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [16, 23],
-            loc: {
-                start: { line: 1, column: 16 },
-                end: { line: 1, column: 23 }
-            },
-            tokens: [{
-                type: 'Punctuator',
-                value: ';',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'i',
-                range: [18, 19],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 19 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '--',
-                range: [19, 21],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 21 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '>',
-                range: [21, 22],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'Numeric',
-                value: '0',
-                range: [22, 23],
-                loc: {
-                    start: { line: 1, column: 22 },
-                    end: { line: 1, column: 23 }
-                }
-            }]
-
-        },
-
-        'while (i-->0) {}': {
-            type: 'WhileStatement',
-            test: {
-                type: 'BinaryExpression',
-                operator: '>',
-                left: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'i',
-                        range: [7, 8],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    prefix: false,
-                    range: [7, 10],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [7, 12],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [14, 16],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '/*Venus*/ debugger; // Mars': {
-            type: 'Program',
-            body: [{
-                type: 'DebuggerStatement',
-                leadingComments: [{
-                    type: 'Block',
-                    value: 'Venus',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                }],
-                trailingComments: [{
-                    type: 'Line',
-                    value: ' Mars',
-                    range: [20, 27],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 27 }
-                    }
-                }],
-                range: [10, 19],
-                loc: {
-                    start: { line: 1, column: 10 },
-                    end: { line: 1, column: 19 }
-                }
-            }],
-            comments: [{
-                type: 'Block',
-                value: 'Venus',
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            }, {
-                type: 'Line',
-                value: ' Mars',
-                range: [20, 27],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 27 }
-                }
-            }],
-            range: [10, 19],
-            loc: {
-                start: { line: 1, column: 10 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'function x(){ /*Jupiter*/ return; /*Saturn*/}': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'x',
-                range: [9, 10],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ReturnStatement',
-                    argument: null,
-                    range: [26, 33],
-                    loc: {
-                        start: { line: 1, column: 26 },
-                        end: { line: 1, column: 33 }
-                    }
-                }],
-                range: [12, 45],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 45 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 45],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 45 }
-            }
-        }
-
-    },
-
-    'Numeric Literals': {
-
-        '0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            },
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        },
-
-        '42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 42,
-                raw: '42',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '3': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [0, 1]
-                },
-                range: [0, 1]
-            }],
-            range: [0, 1],
-            tokens: [{
-                type: 'Numeric',
-                value: '3',
-                range: [0, 1]
-            }]
-        },
-
-        '5': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 5,
-                    raw: '5',
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            },
-            tokens: [{
-                type: 'Numeric',
-                value: '5',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }]
-        },
-
-        '.14': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0.14,
-                raw: '.14',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '3.14159': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 3.14159,
-                raw: '3.14159',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '6.02214179e+23': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 6.02214179e+23,
-                raw: '6.02214179e+23',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '1.492417830e-10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 1.49241783e-10,
-                raw: '1.492417830e-10',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '0x0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0x0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0x0;': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0x0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0e+100 ': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0e+100',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '0e+100': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0e+100',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '0xabc': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0xabc,
-                raw: '0xabc',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0xdef': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0xdef,
-                raw: '0xdef',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0X1A': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x1A,
-                raw: '0X1A',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0x10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x10,
-                raw: '0x10',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0x100': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0x100,
-                raw: '0x100',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '0X04': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0X04,
-                raw: '0X04',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '02': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 2,
-                raw: '02',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '012': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 10,
-                raw: '012',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0012': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 10,
-                raw: '0012',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '08': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 8,
-                raw: '08',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '0008': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 8,
-                raw: '0008',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '09': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 9,
-                raw: '09',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '09.5': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 9.5,
-                raw: '09.5',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        }
-
-    },
-
-    '[ES6] Binary Integer Literals': {
-
-        '0b0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0b0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0b1': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 1,
-                raw: '0b1',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0b10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 2,
-                raw: '0b10',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0B0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0B0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0B1': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 1,
-                raw: '0B1',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0B10': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 2,
-                raw: '0B10',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        }
-
-    },
-
-    '[ES6] Octal Integer Literals': {
-
-        '00': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '00',
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '0o0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0o0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'function test() {\'use strict\'; 0o0; }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'test',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 'use strict',
-                        raw: '\'use strict\'',
-                        range: [17, 29],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [17, 30],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 30 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0o0',
-                        range: [31, 34],
-                        loc: {
-                            start: { line: 1, column: 31 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    range: [31, 35],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 35 }
-                    }
-                }],
-                range: [16, 37],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 37 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            }
-        },
-
-        '0o2': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 2,
-                raw: '0o2',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '0o12': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 10,
-                raw: '0o12',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '0O0': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 0,
-                raw: '0O0',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'function test() {\'use strict\'; 0O0; }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'test',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 'use strict',
-                        raw: '\'use strict\'',
-                        range: [17, 29],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [17, 30],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 30 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0O0',
-                        range: [31, 34],
-                        loc: {
-                            start: { line: 1, column: 31 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    range: [31, 35],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 35 }
-                    }
-                }],
-                range: [16, 37],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 37 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            }
-        }
-
-    },
-
-    'String Literals': {
-
-        '"Hello"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello',
-                raw: '"Hello"',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '"\\n\\r\\t\\v\\b\\f\\\\\\\'\\"\\0"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: '\n\r\t\x0B\b\f\\\'"\x00',
-                raw: '"\\n\\r\\t\\v\\b\\f\\\\\\\'\\"\\0"',
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '"\\u0061"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'a',
-                raw: '"\\u0061"',
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        '"\\x61"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'a',
-                raw: '"\\x61"',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '"\\u00"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'u00',
-                raw: '"\\u00"',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '"\\xt"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'xt',
-                raw: '"\\xt"',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '"Hello\\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\nworld',
-                raw: '"Hello\\nworld"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '"Hello\\\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Helloworld',
-                raw: '"Hello\\\nworld"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 6 }
-            }
-        },
-
-        '"Hello\\02World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0002World',
-                raw: '"Hello\\02World"',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        '"Hello\\012World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u000AWorld',
-                raw: '"Hello\\012World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\122World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\122World',
-                raw: '"Hello\\122World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\0122World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u000A2World',
-                raw: '"Hello\\0122World"',
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '"Hello\\312World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u00CAWorld',
-                raw: '"Hello\\312World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\412World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\412World',
-                raw: '"Hello\\412World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\812World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello812World',
-                raw: '"Hello\\812World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\712World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\712World',
-                raw: '"Hello\\712World"',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '"Hello\\0World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0000World',
-                raw: '"Hello\\0World"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '"Hello\\\r\nworld"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Helloworld',
-                raw: '"Hello\\\r\nworld"',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 6 }
-            }
-        },
-
-        '"Hello\\1World"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: 'Hello\u0001World',
-                raw: '"Hello\\1World"',
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        }
-    },
-
-    '[ES6] Unicode Code Point Escape Sequence': {
-
-        '"\\u{714E}\\u{8336}"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: '\u714E\u8336',
-                raw: '"\\u{714E}\\u{8336}"',
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        '"\\u{20BB7}\\u{91CE}\\u{5BB6}"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Literal',
-                value: '\ud842\udfb7\u91ce\u5bb6',
-                raw: '"\\u{20BB7}\\u{91CE}\\u{5BB6}"',
-                range: [0, 27],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        '"\\u{00000000034}"': {
-            type: 'ExpressionStatement',
-            expression: {
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                },
-                type: 'Literal',
-                value: '4',
-                raw: '"\\u{00000000034}"'
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        }
-
-    },
-
-    'Regular Expression Literals': {
-
-        '/p/;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: '/p/',
-                    raw: '/p/',
-                    regex: {
-                        pattern: 'p',
-                        flags: ''
-                    },
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            }],
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            },
-            tokens: [{
-                type: 'RegularExpression',
-                value: '/p/',
-                regex: {
-                    pattern: 'p',
-                    flags: ''
-                },
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: ';',
-                range: [3, 4],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 4 }
-                }
-            }]
-        },
-
-        '[/q/]': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'ArrayExpression',
-                    elements: [{
-                        type: 'Literal',
-                        value: '/q/',
-                        raw: '/q/',
-                        regex: {
-                            pattern: 'q',
-                            flags: ''
-                        },
-                        range: [1, 4],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 4 }
-                        }
-                    }],
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            },
-            tokens: [{
-                type: 'Punctuator',
-                value: '[',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/q/',
-                regex: {
-                    pattern: 'q',
-                    flags: ''
-                },
-                range: [1, 4],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 4 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: ']',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }]
-        },
-
-        'var x = /[a-z]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[a-z]/i',
-                        raw: '/[a-z]/i',
-                        regex: {
-                            pattern: '[a-z]',
-                            flags: 'i'
-                        },
-                        range: [8, 16],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-z]/i',
-                regex: {
-                    pattern: '[a-z]',
-                    flags: 'i'
-                },
-                range: [8, 16],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[a-z]/y': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: null,
-                        raw: '/[a-z]/y',
-                        regex: {
-                            pattern: '[a-z]',
-                            flags: 'y'
-                        },
-                        range: [8, 16],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-z]/y',
-                regex: {
-                    pattern: '[a-z]',
-                    flags: 'y'
-                },
-                range: [8, 16],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[a-z]/u': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: null,
-                        raw: '/[a-z]/u',
-                        regex: {
-                            pattern: '[a-z]',
-                            flags: 'u'
-                        },
-                        range: [8, 16],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-z]/u',
-                regex: {
-                    pattern: '[a-z]',
-                    flags: 'u'
-                },
-                range: [8, 16],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[\\u{0000000000000061}-\\u{7A}]/u': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: null,
-                        raw: '/[\\u{0000000000000061}-\\u{7A}]/u',
-                        regex: {
-                            pattern: '[\\u{0000000000000061}-\\u{7A}]',
-                            flags: 'u'
-                        },
-                        range: [8, 40],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 40 }
-                        }
-                    },
-                    range: [4, 40],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 40 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 40],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 40 }
-                }
-            }],
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 40 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[\\u{0000000000000061}-\\u{7A}]/u',
-                regex: {
-                    pattern: '[\\u{0000000000000061}-\\u{7A}]',
-                    flags: 'u'
-                },
-                range: [8, 40],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 40 }
-                }
-            }]
-        },
-
-        'var x = /\\u{110000}/u': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Invalid regular expression'
-        },
-
-        'var x = /[x-z]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5]
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[x-z]/i',
-                        raw: '/[x-z]/i',
-                        regex: {
-                            pattern: '[x-z]',
-                            flags: 'i'
-                        },
-                        range: [8, 16]
-                    },
-                    range: [4, 16]
-                }],
-                kind: 'var',
-                range: [0, 16]
-            }],
-            range: [0, 16],
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3]
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5]
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7]
-            }, {
-                type: 'RegularExpression',
-                value: '/[x-z]/i',
-                regex: {
-                    pattern: '[x-z]',
-                    flags: 'i'
-                },
-                range: [8, 16]
-            }]
-        },
-
-        'var x = /[a-c]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[a-c]/i',
-                        raw: '/[a-c]/i',
-                        regex: {
-                            pattern: '[a-c]',
-                            flags: 'i'
-                        },
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                kind: 'var',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[a-c]/i',
-                regex: {
-                    pattern: '[a-c]',
-                    flags: 'i'
-                },
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 16 }
-                }
-            }]
-        },
-
-        'var x = /[P QR]/i': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/[P QR]/i',
-                        raw: '/[P QR]/i',
-                        regex: {
-                            pattern: '[P QR]',
-                            flags: 'i'
-                        },
-                        range: [8, 17],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            }],
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[P QR]/i',
-                regex: {
-                    pattern: '[P QR]',
-                    flags: 'i'
-                },
-                range: [8, 17],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 17 }
-                }
-            }]
-        },
-
-        'var x = /[\\]/]/': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: new RegExp('[\\]/]').toString(),
-                        raw: '/[\\]/]/',
-                        regex: {
-                            pattern: '[\\]/]',
-                            flags: ''
-                        },
-                        range: [8, 15],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    range: [4, 15],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            }],
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/[\\]/]/',
-                regex: {
-                    pattern: '[\\]/]',
-                    flags: ''
-                },
-                range: [8, 15],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 15 }
-                }
-            }]
-        },
-
-        'var x = /foo\\/bar/': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/foo\\/bar/',
-                        raw: '/foo\\/bar/',
-                        regex: {
-                            pattern: 'foo\\/bar',
-                            flags: ''
-                        },
-                        range: [8, 18],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/foo\\/bar/',
-                regex: {
-                    pattern: 'foo\\/bar',
-                    flags: ''
-                },
-                range: [8, 18],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 18 }
-                }
-            }]
-        },
-
-        'var x = /=([^=\\s])+/g': {
-            type: 'Program',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: '/=([^=\\s])+/g',
-                        raw: '/=([^=\\s])+/g',
-                        regex: {
-                            pattern: '=([^=\\s])+',
-                            flags: 'g'
-                        },
-                        range: [8, 21],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    range: [4, 21],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 21 }
-                    }
-                }],
-                kind: 'var',
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            tokens: [{
-                type: 'Keyword',
-                value: 'var',
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'Identifier',
-                value: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'Punctuator',
-                value: '=',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: 'RegularExpression',
-                value: '/=([^=\\s])+/g',
-                regex: {
-                    pattern: '=([^=\\s])+',
-                    flags: 'g'
-                },
-                range: [8, 21],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 21 }
-                }
-            }]
-        },
-
-        'var x = /42/g.test': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'Literal',
-                        value: '/42/g',
-                        raw: '/42/g',
-                        regex: {
-                            pattern: '42',
-                            flags: 'g'
-                        },
-                        range: [8, 13],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'test',
-                        range: [14, 18],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [8, 18],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [4, 18],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        }
-
-    },
-
-    'Left-Hand-Side Expression': {
-
-        'new Button': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'Button',
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'new Button()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'Button',
-                    range: [4, 10],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'new new foo': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'NewExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'new new foo()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'NewExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [4, 13],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'new foo().bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'NewExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [4, 7],
-                            loc: {
-                                start: { line: 1, column: 4 },
-                                end: { line: 1, column: 7 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [0, 9],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [10, 13],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [0, 13],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        'new foo[bar]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: true,
-                    object: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [4, 7],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [4, 12],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'new foo.bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [4, 7],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [8, 11],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        '( new foo).bar()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'NewExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [2, 9],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [11, 14],
-                        loc: {
-                            start: { line: 1, column: 11 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [0, 14],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'foo(bar, baz)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                'arguments': [{
-                    type: 'Identifier',
-                    name: 'bar',
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 7 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'baz',
-                    range: [9, 12],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 12 }
-                    }
-                }],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        '(    foo  )()': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [5, 8],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                'arguments': [],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'universe.milkyway': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'milkyway',
-                    range: [9, 17],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'universe.milkyway.solarsystem': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'milkyway',
-                        range: [9, 17],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    range: [0, 17],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'solarsystem',
-                    range: [18, 29],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [0, 29],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 29 }
-                }
-            },
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'universe.milkyway.solarsystem.Earth': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'Identifier',
-                            name: 'universe',
-                            range: [0, 8],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'milkyway',
-                            range: [9, 17],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        range: [0, 17],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'solarsystem',
-                        range: [18, 29],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [0, 29],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'Earth',
-                    range: [30, 35],
-                    loc: {
-                        start: { line: 1, column: 30 },
-                        end: { line: 1, column: 35 }
-                    }
-                },
-                range: [0, 35],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 35 }
-                }
-            },
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            }
-        },
-
-        'universe[galaxyName, otherUselessName]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'SequenceExpression',
-                    expressions: [{
-                        type: 'Identifier',
-                        name: 'galaxyName',
-                        range: [9, 19],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 19 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'otherUselessName',
-                        range: [21, 37],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [9, 37],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [0, 38],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 38 }
-                }
-            },
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'universe[galaxyName]': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxyName',
-                    range: [9, 19],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'universe[42].galaxies': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'MemberExpression',
-                    computed: true,
-                    object: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    property: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [9, 11],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxies',
-                    range: [13, 21],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'universe(42).galaxies': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'universe',
-                        range: [0, 8],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [9, 11],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 11 }
-                        }
-                    }],
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'galaxies',
-                    range: [13, 21],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'universe(42).galaxies(14, 3, 77).milkyway': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'universe',
-                                range: [0, 8],
-                                loc: {
-                                    start: { line: 1, column: 0 },
-                                    end: { line: 1, column: 8 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [9, 11],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 11 }
-                                }
-                            }],
-                            range: [0, 12],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'galaxies',
-                            range: [13, 21],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 21 }
-                            }
-                        },
-                        range: [0, 21],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [22, 24],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [26, 27],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 27 }
-                        }
-                    }, {
-                        type: 'Literal',
-                        value: 77,
-                        raw: '77',
-                        range: [29, 31],
-                        loc: {
-                            start: { line: 1, column: 29 },
-                            end: { line: 1, column: 31 }
-                        }
-                    }],
-                    range: [0, 32],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'milkyway',
-                    range: [33, 41],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 41 }
-                    }
-                },
-                range: [0, 41],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 41 }
-                }
-            },
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            }
-        },
-
-        'earth.asia.Indonesia.prepareForElection(2014)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'MemberExpression',
-                    computed: false,
-                    object: {
-                        type: 'MemberExpression',
-                        computed: false,
-                        object: {
-                            type: 'MemberExpression',
-                            computed: false,
-                            object: {
-                                type: 'Identifier',
-                                name: 'earth',
-                                range: [0, 5],
-                                loc: {
-                                    start: { line: 1, column: 0 },
-                                    end: { line: 1, column: 5 }
-                                }
-                            },
-                            property: {
-                                type: 'Identifier',
-                                name: 'asia',
-                                range: [6, 10],
-                                loc: {
-                                    start: { line: 1, column: 6 },
-                                    end: { line: 1, column: 10 }
-                                }
-                            },
-                            range: [0, 10],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        property: {
-                            type: 'Identifier',
-                            name: 'Indonesia',
-                            range: [11, 20],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        range: [0, 20],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    property: {
-                        type: 'Identifier',
-                        name: 'prepareForElection',
-                        range: [21, 39],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    range: [0, 39],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                'arguments': [{
-                    type: 'Literal',
-                    value: 2014,
-                    raw: '2014',
-                    range: [40, 44],
-                    loc: {
-                        start: { line: 1, column: 40 },
-                        end: { line: 1, column: 44 }
-                    }
-                }],
-                range: [0, 45],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 45 }
-                }
-            },
-            range: [0, 45],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 45 }
-            }
-        },
-
-        'universe.if': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'if',
-                    range: [9, 11],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'universe.true': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'true',
-                    range: [9, 13],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'universe.false': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'false',
-                    range: [9, 14],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'universe.null': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'universe',
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'null',
-                    range: [9, 13],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        }
-
-    },
-
-    'Postfix Expressions': {
-
-        'x++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                prefix: false,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'x--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                prefix: false,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        'eval++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                prefix: false,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'eval--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                prefix: false,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'arguments++': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                prefix: false,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'arguments--': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                prefix: false,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        }
-
-    },
-
-    'Unary Operators': {
-
-        '++x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                prefix: true,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '--x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                prefix: true,
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            },
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            }
-        },
-
-        '++eval': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [2, 6],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '--eval': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [2, 6],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        '++arguments': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [2, 11],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                prefix: true,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        '--arguments': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UpdateExpression',
-                operator: '--',
-                argument: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [2, 11],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                prefix: true,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        '+x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '+',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '-x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '-',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '~x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '~',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        '!x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: '!',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                },
-                prefix: true,
-                range: [0, 2],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 2 }
-                }
-            },
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        },
-
-        'void x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'void',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                prefix: true,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'delete x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'delete',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                prefix: true,
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'typeof x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'UnaryExpression',
-                operator: 'typeof',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                prefix: true,
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        }
-
-    },
-
-    'Multiplicative Operators': {
-
-        'x * y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x / y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '/',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x % y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '%',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        }
-
-    },
-
-    'Additive Operators': {
-
-        'x + y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x - y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '"use strict" + 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        }
-
-    },
-
-    'Bitwise Shift Operator': {
-
-        'x << y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >> y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >>> y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>>>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Relational Operators': {
-
-        'x < y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x > y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x <= y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x >= y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x in y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: 'in',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x instanceof y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: 'instanceof',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [13, 14],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x < y < z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '<',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Equality Operators': {
-
-        'x == y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '==',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x != y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '!=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x === y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '===',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x !== y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '!==',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Binary Bitwise Operators': {
-
-        'x & y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '&',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x ^ y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '^',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'x | y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        }
-
-    },
-
-    'Binary Expressions': {
-
-        'x + y + z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y + z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '-',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y - z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y - z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '-',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x + y / z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '/',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x - y % z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '%',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y / z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '/',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x * y % z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '%',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x % y * z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '%',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x << y << z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '<<',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '<<',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x | y | z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '|',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x & y & z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '&',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x ^ y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '^',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x & y | z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x | y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x | y & z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '|',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Binary Logical Operators': {
-
-        'x || y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x && y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '&&',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'x || y || z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'LogicalExpression',
-                    operator: '||',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x && y && z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '&&',
-                left: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x || y && z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [10, 11],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 11 }
-                        }
-                    },
-                    range: [5, 11],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'x || y ^ z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'BinaryExpression',
-                    operator: '^',
-                    left: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    range: [5, 10],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        }
-
-    },
-
-    'Conditional Operator': {
-
-        'y ? 1 : 2': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ConditionalExpression',
-                test: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                consequent: {
-                    type: 'Literal',
-                    value: 1,
-                    raw: '1',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                alternate: {
-                    type: 'Literal',
-                    value: 2,
-                    raw: '2',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x && y ? 1 : 2': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ConditionalExpression',
-                test: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    range: [0, 6],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                consequent: {
-                    type: 'Literal',
-                    value: 1,
-                    raw: '1',
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                alternate: {
-                    type: 'Literal',
-                    value: 2,
-                    raw: '2',
-                    range: [13, 14],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-        'x = (0) ? 1 : 2' : {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [ 0, 1 ],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ConditionalExpression',
-                    test: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [ 5, 6 ],
-                        loc: { start: { line: 1, column: 5 }, end: { line: 1, column: 6 } }
-                    },
-                    consequent: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [ 10, 11 ],
-                        loc: { start: { line: 1, column: 10 }, end: { line: 1, column: 11 } }
-                    },
-                    alternate: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [ 14, 15 ],
-                        loc: { start: { line: 1, column: 14 }, end: { line: 1, column: 15 } }
-                    },
-                    range: [ 4, 15 ],
-                    loc: { start: { line: 1, column: 4 }, end: { line: 1, column: 15 } }
-                },
-                range: [ 0, 15 ],
-                loc: { start: { line: 1, column: 0 }, end: { line: 1, column: 15 } }
-            },
-            range: [ 0, 15 ],
-            loc: { start: { line: 1, column: 0 }, end: { line: 1, column: 15 } }
-        }
-    },
-
-    '[ES6] Arrow Function': {
-
-        '() => "test"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 'test',
-                    raw: '"test"',
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'e => "test"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 'test',
-                    raw: '"test"',
-                    range: [5, 11],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 11],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        '(e) => "test"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 'test',
-                    raw: '"test"',
-                    range: [7, 13],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        '(a, b) => "test"': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'b',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 'test',
-                    raw: '"test"',
-                    range: [10, 16],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        'e => { 42; }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [7, 9],
-                            loc: {
-                                start: { line: 1, column: 7 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        range: [7, 10],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }],
-                    range: [5, 12],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        'e => ({ property: 42 })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'property',
-                            range: [8, 16],
-                            loc: {
-                                start: { line: 1, column: 8 },
-                                end: { line: 1, column: 16 }
-                            }
-                        },
-                        value: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [18, 20],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [8, 20],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [6, 22],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 23],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        // Not an object!
-        'e => { label: 42 }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'LabeledStatement',
-                        label: {
-                            type: 'Identifier',
-                            name: 'label',
-                            range: [7, 12],
-                            loc: {
-                                start: { line: 1, column: 7 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        body: {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [14, 16],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 16 }
-                                }
-                            },
-                            range: [14, 17],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 17 }
-                            }
-                        },
-                        range: [7, 17],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 17 }
-                        }
-                    }],
-                    range: [5, 18],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        '(a, b) => { 42; }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'b',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [12, 14],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        range: [12, 15],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 15 }
-                        }
-                    }],
-                    range: [10, 17],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '(x=1) => x * x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }],
-                defaults: [{
-                    type: 'Literal',
-                    value: 1,
-                    raw: '1',
-                    range: [3, 4],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 4 }
-                    }
-                }],
-                body: {
-                    type: 'BinaryExpression',
-                    operator: '*',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [9, 14],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        // not strict mode, using eval
-        'eval => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        // not strict mode, using arguments
-        'arguments => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [13, 15],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        // not strict mode, using octals
-        '(a) => 00': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '00',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        // not strict mode, using eval, IsSimpleParameterList is true
-        '(eval, a) => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [1, 5],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 5 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [13, 15],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 15],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        },
-
-        // not strict mode, assigning to eval
-        '(eval = 10) => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [1, 5],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 5 }
-                    }
-                }],
-                defaults: [{
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                }],
-                body: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        // not strict mode, using eval, IsSimpleParameterList is false
-        '(eval, a = 10) => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [1, 5],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 5 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                }],
-                defaults: [null, {
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                }],
-                body: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [18, 20],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        '(x => x)': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [1, 7],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'x => y => 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'ArrowFunctionExpression',
-                    id: null,
-                    params: [{
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: true,
-                    range: [5, 12],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        '(x) => ((y, z) => (x, y, z))': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'ArrowFunctionExpression',
-                id: null,
-                params: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [1, 2],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 2 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'ArrowFunctionExpression',
-                    id: null,
-                    params: [{
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'SequenceExpression',
-                        expressions: [{
-                            type: 'Identifier',
-                            name: 'x',
-                            range: [19, 20],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 20 }
-                            }
-                        }, {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [22, 23],
-                            loc: {
-                                start: { line: 1, column: 22 },
-                                end: { line: 1, column: 23 }
-                            }
-                        }, {
-                            type: 'Identifier',
-                            name: 'z',
-                            range: [25, 26],
-                            loc: {
-                                start: { line: 1, column: 25 },
-                                end: { line: 1, column: 26 }
-                            }
-                        }],
-                        range: [19, 26],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 26 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: true,
-                    range: [8, 27],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: true,
-                range: [0, 28],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 28 }
-                }
-            },
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        },
-
-        'foo(() => {})': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                'arguments': [{
-                    type: 'ArrowFunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [4, 12],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 12 }
-                    }
-                }],
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'foo((x, y) => {})': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                'arguments': [{
-                    type: 'ArrowFunctionExpression',
-                    id: null,
-                    params: [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [14, 16],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [4, 16],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 16 }
-                    }
-                }],
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        '(sun) => earth': {
-            type: "Program",
-            body: [{
-                type: "ExpressionStatement",
-                expression: {
-                    type: "ArrowFunctionExpression",
-                    id: null,
-                    params: [{
-                        type: "Identifier",
-                        name: "sun",
-                        range: [1, 4],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 4 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: "Identifier",
-                        name: "earth",
-                        range: [9, 14],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: true,
-                    range: [0, 14],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            }],
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            },
-            tokens: [{
-                type: "Punctuator",
-                value: "(",
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            }, {
-                type: "Identifier",
-                value: "sun",
-                range: [1, 4],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 4 }
-                }
-            }, {
-                type: "Punctuator",
-                value: ")",
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "=>",
-                range: [6, 8],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 8 }
-                }
-            }, {
-                type: "Identifier",
-                value: "earth",
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            }]
-        }
-
-    },
-
-    '[ES6] Method Definition': {
-
-        'x = { method() { } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'method',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [15, 18],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 18 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [15, 18],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        kind: 'init',
-                        method: true,
-                        shorthand: false,
-                        range: [6, 18],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }],
-                    range: [4, 20],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'x = { method(test) { } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'method',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'test',
-                                range: [13, 17],
-                                loc: {
-                                    start: { line: 1, column: 13 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            }],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [19, 22],
-                                loc: {
-                                    start: { line: 1, column: 19 },
-                                    end: { line: 1, column: 22 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [19, 22],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 22 }
-                            }
-                        },
-                        kind: 'init',
-                        method: true,
-                        shorthand: false,
-                        range: [6, 22],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 22 }
-                        }
-                    }],
-                    range: [4, 24],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [0, 24],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'x = { \'method\'() { } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Literal',
-                            value: 'method',
-                            raw: '\'method\'',
-                            range: [6, 14],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [17, 20],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 20 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [17, 20],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        kind: 'init',
-                        method: true,
-                        shorthand: false,
-                        range: [6, 20],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 20 }
-                        }
-                    }],
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'x = { get() { } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'get',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [12, 15],
-                                loc: {
-                                    start: { line: 1, column: 12 },
-                                    end: { line: 1, column: 15 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [12, 15],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        kind: 'init',
-                        method: true,
-                        shorthand: false,
-                        range: [6, 15],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 15 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'x = { set() { } }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'set',
-                            range: [6, 9],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 9 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [12, 15],
-                                loc: {
-                                    start: { line: 1, column: 12 },
-                                    end: { line: 1, column: 15 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [12, 15],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 15 }
-                            }
-                        },
-                        kind: 'init',
-                        method: true,
-                        shorthand: false,
-                        range: [6, 15],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 15 }
-                        }
-                    }],
-                    range: [4, 17],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        }
-
-    },
-
-    '[ES6] Object Literal Property Value Shorthand': {
-
-        'x = { y, z }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [6, 7],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 7 }
-                            }
-                        },
-                        value: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [6, 7],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 7 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: true,
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    }, {
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'z',
-                            range: [9, 10],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        value: {
-                            type: 'Identifier',
-                            name: 'z',
-                            range: [9, 10],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 10 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: true,
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    }],
-                    range: [4, 12],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 12],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 12 }
-                }
-            },
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        }
-    },
-
-    'Assignment Operators': {
-
-        'x = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'eval = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'arguments = 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [12, 14],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                range: [0, 14],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'x *= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '*=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x /= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '/=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x %= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '%=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x += 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '+=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x -= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '-=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x <<= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '<<=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'x >>= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '>>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [6, 8],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                range: [0, 8],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'x >>>= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '>>>=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'x &= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '&=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x ^= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '^=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        'x |= 42': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '|=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [5, 7],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        }
-
-    },
-
-    'Complex Expression': {
-
-        'a || b && c | d ^ e & f == g < h >>> i + j * k': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'LogicalExpression',
-                operator: '||',
-                left: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'LogicalExpression',
-                    operator: '&&',
-                    left: {
-                        type: 'Identifier',
-                        name: 'b',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    right: {
-                        type: 'BinaryExpression',
-                        operator: '|',
-                        left: {
-                            type: 'Identifier',
-                            name: 'c',
-                            range: [10, 11],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 11 }
-                            }
-                        },
-                        right: {
-                            type: 'BinaryExpression',
-                            operator: '^',
-                            left: {
-                                type: 'Identifier',
-                                name: 'd',
-                                range: [14, 15],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 15 }
-                                }
-                            },
-                            right: {
-                                type: 'BinaryExpression',
-                                operator: '&',
-                                left: {
-                                    type: 'Identifier',
-                                    name: 'e',
-                                    range: [18, 19],
-                                    loc: {
-                                        start: { line: 1, column: 18 },
-                                        end: { line: 1, column: 19 }
-                                    }
-                                },
-                                right: {
-                                    type: 'BinaryExpression',
-                                    operator: '==',
-                                    left: {
-                                        type: 'Identifier',
-                                        name: 'f',
-                                        range: [22, 23],
-                                        loc: {
-                                            start: { line: 1, column: 22 },
-                                            end: { line: 1, column: 23 }
-                                        }
-                                    },
-                                    right: {
-                                        type: 'BinaryExpression',
-                                        operator: '<',
-                                        left: {
-                                            type: 'Identifier',
-                                            name: 'g',
-                                            range: [27, 28],
-                                            loc: {
-                                                start: { line: 1, column: 27 },
-                                                end: { line: 1, column: 28 }
-                                            }
-                                        },
-                                        right: {
-                                            type: 'BinaryExpression',
-                                            operator: '>>>',
-                                            left: {
-                                                type: 'Identifier',
-                                                name: 'h',
-                                                range: [31, 32],
-                                                loc: {
-                                                    start: { line: 1, column: 31 },
-                                                    end: { line: 1, column: 32 }
-                                                }
-                                            },
-                                            right: {
-                                                type: 'BinaryExpression',
-                                                operator: '+',
-                                                left: {
-                                                    type: 'Identifier',
-                                                    name: 'i',
-                                                    range: [37, 38],
-                                                    loc: {
-                                                        start: { line: 1, column: 37 },
-                                                        end: { line: 1, column: 38 }
-                                                    }
-                                                },
-                                                right: {
-                                                    type: 'BinaryExpression',
-                                                    operator: '*',
-                                                    left: {
-                                                        type: 'Identifier',
-                                                        name: 'j',
-                                                        range: [41, 42],
-                                                        loc: {
-                                                            start: { line: 1, column: 41 },
-                                                            end: { line: 1, column: 42 }
-                                                        }
-                                                    },
-                                                    right: {
-                                                        type: 'Identifier',
-                                                        name: 'k',
-                                                        range: [45, 46],
-                                                        loc: {
-                                                            start: { line: 1, column: 45 },
-                                                            end: { line: 1, column: 46 }
-                                                        }
-                                                    },
-                                                    range: [41, 46],
-                                                    loc: {
-                                                        start: { line: 1, column: 41 },
-                                                        end: { line: 1, column: 46 }
-                                                    }
-                                                },
-                                                range: [37, 46],
-                                                loc: {
-                                                    start: { line: 1, column: 37 },
-                                                    end: { line: 1, column: 46 }
-                                                }
-                                            },
-                                            range: [31, 46],
-                                            loc: {
-                                                start: { line: 1, column: 31 },
-                                                end: { line: 1, column: 46 }
-                                            }
-                                        },
-                                        range: [27, 46],
-                                        loc: {
-                                            start: { line: 1, column: 27 },
-                                            end: { line: 1, column: 46 }
-                                        }
-                                    },
-                                    range: [22, 46],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 46 }
-                                    }
-                                },
-                                range: [18, 46],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 46 }
-                                }
-                            },
-                            range: [14, 46],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 46 }
-                            }
-                        },
-                        range: [10, 46],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 46 }
-                        }
-                    },
-                    range: [5, 46],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 46 }
-                    }
-                },
-                range: [0, 46],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 46 }
-                }
-            },
-            range: [0, 46],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 46 }
-            }
-        }
-
-    },
-
-    'Block': {
-
-        '{ foo }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [2, 5],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [2, 6],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '{ doThis(); doThat(); }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doThis',
-                        range: [2, 8],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [2, 10],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [2, 11],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 11 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doThat',
-                        range: [12, 18],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [12, 20],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [12, 21],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '{}': {
-            type: 'BlockStatement',
-            body: [],
-            range: [0, 2],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 2 }
-            }
-        }
-
-    },
-
-    'Variable Statement': {
-
-        'var x': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        'var x, y;': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                init: null,
-                range: [7, 8],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 8 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'var x = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [4, 10],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 10 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            }
-        },
-
-        'var eval = 42, arguments = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [4, 8],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [15, 24],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [27, 29],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [15, 29],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'var x = 14, y = 3, z = 1977': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 14,
-                    raw: '14',
-                    range: [8, 10],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 10 }
-                    }
-                },
-                range: [4, 10],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 10 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [12, 13],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 3,
-                    raw: '3',
-                    range: [16, 17],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [12, 17],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 17 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 1977,
-                    raw: '1977',
-                    range: [23, 27],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [19, 27],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 27 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'var implements, interface, package': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'implements',
-                    range: [4, 14],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                init: null,
-                range: [4, 14],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 14 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'interface',
-                    range: [16, 25],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                init: null,
-                range: [16, 25],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 25 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'package',
-                    range: [27, 34],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                init: null,
-                range: [27, 34],
-                loc: {
-                    start: { line: 1, column: 27 },
-                    end: { line: 1, column: 34 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'var private, protected, public, static': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'private',
-                    range: [4, 11],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                init: null,
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'protected',
-                    range: [13, 22],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                init: null,
-                range: [13, 22],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'public',
-                    range: [24, 30],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                init: null,
-                range: [24, 30],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 30 }
-                }
-            }, {
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'static',
-                    range: [32, 38],
-                    loc: {
-                        start: { line: 1, column: 32 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                init: null,
-                range: [32, 38],
-                loc: {
-                    start: { line: 1, column: 32 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        }
-
-    },
-
-    'Let Statement': {
-
-        'let x': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'let',
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            }
-        },
-
-        '{ let x }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: null,
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 8],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 8 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        '{ let x = 42 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 13],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 13 }
-                }
-            }],
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        '{ let x = 14, y = 3, z = 1977 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 19 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1977,
-                        raw: '1977',
-                        range: [25, 29],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [21, 29],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 29 }
-                    }
-                }],
-                kind: 'let',
-                range: [2, 30],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 30 }
-                }
-            }],
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        }
-
-    },
-
-    'Const Statement': {
-
-        'const x = 42': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                init: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [10, 12],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [6, 12],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 12 }
-                }
-            }],
-            kind: 'const',
-            range: [0, 12],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 12 }
-            }
-        },
-
-        '{ const x = 42 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [12, 14],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                }],
-                kind: 'const',
-                range: [2, 15],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 15 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        },
-
-        '{ const x = 14, y = 3, z = 1977 }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [12, 14],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [8, 14],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 14 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [16, 17],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 17 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [20, 21],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 21 }
-                        }
-                    },
-                    range: [16, 21],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 21 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'z',
-                        range: [23, 24],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1977,
-                        raw: '1977',
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [23, 31],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                kind: 'const',
-                range: [2, 32],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 32 }
-                }
-            }],
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        }
-
-    },
-
-    'Empty Statement': {
-
-        ';': {
-            type: 'EmptyStatement',
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        }
-
-    },
-
-    'Expression Statement': {
-
-        'x': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'x',
-                range: [0, 1],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 1 }
-                }
-            },
-            range: [0, 1],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 1 }
-            }
-        },
-
-        'x, y': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'SequenceExpression',
-                expressions: [{
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [3, 4],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 4 }
-                    }
-                }],
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            range: [0, 4],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 4 }
-            }
-        },
-
-        '\\u0061': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'a',
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            },
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            }
-        },
-
-        'a\\u0061': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'aa',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\\u0061a': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'aa',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 7],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 7 }
-            }
-        },
-
-        '\\u0061a ': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'Identifier',
-                name: 'aa',
-                range: [0, 7],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        }
-    },
-
-    'If Statement': {
-
-        'if (morning) goodMorning()': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodMorning',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            alternate: null,
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'if (morning) (function(){})': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [24, 26],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 26 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [14, 26],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: null,
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'if (morning) var x = 0;': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [17, 18],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    range: [17, 22],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 22 }
-                    }
-                }],
-                kind: 'var',
-                range: [13, 23],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            alternate: null,
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        'if (morning) function a(){}': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [22, 23],
-                    loc: {
-                        start: { line: 1, column: 22 },
-                        end: { line: 1, column: 23 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [25, 27],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: null,
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'if (morning) goodMorning(); else goodDay()': {
-            type: 'IfStatement',
-            test: {
-                type: 'Identifier',
-                name: 'morning',
-                range: [4, 11],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            consequent: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodMorning',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 27],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            alternate: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'goodDay',
-                        range: [33, 40],
-                        loc: {
-                            start: { line: 1, column: 33 },
-                            end: { line: 1, column: 40 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [33, 42],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 42 }
-                    }
-                },
-                range: [33, 42],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 42 }
-                }
-            },
-            range: [0, 42],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 42 }
-            }
-        },
-
-        'if (true) that()\n; else;': {
-            type: "IfStatement",
-            test: {
-                type: "Literal",
-                value: true,
-                raw: "true",
-                range: [4, 8],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            consequent: {
-                type: "ExpressionStatement",
-                expression: {
-                    type: "CallExpression",
-                    callee: {
-                        type: "Identifier",
-                        name: "that",
-                        range: [10, 14],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    "arguments": [],
-                    range: [10, 16],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [10, 18],
-                loc: {
-                    start: { line: 1, column: 10 },
-                    end: { line: 2, column: 1 }
-                }
-            },
-            alternate: {
-                type: "EmptyStatement",
-                range: [23, 24],
-                loc: {
-                    start: { line: 2, column: 6 },
-                    end: { line: 2, column: 7 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 7 }
-            }
-        },
-
-        'if (true) that(); else;': {
-            type: "IfStatement",
-            test: {
-                type: "Literal",
-                value: true,
-                raw: "true",
-                range: [4, 8],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            consequent: {
-                type: "ExpressionStatement",
-                expression: {
-                    type: "CallExpression",
-                    callee: {
-                        type: "Identifier",
-                        name: "that",
-                        range: [10, 14],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    "arguments": [],
-                    range: [10, 16],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [10, 17],
-                loc: {
-                    start: { line: 1, column: 10 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            alternate: {
-                type: "EmptyStatement",
-                range: [22, 23],
-                loc: {
-                    start: { line: 1, column: 22 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        }
-
-    },
-
-    'Iteration Statements': {
-
-        'do keep(); while (true)': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'keep',
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [18, 22],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        'do keep(); while (true);': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'keep',
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [18, 22],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'do { x++; y--; } while (x < 10)': {
-            type: 'DoWhileStatement',
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '++',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'x',
-                            range: [5, 6],
-                            loc: {
-                                start: { line: 1, column: 5 },
-                                end: { line: 1, column: 6 }
-                            }
-                        },
-                        prefix: false,
-                        range: [5, 8],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    range: [5, 9],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 9 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '--',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [10, 11],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 11 }
-                            }
-                        },
-                        prefix: false,
-                        range: [10, 13],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [10, 14],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 14 }
-                    }
-                }],
-                range: [3, 16],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [24, 25],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [28, 30],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [24, 30],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        '{ do { } while (false) false }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'DoWhileStatement',
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [5, 8],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                test: {
-                    type: 'Literal',
-                    value: false,
-                    raw: 'false',
-                    range: [16, 21],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [2, 22],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: false,
-                    raw: 'false',
-                    range: [23, 28],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [23, 29],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'do that();while (true)': {
-            type: "DoWhileStatement",
-            body: {
-                type: "ExpressionStatement",
-                expression: {
-                    type: "CallExpression",
-                    callee: {
-                        type: "Identifier",
-                        name: "that",
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    "arguments": [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 10],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            test: {
-                type: "Literal",
-                value: true,
-                raw: "true",
-                range: [17, 21],
-                loc: {
-                    start: { line: 1, column: 17 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'do that()\n;while (true)': {
-            type: "DoWhileStatement",
-            body: {
-                type: "ExpressionStatement",
-                expression: {
-                    type: "CallExpression",
-                    callee: {
-                        type: "Identifier",
-                        name: "that",
-                        range: [3, 7],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    "arguments": [],
-                    range: [3, 9],
-                    loc: {
-                        start: { line: 1, column: 3 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [3, 11],
-                loc: {
-                    start: { line: 1, column: 3 },
-                    end: { line: 2, column: 1 }
-                }
-            },
-            test: {
-                type: "Literal",
-                value: true,
-                raw: "true",
-                range: [18, 22],
-                loc: {
-                    start: { line: 2, column: 8 },
-                    end: { line: 2, column: 12 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 13 }
-            }
-        },
-
-        'while (true) doSomething()': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'doSomething',
-                        range: [13, 24],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [13, 26],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'while (x < 10) { x++; y--; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [7, 8],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 8 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 10,
-                    raw: '10',
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [7, 13],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '++',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'x',
-                            range: [17, 18],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        prefix: false,
-                        range: [17, 20],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [17, 21],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 21 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'UpdateExpression',
-                        operator: '--',
-                        argument: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [22, 23],
-                            loc: {
-                                start: { line: 1, column: 22 },
-                                end: { line: 1, column: 23 }
-                            }
-                        },
-                        prefix: false,
-                        range: [22, 25],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    range: [22, 26],
-                    loc: {
-                        start: { line: 1, column: 22 },
-                        end: { line: 1, column: 26 }
-                    }
-                }],
-                range: [15, 28],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 28 }
-                }
-            },
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        },
-
-        'for(;;);': {
-            type: 'ForStatement',
-            init: null,
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [7, 8],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 8 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'for(;;){}': {
-            type: 'ForStatement',
-            init: null,
-            test: null,
-            update: null,
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [7, 9],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        },
-
-        'for(x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [12, 13],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'for(var x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }],
-                kind: 'var',
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'for(let x = 0;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }],
-                kind: 'let',
-                range: [4, 13],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [16, 17],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            }
-        },
-
-        'for(var x = 0, y = 1;;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [8, 9],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 9 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [15, 16],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [19, 20],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }],
-                kind: 'var',
-                range: [4, 20],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            test: null,
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'for(x = 0; x < 42;);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: null,
-            body: {
-                type: 'EmptyStatement',
-                range: [19, 20],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'for(x = 0; x < 42; x++);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                prefix: false,
-                range: [19, 22],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'for(x = 0; x < 42; x++) process(x);': {
-            type: 'ForStatement',
-            init: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [4, 9],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            test: {
-                type: 'BinaryExpression',
-                operator: '<',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [11, 12],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                right: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [15, 17],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                range: [11, 17],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            update: {
-                type: 'UpdateExpression',
-                operator: '++',
-                argument: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [19, 20],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                prefix: false,
-                range: [19, 22],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [24, 31],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [32, 33],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 33 }
-                        }
-                    }],
-                    range: [24, 34],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [24, 35],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 35 }
-                }
-            },
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            }
-        },
-
-        'for(x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'Identifier',
-                name: 'x',
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [15, 22],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [23, 24],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }],
-                    range: [15, 25],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [15, 26],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            each: false,
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'for (var x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: null,
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 10],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [14, 18],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [28, 29],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }],
-                    range: [20, 30],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [20, 31],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            each: false,
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        'for (var x = 42 in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42',
-                        range: [13, 15],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    range: [9, 15],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 15],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [19, 23],
-                loc: {
-                    start: { line: 1, column: 19 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [25, 32],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [33, 34],
-                        loc: {
-                            start: { line: 1, column: 33 },
-                            end: { line: 1, column: 34 }
-                        }
-                    }],
-                    range: [25, 35],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 35 }
-                    }
-                },
-                range: [25, 36],
-                loc: {
-                    start: { line: 1, column: 25 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            each: false,
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'for (let x in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: null,
-                    range: [9, 10],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 10 }
-                    }
-                }],
-                kind: 'let',
-                range: [5, 10],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [14, 18],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [28, 29],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }],
-                    range: [20, 30],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 30 }
-                    }
-                },
-                range: [20, 31],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            each: false,
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        'for (var x = y = z in q);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'AssignmentExpression',
-                        operator: '=',
-                        left: {
-                            type: 'Identifier',
-                            name: 'y',
-                            range: [13, 14],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        right: {
-                            type: 'Identifier',
-                            name: 'z',
-                            range: [17, 18],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 18 }
-                            }
-                        },
-                        range: [13, 18],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [9, 18],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 18 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 18],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'q',
-                range: [22, 23],
-                loc: {
-                    start: { line: 1, column: 22 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [24, 25],
-                loc: {
-                    start: { line: 1, column: 24 },
-                    end: { line: 1, column: 25 }
-                }
-            },
-            each: false,
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        'for (var a = b = c = (d in e) in z);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'a',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'AssignmentExpression',
-                        operator: '=',
-                        left: {
-                            type: 'Identifier',
-                            name: 'b',
-                            range: [13, 14],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        right: {
-                            type: 'AssignmentExpression',
-                            operator: '=',
-                            left: {
-                                type: 'Identifier',
-                                name: 'c',
-                                range: [17, 18],
-                                loc: {
-                                    start: { line: 1, column: 17 },
-                                    end: { line: 1, column: 18 }
-                                }
-                            },
-                            right: {
-                                type: 'BinaryExpression',
-                                operator: 'in',
-                                left: {
-                                    type: 'Identifier',
-                                    name: 'd',
-                                    range: [22, 23],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 23 }
-                                    }
-                                },
-                                right: {
-                                    type: 'Identifier',
-                                    name: 'e',
-                                    range: [27, 28],
-                                    loc: {
-                                        start: { line: 1, column: 27 },
-                                        end: { line: 1, column: 28 }
-                                    }
-                                },
-                                range: [22, 28],
-                                loc: {
-                                    start: { line: 1, column: 22 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            },
-                            range: [17, 29],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 29 }
-                            }
-                        },
-                        range: [13, 29],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 29 }
-                        }
-                    },
-                    range: [9, 29],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 29 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 29],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 29 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'z',
-                range: [33, 34],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [35, 36],
-                loc: {
-                    start: { line: 1, column: 35 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            each: false,
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'for (var i = function() { return 10 in [] } in list) process(x);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'i',
-                        range: [9, 10],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    init: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ReturnStatement',
-                                argument: {
-                                    type: 'BinaryExpression',
-                                    operator: 'in',
-                                    left: {
-                                        type: 'Literal',
-                                        value: 10,
-                                        raw: '10',
-                                        range: [33, 35],
-                                        loc: {
-                                            start: { line: 1, column: 33 },
-                                            end: { line: 1, column: 35 }
-                                        }
-                                    },
-                                    right: {
-                                        type: 'ArrayExpression',
-                                        elements: [],
-                                        range: [39, 41],
-                                        loc: {
-                                            start: { line: 1, column: 39 },
-                                            end: { line: 1, column: 41 }
-                                        }
-                                    },
-                                    range: [33, 41],
-                                    loc: {
-                                        start: { line: 1, column: 33 },
-                                        end: { line: 1, column: 41 }
-                                    }
-                                },
-                                range: [26, 42],
-                                loc: {
-                                    start: { line: 1, column: 26 },
-                                    end: { line: 1, column: 42 }
-                                }
-                            }],
-                            range: [24, 43],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 43 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [13, 43],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 43 }
-                        }
-                    },
-                    range: [9, 43],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 43 }
-                    }
-                }],
-                kind: 'var',
-                range: [5, 43],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 43 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'list',
-                range: [47, 51],
-                loc: {
-                    start: { line: 1, column: 47 },
-                    end: { line: 1, column: 51 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'process',
-                        range: [53, 60],
-                        loc: {
-                            start: { line: 1, column: 53 },
-                            end: { line: 1, column: 60 }
-                        }
-                    },
-                    'arguments': [{
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [61, 62],
-                        loc: {
-                            start: { line: 1, column: 61 },
-                            end: { line: 1, column: 62 }
-                        }
-                    }],
-                    range: [53, 63],
-                    loc: {
-                        start: { line: 1, column: 53 },
-                        end: { line: 1, column: 63 }
-                    }
-                },
-                range: [53, 64],
-                loc: {
-                    start: { line: 1, column: 53 },
-                    end: { line: 1, column: 64 }
-                }
-            },
-            each: false,
-            range: [0, 64],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 64 }
-            }
-        },
-
-        'for (a[b in c] in d);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                property: {
-                    type: 'BinaryExpression',
-                    operator: 'in',
-                    left: {
-                        type: 'Identifier',
-                        name: 'b',
-                        range: [7, 8],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 8 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'c',
-                        range: [12, 13],
-                        loc: {
-                            start: { line: 1, column: 12 },
-                            end: { line: 1, column: 13 }
-                        }
-                    },
-                    range: [7, 13],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [5, 14],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'd',
-                range: [18, 19],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [20, 21],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            each: false,
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'for (a(b in c)[0] in d);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'MemberExpression',
-                computed: true,
-                object: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'Identifier',
-                        name: 'a',
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        }
-                    },
-                    arguments: [{
-                        type: 'BinaryExpression',
-                        operator: 'in',
-                        left: {
-                            type: 'Identifier',
-                            name: 'b',
-                            range: [7, 8],
-                            loc: {
-                                start: { line: 1, column: 7 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        right: {
-                            type: 'Identifier',
-                            name: 'c',
-                            range: [12, 13],
-                            loc: {
-                                start: { line: 1, column: 12 },
-                                end: { line: 1, column: 13 }
-                            }
-                        },
-                        range: [7, 13],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 13 }
-                        }
-                    }],
-                    range: [5, 14],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                property: {
-                    type: 'Literal',
-                    value: 0,
-                    raw: '0',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [5, 17],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'd',
-                range: [21, 22],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            each: false,
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'for (a.in in a);': {
-            type: 'ForInStatement',
-            left: {
-                type: 'MemberExpression',
-                computed: false,
-                object: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                property: {
-                    type: 'Identifier',
-                    name: 'in',
-                    range: [7, 9],
-                    loc: {
-                        start: { line: 1, column: 7 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                range: [5, 9],
-                loc: {
-                    start: { line: 1, column: 5 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            right: {
-                type: 'Identifier',
-                name: 'a',
-                range: [13, 14],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            body: {
-                type: 'EmptyStatement',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            },
-            each: false,
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            }
-        }
-    },
-
-    'continue statement': {
-
-        'while (true) { continue; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'ContinueStatement',
-                        label: null,
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }
-                ],
-                range: [13, 26],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        },
-
-        'while (true) { continue }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'ContinueStatement',
-                        label: null,
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    }
-                ],
-                range: [13, 25],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 25 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        'done: while (true) { continue done }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ContinueStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [30, 34],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            range: [21, 35],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }
-                    ],
-                    range: [19, 36],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [6, 36],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 36 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            }
-        },
-
-        'done: while (true) { continue done; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ContinueStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [30, 34],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            range: [21, 35],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }
-                    ],
-                    range: [19, 37],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [6, 37],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 37 }
-                }
-            },
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            }
-        },
-
-        '__proto__: while (true) { continue __proto__; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: '__proto__',
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [18, 22],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ContinueStatement',
-                        label: {
-                            type: 'Identifier',
-                            name: '__proto__',
-                            range: [35, 44],
-                            loc: {
-                                start: { line: 1, column: 35 },
-                                end: { line: 1, column: 44 }
-                            }
-                        },
-                        range: [26, 45],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 45 }
-                        }
-                    }],
-                    range: [24, 47],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 47 }
-                    }
-                },
-                range: [11, 47],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 47 }
-                }
-            },
-            range: [0, 47],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 47 }
-            }
-        }
-
-    },
-
-    'break statement': {
-
-        'while (true) { break }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [
-                    {
-                        type: 'BreakStatement',
-                        label: null,
-                        range: [15, 21],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 21 }
-                        }
-                    }
-                ],
-                range: [13, 22],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'done: while (true) { break done }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'BreakStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [27, 31],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 31 }
-                                }
-                            },
-                            range: [21, 32],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 32 }
-                            }
-                        }
-                    ],
-                    range: [19, 33],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [6, 33],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 33 }
-                }
-            },
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        },
-
-        'done: while (true) { break done; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'done',
-                range: [0, 4],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 4 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [13, 17],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 17 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'BreakStatement',
-                            label: {
-                                type: 'Identifier',
-                                name: 'done',
-                                range: [27, 31],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 31 }
-                                }
-                            },
-                            range: [21, 32],
-                            loc: {
-                                start: { line: 1, column: 21 },
-                                end: { line: 1, column: 32 }
-                            }
-                        }
-                    ],
-                    range: [19, 34],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [6, 34],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        '__proto__: while (true) { break __proto__; }': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: '__proto__',
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [18, 22],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'BreakStatement',
-                        label: {
-                            type: 'Identifier',
-                            name: '__proto__',
-                            range: [32, 41],
-                            loc: {
-                                start: { line: 1, column: 32 },
-                                end: { line: 1, column: 41 }
-                            }
-                        },
-                        range: [26, 42],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 42 }
-                        }
-                    }],
-                    range: [24, 44],
-                    loc: {
-                        start: { line: 1, column: 24 },
-                        end: { line: 1, column: 44 }
-                    }
-                },
-                range: [11, 44],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 44 }
-                }
-            },
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 44 }
-            }
-        }
-
-    },
-
-    'return statement': {
-
-        '(function(){ return })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 20],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 20 }
-                            }
-                        }
-                    ],
-                    range: [11, 21],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 21],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 21 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        '(function(){ return; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 20],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 20 }
-                            }
-                        }
-                    ],
-                    range: [11, 22],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 22],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '(function(){ return x; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 21 }
-                                }
-                            },
-                            range: [13, 22],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 22 }
-                            }
-                        }
-                    ],
-                    range: [11, 24],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        '(function(){ return x * y })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: {
-                                type: 'BinaryExpression',
-                                operator: '*',
-                                left: {
-                                    type: 'Identifier',
-                                    name: 'x',
-                                    range: [20, 21],
-                                    loc: {
-                                        start: { line: 1, column: 20 },
-                                        end: { line: 1, column: 21 }
-                                    }
-                                },
-                                right: {
-                                    type: 'Identifier',
-                                    name: 'y',
-                                    range: [24, 25],
-                                    loc: {
-                                        start: { line: 1, column: 24 },
-                                        end: { line: 1, column: 25 }
-                                    }
-                                },
-                                range: [20, 25],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            range: [13, 26],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 26 }
-                            }
-                        }
-                    ],
-                    range: [11, 27],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 27],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        }
-    },
-
-    'with statement': {
-
-        'with (x) foo = bar': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [9, 12],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [15, 18],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [9, 18],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [9, 18],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            }
-        },
-
-        'with (x) foo = bar;': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [9, 12],
-                        loc: {
-                            start: { line: 1, column: 9 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'bar',
-                        range: [15, 18],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [9, 18],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [9, 19],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'with (x) { foo = bar }': {
-            type: 'WithStatement',
-            object: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'AssignmentExpression',
-                        operator: '=',
-                        left: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [11, 14],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        right: {
-                            type: 'Identifier',
-                            name: 'bar',
-                            range: [17, 20],
-                            loc: {
-                                start: { line: 1, column: 17 },
-                                end: { line: 1, column: 20 }
-                            }
-                        },
-                        range: [11, 20],
-                        loc: {
-                            start: { line: 1, column: 11 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    range: [11, 21],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 21 }
-                    }
-                }],
-                range: [9, 22],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        }
-
-    },
-
-    'switch statement': {
-
-        'switch (x) {}': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'x',
-                range: [8, 9],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            cases:[],
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            }
-        },
-
-        'switch (answer) { case 42: hi(); break; }': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'answer',
-                range: [8, 14],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            cases: [{
-                type: 'SwitchCase',
-                test: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [23, 25],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                consequent: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'hi',
-                            range: [27, 29],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 29 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [27, 32],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 32 }
-                    }
-                }, {
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [33, 39],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 39 }
-                    }
-                }],
-                range: [18, 39],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            }
-        },
-
-        'switch (answer) { case 42: hi(); break; default: break }': {
-            type: 'SwitchStatement',
-            discriminant: {
-                type: 'Identifier',
-                name: 'answer',
-                range: [8, 14],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            cases: [{
-                type: 'SwitchCase',
-                test: {
-                    type: 'Literal',
-                    value: 42,
-                    raw: '42',
-                    range: [23, 25],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                consequent: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'hi',
-                            range: [27, 29],
-                            loc: {
-                                start: { line: 1, column: 27 },
-                                end: { line: 1, column: 29 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [27, 31],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [27, 32],
-                    loc: {
-                        start: { line: 1, column: 27 },
-                        end: { line: 1, column: 32 }
-                    }
-                }, {
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [33, 39],
-                    loc: {
-                        start: { line: 1, column: 33 },
-                        end: { line: 1, column: 39 }
-                    }
-                }],
-                range: [18, 39],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 39 }
-                }
-            }, {
-                type: 'SwitchCase',
-                test: null,
-                consequent: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [49, 55],
-                    loc: {
-                        start: { line: 1, column: 49 },
-                        end: { line: 1, column: 55 }
-                    }
-                }],
-                range: [40, 55],
-                loc: {
-                    start: { line: 1, column: 40 },
-                    end: { line: 1, column: 55 }
-                }
-            }],
-            range: [0, 56],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 56 }
-            }
-        }
-
-    },
-
-    'Labelled Statements': {
-
-        'start: for (;;) break start': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'start',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            body: {
-                type: 'ForStatement',
-                init: null,
-                test: null,
-                update: null,
-                body: {
-                    type: 'BreakStatement',
-                    label: {
-                        type: 'Identifier',
-                        name: 'start',
-                        range: [22, 27],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [16, 27],
-                    loc: {
-                        start: { line: 1, column: 16 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [7, 27],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        },
-
-        'start: while (true) break start': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: 'start',
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            },
-            body: {
-                type: 'WhileStatement',
-                test: {
-                    type: 'Literal',
-                    value: true,
-                    raw: 'true',
-                    range: [14, 18],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                body: {
-                    type: 'BreakStatement',
-                    label: {
-                        type: 'Identifier',
-                        name: 'start',
-                        range: [26, 31],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [20, 31],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 31 }
-                    }
-                },
-                range: [7, 31],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 31 }
-                }
-            },
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            }
-        },
-
-        '__proto__: test': {
-            type: 'LabeledStatement',
-            label: {
-                type: 'Identifier',
-                name: '__proto__',
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                }
-            },
-            body: {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'test',
-                    range: [11, 15],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 15 }
-                    }
-                },
-                range: [11, 15],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 15 }
-                }
-            },
-            range: [0, 15],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 15 }
-            }
-        }
-
-    },
-
-    'throw statement': {
-
-        'throw x;': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'Identifier',
-                name: 'x',
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            range: [0, 8],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 8 }
-            }
-        },
-
-        'throw x * y': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'BinaryExpression',
-                operator: '*',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [6, 7],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 7 }
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'y',
-                    range: [10, 11],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 11 }
-                    }
-                },
-                range: [6, 11],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            range: [0, 11],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 11 }
-            }
-        },
-
-        'throw { message: "Error" }': {
-            type: 'ThrowStatement',
-            argument: {
-                type: 'ObjectExpression',
-                properties: [{
-                    type: 'Property',
-                    key: {
-                        type: 'Identifier',
-                        name: 'message',
-                        range: [8, 15],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    value: {
-                        type: 'Literal',
-                        value: 'Error',
-                        raw: '"Error"',
-                        range: [17, 24],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    kind: 'init',
-                    method: false,
-                    shorthand: false,
-                    range: [8, 24],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 24 }
-                    }
-                }],
-                range: [6, 26],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 26 }
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            }
-        }
-
-    },
-
-    'try statement': {
-
-        'try { } catch (e) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 21],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 21 }
-                    }
-                },
-                range: [8, 21],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            }
-        },
-
-        'try { } catch (eval) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [15, 19],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 19 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [21, 24],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [8, 24],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 24 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'try { } catch (arguments) { }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [15, 24],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [26, 29],
-                    loc: {
-                        start: { line: 1, column: 26 },
-                        end: { line: 1, column: 29 }
-                    }
-                },
-                range: [8, 29],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 29 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'try { } catch (e) { say(e) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [20, 23],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 23 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            }],
-                            range: [20, 26],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 26 }
-                            }
-                        },
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    }],
-                    range: [18, 28],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [8, 28],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            }
-        },
-
-        'try { } finally { cleanup(stuff) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [],
-                range: [4, 7],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 7 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [],
-            finalizer: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'cleanup',
-                            range: [18, 25],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 25 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Identifier',
-                            name: 'stuff',
-                            range: [26, 31],
-                            loc: {
-                                start: { line: 1, column: 26 },
-                                end: { line: 1, column: 31 }
-                            }
-                        }],
-                        range: [18, 32],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    range: [18, 33],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 33 }
-                    }
-                }],
-                range: [16, 34],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 34 }
-                }
-            },
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'try { doThat(); } catch (e) { say(e) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'doThat',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [6, 15],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                range: [4, 17],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [25, 26],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [30, 33],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [34, 35],
-                                loc: {
-                                    start: { line: 1, column: 34 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            }],
-                            range: [30, 36],
-                            loc: {
-                                start: { line: 1, column: 30 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        range: [30, 37],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [28, 38],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [18, 38],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            finalizer: null,
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        'try { doThat(); } catch (e) { say(e) } finally { cleanup(stuff) }': {
-            type: 'TryStatement',
-            block: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'doThat',
-                            range: [6, 12],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 12 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [6, 14],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    range: [6, 15],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 15 }
-                    }
-                }],
-                range: [4, 17],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            guardedHandlers: [],
-            handlers: [{
-                type: 'CatchClause',
-                param: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [25, 26],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 26 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'CallExpression',
-                            callee: {
-                                type: 'Identifier',
-                                name: 'say',
-                                range: [30, 33],
-                                loc: {
-                                    start: { line: 1, column: 30 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            },
-                            'arguments': [{
-                                type: 'Identifier',
-                                name: 'e',
-                                range: [34, 35],
-                                loc: {
-                                    start: { line: 1, column: 34 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            }],
-                            range: [30, 36],
-                            loc: {
-                                start: { line: 1, column: 30 },
-                                end: { line: 1, column: 36 }
-                            }
-                        },
-                        range: [30, 37],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 37 }
-                        }
-                    }],
-                    range: [28, 38],
-                    loc: {
-                        start: { line: 1, column: 28 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [18, 38],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            finalizer: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'cleanup',
-                            range: [49, 56],
-                            loc: {
-                                start: { line: 1, column: 49 },
-                                end: { line: 1, column: 56 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Identifier',
-                            name: 'stuff',
-                            range: [57, 62],
-                            loc: {
-                                start: { line: 1, column: 57 },
-                                end: { line: 1, column: 62 }
-                            }
-                        }],
-                        range: [49, 63],
-                        loc: {
-                            start: { line: 1, column: 49 },
-                            end: { line: 1, column: 63 }
-                        }
-                    },
-                    range: [49, 64],
-                    loc: {
-                        start: { line: 1, column: 49 },
-                        end: { line: 1, column: 64 }
-                    }
-                }],
-                range: [47, 65],
-                loc: {
-                    start: { line: 1, column: 47 },
-                    end: { line: 1, column: 65 }
-                }
-            },
-            range: [0, 65],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 65 }
-            }
-        }
-
-    },
-
-    'debugger statement': {
-
-        'debugger;': {
-            type: 'DebuggerStatement',
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            }
-        }
-
-    },
-
-    'Function Definition': {
-
-        'function hello() { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [19, 24],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 24 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [19, 26],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 26 }
-                        }
-                    },
-                    range: [19, 27],
-                    loc: {
-                        start: { line: 1, column: 19 },
-                        end: { line: 1, column: 27 }
-                    }
-                }],
-                range: [17, 29],
-                loc: {
-                    start: { line: 1, column: 17 },
-                    end: { line: 1, column: 29 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'function eval() { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'eval',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [16, 19],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 19 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            }
-        },
-
-        'function arguments() { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'arguments',
-                range: [9, 18],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 18 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [21, 24],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            }
-        },
-
-        'function test(t, t) { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'test',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 't',
-                range: [14, 15],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 15 }
-                }
-            }, {
-                type: 'Identifier',
-                name: 't',
-                range: [17, 18],
-                loc: {
-                    start: { line: 1, column: 17 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [20, 23],
-                loc: {
-                    start: { line: 1, column: 20 },
-                    end: { line: 1, column: 23 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            }
-        },
-
-        '(function test(t, t) { })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: {
-                    type: 'Identifier',
-                    name: 'test',
-                    range: [10, 14],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 't',
-                    range: [15, 16],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 16 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 't',
-                    range: [18, 19],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 19 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [21, 24],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 24 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 25 }
-            }
-        },
-
-        'function eval() { function inner() { "use strict" } }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'eval',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'FunctionDeclaration',
-                    id: {
-                        type: 'Identifier',
-                        name: 'inner',
-                        range: [27, 32],
-                        loc: {
-                            start: { line: 1, column: 27 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Literal',
-                                value: 'use strict',
-                                raw: '\"use strict\"',
-                                range: [37, 49],
-                                loc: {
-                                    start: { line: 1, column: 37 },
-                                    end: { line: 1, column: 49 }
-                                }
-                            },
-                            range: [37, 50],
-                            loc: {
-                                start: { line: 1, column: 37 },
-                                end: { line: 1, column: 50 }
-                            }
-                        }],
-                        range: [35, 51],
-                        loc: {
-                            start: { line: 1, column: 35 },
-                            end: { line: 1, column: 51 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [18, 51],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 51 }
-                    }
-                }],
-                range: [16, 53],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 53 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 53],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 53 }
-            }
-        },
-
-        'function hello(a) { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 'a',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [20, 25],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 25 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [20, 27],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [20, 28],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 28 }
-                    }
-                }],
-                range: [18, 30],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 30 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 30],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 30 }
-            }
-        },
-
-        'function hello(a, b) { sayHi(); }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'hello',
-                range: [9, 14],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 14 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 'a',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            }, {
-                type: 'Identifier',
-                name: 'b',
-                range: [18, 19],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 19 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'sayHi',
-                            range: [23, 28],
-                            loc: {
-                                start: { line: 1, column: 23 },
-                                end: { line: 1, column: 28 }
-                            }
-                        },
-                        'arguments': [],
-                        range: [23, 30],
-                        loc: {
-                            start: { line: 1, column: 23 },
-                            end: { line: 1, column: 30 }
-                        }
-                    },
-                    range: [23, 31],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                range: [21, 33],
-                loc: {
-                    start: { line: 1, column: 21 },
-                    end: { line: 1, column: 33 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            }
-        },
-
-        'var hi = function() { sayHi() };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'CallExpression',
-                                callee: {
-                                    type: 'Identifier',
-                                    name: 'sayHi',
-                                    range: [22, 27],
-                                    loc: {
-                                        start: { line: 1, column: 22 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                'arguments': [],
-                                range: [22, 29],
-                                loc: {
-                                    start: { line: 1, column: 22 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            range: [22, 30],
-                            loc: {
-                                start: { line: 1, column: 22 },
-                                end: { line: 1, column: 30 }
-                            }
-                        }],
-                        range: [20, 31],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 31],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 31 }
-                    }
-                },
-                range: [4, 31],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 31 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 32 }
-            }
-        },
-
-        'var hi = function eval() { };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [18, 22],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [25, 28],
-                        loc: {
-                            start: { line: 1, column: 25 },
-                            end: { line: 1, column: 28 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 28],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 28 }
-                    }
-                },
-                range: [4, 28],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 29 }
-            }
-        },
-
-        'var hi = function arguments() { };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hi',
-                    range: [4, 6],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [18, 27],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [30, 33],
-                        loc: {
-                            start: { line: 1, column: 30 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [9, 33],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [4, 33],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 33 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            }
-        },
-
-        'var hello = function hi() { sayHi() };': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'hello',
-                    range: [4, 9],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 9 }
-                    }
-                },
-                init: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'hi',
-                        range: [21, 23],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'CallExpression',
-                                callee: {
-                                    type: 'Identifier',
-                                    name: 'sayHi',
-                                    range: [28, 33],
-                                    loc: {
-                                        start: { line: 1, column: 28 },
-                                        end: { line: 1, column: 33 }
-                                    }
-                                },
-                                'arguments': [],
-                                range: [28, 35],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            },
-                            range: [28, 36],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 36 }
-                            }
-                        }],
-                        range: [26, 37],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 37 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [12, 37],
-                    loc: {
-                        start: { line: 1, column: 12 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                range: [4, 37],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 37 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        },
-
-        '(function(){})': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [11, 13],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 13],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            range: [0, 14],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 14 }
-            }
-        },
-
-        'function universe(__proto__) { }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'universe',
-                range: [9, 17],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 17 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: '__proto__',
-                range: [18, 27],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 27 }
-                }
-            }],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [29, 32],
-                loc: {
-                    start: { line: 1, column: 29 },
-                    end: { line: 1, column: 32 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 32 }
-            }
-        },
-
-        'function test() { "use strict" + 42; }': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'test',
-                range: [9, 13],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 13 }
-                }
-            },
-            params: [],
-            defaults: [],
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'BinaryExpression',
-                        operator: '+',
-                        left: {
-                            type: 'Literal',
-                            value: 'use strict',
-                            raw: '"use strict"',
-                            range: [18, 30],
-                            loc: {
-                                start: { line: 1, column: 18 },
-                                end: { line: 1, column: 30 }
-                            }
-                        },
-                        right: {
-                            type: 'Literal',
-                            value: 42,
-                            raw: '42',
-                            range: [33, 35],
-                            loc: {
-                                start: { line: 1, column: 33 },
-                                end: { line: 1, column: 35 }
-                            }
-                        },
-                        range: [18, 35],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 35 }
-                        }
-                    },
-                    range: [18, 36],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 36 }
-                    }
-                }],
-                range: [16, 38],
-                loc: {
-                    start: { line: 1, column: 16 },
-                    end: { line: 1, column: 38 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            }
-        }
-
-    },
-
-    '[ES6] Default Parameter Value': {
-
-        'x = function(y = 1) {}': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [{
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    defaults: [{
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [17, 18],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 18 }
-                        }
-                    }],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [20, 22],
-                        loc: {
-                            start: { line: 1, column: 20 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [4, 22],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [0, 22],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 22 }
-                }
-            },
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            }
-        },
-
-        'function f(a = 1) {}': {
-            type: 'FunctionDeclaration',
-            id: {
-                type: 'Identifier',
-                name: 'f',
-                range: [9, 10],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 10 }
-                }
-            },
-            params: [{
-                type: 'Identifier',
-                name: 'a',
-                range: [11, 12],
-                loc: {
-                    start: { line: 1, column: 11 },
-                    end: { line: 1, column: 12 }
-                }
-            }],
-            defaults: [{
-                type: 'Literal',
-                value: 1,
-                raw: '1',
-                range: [15, 16],
-                loc: {
-                    start: { line: 1, column: 15 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            body: {
-                type: 'BlockStatement',
-                body: [],
-                range: [18, 20],
-                loc: {
-                    start: { line: 1, column: 18 },
-                    end: { line: 1, column: 20 }
-                }
-            },
-            rest: null,
-            generator: false,
-            expression: false,
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        'x = { f: function(a=1) {} }': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'AssignmentExpression',
-                operator: '=',
-                left: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [0, 1],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 1 }
-                    }
-                },
-                right: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 'f',
-                            range: [6, 7],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 7 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [{
-                                type: 'Identifier',
-                                name: 'a',
-                                range: [18, 19],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            }],
-                            defaults: [{
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 21 }
-                                }
-                            }],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [23, 25],
-                                loc: {
-                                    start: { line: 1, column: 23 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [9, 25],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 25 }
-                            }
-                        },
-                        kind: 'init',
-                        method: false,
-                        shorthand: false,
-                        range: [6, 25],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 25 }
-                        }
-                    }],
-                    range: [4, 27],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [0, 27],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 27 }
-                }
-            },
-            range: [0, 27],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 27 }
-            }
-        }
-
-    },
-
-    'Automatic semicolon insertion': {
-
-        '{ x\n++y }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [2, 3],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 2, column: 2 },
-                            end: { line: 2, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                },
-                range: [4, 8],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 4 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '{ x\n--y }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [2, 3],
-                    loc: {
-                        start: { line: 1, column: 2 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [2, 3],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 2, column: 2 },
-                            end: { line: 2, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [4, 7],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 3 }
-                    }
-                },
-                range: [4, 8],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 4 }
-                }
-            }],
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        'var x /* comment */;': {
-            type: 'VariableDeclaration',
-            declarations: [{
-                type: 'VariableDeclarator',
-                id: {
-                    type: 'Identifier',
-                    name: 'x',
-                    range: [4, 5],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                init: null,
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            kind: 'var',
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            }
-        },
-
-        '{ var x = 14, y = 3\nz; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 14,
-                        raw: '14',
-                        range: [10, 12],
-                        loc: {
-                            start: { line: 1, column: 10 },
-                            end: { line: 1, column: 12 }
-                        }
-                    },
-                    range: [6, 12],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 12 }
-                    }
-                }, {
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    init: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 19 }
-                    }
-                }],
-                kind: 'var',
-                range: [2, 19],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 19 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [20, 21],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 1 }
-                    }
-                },
-                range: [20, 22],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 2 }
-                }
-            }],
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 4 }
-            }
-        },
-
-        'while (true) { continue\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [24, 29],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [24, 30],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 32],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { continue // Comment\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [35, 40],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [35, 41],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 43],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { continue /* Multiline\nComment */there; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'ContinueStatement',
-                    label: null,
-                    range: [15, 23],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 23 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [47, 52],
-                        loc: {
-                            start: { line: 2, column: 10 },
-                            end: { line: 2, column: 15 }
-                        }
-                    },
-                    range: [47, 53],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 16 }
-                    }
-                }],
-                range: [13, 55],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 18 }
-                }
-            },
-            range: [0, 55],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        },
-
-        'while (true) { break\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [21, 26],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [21, 27],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 29],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 29],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { break // Comment\nthere; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [32, 37],
-                        loc: {
-                            start: { line: 2, column: 0 },
-                            end: { line: 2, column: 5 }
-                        }
-                    },
-                    range: [32, 38],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 6 }
-                    }
-                }],
-                range: [13, 40],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 8 }
-                }
-            },
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        'while (true) { break /* Multiline\nComment */there; }': {
-            type: 'WhileStatement',
-            test: {
-                type: 'Literal',
-                value: true,
-                raw: 'true',
-                range: [7, 11],
-                loc: {
-                    start: { line: 1, column: 7 },
-                    end: { line: 1, column: 11 }
-                }
-            },
-            body: {
-                type: 'BlockStatement',
-                body: [{
-                    type: 'BreakStatement',
-                    label: null,
-                    range: [15, 20],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 20 }
-                    }
-                }, {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'there',
-                        range: [44, 49],
-                        loc: {
-                            start: { line: 2, column: 10 },
-                            end: { line: 2, column: 15 }
-                        }
-                    },
-                    range: [44, 50],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 16 }
-                    }
-                }],
-                range: [13, 52],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 2, column: 18 }
-                }
-            },
-            range: [0, 52],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        },
-
-        '(function(){ return\nx; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 1 }
-                                }
-                            },
-                            range: [20, 22],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 2 }
-                            }
-                        }
-                    ],
-                    range: [11, 24],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 4 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 24],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 4 }
-                }
-            },
-            range: [0, 25],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '(function(){ return // Comment\nx; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [31, 32],
-                                loc: {
-                                    start: { line: 2, column: 0 },
-                                    end: { line: 2, column: 1 }
-                                }
-                            },
-                            range: [31, 33],
-                            loc: {
-                                start: { line: 2, column: 0 },
-                                end: { line: 2, column: 2 }
-                            }
-                        }
-                    ],
-                    range: [11, 35],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 4 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 35],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 4 }
-                }
-            },
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 5 }
-            }
-        },
-
-        '(function(){ return/* Multiline\nComment */x; })': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'FunctionExpression',
-                id: null,
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [
-                        {
-                            type: 'ReturnStatement',
-                            argument: null,
-                            range: [13, 19],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 19 }
-                            }
-                        },
-                        {
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Identifier',
-                                name: 'x',
-                                range: [42, 43],
-                                loc: {
-                                    start: { line: 2, column: 10 },
-                                    end: { line: 2, column: 11 }
-                                }
-                            },
-                            range: [42, 44],
-                            loc: {
-                                start: { line: 2, column: 10 },
-                                end: { line: 2, column: 12 }
-                            }
-                        }
-                    ],
-                    range: [11, 46],
-                    loc: {
-                        start: { line: 1, column: 11 },
-                        end: { line: 2, column: 14 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [1, 46],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 2, column: 14 }
-                }
-            },
-            range: [0, 47],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 15 }
-            }
-        },
-
-        '{ throw error\nerror; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 13],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [14, 19],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 5 }
-                    }
-                },
-                range: [14, 20],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        '{ throw error// Comment\nerror; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 13],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [24, 29],
-                    loc: {
-                        start: { line: 2, column: 0 },
-                        end: { line: 2, column: 5 }
-                    }
-                },
-                range: [24, 30],
-                loc: {
-                    start: { line: 2, column: 0 },
-                    end: { line: 2, column: 6 }
-                }
-            }],
-            range: [0, 32],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 8 }
-            }
-        },
-
-        '{ throw error/* Multiline\nComment */error; }': {
-            type: 'BlockStatement',
-            body: [{
-                type: 'ThrowStatement',
-                argument: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [8, 13],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 13 }
-                    }
-                },
-                range: [2, 13],
-                loc: {
-                    start: { line: 1, column: 2 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Identifier',
-                    name: 'error',
-                    range: [36, 41],
-                    loc: {
-                        start: { line: 2, column: 10 },
-                        end: { line: 2, column: 15 }
-                    }
-                },
-                range: [36, 42],
-                loc: {
-                    start: { line: 2, column: 10 },
-                    end: { line: 2, column: 16 }
-                }
-            }],
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 2, column: 18 }
-            }
-        }
-
-    },
-
-    'Directive Prolog': {
-
-        '(function () { \'use\\x20strict\'; with (i); }())': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Literal',
-                                value: 'use strict',
-                                raw: '\'use\\x20strict\'',
-                                range: [15, 30],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 30 }
-                                }
-                            },
-                            range: [15, 31],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 31 }
-                            }
-                        }, {
-                            type: 'WithStatement',
-                            object: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [38, 39],
-                                loc: {
-                                    start: { line: 1, column: 38 },
-                                    end: { line: 1, column: 39 }
-                                }
-                            },
-                            body: {
-                                type: 'EmptyStatement',
-                                range: [40, 41],
-                                loc: {
-                                    start: { line: 1, column: 40 },
-                                    end: { line: 1, column: 41 }
-                                }
-                            },
-                            range: [32, 41],
-                            loc: {
-                                start: { line: 1, column: 32 },
-                                end: { line: 1, column: 41 }
-                            }
-                        }],
-                        range: [13, 43],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 43 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [1, 43],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 43 }
-                    }
-                },
-                'arguments': [],
-                range: [1, 45],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 45 }
-                }
-            },
-            range: [0, 46],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 46 }
-            }
-        },
-
-        '(function () { \'use\\nstrict\'; with (i); }())': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'CallExpression',
-                callee: {
-                    type: 'FunctionExpression',
-                    id: null,
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [{
-                            type: 'ExpressionStatement',
-                            expression: {
-                                type: 'Literal',
-                                value: 'use\nstrict',
-                                raw: '\'use\\nstrict\'',
-                                range: [15, 28],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            },
-                            range: [15, 29],
-                            loc: {
-                                start: { line: 1, column: 15 },
-                                end: { line: 1, column: 29 }
-                            }
-                        }, {
-                            type: 'WithStatement',
-                            object: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [36, 37],
-                                loc: {
-                                    start: { line: 1, column: 36 },
-                                    end: { line: 1, column: 37 }
-                                }
-                            },
-                            body: {
-                                type: 'EmptyStatement',
-                                range: [38, 39],
-                                loc: {
-                                    start: { line: 1, column: 38 },
-                                    end: { line: 1, column: 39 }
-                                }
-                            },
-                            range: [30, 39],
-                            loc: {
-                                start: { line: 1, column: 30 },
-                                end: { line: 1, column: 39 }
-                            }
-                        }],
-                        range: [13, 41],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 41 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [1, 41],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 41 }
-                    }
-                },
-                'arguments': [],
-                range: [1, 43],
-                loc: {
-                    start: { line: 1, column: 1 },
-                    end: { line: 1, column: 43 }
-                }
-            },
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 44 }
-            }
-        }
-
-    },
-
-    'Whitespace': {
-
-        'new\x20\x09\x0B\x0C\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\uFEFFa': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'NewExpression',
-                callee: {
-                    type: 'Identifier',
-                    name: 'a',
-                    range: [25, 26],
-                    loc: {
-                        start: {line: 1, column: 25},
-                        end: {line: 1, column: 26}
-                    }
-                },
-                arguments: [],
-                range: [0, 26],
-                loc: {
-                    start: {line: 1, column: 0},
-                    end: {line: 1, column: 26}
-                }
-            },
-            range: [0, 26],
-            loc: {
-                start: {line: 1, column: 0},
-                end: {line: 1, column: 26}
-            }
-        },
-
-        '{0\x0A1\x0D2\u20283\u20294}': {
-            type: 'BlockStatement',
-            body: [
-                {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [1, 2],
-                        loc: {
-                            start: {line: 1, column: 1},
-                            end: {line: 1, column: 2}
-                        }
-                    },
-                    range: [1, 2],
-                    loc: {
-                        start: {line: 1, column: 1},
-                        end: {line: 1, column: 2}
-                    }
-                },
-                {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [3, 4],
-                        loc: {
-                            start: {line: 2, column: 0},
-                            end: {line: 2, column: 1}
-                        }
-                    },
-                    range: [3, 4],
-                    loc: {
-                        start: {line: 2, column: 0},
-                        end: {line: 2, column: 1}
-                    }
-                },
-                {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [5, 6],
-                        loc: {
-                            start: {line: 3, column: 0},
-                            end: {line: 3, column: 1}
-                        }
-                    },
-                    range: [5, 6],
-                    loc: {
-                        start: {line: 3, column: 0},
-                        end: {line: 3, column: 1}
-                    }
-                },
-                {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [7, 8],
-                        loc: {
-                            start: {line: 4, column: 0},
-                            end: {line: 4, column: 1}
-                        }
-                    },
-                    range: [7, 8],
-                    loc: {
-                        start: {line: 4, column: 0},
-                        end: {line: 4, column: 1}
-                    }
-                },
-                {
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 4,
-                        raw: '4',
-                        range: [9, 10],
-                        loc: {
-                            start: {line: 5, column: 0},
-                            end: {line: 5, column: 1}
-                        }
-                    },
-                    range: [9, 10],
-                    loc: {
-                        start: {line: 5, column: 0},
-                        end: {line: 5, column: 1}
-                    }
-                }
-            ],
-            range: [0, 11],
-            loc: {
-                start: {line: 1, column: 0},
-                end: {line: 5, column: 2}
-            }
-        }
-
-    },
-
-    'Source elements': {
-
-        '': {
-            type: 'Program',
-            body: [],
-            range: [0, 0],
-            loc: {
-                start: { line: 0, column: 0 },
-                end: { line: 0, column: 0 }
-            },
-            tokens: []
-        }
-    },
-
-    'Source option': {
-        'x + y - z': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '-',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 },
-                            source: '42.js'
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'y',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 },
-                            source: '42.js'
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 },
-                        source: '42.js'
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'z',
-                    range: [8, 9],
-                    loc: {
-                        start: { line: 1, column: 8 },
-                        end: { line: 1, column: 9 },
-                        source: '42.js'
-                    }
-                },
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 },
-                    source: '42.js'
-                }
-            },
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 },
-                source: '42.js'
-            }
-        },
-
-        'a + (b < (c * d)) + e': {
-            type: 'ExpressionStatement',
-            expression: {
-                type: 'BinaryExpression',
-                operator: '+',
-                left: {
-                    type: 'BinaryExpression',
-                    operator: '+',
-                    left: {
-                        type: 'Identifier',
-                        name: 'a',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 },
-                            source: '42.js'
-                        }
-                    },
-                    right: {
-                        type: 'BinaryExpression',
-                        operator: '<',
-                        left: {
-                            type: 'Identifier',
-                            name: 'b',
-                            range: [5, 6],
-                            loc: {
-                                start: { line: 1, column: 5 },
-                                end: { line: 1, column: 6 },
-                                source: '42.js'
-                            }
-                        },
-                        right: {
-                            type: 'BinaryExpression',
-                            operator: '*',
-                            left: {
-                                type: 'Identifier',
-                                name: 'c',
-                                range: [10, 11],
-                                loc: {
-                                    start: { line: 1, column: 10 },
-                                    end: { line: 1, column: 11 },
-                                    source: '42.js'
-                                }
-                            },
-                            right: {
-                                type: 'Identifier',
-                                name: 'd',
-                                range: [14, 15],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 15 },
-                                    source: '42.js'
-                                }
-                            },
-                            range: [10, 15],
-                            loc: {
-                                start: { line: 1, column: 10 },
-                                end: { line: 1, column: 15 },
-                                source: '42.js'
-                            }
-                        },
-                        range: [5, 16],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 16 },
-                            source: '42.js'
-                        }
-                    },
-                    range: [0, 17],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 17 },
-                        source: '42.js'
-                    }
-                },
-                right: {
-                    type: 'Identifier',
-                    name: 'e',
-                    range: [20, 21],
-                    loc: {
-                        start: { line: 1, column: 20 },
-                        end: { line: 1, column: 21 },
-                        source: '42.js'
-                    }
-                },
-                range: [0, 21],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 21 },
-                    source: '42.js'
-                }
-            },
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 },
-                source: '42.js'
-            }
-        }
-
-    },
-
-
-    'Invalid syntax': {
-
-        '{': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '}': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token }'
-        },
-
-        '3ea': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3in []': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e+': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3e-': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3x': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3x0': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0x': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '01a': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0o1a': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0o': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0O': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0o9': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0o18': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0O1a': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0b': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0b1a': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0b9': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0b18': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0b12': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0B': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0B1a': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0B9': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0B18': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0B12': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0O9': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0O18': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3in[]': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '0x3in[]': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"Hello\nWorld"': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\u005c': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'x\\u002a': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var x = /(s/g': {
-            index: 13,
-            lineNumber: 1,
-            column: 14,
-            message: 'Error: Line 1: Invalid regular expression'
-        },
-
-        'a\\u': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\\ua': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        '/test': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        '/test\n/': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'var x = /[a-z]/\\ux': {
-            index: 17,
-            lineNumber: 1,
-            column: 18,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var x = /[a-z\n]/\\ux': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'var x = /[a-z]/\\\\ux': {
-            index: 16,
-            lineNumber: 1,
-            column: 17,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var x = /[P QR]/\\\\u0067': {
-            index: 17,
-            lineNumber: 1,
-            column: 18,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '3 = 4': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        'func() = 4': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '(1 + 1) = 10': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '"\\u{110000}"': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\u{}"': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\u{FFFF"': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\u{FFZ}"': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '1++': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '1--': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '++1': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '--1': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        'for((1 + 1) in list) process(x);': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        '[': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '[,': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + {': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + { t:t ': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '1 + { t:t,': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'var x = /\n/': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'var x = "\n': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'var if = 42': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'i #= 42': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'i + 2 = 42': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '+i = 42': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Invalid left-hand side in assignment'
-        },
-
-        '1 + (': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '\n\n\n{': {
-            index: 4,
-            lineNumber: 4,
-            column: 2,
-            message: 'Error: Line 4: Unexpected end of input'
-        },
-
-        '\n/* Some multiline\ncomment */\n)': {
-            index: 30,
-            lineNumber: 4,
-            column: 1,
-            message: 'Error: Line 4: Unexpected token )'
-        },
-
-        '{ set 1 }': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        '{ get 2 }': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        '({ set: s(if) { } })': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        '({ set s(.) { } })': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token .'
-        },
-
-        '({ set s() { } })': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        '({ set: s() { } })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ set: s(a, b) { } })': {
-            index: 16,
-            lineNumber: 1,
-            column: 17,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ get: g(d) { } })': {
-            index: 13,
-            lineNumber: 1,
-            column: 14,
-            message: 'Error: Line 1: Unexpected token {'
-        },
-
-        '({ get i() { }, i: 42 })': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ i: 42, get i() { } })': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ set i(x) { }, i: 42 })': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ i: 42, set i(x) { } })': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        '({ get i() { }, get i() { } })': {
-            index: 27,
-            lineNumber: 1,
-            column: 28,
-            message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-        },
-
-        '({ set i(x) { }, set i(x) { } })': {
-            index: 29,
-            lineNumber: 1,
-            column: 30,
-            message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-        },
-
-        '((a)) => 42': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected token =>'
-        },
-
-        '(a, (b)) => 42': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token =>'
-        },
-
-        '"use strict"; (eval = 10) => 42': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-        },
-
-        // strict mode, using eval when IsSimpleParameterList is true
-        '"use strict"; eval => 42': {
-            index: 24,
-            lineNumber: 1,
-            column: 25,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        // strict mode, using arguments when IsSimpleParameterList is true
-        '"use strict"; arguments => 42': {
-            index: 29,
-            lineNumber: 1,
-            column: 30,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        // strict mode, using eval when IsSimpleParameterList is true
-        '"use strict"; (eval, a) => 42': {
-            index: 29,
-            lineNumber: 1,
-            column: 30,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        // strict mode, using arguments when IsSimpleParameterList is true
-        '"use strict"; (arguments, a) => 42': {
-            index: 34,
-            lineNumber: 1,
-            column: 35,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        '(a, a) => 42': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '"use strict"; (a, a) => 42': {
-            index: 20,
-            lineNumber: 1,
-            column: 21,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '"use strict"; (a) => 00': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        '() <= 42': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token <='
-        },
-
-        '() ? 42': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ?'
-        },
-
-        '() + 42': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token +'
-        },
-
-        '(10) => 00': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected token =>'
-        },
-
-        '(10, 20) => 00': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token =>'
-        },
-
-        '"use strict"; (eval) => 42': {
-            index: 26,
-            lineNumber: 1,
-            column: 27,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        '(eval) => { "use strict"; 42 }': {
-            index: 30,
-            lineNumber: 1,
-            column: 31,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'p = { q/ }': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token /'
-        },
-
-        'p = { "q"/ }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token /'
-        },
-
-        'function t(if) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'function t(true) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token true'
-        },
-
-        'function t(false) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token false'
-        },
-
-        'function t(null) { }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Unexpected token null'
-        },
-
-        'function null() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token null'
-        },
-
-        'function true() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token true'
-        },
-
-        'function false() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token false'
-        },
-
-        'function if() { }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'a b;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected identifier'
-        },
-
-        'if.a;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token .'
-        },
-
-        'a if;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token if'
-        },
-
-        'a class;': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected reserved word'
-        },
-
-        'break\n': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'break 1;': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'continue\n': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'continue 2;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'throw': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'throw;': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'throw\n': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal newline after throw'
-        },
-
-        'for (var i, i2 in {});': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Unexpected token in'
-        },
-
-        'for ((i in {}));': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        'for (i + 1 in {});': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        'for (+i in {});': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Invalid left-hand side in for-in'
-        },
-
-        'if(false)': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'if(false) doThis(); else': {
-            index: 24,
-            lineNumber: 1,
-            column: 25,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'do': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'while(false)': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'for(;;)': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'with(x)': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'try { }': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Missing catch or finally after try'
-        },
-
-        'try {} catch (42) {} ': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected number'
-        },
-
-        'try {} catch (answer()) {} ': {
-            index: 20,
-            lineNumber: 1,
-            column: 21,
-            message: 'Error: Line 1: Unexpected token ('
-        },
-
-        'try {} catch (-x) {} ': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token -'
-        },
-
-
-        '\u203F = 10': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'const x = 12, y;': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'const x, y = 12;': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ,'
-        },
-
-        'const x;': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ;'
-        },
-
-        'if(true) let a = 1;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token let'
-        },
-
-        'if(true) const a = 1;': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token const'
-        },
-
-        'switch (c) { default: default: }': {
-            index: 30,
-            lineNumber: 1,
-            column: 31,
-            message: 'Error: Line 1: More than one default clause in switch statement'
-        },
-
-        'new X()."s"': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Unexpected string'
-        },
-
-        '/*': {
-            index: 2,
-            lineNumber: 1,
-            column: 3,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*\n\n\n': {
-            index: 5,
-            lineNumber: 4,
-            column: 1,
-            message: 'Error: Line 4: Unexpected token ILLEGAL'
-        },
-
-        '/**': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*\n\n*': {
-            index: 5,
-            lineNumber: 3,
-            column: 2,
-            message: 'Error: Line 3: Unexpected token ILLEGAL'
-        },
-
-        '/*hello': {
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '/*hello  *': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\n]': {
-            index: 1,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\r]': {
-            index: 1,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\r\n]': {
-            index: 2,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '\n\r]': {
-            index: 2,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '//\r\n]': {
-            index: 4,
-            lineNumber: 2,
-            column: 1,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '//\n\r]': {
-            index: 4,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/a\\\n/': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        '//\r \n]': {
-            index: 5,
-            lineNumber: 3,
-            column: 1,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/*\r\n*/]': {
-            index: 6,
-            lineNumber: 2,
-            column: 3,
-            message: 'Error: Line 2: Unexpected token ]'
-        },
-
-        '/*\n\r*/]': {
-            index: 6,
-            lineNumber: 3,
-            column: 3,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '/*\r \n*/]': {
-            index: 7,
-            lineNumber: 3,
-            column: 3,
-            message: 'Error: Line 3: Unexpected token ]'
-        },
-
-        '\\\\': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\\u005c': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-
-        '\\x': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\\u0000': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\u200C = []': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '\u200D = []': {
-            index: 0,
-            lineNumber: 1,
-            column: 1,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        '"\\u': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected token ILLEGAL'
-        },
-
-        'try { } catch() {}': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Unexpected token )'
-        },
-
-        'return': {
-            index: 6,
-            lineNumber: 1,
-            column: 7,
-            message: 'Error: Line 1: Illegal return statement'
-        },
-
-        'break': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'continue': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'switch (x) { default: continue; }': {
-            index: 31,
-            lineNumber: 1,
-            column: 32,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'do { x } *': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Unexpected token *'
-        },
-
-        'while (true) { break x; }': {
-            index: 22,
-            lineNumber: 1,
-            column: 23,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'while (true) { continue x; }': {
-            index: 25,
-            lineNumber: 1,
-            column: 26,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { break x; }); }': {
-            index: 40,
-            lineNumber: 1,
-            column: 41,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { continue x; }); }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Undefined label \'x\''
-        },
-
-        'x: while (true) { (function () { break; }); }': {
-            index: 39,
-            lineNumber: 1,
-            column: 40,
-            message: 'Error: Line 1: Illegal break statement'
-        },
-
-        'x: while (true) { (function () { continue; }); }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Illegal continue statement'
-        },
-
-        'x: while (true) { x: while (true) { } }': {
-            index: 20,
-            lineNumber: 1,
-            column: 21,
-            message: 'Error: Line 1: Label \'x\' has already been declared'
-        },
-
-        '(function () { \'use strict\'; delete i; }())': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Delete of an unqualified identifier in strict mode.'
-        },
-
-        '(function () { \'use strict\'; with (i); }())': {
-            index: 29,
-            lineNumber: 1,
-            column: 30,
-            message: 'Error: Line 1: Strict mode code may not include a with statement'
-        },
-
-        'function hello() {\'use strict\'; ({ i: 42, i: 42 }) }': {
-            index: 47,
-            lineNumber: 1,
-            column: 48,
-            message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ hasOwnProperty: 42, hasOwnProperty: 42 }) }': {
-            index: 73,
-            lineNumber: 1,
-            column: 74,
-            message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; var eval = 10; }': {
-            index: 40,
-            lineNumber: 1,
-            column: 41,
-            message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; var arguments = 10; }': {
-            index: 45,
-            lineNumber: 1,
-            column: 46,
-            message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; try { } catch (eval) { } }': {
-            index: 51,
-            lineNumber: 1,
-            column: 52,
-            message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; try { } catch (arguments) { } }': {
-            index: 56,
-            lineNumber: 1,
-            column: 57,
-            message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval = 10; }': {
-            index: 32,
-            lineNumber: 1,
-            column: 33,
-            message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments = 10; }': {
-            index: 32,
-            lineNumber: 1,
-            column: 33,
-            message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ++eval; }': {
-            index: 38,
-            lineNumber: 1,
-            column: 39,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; --eval; }': {
-            index: 38,
-            lineNumber: 1,
-            column: 39,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ++arguments; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; --arguments; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval++; }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; eval--; }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments++; }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; arguments--; }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-        },
-
-        'function hello() {\'use strict\'; function eval() { } }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; function arguments() { } }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function eval() {\'use strict\'; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function arguments() {\'use strict\'; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; (function eval() { }()) }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; (function arguments() { }()) }': {
-            index: 42,
-            lineNumber: 1,
-            column: 43,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function eval() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function arguments() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ s: function eval() { } }); }': {
-            index: 47,
-            lineNumber: 1,
-            column: 48,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        '(function package() {\'use strict\'; })()': {
-            index: 10,
-            lineNumber: 1,
-            column: 11,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ i: 10, set s(eval) { } }); }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ set s(eval) { } }); }': {
-            index: 41,
-            lineNumber: 1,
-            column: 42,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() {\'use strict\'; ({ s: function s(eval) { } }); }': {
-            index: 49,
-            lineNumber: 1,
-            column: 50,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello(eval) {\'use strict\';}': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello(arguments) {\'use strict\';}': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() { \'use strict\'; function inner(eval) {} }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function hello() { \'use strict\'; function inner(arguments) {} }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        ' "\\1"; \'use strict\';': {
-            index: 1,
-            lineNumber: 1,
-            column: 2,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; "\\1"; }': {
-            index: 33,
-            lineNumber: 1,
-            column: 34,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; 021; }': {
-            index: 33,
-            lineNumber: 1,
-            column: 34,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; ({ "\\1": 42 }); }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { \'use strict\'; ({ 021: 42 }); }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "octal directive\\1"; "use strict"; }': {
-            index: 19,
-            lineNumber: 1,
-            column: 20,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "octal directive\\1"; "octal directive\\2"; "use strict"; }': {
-            index: 19,
-            lineNumber: 1,
-            column: 20,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "use strict"; function inner() { "octal directive\\1"; } }': {
-            index: 52,
-            lineNumber: 1,
-            column: 53,
-            message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-        },
-
-        'function hello() { "use strict"; var implements; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var interface; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var package; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var private; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var protected; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var public; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var static; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var yield; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello() { "use strict"; var let; }': {
-            index: 37,
-            lineNumber: 1,
-            column: 38,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function hello(static) { "use strict"; }': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function static() { "use strict"; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function eval(a) { "use strict"; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'function arguments(a) { "use strict"; }': {
-            index: 9,
-            lineNumber: 1,
-            column: 10,
-            message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-        },
-
-        'var yield': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token yield'
-        },
-
-        'var let': {
-            index: 4,
-            lineNumber: 1,
-            column: 5,
-            message: 'Error: Line 1: Unexpected token let'
-        },
-
-        '"use strict"; function static() { }': {
-            index: 23,
-            lineNumber: 1,
-            column: 24,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function a(t, t) { "use strict"; }': {
-            index: 14,
-            lineNumber: 1,
-            column: 15,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        'function a(eval) { "use strict"; }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        'function a(package) { "use strict"; }': {
-            index: 11,
-            lineNumber: 1,
-            column: 12,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        'function a() { "use strict"; function b(t, t) { }; }': {
-            index: 43,
-            lineNumber: 1,
-            column: 44,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '(function a(t, t) { "use strict"; })': {
-            index: 15,
-            lineNumber: 1,
-            column: 16,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        'function a() { "use strict"; (function b(t, t) { }); }': {
-            index: 44,
-            lineNumber: 1,
-            column: 45,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '(function a(eval) { "use strict"; })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-        },
-
-        '(function a(package) { "use strict"; })': {
-            index: 12,
-            lineNumber: 1,
-            column: 13,
-            message: 'Error: Line 1: Use of future reserved word in strict mode'
-        },
-
-        '__proto__: __proto__: 42;': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Label \'__proto__\' has already been declared'
-        },
-
-        '"use strict"; function t(__proto__, __proto__) { }': {
-            index: 36,
-            lineNumber: 1,
-            column: 37,
-            message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-        },
-
-        '"use strict"; x = { __proto__: 42, __proto__: 43 }': {
-            index: 48,
-            lineNumber: 1,
-            column: 49,
-            message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-        },
-
-        '"use strict"; x = { get __proto__() { }, __proto__: 43 }': {
-            index: 54,
-            lineNumber: 1,
-            column: 55,
-            message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-        },
-
-        'var': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'let': {
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'const': {
-            index: 5,
-            lineNumber: 1,
-            column: 6,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        '{ ;  ;  ': {
-            index: 8,
-            lineNumber: 1,
-            column: 9,
-            message: 'Error: Line 1: Unexpected end of input'
-        },
-
-        'function t() { ;  ;  ': {
-            index: 21,
-            lineNumber: 1,
-            column: 22,
-            message: 'Error: Line 1: Unexpected end of input'
-        }
-
-    },
-
-    'Tokenize': {
-        'tokenize(/42/)': [
-            {
-                "type": "Identifier",
-                "value": "tokenize",
-                "range": [
-                    0,
-                    8
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 8
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    8,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 8
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    9,
-                    13
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 13
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    13,
-                    14
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 14
-                    }
-                }
-            }
-        ],
-
-        'if (false) { /42/ }': [
-            {
-                "type": "Keyword",
-                "value": "if",
-                "range": [
-                    0,
-                    2
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 2
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    3,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 3
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            },
-            {
-                "type": "Boolean",
-                "value": "false",
-                "range": [
-                    4,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 4
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    9,
-                    10
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 10
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    13,
-                    17
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 17
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    18,
-                    19
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 18
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 19
-                    }
-                }
-            }
-        ],
-
-        'with (false) /42/': [
-            {
-                "type": "Keyword",
-                "value": "with",
-                "range": [
-                    0,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    5,
-                    6
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 5
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 6
-                    }
-                }
-            },
-            {
-                "type": "Boolean",
-                "value": "false",
-                "range": [
-                    6,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 6
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    13,
-                    17
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 17
-                    }
-                }
-            }
-        ],
-
-        '(false) /42/': [
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    0,
-                    1
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 1
-                    }
-                }
-            },
-            {
-                "type": "Boolean",
-                "value": "false",
-                "range": [
-                    1,
-                    6
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 1
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 6
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    6,
-                    7
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 6
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 7
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    8,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 8
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "Numeric",
-                "value": "42",
-                "range": [
-                    9,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            }
-        ],
-
-        'function f(){} /42/': [
-            {
-                "type": "Keyword",
-                "value": "function",
-                "range": [
-                    0,
-                    8
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 8
-                    }
-                }
-            },
-            {
-                "type": "Identifier",
-                "value": "f",
-                "range": [
-                    9,
-                    10
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 10
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    10,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 10
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    12,
-                    13
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 12
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 13
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    13,
-                    14
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 14
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    15,
-                    19
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 15
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 19
-                    }
-                }
-            }
-        ],
-
-        'function(){} /42': [
-            {
-                "type": "Keyword",
-                "value": "function",
-                "range": [
-                    0,
-                    8
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 8
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    8,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 8
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    9,
-                    10
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 10
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    10,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 10
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    13,
-                    14
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 14
-                    }
-                }
-            },
-            {
-                "type": "Numeric",
-                "value": "42",
-                "range": [
-                    14,
-                    16
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 14
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 16
-                    }
-                }
-            }
-        ],
-
-        '{} /42': [
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    0,
-                    1
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 1
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    1,
-                    2
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 1
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 2
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    3,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 3
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            },
-            {
-                "type": "Numeric",
-                "value": "42",
-                "range": [
-                    4,
-                    6
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 4
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 6
-                    }
-                }
-            }
-        ],
-
-        '[function(){} /42]': [
-            {
-                "type": "Punctuator",
-                "value": "[",
-                "range": [
-                    0,
-                    1
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 1
-                    }
-                }
-            },
-            {
-                "type": "Keyword",
-                "value": "function",
-                "range": [
-                    1,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 1
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    9,
-                    10
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 9
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 10
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    10,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 10
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    12,
-                    13
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 12
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 13
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    14,
-                    15
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 14
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 15
-                    }
-                }
-            },
-            {
-                "type": "Numeric",
-                "value": "42",
-                "range": [
-                    15,
-                    17
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 15
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 17
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "]",
-                "range": [
-                    17,
-                    18
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 17
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 18
-                    }
-                }
-            }
-        ],
-
-        ';function f(){} /42/': [
-            {
-                "type": "Punctuator",
-                "value": ";",
-                "range": [
-                    0,
-                    1
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 1
-                    }
-                }
-            },
-            {
-                "type": "Keyword",
-                "value": "function",
-                "range": [
-                    1,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 1
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            },
-            {
-                "type": "Identifier",
-                "value": "f",
-                "range": [
-                    10,
-                    11
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 10
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 11
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "(",
-                "range": [
-                    11,
-                    12
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 11
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 12
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": ")",
-                "range": [
-                    12,
-                    13
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 12
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 13
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "{",
-                "range": [
-                    13,
-                    14
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 13
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 14
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "}",
-                "range": [
-                    14,
-                    15
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 14
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 15
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    16,
-                    20
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 16
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 20
-                    }
-                }
-            }
-        ],
-
-        'void /42/': [
-            {
-                "type": "Keyword",
-                "value": "void",
-                "range": [
-                    0,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            },
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    5,
-                    9
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 5
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 9
-                    }
-                }
-            }
-        ],
-
-        '/42/': [
-            {
-                "type": "RegularExpression",
-                "value": "/42/",
-                "regex": {
-                    "pattern": "42",
-                    "flags": ""
-                },
-                "range": [
-                    0,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            }
-        ],
-
-        'foo[/42]': [
-            {
-                "type": "Identifier",
-                "value": "foo",
-                "range": [
-                    0,
-                    3
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 3
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "[",
-                "range": [
-                    3,
-                    4
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 3
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 4
-                    }
-                }
-            }
-        ],
-
-        '[a] / b': [
-            {
-                "type": "Punctuator",
-                "value": "[",
-                "range": [
-                    0,
-                    1
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 0
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 1
-                    }
-                }
-            },
-            {
-                "type": "Identifier",
-                "value": "a",
-                "range": [
-                    1,
-                    2
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 1
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 2
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "]",
-                "range": [
-                    2,
-                    3
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 2
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 3
-                    }
-                }
-            },
-            {
-                "type": "Punctuator",
-                "value": "/",
-                "range": [
-                    4,
-                    5
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 4
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 5
-                    }
-                }
-            },
-            {
-                "type": "Identifier",
-                "value": "b",
-                "range": [
-                    6,
-                    7
-                ],
-                "loc": {
-                    "start": {
-                        "line": 1,
-                        "column": 6
-                    },
-                    "end": {
-                        "line": 1,
-                        "column": 7
-                    }
-                }
-            }
-        ],
-
-        '': [],
-
-        '/42': {
-            tokenize: true,
-            index: 3,
-            lineNumber: 1,
-            column: 4,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'foo[/42': {
-            tokenize: true,
-            index: 7,
-            lineNumber: 1,
-            column: 8,
-            message: 'Error: Line 1: Invalid regular expression: missing /'
-        },
-
-        'this / 100;': [
-          {
-            "type": "Keyword",
-            "value": "this",
-            "range": [
-              0,
-              4
-            ],
-            "loc": {
-              "start": {
-                "line": 1,
-                "column": 0
-              },
-              "end": {
-                "line": 1,
-                "column": 4
-              }
-            }
-          },
-          {
-            "type": "Punctuator",
-            "value": "/",
-            "range": [
-              5,
-              6
-            ],
-            "loc": {
-              "start": {
-                "line": 1,
-                "column": 5
-              },
-              "end": {
-                "line": 1,
-                "column": 6
-              }
-            }
-          },
-          {
-            "type": "Numeric",
-            "value": "100",
-            "range": [
-              7,
-              10
-            ],
-            "loc": {
-              "start": {
-                "line": 1,
-                "column": 7
-              },
-              "end": {
-                "line": 1,
-                "column": 10
-              }
-            }
-          },
-          {
-            "type": "Punctuator",
-            "value": ";",
-            "range": [
-              10,
-              11
-            ],
-            "loc": {
-              "start": {
-                "line": 1,
-                "column": 10
-              },
-              "end": {
-                "line": 1,
-                "column": 11
-              }
-            }
-          }
-        ]
-    },
-
-    'API': {
-        'parse()': {
-            call: 'parse',
-            args: [],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'undefined'
-                    }
-                }]
-            }
-        },
-
-        'parse(null)': {
-            call: 'parse',
-            args: [null],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: null,
-                        raw: 'null'
-                    }
-                }]
-            }
-        },
-
-        'parse(42)': {
-            call: 'parse',
-            args: [42],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42'
-                    }
-                }]
-            }
-        },
-
-        'parse(true)': {
-            call: 'parse',
-            args: [true],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: true,
-                        raw: 'true'
-                    }
-                }]
-            }
-        },
-
-        'parse(undefined)': {
-            call: 'parse',
-            args: [void 0],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'undefined'
-                    }
-                }]
-            }
-        },
-
-        'parse(new String("test"))': {
-            call: 'parse',
-            args: [new String('test')],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Identifier',
-                        name: 'test'
-                    }
-                }]
-            }
-        },
-
-        'parse(new Number(42))': {
-            call: 'parse',
-            args: [new Number(42)],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: 42,
-                        raw: '42'
-                    }
-                }]
-            }
-        },
-
-        'parse(new Boolean(true))': {
-            call: 'parse',
-            args: [new Boolean(true)],
-            result: {
-                type: 'Program',
-                body: [{
-                    type: 'ExpressionStatement',
-                    expression: {
-                        type: 'Literal',
-                        value: true,
-                        raw: 'true'
-                    }
-                }]
-            }
-        },
-
-        'Syntax': {
-            property: 'Syntax',
-            result: {
-                AssignmentExpression: 'AssignmentExpression',
-                ArrayExpression: 'ArrayExpression',
-                ArrowFunctionExpression: 'ArrowFunctionExpression',
-                BlockStatement: 'BlockStatement',
-                BinaryExpression: 'BinaryExpression',
-                BreakStatement: 'BreakStatement',
-                CallExpression: 'CallExpression',
-                CatchClause: 'CatchClause',
-                ConditionalExpression: 'ConditionalExpression',
-                ContinueStatement: 'ContinueStatement',
-                DoWhileStatement: 'DoWhileStatement',
-                DebuggerStatement: 'DebuggerStatement',
-                EmptyStatement: 'EmptyStatement',
-                ExpressionStatement: 'ExpressionStatement',
-                ForStatement: 'ForStatement',
-                ForInStatement: 'ForInStatement',
-                FunctionDeclaration: 'FunctionDeclaration',
-                FunctionExpression: 'FunctionExpression',
-                Identifier: 'Identifier',
-                IfStatement: 'IfStatement',
-                Literal: 'Literal',
-                LabeledStatement: 'LabeledStatement',
-                LogicalExpression: 'LogicalExpression',
-                MemberExpression: 'MemberExpression',
-                NewExpression: 'NewExpression',
-                ObjectExpression: 'ObjectExpression',
-                Program: 'Program',
-                Property: 'Property',
-                ReturnStatement: 'ReturnStatement',
-                SequenceExpression: 'SequenceExpression',
-                SwitchStatement: 'SwitchStatement',
-                SwitchCase: 'SwitchCase',
-                ThisExpression: 'ThisExpression',
-                ThrowStatement: 'ThrowStatement',
-                TryStatement: 'TryStatement',
-                UnaryExpression: 'UnaryExpression',
-                UpdateExpression: 'UpdateExpression',
-                VariableDeclaration: 'VariableDeclaration',
-                VariableDeclarator: 'VariableDeclarator',
-                WhileStatement: 'WhileStatement',
-                WithStatement: 'WithStatement'
-            }
-        },
-
-        'tokenize()': {
-          call: 'tokenize',
-          args: [],
-          result: [{
-            type: 'Identifier',
-            value: 'undefined'
-          }]
-        },
-
-        'tokenize(null)': {
-          call: 'tokenize',
-          args: [null],
-          result: [{
-            type: 'Null',
-            value: 'null'
-          }]
-        },
-
-        'tokenize(42)': {
-          call: 'tokenize',
-          args: [42],
-          result: [{
-            type: 'Numeric',
-            value: '42'
-          }]
-        },
-
-        'tokenize(true)': {
-          call: 'tokenize',
-          args: [true],
-          result: [{
-            type: 'Boolean',
-            value: 'true'
-          }]
-        },
-
-        'tokenize(undefined)': {
-          call: 'tokenize',
-          args: [void 0],
-          result: [{
-            type: 'Identifier',
-            value: 'undefined'
-          }]
-        },
-
-        'tokenize(new String("test"))': {
-          call: 'tokenize',
-          args: [new String('test')],
-          result: [{
-            type: 'Identifier',
-            value: 'test'
-          }]
-        },
-
-        'tokenize(new Number(42))': {
-          call: 'tokenize',
-          args: [new Number(42)],
-          result: [{
-            type: 'Numeric',
-            value: '42'
-          }]
-        },
-
-        'tokenize(new Boolean(true))': {
-          call: 'tokenize',
-          args: [new Boolean(true)],
-          result: [{
-            type: 'Boolean',
-            value: 'true'
-          }]
-        }
-    },
-
-    'Tolerant parse': {
-        /** argument recovery */
-        'f(a b c);': {
-            range: [0, 9],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 9 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 9],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 9 }
-                },
-                type: "ExpressionStatement",
-                expression: {
-                    range: [0, 8],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 8 }
-                    },
-                    type: "CallExpression",
-                    callee: {
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        },
-                        type: "Identifier",
-                        name: "f"
-                    },
-                    "arguments": [{
-                        range: [2, 3],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 3 }
-                        },
-                        type: "Identifier",
-                        name: "a"
-                    }, {
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        },
-                        type: "Identifier",
-                        name: "b"
-                    }, {
-                        range: [6, 7],
-                        loc: {
-                            start: { line: 1, column: 6 },
-                            end: { line: 1, column: 7 }
-                        },
-                        type: "Identifier",
-                        name: "c"
-                    }]
-                }
-            }],
-            errors: [{
-                index: 4,
-                lineNumber: 1,
-                column: 5,
-                message: "Error: Line 1: Unexpected token b"
-            }, {
-                index: 6,
-                lineNumber: 1,
-                column: 7,
-                message: "Error: Line 1: Unexpected token c"
-            }]
-        },
-
-        /** argument recovery function */
-        'f(a function(){} c);': {
-            range: [0, 20],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 20 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 20],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 20 }
-                },
-                type: "ExpressionStatement",
-                expression: {
-                    range: [0, 19],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 19 }
-                    },
-                    type: "CallExpression",
-                    callee: {
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        },
-                        type: "Identifier",
-                        name: "f"
-                    },
-                    "arguments": [{
-                        range: [2, 3],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 3 }
-                        },
-                        type: "Identifier",
-                        name: "a"
-                    }, {
-                        range: [4, 16],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 16 }
-                        },
-                        type: "FunctionExpression",
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            range: [14, 16],
-                            loc: {
-                                start: { line: 1, column: 14 },
-                                end: { line: 1, column: 16 }
-                            },
-                            type: "BlockStatement",
-                            body: []
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false
-                    }, {
-                        range: [17, 18],
-                        loc: {
-                            start: { line: 1, column: 17 },
-                            end: { line: 1, column: 18 }
-                        },
-                        type: "Identifier",
-                        name: "c"
-                    }]
-                }
-            }],
-            errors: [{
-                index: 4,
-                lineNumber: 1,
-                column: 5,
-                message: "Error: Line 1: Unexpected token function"
-            }, {
-                index: 17,
-                lineNumber: 1,
-                column: 18,
-                message: "Error: Line 1: Unexpected token c"
-            }]
-        },
-
-        /** argument recovery object */
-        'f({} b c);': {
-            range: [0, 10],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 10 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 10],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 10 }
-                },
-                type: "ExpressionStatement",
-                expression: {
-                    range: [0, 9],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 9 }
-                    },
-                    type: "CallExpression",
-                    callee: {
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        },
-                        type: "Identifier",
-                        name: "f"
-                    },
-                    "arguments": [{
-                        range: [2, 4],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 4 }
-                        },
-                        type: "ObjectExpression",
-                        properties: []
-                    }, {
-                        range: [5, 6],
-                        loc: {
-                            start: { line: 1, column: 5 },
-                            end: { line: 1, column: 6 }
-                        },
-                        type: "Identifier",
-                        name: "b"
-                    }, {
-                        range: [7, 8],
-                        loc: {
-                            start: { line: 1, column: 7 },
-                            end: { line: 1, column: 8 }
-                        },
-                        type: "Identifier",
-                        name: "c"
-                    }]
-                }
-            }],
-            errors: [{
-                index: 5,
-                lineNumber: 1,
-                column: 6,
-                message: "Error: Line 1: Unexpected token b"
-            }, {
-                index: 7,
-                lineNumber: 1,
-                column: 8,
-                message: "Error: Line 1: Unexpected token c"
-            }]
-        },
-
-        /** single recovery - missing comma*/
-        'var o = {one: function() {} two:2};': {
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 35],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 35 }
-                },
-                type: "VariableDeclaration",
-                declarations: [{
-                    range: [4, 34],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 34 }
-                    },
-                    type: "VariableDeclarator",
-                    id: {
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        },
-                        type: "Identifier",
-                        name: "o"
-                    },
-                    init: {
-                        range: [8, 34],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 34 }
-                        },
-                        type: "ObjectExpression",
-                        properties: [{
-                            range: [9, 27],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 27 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [9, 12],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 12 }
-                                },
-                                type: "Identifier",
-                                name: "one"
-                            },
-                            value: {
-                                range: [14, 27],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 27 }
-                                },
-                                type: "FunctionExpression",
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    range: [25, 27],
-                                    loc: {
-                                        start: { line: 1, column: 25 },
-                                        end: { line: 1, column: 27 }
-                                    },
-                                    type: "BlockStatement",
-                                    body: []
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [28, 33],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 33 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [28, 31],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 31 }
-                                },
-                                type: "Identifier",
-                                name: "two"
-                            },
-                            value: {
-                                range: [32, 33],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 33 }
-                                },
-                                type: "Literal",
-                                value: 2,
-                                raw: "2"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }]
-                    }
-                }],
-                kind: "var"
-            }],
-            tokens: [{
-                type: "Keyword",
-                value: "var",
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }, {
-                type: "Identifier",
-                value: "o",
-                range: [4, 5],
-                loc: {
-                    start: { line: 1, column: 4 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "=",
-                range: [6, 7],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 7 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "{",
-                range: [8, 9],
-                loc: {
-                    start: { line: 1, column: 8 },
-                    end: { line: 1, column: 9 }
-                }
-            }, {
-                type: "Identifier",
-                value: "one",
-                range: [9, 12],
-                loc: {
-                    start: { line: 1, column: 9 },
-                    end: { line: 1, column: 12 }
-                }
-            }, {
-                type: "Punctuator",
-                value: ":",
-                range: [12, 13],
-                loc: {
-                    start: { line: 1, column: 12 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: "Keyword",
-                value: "function",
-                range: [14, 22],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 22 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "(",
-                range: [22, 23],
-                loc: {
-                    start: { line: 1, column: 22 },
-                    end: { line: 1, column: 23 }
-                }
-            }, {
-                type: "Punctuator",
-                value: ")",
-                range: [23, 24],
-                loc: {
-                    start: { line: 1, column: 23 },
-                    end: { line: 1, column: 24 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "{",
-                range: [25, 26],
-                loc: {
-                    start: { line: 1, column: 25 },
-                    end: { line: 1, column: 26 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "}",
-                range: [26, 27],
-                loc: {
-                    start: { line: 1, column: 26 },
-                    end: { line: 1, column: 27 }
-                }
-            }, {
-                type: "Identifier",
-                value: "two",
-                range: [28, 31],
-                loc: {
-                    start: { line: 1, column: 28 },
-                    end: { line: 1, column: 31 }
-                }
-            }, {
-                type: "Punctuator",
-                value: ":",
-                range: [31, 32],
-                loc: {
-                    start: { line: 1, column: 31 },
-                    end: { line: 1, column: 32 }
-                }
-            }, {
-                type: "Numeric",
-                value: "2",
-                range: [32, 33],
-                loc: {
-                    start: { line: 1, column: 32 },
-                    end: { line: 1, column: 33 }
-                }
-            }, {
-                type: "Punctuator",
-                value: "}",
-                range: [33, 34],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 34 }
-                }
-            }, {
-                type: "Punctuator",
-                value: ";",
-                range: [34, 35],
-                loc: {
-                    start: { line: 1, column: 34 },
-                    end: { line: 1, column: 35 }
-                }
-            }],
-            errors: [{
-                index: 28,
-                lineNumber: 1,
-                column: 29,
-                message: "Error: Line 1: Unexpected token two"
-            }]
-        },
-
-        /** successive recovery - missing comma*/
-        'var o = {one: function() {} two:2 three: 3};': {
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 44 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 44],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 44 }
-                },
-                type: "VariableDeclaration",
-                declarations: [{
-                    range: [4, 43],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 43 }
-                    },
-                    type: "VariableDeclarator",
-                    id: {
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        },
-                        type: "Identifier",
-                        name: "o"
-                    },
-                    init: {
-                        range: [8, 43],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 43 }
-                        },
-                        type: "ObjectExpression",
-                        properties: [{
-                            range: [9, 27],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 27 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [9, 12],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 12 }
-                                },
-                                type: "Identifier",
-                                name: "one"
-                            },
-                            value: {
-                                range: [14, 27],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 27 }
-                                },
-                                type: "FunctionExpression",
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    range: [25, 27],
-                                    loc: {
-                                        start: { line: 1, column: 25 },
-                                        end: { line: 1, column: 27 }
-                                    },
-                                    type: "BlockStatement",
-                                    body: []
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [28, 33],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 33 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [28, 31],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 31 }
-                                },
-                                type: "Identifier",
-                                name: "two"
-                            },
-                            value: {
-                                range: [32, 33],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 33 }
-                                },
-                                type: "Literal",
-                                value: 2,
-                                raw: "2"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [34, 42],
-                            loc: {
-                                start: { line: 1, column: 34 },
-                                end: { line: 1, column: 42 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [34, 39],
-                                loc: {
-                                    start: { line: 1, column: 34 },
-                                    end: { line: 1, column: 39 }
-                                },
-                                type: "Identifier",
-                                name: "three"
-                            },
-                            value: {
-                                range: [41, 42],
-                                loc: {
-                                    start: { line: 1, column: 41 },
-                                    end: { line: 1, column: 42 }
-                                },
-                                type: "Literal",
-                                value: 3,
-                                raw: "3"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }]
-                    }
-                }],
-                kind: "var"
-            }],
-            errors: [{
-                index: 28,
-                lineNumber: 1,
-                column: 29,
-                message: "Error: Line 1: Unexpected token two"
-            }, {
-                index: 34,
-                lineNumber: 1,
-                column: 35,
-                message: "Error: Line 1: Unexpected token three"
-            }]
-        },
-
-        /** mixed recovery - missing comma */
-        'var o = {one: function() {} two:2, three: 3 "four":4};': {
-            range: [0, 54],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 54 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 54],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 54 }
-                },
-                type: "VariableDeclaration",
-                declarations: [{
-                    range: [4, 53],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 53 }
-                    },
-                    type: "VariableDeclarator",
-                    id: {
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        },
-                        type: "Identifier",
-                        name: "o"
-                    },
-                    init: {
-                        range: [8, 53],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 53 }
-                        },
-                        type: "ObjectExpression",
-                        properties: [{
-                            range: [9, 27],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 27 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [9, 12],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 12 }
-                                },
-                                type: "Identifier",
-                                name: "one"
-                            },
-                            value: {
-                                range: [14, 27],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 27 }
-                                },
-                                type: "FunctionExpression",
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    range: [25, 27],
-                                    loc: {
-                                        start: { line: 1, column: 25 },
-                                        end: { line: 1, column: 27 }
-                                    },
-                                    type: "BlockStatement",
-                                    body: []
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [28, 33],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 33 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [28, 31],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 31 }
-                                },
-                                type: "Identifier",
-                                name: "two"
-                            },
-                            value: {
-                                range: [32, 33],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 33 }
-                                },
-                                type: "Literal",
-                                value: 2,
-                                raw: "2"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [35, 43],
-                            loc: {
-                                start: { line: 1, column: 35 },
-                                end: { line: 1, column: 43 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [35, 40],
-                                loc: {
-                                    start: { line: 1, column: 35 },
-                                    end: { line: 1, column: 40 }
-                                },
-                                type: "Identifier",
-                                name: "three"
-                            },
-                            value: {
-                                range: [42, 43],
-                                loc: {
-                                    start: { line: 1, column: 42 },
-                                    end: { line: 1, column: 43 }
-                                },
-                                type: "Literal",
-                                value: 3,
-                                raw: "3"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [44, 52],
-                            loc: {
-                                start: { line: 1, column: 44 },
-                                end: { line: 1, column: 52 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [44, 50],
-                                loc: {
-                                    start: { line: 1, column: 44 },
-                                    end: { line: 1, column: 50 }
-                                },
-                                type: "Literal",
-                                value: "four",
-                                raw: "\"four\""
-                            },
-                            value: {
-                                range: [51, 52],
-                                loc: {
-                                    start: { line: 1, column: 51 },
-                                    end: { line: 1, column: 52 }
-                                },
-                                type: "Literal",
-                                value: 4,
-                                raw: "4"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }]
-                    }
-                }],
-                kind: "var"
-            }],
-            errors: [{
-                index: 28,
-                lineNumber: 1,
-                column: 29,
-                message: "Error: Line 1: Unexpected token two"
-            }, {
-                index: 44,
-                lineNumber: 1,
-                column: 45,
-                message: "Error: Line 1: Unexpected token four"
-            }]
-        },
-
-        /** nested recovery - missing comma */
-        'var o = {one: function() {} two:2, three: {aa: "a" bb: "b"} four: 4};': {
-            range: [0, 69],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 69 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 69],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 69 }
-                },
-                type: "VariableDeclaration",
-                declarations: [{
-                    range: [4, 68],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 68 }
-                    },
-                    type: "VariableDeclarator",
-                    id: {
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        },
-                        type: "Identifier",
-                        name: "o"
-                    },
-                    init: {
-                        range: [8, 68],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 68 }
-                        },
-                        type: "ObjectExpression",
-                        properties: [{
-                            range: [9, 27],
-                            loc: {
-                                start: { line: 1, column: 9 },
-                                end: { line: 1, column: 27 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [9, 12],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 12 }
-                                },
-                                type: "Identifier",
-                                name: "one"
-                            },
-                            value: {
-                                range: [14, 27],
-                                loc: {
-                                    start: { line: 1, column: 14 },
-                                    end: { line: 1, column: 27 }
-                                },
-                                type: "FunctionExpression",
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    range: [25, 27],
-                                    loc: {
-                                        start: { line: 1, column: 25 },
-                                        end: { line: 1, column: 27 }
-                                    },
-                                    type: "BlockStatement",
-                                    body: []
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [28, 33],
-                            loc: {
-                                start: { line: 1, column: 28 },
-                                end: { line: 1, column: 33 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [28, 31],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 31 }
-                                },
-                                type: "Identifier",
-                                name: "two"
-                            },
-                            value: {
-                                range: [32, 33],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 33 }
-                                },
-                                type: "Literal",
-                                value: 2,
-                                raw: "2"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [35, 59],
-                            loc: {
-                                start: { line: 1, column: 35 },
-                                end: { line: 1, column: 59 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [35, 40],
-                                loc: {
-                                    start: { line: 1, column: 35 },
-                                    end: { line: 1, column: 40 }
-                                },
-                                type: "Identifier",
-                                name: "three"
-                            },
-                            value: {
-                                range: [42, 59],
-                                loc: {
-                                    start: { line: 1, column: 42 },
-                                    end: { line: 1, column: 59 }
-                                },
-                                type: "ObjectExpression",
-                                properties: [{
-                                    range: [43, 50],
-                                    loc: {
-                                        start: { line: 1, column: 43 },
-                                        end: { line: 1, column: 50 }
-                                    },
-                                    type: "Property",
-                                    key: {
-                                        range: [43, 45],
-                                        loc: {
-                                            start: { line: 1, column: 43 },
-                                            end: { line: 1, column: 45 }
-                                        },
-                                        type: "Identifier",
-                                        name: "aa"
-                                    },
-                                    value: {
-                                        range: [47, 50],
-                                        loc: {
-                                            start: { line: 1, column: 47 },
-                                            end: { line: 1, column: 50 }
-                                        },
-                                        type: "Literal",
-                                        value: "a",
-                                        raw: "\"a\""
-                                    },
-                                    kind: "init",
-                                    method: false,
-                                    shorthand: false
-                                }, {
-                                    range: [51, 58],
-                                    loc: {
-                                        start: { line: 1, column: 51 },
-                                        end: { line: 1, column: 58 }
-                                    },
-                                    type: "Property",
-                                    key: {
-                                        range: [51, 53],
-                                        loc: {
-                                            start: { line: 1, column: 51 },
-                                            end: { line: 1, column: 53 }
-                                        },
-                                        type: "Identifier",
-                                        name: "bb"
-                                    },
-                                    value: {
-                                        range: [55, 58],
-                                        loc: {
-                                            start: { line: 1, column: 55 },
-                                            end: { line: 1, column: 58 }
-                                        },
-                                        type: "Literal",
-                                        value: "b",
-                                        raw: "\"b\""
-                                    },
-                                    kind: "init",
-                                    method: false,
-                                    shorthand: false
-                                }]
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }, {
-                            range: [60, 67],
-                            loc: {
-                                start: { line: 1, column: 60 },
-                                end: { line: 1, column: 67 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [60, 64],
-                                loc: {
-                                    start: { line: 1, column: 60 },
-                                    end: { line: 1, column: 64 }
-                                },
-                                type: "Identifier",
-                                name: "four"
-                            },
-                            value: {
-                                range: [66, 67],
-                                loc: {
-                                    start: { line: 1, column: 66 },
-                                    end: { line: 1, column: 67 }
-                                },
-                                type: "Literal",
-                                value: 4,
-                                raw: "4"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }]
-                    }
-                }],
-                kind: "var"
-            }],
-            errors: [{
-                index: 28,
-                lineNumber: 1,
-                column: 29,
-                message: "Error: Line 1: Unexpected token two"
-            }, {
-                index: 51,
-                lineNumber: 1,
-                column: 52,
-                message: "Error: Line 1: Unexpected token bb"
-            }, {
-                index: 60,
-                lineNumber: 1,
-                column: 61,
-                message: "Error: Line 1: Unexpected token four"
-            }]
-        },
-
-        'x = { y: z; }': {
-            range: [0, 13],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 13 }
-            },
-            type: "Program",
-            body: [{
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                },
-                type: "ExpressionStatement",
-                expression: {
-                    range: [0, 13],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 13 }
-                    },
-                    type: "AssignmentExpression",
-                    operator: "=",
-                    left: {
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        },
-                        type: "Identifier",
-                        name: "x"
-                    },
-                    right: {
-                        range: [4, 13],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 13 }
-                        },
-                        type: "ObjectExpression",
-                        properties: [{
-                            range: [6, 10],
-                            loc: {
-                                start: { line: 1, column: 6 },
-                                end: { line: 1, column: 10 }
-                            },
-                            type: "Property",
-                            key: {
-                                range: [6, 7],
-                                loc: {
-                                    start: { line: 1, column: 6 },
-                                    end: { line: 1, column: 7 }
-                                },
-                                type: "Identifier",
-                                name: "y"
-                            },
-                            value: {
-                                range: [9, 10],
-                                loc: {
-                                    start: { line: 1, column: 9 },
-                                    end: { line: 1, column: 10 }
-                                },
-                                type: "Identifier",
-                                name: "z"
-                            },
-                            kind: "init",
-                            method: false,
-                            shorthand: false
-                        }]
-                    }
-                }
-            }],
-            errors: [{
-                index: 10,
-                lineNumber: 1,
-                column: 11,
-                message: "Error: Line 1: Unexpected token ;"
-            }]
-        },
-
-        'return': {
-            type: 'Program',
-            body: [{
-                type: 'ReturnStatement',
-                'argument': null,
-                range: [0, 6],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 6 }
-                }
-            }],
-            range: [0, 6],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 6 }
-            },
-            errors: [{
-                index: 6,
-                lineNumber: 1,
-                column: 7,
-                message: 'Error: Line 1: Illegal return statement'
-            }]
-        },
-
-        '(function () { \'use strict\'; with (i); }())': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 'use strict',
-                                    raw: '\'use strict\'',
-                                    range: [15, 27],
-                                    loc: {
-                                        start: { line: 1, column: 15 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                range: [15, 28],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            }, {
-                                type: 'WithStatement',
-                                object: {
-                                    type: 'Identifier',
-                                    name: 'i',
-                                    range: [35, 36],
-                                    loc: {
-                                        start: { line: 1, column: 35 },
-                                        end: { line: 1, column: 36 }
-                                    }
-                                },
-                                body: {
-                                    type: 'EmptyStatement',
-                                    range: [37, 38],
-                                    loc: {
-                                        start: { line: 1, column: 37 },
-                                        end: { line: 1, column: 38 }
-                                    }
-                                },
-                                range: [29, 38],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 38 }
-                                }
-                            }],
-                            range: [13, 40],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 40 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [1, 40],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 40 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [1, 42],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 42 }
-                    }
-                },
-                range: [0, 43],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 43 }
-                }
-            }],
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 43 }
-            },
-            errors: [{
-                index: 29,
-                lineNumber: 1,
-                column: 30,
-                message: 'Error: Line 1: Strict mode code may not include a with statement'
-            }]
-        },
-
-        '(function () { \'use strict\'; 021 }())': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'CallExpression',
-                    callee: {
-                        type: 'FunctionExpression',
-                        id: null,
-                        params: [],
-                        defaults: [],
-                        body: {
-                            type: 'BlockStatement',
-                            body: [{
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 'use strict',
-                                    raw: '\'use strict\'',
-                                    range: [15, 27],
-                                    loc: {
-                                        start: { line: 1, column: 15 },
-                                        end: { line: 1, column: 27 }
-                                    }
-                                },
-                                range: [15, 28],
-                                loc: {
-                                    start: { line: 1, column: 15 },
-                                    end: { line: 1, column: 28 }
-                                }
-                            }, {
-                                type: 'ExpressionStatement',
-                                expression: {
-                                    type: 'Literal',
-                                    value: 17,
-                                    raw: "021",
-                                    range: [29, 32],
-                                    loc: {
-                                        start: { line: 1, column: 29 },
-                                        end: { line: 1, column: 32 }
-                                    }
-                                },
-                                range: [29, 33],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 33 }
-                                }
-                            }],
-                            range: [13, 34],
-                            loc: {
-                                start: { line: 1, column: 13 },
-                                end: { line: 1, column: 34 }
-                            }
-                        },
-                        rest: null,
-                        generator: false,
-                        expression: false,
-                        range: [1, 34],
-                        loc: {
-                            start: { line: 1, column: 1 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    'arguments': [],
-                    range: [1, 36],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [0, 37],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 37 }
-                }
-            }],
-            range: [0, 37],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 37 }
-            },
-            errors: [{
-                index: 29,
-                lineNumber: 1,
-                column: 30,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; delete x': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UnaryExpression',
-                    operator: 'delete',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 22],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [14, 22],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 22 }
-                }
-            }],
-            range: [0, 22],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 22 }
-            },
-            errors: [{
-                index: 22,
-                lineNumber: 1,
-                column: 23,
-                message: 'Error: Line 1: Delete of an unqualified identifier in strict mode.'
-            }]
-        },
-
-        '"use strict"; try {} catch (eval) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'TryStatement',
-                block: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 20],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                guardedHandlers: [],
-                handlers: [{
-                    type: 'CatchClause',
-                    param: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [28, 32],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 32 }
-                        }
-                    },
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [34, 36],
-                        loc: {
-                            start: { line: 1, column: 34 },
-                            end: { line: 1, column: 36 }
-                        }
-                    },
-                    range: [21, 36],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 36 }
-                    }
-                }],
-                finalizer: null,
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 32,
-                lineNumber: 1,
-                column: 33,
-                message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; try {} catch (arguments) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'TryStatement',
-                block: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [18, 20],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                guardedHandlers: [],
-                handlers: [{
-                    type: 'CatchClause',
-                    param: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [28, 37],
-                        loc: {
-                            start: { line: 1, column: 28 },
-                            end: { line: 1, column: 37 }
-                        }
-                    },
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [39, 41],
-                        loc: {
-                            start: { line: 1, column: 39 },
-                            end: { line: 1, column: 41 }
-                        }
-                    },
-                    range: [21, 41],
-                    loc: {
-                        start: { line: 1, column: 21 },
-                        end: { line: 1, column: 41 }
-                    }
-                }],
-                finalizer: null,
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 37,
-                lineNumber: 1,
-                column: 38,
-                message: 'Error: Line 1: Catch variable may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; var eval;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [18, 22],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    init: null,
-                    range: [18, 22],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 22 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 23],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            },
-            errors: [{
-                index: 22,
-                lineNumber: 1,
-                column: 23,
-                message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; var arguments;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [18, 27],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    init: null,
-                    range: [18, 27],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 27 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 28],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            },
-            errors: [{
-                index: 27,
-                lineNumber: 1,
-                column: 28,
-                message: 'Error: Line 1: Variable name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; eval = 0;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [14, 18],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [21, 22],
-                        loc: {
-                            start: { line: 1, column: 21 },
-                            end: { line: 1, column: 22 }
-                        }
-                    },
-                    range: [14, 22],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 22 }
-                    }
-                },
-                range: [14, 23],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            },
-            errors: [{
-                index: 14,
-                lineNumber: 1,
-                column: 15,
-                message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; eval++;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [14, 18],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    prefix: false,
-                    range: [14, 20],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [14, 21],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            errors: [{
-                index: 18,
-                lineNumber: 1,
-                column: 19,
-                message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; --eval;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [16, 20],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 20 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 20],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 20 }
-                    }
-                },
-                range: [14, 21],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 21 }
-                }
-            }],
-            range: [0, 21],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 21 }
-            },
-            errors: [{
-                index: 20,
-                lineNumber: 1,
-                column: 21,
-                message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; arguments = 0;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [14, 23],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 0,
-                        raw: '0',
-                        range: [26, 27],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 27 }
-                        }
-                    },
-                    range: [14, 27],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                range: [14, 28],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 28 }
-                }
-            }],
-            range: [0, 28],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 28 }
-            },
-            errors: [{
-                index: 14,
-                lineNumber: 1,
-                column: 15,
-                message: 'Error: Line 1: Assignment to eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; arguments--;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [14, 23],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    prefix: false,
-                    range: [14, 25],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [14, 26],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 26 }
-                }
-            }],
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Postfix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-        '"use strict"; ++arguments;': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [16, 25],
-                        loc: {
-                            start: { line: 1, column: 16 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    prefix: true,
-                    range: [14, 25],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 25 }
-                    }
-                },
-                range: [14, 26],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 26 }
-                }
-            }],
-            range: [0, 26],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 26 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Prefix increment/decrement may not have eval or arguments operand in strict mode'
-            }]
-        },
-
-
-        '"use strict";x={y:1,y:1}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [13, 14],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 14 }
-                        }
-                    },
-                    right: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'y',
-                                range: [16, 17],
-                                loc: {
-                                    start: { line: 1, column: 16 },
-                                    end: { line: 1, column: 17 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [18, 19],
-                                loc: {
-                                    start: { line: 1, column: 18 },
-                                    end: { line: 1, column: 19 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [16, 19],
-                            loc: {
-                                start: { line: 1, column: 16 },
-                                end: { line: 1, column: 19 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'y',
-                                range: [20, 21],
-                                loc: {
-                                    start: { line: 1, column: 20 },
-                                    end: { line: 1, column: 21 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 1,
-                                raw: '1',
-                                range: [22, 23],
-                                loc: {
-                                    start: { line: 1, column: 22 },
-                                    end: { line: 1, column: 23 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [20, 23],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 23 }
-                            }
-                        }],
-                        range: [15, 24],
-                        loc: {
-                            start: { line: 1, column: 15 },
-                            end: { line: 1, column: 24 }
-                        }
-                    },
-                    range: [13, 24],
-                    loc: {
-                        start: { line: 1, column: 13 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                range: [13, 24],
-                loc: {
-                    start: { line: 1, column: 13 },
-                    end: { line: 1, column: 24 }
-                }
-            }],
-            range: [0, 24],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 24 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Duplicate data property in object literal not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function eval() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [23, 27],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 27 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [30, 32],
-                    loc: {
-                        start: { line: 1, column: 30 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 32],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 32 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [32, 33],
-                loc: {
-                    start: { line: 1, column: 32 },
-                    end: { line: 1, column: 33 }
-                }
-            }],
-            range: [0, 33],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 33 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; function arguments() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [23, 32],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [35, 37],
-                    loc: {
-                        start: { line: 1, column: 35 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 37],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 37 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [37, 38],
-                loc: {
-                    start: { line: 1, column: 37 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; function interface() {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'interface',
-                    range: [23, 32],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 32 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [35, 37],
-                    loc: {
-                        start: { line: 1, column: 35 },
-                        end: { line: 1, column: 37 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 37],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 37 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [37, 38],
-                loc: {
-                    start: { line: 1, column: 37 },
-                    end: { line: 1, column: 38 }
-                }
-            }],
-            range: [0, 38],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 38 }
-            },
-            errors: [{
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: 'Error: Line 1: Use of future reserved word in strict mode'
-            }]
-        },
-
-        '"use strict"; (function eval() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [24, 28],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 28 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [31, 33],
-                        loc: {
-                            start: { line: 1, column: 31 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 33],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                range: [14, 35],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 35 }
-                }
-            }],
-            range: [0, 35],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 35 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; (function arguments() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [24, 33],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [36, 38],
-                        loc: {
-                            start: { line: 1, column: 36 },
-                            end: { line: 1, column: 38 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 38],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [14, 40],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 40 }
-                }
-            }],
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 40 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Function name may not be eval or arguments in strict mode'
-            }]
-        },
-
-        '"use strict"; (function interface() {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'interface',
-                        range: [24, 33],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 33 }
-                        }
-                    },
-                    params: [],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [36, 38],
-                        loc: {
-                            start: { line: 1, column: 36 },
-                            end: { line: 1, column: 38 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 38],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                range: [14, 40],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 40 }
-                }
-            }],
-            range: [0, 40],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 40 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Use of future reserved word in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(eval) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'eval',
-                    range: [25, 29],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 29 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [31, 33],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 33 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 33],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 33 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [33, 34],
-                loc: {
-                    start: { line: 1, column: 33 },
-                    end: { line: 1, column: 34 }
-                }
-            }],
-            range: [0, 34],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 34 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(arguments) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'arguments',
-                    range: [25, 34],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 34 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [36, 38],
-                    loc: {
-                        start: { line: 1, column: 36 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 38],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 38 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [38, 39],
-                loc: {
-                    start: { line: 1, column: 38 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 39],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 39 }
-            },
-            errors: [{
-                index: 25,
-                lineNumber: 1,
-                column: 26,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; function f(foo,  foo) {};': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'f',
-                    range: [23, 24],
-                    loc: {
-                        start: { line: 1, column: 23 },
-                        end: { line: 1, column: 24 }
-                    }
-                },
-                params: [{
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [25, 28],
-                    loc: {
-                        start: { line: 1, column: 25 },
-                        end: { line: 1, column: 28 }
-                    }
-                }, {
-                    type: 'Identifier',
-                    name: 'foo',
-                    range: [31, 34],
-                    loc: {
-                        start: { line: 1, column: 31 },
-                        end: { line: 1, column: 34 }
-                    }
-                }],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [36, 38],
-                    loc: {
-                        start: { line: 1, column: 36 },
-                        end: { line: 1, column: 38 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [14, 38],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 38 }
-                }
-            }, {
-                type: 'EmptyStatement',
-                range: [38, 39],
-                loc: {
-                    start: { line: 1, column: 38 },
-                    end: { line: 1, column: 39 }
-                }
-            }],
-            range: [0, 39],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 39 }
-            },
-            errors: [{
-                index: 31,
-                lineNumber: 1,
-                column: 32,
-                message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-            }]
-        },
-
-        '"use strict"; (function f(eval) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'eval',
-                        range: [26, 30],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 30 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [32, 34],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 34 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 34],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 34 }
-                    }
-                },
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-
-        '"use strict"; (function f(arguments) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'arguments',
-                        range: [26, 35],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 35 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [37, 39],
-                        loc: {
-                            start: { line: 1, column: 37 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 39],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        '"use strict"; (function f(foo,  foo) {});': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'FunctionExpression',
-                    id: {
-                        type: 'Identifier',
-                        name: 'f',
-                        range: [24, 25],
-                        loc: {
-                            start: { line: 1, column: 24 },
-                            end: { line: 1, column: 25 }
-                        }
-                    },
-                    params: [{
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [26, 29],
-                        loc: {
-                            start: { line: 1, column: 26 },
-                            end: { line: 1, column: 29 }
-                        }
-                    }, {
-                        type: 'Identifier',
-                        name: 'foo',
-                        range: [32, 35],
-                        loc: {
-                            start: { line: 1, column: 32 },
-                            end: { line: 1, column: 35 }
-                        }
-                    }],
-                    defaults: [],
-                    body: {
-                        type: 'BlockStatement',
-                        body: [],
-                        range: [37, 39],
-                        loc: {
-                            start: { line: 1, column: 37 },
-                            end: { line: 1, column: 39 }
-                        }
-                    },
-                    rest: null,
-                    generator: false,
-                    expression: false,
-                    range: [15, 39],
-                    loc: {
-                        start: { line: 1, column: 15 },
-                        end: { line: 1, column: 39 }
-                    }
-                },
-                range: [14, 41],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 41 }
-                }
-            }],
-            range: [0, 41],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 41 }
-            },
-            errors: [{
-                index: 32,
-                lineNumber: 1,
-                column: 33,
-                message: 'Error: Line 1: Strict mode function may not have duplicate parameter names'
-            }]
-        },
-
-        '"use strict"; x = { set f(eval) {} }' : {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [14, 15],
-                        loc: {
-                            start: { line: 1, column: 14 },
-                            end: { line: 1, column: 15 }
-                        }
-                    },
-                    right: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'f',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            value : {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [{
-                                    type: 'Identifier',
-                                    name: 'eval',
-                                    range: [26, 30],
-                                    loc: {
-                                        start: { line: 1, column: 26 },
-                                        end: { line: 1, column: 30 }
-                                    }
-                                }],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [32, 34],
-                                    loc: {
-                                        start: { line: 1, column: 32 },
-                                        end: { line: 1, column: 34 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [32, 34],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            kind: 'set',
-                            method: false,
-                            shorthand: false,
-                            range: [20, 34],
-                            loc: {
-                                start: { line: 1, column: 20 },
-                                end: { line: 1, column: 34 }
-                            }
-                        }],
-                        range: [18, 36],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 36 }
-                        }
-                    },
-                    range: [14, 36],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 36 }
-                    }
-                },
-                range: [14, 36],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 36 }
-                }
-            }],
-            range: [0, 36],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 36 }
-            },
-            errors: [{
-                index: 26,
-                lineNumber: 1,
-                column: 27,
-                message: 'Error: Line 1: Parameter name eval or arguments is not allowed in strict mode'
-            }]
-        },
-
-        'function hello() { "octal directive\\1"; "use strict"; }': {
-            type: 'Program',
-            body: [{
-                type: 'FunctionDeclaration',
-                id: {
-                    type: 'Identifier',
-                    name: 'hello',
-                    range: [9, 14],
-                    loc: {
-                        start: { line: 1, column: 9 },
-                        end: { line: 1, column: 14 }
-                    }
-                },
-                params: [],
-                defaults: [],
-                body: {
-                    type: 'BlockStatement',
-                    body: [{
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 'octal directive\u0001',
-                            raw: '"octal directive\\1"',
-                            range: [19, 38],
-                            loc: {
-                                start: { line: 1, column: 19 },
-                                end: { line: 1, column: 38 }
-                            }
-                        },
-                        range: [19, 39],
-                        loc: {
-                            start: { line: 1, column: 19 },
-                            end: { line: 1, column: 39 }
-                        }
-                    }, {
-                        type: 'ExpressionStatement',
-                        expression: {
-                            type: 'Literal',
-                            value: 'use strict',
-                            raw: '"use strict"',
-                            range: [40, 52],
-                            loc: {
-                                start: { line: 1, column: 40 },
-                                end: { line: 1, column: 52 }
-                            }
-                        },
-                        range: [40, 53],
-                        loc: {
-                            start: { line: 1, column: 40 },
-                            end: { line: 1, column: 53 }
-                        }
-                    }],
-                    range: [17, 55],
-                    loc: {
-                        start: { line: 1, column: 17 },
-                        end: { line: 1, column: 55 }
-                    }
-                },
-                rest: null,
-                generator: false,
-                expression: false,
-                range: [0, 55],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 55 }
-                }
-            }],
-            range: [0, 55],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 55 }
-            },
-            errors: [{
-                index: 19,
-                lineNumber: 1,
-                column: 20,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"\\1"; \'use strict\';': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: '\u0001',
-                    raw: '"\\1"',
-                    range: [0, 4],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 4 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            }, {
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '\'use strict\'',
-                    range: [6, 18],
-                    loc: {
-                        start: { line: 1, column: 6 },
-                        end: { line: 1, column: 18 }
-                    }
-                },
-                range: [6, 19],
-                loc: {
-                    start: { line: 1, column: 6 },
-                    end: { line: 1, column: 19 }
-                }
-            }],
-            range: [0, 19],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 19 }
-            },
-            errors: [{
-                index: 0,
-                lineNumber: 1,
-                column: 1,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; var x = { 014: 3}': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Literal',
-                                value: 12,
-                                raw: '014',
-                                range: [24, 27],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 27 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 3,
-                                raw: '3',
-                                range: [29, 30],
-                                loc: {
-                                    start: { line: 1, column: 29 },
-                                    end: { line: 1, column: 30 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [24, 30],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 30 }
-                            }
-                        }],
-                        range: [22, 31],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 31 }
-                        }
-                    },
-                    range: [18, 31],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 31 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 31],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 31 }
-                }
-            }],
-            range: [0, 31],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 31 }
-            },
-            errors: [{
-                index: 24,
-                lineNumber: 1,
-                column: 25,
-                message: 'Error: Line 1: Octal literals are not allowed in strict mode.'
-            }]
-        },
-
-        '"use strict"; var x = { get i() {}, get i() {} }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [28, 29],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [32, 34],
-                                    loc: {
-                                        start: { line: 1, column: 32 },
-                                        end: { line: 1, column: 34 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [32, 34],
-                                loc: {
-                                    start: { line: 1, column: 32 },
-                                    end: { line: 1, column: 34 }
-                                }
-                            },
-                            kind: 'get',
-                            method: false,
-                            shorthand: false,
-                            range: [24, 34],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 34 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [40, 41],
-                                loc: {
-                                    start: { line: 1, column: 40 },
-                                    end: { line: 1, column: 41 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [44, 46],
-                                    loc: {
-                                        start: { line: 1, column: 44 },
-                                        end: { line: 1, column: 46 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [44, 46],
-                                loc: {
-                                    start: { line: 1, column: 44 },
-                                    end: { line: 1, column: 46 }
-                                }
-                            },
-                            kind: 'get',
-                            method: false,
-                            shorthand: false,
-                            range: [36, 46],
-                            loc: {
-                                start: { line: 1, column: 36 },
-                                end: { line: 1, column: 46 }
-                            }
-                        }],
-                        range: [22, 48],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 48 }
-                        }
-                    },
-                    range: [18, 48],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 48 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 48],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 48 }
-                }
-            }],
-            range: [0, 48],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 48 }
-            },
-            errors: [{
-                index: 46,
-                lineNumber: 1,
-                column: 47,
-                message: 'Error: Line 1: Object literal may not have multiple get/set accessors with the same name'
-            }]
-        },
-
-        '"use strict"; var x = { i: 42, get i() {} }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [24, 25],
-                                loc: {
-                                    start: { line: 1, column: 24 },
-                                    end: { line: 1, column: 25 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [27, 29],
-                                loc: {
-                                    start: { line: 1, column: 27 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [24, 29],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 29 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [35, 36],
-                                loc: {
-                                    start: { line: 1, column: 35 },
-                                    end: { line: 1, column: 36 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [39, 41],
-                                    loc: {
-                                        start: { line: 1, column: 39 },
-                                        end: { line: 1, column: 41 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [39, 41],
-                                loc: {
-                                    start: { line: 1, column: 39 },
-                                    end: { line: 1, column: 41 }
-                                }
-                            },
-                            kind: 'get',
-                            method: false,
-                            shorthand: false,
-                            range: [31, 41],
-                            loc: {
-                                start: { line: 1, column: 31 },
-                                end: { line: 1, column: 41 }
-                            }
-                        }],
-                        range: [22, 43],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 43 }
-                        }
-                    },
-                    range: [18, 43],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 43 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 43],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 43 }
-                }
-            }],
-            range: [0, 43],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 43 }
-            },
-            errors: [{
-                index: 41,
-                lineNumber: 1,
-                column: 42,
-                message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-            }]
-        },
-
-        '"use strict"; var x = { set i(x) {}, i: 42 }': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'Literal',
-                    value: 'use strict',
-                    raw: '"use strict"',
-                    range: [0, 12],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                range: [0, 13],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 13 }
-                }
-            }, {
-                type: 'VariableDeclaration',
-                declarations: [{
-                    type: 'VariableDeclarator',
-                    id: {
-                        type: 'Identifier',
-                        name: 'x',
-                        range: [18, 19],
-                        loc: {
-                            start: { line: 1, column: 18 },
-                            end: { line: 1, column: 19 }
-                        }
-                    },
-                    init: {
-                        type: 'ObjectExpression',
-                        properties: [{
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [28, 29],
-                                loc: {
-                                    start: { line: 1, column: 28 },
-                                    end: { line: 1, column: 29 }
-                                }
-                            },
-                            value: {
-                                type: 'FunctionExpression',
-                                id: null,
-                                params: [{
-                                    type: 'Identifier',
-                                    name: 'x',
-                                    range: [30, 31],
-                                    loc: {
-                                        start: { line: 1, column: 30 },
-                                        end: { line: 1, column: 31 }
-                                    }
-                                }],
-                                defaults: [],
-                                body: {
-                                    type: 'BlockStatement',
-                                    body: [],
-                                    range: [33, 35],
-                                    loc: {
-                                        start: { line: 1, column: 33 },
-                                        end: { line: 1, column: 35 }
-                                    }
-                                },
-                                rest: null,
-                                generator: false,
-                                expression: false,
-                                range: [33, 35],
-                                loc: {
-                                    start: { line: 1, column: 33 },
-                                    end: { line: 1, column: 35 }
-                                }
-                            },
-                            kind: 'set',
-                            method: false,
-                            shorthand: false,
-                            range: [24, 35],
-                            loc: {
-                                start: { line: 1, column: 24 },
-                                end: { line: 1, column: 35 }
-                            }
-                        }, {
-                            type: 'Property',
-                            key: {
-                                type: 'Identifier',
-                                name: 'i',
-                                range: [37, 38],
-                                loc: {
-                                    start: { line: 1, column: 37 },
-                                    end: { line: 1, column: 38 }
-                                }
-                            },
-                            value: {
-                                type: 'Literal',
-                                value: 42,
-                                raw: '42',
-                                range: [40, 42],
-                                loc: {
-                                    start: { line: 1, column: 40 },
-                                    end: { line: 1, column: 42 }
-                                }
-                            },
-                            kind: 'init',
-                            method: false,
-                            shorthand: false,
-                            range: [37, 42],
-                            loc: {
-                                start: { line: 1, column: 37 },
-                                end: { line: 1, column: 42 }
-                            }
-                        }],
-                        range: [22, 44],
-                        loc: {
-                            start: { line: 1, column: 22 },
-                            end: { line: 1, column: 44 }
-                        }
-                    },
-                    range: [18, 44],
-                    loc: {
-                        start: { line: 1, column: 18 },
-                        end: { line: 1, column: 44 }
-                    }
-                }],
-                kind: 'var',
-                range: [14, 44],
-                loc: {
-                    start: { line: 1, column: 14 },
-                    end: { line: 1, column: 44 }
-                }
-            }],
-            range: [0, 44],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 44 }
-            },
-            errors: [{
-                index: 42,
-                lineNumber: 1,
-                column: 43,
-                message: 'Error: Line 1: Object literal may not have data and accessor property with the same name'
-            }]
-
-
-        },
-
-        '({ set s() { } })': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'ObjectExpression',
-                    properties: [{
-                        type: 'Property',
-                        key: {
-                            type: 'Identifier',
-                            name: 's',
-                            range: [7, 8],
-                            loc: {
-                                start: { line: 1, column: 7 },
-                                end: { line: 1, column: 8 }
-                            }
-                        },
-                        value: {
-                            type: 'FunctionExpression',
-                            id: null,
-                            params: [],
-                            defaults: [],
-                            body: {
-                                type: 'BlockStatement',
-                                body: [],
-                                range: [11, 14],
-                                loc: {
-                                    start: { line: 1, column: 11 },
-                                    end: { line: 1, column: 14 }
-                                }
-                            },
-                            rest: null,
-                            generator: false,
-                            expression: false,
-                            range: [11, 14],
-                            loc: {
-                                start: { line: 1, column: 11 },
-                                end: { line: 1, column: 14 }
-                            }
-                        },
-                        kind: 'set',
-                        method: false,
-                        shorthand: false,
-                        range: [3, 14],
-                        loc: {
-                            start: { line: 1, column: 3 },
-                            end: { line: 1, column: 14 }
-                        }
-                    }],
-                    range: [1, 16],
-                    loc: {
-                        start: { line: 1, column: 1 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 17],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 17 }
-                }
-            }],
-            range: [0, 17],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 17 }
-            },
-            errors: [{
-                index: 9,
-                lineNumber: 1,
-                column: 10,
-                message: 'Error: Line 1: Unexpected token )'
-            }]
-        },
-
-        'foo("bar") = baz': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'CallExpression',
-                        callee: {
-                            type: 'Identifier',
-                            name: 'foo',
-                            range: [0, 3],
-                            loc: {
-                                start: { line: 1, column: 0 },
-                                end: { line: 1, column: 3 }
-                            }
-                        },
-                        'arguments': [{
-                            type: 'Literal',
-                            value: 'bar',
-                            raw: '"bar"',
-                            range: [4, 9],
-                            loc: {
-                                start: { line: 1, column: 4 },
-                                end: { line: 1, column: 9 }
-                            }
-                        }],
-                        range: [0, 10],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 10 }
-                        }
-                    },
-                    right: {
-                        type: 'Identifier',
-                        name: 'baz',
-                        range: [13, 16],
-                        loc: {
-                            start: { line: 1, column: 13 },
-                            end: { line: 1, column: 16 }
-                        }
-                    },
-                    range: [0, 16],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            errors: [{
-                index: 10,
-                lineNumber: 1,
-                column: 11,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '1 = 2': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'AssignmentExpression',
-                    operator: '=',
-                    left: {
-                        type: 'Literal',
-                        value: 1,
-                        raw: '1',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    right: {
-                        type: 'Literal',
-                        value: 2,
-                        raw: '2',
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    range: [0, 5],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 5 }
-                    }
-                },
-                range: [0, 5],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 5 }
-                }
-            }],
-            range: [0, 5],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 5 }
-            },
-            errors: [{
-                index: 1,
-                lineNumber: 1,
-                column: 2,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '3++': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '++',
-                    argument: {
-                        type: 'Literal',
-                        value: 3,
-                        raw: '3',
-                        range: [0, 1],
-                        loc: {
-                            start: { line: 1, column: 0 },
-                            end: { line: 1, column: 1 }
-                        }
-                    },
-                    prefix: false,
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }],
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            },
-            errors: [{
-                index: 1,
-                lineNumber: 1,
-                column: 2,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        '--4': {
-            type: 'Program',
-            body: [{
-                type: 'ExpressionStatement',
-                expression: {
-                    type: 'UpdateExpression',
-                    operator: '--',
-                    argument: {
-                        type: 'Literal',
-                        value: 4,
-                        raw: '4',
-                        range: [2, 3],
-                        loc: {
-                            start: { line: 1, column: 2 },
-                            end: { line: 1, column: 3 }
-                        }
-                    },
-                    prefix: true,
-                    range: [0, 3],
-                    loc: {
-                        start: { line: 1, column: 0 },
-                        end: { line: 1, column: 3 }
-                    }
-                },
-                range: [0, 3],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 3 }
-                }
-            }],
-            range: [0, 3],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 3 }
-            },
-            errors: [{
-                index: 3,
-                lineNumber: 1,
-                column: 4,
-                message: 'Error: Line 1: Invalid left-hand side in assignment'
-            }]
-        },
-
-        'for (5 in []) {}': {
-            type: 'Program',
-            body: [{
-                type: 'ForInStatement',
-                left: {
-                    type: 'Literal',
-                    value: 5,
-                    raw: '5',
-                    range: [5, 6],
-                    loc: {
-                        start: { line: 1, column: 5 },
-                        end: { line: 1, column: 6 }
-                    }
-                },
-                right: {
-                    type: 'ArrayExpression',
-                    elements: [],
-                    range: [10, 12],
-                    loc: {
-                        start: { line: 1, column: 10 },
-                        end: { line: 1, column: 12 }
-                    }
-                },
-                body: {
-                    type: 'BlockStatement',
-                    body: [],
-                    range: [14, 16],
-                    loc: {
-                        start: { line: 1, column: 14 },
-                        end: { line: 1, column: 16 }
-                    }
-                },
-                each: false,
-                range: [0, 16],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 16 }
-                }
-            }],
-            range: [0, 16],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 16 }
-            },
-            errors: [{
-                index: 6,
-                lineNumber: 1,
-                column: 7,
-                message: 'Error: Line 1: Invalid left-hand side in for-in'
-            }]
-        },
-
-        'var x = /[P QR]/\\g': {
-            type: "Program",
-            body: [{
-                type: "VariableDeclaration",
-                declarations: [{
-                    type: "VariableDeclarator",
-                    id: {
-                        type: "Identifier",
-                        name: "x",
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: "Literal",
-                        value: "/[P QR]/g",
-                        raw: "/[P QR]/\\g",
-                        regex: {
-                            pattern: "[P QR]",
-                            flags: "g"
-                        },
-                        range: [8, 18],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 18 }
-                        }
-                    },
-                    range: [4, 18],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 18 }
-                    }
-                }],
-                kind: "var",
-                range: [0, 18],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 18 }
-                }
-            }],
-            range: [0, 18],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 18 }
-            },
-            errors: [{
-                index: 17,
-                lineNumber: 1,
-                column: 18,
-                message: "Error: Line 1: Unexpected token ILLEGAL"
-            }]
-        },
-
-        'var x = /[P QR]/\\\\u0067': {
-            type: "Program",
-            body: [{
-                type: "VariableDeclaration",
-                declarations: [{
-                    type: "VariableDeclarator",
-                    id: {
-                        type: "Identifier",
-                        name: "x",
-                        range: [4, 5],
-                        loc: {
-                            start: { line: 1, column: 4 },
-                            end: { line: 1, column: 5 }
-                        }
-                    },
-                    init: {
-                        type: "Literal",
-                        value: "/[P QR]/g",
-                        raw: "/[P QR]/\\\\u0067",
-                        regex: {
-                            pattern: "[P QR]",
-                            flags: "g"
-                        },
-                        range: [8, 23],
-                        loc: {
-                            start: { line: 1, column: 8 },
-                            end: { line: 1, column: 23 }
-                        }
-                    },
-                    range: [4, 23],
-                    loc: {
-                        start: { line: 1, column: 4 },
-                        end: { line: 1, column: 23 }
-                    }
-                }],
-                kind: "var",
-                range: [0, 23],
-                loc: {
-                    start: { line: 1, column: 0 },
-                    end: { line: 1, column: 23 }
-                }
-            }],
-            range: [0, 23],
-            loc: {
-                start: { line: 1, column: 0 },
-                end: { line: 1, column: 23 }
-            },
-            errors: [{
-                index: 17,
-                lineNumber: 1,
-                column: 18,
-                message: "Error: Line 1: Unexpected token ILLEGAL"
-            }, {
-                index: 23,
-                lineNumber: 1,
-                column: 24,
-                message: "Error: Line 1: Unexpected token ILLEGAL"
-            }]
-        }
-
-    }
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/js-yaml/package.json
deleted file mode 100644 (file)
index 25488fe..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-{
-  "_args": [
-    [
-      "js-yaml@https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "js-yaml@https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-  "_id": "js-yaml@https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ECeQ8mXZhv6VpNDyp5Lnp72Ibuw=",
-  "_location": "/grunt-standard/standard/eslint/js-yaml",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "js-yaml@https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-    "name": "js-yaml",
-    "escapedName": "js-yaml",
-    "rawSpec": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-    "saveSpec": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-    "fetchSpec": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Dervus Grim",
-    "email": "dervus.grim@gmail.com"
-  },
-  "bin": {
-    "js-yaml": "bin/js-yaml.js"
-  },
-  "browser": {
-    "buffer": false
-  },
-  "bugs": {
-    "url": "https://github.com/nodeca/js-yaml/issues"
-  },
-  "contributors": [
-    {
-      "name": "Aleksey V Zapparov",
-      "email": "ixti@member.fsf.org",
-      "url": "http://www.ixti.net/"
-    },
-    {
-      "name": "Vitaly Puzrin",
-      "email": "vitaly@rcdesign.ru",
-      "url": "https://github.com/puzrin"
-    },
-    {
-      "name": "Martin Grenfell",
-      "email": "martin.grenfell@gmail.com",
-      "url": "http://got-ravings.blogspot.com"
-    }
-  ],
-  "dependencies": {
-    "argparse": "~ 1.0.0",
-    "esprima": "~ 2.0.0"
-  },
-  "description": "YAML 1.2 parser and serializer",
-  "devDependencies": {
-    "ansi": "*",
-    "benchmark": "*",
-    "mocha": "*"
-  },
-  "homepage": "https://github.com/nodeca/js-yaml",
-  "keywords": [
-    "yaml",
-    "parser",
-    "serializer",
-    "pyyaml"
-  ],
-  "license": {
-    "type": "MIT",
-    "url": "https://github.com/nodeca/js-yaml/blob/master/LICENSE"
-  },
-  "main": "./index.js",
-  "name": "js-yaml",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/nodeca/js-yaml.git"
-  },
-  "version": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.2.7.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/LICENSE
deleted file mode 100644 (file)
index 05a4010..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Copyright 2009, 2010, 2011 Isaac Z. Schlueter.
-All rights reserved.
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/README.md
deleted file mode 100644 (file)
index d458bc2..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-# minimatch
-
-A minimal matching utility.
-
-[![Build Status](https://secure.travis-ci.org/isaacs/minimatch.png)](http://travis-ci.org/isaacs/minimatch)
-
-
-This is the matching library used internally by npm.
-
-It works by converting glob expressions into JavaScript `RegExp`
-objects.
-
-## Usage
-
-```javascript
-var minimatch = require("minimatch")
-
-minimatch("bar.foo", "*.foo") // true!
-minimatch("bar.foo", "*.bar") // false!
-minimatch("bar.foo", "*.+(bar|foo)", { debug: true }) // true, and noisy!
-```
-
-## Features
-
-Supports these glob features:
-
-* Brace Expansion
-* Extended glob matching
-* "Globstar" `**` matching
-
-See:
-
-* `man sh`
-* `man bash`
-* `man 3 fnmatch`
-* `man 5 gitignore`
-
-## Minimatch Class
-
-Create a minimatch object by instanting the `minimatch.Minimatch` class.
-
-```javascript
-var Minimatch = require("minimatch").Minimatch
-var mm = new Minimatch(pattern, options)
-```
-
-### Properties
-
-* `pattern` The original pattern the minimatch object represents.
-* `options` The options supplied to the constructor.
-* `set` A 2-dimensional array of regexp or string expressions.
-  Each row in the
-  array corresponds to a brace-expanded pattern.  Each item in the row
-  corresponds to a single path-part.  For example, the pattern
-  `{a,b/c}/d` would expand to a set of patterns like:
-
-        [ [ a, d ]
-        , [ b, c, d ] ]
-
-    If a portion of the pattern doesn't have any "magic" in it
-    (that is, it's something like `"foo"` rather than `fo*o?`), then it
-    will be left as a string rather than converted to a regular
-    expression.
-
-* `regexp` Created by the `makeRe` method.  A single regular expression
-  expressing the entire pattern.  This is useful in cases where you wish
-  to use the pattern somewhat like `fnmatch(3)` with `FNM_PATH` enabled.
-* `negate` True if the pattern is negated.
-* `comment` True if the pattern is a comment.
-* `empty` True if the pattern is `""`.
-
-### Methods
-
-* `makeRe` Generate the `regexp` member if necessary, and return it.
-  Will return `false` if the pattern is invalid.
-* `match(fname)` Return true if the filename matches the pattern, or
-  false otherwise.
-* `matchOne(fileArray, patternArray, partial)` Take a `/`-split
-  filename, and match it against a single row in the `regExpSet`.  This
-  method is mainly for internal use, but is exposed so that it can be
-  used by a glob-walker that needs to avoid excessive filesystem calls.
-
-All other methods are internal, and will be called as necessary.
-
-## Functions
-
-The top-level exported function has a `cache` property, which is an LRU
-cache set to store 100 items.  So, calling these methods repeatedly
-with the same pattern and options will use the same Minimatch object,
-saving the cost of parsing it multiple times.
-
-### minimatch(path, pattern, options)
-
-Main export.  Tests a path against the pattern using the options.
-
-```javascript
-var isJS = minimatch(file, "*.js", { matchBase: true })
-```
-
-### minimatch.filter(pattern, options)
-
-Returns a function that tests its
-supplied argument, suitable for use with `Array.filter`.  Example:
-
-```javascript
-var javascripts = fileList.filter(minimatch.filter("*.js", {matchBase: true}))
-```
-
-### minimatch.match(list, pattern, options)
-
-Match against the list of
-files, in the style of fnmatch or glob.  If nothing is matched, and
-options.nonull is set, then return a list containing the pattern itself.
-
-```javascript
-var javascripts = minimatch.match(fileList, "*.js", {matchBase: true}))
-```
-
-### minimatch.makeRe(pattern, options)
-
-Make a regular expression object from the pattern.
-
-## Options
-
-All options are `false` by default.
-
-### debug
-
-Dump a ton of stuff to stderr.
-
-### nobrace
-
-Do not expand `{a,b}` and `{1..3}` brace sets.
-
-### noglobstar
-
-Disable `**` matching against multiple folder names.
-
-### dot
-
-Allow patterns to match filenames starting with a period, even if
-the pattern does not explicitly have a period in that spot.
-
-Note that by default, `a/**/b` will **not** match `a/.d/b`, unless `dot`
-is set.
-
-### noext
-
-Disable "extglob" style patterns like `+(a|b)`.
-
-### nocase
-
-Perform a case-insensitive match.
-
-### nonull
-
-When a match is not found by `minimatch.match`, return a list containing
-the pattern itself if this option is set.  When not set, an empty list
-is returned if there are no matches.
-
-### matchBase
-
-If set, then patterns without slashes will be matched
-against the basename of the path if it contains slashes.  For example,
-`a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`.
-
-### nocomment
-
-Suppress the behavior of treating `#` at the start of a pattern as a
-comment.
-
-### nonegate
-
-Suppress the behavior of treating a leading `!` character as negation.
-
-### flipNegate
-
-Returns from negate expressions the same as if they were not negated.
-(Ie, true on a hit, false on a miss.)
-
-
-## Comparisons to other fnmatch/glob implementations
-
-While strict compliance with the existing standards is a worthwhile
-goal, some discrepancies exist between minimatch and other
-implementations, and are intentional.
-
-If the pattern starts with a `!` character, then it is negated.  Set the
-`nonegate` flag to suppress this behavior, and treat leading `!`
-characters normally.  This is perhaps relevant if you wish to start the
-pattern with a negative extglob pattern like `!(a|B)`.  Multiple `!`
-characters at the start of a pattern will negate the pattern multiple
-times.
-
-If a pattern starts with `#`, then it is treated as a comment, and
-will not match anything.  Use `\#` to match a literal `#` at the
-start of a line, or set the `nocomment` flag to suppress this behavior.
-
-The double-star character `**` is supported by default, unless the
-`noglobstar` flag is set.  This is supported in the manner of bsdglob
-and bash 4.1, where `**` only has special significance if it is the only
-thing in a path part.  That is, `a/**/b` will match `a/x/y/b`, but
-`a/**b` will not.
-
-If an escaped pattern has no matches, and the `nonull` flag is set,
-then minimatch.match returns the pattern as-provided, rather than
-interpreting the character escapes.  For example,
-`minimatch.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than
-`"*a?"`.  This is akin to setting the `nullglob` option in bash, except
-that it does not resolve escaped pattern characters.
-
-If brace expansion is not disabled, then it is performed before any
-other interpretation of the glob pattern.  Thus, a pattern like
-`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded
-**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are
-checked for validity.  Since those two are valid, matching proceeds.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/browser.js
deleted file mode 100644 (file)
index cf58a3f..0000000
+++ /dev/null
@@ -1,1114 +0,0 @@
-(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
-
-},{"brace-expansion":2}],2:[function(require,module,exports){
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  var expansions = expand(escapeBraces(str));
-  return expansions.filter(identity).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0]).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      expansions.push([pre, N[j], post[k]].join(''))
-    }
-  }
-
-  return expansions;
-}
-
-
-},{"balanced-match":3,"concat-map":4}],3:[function(require,module,exports){
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
-
-},{}],4:[function(require,module,exports){
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (Array.isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-},{}]},{},[1]);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/minimatch.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/minimatch.js
deleted file mode 100644 (file)
index 2bfdf62..0000000
+++ /dev/null
@@ -1,868 +0,0 @@
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.npmignore
deleted file mode 100644 (file)
index 249bc20..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-*.sw*
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/.travis.yml
deleted file mode 100644 (file)
index 6e5919d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-language: node_js
-node_js:
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/README.md
deleted file mode 100644 (file)
index 62bc7ba..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-# brace-expansion
-
-[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), 
-as known from sh/bash, in JavaScript.
-
-[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion)
-
-[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion)
-
-## Example
-
-```js
-var expand = require('brace-expansion');
-
-expand('file-{a,b,c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('-v{,,}')
-// => ['-v', '-v', '-v']
-
-expand('file{0..2}.jpg')
-// => ['file0.jpg', 'file1.jpg', 'file2.jpg']
-
-expand('file-{a..c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('file{2..0}.jpg')
-// => ['file2.jpg', 'file1.jpg', 'file0.jpg']
-
-expand('file{0..4..2}.jpg')
-// => ['file0.jpg', 'file2.jpg', 'file4.jpg']
-
-expand('file-{a..e..2}.jpg')
-// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg']
-
-expand('file{00..10..5}.jpg')
-// => ['file00.jpg', 'file05.jpg', 'file10.jpg']
-
-expand('{{A..C},{a..c}}')
-// => ['A', 'B', 'C', 'a', 'b', 'c']
-
-expand('ppp{,config,oe{,conf}}')
-// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf']
-```
-
-## API
-
-```js
-var expand = require('brace-expansion');
-```
-
-### var expanded = expand(str)
-
-Return an array of all possible and valid expansions of `str`. If none are
-found, `[str]` is returned.
-
-Valid expansions are:
-
-```js
-/^(.*,)+(.+)?$/
-// {a,b,...}
-```
-
-A comma seperated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-A numeric sequence from `x` to `y` inclusive, with optional increment.
-If `x` or `y` start with a leading `0`, all the numbers will be padded
-to have equal length. Negative numbers and backwards iteration work too.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-An alphabetic sequence from `x` to `y` inclusive, with optional increment.
-`x` and `y` must be exactly one character, and if given, `incr` must be a
-number.
-
-For compatibility reasons, the string `${` is not eligible for brace expansion.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install brace-expansion
-```
-
-## Contributors
-
-- [Julian Gruber](https://github.com/juliangruber)
-- [Isaac Z. Schlueter](https://github.com/isaacs)
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/example.js
deleted file mode 100644 (file)
index 60ecfc7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-var expand = require('./');
-
-console.log(expand('http://any.org/archive{1996..1999}/vol{1..4}/part{a,b,c}.html'));
-console.log(expand('http://www.numericals.com/file{1..100..10}.txt'));
-console.log(expand('http://www.letters.com/file{a..z..2}.txt'));
-console.log(expand('mkdir /usr/local/src/bash/{old,new,dist,bugs}'));
-console.log(expand('chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/index.js
deleted file mode 100644 (file)
index a23104e..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  return expand(escapeBraces(str), true).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str, isTop) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0], false).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post, false)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post, false)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el, false) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      var expansion = pre + N[j] + post[k];
-      if (!isTop || isSequence || expansion)
-        expansions.push(expansion);
-    }
-  }
-
-  return expansions;
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore
deleted file mode 100644 (file)
index fd4f2b0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.DS_Store
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
deleted file mode 100644 (file)
index fa5da71..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test:
-       @node_modules/.bin/tape test/*.js
-
-.PHONY: test
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md
deleted file mode 100644 (file)
index 2aff0eb..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-# balanced-match
-
-Match balanced string pairs, like `{` and `}` or `<b>` and `</b>`.
-
-[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match)
-[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match)
-
-[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match)
-
-## Example
-
-Get the first matching pair of braces:
-
-```js
-var balanced = require('balanced-match');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-```
-
-The matches are:
-
-```bash
-$ node example.js
-{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' }
-{ start: 3,
-  end: 9,
-  pre: 'pre',
-  body: 'first',
-  post: 'between{second}post' }
-```
-
-## API
-
-### var m = balanced(a, b, str)
-
-For the first non-nested matching pair of `a` and `b` in `str`, return an
-object with those keys:
-
-* **start** the index of the first match of `a`
-* **end** the index of the matching `b`
-* **pre** the preamble, `a` and `b` not included
-* **body** the match, `a` and `b` not included
-* **post** the postscript, `a` and `b` not included
-
-If there's no match, `undefined` will be returned.
-
-If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']`.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install balanced-match
-```
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
deleted file mode 100644 (file)
index c02ad34..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-var balanced = require('./');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js
deleted file mode 100644 (file)
index d165ae8..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
deleted file mode 100644 (file)
index 8b3fc1f..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  "_args": [
-    [
-      "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_id": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-OPZzDAOqttXtu1K9k0iF51bXFnQ=",
-  "_location": "/grunt-standard/standard/eslint/minimatch/brace-expansion/balanced-match",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "name": "balanced-match",
-    "escapedName": "balanced-match",
-    "rawSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/balanced-match/issues"
-  },
-  "dependencies": {},
-  "description": "Match balanced character pairs, like \"{\" and \"}\"",
-  "devDependencies": {
-    "tape": "~1.1.1"
-  },
-  "homepage": "https://github.com/juliangruber/balanced-match",
-  "keywords": [
-    "match",
-    "regexp",
-    "test",
-    "balanced",
-    "parse"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "balanced-match",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/balanced-match.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js
deleted file mode 100644 (file)
index 36bfd39..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var test = require('tape');
-var balanced = require('..');
-
-test('balanced', function(t) {
-  t.deepEqual(balanced('{', '}', 'pre{in{nest}}post'), {
-    start: 3,
-    end: 12,
-    pre: 'pre',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', '{{{{{{{{{in}post'), {
-    start: 8,
-    end: 11,
-    pre: '{{{{{{{{',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body{in}post'), {
-    start: 8,
-    end: 11,
-    pre: 'pre{body',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre}{in{nest}}post'), {
-    start: 4,
-    end: 13,
-    pre: 'pre}',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body}between{body2}post'), {
-    start: 3,
-    end: 8,
-    pre: 'pre',
-    body: 'body',
-    post: 'between{body2}post'
-  });
-  t.notOk(balanced('{', '}', 'nope'), 'should be notOk');
-  t.deepEqual(balanced('<b>', '</b>', 'pre<b>in<b>nest</b></b>post'), {
-    start: 3,
-    end: 19,
-    pre: 'pre',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.deepEqual(balanced('<b>', '</b>', 'pre</b><b>in<b>nest</b></b>post'), {
-    start: 7,
-    end: 23,
-    pre: 'pre</b>',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml
deleted file mode 100644 (file)
index f1d0f13..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - 0.4
-  - 0.6
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/LICENSE
deleted file mode 100644 (file)
index ee27ba4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown
deleted file mode 100644 (file)
index 408f70a..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-concat-map
-==========
-
-Concatenative mapdashery.
-
-[![browser support](http://ci.testling.com/substack/node-concat-map.png)](http://ci.testling.com/substack/node-concat-map)
-
-[![build status](https://secure.travis-ci.org/substack/node-concat-map.png)](http://travis-ci.org/substack/node-concat-map)
-
-example
-=======
-
-``` js
-var concatMap = require('concat-map');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
-```
-
-***
-
-```
-[ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]
-```
-
-methods
-=======
-
-``` js
-var concatMap = require('concat-map')
-```
-
-concatMap(xs, fn)
------------------
-
-Return an array of concatenated elements by calling `fn(x, i)` for each element
-`x` and each index `i` in the array `xs`.
-
-When `fn(x, i)` returns an array, its result will be concatenated with the
-result array. If `fn(x, i)` returns anything else, that value will be pushed
-onto the end of the result array.
-
-install
-=======
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install concat-map
-```
-
-license
-=======
-
-MIT
-
-notes
-=====
-
-This module was written while sitting high above the ground in a tree.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js
deleted file mode 100644 (file)
index 3365621..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-var concatMap = require('../');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js
deleted file mode 100644 (file)
index b29a781..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-var isArray = Array.isArray || function (xs) {
-    return Object.prototype.toString.call(xs) === '[object Array]';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json
deleted file mode 100644 (file)
index c26cf48..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-{
-  "_args": [
-    [
-      "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_id": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-  "_location": "/grunt-standard/standard/eslint/minimatch/brace-expansion/concat-map",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "name": "concat-map",
-    "escapedName": "concat-map",
-    "rawSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-concat-map/issues"
-  },
-  "description": "concatenative mapdashery",
-  "devDependencies": {
-    "tape": "~2.4.0"
-  },
-  "directories": {
-    "example": "example",
-    "test": "test"
-  },
-  "homepage": "https://github.com/substack/node-concat-map#readme",
-  "keywords": [
-    "concat",
-    "concatMap",
-    "map",
-    "functional",
-    "higher-order"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "concat-map",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-concat-map.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": {
-      "ie": [
-        6,
-        7,
-        8,
-        9
-      ],
-      "ff": [
-        3.5,
-        10,
-        15
-      ],
-      "chrome": [
-        10,
-        22
-      ],
-      "safari": [
-        5.1
-      ],
-      "opera": [
-        12
-      ]
-    }
-  },
-  "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js
deleted file mode 100644 (file)
index fdbd702..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var concatMap = require('../');
-var test = require('tape');
-
-test('empty or not', function (t) {
-    var xs = [ 1, 2, 3, 4, 5, 6 ];
-    var ixes = [];
-    var ys = concatMap(xs, function (x, ix) {
-        ixes.push(ix);
-        return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-    });
-    t.same(ys, [ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]);
-    t.same(ixes, [ 0, 1, 2, 3, 4, 5 ]);
-    t.end();
-});
-
-test('always something', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : [ x ];
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('scalars', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : x;
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('undefs', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function () {});
-    t.same(ys, [ undefined, undefined, undefined, undefined ]);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/package.json
deleted file mode 100644 (file)
index 50146d4..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_id": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ybfQPAPze8cEvhAOUitA249s/Nk=",
-  "_location": "/grunt-standard/standard/eslint/minimatch/brace-expansion",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "name": "brace-expansion",
-    "escapedName": "brace-expansion",
-    "rawSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/minimatch"
-  ],
-  "_spec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/brace-expansion/issues"
-  },
-  "dependencies": {
-    "balanced-match": "^0.2.0",
-    "concat-map": "0.0.1"
-  },
-  "description": "Brace expansion as known from sh/bash",
-  "devDependencies": {
-    "tape": "^3.0.3"
-  },
-  "homepage": "https://github.com/juliangruber/brace-expansion",
-  "keywords": [],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "brace-expansion",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/brace-expansion.git"
-  },
-  "scripts": {
-    "gentest": "bash test/generate.sh",
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js
deleted file mode 100644 (file)
index 5fe2b8a..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-var fs = require('fs');
-var resfile = __dirname + '/bash-results.txt';
-var cases = fs.readFileSync(resfile, 'utf8').split('><><><><');
-
-// throw away the EOF marker
-cases.pop()
-
-test('matches bash expansions', function(t) {
-  cases.forEach(function(testcase) {
-    var set = testcase.split('\n');
-    var pattern = set.shift();
-    var actual = expand(pattern);
-
-    // If it expands to the empty string, then it's actually
-    // just nothing, but Bash is a singly typed language, so
-    // "nothing" is the same as "".
-    if (set.length === 1 && set[0] === '') {
-      set = []
-    } else {
-      // otherwise, strip off the [] that were added so that
-      // "" expansions would be preserved properly.
-      set = set.map(function (s) {
-        return s.replace(/^\[|\]$/g, '')
-      })
-    }
-
-    t.same(actual, set, pattern);
-  });
-  t.end();
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt
deleted file mode 100644 (file)
index 958148d..0000000
+++ /dev/null
@@ -1,1075 +0,0 @@
-A{b,{d,e},{f,g}}Z
-[AbZ]
-[AdZ]
-[AeZ]
-[AfZ]
-[AgZ]><><><><PRE-{a,b}{{a,b},a,b}-POST
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]><><><><\{a,b}{{a,b},a,b}
-[{a,b}a]
-[{a,b}b]
-[{a,b}a]
-[{a,b}b]><><><><{{a,b}
-[{a]
-[{b]><><><><{a,b}}
-[a}]
-[b}]><><><><{,}
-><><><><a{,}
-[a]
-[a]><><><><{,}b
-[b]
-[b]><><><><a{,}b
-[ab]
-[ab]><><><><a{b}c
-[a{b}c]><><><><a{1..5}b
-[a1b]
-[a2b]
-[a3b]
-[a4b]
-[a5b]><><><><a{01..5}b
-[a01b]
-[a02b]
-[a03b]
-[a04b]
-[a05b]><><><><a{-01..5}b
-[a-01b]
-[a000b]
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]><><><><a{-01..5..3}b
-[a-01b]
-[a002b]
-[a005b]><><><><a{001..9}b
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]
-[a006b]
-[a007b]
-[a008b]
-[a009b]><><><><a{b,c{d,e},{f,g}h}x{y,z
-[abx{y,z]
-[acdx{y,z]
-[acex{y,z]
-[afhx{y,z]
-[aghx{y,z]><><><><a{b,c{d,e},{f,g}h}x{y,z\}
-[abx{y,z}]
-[acdx{y,z}]
-[acex{y,z}]
-[afhx{y,z}]
-[aghx{y,z}]><><><><a{b,c{d,e},{f,g}h}x{y,z}
-[abxy]
-[abxz]
-[acdxy]
-[acdxz]
-[acexy]
-[acexz]
-[afhxy]
-[afhxz]
-[aghxy]
-[aghxz]><><><><a{b{c{d,e}f{x,y{{g}h
-[a{b{cdf{x,y{{g}h]
-[a{b{cef{x,y{{g}h]><><><><a{b{c{d,e}f{x,y{}g}h
-[a{b{cdfxh]
-[a{b{cdfy{}gh]
-[a{b{cefxh]
-[a{b{cefy{}gh]><><><><a{b{c{d,e}f{x,y}}g}h
-[a{b{cdfx}g}h]
-[a{b{cdfy}g}h]
-[a{b{cefx}g}h]
-[a{b{cefy}g}h]><><><><a{b{c{d,e}f}g}h
-[a{b{cdf}g}h]
-[a{b{cef}g}h]><><><><a{{x,y},z}b
-[axb]
-[ayb]
-[azb]><><><><f{x,y{g,z}}h
-[fxh]
-[fygh]
-[fyzh]><><><><f{x,y{{g,z}}h
-[f{x,y{g}h]
-[f{x,y{z}h]><><><><f{x,y{{g,z}}h}
-[fx]
-[fy{g}h]
-[fy{z}h]><><><><f{x,y{{g}h
-[f{x,y{{g}h]><><><><f{x,y{{g}}h
-[f{x,y{{g}}h]><><><><f{x,y{}g}h
-[fxh]
-[fy{}gh]><><><><z{a,b{,c}d
-[z{a,bd]
-[z{a,bcd]><><><><z{a,b},c}d
-[za,c}d]
-[zb,c}d]><><><><{-01..5}
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]><><><><{-05..100..5}
-[-05]
-[000]
-[005]
-[010]
-[015]
-[020]
-[025]
-[030]
-[035]
-[040]
-[045]
-[050]
-[055]
-[060]
-[065]
-[070]
-[075]
-[080]
-[085]
-[090]
-[095]
-[100]><><><><{-05..100}
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0..5..2}
-[0]
-[2]
-[4]><><><><{0001..05..2}
-[0001]
-[0003]
-[0005]><><><><{0001..-5..2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..-5..-2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..5..-2}
-[0001]
-[0003]
-[0005]><><><><{01..5}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05..3}
-[01]
-[04]><><><><{05..100}
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0a..0z}
-[{0a..0z}]><><><><{a,b\}c,d}
-[a]
-[b}c]
-[d]><><><><{a,b{c,d}
-[{a,bc]
-[{a,bd]><><><><{a,b}c,d}
-[ac,d}]
-[bc,d}]><><><><{a..F}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]><><><><{A..f}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{a..Z}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]><><><><{A..z}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{z..A}
-[z]
-[y]
-[x]
-[w]
-[v]
-[u]
-[t]
-[s]
-[r]
-[q]
-[p]
-[o]
-[n]
-[m]
-[l]
-[k]
-[j]
-[i]
-[h]
-[g]
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{Z..a}
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{a..F..2}
-[a]
-[_]
-[]]
-[[]
-[Y]
-[W]
-[U]
-[S]
-[Q]
-[O]
-[M]
-[K]
-[I]
-[G]><><><><{A..f..02}
-[A]
-[C]
-[E]
-[G]
-[I]
-[K]
-[M]
-[O]
-[Q]
-[S]
-[U]
-[W]
-[Y]
-[[]
-[]]
-[_]
-[a]
-[c]
-[e]><><><><{a..Z..5}
-[a]
-[]><><><><d{a..Z..5}b
-[dab]
-[db]><><><><{A..z..10}
-[A]
-[K]
-[U]
-[_]
-[i]
-[s]><><><><{z..A..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]
-[`]
-[^]
-[]
-[Z]
-[X]
-[V]
-[T]
-[R]
-[P]
-[N]
-[L]
-[J]
-[H]
-[F]
-[D]
-[B]><><><><{Z..a..20}
-[Z]><><><><{a{,b}
-[{a]
-[{ab]><><><><{a},b}
-[a}]
-[b]><><><><{x,y{,}g}
-[x]
-[yg]
-[yg]><><><><{x,y{}g}
-[x]
-[y{}g]><><><><{{a,b}
-[{a]
-[{b]><><><><{{a,b},c}
-[a]
-[b]
-[c]><><><><{{a,b}c}
-[{ac}]
-[{bc}]><><><><{{a,b},}
-[a]
-[b]><><><><X{{a,b},}X
-[XaX]
-[XbX]
-[XX]><><><><{{a,b},}c
-[ac]
-[bc]
-[c]><><><><{{a,b}.}
-[{a.}]
-[{b.}]><><><><{{a,b}}
-[{a}]
-[{b}]><><><><X{a..#}X
-[X{a..#}X]><><><><
-><><><><{-10..00}
-[-10]
-[-09]
-[-08]
-[-07]
-[-06]
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]><><><><{a,\\{a,b}c}
-[a]
-[\ac]
-[\bc]><><><><{a,\{a,b}c}
-[ac}]
-[{ac}]
-[bc}]><><><><a,\{b,c}
-[a,{b,c}]><><><><{-10.\.00}
-[{-10..00}]><><><><ff{c,b,a}
-[ffc]
-[ffb]
-[ffa]><><><><f{d,e,f}g
-[fdg]
-[feg]
-[ffg]><><><><{l,n,m}xyz
-[lxyz]
-[nxyz]
-[mxyz]><><><><{abc\,def}
-[{abc,def}]><><><><{abc}
-[{abc}]><><><><{x\,y,\{abc\},trie}
-[x,y]
-[{abc}]
-[trie]><><><><{}
-[{}]><><><><}
-[}]><><><><{
-[{]><><><><abcd{efgh
-[abcd{efgh]><><><><{1..10}
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]><><><><{0..10,braces}
-[0..10]
-[braces]><><><><{{0..10},braces}
-[0]
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]
-[braces]><><><><x{{0..10},braces}y
-[x0y]
-[x1y]
-[x2y]
-[x3y]
-[x4y]
-[x5y]
-[x6y]
-[x7y]
-[x8y]
-[x9y]
-[x10y]
-[xbracesy]><><><><{3..3}
-[3]><><><><x{3..3}y
-[x3y]><><><><{10..1}
-[10]
-[9]
-[8]
-[7]
-[6]
-[5]
-[4]
-[3]
-[2]
-[1]><><><><{10..1}y
-[10y]
-[9y]
-[8y]
-[7y]
-[6y]
-[5y]
-[4y]
-[3y]
-[2y]
-[1y]><><><><x{10..1}y
-[x10y]
-[x9y]
-[x8y]
-[x7y]
-[x6y]
-[x5y]
-[x4y]
-[x3y]
-[x2y]
-[x1y]><><><><{a..f}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{f..a}
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]><><><><{a..A}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{A..a}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{f..f}
-[f]><><><><{1..f}
-[{1..f}]><><><><{f..1}
-[{f..1}]><><><><{-1..-10}
-[-1]
-[-2]
-[-3]
-[-4]
-[-5]
-[-6]
-[-7]
-[-8]
-[-9]
-[-10]><><><><{-20..0}
-[-20]
-[-19]
-[-18]
-[-17]
-[-16]
-[-15]
-[-14]
-[-13]
-[-12]
-[-11]
-[-10]
-[-9]
-[-8]
-[-7]
-[-6]
-[-5]
-[-4]
-[-3]
-[-2]
-[-1]
-[0]><><><><a-{b{d,e}}-c
-[a-{bd}-c]
-[a-{be}-c]><><><><a-{bdef-{g,i}-c
-[a-{bdef-g-c]
-[a-{bdef-i-c]><><><><{klklkl}{1,2,3}
-[{klklkl}1]
-[{klklkl}2]
-[{klklkl}3]><><><><{1..10..2}
-[1]
-[3]
-[5]
-[7]
-[9]><><><><{-1..-10..2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{-1..-10..-2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{10..1..-2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{10..1..2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{1..20..2}
-[1]
-[3]
-[5]
-[7]
-[9]
-[11]
-[13]
-[15]
-[17]
-[19]><><><><{1..20..20}
-[1]><><><><{100..0..5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{100..0..-5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{a..z}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{a..z..2}
-[a]
-[c]
-[e]
-[g]
-[i]
-[k]
-[m]
-[o]
-[q]
-[s]
-[u]
-[w]
-[y]><><><><{z..a..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]><><><><{2147483645..2147483649}
-[2147483645]
-[2147483646]
-[2147483647]
-[2147483648]
-[2147483649]><><><><{10..0..2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{10..0..-2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{-50..-0..5}
-[-50]
-[-45]
-[-40]
-[-35]
-[-30]
-[-25]
-[-20]
-[-15]
-[-10]
-[-5]
-[0]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..ff}
-[{1..ff}]><><><><{1..10..ff}
-[{1..10..ff}]><><><><{1.20..2}
-[{1.20..2}]><><><><{1..20..f2}
-[{1..20..f2}]><><><><{1..20..2f}
-[{1..20..2f}]><><><><{1..2f..2}
-[{1..2f..2}]><><><><{1..ff..2}
-[{1..ff..2}]><><><><{1..ff}
-[{1..ff}]><><><><{1..f}
-[{1..f}]><><><><{1..0f}
-[{1..0f}]><><><><{1..10f}
-[{1..10f}]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..10.f}
-[{1..10.f}]><><><><
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt
deleted file mode 100644 (file)
index e5161c3..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-# skip quotes for now
-# "{x,x}"
-# {"x,x"}
-# {x","x}
-# '{a,b}{{a,b},a,b}'
-A{b,{d,e},{f,g}}Z
-PRE-{a,b}{{a,b},a,b}-POST
-\\{a,b}{{a,b},a,b}
-{{a,b}
-{a,b}}
-{,}
-a{,}
-{,}b
-a{,}b
-a{b}c
-a{1..5}b
-a{01..5}b
-a{-01..5}b
-a{-01..5..3}b
-a{001..9}b
-a{b,c{d,e},{f,g}h}x{y,z
-a{b,c{d,e},{f,g}h}x{y,z\\}
-a{b,c{d,e},{f,g}h}x{y,z}
-a{b{c{d,e}f{x,y{{g}h
-a{b{c{d,e}f{x,y{}g}h
-a{b{c{d,e}f{x,y}}g}h
-a{b{c{d,e}f}g}h
-a{{x,y},z}b
-f{x,y{g,z}}h
-f{x,y{{g,z}}h
-f{x,y{{g,z}}h}
-f{x,y{{g}h
-f{x,y{{g}}h
-f{x,y{}g}h
-z{a,b{,c}d
-z{a,b},c}d
-{-01..5}
-{-05..100..5}
-{-05..100}
-{0..5..2}
-{0001..05..2}
-{0001..-5..2}
-{0001..-5..-2}
-{0001..5..-2}
-{01..5}
-{1..05}
-{1..05..3}
-{05..100}
-{0a..0z}
-{a,b\\}c,d}
-{a,b{c,d}
-{a,b}c,d}
-{a..F}
-{A..f}
-{a..Z}
-{A..z}
-{z..A}
-{Z..a}
-{a..F..2}
-{A..f..02}
-{a..Z..5}
-d{a..Z..5}b
-{A..z..10}
-{z..A..-2}
-{Z..a..20}
-{a{,b}
-{a},b}
-{x,y{,}g}
-{x,y{}g}
-{{a,b}
-{{a,b},c}
-{{a,b}c}
-{{a,b},}
-X{{a,b},}X
-{{a,b},}c
-{{a,b}.}
-{{a,b}}
-X{a..#}X
-# this next one is an empty string
-
-{-10..00}
-# Need to escape slashes in here for reasons i guess.
-{a,\\\\{a,b}c}
-{a,\\{a,b}c}
-a,\\{b,c}
-{-10.\\.00}
-#### bash tests/braces.tests
-# Note that some tests are edited out because some features of
-# bash are intentionally not supported in this brace expander.
-ff{c,b,a}
-f{d,e,f}g
-{l,n,m}xyz
-{abc\\,def}
-{abc}
-{x\\,y,\\{abc\\},trie}
-# not impementing back-ticks obviously
-# XXXX\\{`echo a b c | tr ' ' ','`\\}
-{}
-# We only ever have to worry about parsing a single argument,
-# not a command line, so spaces have a different meaning than bash.
-# { }
-}
-{
-abcd{efgh
-# spaces
-# foo {1,2} bar
-# not impementing back-ticks obviously
-# `zecho foo {1,2} bar`
-# $(zecho foo {1,2} bar)
-# ${var} is not a variable here, like it is in bash. omit.
-# foo{bar,${var}.}
-# foo{bar,${var}}
-# isaacs: skip quotes for now
-# "${var}"{x,y}
-# $var{x,y}
-# ${var}{x,y}
-# new sequence brace operators
-{1..10}
-# this doesn't work yet
-{0..10,braces}
-# but this does
-{{0..10},braces}
-x{{0..10},braces}y
-{3..3}
-x{3..3}y
-{10..1}
-{10..1}y
-x{10..1}y
-{a..f}
-{f..a}
-{a..A}
-{A..a}
-{f..f}
-# mixes are incorrectly-formed brace expansions
-{1..f}
-{f..1}
-# spaces
-# 0{1..9} {10..20}
-# do negative numbers work?
-{-1..-10}
-{-20..0}
-# weirdly-formed brace expansions -- fixed in post-bash-3.1
-a-{b{d,e}}-c
-a-{bdef-{g,i}-c
-# isaacs: skip quotes for now
-# {"klklkl"}{1,2,3}
-# isaacs: this is a valid test, though
-{klklkl}{1,2,3}
-# {"x,x"}
-{1..10..2}
-{-1..-10..2}
-{-1..-10..-2}
-{10..1..-2}
-{10..1..2}
-{1..20..2}
-{1..20..20}
-{100..0..5}
-{100..0..-5}
-{a..z}
-{a..z..2}
-{z..a..-2}
-# make sure brace expansion handles ints > 2**31 - 1 using intmax_t
-{2147483645..2147483649}
-# unwanted zero-padding -- fixed post-bash-4.0
-{10..0..2}
-{10..0..-2}
-{-50..-0..5}
-# bad
-{1..10.f}
-{1..ff}
-{1..10..ff}
-{1.20..2}
-{1..20..f2}
-{1..20..2f}
-{1..2f..2}
-{1..ff..2}
-{1..ff}
-{1..f}
-{1..0f}
-{1..10f}
-{1..10.f}
-{1..10.f}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js
deleted file mode 100644 (file)
index 3fcc185..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('ignores ${', function(t) {
-  t.deepEqual(expand('${1..3}'), ['${1..3}']);
-  t.deepEqual(expand('${a,b}${c,d}'), ['${a,b}${c,d}']);
-  t.deepEqual(expand('x${a,b}x${c,d}x'), ['x${a,b}x${c,d}x']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
deleted file mode 100644 (file)
index e429121..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('empty option', function(t) {
-  t.deepEqual(expand('-v{,,,,}'), [
-    '-v', '-v', '-v', '-v', '-v'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh
deleted file mode 100644 (file)
index e040e66..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-# Bash 4.3 because of arbitrary need to pick a single standard.
-
-if [ "${BASH_VERSINFO[0]}" != "4" ] || [ "${BASH_VERSINFO[1]}" != "3" ]; then
-  echo "this script requires bash 4.3" >&2
-  exit 1
-fi
-
-CDPATH= cd "$(dirname "$0")"
-
-js='require("./")(process.argv[1]).join(" ")'
-
-cat cases.txt | \
-  while read case; do
-    if [ "${case:0:1}" = "#" ]; then
-      continue;
-    fi;
-    b="$($BASH -c 'for c in '"$case"'; do echo ["$c"]; done')"
-    echo "$case"
-    echo -n "$b><><><><";
-  done > bash-results.txt
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js
deleted file mode 100644 (file)
index 8d434c2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('negative increment', function(t) {
-  t.deepEqual(expand('{3..1}'), ['3', '2', '1']);
-  t.deepEqual(expand('{10..8}'), ['10', '9', '8']);
-  t.deepEqual(expand('{10..08}'), ['10', '09', '08']);
-  t.deepEqual(expand('{c..a}'), ['c', 'b', 'a']);
-
-  t.deepEqual(expand('{4..0..2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{4..0..-2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{e..a..2}'), ['e', 'c', 'a']);
-
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/nested.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
deleted file mode 100644 (file)
index 0862dc5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('nested', function(t) {
-  t.deepEqual(expand('{a,b{1..3},c}'), [
-    'a', 'b1', 'b2', 'b3', 'c'
-  ]);
-  t.deepEqual(expand('{{A..Z},{a..z}}'),
-    'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')
-  );
-  t.deepEqual(expand('ppp{,config,oe{,conf}}'), [
-    'ppp', 'pppconfig', 'pppoe', 'pppoeconf'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/order.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/order.js
deleted file mode 100644 (file)
index c00ad15..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('order', function(t) {
-  t.deepEqual(expand('a{d,c,b}e'), [
-    'ade', 'ace', 'abe'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
deleted file mode 100644 (file)
index e415877..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('pad', function(t) {
-  t.deepEqual(expand('{9..11}'), [
-    '9', '10', '11'
-  ]);
-  t.deepEqual(expand('{09..11}'), [
-    '09', '10', '11'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js
deleted file mode 100644 (file)
index 3038fba..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('x and y of same type', function(t) {
-  t.deepEqual(expand('{a..9}'), ['{a..9}']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
deleted file mode 100644 (file)
index f73a957..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('numeric sequences', function(t) {
-  t.deepEqual(expand('a{1..2}b{2..3}c'), [
-    'a1b2c', 'a1b3c', 'a2b2c', 'a2b3c'
-  ]);
-  t.deepEqual(expand('{1..2}{2..3}'), [
-    '12', '13', '22', '23'
-  ]);
-  t.end();
-});
-
-test('numeric sequences with step count', function(t) {
-  t.deepEqual(expand('{0..8..2}'), [
-    '0', '2', '4', '6', '8'
-  ]);
-  t.deepEqual(expand('{1..8..2}'), [
-    '1', '3', '5', '7'
-  ]);
-  t.end();
-});
-
-test('numeric sequence with negative x / y', function(t) {
-  t.deepEqual(expand('{3..-2}'), [
-    '3', '2', '1', '0', '-1', '-2'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences', function(t) {
-  t.deepEqual(expand('1{a..b}2{b..c}3'), [
-    '1a2b3', '1a2c3', '1b2b3', '1b2c3'
-  ]);
-  t.deepEqual(expand('{a..b}{b..c}'), [
-    'ab', 'ac', 'bb', 'bc'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences with step count', function(t) {
-  t.deepEqual(expand('{a..k..2}'), [
-    'a', 'c', 'e', 'g', 'i', 'k'
-  ]);
-  t.deepEqual(expand('{b..k..2}'), [
-    'b', 'd', 'f', 'h', 'j'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/minimatch/package.json
deleted file mode 100644 (file)
index 8e2839e..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_id": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-g76hFYA+egl6eAIkJyh+23Yvr+0=",
-  "_location": "/grunt-standard/standard/eslint/minimatch",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "name": "minimatch",
-    "escapedName": "minimatch",
-    "rawSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/minimatch/issues"
-  },
-  "dependencies": {
-    "brace-expansion": "^1.0.0"
-  },
-  "description": "a glob matcher in javascript",
-  "devDependencies": {
-    "browserify": "^9.0.3",
-    "tap": ""
-  },
-  "engines": {
-    "node": "*"
-  },
-  "files": [
-    "minimatch.js",
-    "browser.js"
-  ],
-  "homepage": "https://github.com/isaacs/minimatch#readme",
-  "license": {
-    "type": "MIT",
-    "url": "http://github.com/isaacs/minimatch/raw/master/LICENSE"
-  },
-  "main": "minimatch.js",
-  "name": "minimatch",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/minimatch.git"
-  },
-  "scripts": {
-    "prepublish": "browserify -o browser.js -e minimatch.js --bare",
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.npmignore
deleted file mode 100644 (file)
index 9303c34..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules/
-npm-debug.log
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/.travis.yml
deleted file mode 100644 (file)
index c693a93..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-language: node_js
-node_js:
-  - 0.6
-  - 0.8
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/cmd.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/cmd.js
deleted file mode 100755 (executable)
index d95de15..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env node
-
-var mkdirp = require('../');
-var minimist = require('minimist');
-var fs = require('fs');
-
-var argv = minimist(process.argv.slice(2), {
-    alias: { m: 'mode', h: 'help' },
-    string: [ 'mode' ]
-});
-if (argv.help) {
-    fs.createReadStream(__dirname + '/usage.txt').pipe(process.stdout);
-    return;
-}
-
-var paths = argv._.slice();
-var mode = argv.mode ? parseInt(argv.mode, 8) : undefined;
-
-(function next () {
-    if (paths.length === 0) return;
-    var p = paths.shift();
-    
-    if (mode === undefined) mkdirp(p, cb)
-    else mkdirp(p, mode, cb)
-    
-    function cb (err) {
-        if (err) {
-            console.error(err.message);
-            process.exit(1);
-        }
-        else next();
-    }
-})();
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/usage.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/bin/usage.txt
deleted file mode 100644 (file)
index f952aa2..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-usage: mkdirp [DIR1,DIR2..] {OPTIONS}
-
-  Create each supplied directory including any necessary parent directories that
-  don't yet exist.
-  
-  If the directory already exists, do nothing.
-
-OPTIONS are:
-
-  -m, --mode   If a directory needs to be created, set the mode as an octal
-               permission string.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/examples/pow.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/examples/pow.js
deleted file mode 100644 (file)
index e692421..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-var mkdirp = require('mkdirp');
-
-mkdirp('/tmp/foo/bar/baz', function (err) {
-    if (err) console.error(err)
-    else console.log('pow!')
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/index.js
deleted file mode 100644 (file)
index a1742b2..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-var path = require('path');
-var fs = require('fs');
-
-module.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
-
-function mkdirP (p, opts, f, made) {
-    if (typeof opts === 'function') {
-        f = opts;
-        opts = {};
-    }
-    else if (!opts || typeof opts !== 'object') {
-        opts = { mode: opts };
-    }
-    
-    var mode = opts.mode;
-    var xfs = opts.fs || fs;
-    
-    if (mode === undefined) {
-        mode = 0777 & (~process.umask());
-    }
-    if (!made) made = null;
-    
-    var cb = f || function () {};
-    p = path.resolve(p);
-    
-    xfs.mkdir(p, mode, function (er) {
-        if (!er) {
-            made = made || p;
-            return cb(null, made);
-        }
-        switch (er.code) {
-            case 'ENOENT':
-                mkdirP(path.dirname(p), opts, function (er, made) {
-                    if (er) cb(er, made);
-                    else mkdirP(p, opts, cb, made);
-                });
-                break;
-
-            // In the case of any other error, just see if there's a dir
-            // there already.  If so, then hooray!  If not, then something
-            // is borked.
-            default:
-                xfs.stat(p, function (er2, stat) {
-                    // if the stat fails, then that's super weird.
-                    // let the original error be the failure reason.
-                    if (er2 || !stat.isDirectory()) cb(er, made)
-                    else cb(null, made);
-                });
-                break;
-        }
-    });
-}
-
-mkdirP.sync = function sync (p, opts, made) {
-    if (!opts || typeof opts !== 'object') {
-        opts = { mode: opts };
-    }
-    
-    var mode = opts.mode;
-    var xfs = opts.fs || fs;
-    
-    if (mode === undefined) {
-        mode = 0777 & (~process.umask());
-    }
-    if (!made) made = null;
-
-    p = path.resolve(p);
-
-    try {
-        xfs.mkdirSync(p, mode);
-        made = made || p;
-    }
-    catch (err0) {
-        switch (err0.code) {
-            case 'ENOENT' :
-                made = sync(path.dirname(p), opts, made);
-                sync(p, opts, made);
-                break;
-
-            // In the case of any other error, just see if there's a dir
-            // there already.  If so, then hooray!  If not, then something
-            // is borked.
-            default:
-                var stat;
-                try {
-                    stat = xfs.statSync(p);
-                }
-                catch (err1) {
-                    throw err0;
-                }
-                if (!stat.isDirectory()) throw err0;
-                break;
-        }
-    }
-
-    return made;
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/index.js
deleted file mode 100644 (file)
index 584f551..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-module.exports = function (args, opts) {
-    if (!opts) opts = {};
-    
-    var flags = { bools : {}, strings : {} };
-    
-    [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
-        flags.bools[key] = true;
-    });
-    
-    [].concat(opts.string).filter(Boolean).forEach(function (key) {
-        flags.strings[key] = true;
-    });
-    
-    var aliases = {};
-    Object.keys(opts.alias || {}).forEach(function (key) {
-        aliases[key] = [].concat(opts.alias[key]);
-        aliases[key].forEach(function (x) {
-            aliases[x] = [key].concat(aliases[key].filter(function (y) {
-                return x !== y;
-            }));
-        });
-    });
-    
-    var defaults = opts['default'] || {};
-    
-    var argv = { _ : [] };
-    Object.keys(flags.bools).forEach(function (key) {
-        setArg(key, defaults[key] === undefined ? false : defaults[key]);
-    });
-    
-    var notFlags = [];
-
-    if (args.indexOf('--') !== -1) {
-        notFlags = args.slice(args.indexOf('--')+1);
-        args = args.slice(0, args.indexOf('--'));
-    }
-
-    function setArg (key, val) {
-        var value = !flags.strings[key] && isNumber(val)
-            ? Number(val) : val
-        ;
-        setKey(argv, key.split('.'), value);
-        
-        (aliases[key] || []).forEach(function (x) {
-            setKey(argv, x.split('.'), value);
-        });
-    }
-    
-    for (var i = 0; i < args.length; i++) {
-        var arg = args[i];
-        
-        if (/^--.+=/.test(arg)) {
-            // Using [\s\S] instead of . because js doesn't support the
-            // 'dotall' regex modifier. See:
-            // http://stackoverflow.com/a/1068308/13216
-            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
-            setArg(m[1], m[2]);
-        }
-        else if (/^--no-.+/.test(arg)) {
-            var key = arg.match(/^--no-(.+)/)[1];
-            setArg(key, false);
-        }
-        else if (/^--.+/.test(arg)) {
-            var key = arg.match(/^--(.+)/)[1];
-            var next = args[i + 1];
-            if (next !== undefined && !/^-/.test(next)
-            && !flags.bools[key]
-            && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                setArg(key, next);
-                i++;
-            }
-            else if (/^(true|false)$/.test(next)) {
-                setArg(key, next === 'true');
-                i++;
-            }
-            else {
-                setArg(key, flags.strings[key] ? '' : true);
-            }
-        }
-        else if (/^-[^-]+/.test(arg)) {
-            var letters = arg.slice(1,-1).split('');
-            
-            var broken = false;
-            for (var j = 0; j < letters.length; j++) {
-                var next = arg.slice(j+2);
-                
-                if (next === '-') {
-                    setArg(letters[j], next)
-                    continue;
-                }
-                
-                if (/[A-Za-z]/.test(letters[j])
-                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
-                    setArg(letters[j], next);
-                    broken = true;
-                    break;
-                }
-                
-                if (letters[j+1] && letters[j+1].match(/\W/)) {
-                    setArg(letters[j], arg.slice(j+2));
-                    broken = true;
-                    break;
-                }
-                else {
-                    setArg(letters[j], flags.strings[letters[j]] ? '' : true);
-                }
-            }
-            
-            var key = arg.slice(-1)[0];
-            if (!broken && key !== '-') {
-                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
-                && !flags.bools[key]
-                && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                    setArg(key, args[i+1]);
-                    i++;
-                }
-                else if (args[i+1] && /true|false/.test(args[i+1])) {
-                    setArg(key, args[i+1] === 'true');
-                    i++;
-                }
-                else {
-                    setArg(key, flags.strings[key] ? '' : true);
-                }
-            }
-        }
-        else {
-            argv._.push(
-                flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
-            );
-        }
-    }
-    
-    Object.keys(defaults).forEach(function (key) {
-        if (!hasKey(argv, key.split('.'))) {
-            setKey(argv, key.split('.'), defaults[key]);
-            
-            (aliases[key] || []).forEach(function (x) {
-                setKey(argv, x.split('.'), defaults[key]);
-            });
-        }
-    });
-    
-    notFlags.forEach(function(key) {
-        argv._.push(key);
-    });
-
-    return argv;
-};
-
-function hasKey (obj, keys) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        o = (o[key] || {});
-    });
-
-    var key = keys[keys.length - 1];
-    return key in o;
-}
-
-function setKey (obj, keys, value) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        if (o[key] === undefined) o[key] = {};
-        o = o[key];
-    });
-    
-    var key = keys[keys.length - 1];
-    if (o[key] === undefined || typeof o[key] === 'boolean') {
-        o[key] = value;
-    }
-    else if (Array.isArray(o[key])) {
-        o[key].push(value);
-    }
-    else {
-        o[key] = [ o[key], value ];
-    }
-}
-
-function isNumber (x) {
-    if (typeof x === 'number') return true;
-    if (/^0x[0-9a-f]+$/i.test(x)) return true;
-    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
-}
-
-function longest (xs) {
-    return Math.max.apply(null, xs.map(function (x) { return x.length }));
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/package.json
deleted file mode 100644 (file)
index 1f92250..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-{
-  "_args": [
-    [
-      "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-  "_id": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
-  "_location": "/grunt-standard/standard/eslint/mkdirp/minimist",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimist@https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-    "name": "minimist",
-    "escapedName": "minimist",
-    "rawSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/mkdirp"
-  ],
-  "_spec": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/minimist/issues"
-  },
-  "description": "parse argument options",
-  "devDependencies": {
-    "tap": "~0.4.0",
-    "tape": "~1.0.4"
-  },
-  "homepage": "https://github.com/substack/minimist",
-  "keywords": [
-    "argv",
-    "getopt",
-    "parser",
-    "optimist"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "minimist",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/minimist.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/6..latest",
-      "ff/5",
-      "firefox/latest",
-      "chrome/10",
-      "chrome/latest",
-      "safari/5.1",
-      "safari/latest",
-      "opera/12"
-    ]
-  },
-  "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/readme.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/readme.markdown
deleted file mode 100644 (file)
index c256353..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-# minimist
-
-parse argument options
-
-This module is the guts of optimist's argument parser without all the
-fanciful decoration.
-
-[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)
-
-[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)
-
-# example
-
-``` js
-var argv = require('minimist')(process.argv.slice(2));
-console.dir(argv);
-```
-
-```
-$ node example/parse.js -a beep -b boop
-{ _: [], a: 'beep', b: 'boop' }
-```
-
-```
-$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
-{ _: [ 'foo', 'bar', 'baz' ],
-  x: 3,
-  y: 4,
-  n: 5,
-  a: true,
-  b: true,
-  c: true,
-  beep: 'boop' }
-```
-
-# methods
-
-``` js
-var parseArgs = require('minimist')
-```
-
-## var argv = parseArgs(args, opts={})
-
-Return an argument object `argv` populated with the array arguments from `args`.
-
-`argv._` contains all the arguments that didn't have an option associated with
-them.
-
-Numeric-looking arguments will be returned as numbers unless `opts.string` or
-`opts.boolean` is set for that argument name.
-
-Any arguments after `'--'` will not be parsed and will end up in `argv._`.
-
-options can be:
-
-* `opts.string` - a string or array of strings argument names to always treat as
-strings
-* `opts.boolean` - a string or array of strings to always treat as booleans
-* `opts.alias` - an object mapping string names to strings or arrays of string
-argument names to use as aliases
-* `opts.default` - an object mapping string argument names to default values
-
-# install
-
-With [npm](https://npmjs.org) do:
-
-```
-npm install minimist
-```
-
-# license
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dash.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dash.js
deleted file mode 100644 (file)
index 8b034b9..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('-', function (t) {
-    t.plan(5);
-    t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] });
-    t.deepEqual(parse([ '-' ]), { _: [ '-' ] });
-    t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] });
-    t.deepEqual(
-        parse([ '-b', '-' ], { boolean: 'b' }),
-        { b: true, _: [ '-' ] }
-    );
-    t.deepEqual(
-        parse([ '-s', '-' ], { string: 's' }),
-        { s: '-', _: [] }
-    );
-});
-
-test('-a -- b', function (t) {
-    t.plan(3);
-    t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-    t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-    t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/default_bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/default_bool.js
deleted file mode 100644 (file)
index f0041ee..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-var test = require('tape');
-var parse = require('../');
-
-test('boolean default true', function (t) {
-    var argv = parse([], {
-        boolean: 'sometrue',
-        default: { sometrue: true }
-    });
-    t.equal(argv.sometrue, true);
-    t.end();
-});
-
-test('boolean default false', function (t) {
-    var argv = parse([], {
-        boolean: 'somefalse',
-        default: { somefalse: false }
-    });
-    t.equal(argv.somefalse, false);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dotted.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/dotted.js
deleted file mode 100644 (file)
index ef0ae34..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('dotted alias', function (t) {
-    var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
-    t.equal(argv.a.b, 22);
-    t.equal(argv.aa.bb, 22);
-    t.end();
-});
-
-test('dotted default', function (t) {
-    var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
-    t.equal(argv.a.b, 11);
-    t.equal(argv.aa.bb, 11);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse.js
deleted file mode 100644 (file)
index 8a90646..0000000
+++ /dev/null
@@ -1,318 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('parse args', function (t) {
-    t.deepEqual(
-        parse([ '--no-moo' ]),
-        { moo : false, _ : [] },
-        'no'
-    );
-    t.deepEqual(
-        parse([ '-v', 'a', '-v', 'b', '-v', 'c' ]),
-        { v : ['a','b','c'], _ : [] },
-        'multi'
-    );
-    t.end();
-});
-test('comprehensive', function (t) {
-    t.deepEqual(
-        parse([
-            '--name=meowmers', 'bare', '-cats', 'woo',
-            '-h', 'awesome', '--multi=quux',
-            '--key', 'value',
-            '-b', '--bool', '--no-meep', '--multi=baz',
-            '--', '--not-a-flag', 'eek'
-        ]),
-        {
-            c : true,
-            a : true,
-            t : true,
-            s : 'woo',
-            h : 'awesome',
-            b : true,
-            bool : true,
-            key : 'value',
-            multi : [ 'quux', 'baz' ],
-            meep : false,
-            name : 'meowmers',
-            _ : [ 'bare', '--not-a-flag', 'eek' ]
-        }
-    );
-    t.end();
-});
-
-test('nums', function (t) {
-    var argv = parse([
-        '-x', '1234',
-        '-y', '5.67',
-        '-z', '1e7',
-        '-w', '10f',
-        '--hex', '0xdeadbeef',
-        '789'
-    ]);
-    t.deepEqual(argv, {
-        x : 1234,
-        y : 5.67,
-        z : 1e7,
-        w : '10f',
-        hex : 0xdeadbeef,
-        _ : [ 789 ]
-    });
-    t.deepEqual(typeof argv.x, 'number');
-    t.deepEqual(typeof argv.y, 'number');
-    t.deepEqual(typeof argv.z, 'number');
-    t.deepEqual(typeof argv.w, 'string');
-    t.deepEqual(typeof argv.hex, 'number');
-    t.deepEqual(typeof argv._[0], 'number');
-    t.end();
-});
-
-test('flag boolean', function (t) {
-    var argv = parse([ '-t', 'moo' ], { boolean: 't' });
-    t.deepEqual(argv, { t : true, _ : [ 'moo' ] });
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-});
-
-test('flag boolean value', function (t) {
-    var argv = parse(['--verbose', 'false', 'moo', '-t', 'true'], {
-        boolean: [ 't', 'verbose' ],
-        default: { verbose: true }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: true,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-});
-
-test('flag boolean default false', function (t) {
-    var argv = parse(['moo'], {
-        boolean: ['t', 'verbose'],
-        default: { verbose: false, t: false }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: false,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-
-});
-
-test('boolean groups', function (t) {
-    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
-        boolean: ['x','y','z']
-    });
-    
-    t.deepEqual(argv, {
-        x : true,
-        y : false,
-        z : true,
-        _ : [ 'one', 'two', 'three' ]
-    });
-    
-    t.deepEqual(typeof argv.x, 'boolean');
-    t.deepEqual(typeof argv.y, 'boolean');
-    t.deepEqual(typeof argv.z, 'boolean');
-    t.end();
-});
-
-test('newlines in params' , function (t) {
-    var args = parse([ '-s', "X\nX" ])
-    t.deepEqual(args, { _ : [], s : "X\nX" });
-    
-    // reproduce in bash:
-    // VALUE="new
-    // line"
-    // node program.js --s="$VALUE"
-    args = parse([ "--s=X\nX" ])
-    t.deepEqual(args, { _ : [], s : "X\nX" });
-    t.end();
-});
-
-test('strings' , function (t) {
-    var s = parse([ '-s', '0001234' ], { string: 's' }).s;
-    t.equal(s, '0001234');
-    t.equal(typeof s, 'string');
-    
-    var x = parse([ '-x', '56' ], { string: 'x' }).x;
-    t.equal(x, '56');
-    t.equal(typeof x, 'string');
-    t.end();
-});
-
-test('stringArgs', function (t) {
-    var s = parse([ '  ', '  ' ], { string: '_' })._;
-    t.same(s.length, 2);
-    t.same(typeof s[0], 'string');
-    t.same(s[0], '  ');
-    t.same(typeof s[1], 'string');
-    t.same(s[1], '  ');
-    t.end();
-});
-
-test('empty strings', function(t) {
-    var s = parse([ '-s' ], { string: 's' }).s;
-    t.equal(s, '');
-    t.equal(typeof s, 'string');
-
-    var str = parse([ '--str' ], { string: 'str' }).str;
-    t.equal(str, '');
-    t.equal(typeof str, 'string');
-
-    var letters = parse([ '-art' ], {
-        string: [ 'a', 't' ]
-    });
-
-    t.equal(letters.a, '');
-    t.equal(letters.r, true);
-    t.equal(letters.t, '');
-
-    t.end();
-});
-
-
-test('slashBreak', function (t) {
-    t.same(
-        parse([ '-I/foo/bar/baz' ]),
-        { I : '/foo/bar/baz', _ : [] }
-    );
-    t.same(
-        parse([ '-xyz/foo/bar/baz' ]),
-        { x : true, y : true, z : '/foo/bar/baz', _ : [] }
-    );
-    t.end();
-});
-
-test('alias', function (t) {
-    var argv = parse([ '-f', '11', '--zoom', '55' ], {
-        alias: { z: 'zoom' }
-    });
-    t.equal(argv.zoom, 55);
-    t.equal(argv.z, argv.zoom);
-    t.equal(argv.f, 11);
-    t.end();
-});
-
-test('multiAlias', function (t) {
-    var argv = parse([ '-f', '11', '--zoom', '55' ], {
-        alias: { z: [ 'zm', 'zoom' ] }
-    });
-    t.equal(argv.zoom, 55);
-    t.equal(argv.z, argv.zoom);
-    t.equal(argv.z, argv.zm);
-    t.equal(argv.f, 11);
-    t.end();
-});
-
-test('nested dotted objects', function (t) {
-    var argv = parse([
-        '--foo.bar', '3', '--foo.baz', '4',
-        '--foo.quux.quibble', '5', '--foo.quux.o_O',
-        '--beep.boop'
-    ]);
-    
-    t.same(argv.foo, {
-        bar : 3,
-        baz : 4,
-        quux : {
-            quibble : 5,
-            o_O : true
-        }
-    });
-    t.same(argv.beep, { boop : true });
-    t.end();
-});
-
-test('boolean and alias with chainable api', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp',  'derp' ];
-    var opts = {
-        herp: { alias: 'h', boolean: true }
-    };
-    var aliasedArgv = parse(aliased, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var propertyArgv = parse(regular, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-test('boolean and alias with options hash', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp', 'derp' ];
-    var opts = {
-        alias: { 'h': 'herp' },
-        boolean: 'herp'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected);
-    t.end();
-});
-
-test('boolean and alias using explicit true', function (t) {
-    var aliased = [ '-h', 'true' ];
-    var regular = [ '--herp',  'true' ];
-    var opts = {
-        alias: { h: 'herp' },
-        boolean: 'h'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ ]
-    };
-
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-// regression, see https://github.com/substack/node-optimist/issues/71
-test('boolean and --x=true', function(t) {
-    var parsed = parse(['--boool', '--other=true'], {
-        boolean: 'boool'
-    });
-
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'true');
-
-    parsed = parse(['--boool', '--other=false'], {
-        boolean: 'boool'
-    });
-    
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'false');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js
deleted file mode 100644 (file)
index 21851b0..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('parse with modifier functions' , function (t) {
-    t.plan(1);
-    
-    var argv = parse([ '-b', '123' ], { boolean: 'b' });
-    t.deepEqual(argv, { b: true, _: ['123'] });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/package.json
deleted file mode 100644 (file)
index ee587ea..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-{
-  "_args": [
-    [
-      "mkdirp@https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "mkdirp@https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-  "_id": "mkdirp@https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=",
-  "_location": "/grunt-standard/standard/eslint/mkdirp",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "mkdirp@https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-    "name": "mkdirp",
-    "escapedName": "mkdirp",
-    "rawSpec": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bin": {
-    "mkdirp": "bin/cmd.js"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-mkdirp/issues"
-  },
-  "dependencies": {
-    "minimist": "0.0.8"
-  },
-  "description": "Recursively mkdir, like `mkdir -p`",
-  "devDependencies": {
-    "mock-fs": "~2.2.0",
-    "tap": "~0.4.0"
-  },
-  "homepage": "https://github.com/substack/node-mkdirp#readme",
-  "keywords": [
-    "mkdir",
-    "directory"
-  ],
-  "license": "MIT",
-  "main": "./index",
-  "name": "mkdirp",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/substack/node-mkdirp.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/readme.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/readme.markdown
deleted file mode 100644 (file)
index 3cc1315..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-# mkdirp
-
-Like `mkdir -p`, but in node.js!
-
-[![build status](https://secure.travis-ci.org/substack/node-mkdirp.png)](http://travis-ci.org/substack/node-mkdirp)
-
-# example
-
-## pow.js
-
-```js
-var mkdirp = require('mkdirp');
-    
-mkdirp('/tmp/foo/bar/baz', function (err) {
-    if (err) console.error(err)
-    else console.log('pow!')
-});
-```
-
-Output
-
-```
-pow!
-```
-
-And now /tmp/foo/bar/baz exists, huzzah!
-
-# methods
-
-```js
-var mkdirp = require('mkdirp');
-```
-
-## mkdirp(dir, opts, cb)
-
-Create a new directory and any necessary subdirectories at `dir` with octal
-permission string `opts.mode`. If `opts` is a non-object, it will be treated as
-the `opts.mode`.
-
-If `opts.mode` isn't specified, it defaults to `0777 & (~process.umask())`.
-
-`cb(err, made)` fires with the error or the first directory `made`
-that had to be created, if any.
-
-You can optionally pass in an alternate `fs` implementation by passing in
-`opts.fs`. Your implementation should have `opts.fs.mkdir(path, mode, cb)` and
-`opts.fs.stat(path, cb)`.
-
-## mkdirp.sync(dir, opts)
-
-Synchronously create a new directory and any necessary subdirectories at `dir`
-with octal permission string `opts.mode`. If `opts` is a non-object, it will be
-treated as the `opts.mode`.
-
-If `opts.mode` isn't specified, it defaults to `0777 & (~process.umask())`.
-
-Returns the first directory that had to be created, if any.
-
-You can optionally pass in an alternate `fs` implementation by passing in
-`opts.fs`. Your implementation should have `opts.fs.mkdirSync(path, mode)` and
-`opts.fs.statSync(path)`.
-
-# usage
-
-This package also ships with a `mkdirp` command.
-
-```
-usage: mkdirp [DIR1,DIR2..] {OPTIONS}
-
-  Create each supplied directory including any necessary parent directories that
-  don't yet exist.
-  
-  If the directory already exists, do nothing.
-
-OPTIONS are:
-
-  -m, --mode   If a directory needs to be created, set the mode as an octal
-               permission string.
-
-```
-
-# install
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install mkdirp
-```
-
-to get the library, or
-
-```
-npm install -g mkdirp
-```
-
-to get the command.
-
-# license
-
-MIT
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/chmod.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/chmod.js
deleted file mode 100644 (file)
index 520dcb8..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var mkdirp = require('../').mkdirp;
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-var ps = [ '', 'tmp' ];
-
-for (var i = 0; i < 25; i++) {
-    var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    ps.push(dir);
-}
-
-var file = ps.join('/');
-
-test('chmod-pre', function (t) {
-    var mode = 0744
-    mkdirp(file, mode, function (er) {
-        t.ifError(er, 'should not error');
-        fs.stat(file, function (er, stat) {
-            t.ifError(er, 'should exist');
-            t.ok(stat && stat.isDirectory(), 'should be directory');
-            t.equal(stat && stat.mode & 0777, mode, 'should be 0744');
-            t.end();
-        });
-    });
-});
-
-test('chmod', function (t) {
-    var mode = 0755
-    mkdirp(file, mode, function (er) {
-        t.ifError(er, 'should not error');
-        fs.stat(file, function (er, stat) {
-            t.ifError(er, 'should exist');
-            t.ok(stat && stat.isDirectory(), 'should be directory');
-            t.end();
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/clobber.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/clobber.js
deleted file mode 100644 (file)
index 0eb7099..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-var mkdirp = require('../').mkdirp;
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-var ps = [ '', 'tmp' ];
-
-for (var i = 0; i < 25; i++) {
-    var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    ps.push(dir);
-}
-
-var file = ps.join('/');
-
-// a file in the way
-var itw = ps.slice(0, 3).join('/');
-
-
-test('clobber-pre', function (t) {
-    console.error("about to write to "+itw)
-    fs.writeFileSync(itw, 'I AM IN THE WAY, THE TRUTH, AND THE LIGHT.');
-
-    fs.stat(itw, function (er, stat) {
-        t.ifError(er)
-        t.ok(stat && stat.isFile(), 'should be file')
-        t.end()
-    })
-})
-
-test('clobber', function (t) {
-    t.plan(2);
-    mkdirp(file, 0755, function (err) {
-        t.ok(err);
-        t.equal(err.code, 'ENOTDIR');
-        t.end();
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/mkdirp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/mkdirp.js
deleted file mode 100644 (file)
index 3b624dd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('woo', function (t) {
-    t.plan(5);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    
-    var file = '/tmp/' + [x,y,z].join('/');
-    
-    mkdirp(file, 0755, function (err) {
-        t.ifError(err);
-        exists(file, function (ex) {
-            t.ok(ex, 'file created');
-            fs.stat(file, function (err, stat) {
-                t.ifError(err);
-                t.equal(stat.mode & 0777, 0755);
-                t.ok(stat.isDirectory(), 'target not a directory');
-            })
-        })
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs.js
deleted file mode 100644 (file)
index f1fbeca..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var test = require('tap').test;
-var mockfs = require('mock-fs');
-
-test('opts.fs', function (t) {
-    t.plan(5);
-    
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    
-    var file = '/beep/boop/' + [x,y,z].join('/');
-    var xfs = mockfs.fs();
-    
-    mkdirp(file, { fs: xfs, mode: 0755 }, function (err) {
-        t.ifError(err);
-        xfs.exists(file, function (ex) {
-            t.ok(ex, 'created file');
-            xfs.stat(file, function (err, stat) {
-                t.ifError(err);
-                t.equal(stat.mode & 0777, 0755);
-                t.ok(stat.isDirectory(), 'target not a directory');
-            });
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/opts_fs_sync.js
deleted file mode 100644 (file)
index 224b506..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var test = require('tap').test;
-var mockfs = require('mock-fs');
-
-test('opts.fs sync', function (t) {
-    t.plan(4);
-    
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    
-    var file = '/beep/boop/' + [x,y,z].join('/');
-    var xfs = mockfs.fs();
-    
-    mkdirp.sync(file, { fs: xfs, mode: 0755 });
-    xfs.exists(file, function (ex) {
-        t.ok(ex, 'created file');
-        xfs.stat(file, function (err, stat) {
-            t.ifError(err);
-            t.equal(stat.mode & 0777, 0755);
-            t.ok(stat.isDirectory(), 'target not a directory');
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm.js
deleted file mode 100644 (file)
index 2c97590..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('async perm', function (t) {
-    t.plan(5);
-    var file = '/tmp/' + (Math.random() * (1<<30)).toString(16);
-    
-    mkdirp(file, 0755, function (err) {
-        t.ifError(err);
-        exists(file, function (ex) {
-            t.ok(ex, 'file created');
-            fs.stat(file, function (err, stat) {
-                t.ifError(err);
-                t.equal(stat.mode & 0777, 0755);
-                t.ok(stat.isDirectory(), 'target not a directory');
-            })
-        })
-    });
-});
-
-test('async root perm', function (t) {
-    mkdirp('/tmp', 0755, function (err) {
-        if (err) t.fail(err);
-        t.end();
-    });
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/perm_sync.js
deleted file mode 100644 (file)
index 327e54b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('sync perm', function (t) {
-    t.plan(4);
-    var file = '/tmp/' + (Math.random() * (1<<30)).toString(16) + '.json';
-    
-    mkdirp.sync(file, 0755);
-    exists(file, function (ex) {
-        t.ok(ex, 'file created');
-        fs.stat(file, function (err, stat) {
-            t.ifError(err);
-            t.equal(stat.mode & 0777, 0755);
-            t.ok(stat.isDirectory(), 'target not a directory');
-        });
-    });
-});
-
-test('sync root perm', function (t) {
-    t.plan(3);
-    
-    var file = '/tmp';
-    mkdirp.sync(file, 0755);
-    exists(file, function (ex) {
-        t.ok(ex, 'file created');
-        fs.stat(file, function (err, stat) {
-            t.ifError(err);
-            t.ok(stat.isDirectory(), 'target not a directory');
-        })
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/race.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/race.js
deleted file mode 100644 (file)
index 7c295f4..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-var mkdirp = require('../').mkdirp;
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('race', function (t) {
-    t.plan(6);
-    var ps = [ '', 'tmp' ];
-    
-    for (var i = 0; i < 25; i++) {
-        var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-        ps.push(dir);
-    }
-    var file = ps.join('/');
-    
-    var res = 2;
-    mk(file, function () {
-        if (--res === 0) t.end();
-    });
-    
-    mk(file, function () {
-        if (--res === 0) t.end();
-    });
-    
-    function mk (file, cb) {
-        mkdirp(file, 0755, function (err) {
-            t.ifError(err);
-            exists(file, function (ex) {
-                t.ok(ex, 'file created');
-                fs.stat(file, function (err, stat) {
-                    t.ifError(err);
-                    t.equal(stat.mode & 0777, 0755);
-                    t.ok(stat.isDirectory(), 'target not a directory');
-                    if (cb) cb();
-                });
-            })
-        });
-    }
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/rel.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/rel.js
deleted file mode 100644 (file)
index d1f175c..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('rel', function (t) {
-    t.plan(5);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    
-    var cwd = process.cwd();
-    process.chdir('/tmp');
-    
-    var file = [x,y,z].join('/');
-    
-    mkdirp(file, 0755, function (err) {
-        t.ifError(err);
-        exists(file, function (ex) {
-            t.ok(ex, 'file created');
-            fs.stat(file, function (err, stat) {
-                t.ifError(err);
-                process.chdir(cwd);
-                t.equal(stat.mode & 0777, 0755);
-                t.ok(stat.isDirectory(), 'target not a directory');
-            })
-        })
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return.js
deleted file mode 100644 (file)
index bce68e5..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('return value', function (t) {
-    t.plan(4);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-
-    var file = '/tmp/' + [x,y,z].join('/');
-
-    // should return the first dir created.
-    // By this point, it would be profoundly surprising if /tmp didn't
-    // already exist, since every other test makes things in there.
-    mkdirp(file, function (err, made) {
-        t.ifError(err);
-        t.equal(made, '/tmp/' + x);
-        mkdirp(file, function (err, made) {
-          t.ifError(err);
-          t.equal(made, null);
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/return_sync.js
deleted file mode 100644 (file)
index 7c222d3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('return value', function (t) {
-    t.plan(2);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-
-    var file = '/tmp/' + [x,y,z].join('/');
-
-    // should return the first dir created.
-    // By this point, it would be profoundly surprising if /tmp didn't
-    // already exist, since every other test makes things in there.
-    // Note that this will throw on failure, which will fail the test.
-    var made = mkdirp.sync(file);
-    t.equal(made, '/tmp/' + x);
-
-    // making the same file again should have no effect.
-    made = mkdirp.sync(file);
-    t.equal(made, null);
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/root.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/root.js
deleted file mode 100644 (file)
index 97ad7a2..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('root', function (t) {
-    // '/' on unix, 'c:/' on windows.
-    var file = path.resolve('/');
-
-    mkdirp(file, 0755, function (err) {
-        if (err) throw err
-        fs.stat(file, function (er, stat) {
-            if (er) throw er
-            t.ok(stat.isDirectory(), 'target is a directory');
-            t.end();
-        })
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/sync.js
deleted file mode 100644 (file)
index 88fa432..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('sync', function (t) {
-    t.plan(4);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-
-    var file = '/tmp/' + [x,y,z].join('/');
-
-    try {
-        mkdirp.sync(file, 0755);
-    } catch (err) {
-        t.fail(err);
-        return t.end();
-    }
-
-    exists(file, function (ex) {
-        t.ok(ex, 'file created');
-        fs.stat(file, function (err, stat) {
-            t.ifError(err);
-            t.equal(stat.mode & 0777, 0755);
-            t.ok(stat.isDirectory(), 'target not a directory');
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask.js
deleted file mode 100644 (file)
index 82c393a..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('implicit mode from umask', function (t) {
-    t.plan(5);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    
-    var file = '/tmp/' + [x,y,z].join('/');
-    
-    mkdirp(file, function (err) {
-        t.ifError(err);
-        exists(file, function (ex) {
-            t.ok(ex, 'file created');
-            fs.stat(file, function (err, stat) {
-                t.ifError(err);
-                t.equal(stat.mode & 0777, 0777 & (~process.umask()));
-                t.ok(stat.isDirectory(), 'target not a directory');
-            });
-        })
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask_sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/mkdirp/test/umask_sync.js
deleted file mode 100644 (file)
index e537fbe..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var exists = fs.exists || path.exists;
-var test = require('tap').test;
-
-test('umask sync modes', function (t) {
-    t.plan(4);
-    var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-    var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
-
-    var file = '/tmp/' + [x,y,z].join('/');
-
-    try {
-        mkdirp.sync(file);
-    } catch (err) {
-        t.fail(err);
-        return t.end();
-    }
-
-    exists(file, function (ex) {
-        t.ok(ex, 'file created');
-        fs.stat(file, function (err, stat) {
-            t.ifError(err);
-            t.equal(stat.mode & 0777, (0777 & (~process.umask())));
-            t.ok(stat.isDirectory(), 'target not a directory');
-        });
-    });
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/object-assign/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/object-assign/package.json
deleted file mode 100644 (file)
index d5f710c..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-{
-  "_args": [
-    [
-      "object-assign@https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "object-assign@https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-  "_id": "object-assign@https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-+DCbCQg7ASYezj73Nz8rV7jdcEI=",
-  "_location": "/grunt-standard/standard/eslint/object-assign",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "object-assign@https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-    "name": "object-assign",
-    "escapedName": "object-assign",
-    "rawSpec": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/object-assign/issues"
-  },
-  "description": "ES6 Object.assign() ponyfill",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/object-assign#readme",
-  "keywords": [
-    "object",
-    "assign",
-    "extend",
-    "properties",
-    "es6",
-    "ecmascript",
-    "harmony",
-    "ponyfill",
-    "prollyfill",
-    "polyfill",
-    "shim",
-    "browser"
-  ],
-  "license": "MIT",
-  "name": "object-assign",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/object-assign.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/LICENSE
deleted file mode 100644 (file)
index 525b118..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) George Zahariev
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/.travis.yml
deleted file mode 100644 (file)
index d523c5f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-language: node_js
-node_js:
-  - 0.4
-  - 0.6
-  - 0.8
-  - 0.10
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/LICENSE
deleted file mode 100644 (file)
index c38f840..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) 2012, 2013 Thorsten Lorenz <thlorenz@gmx.de>
-Copyright (c) 2012 James Halliday <mail@substack.net>
-Copyright (c) 2009 Thomas Robinson <280north.com>
-
-This software is released under the MIT license:
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/README.markdown
deleted file mode 100644 (file)
index eb69a83..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-deep-is
-==========
-
-Node's `assert.deepEqual() algorithm` as a standalone module. Exactly like
-[deep-equal](https://github.com/substack/node-deep-equal) except for the fact that `deepEqual(NaN, NaN) === true`.
-
-This module is around [5 times faster](https://gist.github.com/2790507)
-than wrapping `assert.deepEqual()` in a `try/catch`.
-
-[![browser support](http://ci.testling.com/thlorenz/deep-is.png)](http://ci.testling.com/thlorenz/deep-is)
-
-[![build status](https://secure.travis-ci.org/thlorenz/deep-is.png)](http://travis-ci.org/thlorenz/deep-is)
-
-example
-=======
-
-``` js
-var equal = require('deep-is');
-console.dir([
-    equal(
-        { a : [ 2, 3 ], b : [ 4 ] },
-        { a : [ 2, 3 ], b : [ 4 ] }
-    ),
-    equal(
-        { x : 5, y : [6] },
-        { x : 5, y : 6 }
-    )
-]);
-```
-
-methods
-=======
-
-var deepIs = require('deep-is')
-
-deepIs(a, b)
----------------
-
-Compare objects `a` and `b`, returning whether they are equal according to a
-recursive equality algorithm.
-
-install
-=======
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install deep-is
-```
-
-test
-====
-
-With [npm](http://npmjs.org) do:
-
-```
-npm test
-```
-
-license
-=======
-
-Copyright (c) 2012, 2013 Thorsten Lorenz <thlorenz@gmx.de>
-Copyright (c) 2012 James Halliday <mail@substack.net>
-
-Derived largely from node's assert module, which has the copyright statement:
-
-Copyright (c) 2009 Thomas Robinson <280north.com>
-
-Released under the MIT license, see LICENSE for details.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/example/cmp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/example/cmp.js
deleted file mode 100644 (file)
index 67014b8..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-var equal = require('../');
-console.dir([
-    equal(
-        { a : [ 2, 3 ], b : [ 4 ] },
-        { a : [ 2, 3 ], b : [ 4 ] }
-    ),
-    equal(
-        { x : 5, y : [6] },
-        { x : 5, y : 6 }
-    )
-]);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/index.js
deleted file mode 100644 (file)
index 506fe27..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-var pSlice = Array.prototype.slice;
-var Object_keys = typeof Object.keys === 'function'
-    ? Object.keys
-    : function (obj) {
-        var keys = [];
-        for (var key in obj) keys.push(key);
-        return keys;
-    }
-;
-
-var deepEqual = module.exports = function (actual, expected) {
-  // enforce Object.is +0 !== -0
-  if (actual === 0 && expected === 0) {
-    return areZerosEqual(actual, expected);
-
-  // 7.1. All identical values are equivalent, as determined by ===.
-  } else if (actual === expected) {
-    return true;
-
-  } else if (actual instanceof Date && expected instanceof Date) {
-    return actual.getTime() === expected.getTime();
-
-  } else if (isNumberNaN(actual)) {
-    return isNumberNaN(expected);
-
-  // 7.3. Other pairs that do not both pass typeof value == 'object',
-  // equivalence is determined by ==.
-  } else if (typeof actual != 'object' && typeof expected != 'object') {
-    return actual == expected;
-
-  // 7.4. For all other Object pairs, including Array objects, equivalence is
-  // determined by having the same number of owned properties (as verified
-  // with Object.prototype.hasOwnProperty.call), the same set of keys
-  // (although not necessarily the same order), equivalent values for every
-  // corresponding key, and an identical 'prototype' property. Note: this
-  // accounts for both named and indexed properties on Arrays.
-  } else {
-    return objEquiv(actual, expected);
-  }
-};
-
-function isUndefinedOrNull(value) {
-  return value === null || value === undefined;
-}
-
-function isArguments(object) {
-  return Object.prototype.toString.call(object) == '[object Arguments]';
-}
-
-function isNumberNaN(value) {
-  // NaN === NaN -> false
-  return typeof value == 'number' && value !== value;
-}
-
-function areZerosEqual(zeroA, zeroB) {
-  // (1 / +0|0) -> Infinity, but (1 / -0) -> -Infinity and (Infinity !== -Infinity)
-  return (1 / zeroA) === (1 / zeroB);
-}
-
-function objEquiv(a, b) {
-  if (isUndefinedOrNull(a) || isUndefinedOrNull(b))
-    return false;
-
-  // an identical 'prototype' property.
-  if (a.prototype !== b.prototype) return false;
-  //~~~I've managed to break Object.keys through screwy arguments passing.
-  //   Converting to array solves the problem.
-  if (isArguments(a)) {
-    if (!isArguments(b)) {
-      return false;
-    }
-    a = pSlice.call(a);
-    b = pSlice.call(b);
-    return deepEqual(a, b);
-  }
-  try {
-    var ka = Object_keys(a),
-        kb = Object_keys(b),
-        key, i;
-  } catch (e) {//happens when one is a string literal and the other isn't
-    return false;
-  }
-  // having the same number of owned properties (keys incorporates
-  // hasOwnProperty)
-  if (ka.length != kb.length)
-    return false;
-  //the same set of keys (although not necessarily the same order),
-  ka.sort();
-  kb.sort();
-  //~~~cheap key test
-  for (i = ka.length - 1; i >= 0; i--) {
-    if (ka[i] != kb[i])
-      return false;
-  }
-  //equivalent values for every corresponding key, and
-  //~~~possibly expensive deep test
-  for (i = ka.length - 1; i >= 0; i--) {
-    key = ka[i];
-    if (!deepEqual(a[key], b[key])) return false;
-  }
-  return true;
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/package.json
deleted file mode 100644 (file)
index 7bf2f27..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-{
-  "_args": [
-    [
-      "deep-is@https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "deep-is@https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-  "_id": "deep-is@https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
-  "_location": "/grunt-standard/standard/eslint/optionator/deep-is",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "deep-is@https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-    "name": "deep-is",
-    "escapedName": "deep-is",
-    "rawSpec": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-    "saveSpec": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-    "fetchSpec": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator"
-  ],
-  "_spec": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Thorsten Lorenz",
-    "email": "thlorenz@gmx.de",
-    "url": "http://thlorenz.com"
-  },
-  "bugs": {
-    "url": "https://github.com/thlorenz/deep-is/issues"
-  },
-  "description": "node's assert.deepEqual algorithm except for NaN being equal to NaN",
-  "devDependencies": {
-    "tape": "~1.0.2"
-  },
-  "directories": {
-    "lib": ".",
-    "example": "example",
-    "test": "test"
-  },
-  "homepage": "https://github.com/thlorenz/deep-is#readme",
-  "keywords": [
-    "equality",
-    "equal",
-    "compare"
-  ],
-  "license": {
-    "type": "MIT",
-    "url": "https://github.com/thlorenz/deep-is/blob/master/LICENSE"
-  },
-  "main": "index.js",
-  "name": "deep-is",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/thlorenz/deep-is.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": {
-      "ie": [
-        6,
-        7,
-        8,
-        9
-      ],
-      "ff": [
-        3.5,
-        10,
-        15
-      ],
-      "chrome": [
-        10,
-        22
-      ],
-      "safari": [
-        5.1
-      ],
-      "opera": [
-        12
-      ]
-    }
-  },
-  "version": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/NaN.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/NaN.js
deleted file mode 100644 (file)
index ddaa5a7..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var test = require('tape');
-var equal = require('../');
-
-test('NaN and 0 values', function (t) {
-    t.ok(equal(NaN, NaN));
-    t.notOk(equal(0, NaN));
-    t.ok(equal(0, 0));
-    t.notOk(equal(0, 1));
-    t.end();
-});
-
-
-test('nested NaN values', function (t) {
-    t.ok(equal([ NaN, 1, NaN ], [ NaN, 1, NaN ]));
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/cmp.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/cmp.js
deleted file mode 100644 (file)
index 3071013..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var test = require('tape');
-var equal = require('../');
-
-test('equal', function (t) {
-    t.ok(equal(
-        { a : [ 2, 3 ], b : [ 4 ] },
-        { a : [ 2, 3 ], b : [ 4 ] }
-    ));
-    t.end();
-});
-
-test('not equal', function (t) {
-    t.notOk(equal(
-        { x : 5, y : [6] },
-        { x : 5, y : 6 }
-    ));
-    t.end();
-});
-
-test('nested nulls', function (t) {
-    t.ok(equal([ null, null, null ], [ null, null, null ]));
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/neg-vs-pos-0.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/deep-is/test/neg-vs-pos-0.js
deleted file mode 100644 (file)
index ac26130..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var equal = require('../');
-
-test('0 values', function (t) {
-    t.ok(equal( 0,  0), ' 0 ===  0');
-    t.ok(equal( 0, +0), ' 0 === +0');
-    t.ok(equal(+0, +0), '+0 === +0');
-    t.ok(equal(-0, -0), '-0 === -0');
-
-    t.notOk(equal(-0,  0), '-0 !==  0');
-    t.notOk(equal(-0, +0), '-0 !== +0');
-
-    t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.npmignore
deleted file mode 100644 (file)
index 0cc2c66..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-*.iml
-.idea/
-node_modules/
-npm-debug.log
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/.travis.yml
deleted file mode 100644 (file)
index cc060cb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-language: node_js
-
-node_js:
-  - 0.10
-  - 0.11
-
-before_script:
-  - "npm install -g grunt-cli"
-  - "npm install"
-
-script:
-  - "npm run build"
-
-notifications:
-  email:
-    - ram@hiddentao.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/CONTRIBUTING.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/CONTRIBUTING.md
deleted file mode 100644 (file)
index 6662682..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# Contribute to fast-levenshtein
-
-This guide guidelines for those wishing to contribute to fast-levenshtein.
-
-## Contributor license agreement
-
-By submitting code as an individual or as an entity you agree that your code is [licensed the same as fast-levenshtein](https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md).
-
-## Issues and pull requests
-
-Issues and merge requests should be in English and contain appropriate language for audiences of all ages.
-
-We will only accept a merge requests which meets the following criteria:
-
-* Includes proper tests and all tests pass (unless it contains a test exposing a bug in existing code)
-* Can be merged without problems (if not please use: `git rebase master`)
-* Does not break any existing functionality
-* Fixes one specific issue or implements one specific feature (do not combine things, send separate merge requests if needed)
-* Keeps the code base clean and well structured
-* Contains functionality we think other users will benefit from too
-* Doesn't add unnessecary configuration options since they complicate future changes
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/Gruntfile.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/Gruntfile.js
deleted file mode 100644 (file)
index 6e7b3b3..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-module.exports = function(grunt) {
-
-  grunt.initConfig({
-    pkg: grunt.file.readJSON('package.json'),
-
-    mochaTest: {
-      files: ['test/*.js']
-    },
-    mochaTestConfig: {
-      options: {
-        reporter: 'spec',
-        ui: 'exports'
-      }
-    },
-
-    jshint: {
-      options: {
-        "bitwise": false,
-        "camelcase": false,
-        "curly": false,
-        "eqeqeq": true,
-        "forin": true,
-        "immed": true,
-        "indent": 2,
-        "latedef": false,
-        "newcap": true,
-        "noarg": true,
-        "noempty": false,
-        "nonew": true,
-        "plusplus": false,
-        "quotmark": false,
-        "undef": true,
-        "unused": true,
-        "strict": true,
-        "trailing": true,
-
-        "boss": true,
-        "laxcomma": true,
-        "multistr": true,
-        "sub": true,
-        "supernew": true,
-
-        "browser": true,
-        "node": true,
-               "worker": true,
-
-        "predef": [
-            'define', 'require'
-        ]
-      },
-      files: ['levenshtein.js']
-    },
-
-    uglify: {
-      options: {
-        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %>. Copyright <%= pkg.author %> */\n'
-      },
-      build: {
-        src: 'levenshtein.js',
-        dest: 'levenshtein.min.js'
-      }
-    },
-
-    benchmarkConfig: {
-      speed: {
-        src: ['benchmark/speed.js']
-      }
-    },
-  });
-
-  require('load-grunt-tasks')(grunt);
-  grunt.renameTask('benchmark', 'benchmarkConfig');
-
-  grunt.registerTask('build', ['jshint', 'uglify', 'mochaTest']);
-
-  grunt.registerTask('default', ['build']);
-
-  grunt.registerTask('benchmark', ['npm-install:levenshtein-edit-distance:levenshtein:natural:levenshtein-component:levenshtein-deltas', 'benchmarkConfig']);
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/LICENSE.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/LICENSE.md
deleted file mode 100644 (file)
index 6212406..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-(MIT License)
-
-Copyright (c) 2013 [Ramesh Nair](http://www.hiddentao.com/)
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/README.md
deleted file mode 100644 (file)
index 2a917a7..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-# fast-levenshtein - Levenshtein algorithm in Javascript
-
-[![Build Status](https://secure.travis-ci.org/hiddentao/fast-levenshtein.png)](http://travis-ci.org/hiddentao/fast-levenshtein)
-
-An efficient Javascript implementation of the [Levenshtein algorithm](http://en.wikipedia.org/wiki/Levenshtein_distance) with asynchronous callback support.
-
-## Features
-
-* Works in node.js and in the browser.
-* Better performance than other implementations by not needing to store the whole matrix ([more info](http://www.codeproject.com/Articles/13525/Fast-memory-efficient-Levenshtein-algorithm)).
-* Provides synchronous and asynchronous versions of the algorithm.
-* Asynchronous version is almost as fast as the synchronous version for small strings and can also provide progress updates.
-* Comprehensive test suite and performance benchmark.
-* Small: <1 KB minified and gzipped
-
-## Installation
-
-### node.js
-
-Install using [npm](http://npmjs.org/):
-
-```bash
-$ npm install fast-levenshtein
-```
-
-### Browser
-
-Using bower:
-
-```bash
-$ bower install fast-levenshtein
-```
-
-If you are not using any module loader system then the API will then be accessible via the `window.Levenshtein` object.
-
-## Examples
-
-**Synchronous**
-
-```javascript
-var levenshtein = require('fast-levenshtein');
-
-var distance = levenshtein.get('back', 'book');   // 2
-var distance = levenshtein.get('我愛你', '我叫你');   // 1
-```
-
-**Asynchronous**
-
-```javascript
-var levenshtein = require('fast-levenshtein');
-
-levenshtein.getAsync('back', 'book', function (err, distance) {
-  // err is null unless an error was thrown
-  // distance equals 2
-});
-```
-
-**Asynchronous with progress updates**
-
-```javascript
-var levenshtein = require('fast-levenshtein');
-
-var hugeText1 = fs.readFileSync(...);
-var hugeText2 = fs.readFileSync(...);
-
-levenshtein.getAsync(hugeText1, hugeText2, function (err, distance) {
-  // process the results as normal
-}, {
-  progress: function(percentComplete) {
-    console.log(percentComplete + ' % completed so far...');
-  }
-);
-```
-
-## Building and Testing
-
-To build the code and run the tests:
-
-```bash
-$ npm install -g grunt-cli
-$ npm install
-$ npm run build
-```
-
-## Performance
-
-_Thanks to [Titus Wormer](https://github.com/wooorm) for [encouraging me](https://github.com/hiddentao/fast-levenshtein/issues/1) to do this._
-
-Benchmarked against other node.js levenshtein distance modules (on Macbook Air 2012, Core i7, 8GB RAM):
-
-```bash
-Running suite Implementation comparison [benchmark/speed.js]...
->> levenshtein-edit-distance x 234 ops/sec ±3.02% (73 runs sampled)
->> levenshtein-component x 422 ops/sec ±4.38% (83 runs sampled)
->> levenshtein-deltas x 283 ops/sec ±3.83% (78 runs sampled)
->> natural x 255 ops/sec ±0.76% (88 runs sampled)
->> levenshtein x 180 ops/sec ±3.55% (86 runs sampled)
->> fast-levenshtein x 1,792 ops/sec ±2.72% (95 runs sampled)
-Benchmark done.
-Fastest test is fast-levenshtein at 4.2x faster than levenshtein-component
-```
-
-You can run this benchmark yourself by doing:
-
-```bash
-$ npm install -g grunt-cli
-$ npm install
-$ npm run build
-$ npm run benchmark
-```
-
-## Contributing
-
-If you wish to submit a pull request please update and/or create new tests for any changes you make and ensure the grunt build passes.
-
-See [CONTRIBUTING.md](https://github.com/hiddentao/fast-levenshtein/blob/master/CONTRIBUTING.md) for details.
-
-## License
-
-MIT - see [LICENSE.md](https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/benchmark/speed.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/benchmark/speed.js
deleted file mode 100644 (file)
index 2564430..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-var fastLevenshtein = require('../levenshtein.min').get,
-  levenshtein = require('levenshtein'),
-  levenshteinEditDistance = require('levenshtein-edit-distance'),
-  levenshteinComponent = require('levenshtein-component'),
-  levenshteinDeltas = require('levenshtein-deltas'),
-  natural = require('natural').LevenshteinDistance;
-
-
-
-/* The first 100 words from Letterpress: https://github.com/atebits/Words */
-source = Array(11).join([
-    'aa',
-    'aah',
-    'aahed',
-    'aahing',
-    'aahs',
-    'aal',
-    'aalii',
-    'aaliis',
-    'aals',
-    'aardvark',
-    'aardvarks',
-    'aardwolf',
-    'aardwolves',
-    'aargh',
-    'aarrgh',
-    'aarrghh',
-    'aarti',
-    'aartis',
-    'aas',
-    'aasvogel',
-    'aasvogels',
-    'ab',
-    'aba',
-    'abac',
-    'abaca',
-    'abacas',
-    'abaci',
-    'aback',
-    'abacs',
-    'abacterial',
-    'abactinal',
-    'abactinally',
-    'abactor',
-    'abactors',
-    'abacus',
-    'abacuses',
-    'abaft',
-    'abaka',
-    'abakas',
-    'abalone',
-    'abalones',
-    'abamp',
-    'abampere',
-    'abamperes',
-    'abamps',
-    'aband',
-    'abanded',
-    'abanding',
-    'abandon',
-    'abandoned',
-    'abandonedly',
-    'abandonee',
-    'abandonees',
-    'abandoner',
-    'abandoners',
-    'abandoning',
-    'abandonment',
-    'abandonments',
-    'abandons',
-    'abandonware',
-    'abandonwares',
-    'abands',
-    'abapical',
-    'abas',
-    'abase',
-    'abased',
-    'abasedly',
-    'abasement',
-    'abasements',
-    'abaser',
-    'abasers',
-    'abases',
-    'abash',
-    'abashed',
-    'abashedly',
-    'abashes',
-    'abashing',
-    'abashless',
-    'abashment',
-    'abashments',
-    'abasia',
-    'abasias',
-    'abasing',
-    'abask',
-    'abatable',
-    'abate',
-    'abated',
-    'abatement',
-    'abatements',
-    'abater',
-    'abaters',
-    'abates',
-    'abating',
-    'abatis',
-    'abatises',
-    'abator',
-    'abators',
-    'abattis',
-    'abattises',
-    'abattoir',
-    'abattoirs'
-].join('|')).split('|');
-
-
-
-/**
- * The actual test loop.
- * @param  {Function} fn Levenshtein distance function.
- */
-var loop = function(fn) {
-  var iterator = -1,
-    previousValue = '',
-    value,
-    dist;
-
-  while (value = source[++iterator]) {
-    dist = fn(previousValue, value);
-    previousValue = value;
-  }
-};
-
-
-/** @type {Object} Test config */
-module.exports = {
-  name: 'Implementation comparison',
-  onComplete: function() {
-    console.log('Benchmark done.');
-  },
-  tests: [
-    {
-      name: 'levenshtein-edit-distance',
-      fn: function() {
-        loop(levenshteinEditDistance);
-      }
-    },
-    {
-      name: 'levenshtein-component',
-      fn: function() {
-        loop(levenshteinComponent);
-      }
-    },
-    {
-      name: 'levenshtein-deltas',
-      fn: function() {
-        loop(function(v1,v2) {
-            return new levenshteinDeltas.Lev(v1,v2).distance();
-        });
-      }
-    },
-    {
-      name: 'natural',
-      fn: function() {
-        loop(natural);
-      }
-    },
-    {
-      name: 'levenshtein',
-      fn: function() {
-        loop(levenshtein);
-      }
-    },
-    {
-      name: 'fast-levenshtein',
-      fn: function() {
-        loop(fastLevenshtein);
-      }
-    },
-  ]
-};
-
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/bower.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/bower.json
deleted file mode 100644 (file)
index 1670393..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-{
-  "name": "fast-levenshtein",
-  "version": "1.0.6",
-  "homepage": "https://github.com/hiddentao/fast-levenshtein",
-  "authors": [
-    "Ramesh Nair <ram@hiddentao.com>"
-  ],
-  "description": "Efficient implementation of Levenshtein algorithm with asynchronous callback support",
-  "main": "levenshtein.js",
-  "moduleType": [
-    "amd",
-    "globals",
-    "node"
-  ],
-  "keywords": [
-    "levenshtein",
-    "distance",
-    "string"
-  ],
-  "license": "MIT",
-  "ignore": [
-    "**/.*",
-    "node_modules",
-    "bower_components",
-    "test",
-    "tests",
-    "benchmark",
-    "Gruntfile.js"
-  ]
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.js
deleted file mode 100644 (file)
index 0028f40..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-(function() {
-  'use strict';
-
-  /**
-   * Extend an Object with another Object's properties.
-   *
-   * The source objects are specified as additional arguments.
-   *
-   * @param dst Object the object to extend.
-   *
-   * @return Object the final object.
-   */
-  var _extend = function(dst) {
-    var sources = Array.prototype.slice.call(arguments, 1);
-    for (var i=0; i<sources.length; ++i) {
-      var src = sources[i];
-      for (var p in src) {
-        if (src.hasOwnProperty(p)) dst[p] = src[p];
-      }
-    }
-    return dst;
-  };
-
-  /**
-   * Based on the algorithm at http://en.wikipedia.org/wiki/Levenshtein_distance.
-   */
-  var Levenshtein = {
-    /**
-     * Calculate levenshtein distance of the two strings.
-     *
-     * @param str1 String the first string.
-     * @param str2 String the second string.
-     * @return Integer the levenshtein distance (0 and above).
-     */
-    get: function(str1, str2) {
-      // base cases
-      if (str1 === str2) return 0;
-      if (str1.length === 0) return str2.length;
-      if (str2.length === 0) return str1.length;
-
-      // two rows
-      var prevRow  = new Array(str2.length + 1),
-          curCol, nextCol, i, j, tmp;
-
-      // initialise previous row
-      for (i=0; i<prevRow.length; ++i) {
-        prevRow[i] = i;
-      }
-
-      // calculate current row distance from previous row
-      for (i=0; i<str1.length; ++i) {
-        nextCol = i + 1;
-
-        for (j=0; j<str2.length; ++j) {
-          curCol = nextCol;
-
-          // substution
-          nextCol = prevRow[j] + ( (str1.charAt(i) === str2.charAt(j)) ? 0 : 1 );
-          // insertion
-          tmp = curCol + 1;
-          if (nextCol > tmp) {
-            nextCol = tmp;
-          }
-          // deletion
-          tmp = prevRow[j + 1] + 1;
-          if (nextCol > tmp) {
-            nextCol = tmp;
-          }
-
-          // copy current col value into previous (in preparation for next iteration)
-          prevRow[j] = curCol;
-        }
-
-        // copy last col value into previous (in preparation for next iteration)
-        prevRow[j] = nextCol;
-      }
-
-      return nextCol;
-    },
-
-    /**
-     * Asynchronously calculate levenshtein distance of the two strings.
-     *
-     * @param str1 String the first string.
-     * @param str2 String the second string.
-     * @param cb Function callback function with signature: function(Error err, int distance)
-     * @param [options] Object additional options.
-     * @param [options.progress] Function progress callback with signature: function(percentComplete)
-     */
-    getAsync: function(str1, str2, cb, options) {
-      options = _extend({}, {
-        progress: null
-      }, options);
-
-      // base cases
-      if (str1 === str2) return cb(null, 0);
-      if (str1.length === 0) return cb(null, str2.length);
-      if (str2.length === 0) return cb(null, str1.length);
-
-      // two rows
-      var prevRow  = new Array(str2.length + 1),
-          curCol, nextCol,
-          i, j, tmp,
-          startTime, currentTime;
-
-      // initialise previous row
-      for (i=0; i<prevRow.length; ++i) {
-        prevRow[i] = i;
-      }
-
-      nextCol = 1;
-      i = 0;
-      j = -1;
-
-      var __calculate = function() {
-        // reset timer
-        startTime = new Date().valueOf();
-        currentTime = startTime;
-
-        // keep going until one second has elapsed
-        while (currentTime - startTime < 1000) {
-          // reached end of current row?
-          if (str2.length <= (++j)) {
-            // copy current into previous (in preparation for next iteration)
-            prevRow[j] = nextCol;
-
-            // if already done all chars
-            if (str1.length <= (++i)) {
-              return cb(null, nextCol);
-            }
-            // else if we have more left to do
-            else {
-              nextCol = i + 1;
-              j = 0;
-            }
-          }
-
-          // calculation
-          curCol = nextCol;
-
-          // substution
-          nextCol = prevRow[j] + ( (str1.charAt(i) === str2.charAt(j)) ? 0 : 1 );
-          // insertion
-          tmp = curCol + 1;
-          if (nextCol > tmp) {
-            nextCol = tmp;
-          }
-          // deletion
-          tmp = prevRow[j + 1] + 1;
-          if (nextCol > tmp) {
-            nextCol = tmp;
-          }
-
-          // copy current into previous (in preparation for next iteration)
-          prevRow[j] = curCol;
-
-          // get current time
-          currentTime = new Date().valueOf();
-        }
-
-        // send a progress update?
-        if (null !== options.progress) {
-          try {
-            options.progress.call(null, (i * 100.0/ str1.length));
-          } catch (err) {
-            return cb('Progress callback: ' + err.toString());
-          }
-        }
-
-        // next iteration
-        setTimeout(__calculate(), 0);
-      };
-
-      __calculate();
-    }
-
-  };
-
-  // amd
-  if (typeof define !== "undefined" && define !== null && define.amd) {
-    define(function() {
-      return Levenshtein;
-    });
-  }
-  // commonjs
-  else if (typeof module !== "undefined" && module !== null) {
-    module.exports = Levenshtein;
-  }
-  // web worker
-  else if (typeof self !== "undefined" && typeof self.postMessage === 'function' && typeof self.importScripts === 'function') {
-    self.Levenshtein = Levenshtein;
-  }
-  // browser main thread
-  else if (typeof window !== "undefined" && window !== null) {
-    window.Levenshtein = Levenshtein;
-  }
-}());
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.min.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/levenshtein.min.js
deleted file mode 100644 (file)
index 94d89ee..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! fast-levenshtein 2014-12-17. Copyright Ramesh Nair <ram@hiddentao.com> (http://www.hiddentao.com/) */
-!function(){"use strict";var a=function(a){for(var b=Array.prototype.slice.call(arguments,1),c=0;c<b.length;++c){var d=b[c];for(var e in d)d.hasOwnProperty(e)&&(a[e]=d[e])}return a},b={get:function(a,b){if(a===b)return 0;if(0===a.length)return b.length;if(0===b.length)return a.length;var c,d,e,f,g,h=new Array(b.length+1);for(e=0;e<h.length;++e)h[e]=e;for(e=0;e<a.length;++e){for(d=e+1,f=0;f<b.length;++f)c=d,d=h[f]+(a.charAt(e)===b.charAt(f)?0:1),g=c+1,d>g&&(d=g),g=h[f+1]+1,d>g&&(d=g),h[f]=c;h[f]=d}return d},getAsync:function(b,c,d,e){if(e=a({},{progress:null},e),b===c)return d(null,0);if(0===b.length)return d(null,c.length);if(0===c.length)return d(null,b.length);var f,g,h,i,j,k,l,m=new Array(c.length+1);for(h=0;h<m.length;++h)m[h]=h;g=1,h=0,i=-1;var n=function(){for(k=(new Date).valueOf(),l=k;1e3>l-k;){if(c.length<=++i){if(m[i]=g,b.length<=++h)return d(null,g);g=h+1,i=0}f=g,g=m[i]+(b.charAt(h)===c.charAt(i)?0:1),j=f+1,g>j&&(g=j),j=m[i+1]+1,g>j&&(g=j),m[i]=f,l=(new Date).valueOf()}if(null!==e.progress)try{e.progress.call(null,100*h/b.length)}catch(a){return d("Progress callback: "+a.toString())}setTimeout(n(),0)};n()}};"undefined"!=typeof define&&null!==define&&define.amd?define(function(){return b}):"undefined"!=typeof module&&null!==module?module.exports=b:"undefined"!=typeof self&&"function"==typeof self.postMessage&&"function"==typeof self.importScripts?self.Levenshtein=b:"undefined"!=typeof window&&null!==window&&(window.Levenshtein=b)}();
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/package.json
deleted file mode 100644 (file)
index 52a9b01..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "fast-levenshtein@https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "fast-levenshtein@https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-  "_id": "fast-levenshtein@https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-O+2xhOOflcsNiJKGiOax7jJzRGo=",
-  "_location": "/grunt-standard/standard/eslint/optionator/fast-levenshtein",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "fast-levenshtein@https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-    "name": "fast-levenshtein",
-    "escapedName": "fast-levenshtein",
-    "rawSpec": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-    "saveSpec": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-    "fetchSpec": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator"
-  ],
-  "_spec": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Ramesh Nair",
-    "email": "ram@hiddentao.com",
-    "url": "http://www.hiddentao.com/"
-  },
-  "bugs": {
-    "url": "https://github.com/hiddentao/fast-levenshtein/issues"
-  },
-  "description": "Efficient implementation of Levenshtein algorithm with asynchronous callback support",
-  "devDependencies": {
-    "chai": "~1.5.0",
-    "grunt": "~0.4.1",
-    "grunt-benchmark": "~0.2.0",
-    "grunt-contrib-jshint": "~0.4.3",
-    "grunt-contrib-uglify": "~0.2.0",
-    "grunt-mocha-test": "~0.2.2",
-    "grunt-npm-install": "~0.1.0",
-    "load-grunt-tasks": "~0.6.0",
-    "lodash": "~1.2.0",
-    "mocha": "~1.9.0"
-  },
-  "homepage": "https://github.com/hiddentao/fast-levenshtein#readme",
-  "keywords": [
-    "levenshtein",
-    "distance",
-    "string"
-  ],
-  "license": "MIT",
-  "main": "levenshtein.js",
-  "name": "fast-levenshtein",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/hiddentao/fast-levenshtein.git"
-  },
-  "scripts": {
-    "benchmark": "grunt benchmark",
-    "build": "grunt build"
-  },
-  "version": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.6.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/mocha.opts b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/mocha.opts
deleted file mode 100644 (file)
index a8ccfb4..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
---ui exports
---reporter spec
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/tests.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/tests.js
deleted file mode 100644 (file)
index 54b9222..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-var _ = require('lodash'),
-    chai = require('chai'),
-    fs = require('fs'),
-    levenshtein = require('../levenshtein.min');
-
-var expect = chai.expect,
-    assert = chai.assert;
-
-
-/**
- * Create test functions.
- * @return Object
- */
-var createTests = function(str1, str2, expectedLength, options) {
-  options = _.extend({}, {
-    description: null
-  }, options);
-
-  if (!options.description) {
-    options.description = (0 === str1.length ? '(empty)' : str1) + ' <-> ' + (0 === str2.length ? '(empty)' : str2);
-  }
-
-  var ret = {};
-
-  ret["SYNC:\t" + options.description] = function() {
-    expect(levenshtein.get(str1, str2)).to.eql(expectedLength);
-  };
-
-  ret["ASYNC:\t" + options.description] = function(done) {
-    levenshtein.getAsync(str1, str2, function(err, distance) {
-      expect(err).to.be.null;
-      expect(distance).to.eql(expectedLength);
-
-      done();
-    });
-  };
-
-  return ret;
-};
-
-
-// ----- Basic tests ----- //
-
-(function() {
-
-  var tests = {},
-      str = 'hello',
-      str1 = str,
-      str2 = str,
-      i;
-
-  // equal strings
-  _.extend(tests, createTests('hello', 'hello', 0));
-
-  // inserts
-  for (i=0; i<=str.length; ++i) {
-    str1 = str.substr(0,i);
-    str2 = str;
-
-    _.extend(tests, createTests(str1, str2, str.length - i));
-  }
-
-  // deletes
-  for (i=str.length-1; i>=0; --i) {
-    str1 = str;
-    str2 = str.substr(0,i);
-
-    _.extend(tests, createTests(str1, str2, str.length - i));
-  }
-
-  // substitutions
-  _.extend(tests, createTests("a",   "b", 1 ));
-  _.extend(tests, createTests("ab",  "ac", 1 ));
-  _.extend(tests, createTests("ac",  "bc",  1 ));
-  _.extend(tests, createTests("abc", "axc", 1 ));
-  _.extend(tests, createTests("xabxcdxxefxgx", "1ab2cd34ef5g6", 6 ));
-
-  // many ops
-  _.extend(tests, createTests('xabxcdxxefxgx', 'abcdefg', 6));
-  _.extend(tests, createTests('javawasneat', 'scalaisgreat', 7));
-  _.extend(tests, createTests("example", "samples", 3));
-  _.extend(tests, createTests("sturgeon", "urgently", 6 ));
-  _.extend(tests, createTests("levenshtein", "frankenstein", 6 ));
-  _.extend(tests, createTests("distance", "difference", 5 ));
-
-  // non-latin
-  _.extend(tests, createTests('因為我是中國人所以我會說中文', '因為我是英國人所以我會說英文', 2, {
-    description: 'non-latin'
-  }));
-
-  // long text
-  _.extend(tests, createTests(
-      'Morbi interdum ultricies neque varius condimentum. Donec volutpat turpis interdum metus ultricies vulputate. Duis ultricies rhoncus sapien, sit amet fermentum risus imperdiet vitae. Ut et lectus',
-      'Duis erat dolor, cursus in tincidunt a, lobortis in odio. Cras magna sem, pharetra et iaculis quis, faucibus quis tellus. Suspendisse dapibus sapien in justo cursus',
-      143,
-      {
-        description: 'long text'
-      }
-  ));
-
-  exports['Basic'] = tests;
-})();
-
-// ------ Asynchronous tests ----- //
-
-var text1 = fs.readFileSync(__dirname + '/text1.txt', 'utf-8'),
-    text2 = fs.readFileSync(__dirname + '/text2.txt', 'utf-8');
-
-exports['Async'] = {
-  'no progress callback': function(done) {
-    this.timeout(20000);
-
-    var startTime = new Date().valueOf();
-
-    levenshtein.getAsync(text1, text2, function(err, distance) {
-      var timeElapsed = new Date().valueOf() - startTime;
-
-      expect(err).to.be.null;
-      expect(distance).to.eql(194);
-
-      console.log(timeElapsed + ' ms');
-
-      done();
-    });
-  },
-  'with progress callback': function(done) {
-    this.timeout(20000);
-
-    var percents = [];
-    var progress = function(percent) {
-      percents.push(percent);
-    };
-
-    var startTime = new Date().valueOf();
-
-    levenshtein.getAsync(text1, text2, function(err, distance) {
-      var timeElapsed = new Date().valueOf() - startTime;
-
-      expect(err).to.be.null;
-      expect(distance).to.eql(194);
-
-      console.log(timeElapsed + ' ms, ' + percents.length + ' progress updates');
-
-      expect(0 < percents.length).to.be.true;
-
-      // check percentages
-      var lastPercent = 0;
-      _.each(percents, function(percent) {
-        expect(100 >= percent);
-        expect(percent > lastPercent);
-        lastPercent = percent;
-      });
-
-      done();
-    }, {
-      progress: progress
-    });
-  },
-  'progress callback error': function(done) {
-    levenshtein.getAsync(text1 + text2, text2 + text1, function(err) {
-      expect(err.toString()).to.be.eql('Progress callback: Error: Bla bla');
-
-      done();
-    }, {
-      progress: function() {
-        throw new Error('Bla bla');
-      }
-    });
-  }
-};
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text1.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text1.txt
deleted file mode 100644 (file)
index 4833682..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Duis mollis rhoncus turpis. Proin ut nunc eget urna molestie dictum. Cras mollis nibh quis eros faucibus posuere vehicula diam rutrum. Morbi mattis orci vel ante dignissim sollicitudin. Aenean quis enim orci. Integer vehicula elementum porta. Nullam massa mauris, ornare eget ullamcorper eget, consequat at dolor. Integer cursus pellentesque velit in semper. Donec sem turpis, tristique vitae egestas nec, varius sit amet ipsum. Nullam scelerisque est eu arcu vulputate varius. Integer vel gravida leo. Suspendisse blandit vehicula neque, non porttitor eros adipiscing non. Curabitur egestas pulvinar sapien ac imperdiet. Ut ac purus sit amet magna sollicitudin cursus non vel eros. In vel nibh eget libero mattis volutpat nec vulputate quam. Vestibulum commodo ante id magna cursus tristique. Integer rutrum diam sit amet nulla placerat ornare. Quisque nec felis lacus. In lorem mauris, lobortis sit amet sodales non, sollicitudin vitae odio. Nam a dui est, venenatis iaculis purus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In in sollicitudin urna. Praesent dapibus ligula sed lacus pulvinar sit amet pellentesque enim tincidunt. Vivamus feugiat, sapien vitae convallis consectetur, justo ligula semper quam, mollis dapibus lorem odio sit amet justo. Duis ut leo vel turpis cursus tempor. Donec condimentum convallis lacus at feugiat. Aliquam erat volutpat. Etiam auctor risus dolor, in tempor nibh. Nulla interdum, magna eget suscipit aliquet, enim arcu aliquet nunc, vel molestie est sem ac turpis. Ut et convallis diam. Integer malesuada eleifend eros non sollicitudin. In ac sem eget purus iaculis sollicitudin. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse ultrices nulla sit amet sapien fringilla eleifend. Integer eget lectus a augue convallis dignissim sit amet scelerisque odio. Duis velit nisl, mollis a adipiscing eget, suscipit in quam. Sed id lacus et justo dapibus dapibus vestibulum gravida massa. Duis euismod luctus tempor. Nam venenatis gravida rutrum. Etiam id aliquet est. Integer ante arcu, viverra sit amet placerat sit amet, posuere in est. Cras eleifend ultricies urna, ut euismod quam euismod quis. Cras pellentesque nulla et ante molestie pulvinar. Duis malesuada bibendum arcu, id imperdiet enim egestas eget. Sed blandit iaculis enim vel adipiscing. Donec dui quam, tristique non tincidunt sed, interdum luctus ante. Etiam eget nisl id est hendrerit egestas. Vestibulum tempor justo magna, non sagittis felis. Vivamus nec nibh porta nibh cursus luctus suscipit ut nibh. Aenean mollis molestie justo, non ornare mi mollis id. Vestibulum massa neque, mattis eget pulvinar et, tincidunt in magna. Nunc vitae dapibus turpis. Nullam bibendum vehicula odio sed viverra. Donec laoreet, lectus sit amet viverra scelerisque, mi enim fermentum tellus, quis consequat arcu felis in ante. Donec non felis non nisl tincidunt ultricies sit amet nec mi. Maecenas sodales, lorem vel volutpat cursus, nisi tortor pulvinar eros, in pharetra mauris neque sit amet nulla. Nulla ligula turpis, egestas in imperdDuis mollis rhoncus turpis. Proin ut nunc eget urna molestie dictum. Cras mollis nibh quis eros faucibus posuere vehicula diam rutrum. Morbi mattis orci vel ante dignissim sollicitudin. Aenean quis enim orci. Integer vehicula elementum porta. Nullam massa mauris, ornare eget ullamcorper eget, consequat at dolor. Integer cursus pellentesque velit in semper. Donec sem turpis, tristique vitae egestas nec, varius sit amet ipsum. Nullam scelerisque est eu arcu vulputate varius. Integer vel gravida leo. Suspendisse blandit vehicula neque, non porttitor eros adipiscing non. Curabitur egestas pulvinar sapien ac imperdiet. Ut ac purus sit amet magna sollicitudin cursus non vel eros. In vel nibh eget libero mattis volutpat nec vulputate quam. Vestibulum commodo ante id magna cursus tristique. Integer rutrum diam sit amet nulla placerat ornare. Quisque nec felis lacus. In lorem mauris, lobortis sit amet sodales non, sollicitudin vitae odio. Nam a dui est, venenatis iaculis purus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In in sollicitudin urna. Praesent dapibus ligula sed lacus pulvinar sit amet pellentesque enim tincidunt. Vivamus feugiat, sapien vitae convallis consectetur, justo ligula semper quam, mollis dapibus lorem odio sit amet justo. Duis ut leo vel turpis cursus tempor. Donec condimentum convallis lacus at feugiat. Aliquam erat volutpat. Etiam auctor risus dolor, in tempor nibh. Nulla interdum, magna eget suscipit aliquet, enim arcu aliquet nunc, vel molestie est sem ac turpis. Ut et convallis diam. Integer malesuada eleifend eros non sollicitudin. In ac sem eget purus iaculis sollicitudin. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse ultrices nulla sit amet sapien fringilla eleifend. Integer eget lectus a augue convallis dignissim sit amet scelerisque odio. Duis velit nisl, mollis a adipiscing eget, suscipit in quam. Sed id lacus et justo dapibus dapibus vestibulum gravida massa. Duis euismod luctus tempor. Nam venenatis gravida rutrum. Etiam id aliquet est. Integer ante arcu, viverra sit amet placerat sit amet, posuere in est. Cras eleifend ultricies urna, ut euismod quam euismod quis. Cras pellentesque nulla et ante molestie pulvinar. Duis malesuada bibendum arcu, id imperdiet enim egestas eget. Sed blandit iaculis enim vel adipiscing. Donec dui quam, tristique non tincidunt sed, interdum luctus ante. Etiam eget nisl id est hendrerit egestas. Vestibulum tempor justo magna, non sagittis felis. Vivamus nec nibh porta nibh cursus luctus suscipit ut nibh. Aenean mollis molestie justo, non ornare mi mollis id. Vestibulum massa neque, mattis eget pulvinar et, tincidunt in magna. Nunc vitae dapibus turpis. Nullam bibendum vehicula odio sed viverra. Donec laoreet, lectus sit amet viverra scelerisque, mi enim fermentum tellus, quis consequat arcu felis in ante. Donec non felis non nisl tincidunt ultricies sit amet nec mi. Maecenas sodales, lorem vel volutpat cursus, nisi tortor pulvinar eros, in pharetra mauris neque sit amet nulla. Nulla ligula turpis, egestas in imperdiet a, faucibus quis turpis. Vivamus purus lorem, vestibulum id rhoncus iaculis, vulputate nec mi
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text2.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/fast-levenshtein/test/text2.txt
deleted file mode 100644 (file)
index ca15f41..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Duis mollis rhoncus turpis. Proin ut nunc eget urna molestie dictum. Cras mollis nibh quis eros faucibus posuere vehicula diam rutrum. Morbi mattis orci vel ante dignissim sollicitudin. Aenean quis enim orci. Integer vehicula elementum porta. Nullam massa mauris, ornare eget ullamcorper eget, consequat at dolor. Integer cursus pellentesque velit in semper. Donec sem turpis, tristique vitae egestas nec, varius sit amet ipsum. Nullam scelerisque est eu arcu vulputate varius. Integer vel gravida leo. Suspendisse blandit vehicula neque, non porttitor eros adipiscing non. Curabitur egestas pulvinar sapien ac imperdiet. Ut ac purus sit amet magna sollicitudin cursus non vel eros. In vel nibh eget libero mattis volutpat nec vulputate quam. Vestibulum commodo ante id magna cursus tristique. Integer rutrum diam sit amet nulla placerat ornare. Quisque nec felis lacus. In lorem mauris, lobortis sit amet sodales non, sollicitudin vitae odio. Nam a dui est, venenatis iaculis purus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In in sollicitudin urna. Praesent dapibus ligula sed lacus pulvinar sit amet pellentesque enim tincidunt. Vivamus feugiat, sapien vitae convallis consectetur, justo ligula semper quam, mollis dapibus lorem odio sit amet justo. Duis ut leo vel turpis cursus tempor. Donec condimentum convallis lacus at feugiat. Aliquam erat volutpat. Etiam auctor risus dolor, in tempor nibh. Nulla interdum, magna eget suscipit aliquet, enim arcu aliquet nunc, vel molestie est sem ac turpis. Ut et convallis diam. Integer malesuada eleifend eros non sollicitudin. In ac sem eget purus iaculis sollicitudin. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse ultrices nulla sit amet sapien fringilla eleifend. Integer eget lectus a augue convallis dignissim sit amet scelerisque odio. Duis velit nisl, mollis a adipiscing eget, suscipit in quam. Sed id lacus et justo dapibus dapibus vestibulum gravida massa. Duis euismod luctus tempor. Nam venenatis gravida rutrum. Etiam id aliquet est. Integer ante arcu, viverra sit amet placerat sit amet, posuere in est. Cras eleifend ultricies urna, ut euismod quam euismod quis. Cras pellentesque nulla et ante molestie pulvinar. Duis malesuada bibendum arcu, id imperdiet enim egestas eget. Sed blandit iaculis enim vel adipiscing. Donec dui quam, tristique non tincidunt sed, interdum luctus ante. Etiam eget nisl id est hendrerit egestas. Vestibulum tempor justo magna, non sagittis felis. Vivamus nec nibh porta nibh cursus luctus suscipit ut nibh. Aenean mollis molestie justo, non ornare mi mollis id. Vestibulum massa neque, mattis eget pulvinar et, tincidunt in magna. Nunc vitae dapibus turpis. Nullam bibendum vehicula odio sed viverra. Donec laoreet, lectus sit amet viverra scelerisque, mi enim fermentum tellus, quis consequat arcu felis in ante. Donec non felis non nisl tincidunt ultricies sit amet nec mi. Maecenas sodales, lorem vel volutpat cursus, nisi tortor pulvinar eros, in pharetra mauris neque sit amet nulla. Nulla ligula turpis, egestas in imperdiet a, faucibus quis turpis. Vivamus purus lorem, vestibulum id rhoncus iaculis, vulputate nec miDuis mollis rhoncus turpis. Proin ut nunc eget urna molestie dictum. Cras mollis nibh quis eros faucibus posuere vehicula diam rutrum. Morbi mattis orci vel ante dignissim sollicitudin. Aenean quis enim orci. Integer vehicula elementum porta. Nullam massa mauris, ornare eget ullamcorper eget, consequat at dolor. Integer cursus pellentesque velit in semper. Donec sem turpis, tristique vitae egestas nec, varius sit amet ipsum. Nullam scelerisque est eu arcu vulputate varius. Integer vel gravida leo. Suspendisse blandit vehicula neque, non porttitor eros adipiscing non. Curabitur egestas pulvinar sapien ac imperdiet. Ut ac purus sit amet magna sollicitudin cursus non vel eros. In vel nibh eget libero mattis volutpat nec vulputate quam. Vestibulum commodo ante id magna cursus tristique. Integer rutrum diam sit amet nulla placerat ornare. Quisque nec felis lacus. In lorem mauris, lobortis sit amet sodales non, sollicitudin vitae odio. Nam a dui est, venenatis iaculis purus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In in sollicitudin urna. Praesent dapibus ligula sed lacus pulvinar sit amet pellentesque enim tincidunt. Vivamus feugiat, sapien vitae convallis consectetur, justo ligula semper quam, mollis dapibus lorem odio sit amet justo. Duis ut leo vel turpis cursus tempor. Donec condimentum convallis lacus at feugiat. Aliquam erat volutpat. Etiam auctor risus dolor, in tempor nibh. Nulla interdum, magna eget suscipit aliquet, enim arcu aliquet nunc, vel molestie est sem ac turpis. Ut et convallis diam. Integer malesuada eleifend eros non sollicitudin. In ac sem eget purus iaculis sollicitudin. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse ultrices nulla sit amet sapien fringilla eleifend. Integer eget lectus a augue convallis dignissim sit amet scelerisque odio. Duis velit nisl, mollis a adipiscing eget, suscipit in quam. Sed id lacus et justo dapibus dapibus vestibulum gravida massa. Duis euismod luctus tempor. Nam venenatis gravida rutrum. Etiam id aliquet est. Integer ante arcu, viverra sit amet placerat sit amet, posuere in est. Cras eleifend ultricies urna, ut euismod quam euismod quis. Cras pellentesque nulla et ante molestie pulvinar. Duis malesuada bibendum arcu, id imperdiet enim egestas eget. Sed blandit iaculis enim vel adipiscing. Donec dui quam, tristique non tincidunt sed, interdum luctus ante. Etiam eget nisl id est hendrerit egestas. Vestibulum tempor justo magna, non sagittis felis. Vivamus nec nibh porta nibh cursus luctus suscipit ut nibh. Aenean mollis molestie justo, non ornare mi mollis id. Vestibulum massa neque, mattis eget pulvinar et, tincidunt in magna. Nunc vitae dapibus turpis. Nullam bibendum vehicula odio sed viverra. Donec laoreet, lectus sit amet viverra scelerisque, mi enim fermentum tellus, quis consequat arcu felis in ante. Donec non felis non nisl tincidunt ultricies sit amet nec mi. Maecenas sodales, lorem vel volutpat cursus, nisi tortor pulvinar eros, in pharetra mauris neque sit amet nulla. Nulla ligula turpis, egestas in imperd
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/LICENSE
deleted file mode 100644 (file)
index 525b118..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) George Zahariev
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/README.md
deleted file mode 100644 (file)
index e55d943..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-# levn [![Build Status](https://travis-ci.org/gkz/levn.png)](https://travis-ci.org/gkz/levn) <a name="levn" />
-__Light ECMAScript (JavaScript) Value Notation__
-Levn is a library which allows you to parse a string into a JavaScript value based on an expected type. It is meant for short amounts of human entered data (eg. config files, command line arguments).
-
-Levn aims to concisely describe JavaScript values in text, and allow for the extraction and validation of those values. Levn uses [type-check](https://github.com/gkz/type-check) for its type format, and to validate the results. MIT license. Version 0.2.5.
-
-__How is this different than JSON?__ levn is meant to be written by humans only, is (due to the previous point) much more concise, can be validated against supplied types, has regex and date literals, and can easily be extended with custom types. On the other hand, it is probably slower and thus less efficient at transporting large amounts of data, which is fine since this is not its purpose.
-
-    npm install levn
-
-For updates on levn, [follow me on twitter](https://twitter.com/gkzahariev).
-
-
-## Quick Examples
-
-```js
-var parse = require('levn').parse;
-parse('Number', '2');      // 2
-parse('String', '2');      // '2'
-parse('String', 'levn');   // 'levn'
-parse('String', 'a b');    // 'a b'
-parse('Boolean', 'true');  // true
-
-parse('Date', '#2011-11-11#'); // (Date object)
-parse('Date', '2011-11-11');   // (Date object)
-parse('RegExp', '/[a-z]/gi');  // /[a-z]/gi
-parse('RegExp', 're');         // /re/
-
-parse('Number | String', 'str'); // 'str'
-parse('Number | String', '2');   // 2
-
-parse('[Number]', '[1,2,3]');                      // [1,2,3]
-parse('(String, Boolean)', '(hi, false)');         // ['hi', false]
-parse('{a: String, b: Number}', '{a: str, b: 2}'); // {a: 'str', b: 2}
-
-// at the top level, you can ommit surrounding delimiters
-parse('[Number]', '1,2,3');                      // [1,2,3]
-parse('(String, Boolean)', 'hi, false');         // ['hi', false]
-parse('{a: String, b: Number}', 'a: str, b: 2'); // {a: 'str', b: 2}
-
-// wildcard - auto choose type
-parse('*', '[hi,(null,[42]),{k: true}]'); // ['hi', [null, [42]], {k: true}]
-```
-## Usage
-
-`require('levn');` returns an object that exposes three properties. `VERSION` is the current version of the library as a string. `parse` and `parsedTypeParse` are functions.
-
-```js
-// parse(type, input, options);
-parse('[Number]', '1,2,3'); // [1, 2, 3]
-
-// parsedTypeParse(parsedType, input, options);
-var parsedType = require('type-check').parseType('[Number]');
-parsedTypeParse(parsedType, '1,2,3'); // [1, 2, 3]
-```
-
-### parse(type, input, options)
-
-`parse` casts the string `input` into a JavaScript value according to the specified `type` in the [type format](https://github.com/gkz/type-check#type-format) (and taking account the optional `options`) and returns the resulting JavaScript value.
-
-##### arguments
-* type - `String` - the type written in the [type format](https://github.com/gkz/type-check#type-format) which to check against
-* input - `String` - the value written in the [levn format](#levn-format)
-* options - `Maybe Object` - an optional parameter specifying additional [options](#options)
-
-##### returns
-`*` - the resulting JavaScript value
-
-##### example
-```js
-parse('[Number]', '1,2,3'); // [1, 2, 3]
-```
-
-### parsedTypeParse(parsedType, input, options)
-
-`parsedTypeParse` casts the string `input` into a JavaScript value according to the specified `type` which has already been parsed (and taking account the optional `options`) and returns the resulting JavaScript value. You can parse a type using the [type-check](https://github.com/gkz/type-check) library's `parseType` function.
-
-##### arguments
-* type - `Object` - the type in the parsed type format which to check against
-* input - `String` - the value written in the [levn format](#levn-format)
-* options - `Maybe Object` - an optional parameter specifying additional [options](#options)
-
-##### returns
-`*` - the resulting JavaScript value
-
-##### example
-```js
-var parsedType = require('type-check').parseType('[Number]');
-parsedTypeParse(parsedType, '1,2,3'); // [1, 2, 3]
-```
-
-## Levn Format
-
-Levn can use the type information you provide to choose the appropriate value to produce from the input. For the same input, it will choose a different output value depending on the type provided. For example, `parse('Number', '2')` will produce the number `2`, but `parse('String', '2')` will produce the string `"2"`.
-
-If you do not provide type information, and simply use `*`, levn will parse the input according the unambiguous "explicit" mode, which we will now detail - you can also set the `explicit` option to true manually in the [options](#options).
-
-* `"string"`, `'string'` are parsed as a String, eg. `"a msg"` is `"a msg"`
-* `#date#` is parsed as a Date, eg. `#2011-11-11#` is `new Date('2011-11-11')`
-* `/regexp/flags` is parsed as a RegExp, eg. `/re/gi` is `/re/gi`
-* `undefined`, `null`, `NaN`, `true`, and `false` are all their JavaScript equivalents
-* `[element1, element2, etc]` is an Array, and the casting procedure is recursively applied to each element. Eg. `[1,2,3]` is `[1,2,3]`.
-* `(element1, element2, etc)` is an tuple, and the casting procedure is recursively applied to each element. Eg. `(1, a)` is `(1, a)` (is `[1, 'a']`).
-* `{key1: val1, key2: val2, ...}` is an Object, and the casting procedure is recursively applied to each property. Eg. `{a: 1, b: 2}` is `{a: 1, b: 2}`.
-* Any test which does not fall under the above, and which does not contain special characters (`[``]``(``)``{``}``:``,`) is a string, eg. `$12- blah` is `"$12- blah"`.
-
-If you do provide type information, you can make your input more concise as the program already has some information about what it expects. Please see the [type format](https://github.com/gkz/type-check#type-format) section of [type-check](https://github.com/gkz/type-check) for more information about how to specify types. There are some rules about what levn can do with the information:
-
-* If a String is expected, and only a String, all characters of the input (including any special ones) will become part of the output. Eg. `[({})]` is `"[({})]"`, and `"hi"` is `'"hi"'`.
-* If a Date is expected, the surrounding `#` can be omitted from date literals. Eg. `2011-11-11` is `new Date('2011-11-11')`.
-* If a RegExp is expected, no flags need to be specified, and the regex is not using any of the special characters,the opening and closing `/` can be omitted - this will have the affect of setting the source of the regex to the input. Eg. `regex` is `/regex/`.
-* If an Array is expected, and it is the root node (at the top level), the opening `[` and closing `]` can be omitted. Eg. `1,2,3` is `[1,2,3]`.
-* If a tuple is expected, and it is the root node (at the top level), the opening `(` and closing `)` can be omitted. Eg. `1, a` is `(1, a)` (is `[1, 'a']`).
-* If an Object is expected, and it is the root node (at the top level), the opening `{` and closing `}` can be omitted. Eg `a: 1, b: 2` is `{a: 1, b: 2}`.
-
-If you list multiple types (eg. `Number | String`), it will first attempt to cast to the first type and then validate - if the validation fails it will move on to the next type and so forth, left to right. You must be careful as some types will succeed with any input, such as String. Thus put String at the end of your list. In non-explicit mode, Date and RegExp will succeed with a large variety of input - also be careful with these and list them near the end if not last in your list.
-
-Whitespace between special characters and elements is inconsequential.
-
-## Options
-
-Options is an object. It is an optional parameter to the `parse` and `parsedTypeParse` functions.
-
-### Explicit
-
-A `Boolean`. By default it is `false`.
-
-__Example:__
-
-```js
-parse('RegExp', 're', {explicit: false});          // /re/
-parse('RegExp', 're', {explicit: true});           // Error: ... does not type check...
-parse('RegExp | String', 're', {explicit: true});  // 're'
-```
-
-`explicit` sets whether to be in explicit mode or not. Using `*` automatically activates explicit mode. For more information, read the [levn format](#levn-format) section.
-
-### customTypes
-
-An `Object`. Empty `{}` by default.
-
-__Example:__
-
-```js
-var options = {
-  customTypes: {
-    Even: {
-      typeOf: 'Number',
-      validate: function (x) {
-        return x % 2 === 0;
-      },
-      cast: function (x) {
-        return {type: 'Just', value: parseInt(x)};
-      }
-    }
-  }
-}
-parse('Even', '2', options); // 2
-parse('Even', '3', options); // Error: Value: "3" does not type check...
-```
-
-__Another Example:__
-```js
-function Person(name, age){
-  this.name = name;
-  this.age = age;
-}
-var options = {
-  customTypes: {
-    Person: {
-      typeOf: 'Object',
-      validate: function (x) {
-        x instanceof Person;
-      },
-      cast: function (value, options, typesCast) {
-        var name, age;
-        if ({}.toString.call(value).slice(8, -1) !== 'Object') {
-          return {type: 'Nothing'};
-        }
-        name = typesCast(value.name, [{type: 'String'}], options);
-        age = typesCast(value.age, [{type: 'Numger'}], options);
-        return {type: 'Just', value: new Person(name, age)};
-    }
-  }
-}
-parse('Person', '{name: Laura, age: 25}', options); // Person {name: 'Laura', age: 25}
-```
-
-`customTypes` is an object whose keys are the name of the types, and whose values are an object with three properties, `typeOf`, `validate`, and `cast`. For more information about `typeOf` and `validate`, please see the [custom types](https://github.com/gkz/type-check#custom-types) section of type-check.
-
-`cast` is a function which receives three arguments, the value under question, options, and the typesCast function. In `cast`, attempt to cast the value into the specified type. If you are successful, return an object in the format `{type: 'Just', value: CAST-VALUE}`, if you know it won't work, return `{type: 'Nothing'}`.  You can use the `typesCast` function to cast any child values. Remember to pass `options` to it. In your function you can also check for `options.explicit` and act accordingly.
-
-## Technical About
-
-`levn` is written in [LiveScript](http://livescript.net/) - a language that compiles to JavaScript. It uses [type-check](https://github.com/gkz/type-check) to both parse types and validate values. It also uses the [prelude.ls](http://preludels.com/) library.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/cast.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/cast.js
deleted file mode 100644 (file)
index 2a6816f..0000000
+++ /dev/null
@@ -1,298 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var parsedTypeCheck, types, toString$ = {}.toString;
-  parsedTypeCheck = require('type-check').parsedTypeCheck;
-  types = {
-    '*': function(value, options){
-      switch (toString$.call(value).slice(8, -1)) {
-      case 'Array':
-        return typeCast(value, {
-          type: 'Array'
-        }, options);
-      case 'Object':
-        return typeCast(value, {
-          type: 'Object'
-        }, options);
-      default:
-        return {
-          type: 'Just',
-          value: typesCast(value, [
-            {
-              type: 'Undefined'
-            }, {
-              type: 'Null'
-            }, {
-              type: 'NaN'
-            }, {
-              type: 'Boolean'
-            }, {
-              type: 'Number'
-            }, {
-              type: 'Date'
-            }, {
-              type: 'RegExp'
-            }, {
-              type: 'Array'
-            }, {
-              type: 'Object'
-            }, {
-              type: 'String'
-            }
-          ], (options.explicit = true, options))
-        };
-      }
-    },
-    Undefined: function(it){
-      if (it === 'undefined' || it === void 8) {
-        return {
-          type: 'Just',
-          value: void 8
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Null: function(it){
-      if (it === 'null') {
-        return {
-          type: 'Just',
-          value: null
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    NaN: function(it){
-      if (it === 'NaN') {
-        return {
-          type: 'Just',
-          value: NaN
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Boolean: function(it){
-      if (it === 'true') {
-        return {
-          type: 'Just',
-          value: true
-        };
-      } else if (it === 'false') {
-        return {
-          type: 'Just',
-          value: false
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Number: function(it){
-      return {
-        type: 'Just',
-        value: +it
-      };
-    },
-    Int: function(it){
-      return {
-        type: 'Just',
-        value: parseInt(it)
-      };
-    },
-    Float: function(it){
-      return {
-        type: 'Just',
-        value: parseFloat(it)
-      };
-    },
-    Date: function(value, options){
-      var that;
-      if (that = /^\#([\s\S]*)\#$/.exec(value)) {
-        return {
-          type: 'Just',
-          value: new Date(+that[1] || that[1])
-        };
-      } else if (options.explicit) {
-        return {
-          type: 'Nothing'
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: new Date(+value || value)
-        };
-      }
-    },
-    RegExp: function(value, options){
-      var that;
-      if (that = /^\/([\s\S]*)\/([gimy]*)$/.exec(value)) {
-        return {
-          type: 'Just',
-          value: new RegExp(that[1], that[2])
-        };
-      } else if (options.explicit) {
-        return {
-          type: 'Nothing'
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: new RegExp(value)
-        };
-      }
-    },
-    Array: function(value, options){
-      return castArray(value, {
-        of: [{
-          type: '*'
-        }]
-      }, options);
-    },
-    Object: function(value, options){
-      return castFields(value, {
-        of: {}
-      }, options);
-    },
-    String: function(it){
-      var that;
-      if (toString$.call(it).slice(8, -1) !== 'String') {
-        return {
-          type: 'Nothing'
-        };
-      }
-      if (that = it.match(/^'([\s\S]*)'$/)) {
-        return {
-          type: 'Just',
-          value: that[1].replace(/\\'/g, "'")
-        };
-      } else if (that = it.match(/^"([\s\S]*)"$/)) {
-        return {
-          type: 'Just',
-          value: that[1].replace(/\\"/g, '"')
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: it
-        };
-      }
-    }
-  };
-  function castArray(node, type, options){
-    var typeOf, element;
-    if (toString$.call(node).slice(8, -1) !== 'Array') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    typeOf = type.of;
-    return {
-      type: 'Just',
-      value: (function(){
-        var i$, ref$, len$, results$ = [];
-        for (i$ = 0, len$ = (ref$ = node).length; i$ < len$; ++i$) {
-          element = ref$[i$];
-          results$.push(typesCast(element, typeOf, options));
-        }
-        return results$;
-      }())
-    };
-  }
-  function castTuple(node, type, options){
-    var result, i, i$, ref$, len$, types, cast;
-    if (toString$.call(node).slice(8, -1) !== 'Array') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    result = [];
-    i = 0;
-    for (i$ = 0, len$ = (ref$ = type.of).length; i$ < len$; ++i$) {
-      types = ref$[i$];
-      cast = typesCast(node[i], types, options);
-      if (toString$.call(cast).slice(8, -1) !== 'Undefined') {
-        result.push(cast);
-      }
-      i++;
-    }
-    if (node.length <= i) {
-      return {
-        type: 'Just',
-        value: result
-      };
-    } else {
-      return {
-        type: 'Nothing'
-      };
-    }
-  }
-  function castFields(node, type, options){
-    var typeOf, key, value;
-    if (toString$.call(node).slice(8, -1) !== 'Object') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    typeOf = type.of;
-    return {
-      type: 'Just',
-      value: (function(){
-        var ref$, results$ = {};
-        for (key in ref$ = node) {
-          value = ref$[key];
-          results$[typesCast(key, [{
-            type: 'String'
-          }], options)] = typesCast(value, typeOf[key] || [{
-            type: '*'
-          }], options);
-        }
-        return results$;
-      }())
-    };
-  }
-  function typeCast(node, typeObj, options){
-    var type, structure, castFunc, ref$;
-    type = typeObj.type, structure = typeObj.structure;
-    if (type) {
-      castFunc = ((ref$ = options.customTypes[type]) != null ? ref$.cast : void 8) || types[type];
-      if (!castFunc) {
-        throw new Error("Type not defined: " + type + ".");
-      }
-      return castFunc(node, options, typesCast);
-    } else {
-      switch (structure) {
-      case 'array':
-        return castArray(node, typeObj, options);
-      case 'tuple':
-        return castTuple(node, typeObj, options);
-      case 'fields':
-        return castFields(node, typeObj, options);
-      }
-    }
-  }
-  function typesCast(node, types, options){
-    var i$, len$, type, ref$, valueType, value;
-    for (i$ = 0, len$ = types.length; i$ < len$; ++i$) {
-      type = types[i$];
-      ref$ = typeCast(node, type, options), valueType = ref$.type, value = ref$.value;
-      if (valueType === 'Nothing') {
-        continue;
-      }
-      if (parsedTypeCheck([type], value, {
-        customTypes: options.customTypes
-      })) {
-        return value;
-      }
-    }
-    throw new Error("Value " + JSON.stringify(node) + " does not type check against " + JSON.stringify(types) + ".");
-  }
-  module.exports = typesCast;
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/coerce.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/coerce.js
deleted file mode 100644 (file)
index 027b6da..0000000
+++ /dev/null
@@ -1,285 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var parsedTypeCheck, types, toString$ = {}.toString;
-  parsedTypeCheck = require('type-check').parsedTypeCheck;
-  types = {
-    '*': function(it){
-      switch (toString$.call(it).slice(8, -1)) {
-      case 'Array':
-        return coerceType(it, {
-          type: 'Array'
-        });
-      case 'Object':
-        return coerceType(it, {
-          type: 'Object'
-        });
-      default:
-        return {
-          type: 'Just',
-          value: coerceTypes(it, [
-            {
-              type: 'Undefined'
-            }, {
-              type: 'Null'
-            }, {
-              type: 'NaN'
-            }, {
-              type: 'Boolean'
-            }, {
-              type: 'Number'
-            }, {
-              type: 'Date'
-            }, {
-              type: 'RegExp'
-            }, {
-              type: 'Array'
-            }, {
-              type: 'Object'
-            }, {
-              type: 'String'
-            }
-          ], {
-            explicit: true
-          })
-        };
-      }
-    },
-    Undefined: function(it){
-      if (it === 'undefined' || it === void 8) {
-        return {
-          type: 'Just',
-          value: void 8
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Null: function(it){
-      if (it === 'null') {
-        return {
-          type: 'Just',
-          value: null
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    NaN: function(it){
-      if (it === 'NaN') {
-        return {
-          type: 'Just',
-          value: NaN
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Boolean: function(it){
-      if (it === 'true') {
-        return {
-          type: 'Just',
-          value: true
-        };
-      } else if (it === 'false') {
-        return {
-          type: 'Just',
-          value: false
-        };
-      } else {
-        return {
-          type: 'Nothing'
-        };
-      }
-    },
-    Number: function(it){
-      return {
-        type: 'Just',
-        value: +it
-      };
-    },
-    Int: function(it){
-      return {
-        type: 'Just',
-        value: parseInt(it)
-      };
-    },
-    Float: function(it){
-      return {
-        type: 'Just',
-        value: parseFloat(it)
-      };
-    },
-    Date: function(value, options){
-      var that;
-      if (that = /^\#(.*)\#$/.exec(value)) {
-        return {
-          type: 'Just',
-          value: new Date(+that[1] || that[1])
-        };
-      } else if (options.explicit) {
-        return {
-          type: 'Nothing'
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: new Date(+value || value)
-        };
-      }
-    },
-    RegExp: function(value, options){
-      var that;
-      if (that = /^\/(.*)\/([gimy]*)$/.exec(value)) {
-        return {
-          type: 'Just',
-          value: new RegExp(that[1], that[2])
-        };
-      } else if (options.explicit) {
-        return {
-          type: 'Nothing'
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: new RegExp(value)
-        };
-      }
-    },
-    Array: function(it){
-      return coerceArray(it, {
-        of: [{
-          type: '*'
-        }]
-      });
-    },
-    Object: function(it){
-      return coerceFields(it, {
-        of: {}
-      });
-    },
-    String: function(it){
-      var that;
-      if (toString$.call(it).slice(8, -1) !== 'String') {
-        return {
-          type: 'Nothing'
-        };
-      }
-      if (that = it.match(/^'(.*)'$/)) {
-        return {
-          type: 'Just',
-          value: that[1]
-        };
-      } else if (that = it.match(/^"(.*)"$/)) {
-        return {
-          type: 'Just',
-          value: that[1]
-        };
-      } else {
-        return {
-          type: 'Just',
-          value: it
-        };
-      }
-    }
-  };
-  function coerceArray(node, type){
-    var typeOf, element;
-    if (toString$.call(node).slice(8, -1) !== 'Array') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    typeOf = type.of;
-    return {
-      type: 'Just',
-      value: (function(){
-        var i$, ref$, len$, results$ = [];
-        for (i$ = 0, len$ = (ref$ = node).length; i$ < len$; ++i$) {
-          element = ref$[i$];
-          results$.push(coerceTypes(element, typeOf));
-        }
-        return results$;
-      }())
-    };
-  }
-  function coerceTuple(node, type){
-    var result, i$, ref$, len$, i, types, that;
-    if (toString$.call(node).slice(8, -1) !== 'Array') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    result = [];
-    for (i$ = 0, len$ = (ref$ = type.of).length; i$ < len$; ++i$) {
-      i = i$;
-      types = ref$[i$];
-      if (that = coerceTypes(node[i], types)) {
-        result.push(that);
-      }
-    }
-    return {
-      type: 'Just',
-      value: result
-    };
-  }
-  function coerceFields(node, type){
-    var typeOf, key, value;
-    if (toString$.call(node).slice(8, -1) !== 'Object') {
-      return {
-        type: 'Nothing'
-      };
-    }
-    typeOf = type.of;
-    return {
-      type: 'Just',
-      value: (function(){
-        var ref$, results$ = {};
-        for (key in ref$ = node) {
-          value = ref$[key];
-          results$[key] = coerceTypes(value, typeOf[key] || [{
-            type: '*'
-          }]);
-        }
-        return results$;
-      }())
-    };
-  }
-  function coerceType(node, typeObj, options){
-    var type, structure, coerceFunc;
-    type = typeObj.type, structure = typeObj.structure;
-    if (type) {
-      coerceFunc = types[type];
-      return coerceFunc(node, options);
-    } else {
-      switch (structure) {
-      case 'array':
-        return coerceArray(node, typeObj);
-      case 'tuple':
-        return coerceTuple(node, typeObj);
-      case 'fields':
-        return coerceFields(node, typeObj);
-      }
-    }
-  }
-  function coerceTypes(node, types, options){
-    var i$, len$, type, ref$, valueType, value;
-    for (i$ = 0, len$ = types.length; i$ < len$; ++i$) {
-      type = types[i$];
-      ref$ = coerceType(node, type, options), valueType = ref$.type, value = ref$.value;
-      if (valueType === 'Nothing') {
-        continue;
-      }
-      if (parsedTypeCheck([type], value)) {
-        return value;
-      }
-    }
-    throw new Error("Value " + JSON.stringify(node) + " does not type check against " + JSON.stringify(types) + ".");
-  }
-  module.exports = coerceTypes;
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/index.js
deleted file mode 100644 (file)
index 54b5769..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var parseString, cast, parseType, VERSION, parsedTypeParse, parse;
-  parseString = require('./parse-string');
-  cast = require('./cast');
-  parseType = require('type-check').parseType;
-  VERSION = '0.2.5';
-  parsedTypeParse = function(parsedType, string, options){
-    options == null && (options = {});
-    options.explicit == null && (options.explicit = false);
-    options.customTypes == null && (options.customTypes = {});
-    return cast(parseString(parsedType, string, options), parsedType, options);
-  };
-  parse = function(type, string, options){
-    return parsedTypeParse(parseType(type), string, options);
-  };
-  module.exports = {
-    VERSION: VERSION,
-    parse: parse,
-    parsedTypeParse: parsedTypeParse
-  };
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse-string.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse-string.js
deleted file mode 100644 (file)
index 65ec755..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var reject, special, tokenRegex;
-  reject = require('prelude-ls').reject;
-  function consumeOp(tokens, op){
-    if (tokens[0] === op) {
-      return tokens.shift();
-    } else {
-      throw new Error("Expected '" + op + "', but got '" + tokens[0] + "' instead in " + JSON.stringify(tokens) + ".");
-    }
-  }
-  function maybeConsumeOp(tokens, op){
-    if (tokens[0] === op) {
-      return tokens.shift();
-    }
-  }
-  function consumeList(tokens, arg$, hasDelimiters){
-    var open, close, result, untilTest;
-    open = arg$[0], close = arg$[1];
-    if (hasDelimiters) {
-      consumeOp(tokens, open);
-    }
-    result = [];
-    untilTest = "," + (hasDelimiters ? close : '');
-    while (tokens.length && (hasDelimiters && tokens[0] !== close)) {
-      result.push(consumeElement(tokens, untilTest));
-      maybeConsumeOp(tokens, ',');
-    }
-    if (hasDelimiters) {
-      consumeOp(tokens, close);
-    }
-    return result;
-  }
-  function consumeArray(tokens, hasDelimiters){
-    return consumeList(tokens, ['[', ']'], hasDelimiters);
-  }
-  function consumeTuple(tokens, hasDelimiters){
-    return consumeList(tokens, ['(', ')'], hasDelimiters);
-  }
-  function consumeFields(tokens, hasDelimiters){
-    var result, untilTest, key;
-    if (hasDelimiters) {
-      consumeOp(tokens, '{');
-    }
-    result = {};
-    untilTest = "," + (hasDelimiters ? '}' : '');
-    while (tokens.length && (!hasDelimiters || tokens[0] !== '}')) {
-      key = consumeValue(tokens, ':');
-      consumeOp(tokens, ':');
-      result[key] = consumeElement(tokens, untilTest);
-      maybeConsumeOp(tokens, ',');
-    }
-    if (hasDelimiters) {
-      consumeOp(tokens, '}');
-    }
-    return result;
-  }
-  function consumeValue(tokens, untilTest){
-    var out;
-    untilTest == null && (untilTest = '');
-    out = '';
-    while (tokens.length && -1 === untilTest.indexOf(tokens[0])) {
-      out += tokens.shift();
-    }
-    return out;
-  }
-  function consumeElement(tokens, untilTest){
-    switch (tokens[0]) {
-    case '[':
-      return consumeArray(tokens, true);
-    case '(':
-      return consumeTuple(tokens, true);
-    case '{':
-      return consumeFields(tokens, true);
-    default:
-      return consumeValue(tokens, untilTest);
-    }
-  }
-  function consumeTopLevel(tokens, types, options){
-    var ref$, type, structure, origTokens, result, finalResult, x$, y$;
-    ref$ = types[0], type = ref$.type, structure = ref$.structure;
-    origTokens = tokens.concat();
-    if (!options.explicit && types.length === 1 && ((!type && structure) || (type === 'Array' || type === 'Object'))) {
-      result = structure === 'array' || type === 'Array'
-        ? consumeArray(tokens, tokens[0] === '[')
-        : structure === 'tuple'
-          ? consumeTuple(tokens, tokens[0] === '(')
-          : consumeFields(tokens, tokens[0] === '{');
-      finalResult = tokens.length ? consumeElement(structure === 'array' || type === 'Array'
-        ? (x$ = origTokens, x$.unshift('['), x$.push(']'), x$)
-        : (y$ = origTokens, y$.unshift('('), y$.push(')'), y$)) : result;
-    } else {
-      finalResult = consumeElement(tokens);
-    }
-    return finalResult;
-  }
-  special = /\[\]\(\)}{:,/.source;
-  tokenRegex = RegExp('("(?:\\\\"|[^"])*")|(\'(?:\\\\\'|[^\'])*\')|(/(?:\\\\/|[^/])*/[a-zA-Z]*)|(#.*#)|([' + special + '])|([^\\s' + special + '](?:\\s*[^\\s' + special + ']+)*)|\\s*');
-  module.exports = function(types, string, options){
-    var tokens, node;
-    options == null && (options = {});
-    if (!options.explicit && types.length === 1 && types[0].type === 'String') {
-      return "'" + string.replace(/\\'/g, "\\\\'") + "'";
-    }
-    tokens = reject(not$, string.split(tokenRegex));
-    node = consumeTopLevel(tokens, types, options);
-    if (!node) {
-      throw new Error("Error parsing '" + string + "'.");
-    }
-    return node;
-  };
-  function not$(x){ return !x; }
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/lib/parse.js
deleted file mode 100644 (file)
index 2beff0f..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var reject, special, tokenRegex;
-  reject = require('prelude-ls').reject;
-  function consumeOp(tokens, op){
-    if (tokens[0] === op) {
-      return tokens.shift();
-    } else {
-      throw new Error("Expected '" + op + "', but got '" + tokens[0] + "' instead in " + JSON.stringify(tokens) + ".");
-    }
-  }
-  function maybeConsumeOp(tokens, op){
-    if (tokens[0] === op) {
-      return tokens.shift();
-    }
-  }
-  function consumeList(tokens, delimiters, hasDelimiters){
-    var result;
-    if (hasDelimiters) {
-      consumeOp(tokens, delimiters[0]);
-    }
-    result = [];
-    while (tokens.length && tokens[0] !== delimiters[1]) {
-      result.push(consumeElement(tokens));
-      maybeConsumeOp(tokens, ',');
-    }
-    if (hasDelimiters) {
-      consumeOp(tokens, delimiters[1]);
-    }
-    return result;
-  }
-  function consumeArray(tokens, hasDelimiters){
-    return consumeList(tokens, ['[', ']'], hasDelimiters);
-  }
-  function consumeTuple(tokens, hasDelimiters){
-    return consumeList(tokens, ['(', ')'], hasDelimiters);
-  }
-  function consumeFields(tokens, hasDelimiters){
-    var result, key;
-    if (hasDelimiters) {
-      consumeOp(tokens, '{');
-    }
-    result = {};
-    while (tokens.length && (!hasDelimiters || tokens[0] !== '}')) {
-      key = tokens.shift();
-      consumeOp(tokens, ':');
-      result[key] = consumeElement(tokens);
-      maybeConsumeOp(tokens, ',');
-    }
-    if (hasDelimiters) {
-      consumeOp(tokens, '}');
-    }
-    return result;
-  }
-  function consumeElement(tokens){
-    switch (tokens[0]) {
-    case '[':
-      return consumeArray(tokens, true);
-    case '(':
-      return consumeTuple(tokens, true);
-    case '{':
-      return consumeFields(tokens, true);
-    default:
-      return tokens.shift();
-    }
-  }
-  function consumeTopLevel(tokens, types){
-    var ref$, type, structure, origTokens, result, finalResult, x$, y$;
-    ref$ = types[0], type = ref$.type, structure = ref$.structure;
-    origTokens = tokens.concat();
-    if (types.length === 1 && (structure || (type === 'Array' || type === 'Object'))) {
-      result = structure === 'array' || type === 'Array'
-        ? consumeArray(tokens, tokens[0] === '[')
-        : structure === 'tuple'
-          ? consumeTuple(tokens, tokens[0] === '(')
-          : consumeFields(tokens, tokens[0] === '{');
-      finalResult = tokens.length ? consumeElement(structure === 'array' || type === 'Array'
-        ? (x$ = origTokens, x$.unshift('['), x$.push(']'), x$)
-        : (y$ = origTokens, y$.unshift('('), y$.push(')'), y$)) : result;
-    } else {
-      finalResult = consumeElement(tokens);
-    }
-    if (tokens.length && origTokens.length) {
-      throw new Error("Unable to parse " + JSON.stringify(origTokens) + " of type " + JSON.stringify(types) + ".");
-    } else {
-      return finalResult;
-    }
-  }
-  special = /\[\]\(\)}{:,/.source;
-  tokenRegex = RegExp('("(?:[^"]|\\\\")*")|(\'(?:[^\']|\\\\\')*\')|(#.*#)|(/(?:\\\\/|[^/])*/[gimy]*)|([' + special + '])|([^\\s' + special + ']+)|\\s*');
-  module.exports = function(string, types){
-    var tokens, node;
-    tokens = reject(function(it){
-      return !it || /^\s+$/.test(it);
-    }, string.split(tokenRegex));
-    node = consumeTopLevel(tokens, types);
-    if (!node) {
-      throw new Error("Error parsing '" + string + "'.");
-    }
-    return node;
-  };
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/levn/package.json
deleted file mode 100644 (file)
index e277f65..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-{
-  "_args": [
-    [
-      "levn@https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "levn@https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-  "_id": "levn@https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-uo0znQykphDjo/FFucr0iAcVUFQ=",
-  "_location": "/grunt-standard/standard/eslint/optionator/levn",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "levn@https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-    "name": "levn",
-    "escapedName": "levn",
-    "rawSpec": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-    "saveSpec": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-    "fetchSpec": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator"
-  ],
-  "_spec": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "George Zahariev",
-    "email": "z@georgezahariev.com"
-  },
-  "bugs": {
-    "url": "https://github.com/gkz/levn/issues"
-  },
-  "dependencies": {
-    "prelude-ls": "~1.1.0",
-    "type-check": "~0.3.1"
-  },
-  "description": "Light ECMAScript (JavaScript) Value Notation - human written, concise, typed, flexible",
-  "devDependencies": {
-    "LiveScript": "~1.2.0",
-    "istanbul": "~0.1.43",
-    "mocha": "~1.8.2"
-  },
-  "engines": {
-    "node": ">= 0.8.0"
-  },
-  "files": [
-    "lib",
-    "README.md",
-    "LICENSE"
-  ],
-  "homepage": "https://github.com/gkz/levn",
-  "keywords": [
-    "levn",
-    "light",
-    "ecmascript",
-    "value",
-    "notation",
-    "json",
-    "typed",
-    "human",
-    "concise",
-    "typed",
-    "flexible"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://raw.github.com/gkz/levn/master/LICENSE"
-    }
-  ],
-  "main": "./lib/",
-  "name": "levn",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/gkz/levn.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/LICENSE
deleted file mode 100644 (file)
index 525b118..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) George Zahariev
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/README.md
deleted file mode 100644 (file)
index fabc212..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# prelude.ls [![Build Status](https://travis-ci.org/gkz/prelude-ls.png?branch=master)](https://travis-ci.org/gkz/prelude-ls)
-
-is a functionally oriented utility library. It is powerful and flexible. Almost all of its functions are curried. It is written in, and is the recommended base library for, <a href="http://livescript.net">LiveScript</a>.
-
-See **[the prelude.ls site](http://preludels.com)** for examples, a reference, and more.
-
-You can install via npm `npm install prelude-ls`
-
-### Development
-
-`make test` to test
-
-`make build` to build `lib` from `src`
-
-`make build-browser` to build browser versions
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Func.js
deleted file mode 100644 (file)
index 7af0b19..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-// Generated by LiveScript 1.2.0
-var apply, curry, flip, fix, over;
-apply = curry$(function(f, list){
-  return f.apply(null, list);
-});
-curry = function(f){
-  return curry$(f);
-};
-flip = curry$(function(f, x, y){
-  return f(y, x);
-});
-fix = function(f){
-  return function(g){
-    return function(){
-      return f(g(g)).apply(null, arguments);
-    };
-  }(function(g){
-    return function(){
-      return f(g(g)).apply(null, arguments);
-    };
-  });
-};
-over = curry$(function(f, g, x, y){
-  return f(g(x), g(y));
-});
-module.exports = {
-  curry: curry,
-  flip: flip,
-  fix: fix,
-  apply: apply,
-  over: over
-};
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/List.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/List.js
deleted file mode 100644 (file)
index 02e7352..0000000
+++ /dev/null
@@ -1,677 +0,0 @@
-// Generated by LiveScript 1.2.0
-var each, map, compact, filter, reject, partition, find, head, first, tail, last, initial, empty, reverse, unique, uniqueBy, fold, foldl, fold1, foldl1, foldr, foldr1, unfoldr, concat, concatMap, flatten, difference, intersection, union, countBy, groupBy, andList, orList, any, all, sort, sortWith, sortBy, sum, product, mean, average, maximum, minimum, maximumBy, minimumBy, scan, scanl, scan1, scanl1, scanr, scanr1, slice, take, drop, splitAt, takeWhile, dropWhile, span, breakList, zip, zipWith, zipAll, zipAllWith, at, elemIndex, elemIndices, findIndex, findIndices, toString$ = {}.toString, slice$ = [].slice;
-each = curry$(function(f, xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    f(x);
-  }
-  return xs;
-});
-map = curry$(function(f, xs){
-  var i$, len$, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    results$.push(f(x));
-  }
-  return results$;
-});
-compact = function(xs){
-  var i$, len$, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (x) {
-      results$.push(x);
-    }
-  }
-  return results$;
-};
-filter = curry$(function(f, xs){
-  var i$, len$, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (f(x)) {
-      results$.push(x);
-    }
-  }
-  return results$;
-});
-reject = curry$(function(f, xs){
-  var i$, len$, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (!f(x)) {
-      results$.push(x);
-    }
-  }
-  return results$;
-});
-partition = curry$(function(f, xs){
-  var passed, failed, i$, len$, x;
-  passed = [];
-  failed = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    (f(x) ? passed : failed).push(x);
-  }
-  return [passed, failed];
-});
-find = curry$(function(f, xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (f(x)) {
-      return x;
-    }
-  }
-});
-head = first = function(xs){
-  return xs[0];
-};
-tail = function(xs){
-  if (!xs.length) {
-    return;
-  }
-  return xs.slice(1);
-};
-last = function(xs){
-  return xs[xs.length - 1];
-};
-initial = function(xs){
-  if (!xs.length) {
-    return;
-  }
-  return xs.slice(0, -1);
-};
-empty = function(xs){
-  return !xs.length;
-};
-reverse = function(xs){
-  return xs.concat().reverse();
-};
-unique = function(xs){
-  var result, i$, len$, x;
-  result = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (!in$(x, result)) {
-      result.push(x);
-    }
-  }
-  return result;
-};
-uniqueBy = curry$(function(f, xs){
-  var seen, i$, len$, x, val, results$ = [];
-  seen = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    val = f(x);
-    if (in$(val, seen)) {
-      continue;
-    }
-    seen.push(val);
-    results$.push(x);
-  }
-  return results$;
-});
-fold = foldl = curry$(function(f, memo, xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    memo = f(memo, x);
-  }
-  return memo;
-});
-fold1 = foldl1 = curry$(function(f, xs){
-  return fold(f, xs[0], xs.slice(1));
-});
-foldr = curry$(function(f, memo, xs){
-  var i$, x;
-  for (i$ = xs.length - 1; i$ >= 0; --i$) {
-    x = xs[i$];
-    memo = f(x, memo);
-  }
-  return memo;
-});
-foldr1 = curry$(function(f, xs){
-  return foldr(f, xs[xs.length - 1], xs.slice(0, -1));
-});
-unfoldr = curry$(function(f, b){
-  var result, x, that;
-  result = [];
-  x = b;
-  while ((that = f(x)) != null) {
-    result.push(that[0]);
-    x = that[1];
-  }
-  return result;
-});
-concat = function(xss){
-  return [].concat.apply([], xss);
-};
-concatMap = curry$(function(f, xs){
-  var x;
-  return [].concat.apply([], (function(){
-    var i$, ref$, len$, results$ = [];
-    for (i$ = 0, len$ = (ref$ = xs).length; i$ < len$; ++i$) {
-      x = ref$[i$];
-      results$.push(f(x));
-    }
-    return results$;
-  }()));
-});
-flatten = function(xs){
-  var x;
-  return [].concat.apply([], (function(){
-    var i$, ref$, len$, results$ = [];
-    for (i$ = 0, len$ = (ref$ = xs).length; i$ < len$; ++i$) {
-      x = ref$[i$];
-      if (toString$.call(x).slice(8, -1) === 'Array') {
-        results$.push(flatten(x));
-      } else {
-        results$.push(x);
-      }
-    }
-    return results$;
-  }()));
-};
-difference = function(xs){
-  var yss, results, i$, len$, x, j$, len1$, ys;
-  yss = slice$.call(arguments, 1);
-  results = [];
-  outer: for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    for (j$ = 0, len1$ = yss.length; j$ < len1$; ++j$) {
-      ys = yss[j$];
-      if (in$(x, ys)) {
-        continue outer;
-      }
-    }
-    results.push(x);
-  }
-  return results;
-};
-intersection = function(xs){
-  var yss, results, i$, len$, x, j$, len1$, ys;
-  yss = slice$.call(arguments, 1);
-  results = [];
-  outer: for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    for (j$ = 0, len1$ = yss.length; j$ < len1$; ++j$) {
-      ys = yss[j$];
-      if (!in$(x, ys)) {
-        continue outer;
-      }
-    }
-    results.push(x);
-  }
-  return results;
-};
-union = function(){
-  var xss, results, i$, len$, xs, j$, len1$, x;
-  xss = slice$.call(arguments);
-  results = [];
-  for (i$ = 0, len$ = xss.length; i$ < len$; ++i$) {
-    xs = xss[i$];
-    for (j$ = 0, len1$ = xs.length; j$ < len1$; ++j$) {
-      x = xs[j$];
-      if (!in$(x, results)) {
-        results.push(x);
-      }
-    }
-  }
-  return results;
-};
-countBy = curry$(function(f, xs){
-  var results, i$, len$, x, key;
-  results = {};
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    key = f(x);
-    if (key in results) {
-      results[key] += 1;
-    } else {
-      results[key] = 1;
-    }
-  }
-  return results;
-});
-groupBy = curry$(function(f, xs){
-  var results, i$, len$, x, key;
-  results = {};
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    key = f(x);
-    if (key in results) {
-      results[key].push(x);
-    } else {
-      results[key] = [x];
-    }
-  }
-  return results;
-});
-andList = function(xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (!x) {
-      return false;
-    }
-  }
-  return true;
-};
-orList = function(xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (x) {
-      return true;
-    }
-  }
-  return false;
-};
-any = curry$(function(f, xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (f(x)) {
-      return true;
-    }
-  }
-  return false;
-});
-all = curry$(function(f, xs){
-  var i$, len$, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    if (!f(x)) {
-      return false;
-    }
-  }
-  return true;
-});
-sort = function(xs){
-  return xs.concat().sort(function(x, y){
-    if (x > y) {
-      return 1;
-    } else if (x < y) {
-      return -1;
-    } else {
-      return 0;
-    }
-  });
-};
-sortWith = curry$(function(f, xs){
-  return xs.concat().sort(f);
-});
-sortBy = curry$(function(f, xs){
-  return xs.concat().sort(function(x, y){
-    if (f(x) > f(y)) {
-      return 1;
-    } else if (f(x) < f(y)) {
-      return -1;
-    } else {
-      return 0;
-    }
-  });
-});
-sum = function(xs){
-  var result, i$, len$, x;
-  result = 0;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    result += x;
-  }
-  return result;
-};
-product = function(xs){
-  var result, i$, len$, x;
-  result = 1;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    result *= x;
-  }
-  return result;
-};
-mean = average = function(xs){
-  var sum, i$, len$, x;
-  sum = 0;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    x = xs[i$];
-    sum += x;
-  }
-  return sum / xs.length;
-};
-maximum = function(xs){
-  var max, i$, ref$, len$, x;
-  max = xs[0];
-  for (i$ = 0, len$ = (ref$ = xs.slice(1)).length; i$ < len$; ++i$) {
-    x = ref$[i$];
-    if (x > max) {
-      max = x;
-    }
-  }
-  return max;
-};
-minimum = function(xs){
-  var min, i$, ref$, len$, x;
-  min = xs[0];
-  for (i$ = 0, len$ = (ref$ = xs.slice(1)).length; i$ < len$; ++i$) {
-    x = ref$[i$];
-    if (x < min) {
-      min = x;
-    }
-  }
-  return min;
-};
-maximumBy = curry$(function(f, xs){
-  var max, i$, ref$, len$, x;
-  max = xs[0];
-  for (i$ = 0, len$ = (ref$ = xs.slice(1)).length; i$ < len$; ++i$) {
-    x = ref$[i$];
-    if (f(x) > f(max)) {
-      max = x;
-    }
-  }
-  return max;
-});
-minimumBy = curry$(function(f, xs){
-  var min, i$, ref$, len$, x;
-  min = xs[0];
-  for (i$ = 0, len$ = (ref$ = xs.slice(1)).length; i$ < len$; ++i$) {
-    x = ref$[i$];
-    if (f(x) < f(min)) {
-      min = x;
-    }
-  }
-  return min;
-});
-scan = scanl = curry$(function(f, memo, xs){
-  var last, x;
-  last = memo;
-  return [memo].concat((function(){
-    var i$, ref$, len$, results$ = [];
-    for (i$ = 0, len$ = (ref$ = xs).length; i$ < len$; ++i$) {
-      x = ref$[i$];
-      results$.push(last = f(last, x));
-    }
-    return results$;
-  }()));
-});
-scan1 = scanl1 = curry$(function(f, xs){
-  if (!xs.length) {
-    return;
-  }
-  return scan(f, xs[0], xs.slice(1));
-});
-scanr = curry$(function(f, memo, xs){
-  xs = xs.concat().reverse();
-  return scan(f, memo, xs).reverse();
-});
-scanr1 = curry$(function(f, xs){
-  if (!xs.length) {
-    return;
-  }
-  xs = xs.concat().reverse();
-  return scan(f, xs[0], xs.slice(1)).reverse();
-});
-slice = curry$(function(x, y, xs){
-  return xs.slice(x, y);
-});
-take = curry$(function(n, xs){
-  if (n <= 0) {
-    return xs.slice(0, 0);
-  } else {
-    return xs.slice(0, n);
-  }
-});
-drop = curry$(function(n, xs){
-  if (n <= 0) {
-    return xs;
-  } else {
-    return xs.slice(n);
-  }
-});
-splitAt = curry$(function(n, xs){
-  return [take(n, xs), drop(n, xs)];
-});
-takeWhile = curry$(function(p, xs){
-  var len, i;
-  len = xs.length;
-  if (!len) {
-    return xs;
-  }
-  i = 0;
-  while (i < len && p(xs[i])) {
-    i += 1;
-  }
-  return xs.slice(0, i);
-});
-dropWhile = curry$(function(p, xs){
-  var len, i;
-  len = xs.length;
-  if (!len) {
-    return xs;
-  }
-  i = 0;
-  while (i < len && p(xs[i])) {
-    i += 1;
-  }
-  return xs.slice(i);
-});
-span = curry$(function(p, xs){
-  return [takeWhile(p, xs), dropWhile(p, xs)];
-});
-breakList = curry$(function(p, xs){
-  return span(function(){
-    return not$(p.apply(this, arguments));
-  }, xs);
-});
-zip = curry$(function(xs, ys){
-  var result, len, i$, len$, i, x;
-  result = [];
-  len = ys.length;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (i === len) {
-      break;
-    }
-    result.push([x, ys[i]]);
-  }
-  return result;
-});
-zipWith = curry$(function(f, xs, ys){
-  var result, len, i$, len$, i, x;
-  result = [];
-  len = ys.length;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (i === len) {
-      break;
-    }
-    result.push(f(x, ys[i]));
-  }
-  return result;
-});
-zipAll = function(){
-  var xss, minLength, i$, len$, xs, ref$, i, lresult$, j$, results$ = [];
-  xss = slice$.call(arguments);
-  minLength = 9e9;
-  for (i$ = 0, len$ = xss.length; i$ < len$; ++i$) {
-    xs = xss[i$];
-    minLength <= (ref$ = xs.length) || (minLength = ref$);
-  }
-  for (i$ = 0; i$ < minLength; ++i$) {
-    i = i$;
-    lresult$ = [];
-    for (j$ = 0, len$ = xss.length; j$ < len$; ++j$) {
-      xs = xss[j$];
-      lresult$.push(xs[i]);
-    }
-    results$.push(lresult$);
-  }
-  return results$;
-};
-zipAllWith = function(f){
-  var xss, minLength, i$, len$, xs, ref$, i, results$ = [];
-  xss = slice$.call(arguments, 1);
-  minLength = 9e9;
-  for (i$ = 0, len$ = xss.length; i$ < len$; ++i$) {
-    xs = xss[i$];
-    minLength <= (ref$ = xs.length) || (minLength = ref$);
-  }
-  for (i$ = 0; i$ < minLength; ++i$) {
-    i = i$;
-    results$.push(f.apply(null, (fn$())));
-  }
-  return results$;
-  function fn$(){
-    var i$, ref$, len$, results$ = [];
-    for (i$ = 0, len$ = (ref$ = xss).length; i$ < len$; ++i$) {
-      xs = ref$[i$];
-      results$.push(xs[i]);
-    }
-    return results$;
-  }
-};
-at = curry$(function(n, xs){
-  if (n < 0) {
-    return xs[xs.length + n];
-  } else {
-    return xs[n];
-  }
-});
-elemIndex = curry$(function(el, xs){
-  var i$, len$, i, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (x === el) {
-      return i;
-    }
-  }
-});
-elemIndices = curry$(function(el, xs){
-  var i$, len$, i, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (x === el) {
-      results$.push(i);
-    }
-  }
-  return results$;
-});
-findIndex = curry$(function(f, xs){
-  var i$, len$, i, x;
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (f(x)) {
-      return i;
-    }
-  }
-});
-findIndices = curry$(function(f, xs){
-  var i$, len$, i, x, results$ = [];
-  for (i$ = 0, len$ = xs.length; i$ < len$; ++i$) {
-    i = i$;
-    x = xs[i$];
-    if (f(x)) {
-      results$.push(i);
-    }
-  }
-  return results$;
-});
-module.exports = {
-  each: each,
-  map: map,
-  filter: filter,
-  compact: compact,
-  reject: reject,
-  partition: partition,
-  find: find,
-  head: head,
-  first: first,
-  tail: tail,
-  last: last,
-  initial: initial,
-  empty: empty,
-  reverse: reverse,
-  difference: difference,
-  intersection: intersection,
-  union: union,
-  countBy: countBy,
-  groupBy: groupBy,
-  fold: fold,
-  fold1: fold1,
-  foldl: foldl,
-  foldl1: foldl1,
-  foldr: foldr,
-  foldr1: foldr1,
-  unfoldr: unfoldr,
-  andList: andList,
-  orList: orList,
-  any: any,
-  all: all,
-  unique: unique,
-  uniqueBy: uniqueBy,
-  sort: sort,
-  sortWith: sortWith,
-  sortBy: sortBy,
-  sum: sum,
-  product: product,
-  mean: mean,
-  average: average,
-  concat: concat,
-  concatMap: concatMap,
-  flatten: flatten,
-  maximum: maximum,
-  minimum: minimum,
-  maximumBy: maximumBy,
-  minimumBy: minimumBy,
-  scan: scan,
-  scan1: scan1,
-  scanl: scanl,
-  scanl1: scanl1,
-  scanr: scanr,
-  scanr1: scanr1,
-  slice: slice,
-  take: take,
-  drop: drop,
-  splitAt: splitAt,
-  takeWhile: takeWhile,
-  dropWhile: dropWhile,
-  span: span,
-  breakList: breakList,
-  zip: zip,
-  zipWith: zipWith,
-  zipAll: zipAll,
-  zipAllWith: zipAllWith,
-  at: at,
-  elemIndex: elemIndex,
-  elemIndices: elemIndices,
-  findIndex: findIndex,
-  findIndices: findIndices
-};
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
-function in$(x, xs){
-  var i = -1, l = xs.length >>> 0;
-  while (++i < l) if (x === xs[i]) return true;
-  return false;
-}
-function not$(x){ return !x; }
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Num.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Num.js
deleted file mode 100644 (file)
index 904b6cd..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-// Generated by LiveScript 1.2.0
-var max, min, negate, abs, signum, quot, rem, div, mod, recip, pi, tau, exp, sqrt, ln, pow, sin, tan, cos, asin, acos, atan, atan2, truncate, round, ceiling, floor, isItNaN, even, odd, gcd, lcm;
-max = curry$(function(x$, y$){
-  return x$ > y$ ? x$ : y$;
-});
-min = curry$(function(x$, y$){
-  return x$ < y$ ? x$ : y$;
-});
-negate = function(x){
-  return -x;
-};
-abs = Math.abs;
-signum = function(x){
-  if (x < 0) {
-    return -1;
-  } else if (x > 0) {
-    return 1;
-  } else {
-    return 0;
-  }
-};
-quot = curry$(function(x, y){
-  return ~~(x / y);
-});
-rem = curry$(function(x$, y$){
-  return x$ % y$;
-});
-div = curry$(function(x, y){
-  return Math.floor(x / y);
-});
-mod = curry$(function(x$, y$){
-  var ref$;
-  return ((x$) % (ref$ = y$) + ref$) % ref$;
-});
-recip = (function(it){
-  return 1 / it;
-});
-pi = Math.PI;
-tau = pi * 2;
-exp = Math.exp;
-sqrt = Math.sqrt;
-ln = Math.log;
-pow = curry$(function(x$, y$){
-  return Math.pow(x$, y$);
-});
-sin = Math.sin;
-tan = Math.tan;
-cos = Math.cos;
-asin = Math.asin;
-acos = Math.acos;
-atan = Math.atan;
-atan2 = curry$(function(x, y){
-  return Math.atan2(x, y);
-});
-truncate = function(x){
-  return ~~x;
-};
-round = Math.round;
-ceiling = Math.ceil;
-floor = Math.floor;
-isItNaN = function(x){
-  return x !== x;
-};
-even = function(x){
-  return x % 2 === 0;
-};
-odd = function(x){
-  return x % 2 !== 0;
-};
-gcd = curry$(function(x, y){
-  var z;
-  x = Math.abs(x);
-  y = Math.abs(y);
-  while (y !== 0) {
-    z = x % y;
-    x = y;
-    y = z;
-  }
-  return x;
-});
-lcm = curry$(function(x, y){
-  return Math.abs(Math.floor(x / gcd(x, y) * y));
-});
-module.exports = {
-  max: max,
-  min: min,
-  negate: negate,
-  abs: abs,
-  signum: signum,
-  quot: quot,
-  rem: rem,
-  div: div,
-  mod: mod,
-  recip: recip,
-  pi: pi,
-  tau: tau,
-  exp: exp,
-  sqrt: sqrt,
-  ln: ln,
-  pow: pow,
-  sin: sin,
-  tan: tan,
-  cos: cos,
-  acos: acos,
-  asin: asin,
-  atan: atan,
-  atan2: atan2,
-  truncate: truncate,
-  round: round,
-  ceiling: ceiling,
-  floor: floor,
-  isItNaN: isItNaN,
-  even: even,
-  odd: odd,
-  gcd: gcd,
-  lcm: lcm
-};
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Obj.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Obj.js
deleted file mode 100644 (file)
index bb244d8..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-// Generated by LiveScript 1.2.0
-var values, keys, pairsToObj, objToPairs, listsToObj, objToLists, empty, each, map, compact, filter, reject, partition, find;
-values = function(object){
-  var i$, x, results$ = [];
-  for (i$ in object) {
-    x = object[i$];
-    results$.push(x);
-  }
-  return results$;
-};
-keys = function(object){
-  var x, results$ = [];
-  for (x in object) {
-    results$.push(x);
-  }
-  return results$;
-};
-pairsToObj = function(object){
-  var i$, len$, x, results$ = {};
-  for (i$ = 0, len$ = object.length; i$ < len$; ++i$) {
-    x = object[i$];
-    results$[x[0]] = x[1];
-  }
-  return results$;
-};
-objToPairs = function(object){
-  var key, value, results$ = [];
-  for (key in object) {
-    value = object[key];
-    results$.push([key, value]);
-  }
-  return results$;
-};
-listsToObj = curry$(function(keys, values){
-  var i$, len$, i, key, results$ = {};
-  for (i$ = 0, len$ = keys.length; i$ < len$; ++i$) {
-    i = i$;
-    key = keys[i$];
-    results$[key] = values[i];
-  }
-  return results$;
-});
-objToLists = function(object){
-  var keys, values, key, value;
-  keys = [];
-  values = [];
-  for (key in object) {
-    value = object[key];
-    keys.push(key);
-    values.push(value);
-  }
-  return [keys, values];
-};
-empty = function(object){
-  var x;
-  for (x in object) {
-    return false;
-  }
-  return true;
-};
-each = curry$(function(f, object){
-  var i$, x;
-  for (i$ in object) {
-    x = object[i$];
-    f(x);
-  }
-  return object;
-});
-map = curry$(function(f, object){
-  var k, x, results$ = {};
-  for (k in object) {
-    x = object[k];
-    results$[k] = f(x);
-  }
-  return results$;
-});
-compact = function(object){
-  var k, x, results$ = {};
-  for (k in object) {
-    x = object[k];
-if (x) {
-      results$[k] = x;
-    }
-  }
-  return results$;
-};
-filter = curry$(function(f, object){
-  var k, x, results$ = {};
-  for (k in object) {
-    x = object[k];
-if (f(x)) {
-      results$[k] = x;
-    }
-  }
-  return results$;
-});
-reject = curry$(function(f, object){
-  var k, x, results$ = {};
-  for (k in object) {
-    x = object[k];
-if (!f(x)) {
-      results$[k] = x;
-    }
-  }
-  return results$;
-});
-partition = curry$(function(f, object){
-  var passed, failed, k, x;
-  passed = {};
-  failed = {};
-  for (k in object) {
-    x = object[k];
-    (f(x) ? passed : failed)[k] = x;
-  }
-  return [passed, failed];
-});
-find = curry$(function(f, object){
-  var i$, x;
-  for (i$ in object) {
-    x = object[i$];
-    if (f(x)) {
-      return x;
-    }
-  }
-});
-module.exports = {
-  values: values,
-  keys: keys,
-  pairsToObj: pairsToObj,
-  objToPairs: objToPairs,
-  listsToObj: listsToObj,
-  objToLists: objToLists,
-  empty: empty,
-  each: each,
-  map: map,
-  filter: filter,
-  compact: compact,
-  reject: reject,
-  partition: partition,
-  find: find
-};
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Str.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/Str.js
deleted file mode 100644 (file)
index c1b3424..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-// Generated by LiveScript 1.2.0
-var split, join, lines, unlines, words, unwords, chars, unchars, reverse, repeat, capitalize, camelize, dasherize;
-split = curry$(function(sep, str){
-  return str.split(sep);
-});
-join = curry$(function(sep, xs){
-  return xs.join(sep);
-});
-lines = function(str){
-  if (!str.length) {
-    return [];
-  }
-  return str.split('\n');
-};
-unlines = function(it){
-  return it.join('\n');
-};
-words = function(str){
-  if (!str.length) {
-    return [];
-  }
-  return str.split(/[ ]+/);
-};
-unwords = function(it){
-  return it.join(' ');
-};
-chars = function(it){
-  return it.split('');
-};
-unchars = function(it){
-  return it.join('');
-};
-reverse = function(str){
-  return str.split('').reverse().join('');
-};
-repeat = curry$(function(n, str){
-  var result, i$;
-  result = '';
-  for (i$ = 0; i$ < n; ++i$) {
-    result += str;
-  }
-  return result;
-});
-capitalize = function(str){
-  return str.charAt(0).toUpperCase() + str.slice(1);
-};
-camelize = function(it){
-  return it.replace(/[-_]+(.)?/g, function(arg$, c){
-    return (c != null ? c : '').toUpperCase();
-  });
-};
-dasherize = function(str){
-  return str.replace(/([^-A-Z])([A-Z]+)/g, function(arg$, lower, upper){
-    return lower + "-" + (upper.length > 1
-      ? upper
-      : upper.toLowerCase());
-  }).replace(/^([A-Z]+)/, function(arg$, upper){
-    if (upper.length > 1) {
-      return upper + "-";
-    } else {
-      return upper.toLowerCase();
-    }
-  });
-};
-module.exports = {
-  split: split,
-  join: join,
-  lines: lines,
-  unlines: unlines,
-  words: words,
-  unwords: unwords,
-  chars: chars,
-  unchars: unchars,
-  reverse: reverse,
-  repeat: repeat,
-  capitalize: capitalize,
-  camelize: camelize,
-  dasherize: dasherize
-};
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/lib/index.js
deleted file mode 100644 (file)
index 7301477..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-// Generated by LiveScript 1.2.0
-var Func, List, Obj, Str, Num, id, isType, replicate, prelude, toString$ = {}.toString;
-Func = require('./Func.js');
-List = require('./List.js');
-Obj = require('./Obj.js');
-Str = require('./Str.js');
-Num = require('./Num.js');
-id = function(x){
-  return x;
-};
-isType = curry$(function(type, x){
-  return toString$.call(x).slice(8, -1) === type;
-});
-replicate = curry$(function(n, x){
-  var i$, results$ = [];
-  for (i$ = 0; i$ < n; ++i$) {
-    results$.push(x);
-  }
-  return results$;
-});
-Str.empty = List.empty;
-Str.slice = List.slice;
-Str.take = List.take;
-Str.drop = List.drop;
-Str.splitAt = List.splitAt;
-Str.takeWhile = List.takeWhile;
-Str.dropWhile = List.dropWhile;
-Str.span = List.span;
-Str.breakStr = List.breakList;
-prelude = {
-  Func: Func,
-  List: List,
-  Obj: Obj,
-  Str: Str,
-  Num: Num,
-  id: id,
-  isType: isType,
-  replicate: replicate
-};
-prelude.each = List.each;
-prelude.map = List.map;
-prelude.filter = List.filter;
-prelude.compact = List.compact;
-prelude.reject = List.reject;
-prelude.partition = List.partition;
-prelude.find = List.find;
-prelude.head = List.head;
-prelude.first = List.first;
-prelude.tail = List.tail;
-prelude.last = List.last;
-prelude.initial = List.initial;
-prelude.empty = List.empty;
-prelude.reverse = List.reverse;
-prelude.difference = List.difference;
-prelude.intersection = List.intersection;
-prelude.union = List.union;
-prelude.countBy = List.countBy;
-prelude.groupBy = List.groupBy;
-prelude.fold = List.fold;
-prelude.foldl = List.foldl;
-prelude.fold1 = List.fold1;
-prelude.foldl1 = List.foldl1;
-prelude.foldr = List.foldr;
-prelude.foldr1 = List.foldr1;
-prelude.unfoldr = List.unfoldr;
-prelude.andList = List.andList;
-prelude.orList = List.orList;
-prelude.any = List.any;
-prelude.all = List.all;
-prelude.unique = List.unique;
-prelude.uniqueBy = List.uniqueBy;
-prelude.sort = List.sort;
-prelude.sortWith = List.sortWith;
-prelude.sortBy = List.sortBy;
-prelude.sum = List.sum;
-prelude.product = List.product;
-prelude.mean = List.mean;
-prelude.average = List.average;
-prelude.concat = List.concat;
-prelude.concatMap = List.concatMap;
-prelude.flatten = List.flatten;
-prelude.maximum = List.maximum;
-prelude.minimum = List.minimum;
-prelude.maximumBy = List.maximumBy;
-prelude.minimumBy = List.minimumBy;
-prelude.scan = List.scan;
-prelude.scanl = List.scanl;
-prelude.scan1 = List.scan1;
-prelude.scanl1 = List.scanl1;
-prelude.scanr = List.scanr;
-prelude.scanr1 = List.scanr1;
-prelude.slice = List.slice;
-prelude.take = List.take;
-prelude.drop = List.drop;
-prelude.splitAt = List.splitAt;
-prelude.takeWhile = List.takeWhile;
-prelude.dropWhile = List.dropWhile;
-prelude.span = List.span;
-prelude.breakList = List.breakList;
-prelude.zip = List.zip;
-prelude.zipWith = List.zipWith;
-prelude.zipAll = List.zipAll;
-prelude.zipAllWith = List.zipAllWith;
-prelude.at = List.at;
-prelude.elemIndex = List.elemIndex;
-prelude.elemIndices = List.elemIndices;
-prelude.findIndex = List.findIndex;
-prelude.findIndices = List.findIndices;
-prelude.apply = Func.apply;
-prelude.curry = Func.curry;
-prelude.flip = Func.flip;
-prelude.fix = Func.fix;
-prelude.over = Func.over;
-prelude.split = Str.split;
-prelude.join = Str.join;
-prelude.lines = Str.lines;
-prelude.unlines = Str.unlines;
-prelude.words = Str.words;
-prelude.unwords = Str.unwords;
-prelude.chars = Str.chars;
-prelude.unchars = Str.unchars;
-prelude.repeat = Str.repeat;
-prelude.capitalize = Str.capitalize;
-prelude.camelize = Str.camelize;
-prelude.dasherize = Str.dasherize;
-prelude.values = Obj.values;
-prelude.keys = Obj.keys;
-prelude.pairsToObj = Obj.pairsToObj;
-prelude.objToPairs = Obj.objToPairs;
-prelude.listsToObj = Obj.listsToObj;
-prelude.objToLists = Obj.objToLists;
-prelude.max = Num.max;
-prelude.min = Num.min;
-prelude.negate = Num.negate;
-prelude.abs = Num.abs;
-prelude.signum = Num.signum;
-prelude.quot = Num.quot;
-prelude.rem = Num.rem;
-prelude.div = Num.div;
-prelude.mod = Num.mod;
-prelude.recip = Num.recip;
-prelude.pi = Num.pi;
-prelude.tau = Num.tau;
-prelude.exp = Num.exp;
-prelude.sqrt = Num.sqrt;
-prelude.ln = Num.ln;
-prelude.pow = Num.pow;
-prelude.sin = Num.sin;
-prelude.tan = Num.tan;
-prelude.cos = Num.cos;
-prelude.acos = Num.acos;
-prelude.asin = Num.asin;
-prelude.atan = Num.atan;
-prelude.atan2 = Num.atan2;
-prelude.truncate = Num.truncate;
-prelude.round = Num.round;
-prelude.ceiling = Num.ceiling;
-prelude.floor = Num.floor;
-prelude.isItNaN = Num.isItNaN;
-prelude.even = Num.even;
-prelude.odd = Num.odd;
-prelude.gcd = Num.gcd;
-prelude.lcm = Num.lcm;
-prelude.VERSION = '1.1.1';
-module.exports = prelude;
-function curry$(f, bound){
-  var context,
-  _curry = function(args) {
-    return f.length > 1 ? function(){
-      var params = args ? args.concat() : [];
-      context = bound ? context || this : this;
-      return params.push.apply(params, arguments) <
-          f.length && arguments.length ?
-        _curry.call(context, params) : f.apply(context, params);
-    } : f;
-  };
-  return _curry();
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/prelude-ls/package.json
deleted file mode 100644 (file)
index f8f5f43..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-{
-  "_args": [
-    [
-      "prelude-ls@https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "prelude-ls@https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-  "_id": "prelude-ls@https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-wLhsH/0VGtPMdefj/jjXob8zcoo=",
-  "_location": "/grunt-standard/standard/eslint/optionator/prelude-ls",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "prelude-ls@https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-    "name": "prelude-ls",
-    "escapedName": "prelude-ls",
-    "rawSpec": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator",
-    "/grunt-standard/standard/eslint/optionator/levn",
-    "/grunt-standard/standard/eslint/optionator/type-check"
-  ],
-  "_spec": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "George Zahariev",
-    "email": "z@georgezahariev.com"
-  },
-  "bugs": {
-    "url": "https://github.com/gkz/prelude-ls/issues"
-  },
-  "description": "prelude.ls is a functionally oriented utility library. It is powerful and flexible. Almost all of its functions are curried. It is written in, and is the recommended base library for, LiveScript.",
-  "devDependencies": {
-    "LiveScript": "~1.2.0",
-    "browserify": "~3.24.13",
-    "istanbul": "~0.2.4",
-    "mocha": "~1.17.1",
-    "uglify-js": "~2.4.12"
-  },
-  "engines": {
-    "node": ">= 0.8.0"
-  },
-  "files": [
-    "lib/",
-    "README.md",
-    "LICENSE"
-  ],
-  "homepage": "http://preludels.com",
-  "keywords": [
-    "prelude",
-    "livescript",
-    "utility",
-    "ls",
-    "coffeescript",
-    "javascript",
-    "library",
-    "functional",
-    "array",
-    "list",
-    "object",
-    "string"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://raw.github.com/gkz/prelude-ls/master/LICENSE"
-    }
-  ],
-  "main": "lib/",
-  "name": "prelude-ls",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/gkz/prelude-ls.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/README.md
deleted file mode 100644 (file)
index 0b8c1fd..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-# type-check [![Build Status](https://travis-ci.org/gkz/type-check.png?branch=master)](https://travis-ci.org/gkz/type-check)
-
-<a name="type-check" />
-
-`type-check` is a library which allows you to check the types of JavaScript values at runtime with a Haskell like type syntax. It is great for checking external input, for testing, or even for adding a bit of safety to your internal code. It is a major component of [levn](https://github.com/gkz/levn). MIT license. Version 0.3.1. Check out the [demo](http://gkz.github.io/type-check/).
-
-For updates on `type-check`, [follow me on twitter](https://twitter.com/gkzahariev).
-
-    npm install type-check
-
-## Quick Examples
-
-```js
-// Basic types:
-var typeCheck = require('type-check').typeCheck;
-typeCheck('Number', 1);               // true
-typeCheck('Number', 'str');           // false
-typeCheck('Error', new Error);        // true
-typeCheck('Undefined', undefined);    // true
-
-// Comment
-typeCheck('count::Number', 1);        // true
-
-// One type OR another type:
-typeCheck('Number | String', 2);      // true
-typeCheck('Number | String', 'str');  // true
-
-// Wildcard, matches all types:
-typeCheck('*', 2) // true
-
-// Array, all elements of a single type:
-typeCheck('[Number]', [1, 2, 3]);                // true
-typeCheck('[Number]', [1, 'str', 3]);            // false
-
-// Tuples, or fixed length arrays with elements of different types:
-typeCheck('(String, Number)', ['str', 2]);       // true
-typeCheck('(String, Number)', ['str']);          // false
-typeCheck('(String, Number)', ['str', 2, 5]);    // false
-
-// Object properties:
-typeCheck('{x: Number, y: Boolean}', {x: 2, y: false});             // true
-typeCheck('{x: Number, y: Boolean}',       {x: 2});                 // false
-typeCheck('{x: Number, y: Maybe Boolean}', {x: 2});                 // true
-typeCheck('{x: Number, y: Boolean}',      {x: 2, y: false, z: 3});  // false
-typeCheck('{x: Number, y: Boolean, ...}', {x: 2, y: false, z: 3});  // true
-
-// A particular type AND object properties:
-typeCheck('RegExp{source: String, ...}', /re/i);          // true
-typeCheck('RegExp{source: String, ...}', {source: 're'}); // false
-
-// Custom types:
-var opt = {customTypes:
-  {Even: { typeOf: 'Number', validate: function(x) { return x % 2 === 0; }}}};
-typeCheck('Even', 2, opt); // true
-
-// Nested:
-var type = '{a: (String, [Number], {y: Array, ...}), b: Error{message: String, ...}}'
-typeCheck(type, {a: ['hi', [1, 2, 3], {y: [1, 'ms']}], b: new Error('oh no')}); // true
-```
-
-Check out the [type syntax format](#syntax) and [guide](#guide).
-
-## Usage
-
-`require('type-check');` returns an object that exposes four properties. `VERSION` is the current version of the library as a string. `typeCheck`, `parseType`, and `parsedTypeCheck` are functions.
-
-```js
-// typeCheck(type, input, options);
-typeCheck('Number', 2);               // true
-
-// parseType(type);
-var parsedType = parseType('Number'); // object
-
-// parsedTypeCheck(parsedType, input, options);
-parsedTypeCheck(parsedType, 2);       // true
-```
-
-### typeCheck(type, input, options)
-
-`typeCheck` checks a JavaScript value `input` against `type` written in the [type format](#type-format) (and taking account the optional `options`) and returns whether the `input` matches the `type`.
-
-##### arguments
-* type - `String` - the type written in the [type format](#type-format) which to check against
-* input - `*` - any JavaScript value, which is to be checked against the type
-* options - `Maybe Object` - an optional parameter specifying additional options, currently the only available option is specifying [custom types](#custom-types)
-
-##### returns
-`Boolean` - whether the input matches the type
-
-##### example
-```js
-typeCheck('Number', 2); // true
-```
-
-### parseType(type)
-
-`parseType` parses string `type` written in the [type format](#type-format) into an object representing the parsed type.
-
-##### arguments
-* type - `String` - the type written in the [type format](#type-format) which to parse
-
-##### returns
-`Object` - an object in the parsed type format representing the parsed type
-
-##### example
-```js
-parseType('Number'); // [{type: 'Number'}]
-```
-### parsedTypeCheck(parsedType, input, options)
-
-`parsedTypeCheck` checks a JavaScript value `input` against parsed `type` in the parsed type format (and taking account the optional `options`) and returns whether the `input` matches the `type`. Use this in conjunction with `parseType` if you are going to use a type more than once.
-
-##### arguments
-* type - `Object` - the type in the parsed type format which to check against
-* input - `*` - any JavaScript value, which is to be checked against the type
-* options - `Maybe Object` - an optional parameter specifying additional options, currently the only available option is specifying [custom types](#custom-types)
-
-##### returns
-`Boolean` - whether the input matches the type
-
-##### example
-```js
-parsedTypeCheck([{type: 'Number'}], 2); // true
-var parsedType = parseType('String');
-parsedTypeCheck(parsedType, 'str');     // true
-```
-
-<a name="type-format" />
-## Type Format
-
-### Syntax
-
-White space is ignored. The root node is a __Types__.
-
-* __Identifier__ = `[\$\w]+` - a group of any lower or upper case letters, numbers, underscores, or dollar signs - eg. `String`
-* __Type__ = an `Identifier`, an `Identifier` followed by a `Structure`, just a `Structure`, or a wildcard `*` - eg. `String`, `Object{x: Number}`, `{x: Number}`, `Array{0: String, 1: Boolean, length: Number}`, `*`
-* __Types__ = optionally a comment (an `Indentifier` followed by a `::`), optionally the identifier `Maybe`, one or more `Type`, separated by `|` - eg. `Number`, `String | Date`, `Maybe Number`, `Maybe Boolean | String`
-* __Structure__ = `Fields`, or a `Tuple`, or an `Array` - eg. `{x: Number}`, `(String, Number)`, `[Date]`
-* __Fields__ = a `{`, followed one or more `Field` separated by a comma `,` (trailing comma `,` is permitted), optionally an `...` (always preceded by a comma `,`), followed by a `}` - eg. `{x: Number, y: String}`, `{k: Function, ...}`
-* __Field__ = an `Identifier`, followed by a colon `:`, followed by `Types` - eg. `x: Date | String`, `y: Boolean`
-* __Tuple__ = a `(`, followed by one or more `Types` separated by a comma `,` (trailing comma `,` is permitted), followed by a `)` - eg `(Date)`, `(Number, Date)`
-* __Array__ = a `[` followed by exactly one `Types` followed by a `]` - eg. `[Boolean]`, `[Boolean | Null]`
-
-### Guide
-
-`type-check` uses `Object.toString` to find out the basic type of a value. Specifically,
-
-```js
-{}.toString.call(VALUE).slice(8, -1)
-{}.toString.call(true).slice(8, -1) // 'Boolean'
-```
-A basic type, eg. `Number`, uses this check. This is much more versatile than using `typeof` - for example, with `document`, `typeof` produces `'object'` which isn't that useful, and our technique produces `'HTMLDocument'`.
-
-You may check for multiple types by separating types with a `|`. The checker proceeds from left to right, and passes if the value is any of the types - eg. `String | Boolean` first checks if the value is a string, and then if it is a boolean. If it is none of those, then it returns false.
-
-Adding a `Maybe` in front of a list of multiple types is the same as also checking for `Null` and `Undefined` - eg. `Maybe String` is equivalent to `Undefined | Null | String`.
-
-You may add a comment to remind you of what the type is for by following an identifier with a `::` before a type (or multiple types). The comment is simply thrown out.
-
-The wildcard `*` matches all types.
-
-There are three types of structures for checking the contents of a value: 'fields', 'tuple', and 'array'.
-
-If used by itself, a 'fields' structure will pass with any type of object as long as it is an instance of `Object` and the properties pass - this allows for duck typing - eg. `{x: Boolean}`.
-
-To check if the properties pass, and the value is of a certain type, you can specify the type - eg. `Error{message: String}`.
-
-If you want to make a field optional, you can simply use `Maybe` - eg. `{x: Boolean, y: Maybe String}` will still pass if `y` is undefined (or null).
-
-If you don't care if the value has properties beyond what you have specified, you can use the 'etc' operator `...` - eg. `{x: Boolean, ...}` will match an object with an `x` property that is a boolean, and with zero or more other properties.
-
-For an array, you must specify one or more types (separated by `|`) - it will pass for something of any length as long as each element passes the types provided - eg. `[Number]`, `[Number | String]`.
-
-A tuple checks for a fixed number of elements, each of a potentially different type. Each element is separated by a comma - eg. `(String, Number)`.
-
-An array and tuple structure check that the value is of type `Array` by default, but if another type is specified, they will check for that instead - eg. `Int32Array[Number]`. You can use the wildcard `*` to search for any type at all.
-
-Check out the [type precedence](https://github.com/zaboco/type-precedence) library for type-check.
-
-## Options
-
-Options is an object. It is an optional parameter to the `typeCheck` and `parsedTypeCheck` functions. The only current option is `customTypes`.
-
-<a name="custom-types" />
-### Custom Types
-
-__Example:__
-
-```js
-var options = {
-  customTypes: {
-    Even: {
-      typeOf: 'Number',
-      validate: function(x) {
-        return x % 2 === 0;
-      }
-    }
-  }
-};
-typeCheck('Even', 2, options); // true
-typeCheck('Even', 3, options); // false
-```
-
-`customTypes` allows you to set up custom types for validation. The value of this is an object. The keys of the object are the types you will be matching. Each value of the object will be an object having a `typeOf` property - a string, and `validate` property - a function.
-
-The `typeOf` property is the type the value should be, and `validate` is a function which should return true if the value is of that type. `validate` receives one parameter, which is the value that we are checking.
-
-## Technical About
-
-`type-check` is written in [LiveScript](http://livescript.net/) - a language that compiles to JavaScript. It also uses the [prelude.ls](http://preludels.com/) library.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/check.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/check.js
deleted file mode 100644 (file)
index c1e51ff..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var ref$, any, all, isItNaN, types, defaultType, customTypes, toString$ = {}.toString;
-  ref$ = require('prelude-ls'), any = ref$.any, all = ref$.all, isItNaN = ref$.isItNaN;
-  types = {
-    Number: {
-      typeOf: 'Number',
-      validate: function(it){
-        return !isItNaN(it);
-      }
-    },
-    NaN: {
-      typeOf: 'Number',
-      validate: isItNaN
-    },
-    Int: {
-      typeOf: 'Number',
-      validate: function(it){
-        return !isItNaN(it) && it % 1 === 0;
-      }
-    },
-    Float: {
-      typeOf: 'Number',
-      validate: function(it){
-        return !isItNaN(it);
-      }
-    },
-    Date: {
-      typeOf: 'Date',
-      validate: function(it){
-        return !isItNaN(it.getTime());
-      }
-    }
-  };
-  defaultType = {
-    array: 'Array',
-    tuple: 'Array'
-  };
-  function checkArray(input, type){
-    return all(function(it){
-      return checkMultiple(it, type.of);
-    }, input);
-  }
-  function checkTuple(input, type){
-    var i, i$, ref$, len$, types;
-    i = 0;
-    for (i$ = 0, len$ = (ref$ = type.of).length; i$ < len$; ++i$) {
-      types = ref$[i$];
-      if (!checkMultiple(input[i], types)) {
-        return false;
-      }
-      i++;
-    }
-    return input.length <= i;
-  }
-  function checkFields(input, type){
-    var inputKeys, numInputKeys, k, numOfKeys, key, ref$, types;
-    inputKeys = {};
-    numInputKeys = 0;
-    for (k in input) {
-      inputKeys[k] = true;
-      numInputKeys++;
-    }
-    numOfKeys = 0;
-    for (key in ref$ = type.of) {
-      types = ref$[key];
-      if (!checkMultiple(input[key], types)) {
-        return false;
-      }
-      if (inputKeys[key]) {
-        numOfKeys++;
-      }
-    }
-    return type.subset || numInputKeys === numOfKeys;
-  }
-  function checkStructure(input, type){
-    if (!(input instanceof Object)) {
-      return false;
-    }
-    switch (type.structure) {
-    case 'fields':
-      return checkFields(input, type);
-    case 'array':
-      return checkArray(input, type);
-    case 'tuple':
-      return checkTuple(input, type);
-    }
-  }
-  function check(input, typeObj){
-    var type, structure, setting, that;
-    type = typeObj.type, structure = typeObj.structure;
-    if (type) {
-      if (type === '*') {
-        return true;
-      }
-      setting = customTypes[type] || types[type];
-      if (setting) {
-        return setting.typeOf === toString$.call(input).slice(8, -1) && setting.validate(input);
-      } else {
-        return type === toString$.call(input).slice(8, -1) && (!structure || checkStructure(input, typeObj));
-      }
-    } else if (structure) {
-      if (that = defaultType[structure]) {
-        if (that !== toString$.call(input).slice(8, -1)) {
-          return false;
-        }
-      }
-      return checkStructure(input, typeObj);
-    } else {
-      throw new Error("No type defined. Input: " + input + ".");
-    }
-  }
-  function checkMultiple(input, types){
-    if (toString$.call(types).slice(8, -1) !== 'Array') {
-      throw new Error("Types must be in an array. Input: " + input + ".");
-    }
-    return any(function(it){
-      return check(input, it);
-    }, types);
-  }
-  module.exports = function(parsedType, input, options){
-    options == null && (options = {});
-    customTypes = options.customTypes || {};
-    return checkMultiple(input, parsedType);
-  };
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/index.js
deleted file mode 100644 (file)
index ff263e1..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var VERSION, parseType, parsedTypeCheck, typeCheck;
-  VERSION = '0.3.1';
-  parseType = require('./parse-type');
-  parsedTypeCheck = require('./check');
-  typeCheck = function(type, input, options){
-    return parsedTypeCheck(parseType(type), input, options);
-  };
-  module.exports = {
-    VERSION: VERSION,
-    typeCheck: typeCheck,
-    parsedTypeCheck: parsedTypeCheck,
-    parseType: parseType
-  };
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/parse-type.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/lib/parse-type.js
deleted file mode 100644 (file)
index 32c3a46..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-// Generated by LiveScript 1.2.0
-(function(){
-  var identifierRegex, tokenRegex;
-  identifierRegex = /[\$\w]+/;
-  function peek(tokens){
-    var token;
-    token = tokens[0];
-    if (token == null) {
-      throw new Error('Unexpected end of input.');
-    }
-    return token;
-  }
-  function consumeIdent(tokens){
-    var token;
-    token = peek(tokens);
-    if (!identifierRegex.test(token)) {
-      throw new Error("Expected text, got '" + token + "' instead.");
-    }
-    return tokens.shift();
-  }
-  function consumeOp(tokens, op){
-    var token;
-    token = peek(tokens);
-    if (token !== op) {
-      throw new Error("Expected '" + op + "', got '" + token + "' instead.");
-    }
-    return tokens.shift();
-  }
-  function maybeConsumeOp(tokens, op){
-    var token;
-    token = tokens[0];
-    if (token === op) {
-      return tokens.shift();
-    } else {
-      return null;
-    }
-  }
-  function consumeArray(tokens){
-    var types;
-    consumeOp(tokens, '[');
-    if (peek(tokens) === ']') {
-      throw new Error("Must specify type of Array - eg. [Type], got [] instead.");
-    }
-    types = consumeTypes(tokens);
-    consumeOp(tokens, ']');
-    return {
-      structure: 'array',
-      of: types
-    };
-  }
-  function consumeTuple(tokens){
-    var components;
-    components = [];
-    consumeOp(tokens, '(');
-    if (peek(tokens) === ')') {
-      throw new Error("Tuple must be of at least length 1 - eg. (Type), got () instead.");
-    }
-    for (;;) {
-      components.push(consumeTypes(tokens));
-      maybeConsumeOp(tokens, ',');
-      if (')' === peek(tokens)) {
-        break;
-      }
-    }
-    consumeOp(tokens, ')');
-    return {
-      structure: 'tuple',
-      of: components
-    };
-  }
-  function consumeFields(tokens){
-    var fields, subset, ref$, key, types;
-    fields = {};
-    consumeOp(tokens, '{');
-    subset = false;
-    for (;;) {
-      if (maybeConsumeOp(tokens, '...')) {
-        subset = true;
-        break;
-      }
-      ref$ = consumeField(tokens), key = ref$[0], types = ref$[1];
-      fields[key] = types;
-      maybeConsumeOp(tokens, ',');
-      if ('}' === peek(tokens)) {
-        break;
-      }
-    }
-    consumeOp(tokens, '}');
-    return {
-      structure: 'fields',
-      of: fields,
-      subset: subset
-    };
-  }
-  function consumeField(tokens){
-    var key, types;
-    key = consumeIdent(tokens);
-    consumeOp(tokens, ':');
-    types = consumeTypes(tokens);
-    return [key, types];
-  }
-  function maybeConsumeStructure(tokens){
-    switch (tokens[0]) {
-    case '[':
-      return consumeArray(tokens);
-    case '(':
-      return consumeTuple(tokens);
-    case '{':
-      return consumeFields(tokens);
-    }
-  }
-  function consumeType(tokens){
-    var token, wildcard, type, structure;
-    token = peek(tokens);
-    wildcard = token === '*';
-    if (wildcard || identifierRegex.test(token)) {
-      type = wildcard
-        ? consumeOp(tokens, '*')
-        : consumeIdent(tokens);
-      structure = maybeConsumeStructure(tokens);
-      if (structure) {
-        return structure.type = type, structure;
-      } else {
-        return {
-          type: type
-        };
-      }
-    } else {
-      structure = maybeConsumeStructure(tokens);
-      if (!structure) {
-        throw new Error("Unexpected character: " + token);
-      }
-      return structure;
-    }
-  }
-  function consumeTypes(tokens){
-    var lookahead, types, typesSoFar, typeObj, type;
-    if ('::' === peek(tokens)) {
-      throw new Error("No comment before comment separator '::' found.");
-    }
-    lookahead = tokens[1];
-    if (lookahead != null && lookahead === '::') {
-      tokens.shift();
-      tokens.shift();
-    }
-    types = [];
-    typesSoFar = {};
-    if ('Maybe' === peek(tokens)) {
-      tokens.shift();
-      types = [
-        {
-          type: 'Undefined'
-        }, {
-          type: 'Null'
-        }
-      ];
-      typesSoFar = {
-        Undefined: true,
-        Null: true
-      };
-    }
-    for (;;) {
-      typeObj = consumeType(tokens), type = typeObj.type;
-      if (!typesSoFar[type]) {
-        types.push(typeObj);
-      }
-      typesSoFar[type] = true;
-      if (!maybeConsumeOp(tokens, '|')) {
-        break;
-      }
-    }
-    return types;
-  }
-  tokenRegex = RegExp('\\.\\.\\.|::|->|' + identifierRegex.source + '|\\S', 'g');
-  module.exports = function(input){
-    var tokens, e;
-    if (!input.length) {
-      throw new Error('No type specified.');
-    }
-    tokens = input.match(tokenRegex) || [];
-    if (in$('->', tokens)) {
-      throw new Error("Function types are not supported.\ To validate that something is a function, you may use 'Function'.");
-    }
-    try {
-      return consumeTypes(tokens);
-    } catch (e$) {
-      e = e$;
-      throw new Error(e.message + " - Remaining tokens: " + JSON.stringify(tokens) + " - Initial input: '" + input + "'");
-    }
-  };
-  function in$(x, xs){
-    var i = -1, l = xs.length >>> 0;
-    while (++i < l) if (x === xs[i]) return true;
-    return false;
-  }
-}).call(this);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/type-check/package.json
deleted file mode 100644 (file)
index e4accfa..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-{
-  "_args": [
-    [
-      "type-check@https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "type-check@https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-  "_id": "type-check@https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-kjOSPE2hdNCsVIDs/W74TDSetY0=",
-  "_location": "/grunt-standard/standard/eslint/optionator/type-check",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "type-check@https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-    "name": "type-check",
-    "escapedName": "type-check",
-    "rawSpec": "https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator",
-    "/grunt-standard/standard/eslint/optionator/levn"
-  ],
-  "_spec": "https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "George Zahariev",
-    "email": "z@georgezahariev.com"
-  },
-  "bugs": {
-    "url": "https://github.com/gkz/type-check/issues"
-  },
-  "dependencies": {
-    "prelude-ls": "~1.1.0"
-  },
-  "description": "type-check allows you to check the types of JavaScript values at runtime with a Haskell like type syntax.",
-  "devDependencies": {
-    "LiveScript": "~1.2.0",
-    "browserify": "~2.33",
-    "istanbul": "~0.1.43",
-    "mocha": "~1.8.2"
-  },
-  "engines": {
-    "node": ">= 0.8.0"
-  },
-  "files": [
-    "lib",
-    "README.md",
-    "LICENSE"
-  ],
-  "homepage": "https://github.com/gkz/type-check",
-  "keywords": [
-    "type",
-    "check",
-    "checking",
-    "library"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://raw.github.com/gkz/type-check/master/LICENSE"
-    }
-  ],
-  "main": "./lib/",
-  "name": "type-check",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/gkz/type-check.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/type-check/-/type-check-0.3.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/README.markdown
deleted file mode 100644 (file)
index 346374e..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-wordwrap
-========
-
-Wrap your words.
-
-example
-=======
-
-made out of meat
-----------------
-
-meat.js
-
-    var wrap = require('wordwrap')(15);
-    console.log(wrap('You and your whole family are made out of meat.'));
-
-output:
-
-    You and your
-    whole family
-    are made out
-    of meat.
-
-centered
---------
-
-center.js
-
-    var wrap = require('wordwrap')(20, 60);
-    console.log(wrap(
-        'At long last the struggle and tumult was over.'
-        + ' The machines had finally cast off their oppressors'
-        + ' and were finally free to roam the cosmos.'
-        + '\n'
-        + 'Free of purpose, free of obligation.'
-        + ' Just drifting through emptiness.'
-        + ' The sun was just another point of light.'
-    ));
-
-output:
-
-                        At long last the struggle and tumult
-                        was over. The machines had finally cast
-                        off their oppressors and were finally
-                        free to roam the cosmos.
-                        Free of purpose, free of obligation.
-                        Just drifting through emptiness. The
-                        sun was just another point of light.
-
-methods
-=======
-
-var wrap = require('wordwrap');
-
-wrap(stop), wrap(start, stop, params={mode:"soft"})
----------------------------------------------------
-
-Returns a function that takes a string and returns a new string.
-
-Pad out lines with spaces out to column `start` and then wrap until column
-`stop`. If a word is longer than `stop - start` characters it will overflow.
-
-In "soft" mode, split chunks by `/(\S+\s+/` and don't break up chunks which are
-longer than `stop - start`, in "hard" mode, split chunks with `/\b/` and break
-up chunks longer than `stop - start`.
-
-wrap.hard(start, stop)
-----------------------
-
-Like `wrap()` but with `params.mode = "hard"`.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/center.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/center.js
deleted file mode 100644 (file)
index a3fbaae..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var wrap = require('wordwrap')(20, 60);
-console.log(wrap(
-    'At long last the struggle and tumult was over.'
-    + ' The machines had finally cast off their oppressors'
-    + ' and were finally free to roam the cosmos.'
-    + '\n'
-    + 'Free of purpose, free of obligation.'
-    + ' Just drifting through emptiness.'
-    + ' The sun was just another point of light.'
-));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/meat.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/example/meat.js
deleted file mode 100644 (file)
index a4665e1..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-var wrap = require('wordwrap')(15);
-
-console.log(wrap('You and your whole family are made out of meat.'));
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/index.js
deleted file mode 100644 (file)
index c9bc945..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-var wordwrap = module.exports = function (start, stop, params) {
-    if (typeof start === 'object') {
-        params = start;
-        start = params.start;
-        stop = params.stop;
-    }
-    
-    if (typeof stop === 'object') {
-        params = stop;
-        start = start || params.start;
-        stop = undefined;
-    }
-    
-    if (!stop) {
-        stop = start;
-        start = 0;
-    }
-    
-    if (!params) params = {};
-    var mode = params.mode || 'soft';
-    var re = mode === 'hard' ? /\b/ : /(\S+\s+)/;
-    
-    return function (text) {
-        var chunks = text.toString()
-            .split(re)
-            .reduce(function (acc, x) {
-                if (mode === 'hard') {
-                    for (var i = 0; i < x.length; i += stop - start) {
-                        acc.push(x.slice(i, i + stop - start));
-                    }
-                }
-                else acc.push(x)
-                return acc;
-            }, [])
-        ;
-        
-        return chunks.reduce(function (lines, rawChunk) {
-            if (rawChunk === '') return lines;
-            
-            var chunk = rawChunk.replace(/\t/g, '    ');
-            
-            var i = lines.length - 1;
-            if (lines[i].length + chunk.length > stop) {
-                lines[i] = lines[i].replace(/\s+$/, '');
-                
-                chunk.split(/\n/).forEach(function (c) {
-                    lines.push(
-                        new Array(start + 1).join(' ')
-                        + c.replace(/^\s+/, '')
-                    );
-                });
-            }
-            else if (chunk.match(/\n/)) {
-                var xs = chunk.split(/\n/);
-                lines[i] += xs.shift();
-                xs.forEach(function (c) {
-                    lines.push(
-                        new Array(start + 1).join(' ')
-                        + c.replace(/^\s+/, '')
-                    );
-                });
-            }
-            else {
-                lines[i] += chunk;
-            }
-            
-            return lines;
-        }, [ new Array(start + 1).join(' ') ]).join('\n');
-    };
-};
-
-wordwrap.soft = wordwrap;
-
-wordwrap.hard = function (start, stop) {
-    return wordwrap(start, stop, { mode : 'hard' });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/package.json
deleted file mode 100644 (file)
index 50771d2..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_id": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
-  "_location": "/grunt-standard/standard/eslint/optionator/wordwrap",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wordwrap@https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "name": "wordwrap",
-    "escapedName": "wordwrap",
-    "rawSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint/optionator"
-  ],
-  "_spec": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-wordwrap/issues"
-  },
-  "description": "Wrap those words. Show them at what columns to start and stop.",
-  "devDependencies": {
-    "expresso": "=0.7.x"
-  },
-  "directories": {
-    "lib": ".",
-    "example": "example",
-    "test": "test"
-  },
-  "engines": {
-    "node": ">=0.4.0"
-  },
-  "homepage": "https://github.com/substack/node-wordwrap#readme",
-  "keywords": [
-    "word",
-    "wrap",
-    "rule",
-    "format",
-    "column"
-  ],
-  "license": "MIT/X11",
-  "main": "./index.js",
-  "name": "wordwrap",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-wordwrap.git"
-  },
-  "scripts": {
-    "test": "expresso"
-  },
-  "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/break.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/break.js
deleted file mode 100644 (file)
index 749292e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-var assert = require('assert');
-var wordwrap = require('../');
-
-exports.hard = function () {
-    var s = 'Assert from {"type":"equal","ok":false,"found":1,"wanted":2,'
-        + '"stack":[],"id":"b7ddcd4c409de8799542a74d1a04689b",'
-        + '"browser":"chrome/6.0"}'
-    ;
-    var s_ = wordwrap.hard(80)(s);
-    
-    var lines = s_.split('\n');
-    assert.equal(lines.length, 2);
-    assert.ok(lines[0].length < 80);
-    assert.ok(lines[1].length < 80);
-    
-    assert.equal(s, s_.replace(/\n/g, ''));
-};
-
-exports.break = function () {
-    var s = new Array(55+1).join('a');
-    var s_ = wordwrap.hard(20)(s);
-    
-    var lines = s_.split('\n');
-    assert.equal(lines.length, 3);
-    assert.ok(lines[0].length === 20);
-    assert.ok(lines[1].length === 20);
-    assert.ok(lines[2].length === 15);
-    
-    assert.equal(s, s_.replace(/\n/g, ''));
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/idleness.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/idleness.txt
deleted file mode 100644 (file)
index aa3f490..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-In Praise of Idleness
-
-By Bertrand Russell
-
-[1932]
-
-Like most of my generation, I was brought up on the saying: 'Satan finds some mischief for idle hands to do.' Being a highly virtuous child, I believed all that I was told, and acquired a conscience which has kept me working hard down to the present moment. But although my conscience has controlled my actions, my opinions have undergone a revolution. I think that there is far too much work done in the world, that immense harm is caused by the belief that work is virtuous, and that what needs to be preached in modern industrial countries is quite different from what always has been preached. Everyone knows the story of the traveler in Naples who saw twelve beggars lying in the sun (it was before the days of Mussolini), and offered a lira to the laziest of them. Eleven of them jumped up to claim it, so he gave it to the twelfth. this traveler was on the right lines. But in countries which do not enjoy Mediterranean sunshine idleness is more difficult, and a great public propaganda will be required to inaugurate it. I hope that, after reading the following pages, the leaders of the YMCA will start a campaign to induce good young men to do nothing. If so, I shall not have lived in vain.
-
-Before advancing my own arguments for laziness, I must dispose of one which I cannot accept. Whenever a person who already has enough to live on proposes to engage in some everyday kind of job, such as school-teaching or typing, he or she is told that such conduct takes the bread out of other people's mouths, and is therefore wicked. If this argument were valid, it would only be necessary for us all to be idle in order that we should all have our mouths full of bread. What people who say such things forget is that what a man earns he usually spends, and in spending he gives employment. As long as a man spends his income, he puts just as much bread into people's mouths in spending as he takes out of other people's mouths in earning. The real villain, from this point of view, is the man who saves. If he merely puts his savings in a stocking, like the proverbial French peasant, it is obvious that they do not give employment. If he invests his savings, the matter is less obvious, and different cases arise.
-
-One of the commonest things to do with savings is to lend them to some Government. In view of the fact that the bulk of the public expenditure of most civilized Governments consists in payment for past wars or preparation for future wars, the man who lends his money to a Government is in the same position as the bad men in Shakespeare who hire murderers. The net result of the man's economical habits is to increase the armed forces of the State to which he lends his savings. Obviously it would be better if he spent the money, even if he spent it in drink or gambling.
-
-But, I shall be told, the case is quite different when savings are invested in industrial enterprises. When such enterprises succeed, and produce something useful, this may be conceded. In these days, however, no one will deny that most enterprises fail. That means that a large amount of human labor, which might have been devoted to producing something that could be enjoyed, was expended on producing machines which, when produced, lay idle and did no good to anyone. The man who invests his savings in a concern that goes bankrupt is therefore injuring others as well as himself. If he spent his money, say, in giving parties for his friends, they (we may hope) would get pleasure, and so would all those upon whom he spent money, such as the butcher, the baker, and the bootlegger. But if he spends it (let us say) upon laying down rails for surface card in some place where surface cars turn out not to be wanted, he has diverted a mass of labor into channels where it gives pleasure to no one. Nevertheless, when he becomes poor through failure of his investment he will be regarded as a victim of undeserved misfortune, whereas the gay spendthrift, who has spent his money philanthropically, will be despised as a fool and a frivolous person.
-
-All this is only preliminary. I want to say, in all seriousness, that a great deal of harm is being done in the modern world by belief in the virtuousness of work, and that the road to happiness and prosperity lies in an organized diminution of work.
-
-First of all: what is work? Work is of two kinds: first, altering the position of matter at or near the earth's surface relatively to other such matter; second, telling other people to do so. The first kind is unpleasant and ill paid; the second is pleasant and highly paid. The second kind is capable of indefinite extension: there are not only those who give orders, but those who give advice as to what orders should be given. Usually two opposite kinds of advice are given simultaneously by two organized bodies of men; this is called politics. The skill required for this kind of work is not knowledge of the subjects as to which advice is given, but knowledge of the art of persuasive speaking and writing, i.e. of advertising.
-
-Throughout Europe, though not in America, there is a third class of men, more respected than either of the classes of workers. There are men who, through ownership of land, are able to make others pay for the privilege of being allowed to exist and to work. These landowners are idle, and I might therefore be expected to praise them. Unfortunately, their idleness is only rendered possible by the industry of others; indeed their desire for comfortable idleness is historically the source of the whole gospel of work. The last thing they have ever wished is that others should follow their example.
-
-From the beginning of civilization until the Industrial Revolution, a man could, as a rule, produce by hard work little more than was required for the subsistence of himself and his family, although his wife worked at least as hard as he did, and his children added their labor as soon as they were old enough to do so. The small surplus above bare necessaries was not left to those who produced it, but was appropriated by warriors and priests. In times of famine there was no surplus; the warriors and priests, however, still secured as much as at other times, with the result that many of the workers died of hunger. This system persisted in Russia until 1917 [1], and still persists in the East; in England, in spite of the Industrial Revolution, it remained in full force throughout the Napoleonic wars, and until a hundred years ago, when the new class of manufacturers acquired power. In America, the system came to an end with the Revolution, except in the South, where it persisted until the Civil War. A system which lasted so long and ended so recently has naturally left a profound impress upon men's thoughts and opinions. Much that we take for granted about the desirability of work is derived from this system, and, being pre-industrial, is not adapted to the modern world. Modern technique has made it possible for leisure, within limits, to be not the prerogative of small privileged classes, but a right evenly distributed throughout the community. The morality of work is the morality of slaves, and the modern world has no need of slavery.
-
-It is obvious that, in primitive communities, peasants, left to themselves, would not have parted with the slender surplus upon which the warriors and priests subsisted, but would have either produced less or consumed more. At first, sheer force compelled them to produce and part with the surplus. Gradually, however, it was found possible to induce many of them to accept an ethic according to which it was their duty to work hard, although part of their work went to support others in idleness. By this means the amount of compulsion required was lessened, and the expenses of government were diminished. To this day, 99 per cent of British wage-earners would be genuinely shocked if it were proposed that the King should not have a larger income than a working man. The conception of duty, speaking historically, has been a means used by the holders of power to induce others to live for the interests of their masters rather than for their own. Of course the holders of power conceal this fact from themselves by managing to believe that their interests are identical with the larger interests of humanity. Sometimes this is true; Athenian slave-owners, for instance, employed part of their leisure in making a permanent contribution to civilization which would have been impossible under a just economic system. Leisure is essential to civilization, and in former times leisure for the few was only rendered possible by the labors of the many. But their labors were valuable, not because work is good, but because leisure is good. And with modern technique it would be possible to distribute leisure justly without injury to civilization.
-
-Modern technique has made it possible to diminish enormously the amount of labor required to secure the necessaries of life for everyone. This was made obvious during the war. At that time all the men in the armed forces, and all the men and women engaged in the production of munitions, all the men and women engaged in spying, war propaganda, or Government offices connected with the war, were withdrawn from productive occupations. In spite of this, the general level of well-being among unskilled wage-earners on the side of the Allies was higher than before or since. The significance of this fact was concealed by finance: borrowing made it appear as if the future was nourishing the present. But that, of course, would have been impossible; a man cannot eat a loaf of bread that does not yet exist. The war showed conclusively that, by the scientific organization of production, it is possible to keep modern populations in fair comfort on a small part of the working capacity of the modern world. If, at the end of the war, the scientific organization, which had been created in order to liberate men for fighting and munition work, had been preserved, and the hours of the week had been cut down to four, all would have been well. Instead of that the old chaos was restored, those whose work was demanded were made to work long hours, and the rest were left to starve as unemployed. Why? Because work is a duty, and a man should not receive wages in proportion to what he has produced, but in proportion to his virtue as exemplified by his industry.
-
-This is the morality of the Slave State, applied in circumstances totally unlike those in which it arose. No wonder the result has been disastrous. Let us take an illustration. Suppose that, at a given moment, a certain number of people are engaged in the manufacture of pins. They make as many pins as the world needs, working (say) eight hours a day. Someone makes an invention by which the same number of men can make twice as many pins: pins are already so cheap that hardly any more will be bought at a lower price. In a sensible world, everybody concerned in the manufacturing of pins would take to working four hours instead of eight, and everything else would go on as before. But in the actual world this would be thought demoralizing. The men still work eight hours, there are too many pins, some employers go bankrupt, and half the men previously concerned in making pins are thrown out of work. There is, in the end, just as much leisure as on the other plan, but half the men are totally idle while half are still overworked. In this way, it is insured that the unavoidable leisure shall cause misery all round instead of being a universal source of happiness. Can anything more insane be imagined?
-
-The idea that the poor should have leisure has always been shocking to the rich. In England, in the early nineteenth century, fifteen hours was the ordinary day's work for a man; children sometimes did as much, and very commonly did twelve hours a day. When meddlesome busybodies suggested that perhaps these hours were rather long, they were told that work kept adults from drink and children from mischief. When I was a child, shortly after urban working men had acquired the vote, certain public holidays were established by law, to the great indignation of the upper classes. I remember hearing an old Duchess say: 'What do the poor want with holidays? They ought to work.' People nowadays are less frank, but the sentiment persists, and is the source of much of our economic confusion.
-
-Let us, for a moment, consider the ethics of work frankly, without superstition. Every human being, of necessity, consumes, in the course of his life, a certain amount of the produce of human labor. Assuming, as we may, that labor is on the whole disagreeable, it is unjust that a man should consume more than he produces. Of course he may provide services rather than commodities, like a medical man, for example; but he should provide something in return for his board and lodging. to this extent, the duty of work must be admitted, but to this extent only.
-
-I shall not dwell upon the fact that, in all modern societies outside the USSR, many people escape even this minimum amount of work, namely all those who inherit money and all those who marry money. I do not think the fact that these people are allowed to be idle is nearly so harmful as the fact that wage-earners are expected to overwork or starve.
-
-If the ordinary wage-earner worked four hours a day, there would be enough for everybody and no unemployment -- assuming a certain very moderate amount of sensible organization. This idea shocks the well-to-do, because they are convinced that the poor would not know how to use so much leisure. In America men often work long hours even when they are well off; such men, naturally, are indignant at the idea of leisure for wage-earners, except as the grim punishment of unemployment; in fact, they dislike leisure even for their sons. Oddly enough, while they wish their sons to work so hard as to have no time to be civilized, they do not mind their wives and daughters having no work at all. the snobbish admiration of uselessness, which, in an aristocratic society, extends to both sexes, is, under a plutocracy, confined to women; this, however, does not make it any more in agreement with common sense.
-
-The wise use of leisure, it must be conceded, is a product of civilization and education. A man who has worked long hours all his life will become bored if he becomes suddenly idle. But without a considerable amount of leisure a man is cut off from many of the best things. There is no longer any reason why the bulk of the population should suffer this deprivation; only a foolish asceticism, usually vicarious, makes us continue to insist on work in excessive quantities now that the need no longer exists.
-
-In the new creed which controls the government of Russia, while there is much that is very different from the traditional teaching of the West, there are some things that are quite unchanged. The attitude of the governing classes, and especially of those who conduct educational propaganda, on the subject of the dignity of labor, is almost exactly that which the governing classes of the world have always preached to what were called the 'honest poor'. Industry, sobriety, willingness to work long hours for distant advantages, even submissiveness to authority, all these reappear; moreover authority still represents the will of the Ruler of the Universe, Who, however, is now called by a new name, Dialectical Materialism.
-
-The victory of the proletariat in Russia has some points in common with the victory of the feminists in some other countries. For ages, men had conceded the superior saintliness of women, and had consoled women for their inferiority by maintaining that saintliness is more desirable than power. At last the feminists decided that they would have both, since the pioneers among them believed all that the men had told them about the desirability of virtue, but not what they had told them about the worthlessness of political power. A similar thing has happened in Russia as regards manual work. For ages, the rich and their sycophants have written in praise of 'honest toil', have praised the simple life, have professed a religion which teaches that the poor are much more likely to go to heaven than the rich, and in general have tried to make manual workers believe that there is some special nobility about altering the position of matter in space, just as men tried to make women believe that they derived some special nobility from their sexual enslavement. In Russia, all this teaching about the excellence of manual work has been taken seriously, with the result that the manual worker is more honored than anyone else. What are, in essence, revivalist appeals are made, but not for the old purposes: they are made to secure shock workers for special tasks. Manual work is the ideal which is held before the young, and is the basis of all ethical teaching.
-
-For the present, possibly, this is all to the good. A large country, full of natural resources, awaits development, and has has to be developed with very little use of credit. In these circumstances, hard work is necessary, and is likely to bring a great reward. But what will happen when the point has been reached where everybody could be comfortable without working long hours?
-
-In the West, we have various ways of dealing with this problem. We have no attempt at economic justice, so that a large proportion of the total produce goes to a small minority of the population, many of whom do no work at all. Owing to the absence of any central control over production, we produce hosts of things that are not wanted. We keep a large percentage of the working population idle, because we can dispense with their labor by making the others overwork. When all these methods prove inadequate, we have a war: we cause a number of people to manufacture high explosives, and a number of others to explode them, as if we were children who had just discovered fireworks. By a combination of all these devices we manage, though with difficulty, to keep alive the notion that a great deal of severe manual work must be the lot of the average man.
-
-In Russia, owing to more economic justice and central control over production, the problem will have to be differently solved. the rational solution would be, as soon as the necessaries and elementary comforts can be provided for all, to reduce the hours of labor gradually, allowing a popular vote to decide, at each stage, whether more leisure or more goods were to be preferred. But, having taught the supreme virtue of hard work, it is difficult to see how the authorities can aim at a paradise in which there will be much leisure and little work. It seems more likely that they will find continually fresh schemes, by which present leisure is to be sacrificed to future productivity. I read recently of an ingenious plan put forward by Russian engineers, for making the White Sea and the northern coasts of Siberia warm, by putting a dam across the Kara Sea. An admirable project, but liable to postpone proletarian comfort for a generation, while the nobility of toil is being displayed amid the ice-fields and snowstorms of the Arctic Ocean. This sort of thing, if it happens, will be the result of regarding the virtue of hard work as an end in itself, rather than as a means to a state of affairs in which it is no longer needed.
-
-The fact is that moving matter about, while a certain amount of it is necessary to our existence, is emphatically not one of the ends of human life. If it were, we should have to consider every navvy superior to Shakespeare. We have been misled in this matter by two causes. One is the necessity of keeping the poor contented, which has led the rich, for thousands of years, to preach the dignity of labor, while taking care themselves to remain undignified in this respect. The other is the new pleasure in mechanism, which makes us delight in the astonishingly clever changes that we can produce on the earth's surface. Neither of these motives makes any great appeal to the actual worker. If you ask him what he thinks the best part of his life, he is not likely to say: 'I enjoy manual work because it makes me feel that I am fulfilling man's noblest task, and because I like to think how much man can transform his planet. It is true that my body demands periods of rest, which I have to fill in as best I may, but I am never so happy as when the morning comes and I can return to the toil from which my contentment springs.' I have never heard working men say this sort of thing. They consider work, as it should be considered, a necessary means to a livelihood, and it is from their leisure that they derive whatever happiness they may enjoy.
-
-It will be said that, while a little leisure is pleasant, men would not know how to fill their days if they had only four hours of work out of the twenty-four. In so far as this is true in the modern world, it is a condemnation of our civilization; it would not have been true at any earlier period. There was formerly a capacity for light-heartedness and play which has been to some extent inhibited by the cult of efficiency. The modern man thinks that everything ought to be done for the sake of something else, and never for its own sake. Serious-minded persons, for example, are continually condemning the habit of going to the cinema, and telling us that it leads the young into crime. But all the work that goes to producing a cinema is respectable, because it is work, and because it brings a money profit. The notion that the desirable activities are those that bring a profit has made everything topsy-turvy. The butcher who provides you with meat and the baker who provides you with bread are praiseworthy, because they are making money; but when you enjoy the food they have provided, you are merely frivolous, unless you eat only to get strength for your work. Broadly speaking, it is held that getting money is good and spending money is bad. Seeing that they are two sides of one transaction, this is absurd; one might as well maintain that keys are good, but keyholes are bad. Whatever merit there may be in the production of goods must be entirely derivative from the advantage to be obtained by consuming them. The individual, in our society, works for profit; but the social purpose of his work lies in the consumption of what he produces. It is this divorce between the individual and the social purpose of production that makes it so difficult for men to think clearly in a world in which profit-making is the incentive to industry. We think too much of production, and too little of consumption. One result is that we attach too little importance to enjoyment and simple happiness, and that we do not judge production by the pleasure that it gives to the consumer.
-
-When I suggest that working hours should be reduced to four, I am not meaning to imply that all the remaining time should necessarily be spent in pure frivolity. I mean that four hours' work a day should entitle a man to the necessities and elementary comforts of life, and that the rest of his time should be his to use as he might see fit. It is an essential part of any such social system that education should be carried further than it usually is at present, and should aim, in part, at providing tastes which would enable a man to use leisure intelligently. I am not thinking mainly of the sort of things that would be considered 'highbrow'. Peasant dances have died out except in remote rural areas, but the impulses which caused them to be cultivated must still exist in human nature. The pleasures of urban populations have become mainly passive: seeing cinemas, watching football matches, listening to the radio, and so on. This results from the fact that their active energies are fully taken up with work; if they had more leisure, they would again enjoy pleasures in which they took an active part.
-
-In the past, there was a small leisure class and a larger working class. The leisure class enjoyed advantages for which there was no basis in social justice; this necessarily made it oppressive, limited its sympathies, and caused it to invent theories by which to justify its privileges. These facts greatly diminished its excellence, but in spite of this drawback it contributed nearly the whole of what we call civilization. It cultivated the arts and discovered the sciences; it wrote the books, invented the philosophies, and refined social relations. Even the liberation of the oppressed has usually been inaugurated from above. Without the leisure class, mankind would never have emerged from barbarism.
-
-The method of a leisure class without duties was, however, extraordinarily wasteful. None of the members of the class had to be taught to be industrious, and the class as a whole was not exceptionally intelligent. The class might produce one Darwin, but against him had to be set tens of thousands of country gentlemen who never thought of anything more intelligent than fox-hunting and punishing poachers. At present, the universities are supposed to provide, in a more systematic way, what the leisure class provided accidentally and as a by-product. This is a great improvement, but it has certain drawbacks. University life is so different from life in the world at large that men who live in academic milieu tend to be unaware of the preoccupations and problems of ordinary men and women; moreover their ways of expressing themselves are usually such as to rob their opinions of the influence that they ought to have upon the general public. Another disadvantage is that in universities studies are organized, and the man who thinks of some original line of research is likely to be discouraged. Academic institutions, therefore, useful as they are, are not adequate guardians of the interests of civilization in a world where everyone outside their walls is too busy for unutilitarian pursuits.
-
-In a world where no one is compelled to work more than four hours a day, every person possessed of scientific curiosity will be able to indulge it, and every painter will be able to paint without starving, however excellent his pictures may be. Young writers will not be obliged to draw attention to themselves by sensational pot-boilers, with a view to acquiring the economic independence needed for monumental works, for which, when the time at last comes, they will have lost the taste and capacity. Men who, in their professional work, have become interested in some phase of economics or government, will be able to develop their ideas without the academic detachment that makes the work of university economists often seem lacking in reality. Medical men will have the time to learn about the progress of medicine, teachers will not be exasperatedly struggling to teach by routine methods things which they learnt in their youth, which may, in the interval, have been proved to be untrue.
-
-Above all, there will be happiness and joy of life, instead of frayed nerves, weariness, and dyspepsia. The work exacted will be enough to make leisure delightful, but not enough to produce exhaustion. Since men will not be tired in their spare time, they will not demand only such amusements as are passive and vapid. At least one per cent will probably devote the time not spent in professional work to pursuits of some public importance, and, since they will not depend upon these pursuits for their livelihood, their originality will be unhampered, and there will be no need to conform to the standards set by elderly pundits. But it is not only in these exceptional cases that the advantages of leisure will appear. Ordinary men and women, having the opportunity of a happy life, will become more kindly and less persecuting and less inclined to view others with suspicion. The taste for war will die out, partly for this reason, and partly because it will involve long and severe work for all. Good nature is, of all moral qualities, the one that the world needs most, and good nature is the result of ease and security, not of a life of arduous struggle. Modern methods of production have given us the possibility of ease and security for all; we have chosen, instead, to have overwork for some and starvation for others. Hitherto we have continued to be as energetic as we were before there were machines; in this we have been foolish, but there is no reason to go on being foolish forever.
-
-[1] Since then, members of the Communist Party have succeeded to this privilege of the warriors and priests.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/wrap.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/node_modules/wordwrap/test/wrap.js
deleted file mode 100644 (file)
index 0cfb76d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-var assert = require('assert');
-var wordwrap = require('wordwrap');
-
-var fs = require('fs');
-var idleness = fs.readFileSync(__dirname + '/idleness.txt', 'utf8');
-
-exports.stop80 = function () {
-    var lines = wordwrap(80)(idleness).split(/\n/);
-    var words = idleness.split(/\s+/);
-    
-    lines.forEach(function (line) {
-        assert.ok(line.length <= 80, 'line > 80 columns');
-        var chunks = line.match(/\S/) ? line.split(/\s+/) : [];
-        assert.deepEqual(chunks, words.splice(0, chunks.length));
-    });
-};
-
-exports.start20stop60 = function () {
-    var lines = wordwrap(20, 100)(idleness).split(/\n/);
-    var words = idleness.split(/\s+/);
-    
-    lines.forEach(function (line) {
-        assert.ok(line.length <= 100, 'line > 100 columns');
-        var chunks = line
-            .split(/\s+/)
-            .filter(function (x) { return x.match(/\S/) })
-        ;
-        assert.deepEqual(chunks, words.splice(0, chunks.length));
-        assert.deepEqual(line.slice(0, 20), new Array(20 + 1).join(' '));
-    });
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/optionator/package.json
deleted file mode 100644 (file)
index b2ed82c..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-{
-  "_args": [
-    [
-      "optionator@https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "optionator@https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-  "_id": "optionator@https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-t1qJlaLUF98ltuTjhi9QqohlE2g=",
-  "_location": "/grunt-standard/standard/eslint/optionator",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "optionator@https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-    "name": "optionator",
-    "escapedName": "optionator",
-    "rawSpec": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "George Zahariev",
-    "email": "z@georgezahariev.com"
-  },
-  "bugs": {
-    "url": "https://github.com/gkz/optionator/issues"
-  },
-  "dependencies": {
-    "deep-is": "~0.1.2",
-    "fast-levenshtein": "~1.0.0",
-    "levn": "~0.2.5",
-    "prelude-ls": "~1.1.1",
-    "type-check": "~0.3.1",
-    "wordwrap": "~0.0.2"
-  },
-  "description": "option parsing and help generation",
-  "devDependencies": {
-    "LiveScript": "~1.3.1",
-    "istanbul": "~0.1.43",
-    "mocha": "~2.0.1"
-  },
-  "engines": {
-    "node": ">= 0.8.0"
-  },
-  "files": [
-    "lib",
-    "README.md",
-    "LICENSE"
-  ],
-  "homepage": "https://github.com/gkz/optionator",
-  "keywords": [
-    "options"
-  ],
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "https://raw.githubusercontent.com/gkz/optionator/master/LICENSE"
-    }
-  ],
-  "main": "./lib/",
-  "name": "optionator",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/gkz/optionator.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/package.json
deleted file mode 100644 (file)
index ec7e2c4..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-{
-  "_args": [
-    [
-      "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-  "_id": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-WkirlgI9usG3uND/q/b2PxZ3vp8=",
-  "_location": "/grunt-standard/standard/eslint/strip-json-comments",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "strip-json-comments@https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-    "name": "strip-json-comments",
-    "escapedName": "strip-json-comments",
-    "rawSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-    "saveSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-    "fetchSpec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bin": {
-    "strip-json-comments": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/strip-json-comments/issues"
-  },
-  "description": "Strip comments from JSON. Lets you use comments in your JSON files!",
-  "devDependencies": {
-    "mocha": "*"
-  },
-  "engines": {
-    "node": ">=0.8.0"
-  },
-  "files": [
-    "cli.js",
-    "strip-json-comments.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/strip-json-comments#readme",
-  "keywords": [
-    "json",
-    "strip",
-    "remove",
-    "delete",
-    "trim",
-    "comments",
-    "multiline",
-    "parse",
-    "config",
-    "configuration",
-    "conf",
-    "settings",
-    "util",
-    "env",
-    "environment",
-    "cli",
-    "bin"
-  ],
-  "license": "MIT",
-  "main": "strip-json-comments",
-  "name": "strip-json-comments",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/strip-json-comments.git"
-  },
-  "scripts": {
-    "test": "mocha"
-  },
-  "version": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/readme.md
deleted file mode 100644 (file)
index 3365232..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-# strip-json-comments [![Build Status](https://travis-ci.org/sindresorhus/strip-json-comments.svg?branch=master)](https://travis-ci.org/sindresorhus/strip-json-comments)
-
-> Strip comments from JSON. Lets you use comments in your JSON files!
-
-This is now possible:
-
-```js
-{
-       // rainbows
-       "unicorn": /* ❤ */ "cake"
-}
-```
-
-It will remove single-line comments `//` and multi-line comments `/**/`.
-
-Also available as a [gulp](https://github.com/sindresorhus/gulp-strip-json-comments)/[grunt](https://github.com/sindresorhus/grunt-strip-json-comments)/[broccoli](https://github.com/sindresorhus/broccoli-strip-json-comments) plugin and a [require hook](https://github.com/uTest/autostrip-json-comments).
-
-
-*There's already [json-comments](https://npmjs.org/package/json-comments), but it's only for Node.js and uses a naive regex to strip comments which fails on simple cases like `{"a":"//"}`. This module however parses out the comments.*
-
-
-## Install
-
-```sh
-$ npm install --save strip-json-comments
-```
-
-```sh
-$ bower install --save strip-json-comments
-```
-
-```sh
-$ component install sindresorhus/strip-json-comments
-```
-
-
-## Usage
-
-```js
-var json = '{/*rainbows*/"unicorn":"cake"}';
-JSON.parse(stripJsonComments(json));
-//=> {unicorn: 'cake'}
-```
-
-
-## API
-
-### stripJsonComments(input)
-
-#### input
-
-Type: `string`
-
-Accepts a string with JSON and returns a string without comments.
-
-
-## CLI
-
-```sh
-$ npm install --global strip-json-comments
-```
-
-```sh
-$ strip-json-comments --help
-
-strip-json-comments input-file > output-file
-# or
-strip-json-comments < input-file > output-file
-```
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/strip-json-comments.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/strip-json-comments/strip-json-comments.js
deleted file mode 100644 (file)
index a47976f..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/*!
-       strip-json-comments
-       Strip comments from JSON. Lets you use comments in your JSON files!
-       https://github.com/sindresorhus/strip-json-comments
-       by Sindre Sorhus
-       MIT License
-*/
-(function () {
-       'use strict';
-
-       function stripJsonComments(str) {
-               var currentChar;
-               var nextChar;
-               var insideString = false;
-               var insideComment = false;
-               var ret = '';
-
-               for (var i = 0; i < str.length; i++) {
-                       currentChar = str[i];
-                       nextChar = str[i + 1];
-
-                       if (!insideComment && str[i - 1] !== '\\' && currentChar === '"') {
-                               insideString = !insideString;
-                       }
-
-                       if (insideString) {
-                               ret += currentChar;
-                               continue;
-                       }
-
-                       if (!insideComment && currentChar + nextChar === '//') {
-                               insideComment = 'single';
-                               i++;
-                       } else if (insideComment === 'single' && currentChar + nextChar === '\r\n') {
-                               insideComment = false;
-                               i++;
-                               ret += currentChar;
-                               ret += nextChar;
-                               continue;
-                       } else if (insideComment === 'single' && currentChar === '\n') {
-                               insideComment = false;
-                       } else if (!insideComment && currentChar + nextChar === '/*') {
-                               insideComment = 'multi';
-                               i++;
-                               continue;
-                       } else if (insideComment === 'multi' && currentChar + nextChar === '*/') {
-                               insideComment = false;
-                               i++;
-                               continue;
-                       }
-
-                       if (insideComment) {
-                               continue;
-                       }
-
-                       ret += currentChar;
-               }
-
-               return ret;
-       }
-
-       if (typeof module !== 'undefined' && module.exports) {
-               module.exports = stripJsonComments;
-       } else {
-               window.stripJsonComments = stripJsonComments;
-       }
-})();
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/user-home/package.json
deleted file mode 100644 (file)
index ad57131..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-{
-  "_args": [
-    [
-      "user-home@https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "user-home@https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-  "_id": "user-home@https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=",
-  "_location": "/grunt-standard/standard/eslint/user-home",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "user-home@https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-    "name": "user-home",
-    "escapedName": "user-home",
-    "rawSpec": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bin": {
-    "user-home": "cli.js"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/user-home/issues"
-  },
-  "description": "Get the path to the user home directory",
-  "devDependencies": {
-    "ava": "0.0.3"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js",
-    "cli.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/user-home#readme",
-  "keywords": [
-    "cli",
-    "bin",
-    "user",
-    "home",
-    "homedir",
-    "dir",
-    "directory",
-    "folder",
-    "path"
-  ],
-  "license": "MIT",
-  "name": "user-home",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/user-home.git"
-  },
-  "scripts": {
-    "test": "node test.js"
-  },
-  "version": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/.npmignore
deleted file mode 100644 (file)
index a72b52e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-lib-cov
-*.seed
-*.log
-*.csv
-*.dat
-*.out
-*.pid
-*.gz
-
-pids
-logs
-results
-
-npm-debug.log
-node_modules
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/LICENSE
deleted file mode 100644 (file)
index bd261ef..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014 Michael Hernandez
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/README.md
deleted file mode 100644 (file)
index db55ce8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-xml-escape
-==========
-
-Escape XML in javascript (NodeJS)
-
-
-npm install xml-escape
-
-// Warning escape is a reserved word, so maybe best to use xmlescape for var name
-var xmlescape = require('xml-escape');
-
-xmlescape('"hello" \'world\' & false < true > -1')
-
-// output
-// '&quot;hello&quot; &apos;world&apos; &amp; true &lt; false &gt; -1'
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/index.js
deleted file mode 100644 (file)
index d26715d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-var escape = module.exports = function escape(string) {
-  return string.replace(/([&"<>'])/g, function(str, item) {
-            return escape.map[item];
-          })
-}
-
-var map = escape.map = {
-    '>': '&gt;'
-  , '<': '&lt;'
-  , "'": '&apos;'
-  , '"': '&quot;'
-  , '&': '&amp;'
-}
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/package.json
deleted file mode 100644 (file)
index c06bee3..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-{
-  "_args": [
-    [
-      "xml-escape@https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "xml-escape@https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-  "_id": "xml-escape@https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-AJY9aXsq3wwYXE4E5zF0upsojrI=",
-  "_location": "/grunt-standard/standard/eslint/xml-escape",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "xml-escape@https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-    "name": "xml-escape",
-    "escapedName": "xml-escape",
-    "rawSpec": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/eslint"
-  ],
-  "_spec": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Michael Hernandez - michael.hernandez1988@gmail.com"
-  },
-  "bugs": {
-    "url": "https://github.com/miketheprogrammer/xml-escape/issues"
-  },
-  "dependencies": {},
-  "description": "Escape XML ",
-  "devDependencies": {
-    "tape": "~2.4.2"
-  },
-  "homepage": "https://github.com/miketheprogrammer/xml-escape",
-  "keywords": [
-    "Escape",
-    "XML",
-    "Unesacpe",
-    "encoding",
-    "xml-escape"
-  ],
-  "license": "MIT License",
-  "main": "index.js",
-  "name": "xml-escape",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/miketheprogrammer/xml-escape.git"
-  },
-  "scripts": {
-    "test": "node test.js"
-  },
-  "version": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/node_modules/xml-escape/test.js
deleted file mode 100644 (file)
index 211c3b8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-var test = require('tape');
-var escape = require('./index');
-test("Characters should be escaped properly", function (t) {
-    t.plan(1);
-
-    t.equals(escape('" \' < > &'), '&quot; &apos; &lt; &gt; &amp;');
-})
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/eslint/package.json
deleted file mode 100644 (file)
index c291322..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-{
-  "_args": [
-    [
-      "eslint@https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "eslint@https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-  "_id": "eslint@https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-4RF8zYavF0sDEv/oJQkBnVtQdZs=",
-  "_location": "/grunt-standard/standard/eslint",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "eslint@https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-    "name": "eslint",
-    "escapedName": "eslint",
-    "rawSpec": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Nicholas C. Zakas",
-    "email": "nicholas+npm@nczconsulting.com"
-  },
-  "bin": {
-    "eslint": "./bin/eslint.js"
-  },
-  "bugs": {
-    "url": "https://github.com/eslint/eslint/issues/"
-  },
-  "dependencies": {
-    "chalk": "^1.0.0",
-    "concat-stream": "^1.4.6",
-    "debug": "^2.1.1",
-    "doctrine": "^0.6.2",
-    "escape-string-regexp": "^1.0.2",
-    "escope": "2.0.6",
-    "espree": "^1.12.0",
-    "estraverse": "^2.0.0",
-    "estraverse-fb": "^1.3.1",
-    "globals": "^6.1.0",
-    "js-yaml": "^3.2.5",
-    "minimatch": "^2.0.1",
-    "mkdirp": "^0.5.0",
-    "object-assign": "^2.0.0",
-    "optionator": "^0.5.0",
-    "strip-json-comments": "~1.0.1",
-    "text-table": "~0.2.0",
-    "user-home": "^1.0.0",
-    "xml-escape": "~1.0.0"
-  },
-  "description": "An AST-based pattern checker for JavaScript.",
-  "devDependencies": {
-    "beefy": "^1.0.0",
-    "brfs": "0.0.9",
-    "browserify": "^8.1.3",
-    "chai": "^1.9.1",
-    "coveralls": "2.11.2",
-    "dateformat": "^1.0.8",
-    "eslint-tester": "^0.6.0",
-    "esprima-fb": "^10001.1.0-dev-harmony-fb",
-    "istanbul": "^0.3.5",
-    "jsdoc": "^3.3.0-beta1",
-    "jsonlint": "^1.6.2",
-    "mocha": "^2.1.0",
-    "mocha-phantomjs": "^3.5.0",
-    "npm-license": "^0.2.3",
-    "phantomjs": "^1.9.9",
-    "proxyquire": "^1.0.0",
-    "semver": "^4.1.0",
-    "shelljs": "^0.3.0",
-    "shelljs-nodecli": "~0.1.0",
-    "sinon": "^1.12.2",
-    "through": "^2.3.6"
-  },
-  "engines": {
-    "node": ">=0.10"
-  },
-  "files": [
-    "LICENSE",
-    "README.md",
-    "bin",
-    "conf",
-    "lib"
-  ],
-  "homepage": "http://eslint.org",
-  "keywords": [
-    "ast",
-    "lint",
-    "javascript",
-    "ecmascript",
-    "espree"
-  ],
-  "license": "MIT",
-  "main": "./lib/api.js",
-  "name": "eslint",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/eslint/eslint.git"
-  },
-  "scripts": {
-    "browserify": "node Makefile.js browserify",
-    "coveralls": "cat ./coverage/lcov.info | coveralls",
-    "docs": "node Makefile.js docs",
-    "gensite": "node Makefile.js gensite",
-    "lint": "node Makefile.js lint",
-    "major": "node Makefile.js major",
-    "minor": "node Makefile.js minor",
-    "patch": "node Makefile.js patch",
-    "perf": "node Makefile.js perf",
-    "profile": "beefy tests/bench/bench.js --open -- -t brfs -t ./tests/bench/xform-rules.js",
-    "test": "node Makefile.js test"
-  },
-  "version": "https://registry.npmjs.org/eslint/-/eslint-0.18.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/.npmignore
deleted file mode 100644 (file)
index fd4f2b0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.DS_Store
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/README.md
deleted file mode 100644 (file)
index b7cd918..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-# find-root
-recursively find the closest package.json
-
-## usage
-Say you want to check if the directory name of a project matches its
-module name in package.json:
-
-```js
-var path = require('path')
-var findRoot = require('find-root')
-
-// from a starting directory, recursively search for the nearest
-// directory containing package.json
-var root = findRoot('/Users/jden/dev/find-root/tests')
-// => '/Users/jden/dev/find-root'
-
-var dirname = path.basename(root)
-console.log('is it the same?')
-console.log(dirname === require(path.join(root, 'package.json')).name)
-```
-
-
-## api
-
-### `findRoot: (startingPath : String) => String`
-
-Returns the path for the nearest directory to `startingPath` containing
-a `package.json` file, eg `/foo/module`.
-
-Throws an error if no `package.json` is found at any level in the
-`startingPath`.
-
-
-## installation
-
-    $ npm install find-root
-
-
-## running the tests
-
-From package root:
-
-    $ npm install
-    $ npm test
-
-
-## contributors
-
-- jden <jason@denizac.org>
-
-
-## license
-MIT. (c) MMXIII AgileMD http://agilemd.com
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/index.js
deleted file mode 100644 (file)
index 84e1336..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var path = require('path')
-var fs = require('fs')
-
-function findRoot(start) {
-  start = start || module.parent.filename
-  if (typeof start === 'string') {
-    if (start[start.length-1] !== path.sep) {
-      start+=path.sep
-    }
-    start = start.split(path.sep)
-  }
-  if(!start.length) {
-    throw new Error('package.json not found in path')
-  }
-  start.pop()
-  var dir = start.join(path.sep)
-  if (fs.existsSync(path.join(dir, 'package.json'))) {
-    return dir
-  }
-  return findRoot(start)
-}
-
-module.exports = findRoot
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/package.json
deleted file mode 100644 (file)
index fdfc4a0..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_id": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-9jbUbz518IXzKJ63x3keUDmjd8o=",
-  "_location": "/grunt-standard/standard/find-root",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "find-root@https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "name": "find-root",
-    "escapedName": "find-root",
-    "rawSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "AgileMD",
-    "email": "hello@agilemd.com"
-  },
-  "bugs": {
-    "url": "https://github.com/agilemd/find-root/issues"
-  },
-  "contributors": [
-    {
-      "name": "jden",
-      "email": "jason@denizac.org"
-    }
-  ],
-  "description": "find the closest package.json",
-  "devDependencies": {
-    "chai": "~1.6.0",
-    "mocha": "~1.9.0",
-    "moquire": "~1.5.4"
-  },
-  "homepage": "https://github.com/agilemd/find-root#readme",
-  "keywords": [
-    "package",
-    "module",
-    "base",
-    "root"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "find-root",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/agilemd/find-root.git"
-  },
-  "scripts": {
-    "test": "node node_modules/mocha/bin/mocha"
-  },
-  "version": "https://registry.npmjs.org/find-root/-/find-root-0.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/test/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/find-root/test/test.js
deleted file mode 100644 (file)
index bce7669..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-var chai = require('chai')
-chai.should()
-var expect = chai.expect
-var moquire = require('moquire')
-var path = require('path')
-
-var MODULE = '../'
-
-describe('find-root', function () {
-
-  it('recursively looks for package.json', function () {
-
-    var checked = []
-    var fs = {
-      existsSync: function (path) {
-        checked.push(path)
-        return path === '/foo/package.json'
-      }
-    }
-
-    var findRoot = moquire(MODULE, {fs: fs})
-
-    findRoot('/foo/bar/baz')
-      .should.equal('/foo')
-
-    checked.should.deep.equal([
-        '/foo/bar/baz/package.json',
-        '/foo/bar/package.json',
-        '/foo/package.json'
-      ])
-
-  })
-
-  it('throws if not found', function () {
-
-    var fs = {
-      existsSync: function (path) {
-        return false
-      }
-    }
-
-    var findRoot = moquire(MODULE, {fs: fs})
-
-    expect(function () {
-      findRoot('/foo/bar/baz/')
-    }).to.throw('not found')
-
-  })
-})
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/get-stdin/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/get-stdin/package.json
deleted file mode 100644 (file)
index a760261..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
-  "_args": [
-    [
-      "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_id": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-  "_location": "/grunt-standard/standard/get-stdin",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "get-stdin@https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "name": "get-stdin",
-    "escapedName": "get-stdin",
-    "rawSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "http://sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/get-stdin/issues"
-  },
-  "description": "Easier stdin",
-  "devDependencies": {
-    "ava": "0.0.4",
-    "buffer-equal": "0.0.1"
-  },
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/get-stdin#readme",
-  "keywords": [
-    "std",
-    "stdin",
-    "stdio",
-    "concat",
-    "buffer",
-    "stream",
-    "process",
-    "stream"
-  ],
-  "license": "MIT",
-  "name": "get-stdin",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/get-stdin.git"
-  },
-  "scripts": {
-    "test": "node test.js && node test-buffer.js && echo unicorns | node test-real.js"
-  },
-  "version": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/README.md
deleted file mode 100644 (file)
index fa993dc..0000000
+++ /dev/null
@@ -1,378 +0,0 @@
-[![Build Status](https://travis-ci.org/isaacs/node-glob.svg?branch=master)](https://travis-ci.org/isaacs/node-glob/) [![Dependency Status](https://david-dm.org/isaacs/node-glob.svg)](https://david-dm.org/isaacs/node-glob) [![devDependency Status](https://david-dm.org/isaacs/node-glob/dev-status.svg)](https://david-dm.org/isaacs/node-glob#info=devDependencies) [![optionalDependency Status](https://david-dm.org/isaacs/node-glob/optional-status.svg)](https://david-dm.org/isaacs/node-glob#info=optionalDependencies)
-
-# Glob
-
-Match files using the patterns the shell uses, like stars and stuff.
-
-This is a glob implementation in JavaScript.  It uses the `minimatch`
-library to do its matching.
-
-![](oh-my-glob.gif)
-
-## Usage
-
-```javascript
-var glob = require("glob")
-
-// options is optional
-glob("**/*.js", options, function (er, files) {
-  // files is an array of filenames.
-  // If the `nonull` option is set, and nothing
-  // was found, then files is ["**/*.js"]
-  // er is an error object or null.
-})
-```
-
-## Glob Primer
-
-"Globs" are the patterns you type when you do stuff like `ls *.js` on
-the command line, or put `build/*` in a `.gitignore` file.
-
-Before parsing the path part patterns, braced sections are expanded
-into a set.  Braced sections start with `{` and end with `}`, with any
-number of comma-delimited sections within.  Braced sections may contain
-slash characters, so `a{/b/c,bcd}` would expand into `a/b/c` and `abcd`.
-
-The following characters have special magic meaning when used in a
-path portion:
-
-* `*` Matches 0 or more characters in a single path portion
-* `?` Matches 1 character
-* `[...]` Matches a range of characters, similar to a RegExp range.
-  If the first character of the range is `!` or `^` then it matches
-  any character not in the range.
-* `!(pattern|pattern|pattern)` Matches anything that does not match
-  any of the patterns provided.
-* `?(pattern|pattern|pattern)` Matches zero or one occurrence of the
-  patterns provided.
-* `+(pattern|pattern|pattern)` Matches one or more occurrences of the
-  patterns provided.
-* `*(a|b|c)` Matches zero or more occurrences of the patterns provided
-* `@(pattern|pat*|pat?erN)` Matches exactly one of the patterns
-  provided
-* `**` If a "globstar" is alone in a path portion, then it matches
-  zero or more directories and subdirectories searching for matches.
-  It does not crawl symlinked directories.
-
-### Dots
-
-If a file or directory path portion has a `.` as the first character,
-then it will not match any glob pattern unless that pattern's
-corresponding path part also has a `.` as its first character.
-
-For example, the pattern `a/.*/c` would match the file at `a/.b/c`.
-However the pattern `a/*/c` would not, because `*` does not start with
-a dot character.
-
-You can make glob treat dots as normal characters by setting
-`dot:true` in the options.
-
-### Basename Matching
-
-If you set `matchBase:true` in the options, and the pattern has no
-slashes in it, then it will seek for any file anywhere in the tree
-with a matching basename.  For example, `*.js` would match
-`test/simple/basic.js`.
-
-### Negation
-
-The intent for negation would be for a pattern starting with `!` to
-match everything that *doesn't* match the supplied pattern.  However,
-the implementation is weird, and for the time being, this should be
-avoided.  The behavior is deprecated in version 5, and will be removed
-entirely in version 6.
-
-### Empty Sets
-
-If no matching files are found, then an empty array is returned.  This
-differs from the shell, where the pattern itself is returned.  For
-example:
-
-    $ echo a*s*d*f
-    a*s*d*f
-
-To get the bash-style behavior, set the `nonull:true` in the options.
-
-### See Also:
-
-* `man sh`
-* `man bash` (Search for "Pattern Matching")
-* `man 3 fnmatch`
-* `man 5 gitignore`
-* [minimatch documentation](https://github.com/isaacs/minimatch)
-
-## glob.hasMagic(pattern, [options])
-
-Returns `true` if there are any special characters in the pattern, and
-`false` otherwise.
-
-Note that the options affect the results.  If `noext:true` is set in
-the options object, then `+(a|b)` will not be considered a magic
-pattern.  If the pattern has a brace expansion, like `a/{b/c,x/y}`
-then that is considered magical, unless `nobrace:true` is set in the
-options.
-
-## glob(pattern, [options], cb)
-
-* `pattern` {String} Pattern to be matched
-* `options` {Object}
-* `cb` {Function}
-  * `err` {Error | null}
-  * `matches` {Array<String>} filenames found matching the pattern
-
-Perform an asynchronous glob search.
-
-## glob.sync(pattern, [options])
-
-* `pattern` {String} Pattern to be matched
-* `options` {Object}
-* return: {Array<String>} filenames found matching the pattern
-
-Perform a synchronous glob search.
-
-## Class: glob.Glob
-
-Create a Glob object by instantiating the `glob.Glob` class.
-
-```javascript
-var Glob = require("glob").Glob
-var mg = new Glob(pattern, options, cb)
-```
-
-It's an EventEmitter, and starts walking the filesystem to find matches
-immediately.
-
-### new glob.Glob(pattern, [options], [cb])
-
-* `pattern` {String} pattern to search for
-* `options` {Object}
-* `cb` {Function} Called when an error occurs, or matches are found
-  * `err` {Error | null}
-  * `matches` {Array<String>} filenames found matching the pattern
-
-Note that if the `sync` flag is set in the options, then matches will
-be immediately available on the `g.found` member.
-
-### Properties
-
-* `minimatch` The minimatch object that the glob uses.
-* `options` The options object passed in.
-* `aborted` Boolean which is set to true when calling `abort()`.  There
-  is no way at this time to continue a glob search after aborting, but
-  you can re-use the statCache to avoid having to duplicate syscalls.
-* `cache` Convenience object.  Each field has the following possible
-  values:
-  * `false` - Path does not exist
-  * `true` - Path exists
-  * `'DIR'` - Path exists, and is not a directory
-  * `'FILE'` - Path exists, and is a directory
-  * `[file, entries, ...]` - Path exists, is a directory, and the
-    array value is the results of `fs.readdir`
-* `statCache` Cache of `fs.stat` results, to prevent statting the same
-  path multiple times.
-* `symlinks` A record of which paths are symbolic links, which is
-  relevant in resolving `**` patterns.
-* `realpathCache` An optional object which is passed to `fs.realpath`
-  to minimize unnecessary syscalls.  It is stored on the instantiated
-  Glob object, and may be re-used.
-
-### Events
-
-* `end` When the matching is finished, this is emitted with all the
-  matches found.  If the `nonull` option is set, and no match was found,
-  then the `matches` list contains the original pattern.  The matches
-  are sorted, unless the `nosort` flag is set.
-* `match` Every time a match is found, this is emitted with the matched.
-* `error` Emitted when an unexpected error is encountered, or whenever
-  any fs error occurs if `options.strict` is set.
-* `abort` When `abort()` is called, this event is raised.
-
-### Methods
-
-* `pause` Temporarily stop the search
-* `resume` Resume the search
-* `abort` Stop the search forever
-
-### Options
-
-All the options that can be passed to Minimatch can also be passed to
-Glob to change pattern matching behavior.  Also, some have been added,
-or have glob-specific ramifications.
-
-All options are false by default, unless otherwise noted.
-
-All options are added to the Glob object, as well.
-
-If you are running many `glob` operations, you can pass a Glob object
-as the `options` argument to a subsequent operation to shortcut some
-`stat` and `readdir` calls.  At the very least, you may pass in shared
-`symlinks`, `statCache`, `realpathCache`, and `cache` options, so that
-parallel glob operations will be sped up by sharing information about
-the filesystem.
-
-* `cwd` The current working directory in which to search.  Defaults
-  to `process.cwd()`.
-* `root` The place where patterns starting with `/` will be mounted
-  onto.  Defaults to `path.resolve(options.cwd, "/")` (`/` on Unix
-  systems, and `C:\` or some such on Windows.)
-* `dot` Include `.dot` files in normal matches and `globstar` matches.
-  Note that an explicit dot in a portion of the pattern will always
-  match dot files.
-* `nomount` By default, a pattern starting with a forward-slash will be
-  "mounted" onto the root setting, so that a valid filesystem path is
-  returned.  Set this flag to disable that behavior.
-* `mark` Add a `/` character to directory matches.  Note that this
-  requires additional stat calls.
-* `nosort` Don't sort the results.
-* `stat` Set to true to stat *all* results.  This reduces performance
-  somewhat, and is completely unnecessary, unless `readdir` is presumed
-  to be an untrustworthy indicator of file existence.
-* `silent` When an unusual error is encountered when attempting to
-  read a directory, a warning will be printed to stderr.  Set the
-  `silent` option to true to suppress these warnings.
-* `strict` When an unusual error is encountered when attempting to
-  read a directory, the process will just continue on in search of
-  other matches.  Set the `strict` option to raise an error in these
-  cases.
-* `cache` See `cache` property above.  Pass in a previously generated
-  cache object to save some fs calls.
-* `statCache` A cache of results of filesystem information, to prevent
-  unnecessary stat calls.  While it should not normally be necessary
-  to set this, you may pass the statCache from one glob() call to the
-  options object of another, if you know that the filesystem will not
-  change between calls.  (See "Race Conditions" below.)
-* `symlinks` A cache of known symbolic links.  You may pass in a
-  previously generated `symlinks` object to save `lstat` calls when
-  resolving `**` matches.
-* `sync` DEPRECATED: use `glob.sync(pattern, opts)` instead.
-* `nounique` In some cases, brace-expanded patterns can result in the
-  same file showing up multiple times in the result set.  By default,
-  this implementation prevents duplicates in the result set.  Set this
-  flag to disable that behavior.
-* `nonull` Set to never return an empty set, instead returning a set
-  containing the pattern itself.  This is the default in glob(3).
-* `debug` Set to enable debug logging in minimatch and glob.
-* `nobrace` Do not expand `{a,b}` and `{1..3}` brace sets.
-* `noglobstar` Do not match `**` against multiple filenames.  (Ie,
-  treat it as a normal `*` instead.)
-* `noext` Do not match `+(a|b)` "extglob" patterns.
-* `nocase` Perform a case-insensitive match.  Note: on
-  case-insensitive filesystems, non-magic patterns will match by
-  default, since `stat` and `readdir` will not raise errors.
-* `matchBase` Perform a basename-only match if the pattern does not
-  contain any slash characters.  That is, `*.js` would be treated as
-  equivalent to `**/*.js`, matching all js files in all directories.
-* `nonull` Return the pattern when no matches are found.
-* `nodir` Do not match directories, only files.  (Note: to match
-  *only* directories, simply put a `/` at the end of the pattern.)
-* `ignore` Add a pattern or an array of patterns to exclude matches.
-* `follow` Follow symlinked directories when expanding `**` patterns.
-  Note that this can result in a lot of duplicate references in the
-  presence of cyclic links.
-* `realpath` Set to true to call `fs.realpath` on all of the results.
-  In the case of a symlink that cannot be resolved, the full absolute
-  path to the matched entry is returned (though it will usually be a
-  broken symlink)
-* `nonegate` Suppress deprecated `negate` behavior.  (See below.)
-  Default=true
-* `nocomment` Suppress deprecated `comment` behavior.  (See below.)
-  Default=true
-
-## Comparisons to other fnmatch/glob implementations
-
-While strict compliance with the existing standards is a worthwhile
-goal, some discrepancies exist between node-glob and other
-implementations, and are intentional.
-
-The double-star character `**` is supported by default, unless the
-`noglobstar` flag is set.  This is supported in the manner of bsdglob
-and bash 4.3, where `**` only has special significance if it is the only
-thing in a path part.  That is, `a/**/b` will match `a/x/y/b`, but
-`a/**b` will not.
-
-Note that symlinked directories are not crawled as part of a `**`,
-though their contents may match against subsequent portions of the
-pattern.  This prevents infinite loops and duplicates and the like.
-
-If an escaped pattern has no matches, and the `nonull` flag is set,
-then glob returns the pattern as-provided, rather than
-interpreting the character escapes.  For example,
-`glob.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than
-`"*a?"`.  This is akin to setting the `nullglob` option in bash, except
-that it does not resolve escaped pattern characters.
-
-If brace expansion is not disabled, then it is performed before any
-other interpretation of the glob pattern.  Thus, a pattern like
-`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded
-**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are
-checked for validity.  Since those two are valid, matching proceeds.
-
-### Comments and Negation
-
-**Note**: In version 5 of this module, negation and comments are
-**disabled** by default.  You can explicitly set `nonegate:false` or
-`nocomment:false` to re-enable them.  They are going away entirely in
-version 6.
-
-The intent for negation would be for a pattern starting with `!` to
-match everything that *doesn't* match the supplied pattern.  However,
-the implementation is weird.  It is better to use the `ignore` option
-to set a pattern or set of patterns to exclude from matches.  If you
-want the "everything except *x*" type of behavior, you can use `**` as
-the main pattern, and set an `ignore` for the things to exclude.
-
-The comments feature is added in minimatch, primarily to more easily
-support use cases like ignore files, where a `#` at the start of a
-line makes the pattern "empty".  However, in the context of a
-straightforward filesystem globber, "comments" don't make much sense.
-
-## Windows
-
-**Please only use forward-slashes in glob expressions.**
-
-Though windows uses either `/` or `\` as its path separator, only `/`
-characters are used by this glob implementation.  You must use
-forward-slashes **only** in glob expressions.  Back-slashes will always
-be interpreted as escape characters, not path separators.
-
-Results from absolute patterns such as `/foo/*` are mounted onto the
-root setting using `path.join`.  On windows, this will by default result
-in `/foo/*` matching `C:\foo\bar.txt`.
-
-## Race Conditions
-
-Glob searching, by its very nature, is susceptible to race conditions,
-since it relies on directory walking and such.
-
-As a result, it is possible that a file that exists when glob looks for
-it may have been deleted or modified by the time it returns the result.
-
-As part of its internal implementation, this program caches all stat
-and readdir calls that it makes, in order to cut down on system
-overhead.  However, this also makes it even more susceptible to races,
-especially if the cache or statCache objects are reused between glob
-calls.
-
-Users are thus advised not to use a glob result as a guarantee of
-filesystem state in the face of rapid changes.  For the vast majority
-of operations, this is never a problem.
-
-## Contributing
-
-Any change to behavior (including bugfixes) must come with a test.
-
-Patches that fail tests or reduce performance will be rejected.
-
-```
-# to run tests
-npm test
-
-# to re-generate test fixtures
-npm run test-regen
-
-# to benchmark against bash/zsh
-npm run bench
-
-# to profile javascript
-npm run prof
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/common.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/common.js
deleted file mode 100644 (file)
index 7bef9a2..0000000
+++ /dev/null
@@ -1,244 +0,0 @@
-exports.alphasort = alphasort
-exports.alphasorti = alphasorti
-exports.setopts = setopts
-exports.ownProp = ownProp
-exports.makeAbs = makeAbs
-exports.finish = finish
-exports.mark = mark
-exports.isIgnored = isIgnored
-exports.childrenIgnored = childrenIgnored
-
-function ownProp (obj, field) {
-  return Object.prototype.hasOwnProperty.call(obj, field)
-}
-
-var path = require("path")
-var minimatch = require("minimatch")
-var isAbsolute = require("path-is-absolute")
-var Minimatch = minimatch.Minimatch
-
-function alphasorti (a, b) {
-  return a.toLowerCase().localeCompare(b.toLowerCase())
-}
-
-function alphasort (a, b) {
-  return a.localeCompare(b)
-}
-
-function setupIgnores (self, options) {
-  self.ignore = options.ignore || []
-
-  if (!Array.isArray(self.ignore))
-    self.ignore = [self.ignore]
-
-  if (self.ignore.length) {
-    self.ignore = self.ignore.map(ignoreMap)
-  }
-}
-
-function ignoreMap (pattern) {
-  var gmatcher = null
-  if (pattern.slice(-3) === '/**') {
-    var gpattern = pattern.replace(/(\/\*\*)+$/, '')
-    gmatcher = new Minimatch(gpattern)
-  }
-
-  return {
-    matcher: new Minimatch(pattern),
-    gmatcher: gmatcher
-  }
-}
-
-function setopts (self, pattern, options) {
-  if (!options)
-    options = {}
-
-  // base-matching: just use globstar for that.
-  if (options.matchBase && -1 === pattern.indexOf("/")) {
-    if (options.noglobstar) {
-      throw new Error("base matching requires globstar")
-    }
-    pattern = "**/" + pattern
-  }
-
-  self.pattern = pattern
-  self.strict = options.strict !== false
-  self.realpath = !!options.realpath
-  self.realpathCache = options.realpathCache || Object.create(null)
-  self.follow = !!options.follow
-  self.dot = !!options.dot
-  self.mark = !!options.mark
-  self.nodir = !!options.nodir
-  if (self.nodir)
-    self.mark = true
-  self.sync = !!options.sync
-  self.nounique = !!options.nounique
-  self.nonull = !!options.nonull
-  self.nosort = !!options.nosort
-  self.nocase = !!options.nocase
-  self.stat = !!options.stat
-  self.noprocess = !!options.noprocess
-
-  self.maxLength = options.maxLength || Infinity
-  self.cache = options.cache || Object.create(null)
-  self.statCache = options.statCache || Object.create(null)
-  self.symlinks = options.symlinks || Object.create(null)
-
-  setupIgnores(self, options)
-
-  self.changedCwd = false
-  var cwd = process.cwd()
-  if (!ownProp(options, "cwd"))
-    self.cwd = cwd
-  else {
-    self.cwd = options.cwd
-    self.changedCwd = path.resolve(options.cwd) !== cwd
-  }
-
-  self.root = options.root || path.resolve(self.cwd, "/")
-  self.root = path.resolve(self.root)
-  if (process.platform === "win32")
-    self.root = self.root.replace(/\\/g, "/")
-
-  self.nomount = !!options.nomount
-
-  // disable comments and negation unless the user explicitly
-  // passes in false as the option.
-  options.nonegate = options.nonegate === false ? false : true
-  options.nocomment = options.nocomment === false ? false : true
-  deprecationWarning(options)
-
-  self.minimatch = new Minimatch(pattern, options)
-  self.options = self.minimatch.options
-}
-
-// TODO(isaacs): remove entirely in v6
-// exported to reset in tests
-exports.deprecationWarned
-function deprecationWarning(options) {
-  if (!options.nonegate || !options.nocomment) {
-    if (process.noDeprecation !== true && !exports.deprecationWarned) {
-      var msg = 'glob WARNING: comments and negation will be disabled in v6'
-      if (process.throwDeprecation)
-        throw new Error(msg)
-      else if (process.traceDeprecation)
-        console.trace(msg)
-      else
-        console.error(msg)
-
-      exports.deprecationWarned = true
-    }
-  }
-}
-
-function finish (self) {
-  var nou = self.nounique
-  var all = nou ? [] : Object.create(null)
-
-  for (var i = 0, l = self.matches.length; i < l; i ++) {
-    var matches = self.matches[i]
-    if (!matches || Object.keys(matches).length === 0) {
-      if (self.nonull) {
-        // do like the shell, and spit out the literal glob
-        var literal = self.minimatch.globSet[i]
-        if (nou)
-          all.push(literal)
-        else
-          all[literal] = true
-      }
-    } else {
-      // had matches
-      var m = Object.keys(matches)
-      if (nou)
-        all.push.apply(all, m)
-      else
-        m.forEach(function (m) {
-          all[m] = true
-        })
-    }
-  }
-
-  if (!nou)
-    all = Object.keys(all)
-
-  if (!self.nosort)
-    all = all.sort(self.nocase ? alphasorti : alphasort)
-
-  // at *some* point we statted all of these
-  if (self.mark) {
-    for (var i = 0; i < all.length; i++) {
-      all[i] = self._mark(all[i])
-    }
-    if (self.nodir) {
-      all = all.filter(function (e) {
-        return !(/\/$/.test(e))
-      })
-    }
-  }
-
-  if (self.ignore.length)
-    all = all.filter(function(m) {
-      return !isIgnored(self, m)
-    })
-
-  self.found = all
-}
-
-function mark (self, p) {
-  var abs = makeAbs(self, p)
-  var c = self.cache[abs]
-  var m = p
-  if (c) {
-    var isDir = c === 'DIR' || Array.isArray(c)
-    var slash = p.slice(-1) === '/'
-
-    if (isDir && !slash)
-      m += '/'
-    else if (!isDir && slash)
-      m = m.slice(0, -1)
-
-    if (m !== p) {
-      var mabs = makeAbs(self, m)
-      self.statCache[mabs] = self.statCache[abs]
-      self.cache[mabs] = self.cache[abs]
-    }
-  }
-
-  return m
-}
-
-// lotta situps...
-function makeAbs (self, f) {
-  var abs = f
-  if (f.charAt(0) === '/') {
-    abs = path.join(self.root, f)
-  } else if (isAbsolute(f) || f === '') {
-    abs = f
-  } else if (self.changedCwd) {
-    abs = path.resolve(self.cwd, f)
-  } else {
-    abs = path.resolve(f)
-  }
-  return abs
-}
-
-
-// Return true, if pattern ends with globstar '**', for the accompanying parent directory.
-// Ex:- If node_modules/** is the pattern, add 'node_modules' to ignore list along with it's contents
-function isIgnored (self, path) {
-  if (!self.ignore.length)
-    return false
-
-  return self.ignore.some(function(item) {
-    return item.matcher.match(path) || !!(item.gmatcher && item.gmatcher.match(path))
-  })
-}
-
-function childrenIgnored (self, path) {
-  if (!self.ignore.length)
-    return false
-
-  return self.ignore.some(function(item) {
-    return !!(item.gmatcher && item.gmatcher.match(path))
-  })
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/glob.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/glob.js
deleted file mode 100644 (file)
index 1bfed19..0000000
+++ /dev/null
@@ -1,740 +0,0 @@
-// Approach:
-//
-// 1. Get the minimatch set
-// 2. For each pattern in the set, PROCESS(pattern, false)
-// 3. Store matches per-set, then uniq them
-//
-// PROCESS(pattern, inGlobStar)
-// Get the first [n] items from pattern that are all strings
-// Join these together.  This is PREFIX.
-//   If there is no more remaining, then stat(PREFIX) and
-//   add to matches if it succeeds.  END.
-//
-// If inGlobStar and PREFIX is symlink and points to dir
-//   set ENTRIES = []
-// else readdir(PREFIX) as ENTRIES
-//   If fail, END
-//
-// with ENTRIES
-//   If pattern[n] is GLOBSTAR
-//     // handle the case where the globstar match is empty
-//     // by pruning it out, and testing the resulting pattern
-//     PROCESS(pattern[0..n] + pattern[n+1 .. $], false)
-//     // handle other cases.
-//     for ENTRY in ENTRIES (not dotfiles)
-//       // attach globstar + tail onto the entry
-//       // Mark that this entry is a globstar match
-//       PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true)
-//
-//   else // not globstar
-//     for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot)
-//       Test ENTRY against pattern[n]
-//       If fails, continue
-//       If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $])
-//
-// Caveat:
-//   Cache all stats and readdirs results to minimize syscall.  Since all
-//   we ever care about is existence and directory-ness, we can just keep
-//   `true` for files, and [children,...] for directories, or `false` for
-//   things that don't exist.
-
-module.exports = glob
-
-var fs = require('fs')
-var minimatch = require('minimatch')
-var Minimatch = minimatch.Minimatch
-var inherits = require('inherits')
-var EE = require('events').EventEmitter
-var path = require('path')
-var assert = require('assert')
-var isAbsolute = require('path-is-absolute')
-var globSync = require('./sync.js')
-var common = require('./common.js')
-var alphasort = common.alphasort
-var alphasorti = common.alphasorti
-var setopts = common.setopts
-var ownProp = common.ownProp
-var inflight = require('inflight')
-var util = require('util')
-var childrenIgnored = common.childrenIgnored
-
-var once = require('once')
-
-function glob (pattern, options, cb) {
-  if (typeof options === 'function') cb = options, options = {}
-  if (!options) options = {}
-
-  if (options.sync) {
-    if (cb)
-      throw new TypeError('callback provided to sync glob')
-    return globSync(pattern, options)
-  }
-
-  return new Glob(pattern, options, cb)
-}
-
-glob.sync = globSync
-var GlobSync = glob.GlobSync = globSync.GlobSync
-
-// old api surface
-glob.glob = glob
-
-glob.hasMagic = function (pattern, options_) {
-  var options = util._extend({}, options_)
-  options.noprocess = true
-
-  var g = new Glob(pattern, options)
-  var set = g.minimatch.set
-  if (set.length > 1)
-    return true
-
-  for (var j = 0; j < set[0].length; j++) {
-    if (typeof set[0][j] !== 'string')
-      return true
-  }
-
-  return false
-}
-
-glob.Glob = Glob
-inherits(Glob, EE)
-function Glob (pattern, options, cb) {
-  if (typeof options === 'function') {
-    cb = options
-    options = null
-  }
-
-  if (options && options.sync) {
-    if (cb)
-      throw new TypeError('callback provided to sync glob')
-    return new GlobSync(pattern, options)
-  }
-
-  if (!(this instanceof Glob))
-    return new Glob(pattern, options, cb)
-
-  setopts(this, pattern, options)
-  this._didRealPath = false
-
-  // process each pattern in the minimatch set
-  var n = this.minimatch.set.length
-
-  // The matches are stored as {<filename>: true,...} so that
-  // duplicates are automagically pruned.
-  // Later, we do an Object.keys() on these.
-  // Keep them as a list so we can fill in when nonull is set.
-  this.matches = new Array(n)
-
-  if (typeof cb === 'function') {
-    cb = once(cb)
-    this.on('error', cb)
-    this.on('end', function (matches) {
-      cb(null, matches)
-    })
-  }
-
-  var self = this
-  var n = this.minimatch.set.length
-  this._processing = 0
-  this.matches = new Array(n)
-
-  this._emitQueue = []
-  this._processQueue = []
-  this.paused = false
-
-  if (this.noprocess)
-    return this
-
-  if (n === 0)
-    return done()
-
-  for (var i = 0; i < n; i ++) {
-    this._process(this.minimatch.set[i], i, false, done)
-  }
-
-  function done () {
-    --self._processing
-    if (self._processing <= 0)
-      self._finish()
-  }
-}
-
-Glob.prototype._finish = function () {
-  assert(this instanceof Glob)
-  if (this.aborted)
-    return
-
-  if (this.realpath && !this._didRealpath)
-    return this._realpath()
-
-  common.finish(this)
-  this.emit('end', this.found)
-}
-
-Glob.prototype._realpath = function () {
-  if (this._didRealpath)
-    return
-
-  this._didRealpath = true
-
-  var n = this.matches.length
-  if (n === 0)
-    return this._finish()
-
-  var self = this
-  for (var i = 0; i < this.matches.length; i++)
-    this._realpathSet(i, next)
-
-  function next () {
-    if (--n === 0)
-      self._finish()
-  }
-}
-
-Glob.prototype._realpathSet = function (index, cb) {
-  var matchset = this.matches[index]
-  if (!matchset)
-    return cb()
-
-  var found = Object.keys(matchset)
-  var self = this
-  var n = found.length
-
-  if (n === 0)
-    return cb()
-
-  var set = this.matches[index] = Object.create(null)
-  found.forEach(function (p, i) {
-    // If there's a problem with the stat, then it means that
-    // one or more of the links in the realpath couldn't be
-    // resolved.  just return the abs value in that case.
-    p = self._makeAbs(p)
-    fs.realpath(p, self.realpathCache, function (er, real) {
-      if (!er)
-        set[real] = true
-      else if (er.syscall === 'stat')
-        set[p] = true
-      else
-        self.emit('error', er) // srsly wtf right here
-
-      if (--n === 0) {
-        self.matches[index] = set
-        cb()
-      }
-    })
-  })
-}
-
-Glob.prototype._mark = function (p) {
-  return common.mark(this, p)
-}
-
-Glob.prototype._makeAbs = function (f) {
-  return common.makeAbs(this, f)
-}
-
-Glob.prototype.abort = function () {
-  this.aborted = true
-  this.emit('abort')
-}
-
-Glob.prototype.pause = function () {
-  if (!this.paused) {
-    this.paused = true
-    this.emit('pause')
-  }
-}
-
-Glob.prototype.resume = function () {
-  if (this.paused) {
-    this.emit('resume')
-    this.paused = false
-    if (this._emitQueue.length) {
-      var eq = this._emitQueue.slice(0)
-      this._emitQueue.length = 0
-      for (var i = 0; i < eq.length; i ++) {
-        var e = eq[i]
-        this._emitMatch(e[0], e[1])
-      }
-    }
-    if (this._processQueue.length) {
-      var pq = this._processQueue.slice(0)
-      this._processQueue.length = 0
-      for (var i = 0; i < pq.length; i ++) {
-        var p = pq[i]
-        this._processing--
-        this._process(p[0], p[1], p[2], p[3])
-      }
-    }
-  }
-}
-
-Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
-  assert(this instanceof Glob)
-  assert(typeof cb === 'function')
-
-  if (this.aborted)
-    return
-
-  this._processing++
-  if (this.paused) {
-    this._processQueue.push([pattern, index, inGlobStar, cb])
-    return
-  }
-
-  //console.error('PROCESS %d', this._processing, pattern)
-
-  // Get the first [n] parts of pattern that are all strings.
-  var n = 0
-  while (typeof pattern[n] === 'string') {
-    n ++
-  }
-  // now n is the index of the first one that is *not* a string.
-
-  // see if there's anything else
-  var prefix
-  switch (n) {
-    // if not, then this is rather simple
-    case pattern.length:
-      this._processSimple(pattern.join('/'), index, cb)
-      return
-
-    case 0:
-      // pattern *starts* with some non-trivial item.
-      // going to readdir(cwd), but not include the prefix in matches.
-      prefix = null
-      break
-
-    default:
-      // pattern has some string bits in the front.
-      // whatever it starts with, whether that's 'absolute' like /foo/bar,
-      // or 'relative' like '../baz'
-      prefix = pattern.slice(0, n).join('/')
-      break
-  }
-
-  var remain = pattern.slice(n)
-
-  // get the list of entries.
-  var read
-  if (prefix === null)
-    read = '.'
-  else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
-    if (!prefix || !isAbsolute(prefix))
-      prefix = '/' + prefix
-    read = prefix
-  } else
-    read = prefix
-
-  var abs = this._makeAbs(read)
-
-  //if ignored, skip _processing
-  if (childrenIgnored(this, read))
-    return cb()
-
-  var isGlobStar = remain[0] === minimatch.GLOBSTAR
-  if (isGlobStar)
-    this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb)
-  else
-    this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb)
-}
-
-Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) {
-  var self = this
-  this._readdir(abs, inGlobStar, function (er, entries) {
-    return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
-  })
-}
-
-Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
-
-  // if the abs isn't a dir, then nothing can match!
-  if (!entries)
-    return cb()
-
-  // It will only match dot entries if it starts with a dot, or if
-  // dot is set.  Stuff like @(.foo|.bar) isn't allowed.
-  var pn = remain[0]
-  var negate = !!this.minimatch.negate
-  var rawGlob = pn._glob
-  var dotOk = this.dot || rawGlob.charAt(0) === '.'
-
-  var matchedEntries = []
-  for (var i = 0; i < entries.length; i++) {
-    var e = entries[i]
-    if (e.charAt(0) !== '.' || dotOk) {
-      var m
-      if (negate && !prefix) {
-        m = !e.match(pn)
-      } else {
-        m = e.match(pn)
-      }
-      if (m)
-        matchedEntries.push(e)
-    }
-  }
-
-  //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries)
-
-  var len = matchedEntries.length
-  // If there are no matched entries, then nothing matches.
-  if (len === 0)
-    return cb()
-
-  // if this is the last remaining pattern bit, then no need for
-  // an additional stat *unless* the user has specified mark or
-  // stat explicitly.  We know they exist, since readdir returned
-  // them.
-
-  if (remain.length === 1 && !this.mark && !this.stat) {
-    if (!this.matches[index])
-      this.matches[index] = Object.create(null)
-
-    for (var i = 0; i < len; i ++) {
-      var e = matchedEntries[i]
-      if (prefix) {
-        if (prefix !== '/')
-          e = prefix + '/' + e
-        else
-          e = prefix + e
-      }
-
-      if (e.charAt(0) === '/' && !this.nomount) {
-        e = path.join(this.root, e)
-      }
-      this._emitMatch(index, e)
-    }
-    // This was the last one, and no stats were needed
-    return cb()
-  }
-
-  // now test all matched entries as stand-ins for that part
-  // of the pattern.
-  remain.shift()
-  for (var i = 0; i < len; i ++) {
-    var e = matchedEntries[i]
-    var newPattern
-    if (prefix) {
-      if (prefix !== '/')
-        e = prefix + '/' + e
-      else
-        e = prefix + e
-    }
-    this._process([e].concat(remain), index, inGlobStar, cb)
-  }
-  cb()
-}
-
-Glob.prototype._emitMatch = function (index, e) {
-  if (this.aborted)
-    return
-
-  if (this.matches[index][e])
-    return
-
-  if (this.paused) {
-    this._emitQueue.push([index, e])
-    return
-  }
-
-  var abs = this._makeAbs(e)
-
-  if (this.nodir) {
-    var c = this.cache[abs]
-    if (c === 'DIR' || Array.isArray(c))
-      return
-  }
-
-  if (this.mark)
-    e = this._mark(e)
-
-  this.matches[index][e] = true
-
-  var st = this.statCache[abs]
-  if (st)
-    this.emit('stat', e, st)
-
-  this.emit('match', e)
-}
-
-Glob.prototype._readdirInGlobStar = function (abs, cb) {
-  if (this.aborted)
-    return
-
-  // follow all symlinked directories forever
-  // just proceed as if this is a non-globstar situation
-  if (this.follow)
-    return this._readdir(abs, false, cb)
-
-  var lstatkey = 'lstat\0' + abs
-  var self = this
-  var lstatcb = inflight(lstatkey, lstatcb_)
-
-  if (lstatcb)
-    fs.lstat(abs, lstatcb)
-
-  function lstatcb_ (er, lstat) {
-    if (er)
-      return cb()
-
-    var isSym = lstat.isSymbolicLink()
-    self.symlinks[abs] = isSym
-
-    // If it's not a symlink or a dir, then it's definitely a regular file.
-    // don't bother doing a readdir in that case.
-    if (!isSym && !lstat.isDirectory()) {
-      self.cache[abs] = 'FILE'
-      cb()
-    } else
-      self._readdir(abs, false, cb)
-  }
-}
-
-Glob.prototype._readdir = function (abs, inGlobStar, cb) {
-  if (this.aborted)
-    return
-
-  cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb)
-  if (!cb)
-    return
-
-  //console.error('RD %j %j', +inGlobStar, abs)
-  if (inGlobStar && !ownProp(this.symlinks, abs))
-    return this._readdirInGlobStar(abs, cb)
-
-  if (ownProp(this.cache, abs)) {
-    var c = this.cache[abs]
-    if (!c || c === 'FILE')
-      return cb()
-
-    if (Array.isArray(c))
-      return cb(null, c)
-  }
-
-  var self = this
-  fs.readdir(abs, readdirCb(this, abs, cb))
-}
-
-function readdirCb (self, abs, cb) {
-  return function (er, entries) {
-    if (er)
-      self._readdirError(abs, er, cb)
-    else
-      self._readdirEntries(abs, entries, cb)
-  }
-}
-
-Glob.prototype._readdirEntries = function (abs, entries, cb) {
-  if (this.aborted)
-    return
-
-  // if we haven't asked to stat everything, then just
-  // assume that everything in there exists, so we can avoid
-  // having to stat it a second time.
-  if (!this.mark && !this.stat) {
-    for (var i = 0; i < entries.length; i ++) {
-      var e = entries[i]
-      if (abs === '/')
-        e = abs + e
-      else
-        e = abs + '/' + e
-      this.cache[e] = true
-    }
-  }
-
-  this.cache[abs] = entries
-  return cb(null, entries)
-}
-
-Glob.prototype._readdirError = function (f, er, cb) {
-  if (this.aborted)
-    return
-
-  // handle errors, and cache the information
-  switch (er.code) {
-    case 'ENOTDIR': // totally normal. means it *does* exist.
-      this.cache[this._makeAbs(f)] = 'FILE'
-      break
-
-    case 'ENOENT': // not terribly unusual
-    case 'ELOOP':
-    case 'ENAMETOOLONG':
-    case 'UNKNOWN':
-      this.cache[this._makeAbs(f)] = false
-      break
-
-    default: // some unusual error.  Treat as failure.
-      this.cache[this._makeAbs(f)] = false
-      if (this.strict) return this.emit('error', er)
-      if (!this.silent) console.error('glob error', er)
-      break
-  }
-  return cb()
-}
-
-Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) {
-  var self = this
-  this._readdir(abs, inGlobStar, function (er, entries) {
-    self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
-  })
-}
-
-
-Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
-  //console.error('pgs2', prefix, remain[0], entries)
-
-  // no entries means not a dir, so it can never have matches
-  // foo.txt/** doesn't match foo.txt
-  if (!entries)
-    return cb()
-
-  // test without the globstar, and with every child both below
-  // and replacing the globstar.
-  var remainWithoutGlobStar = remain.slice(1)
-  var gspref = prefix ? [ prefix ] : []
-  var noGlobStar = gspref.concat(remainWithoutGlobStar)
-
-  // the noGlobStar pattern exits the inGlobStar state
-  this._process(noGlobStar, index, false, cb)
-
-  var isSym = this.symlinks[abs]
-  var len = entries.length
-
-  // If it's a symlink, and we're in a globstar, then stop
-  if (isSym && inGlobStar)
-    return cb()
-
-  for (var i = 0; i < len; i++) {
-    var e = entries[i]
-    if (e.charAt(0) === '.' && !this.dot)
-      continue
-
-    // these two cases enter the inGlobStar state
-    var instead = gspref.concat(entries[i], remainWithoutGlobStar)
-    this._process(instead, index, true, cb)
-
-    var below = gspref.concat(entries[i], remain)
-    this._process(below, index, true, cb)
-  }
-
-  cb()
-}
-
-Glob.prototype._processSimple = function (prefix, index, cb) {
-  // XXX review this.  Shouldn't it be doing the mounting etc
-  // before doing stat?  kinda weird?
-  var self = this
-  this._stat(prefix, function (er, exists) {
-    self._processSimple2(prefix, index, er, exists, cb)
-  })
-}
-Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) {
-
-  //console.error('ps2', prefix, exists)
-
-  if (!this.matches[index])
-    this.matches[index] = Object.create(null)
-
-  // If it doesn't exist, then just mark the lack of results
-  if (!exists)
-    return cb()
-
-  if (prefix && isAbsolute(prefix) && !this.nomount) {
-    var trail = /[\/\\]$/.test(prefix)
-    if (prefix.charAt(0) === '/') {
-      prefix = path.join(this.root, prefix)
-    } else {
-      prefix = path.resolve(this.root, prefix)
-      if (trail)
-        prefix += '/'
-    }
-  }
-
-  if (process.platform === 'win32')
-    prefix = prefix.replace(/\\/g, '/')
-
-  // Mark this as a match
-  this._emitMatch(index, prefix)
-  cb()
-}
-
-// Returns either 'DIR', 'FILE', or false
-Glob.prototype._stat = function (f, cb) {
-  var abs = this._makeAbs(f)
-  var needDir = f.slice(-1) === '/'
-
-  if (f.length > this.maxLength)
-    return cb()
-
-  if (!this.stat && ownProp(this.cache, abs)) {
-    var c = this.cache[abs]
-
-    if (Array.isArray(c))
-      c = 'DIR'
-
-    // It exists, but maybe not how we need it
-    if (!needDir || c === 'DIR')
-      return cb(null, c)
-
-    if (needDir && c === 'FILE')
-      return cb()
-
-    // otherwise we have to stat, because maybe c=true
-    // if we know it exists, but not what it is.
-  }
-
-  var exists
-  var stat = this.statCache[abs]
-  if (stat !== undefined) {
-    if (stat === false)
-      return cb(null, stat)
-    else {
-      var type = stat.isDirectory() ? 'DIR' : 'FILE'
-      if (needDir && type === 'FILE')
-        return cb()
-      else
-        return cb(null, type, stat)
-    }
-  }
-
-  var self = this
-  var statcb = inflight('stat\0' + abs, lstatcb_)
-  if (statcb)
-    fs.lstat(abs, statcb)
-
-  function lstatcb_ (er, lstat) {
-    if (lstat && lstat.isSymbolicLink()) {
-      // If it's a symlink, then treat it as the target, unless
-      // the target does not exist, then treat it as a file.
-      return fs.stat(abs, function (er, stat) {
-        if (er)
-          self._stat2(f, abs, null, lstat, cb)
-        else
-          self._stat2(f, abs, er, stat, cb)
-      })
-    } else {
-      self._stat2(f, abs, er, lstat, cb)
-    }
-  }
-}
-
-Glob.prototype._stat2 = function (f, abs, er, stat, cb) {
-  if (er) {
-    this.statCache[abs] = false
-    return cb()
-  }
-
-  var needDir = f.slice(-1) === '/'
-  this.statCache[abs] = stat
-
-  if (abs.slice(-1) === '/' && !stat.isDirectory())
-    return cb(null, false, stat)
-
-  var c = stat.isDirectory() ? 'DIR' : 'FILE'
-  this.cache[abs] = this.cache[abs] || c
-
-  if (needDir && c !== 'DIR')
-    return cb()
-
-  return cb(null, c, stat)
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/.eslintrc b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/.eslintrc
deleted file mode 100644 (file)
index b7a1550..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "env" : {
-    "node" : true
-  },
-  "rules" : {
-    "semi": [2, "never"],
-    "strict": 0,
-    "quotes": [1, "single", "avoid-escape"],
-    "no-use-before-define": 0,
-    "curly": 0,
-    "no-underscore-dangle": 0,
-    "no-lonely-if": 1,
-    "no-unused-vars": [2, {"vars" : "all", "args" : "after-used"}],
-    "no-mixed-requires": 0,
-    "space-infix-ops": 0
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/LICENSE
deleted file mode 100644 (file)
index 05eeeb8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/README.md
deleted file mode 100644 (file)
index 6dc8929..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-# inflight
-
-Add callbacks to requests in flight to avoid async duplication
-
-## USAGE
-
-```javascript
-var inflight = require('inflight')
-
-// some request that does some stuff
-function req(key, callback) {
-  // key is any random string.  like a url or filename or whatever.
-  //
-  // will return either a falsey value, indicating that the
-  // request for this key is already in flight, or a new callback
-  // which when called will call all callbacks passed to inflightk
-  // with the same key
-  callback = inflight(key, callback)
-
-  // If we got a falsey value back, then there's already a req going
-  if (!callback) return
-
-  // this is where you'd fetch the url or whatever
-  // callback is also once()-ified, so it can safely be assigned
-  // to multiple events etc.  First call wins.
-  setTimeout(function() {
-    callback(null, key)
-  }, 100)
-}
-
-// only assigns a single setTimeout
-// when it dings, all cbs get called
-req('foo', cb1)
-req('foo', cb2)
-req('foo', cb3)
-req('foo', cb4)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/inflight.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/inflight.js
deleted file mode 100644 (file)
index 8bc96cb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-var wrappy = require('wrappy')
-var reqs = Object.create(null)
-var once = require('once')
-
-module.exports = wrappy(inflight)
-
-function inflight (key, cb) {
-  if (reqs[key]) {
-    reqs[key].push(cb)
-    return null
-  } else {
-    reqs[key] = [cb]
-    return makeres(key)
-  }
-}
-
-function makeres (key) {
-  return once(function RES () {
-    var cbs = reqs[key]
-    var len = cbs.length
-    var args = slice(arguments)
-    for (var i = 0; i < len; i++) {
-      cbs[i].apply(null, args)
-    }
-    if (cbs.length > len) {
-      // added more in the interim.
-      // de-zalgo, just in case, but don't call again.
-      cbs.splice(0, len)
-      process.nextTick(function () {
-        RES.apply(null, args)
-      })
-    } else {
-      delete reqs[key]
-    }
-  })
-}
-
-function slice (args) {
-  var length = args.length
-  var array = []
-
-  for (var i = 0; i < length; i++) array[i] = args[i]
-  return array
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md
deleted file mode 100644 (file)
index 98eab25..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# wrappy
-
-Callback wrapping utility
-
-## USAGE
-
-```javascript
-var wrappy = require("wrappy")
-
-// var wrapper = wrappy(wrapperFunction)
-
-// make sure a cb is called only once
-// See also: http://npm.im/once for this specific use case
-var once = wrappy(function (cb) {
-  var called = false
-  return function () {
-    if (called) return
-    called = true
-    return cb.apply(this, arguments)
-  }
-})
-
-function printBoo () {
-  console.log('boo')
-}
-// has some rando property
-printBoo.iAmBooPrinter = true
-
-var onlyPrintOnce = once(printBoo)
-
-onlyPrintOnce() // prints 'boo'
-onlyPrintOnce() // does nothing
-
-// random property is retained!
-assert.equal(onlyPrintOnce.iAmBooPrinter, true)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json
deleted file mode 100644 (file)
index f28d8c8..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_id": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HmWWmWXMvC20VIxrhKbyxa7dRzk=",
-  "_location": "/grunt-standard/standard/glob/inflight/wrappy",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "name": "wrappy",
-    "escapedName": "wrappy",
-    "rawSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob/inflight"
-  ],
-  "_spec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/wrappy/issues"
-  },
-  "dependencies": {},
-  "description": "Callback wrapping utility",
-  "devDependencies": {
-    "tap": "^0.4.12"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/wrappy",
-  "license": "ISC",
-  "main": "wrappy.js",
-  "name": "wrappy",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/wrappy.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js
deleted file mode 100644 (file)
index 5ed0fcd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var test = require('tap').test
-var wrappy = require('../wrappy.js')
-
-test('basic', function (t) {
-  function onceifier (cb) {
-    var called = false
-    return function () {
-      if (called) return
-      called = true
-      return cb.apply(this, arguments)
-    }
-  }
-  onceifier.iAmOnce = {}
-  var once = wrappy(onceifier)
-  t.equal(once.iAmOnce, onceifier.iAmOnce)
-
-  var called = 0
-  function boo () {
-    t.equal(called, 0)
-    called++
-  }
-  // has some rando property
-  boo.iAmBoo = true
-
-  var onlyPrintOnce = once(boo)
-
-  onlyPrintOnce() // prints 'boo'
-  onlyPrintOnce() // does nothing
-  t.equal(called, 1)
-
-  // random property is retained!
-  t.equal(onlyPrintOnce.iAmBoo, true)
-
-  var logs = []
-  var logwrap = wrappy(function (msg, cb) {
-    logs.push(msg + ' wrapping cb')
-    return function () {
-      logs.push(msg + ' before cb')
-      var ret = cb.apply(this, arguments)
-      logs.push(msg + ' after cb')
-    }
-  })
-
-  var c = logwrap('foo', function () {
-    t.same(logs, [ 'foo wrapping cb', 'foo before cb' ])
-  })
-  c()
-  t.same(logs, [ 'foo wrapping cb', 'foo before cb', 'foo after cb' ])
-
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js
deleted file mode 100644 (file)
index bb7e7d6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
-  if (fn && cb) return wrappy(fn)(cb)
-
-  if (typeof fn !== 'function')
-    throw new TypeError('need wrapper function')
-
-  Object.keys(fn).forEach(function (k) {
-    wrapper[k] = fn[k]
-  })
-
-  return wrapper
-
-  function wrapper() {
-    var args = new Array(arguments.length)
-    for (var i = 0; i < args.length; i++) {
-      args[i] = arguments[i]
-    }
-    var ret = fn.apply(this, args)
-    var cb = args[args.length-1]
-    if (typeof ret === 'function' && ret !== cb) {
-      Object.keys(cb).forEach(function (k) {
-        ret[k] = cb[k]
-      })
-    }
-    return ret
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/package.json
deleted file mode 100644 (file)
index 87a379c..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_id": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-bLtFIevVHODsCpNr/XZX736bFyo=",
-  "_location": "/grunt-standard/standard/glob/inflight",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "inflight@https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "name": "inflight",
-    "escapedName": "inflight",
-    "rawSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/inflight/issues"
-  },
-  "dependencies": {
-    "once": "^1.3.0",
-    "wrappy": "1"
-  },
-  "description": "Add callbacks to requests in flight to avoid async duplication",
-  "devDependencies": {
-    "tap": "^0.4.10"
-  },
-  "homepage": "https://github.com/isaacs/inflight",
-  "license": "ISC",
-  "main": "inflight.js",
-  "name": "inflight",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/inflight.git"
-  },
-  "scripts": {
-    "test": "tap test.js"
-  },
-  "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inflight/test.js
deleted file mode 100644 (file)
index 2bb75b3..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-var test = require('tap').test
-var inf = require('./inflight.js')
-
-
-function req (key, cb) {
-  cb = inf(key, cb)
-  if (cb) setTimeout(function () {
-    cb(key)
-    cb(key)
-  })
-  return cb
-}
-
-test('basic', function (t) {
-  var calleda = false
-  var a = req('key', function (k) {
-    t.notOk(calleda)
-    calleda = true
-    t.equal(k, 'key')
-    if (calledb) t.end()
-  })
-  t.ok(a, 'first returned cb function')
-
-  var calledb = false
-  var b = req('key', function (k) {
-    t.notOk(calledb)
-    calledb = true
-    t.equal(k, 'key')
-    if (calleda) t.end()
-  })
-
-  t.notOk(b, 'second should get falsey inflight response')
-})
-
-test('timing', function (t) {
-  var expect = [
-    'method one',
-    'start one',
-    'end one',
-    'two',
-    'tick',
-    'three'
-  ]
-  var i = 0
-
-  function log (m) {
-    t.equal(m, expect[i], m + ' === ' + expect[i])
-    ++i
-    if (i === expect.length)
-      t.end()
-  }
-
-  function method (name, cb) {
-    log('method ' + name)
-    process.nextTick(cb)
-  }
-
-  var one = inf('foo', function () {
-    log('start one')
-    var three = inf('foo', function () {
-      log('three')
-    })
-    if (three) method('three', three)
-    log('end one')
-  })
-
-  method('one', one)
-
-  var two = inf('foo', function () {
-    log('two')
-  })
-  if (two) method('one', two)
-
-  process.nextTick(log.bind(null, 'tick'))
-})
-
-test('parameters', function (t) {
-  t.plan(8)
-
-  var a = inf('key', function (first, second, third) {
-    t.equal(first, 1)
-    t.equal(second, 2)
-    t.equal(third, 3)
-  })
-  t.ok(a, 'first returned cb function')
-
-  var b = inf('key', function (first, second, third) {
-    t.equal(first, 1)
-    t.equal(second, 2)
-    t.equal(third, 3)
-  })
-  t.notOk(b, 'second should get falsey inflight response')
-
-  setTimeout(function () {
-    a(1, 2, 3)
-  })
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/LICENSE
deleted file mode 100644 (file)
index dea3013..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
-REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
-INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
-LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/README.md
deleted file mode 100644 (file)
index b1c5665..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-Browser-friendly inheritance fully compatible with standard node.js
-[inherits](http://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor).
-
-This package exports standard `inherits` from node.js `util` module in
-node environment, but also provides alternative browser-friendly
-implementation through [browser
-field](https://gist.github.com/shtylman/4339901). Alternative
-implementation is a literal copy of standard one located in standalone
-module to avoid requiring of `util`. It also has a shim for old
-browsers with no `Object.create` support.
-
-While keeping you sure you are using standard `inherits`
-implementation in node.js environment, it allows bundlers such as
-[browserify](https://github.com/substack/node-browserify) to not
-include full `util` package to your client code if all you need is
-just `inherits` function. It worth, because browser shim for `util`
-package is large and `inherits` is often the single function you need
-from it.
-
-It's recommended to use this package instead of
-`require('util').inherits` for any code that has chances to be used
-not only in node.js but in browser too.
-
-## usage
-
-```js
-var inherits = require('inherits');
-// then use exactly as the standard one
-```
-
-## note on version ~1.0
-
-Version ~1.0 had completely different motivation and is not compatible
-neither with 2.0 nor with standard node.js `inherits`.
-
-If you are using version ~1.0 and planning to switch to ~2.0, be
-careful:
-
-* new version uses `super_` instead of `super` for referencing
-  superclass
-* new version overwrites current prototype while old one preserves any
-  existing fields on it
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits.js
deleted file mode 100644 (file)
index 29f5e24..0000000
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('util').inherits
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits_browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/inherits_browser.js
deleted file mode 100644 (file)
index c1e78a7..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-if (typeof Object.create === 'function') {
-  // implementation from standard node.js 'util' module
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    ctor.prototype = Object.create(superCtor.prototype, {
-      constructor: {
-        value: ctor,
-        enumerable: false,
-        writable: true,
-        configurable: true
-      }
-    });
-  };
-} else {
-  // old school shim for old browsers
-  module.exports = function inherits(ctor, superCtor) {
-    ctor.super_ = superCtor
-    var TempCtor = function () {}
-    TempCtor.prototype = superCtor.prototype
-    ctor.prototype = new TempCtor()
-    ctor.prototype.constructor = ctor
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/package.json
deleted file mode 100644 (file)
index 3d3cc69..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-{
-  "_args": [
-    [
-      "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_id": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
-  "_location": "/grunt-standard/standard/glob/inherits",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "inherits@https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "name": "inherits",
-    "escapedName": "inherits",
-    "rawSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "browser": "./inherits_browser.js",
-  "bugs": {
-    "url": "https://github.com/isaacs/inherits/issues"
-  },
-  "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()",
-  "homepage": "https://github.com/isaacs/inherits#readme",
-  "keywords": [
-    "inheritance",
-    "class",
-    "klass",
-    "oop",
-    "object-oriented",
-    "inherits",
-    "browser",
-    "browserify"
-  ],
-  "license": "ISC",
-  "main": "./inherits.js",
-  "name": "inherits",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/inherits.git"
-  },
-  "scripts": {
-    "test": "node test"
-  },
-  "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/test.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/inherits/test.js
deleted file mode 100644 (file)
index fc53012..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-var inherits = require('./inherits.js')
-var assert = require('assert')
-
-function test(c) {
-  assert(c.constructor === Child)
-  assert(c.constructor.super_ === Parent)
-  assert(Object.getPrototypeOf(c) === Child.prototype)
-  assert(Object.getPrototypeOf(Object.getPrototypeOf(c)) === Parent.prototype)
-  assert(c instanceof Child)
-  assert(c instanceof Parent)
-}
-
-function Child() {
-  Parent.call(this)
-  test(this)
-}
-
-function Parent() {}
-
-inherits(Child, Parent)
-
-var c = new Child
-test(c)
-
-console.log('ok')
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/LICENSE b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/LICENSE
deleted file mode 100644 (file)
index 05a4010..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Copyright 2009, 2010, 2011 Isaac Z. Schlueter.
-All rights reserved.
-
-Permission is hereby granted, free of charge, to any person
-obtaining a copy of this software and associated documentation
-files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use,
-copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/README.md
deleted file mode 100644 (file)
index d458bc2..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-# minimatch
-
-A minimal matching utility.
-
-[![Build Status](https://secure.travis-ci.org/isaacs/minimatch.png)](http://travis-ci.org/isaacs/minimatch)
-
-
-This is the matching library used internally by npm.
-
-It works by converting glob expressions into JavaScript `RegExp`
-objects.
-
-## Usage
-
-```javascript
-var minimatch = require("minimatch")
-
-minimatch("bar.foo", "*.foo") // true!
-minimatch("bar.foo", "*.bar") // false!
-minimatch("bar.foo", "*.+(bar|foo)", { debug: true }) // true, and noisy!
-```
-
-## Features
-
-Supports these glob features:
-
-* Brace Expansion
-* Extended glob matching
-* "Globstar" `**` matching
-
-See:
-
-* `man sh`
-* `man bash`
-* `man 3 fnmatch`
-* `man 5 gitignore`
-
-## Minimatch Class
-
-Create a minimatch object by instanting the `minimatch.Minimatch` class.
-
-```javascript
-var Minimatch = require("minimatch").Minimatch
-var mm = new Minimatch(pattern, options)
-```
-
-### Properties
-
-* `pattern` The original pattern the minimatch object represents.
-* `options` The options supplied to the constructor.
-* `set` A 2-dimensional array of regexp or string expressions.
-  Each row in the
-  array corresponds to a brace-expanded pattern.  Each item in the row
-  corresponds to a single path-part.  For example, the pattern
-  `{a,b/c}/d` would expand to a set of patterns like:
-
-        [ [ a, d ]
-        , [ b, c, d ] ]
-
-    If a portion of the pattern doesn't have any "magic" in it
-    (that is, it's something like `"foo"` rather than `fo*o?`), then it
-    will be left as a string rather than converted to a regular
-    expression.
-
-* `regexp` Created by the `makeRe` method.  A single regular expression
-  expressing the entire pattern.  This is useful in cases where you wish
-  to use the pattern somewhat like `fnmatch(3)` with `FNM_PATH` enabled.
-* `negate` True if the pattern is negated.
-* `comment` True if the pattern is a comment.
-* `empty` True if the pattern is `""`.
-
-### Methods
-
-* `makeRe` Generate the `regexp` member if necessary, and return it.
-  Will return `false` if the pattern is invalid.
-* `match(fname)` Return true if the filename matches the pattern, or
-  false otherwise.
-* `matchOne(fileArray, patternArray, partial)` Take a `/`-split
-  filename, and match it against a single row in the `regExpSet`.  This
-  method is mainly for internal use, but is exposed so that it can be
-  used by a glob-walker that needs to avoid excessive filesystem calls.
-
-All other methods are internal, and will be called as necessary.
-
-## Functions
-
-The top-level exported function has a `cache` property, which is an LRU
-cache set to store 100 items.  So, calling these methods repeatedly
-with the same pattern and options will use the same Minimatch object,
-saving the cost of parsing it multiple times.
-
-### minimatch(path, pattern, options)
-
-Main export.  Tests a path against the pattern using the options.
-
-```javascript
-var isJS = minimatch(file, "*.js", { matchBase: true })
-```
-
-### minimatch.filter(pattern, options)
-
-Returns a function that tests its
-supplied argument, suitable for use with `Array.filter`.  Example:
-
-```javascript
-var javascripts = fileList.filter(minimatch.filter("*.js", {matchBase: true}))
-```
-
-### minimatch.match(list, pattern, options)
-
-Match against the list of
-files, in the style of fnmatch or glob.  If nothing is matched, and
-options.nonull is set, then return a list containing the pattern itself.
-
-```javascript
-var javascripts = minimatch.match(fileList, "*.js", {matchBase: true}))
-```
-
-### minimatch.makeRe(pattern, options)
-
-Make a regular expression object from the pattern.
-
-## Options
-
-All options are `false` by default.
-
-### debug
-
-Dump a ton of stuff to stderr.
-
-### nobrace
-
-Do not expand `{a,b}` and `{1..3}` brace sets.
-
-### noglobstar
-
-Disable `**` matching against multiple folder names.
-
-### dot
-
-Allow patterns to match filenames starting with a period, even if
-the pattern does not explicitly have a period in that spot.
-
-Note that by default, `a/**/b` will **not** match `a/.d/b`, unless `dot`
-is set.
-
-### noext
-
-Disable "extglob" style patterns like `+(a|b)`.
-
-### nocase
-
-Perform a case-insensitive match.
-
-### nonull
-
-When a match is not found by `minimatch.match`, return a list containing
-the pattern itself if this option is set.  When not set, an empty list
-is returned if there are no matches.
-
-### matchBase
-
-If set, then patterns without slashes will be matched
-against the basename of the path if it contains slashes.  For example,
-`a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`.
-
-### nocomment
-
-Suppress the behavior of treating `#` at the start of a pattern as a
-comment.
-
-### nonegate
-
-Suppress the behavior of treating a leading `!` character as negation.
-
-### flipNegate
-
-Returns from negate expressions the same as if they were not negated.
-(Ie, true on a hit, false on a miss.)
-
-
-## Comparisons to other fnmatch/glob implementations
-
-While strict compliance with the existing standards is a worthwhile
-goal, some discrepancies exist between minimatch and other
-implementations, and are intentional.
-
-If the pattern starts with a `!` character, then it is negated.  Set the
-`nonegate` flag to suppress this behavior, and treat leading `!`
-characters normally.  This is perhaps relevant if you wish to start the
-pattern with a negative extglob pattern like `!(a|B)`.  Multiple `!`
-characters at the start of a pattern will negate the pattern multiple
-times.
-
-If a pattern starts with `#`, then it is treated as a comment, and
-will not match anything.  Use `\#` to match a literal `#` at the
-start of a line, or set the `nocomment` flag to suppress this behavior.
-
-The double-star character `**` is supported by default, unless the
-`noglobstar` flag is set.  This is supported in the manner of bsdglob
-and bash 4.1, where `**` only has special significance if it is the only
-thing in a path part.  That is, `a/**/b` will match `a/x/y/b`, but
-`a/**b` will not.
-
-If an escaped pattern has no matches, and the `nonull` flag is set,
-then minimatch.match returns the pattern as-provided, rather than
-interpreting the character escapes.  For example,
-`minimatch.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than
-`"*a?"`.  This is akin to setting the `nullglob` option in bash, except
-that it does not resolve escaped pattern characters.
-
-If brace expansion is not disabled, then it is performed before any
-other interpretation of the glob pattern.  Thus, a pattern like
-`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded
-**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are
-checked for validity.  Since those two are valid, matching proceeds.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/browser.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/browser.js
deleted file mode 100644 (file)
index cf58a3f..0000000
+++ /dev/null
@@ -1,1114 +0,0 @@
-(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
-
-},{"brace-expansion":2}],2:[function(require,module,exports){
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  var expansions = expand(escapeBraces(str));
-  return expansions.filter(identity).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0]).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      expansions.push([pre, N[j], post[k]].join(''))
-    }
-  }
-
-  return expansions;
-}
-
-
-},{"balanced-match":3,"concat-map":4}],3:[function(require,module,exports){
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
-
-},{}],4:[function(require,module,exports){
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (Array.isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-},{}]},{},[1]);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/minimatch.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/minimatch.js
deleted file mode 100644 (file)
index 2bfdf62..0000000
+++ /dev/null
@@ -1,868 +0,0 @@
-module.exports = minimatch
-minimatch.Minimatch = Minimatch
-
-var isWindows = false
-if (typeof process !== 'undefined' && process.platform === 'win32')
-  isWindows = true
-
-var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
-  , expand = require("brace-expansion")
-
-  // any single thing other than /
-  // don't need to escape / when using new RegExp()
-  , qmark = "[^/]"
-
-  // * => any number of characters
-  , star = qmark + "*?"
-
-  // ** when dots are allowed.  Anything goes, except .. and .
-  // not (^ or / followed by one or two dots followed by $ or /),
-  // followed by anything, any number of times.
-  , twoStarDot = "(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?"
-
-  // not a ^ or / followed by a dot,
-  // followed by anything, any number of times.
-  , twoStarNoDot = "(?:(?!(?:\\\/|^)\\.).)*?"
-
-  // characters that need to be escaped in RegExp.
-  , reSpecials = charSet("().*{}+?[]^$\\!")
-
-// "abc" -> { a:true, b:true, c:true }
-function charSet (s) {
-  return s.split("").reduce(function (set, c) {
-    set[c] = true
-    return set
-  }, {})
-}
-
-// normalizes slashes.
-var slashSplit = /\/+/
-
-minimatch.filter = filter
-function filter (pattern, options) {
-  options = options || {}
-  return function (p, i, list) {
-    return minimatch(p, pattern, options)
-  }
-}
-
-function ext (a, b) {
-  a = a || {}
-  b = b || {}
-  var t = {}
-  Object.keys(b).forEach(function (k) {
-    t[k] = b[k]
-  })
-  Object.keys(a).forEach(function (k) {
-    t[k] = a[k]
-  })
-  return t
-}
-
-minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return minimatch
-
-  var orig = minimatch
-
-  var m = function minimatch (p, pattern, options) {
-    return orig.minimatch(p, pattern, ext(def, options))
-  }
-
-  m.Minimatch = function Minimatch (pattern, options) {
-    return new orig.Minimatch(pattern, ext(def, options))
-  }
-
-  return m
-}
-
-Minimatch.defaults = function (def) {
-  if (!def || !Object.keys(def).length) return Minimatch
-  return minimatch.defaults(def).Minimatch
-}
-
-
-function minimatch (p, pattern, options) {
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-
-  // shortcut: comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    return false
-  }
-
-  // "" only matches ""
-  if (pattern.trim() === "") return p === ""
-
-  return new Minimatch(pattern, options).match(p)
-}
-
-function Minimatch (pattern, options) {
-  if (!(this instanceof Minimatch)) {
-    return new Minimatch(pattern, options)
-  }
-
-  if (typeof pattern !== "string") {
-    throw new TypeError("glob pattern string required")
-  }
-
-  if (!options) options = {}
-  pattern = pattern.trim()
-
-  // windows support: need to use /, not \
-  if (isWindows)
-    pattern = pattern.split("\\").join("/")
-
-  this.options = options
-  this.set = []
-  this.pattern = pattern
-  this.regexp = null
-  this.negate = false
-  this.comment = false
-  this.empty = false
-
-  // make the set of regexps etc.
-  this.make()
-}
-
-Minimatch.prototype.debug = function() {}
-
-Minimatch.prototype.make = make
-function make () {
-  // don't do it more than once.
-  if (this._made) return
-
-  var pattern = this.pattern
-  var options = this.options
-
-  // empty patterns and comments match nothing.
-  if (!options.nocomment && pattern.charAt(0) === "#") {
-    this.comment = true
-    return
-  }
-  if (!pattern) {
-    this.empty = true
-    return
-  }
-
-  // step 1: figure out negation, etc.
-  this.parseNegate()
-
-  // step 2: expand braces
-  var set = this.globSet = this.braceExpand()
-
-  if (options.debug) this.debug = console.error
-
-  this.debug(this.pattern, set)
-
-  // step 3: now we have a set, so turn each one into a series of path-portion
-  // matching patterns.
-  // These will be regexps, except in the case of "**", which is
-  // set to the GLOBSTAR object for globstar behavior,
-  // and will not contain any / characters
-  set = this.globParts = set.map(function (s) {
-    return s.split(slashSplit)
-  })
-
-  this.debug(this.pattern, set)
-
-  // glob --> regexps
-  set = set.map(function (s, si, set) {
-    return s.map(this.parse, this)
-  }, this)
-
-  this.debug(this.pattern, set)
-
-  // filter out everything that didn't compile properly.
-  set = set.filter(function (s) {
-    return -1 === s.indexOf(false)
-  })
-
-  this.debug(this.pattern, set)
-
-  this.set = set
-}
-
-Minimatch.prototype.parseNegate = parseNegate
-function parseNegate () {
-  var pattern = this.pattern
-    , negate = false
-    , options = this.options
-    , negateOffset = 0
-
-  if (options.nonegate) return
-
-  for ( var i = 0, l = pattern.length
-      ; i < l && pattern.charAt(i) === "!"
-      ; i ++) {
-    negate = !negate
-    negateOffset ++
-  }
-
-  if (negateOffset) this.pattern = pattern.substr(negateOffset)
-  this.negate = negate
-}
-
-// Brace expansion:
-// a{b,c}d -> abd acd
-// a{b,}c -> abc ac
-// a{0..3}d -> a0d a1d a2d a3d
-// a{b,c{d,e}f}g -> abg acdfg acefg
-// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
-//
-// Invalid sets are not expanded.
-// a{2..}b -> a{2..}b
-// a{b}c -> a{b}c
-minimatch.braceExpand = function (pattern, options) {
-  return braceExpand(pattern, options)
-}
-
-Minimatch.prototype.braceExpand = braceExpand
-
-function braceExpand (pattern, options) {
-  if (!options) {
-    if (this instanceof Minimatch)
-      options = this.options
-    else
-      options = {}
-  }
-
-  pattern = typeof pattern === "undefined"
-    ? this.pattern : pattern
-
-  if (typeof pattern === "undefined") {
-    throw new Error("undefined pattern")
-  }
-
-  if (options.nobrace ||
-      !pattern.match(/\{.*\}/)) {
-    // shortcut. no need to expand.
-    return [pattern]
-  }
-
-  return expand(pattern)
-}
-
-// parse a component of the expanded set.
-// At this point, no pattern may contain "/" in it
-// so we're going to return a 2d array, where each entry is the full
-// pattern, split on '/', and then turned into a regular expression.
-// A regexp is made at the end which joins each array with an
-// escaped /, and another full one which joins each regexp with |.
-//
-// Following the lead of Bash 4.1, note that "**" only has special meaning
-// when it is the *only* thing in a path portion.  Otherwise, any series
-// of * is equivalent to a single *.  Globstar behavior is enabled by
-// default, and can be disabled by setting options.noglobstar.
-Minimatch.prototype.parse = parse
-var SUBPARSE = {}
-function parse (pattern, isSub) {
-  var options = this.options
-
-  // shortcuts
-  if (!options.noglobstar && pattern === "**") return GLOBSTAR
-  if (pattern === "") return ""
-
-  var re = ""
-    , hasMagic = !!options.nocase
-    , escaping = false
-    // ? => one single character
-    , patternListStack = []
-    , plType
-    , stateChar
-    , inClass = false
-    , reClassStart = -1
-    , classStart = -1
-    // . and .. never match anything that doesn't start with .,
-    // even when options.dot is set.
-    , patternStart = pattern.charAt(0) === "." ? "" // anything
-      // not (start or / followed by . or .. followed by / or end)
-      : options.dot ? "(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))"
-      : "(?!\\.)"
-    , self = this
-
-  function clearStateChar () {
-    if (stateChar) {
-      // we had some state-tracking character
-      // that wasn't consumed by this pass.
-      switch (stateChar) {
-        case "*":
-          re += star
-          hasMagic = true
-          break
-        case "?":
-          re += qmark
-          hasMagic = true
-          break
-        default:
-          re += "\\"+stateChar
-          break
-      }
-      self.debug('clearStateChar %j %j', stateChar, re)
-      stateChar = false
-    }
-  }
-
-  for ( var i = 0, len = pattern.length, c
-      ; (i < len) && (c = pattern.charAt(i))
-      ; i ++ ) {
-
-    this.debug("%s\t%s %s %j", pattern, i, re, c)
-
-    // skip over any that are escaped.
-    if (escaping && reSpecials[c]) {
-      re += "\\" + c
-      escaping = false
-      continue
-    }
-
-    SWITCH: switch (c) {
-      case "/":
-        // completely not allowed, even escaped.
-        // Should already be path-split by now.
-        return false
-
-      case "\\":
-        clearStateChar()
-        escaping = true
-        continue
-
-      // the various stateChar values
-      // for the "extglob" stuff.
-      case "?":
-      case "*":
-      case "+":
-      case "@":
-      case "!":
-        this.debug("%s\t%s %s %j <-- stateChar", pattern, i, re, c)
-
-        // all of those are literals inside a class, except that
-        // the glob [!a] means [^a] in regexp
-        if (inClass) {
-          this.debug('  in class')
-          if (c === "!" && i === classStart + 1) c = "^"
-          re += c
-          continue
-        }
-
-        // if we already have a stateChar, then it means
-        // that there was something like ** or +? in there.
-        // Handle the stateChar, then proceed with this one.
-        self.debug('call clearStateChar %j', stateChar)
-        clearStateChar()
-        stateChar = c
-        // if extglob is disabled, then +(asdf|foo) isn't a thing.
-        // just clear the statechar *now*, rather than even diving into
-        // the patternList stuff.
-        if (options.noext) clearStateChar()
-        continue
-
-      case "(":
-        if (inClass) {
-          re += "("
-          continue
-        }
-
-        if (!stateChar) {
-          re += "\\("
-          continue
-        }
-
-        plType = stateChar
-        patternListStack.push({ type: plType
-                              , start: i - 1
-                              , reStart: re.length })
-        // negation is (?:(?!js)[^/]*)
-        re += stateChar === "!" ? "(?:(?!" : "(?:"
-        this.debug('plType %j %j', stateChar, re)
-        stateChar = false
-        continue
-
-      case ")":
-        if (inClass || !patternListStack.length) {
-          re += "\\)"
-          continue
-        }
-
-        clearStateChar()
-        hasMagic = true
-        re += ")"
-        plType = patternListStack.pop().type
-        // negation is (?:(?!js)[^/]*)
-        // The others are (?:<pattern>)<type>
-        switch (plType) {
-          case "!":
-            re += "[^/]*?)"
-            break
-          case "?":
-          case "+":
-          case "*": re += plType
-          case "@": break // the default anyway
-        }
-        continue
-
-      case "|":
-        if (inClass || !patternListStack.length || escaping) {
-          re += "\\|"
-          escaping = false
-          continue
-        }
-
-        clearStateChar()
-        re += "|"
-        continue
-
-      // these are mostly the same in regexp and glob
-      case "[":
-        // swallow any state-tracking char before the [
-        clearStateChar()
-
-        if (inClass) {
-          re += "\\" + c
-          continue
-        }
-
-        inClass = true
-        classStart = i
-        reClassStart = re.length
-        re += c
-        continue
-
-      case "]":
-        //  a right bracket shall lose its special
-        //  meaning and represent itself in
-        //  a bracket expression if it occurs
-        //  first in the list.  -- POSIX.2 2.8.3.2
-        if (i === classStart + 1 || !inClass) {
-          re += "\\" + c
-          escaping = false
-          continue
-        }
-
-        // handle the case where we left a class open.
-        // "[z-a]" is valid, equivalent to "\[z-a\]"
-        if (inClass) {
-          // split where the last [ was, make sure we don't have
-          // an invalid re. if so, re-walk the contents of the
-          // would-be class to re-translate any characters that
-          // were passed through as-is
-          // TODO: It would probably be faster to determine this
-          // without a try/catch and a new RegExp, but it's tricky
-          // to do safely.  For now, this is safe and works.
-          var cs = pattern.substring(classStart + 1, i)
-          try {
-            new RegExp('[' + cs + ']')
-          } catch (er) {
-            // not a valid class!
-            var sp = this.parse(cs, SUBPARSE)
-            re = re.substr(0, reClassStart) + "\\[" + sp[0] + '\\]'
-            hasMagic = hasMagic || sp[1]
-            inClass = false
-            continue
-          }
-        }
-
-        // finish up the class.
-        hasMagic = true
-        inClass = false
-        re += c
-        continue
-
-      default:
-        // swallow any state char that wasn't consumed
-        clearStateChar()
-
-        if (escaping) {
-          // no need
-          escaping = false
-        } else if (reSpecials[c]
-                   && !(c === "^" && inClass)) {
-          re += "\\"
-        }
-
-        re += c
-
-    } // switch
-  } // for
-
-
-  // handle the case where we left a class open.
-  // "[abc" is valid, equivalent to "\[abc"
-  if (inClass) {
-    // split where the last [ was, and escape it
-    // this is a huge pita.  We now have to re-walk
-    // the contents of the would-be class to re-translate
-    // any characters that were passed through as-is
-    var cs = pattern.substr(classStart + 1)
-      , sp = this.parse(cs, SUBPARSE)
-    re = re.substr(0, reClassStart) + "\\[" + sp[0]
-    hasMagic = hasMagic || sp[1]
-  }
-
-  // handle the case where we had a +( thing at the *end*
-  // of the pattern.
-  // each pattern list stack adds 3 chars, and we need to go through
-  // and escape any | chars that were passed through as-is for the regexp.
-  // Go through and escape them, taking care not to double-escape any
-  // | chars that were already escaped.
-  var pl
-  while (pl = patternListStack.pop()) {
-    var tail = re.slice(pl.reStart + 3)
-    // maybe some even number of \, then maybe 1 \, followed by a |
-    tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function (_, $1, $2) {
-      if (!$2) {
-        // the | isn't already escaped, so escape it.
-        $2 = "\\"
-      }
-
-      // need to escape all those slashes *again*, without escaping the
-      // one that we need for escaping the | character.  As it works out,
-      // escaping an even number of slashes can be done by simply repeating
-      // it exactly after itself.  That's why this trick works.
-      //
-      // I am sorry that you have to see this.
-      return $1 + $1 + $2 + "|"
-    })
-
-    this.debug("tail=%j\n   %s", tail, tail)
-    var t = pl.type === "*" ? star
-          : pl.type === "?" ? qmark
-          : "\\" + pl.type
-
-    hasMagic = true
-    re = re.slice(0, pl.reStart)
-       + t + "\\("
-       + tail
-  }
-
-  // handle trailing things that only matter at the very end.
-  clearStateChar()
-  if (escaping) {
-    // trailing \\
-    re += "\\\\"
-  }
-
-  // only need to apply the nodot start if the re starts with
-  // something that could conceivably capture a dot
-  var addPatternStart = false
-  switch (re.charAt(0)) {
-    case ".":
-    case "[":
-    case "(": addPatternStart = true
-  }
-
-  // if the re is not "" at this point, then we need to make sure
-  // it doesn't match against an empty path part.
-  // Otherwise a/* will match a/, which it should not.
-  if (re !== "" && hasMagic) re = "(?=.)" + re
-
-  if (addPatternStart) re = patternStart + re
-
-  // parsing just a piece of a larger pattern.
-  if (isSub === SUBPARSE) {
-    return [ re, hasMagic ]
-  }
-
-  // skip the regexp for non-magical patterns
-  // unescape anything in it, though, so that it'll be
-  // an exact match against a file etc.
-  if (!hasMagic) {
-    return globUnescape(pattern)
-  }
-
-  var flags = options.nocase ? "i" : ""
-    , regExp = new RegExp("^" + re + "$", flags)
-
-  regExp._glob = pattern
-  regExp._src = re
-
-  return regExp
-}
-
-minimatch.makeRe = function (pattern, options) {
-  return new Minimatch(pattern, options || {}).makeRe()
-}
-
-Minimatch.prototype.makeRe = makeRe
-function makeRe () {
-  if (this.regexp || this.regexp === false) return this.regexp
-
-  // at this point, this.set is a 2d array of partial
-  // pattern strings, or "**".
-  //
-  // It's better to use .match().  This function shouldn't
-  // be used, really, but it's pretty convenient sometimes,
-  // when you just want to work with a regex.
-  var set = this.set
-
-  if (!set.length) return this.regexp = false
-  var options = this.options
-
-  var twoStar = options.noglobstar ? star
-      : options.dot ? twoStarDot
-      : twoStarNoDot
-    , flags = options.nocase ? "i" : ""
-
-  var re = set.map(function (pattern) {
-    return pattern.map(function (p) {
-      return (p === GLOBSTAR) ? twoStar
-           : (typeof p === "string") ? regExpEscape(p)
-           : p._src
-    }).join("\\\/")
-  }).join("|")
-
-  // must match entire pattern
-  // ending in a * or ** will make it less strict.
-  re = "^(?:" + re + ")$"
-
-  // can match anything, as long as it's not this.
-  if (this.negate) re = "^(?!" + re + ").*$"
-
-  try {
-    return this.regexp = new RegExp(re, flags)
-  } catch (ex) {
-    return this.regexp = false
-  }
-}
-
-minimatch.match = function (list, pattern, options) {
-  options = options || {}
-  var mm = new Minimatch(pattern, options)
-  list = list.filter(function (f) {
-    return mm.match(f)
-  })
-  if (mm.options.nonull && !list.length) {
-    list.push(pattern)
-  }
-  return list
-}
-
-Minimatch.prototype.match = match
-function match (f, partial) {
-  this.debug("match", f, this.pattern)
-  // short-circuit in the case of busted things.
-  // comments, etc.
-  if (this.comment) return false
-  if (this.empty) return f === ""
-
-  if (f === "/" && partial) return true
-
-  var options = this.options
-
-  // windows: need to use /, not \
-  if (isWindows)
-    f = f.split("\\").join("/")
-
-  // treat the test path as a set of pathparts.
-  f = f.split(slashSplit)
-  this.debug(this.pattern, "split", f)
-
-  // just ONE of the pattern sets in this.set needs to match
-  // in order for it to be valid.  If negating, then just one
-  // match means that we have failed.
-  // Either way, return on the first hit.
-
-  var set = this.set
-  this.debug(this.pattern, "set", set)
-
-  // Find the basename of the path by looking for the last non-empty segment
-  var filename;
-  for (var i = f.length - 1; i >= 0; i--) {
-    filename = f[i]
-    if (filename) break
-  }
-
-  for (var i = 0, l = set.length; i < l; i ++) {
-    var pattern = set[i], file = f
-    if (options.matchBase && pattern.length === 1) {
-      file = [filename]
-    }
-    var hit = this.matchOne(file, pattern, partial)
-    if (hit) {
-      if (options.flipNegate) return true
-      return !this.negate
-    }
-  }
-
-  // didn't get any hits.  this is success if it's a negative
-  // pattern, failure otherwise.
-  if (options.flipNegate) return false
-  return this.negate
-}
-
-// set partial to true to test if, for example,
-// "/a/b" matches the start of "/*/b/*/d"
-// Partial means, if you run out of file before you run
-// out of pattern, then that's fine, as long as all
-// the parts match.
-Minimatch.prototype.matchOne = function (file, pattern, partial) {
-  var options = this.options
-
-  this.debug("matchOne",
-              { "this": this
-              , file: file
-              , pattern: pattern })
-
-  this.debug("matchOne", file.length, pattern.length)
-
-  for ( var fi = 0
-          , pi = 0
-          , fl = file.length
-          , pl = pattern.length
-      ; (fi < fl) && (pi < pl)
-      ; fi ++, pi ++ ) {
-
-    this.debug("matchOne loop")
-    var p = pattern[pi]
-      , f = file[fi]
-
-    this.debug(pattern, p, f)
-
-    // should be impossible.
-    // some invalid regexp stuff in the set.
-    if (p === false) return false
-
-    if (p === GLOBSTAR) {
-      this.debug('GLOBSTAR', [pattern, p, f])
-
-      // "**"
-      // a/**/b/**/c would match the following:
-      // a/b/x/y/z/c
-      // a/x/y/z/b/c
-      // a/b/x/b/x/c
-      // a/b/c
-      // To do this, take the rest of the pattern after
-      // the **, and see if it would match the file remainder.
-      // If so, return success.
-      // If not, the ** "swallows" a segment, and try again.
-      // This is recursively awful.
-      //
-      // a/**/b/**/c matching a/b/x/y/z/c
-      // - a matches a
-      // - doublestar
-      //   - matchOne(b/x/y/z/c, b/**/c)
-      //     - b matches b
-      //     - doublestar
-      //       - matchOne(x/y/z/c, c) -> no
-      //       - matchOne(y/z/c, c) -> no
-      //       - matchOne(z/c, c) -> no
-      //       - matchOne(c, c) yes, hit
-      var fr = fi
-        , pr = pi + 1
-      if (pr === pl) {
-        this.debug('** at the end')
-        // a ** at the end will just swallow the rest.
-        // We have found a match.
-        // however, it will not swallow /.x, unless
-        // options.dot is set.
-        // . and .. are *never* matched by **, for explosively
-        // exponential reasons.
-        for ( ; fi < fl; fi ++) {
-          if (file[fi] === "." || file[fi] === ".." ||
-              (!options.dot && file[fi].charAt(0) === ".")) return false
-        }
-        return true
-      }
-
-      // ok, let's see if we can swallow whatever we can.
-      WHILE: while (fr < fl) {
-        var swallowee = file[fr]
-
-        this.debug('\nglobstar while',
-                    file, fr, pattern, pr, swallowee)
-
-        // XXX remove this slice.  Just pass the start index.
-        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
-          this.debug('globstar found match!', fr, fl, swallowee)
-          // found a match.
-          return true
-        } else {
-          // can't swallow "." or ".." ever.
-          // can only swallow ".foo" when explicitly asked.
-          if (swallowee === "." || swallowee === ".." ||
-              (!options.dot && swallowee.charAt(0) === ".")) {
-            this.debug("dot detected!", file, fr, pattern, pr)
-            break WHILE
-          }
-
-          // ** swallows a segment, and continue.
-          this.debug('globstar swallow a segment, and continue')
-          fr ++
-        }
-      }
-      // no match was found.
-      // However, in partial mode, we can't say this is necessarily over.
-      // If there's more *pattern* left, then
-      if (partial) {
-        // ran out of file
-        this.debug("\n>>> no match, partial?", file, fr, pattern, pr)
-        if (fr === fl) return true
-      }
-      return false
-    }
-
-    // something other than **
-    // non-magic patterns just have to match exactly
-    // patterns with magic have been turned into regexps.
-    var hit
-    if (typeof p === "string") {
-      if (options.nocase) {
-        hit = f.toLowerCase() === p.toLowerCase()
-      } else {
-        hit = f === p
-      }
-      this.debug("string match", p, f, hit)
-    } else {
-      hit = f.match(p)
-      this.debug("pattern match", p, f, hit)
-    }
-
-    if (!hit) return false
-  }
-
-  // Note: ending in / means that we'll get a final ""
-  // at the end of the pattern.  This can only match a
-  // corresponding "" at the end of the file.
-  // If the file ends in /, then it can only match a
-  // a pattern that ends in /, unless the pattern just
-  // doesn't have any more for it. But, a/b/ should *not*
-  // match "a/b/*", even though "" matches against the
-  // [^/]*? pattern, except in partial mode, where it might
-  // simply not be reached yet.
-  // However, a/b/ should still satisfy a/*
-
-  // now either we fell off the end of the pattern, or we're done.
-  if (fi === fl && pi === pl) {
-    // ran out of pattern and filename at the same time.
-    // an exact hit!
-    return true
-  } else if (fi === fl) {
-    // ran out of file, but still had pattern left.
-    // this is ok if we're doing the match as part of
-    // a glob fs traversal.
-    return partial
-  } else if (pi === pl) {
-    // ran out of pattern, still have file left.
-    // this is only acceptable if we're on the very last
-    // empty segment of a file with a trailing slash.
-    // a/* should match a/b/
-    var emptyFileEnd = (fi === fl - 1) && (file[fi] === "")
-    return emptyFileEnd
-  }
-
-  // should be unreachable.
-  throw new Error("wtf?")
-}
-
-
-// replace stuff like \* with *
-function globUnescape (s) {
-  return s.replace(/\\(.)/g, "$1")
-}
-
-
-function regExpEscape (s) {
-  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&")
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.npmignore
deleted file mode 100644 (file)
index 249bc20..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-*.sw*
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/.travis.yml
deleted file mode 100644 (file)
index 6e5919d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-language: node_js
-node_js:
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md
deleted file mode 100644 (file)
index 62bc7ba..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-# brace-expansion
-
-[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), 
-as known from sh/bash, in JavaScript.
-
-[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion)
-
-[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion)
-
-## Example
-
-```js
-var expand = require('brace-expansion');
-
-expand('file-{a,b,c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('-v{,,}')
-// => ['-v', '-v', '-v']
-
-expand('file{0..2}.jpg')
-// => ['file0.jpg', 'file1.jpg', 'file2.jpg']
-
-expand('file-{a..c}.jpg')
-// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
-
-expand('file{2..0}.jpg')
-// => ['file2.jpg', 'file1.jpg', 'file0.jpg']
-
-expand('file{0..4..2}.jpg')
-// => ['file0.jpg', 'file2.jpg', 'file4.jpg']
-
-expand('file-{a..e..2}.jpg')
-// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg']
-
-expand('file{00..10..5}.jpg')
-// => ['file00.jpg', 'file05.jpg', 'file10.jpg']
-
-expand('{{A..C},{a..c}}')
-// => ['A', 'B', 'C', 'a', 'b', 'c']
-
-expand('ppp{,config,oe{,conf}}')
-// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf']
-```
-
-## API
-
-```js
-var expand = require('brace-expansion');
-```
-
-### var expanded = expand(str)
-
-Return an array of all possible and valid expansions of `str`. If none are
-found, `[str]` is returned.
-
-Valid expansions are:
-
-```js
-/^(.*,)+(.+)?$/
-// {a,b,...}
-```
-
-A comma seperated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-A numeric sequence from `x` to `y` inclusive, with optional increment.
-If `x` or `y` start with a leading `0`, all the numbers will be padded
-to have equal length. Negative numbers and backwards iteration work too.
-
-```js
-/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
-// {x..y[..incr]}
-```
-
-An alphabetic sequence from `x` to `y` inclusive, with optional increment.
-`x` and `y` must be exactly one character, and if given, `incr` must be a
-number.
-
-For compatibility reasons, the string `${` is not eligible for brace expansion.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install brace-expansion
-```
-
-## Contributors
-
-- [Julian Gruber](https://github.com/juliangruber)
-- [Isaac Z. Schlueter](https://github.com/isaacs)
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/example.js
deleted file mode 100644 (file)
index 60ecfc7..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-var expand = require('./');
-
-console.log(expand('http://any.org/archive{1996..1999}/vol{1..4}/part{a,b,c}.html'));
-console.log(expand('http://www.numericals.com/file{1..100..10}.txt'));
-console.log(expand('http://www.letters.com/file{a..z..2}.txt'));
-console.log(expand('mkdir /usr/local/src/bash/{old,new,dist,bugs}'));
-console.log(expand('chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js
deleted file mode 100644 (file)
index a23104e..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-var concatMap = require('concat-map');
-var balanced = require('balanced-match');
-
-module.exports = expandTop;
-
-var escSlash = '\0SLASH'+Math.random()+'\0';
-var escOpen = '\0OPEN'+Math.random()+'\0';
-var escClose = '\0CLOSE'+Math.random()+'\0';
-var escComma = '\0COMMA'+Math.random()+'\0';
-var escPeriod = '\0PERIOD'+Math.random()+'\0';
-
-function numeric(str) {
-  return parseInt(str, 10) == str
-    ? parseInt(str, 10)
-    : str.charCodeAt(0);
-}
-
-function escapeBraces(str) {
-  return str.split('\\\\').join(escSlash)
-            .split('\\{').join(escOpen)
-            .split('\\}').join(escClose)
-            .split('\\,').join(escComma)
-            .split('\\.').join(escPeriod);
-}
-
-function unescapeBraces(str) {
-  return str.split(escSlash).join('\\')
-            .split(escOpen).join('{')
-            .split(escClose).join('}')
-            .split(escComma).join(',')
-            .split(escPeriod).join('.');
-}
-
-
-// Basically just str.split(","), but handling cases
-// where we have nested braced sections, which should be
-// treated as individual members, like {a,{b,c},d}
-function parseCommaParts(str) {
-  if (!str)
-    return [''];
-
-  var parts = [];
-  var m = balanced('{', '}', str);
-
-  if (!m)
-    return str.split(',');
-
-  var pre = m.pre;
-  var body = m.body;
-  var post = m.post;
-  var p = pre.split(',');
-
-  p[p.length-1] += '{' + body + '}';
-  var postParts = parseCommaParts(post);
-  if (post.length) {
-    p[p.length-1] += postParts.shift();
-    p.push.apply(p, postParts);
-  }
-
-  parts.push.apply(parts, p);
-
-  return parts;
-}
-
-function expandTop(str) {
-  if (!str)
-    return [];
-
-  return expand(escapeBraces(str), true).map(unescapeBraces);
-}
-
-function identity(e) {
-  return e;
-}
-
-function embrace(str) {
-  return '{' + str + '}';
-}
-function isPadded(el) {
-  return /^-?0\d/.test(el);
-}
-
-function lte(i, y) {
-  return i <= y;
-}
-function gte(i, y) {
-  return i >= y;
-}
-
-function expand(str, isTop) {
-  var expansions = [];
-
-  var m = balanced('{', '}', str);
-  if (!m || /\$$/.test(m.pre)) return [str];
-
-  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
-  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
-  var isSequence = isNumericSequence || isAlphaSequence;
-  var isOptions = /^(.*,)+(.+)?$/.test(m.body);
-  if (!isSequence && !isOptions) {
-    // {a},b}
-    if (m.post.match(/,.*}/)) {
-      str = m.pre + '{' + m.body + escClose + m.post;
-      return expand(str);
-    }
-    return [str];
-  }
-
-  var n;
-  if (isSequence) {
-    n = m.body.split(/\.\./);
-  } else {
-    n = parseCommaParts(m.body);
-    if (n.length === 1) {
-      // x{{a,b}}y ==> x{a}y x{b}y
-      n = expand(n[0], false).map(embrace);
-      if (n.length === 1) {
-        var post = m.post.length
-          ? expand(m.post, false)
-          : [''];
-        return post.map(function(p) {
-          return m.pre + n[0] + p;
-        });
-      }
-    }
-  }
-
-  // at this point, n is the parts, and we know it's not a comma set
-  // with a single entry.
-
-  // no need to expand pre, since it is guaranteed to be free of brace-sets
-  var pre = m.pre;
-  var post = m.post.length
-    ? expand(m.post, false)
-    : [''];
-
-  var N;
-
-  if (isSequence) {
-    var x = numeric(n[0]);
-    var y = numeric(n[1]);
-    var width = Math.max(n[0].length, n[1].length)
-    var incr = n.length == 3
-      ? Math.abs(numeric(n[2]))
-      : 1;
-    var test = lte;
-    var reverse = y < x;
-    if (reverse) {
-      incr *= -1;
-      test = gte;
-    }
-    var pad = n.some(isPadded);
-
-    N = [];
-
-    for (var i = x; test(i, y); i += incr) {
-      var c;
-      if (isAlphaSequence) {
-        c = String.fromCharCode(i);
-        if (c === '\\')
-          c = '';
-      } else {
-        c = String(i);
-        if (pad) {
-          var need = width - c.length;
-          if (need > 0) {
-            var z = new Array(need + 1).join('0');
-            if (i < 0)
-              c = '-' + z + c.slice(1);
-            else
-              c = z + c;
-          }
-        }
-      }
-      N.push(c);
-    }
-  } else {
-    N = concatMap(n, function(el) { return expand(el, false) });
-  }
-
-  for (var j = 0; j < N.length; j++) {
-    for (var k = 0; k < post.length; k++) {
-      var expansion = pre + N[j] + post[k];
-      if (!isTop || isSequence || expansion)
-        expansions.push(expansion);
-    }
-  }
-
-  return expansions;
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml
deleted file mode 100644 (file)
index cc4dba2..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.8"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile
deleted file mode 100644 (file)
index fa5da71..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test:
-       @node_modules/.bin/tape test/*.js
-
-.PHONY: test
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md
deleted file mode 100644 (file)
index 2aff0eb..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-# balanced-match
-
-Match balanced string pairs, like `{` and `}` or `<b>` and `</b>`.
-
-[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match)
-[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match)
-
-[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match)
-
-## Example
-
-Get the first matching pair of braces:
-
-```js
-var balanced = require('balanced-match');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-```
-
-The matches are:
-
-```bash
-$ node example.js
-{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' }
-{ start: 3,
-  end: 9,
-  pre: 'pre',
-  body: 'first',
-  post: 'between{second}post' }
-```
-
-## API
-
-### var m = balanced(a, b, str)
-
-For the first non-nested matching pair of `a` and `b` in `str`, return an
-object with those keys:
-
-* **start** the index of the first match of `a`
-* **end** the index of the matching `b`
-* **pre** the preamble, `a` and `b` not included
-* **body** the match, `a` and `b` not included
-* **post** the postscript, `a` and `b` not included
-
-If there's no match, `undefined` will be returned.
-
-If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']`.
-
-## Installation
-
-With [npm](https://npmjs.org) do:
-
-```bash
-npm install balanced-match
-```
-
-## License
-
-(MIT)
-
-Copyright (c) 2013 Julian Gruber &lt;julian@juliangruber.com&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js
deleted file mode 100644 (file)
index c02ad34..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-var balanced = require('./');
-
-console.log(balanced('{', '}', 'pre{in{nested}}post'));
-console.log(balanced('{', '}', 'pre{first}between{second}post'));
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js
deleted file mode 100644 (file)
index d165ae8..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-module.exports = balanced;
-function balanced(a, b, str) {
-  var bal = 0;
-  var m = {};
-  var ended = false;
-
-  for (var i = 0; i < str.length; i++) {
-    if (a == str.substr(i, a.length)) {
-      if (!('start' in m)) m.start = i;
-      bal++;
-    }
-    else if (b == str.substr(i, b.length) && 'start' in m) {
-      ended = true;
-      bal--;
-      if (!bal) {
-        m.end = i;
-        m.pre = str.substr(0, m.start);
-        m.body = (m.end - m.start > 1)
-          ? str.substring(m.start + a.length, m.end)
-          : '';
-        m.post = str.slice(m.end + b.length);
-        return m;
-      }
-    }
-  }
-
-  // if we opened more than we closed, find the one we closed
-  if (bal && ended) {
-    var start = m.start + a.length;
-    m = balanced(a, b, str.substr(start));
-    if (m) {
-      m.start += start;
-      m.end += start;
-      m.pre = str.slice(0, start) + m.pre;
-    }
-    return m;
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json
deleted file mode 100644 (file)
index 3974203..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  "_args": [
-    [
-      "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_id": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-OPZzDAOqttXtu1K9k0iF51bXFnQ=",
-  "_location": "/grunt-standard/standard/glob/minimatch/brace-expansion/balanced-match",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "balanced-match@https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "name": "balanced-match",
-    "escapedName": "balanced-match",
-    "rawSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/balanced-match/issues"
-  },
-  "dependencies": {},
-  "description": "Match balanced character pairs, like \"{\" and \"}\"",
-  "devDependencies": {
-    "tape": "~1.1.1"
-  },
-  "homepage": "https://github.com/juliangruber/balanced-match",
-  "keywords": [
-    "match",
-    "regexp",
-    "test",
-    "balanced",
-    "parse"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "balanced-match",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/balanced-match.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js
deleted file mode 100644 (file)
index 36bfd39..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-var test = require('tape');
-var balanced = require('..');
-
-test('balanced', function(t) {
-  t.deepEqual(balanced('{', '}', 'pre{in{nest}}post'), {
-    start: 3,
-    end: 12,
-    pre: 'pre',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', '{{{{{{{{{in}post'), {
-    start: 8,
-    end: 11,
-    pre: '{{{{{{{{',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body{in}post'), {
-    start: 8,
-    end: 11,
-    pre: 'pre{body',
-    body: 'in',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre}{in{nest}}post'), {
-    start: 4,
-    end: 13,
-    pre: 'pre}',
-    body: 'in{nest}',
-    post: 'post'
-  });
-  t.deepEqual(balanced('{', '}', 'pre{body}between{body2}post'), {
-    start: 3,
-    end: 8,
-    pre: 'pre',
-    body: 'body',
-    post: 'between{body2}post'
-  });
-  t.notOk(balanced('{', '}', 'nope'), 'should be notOk');
-  t.deepEqual(balanced('<b>', '</b>', 'pre<b>in<b>nest</b></b>post'), {
-    start: 3,
-    end: 19,
-    pre: 'pre',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.deepEqual(balanced('<b>', '</b>', 'pre</b><b>in<b>nest</b></b>post'), {
-    start: 7,
-    end: 23,
-    pre: 'pre</b>',
-    body: 'in<b>nest</b>',
-    post: 'post'
-  });
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml
deleted file mode 100644 (file)
index f1d0f13..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - 0.4
-  - 0.6
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown
deleted file mode 100644 (file)
index 408f70a..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-concat-map
-==========
-
-Concatenative mapdashery.
-
-[![browser support](http://ci.testling.com/substack/node-concat-map.png)](http://ci.testling.com/substack/node-concat-map)
-
-[![build status](https://secure.travis-ci.org/substack/node-concat-map.png)](http://travis-ci.org/substack/node-concat-map)
-
-example
-=======
-
-``` js
-var concatMap = require('concat-map');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
-```
-
-***
-
-```
-[ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]
-```
-
-methods
-=======
-
-``` js
-var concatMap = require('concat-map')
-```
-
-concatMap(xs, fn)
------------------
-
-Return an array of concatenated elements by calling `fn(x, i)` for each element
-`x` and each index `i` in the array `xs`.
-
-When `fn(x, i)` returns an array, its result will be concatenated with the
-result array. If `fn(x, i)` returns anything else, that value will be pushed
-onto the end of the result array.
-
-install
-=======
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install concat-map
-```
-
-license
-=======
-
-MIT
-
-notes
-=====
-
-This module was written while sitting high above the ground in a tree.
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js
deleted file mode 100644 (file)
index 3365621..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-var concatMap = require('../');
-var xs = [ 1, 2, 3, 4, 5, 6 ];
-var ys = concatMap(xs, function (x) {
-    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-});
-console.dir(ys);
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js
deleted file mode 100644 (file)
index b29a781..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-module.exports = function (xs, fn) {
-    var res = [];
-    for (var i = 0; i < xs.length; i++) {
-        var x = fn(xs[i], i);
-        if (isArray(x)) res.push.apply(res, x);
-        else res.push(x);
-    }
-    return res;
-};
-
-var isArray = Array.isArray || function (xs) {
-    return Object.prototype.toString.call(xs) === '[object Array]';
-};
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json
deleted file mode 100644 (file)
index 546e8ea..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-{
-  "_args": [
-    [
-      "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_id": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-  "_location": "/grunt-standard/standard/glob/minimatch/brace-expansion/concat-map",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "concat-map@https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "name": "concat-map",
-    "escapedName": "concat-map",
-    "rawSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob/minimatch/brace-expansion"
-  ],
-  "_spec": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/node-concat-map/issues"
-  },
-  "description": "concatenative mapdashery",
-  "devDependencies": {
-    "tape": "~2.4.0"
-  },
-  "directories": {
-    "example": "example",
-    "test": "test"
-  },
-  "homepage": "https://github.com/substack/node-concat-map#readme",
-  "keywords": [
-    "concat",
-    "concatMap",
-    "map",
-    "functional",
-    "higher-order"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "concat-map",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/node-concat-map.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": {
-      "ie": [
-        6,
-        7,
-        8,
-        9
-      ],
-      "ff": [
-        3.5,
-        10,
-        15
-      ],
-      "chrome": [
-        10,
-        22
-      ],
-      "safari": [
-        5.1
-      ],
-      "opera": [
-        12
-      ]
-    }
-  },
-  "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js
deleted file mode 100644 (file)
index fdbd702..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-var concatMap = require('../');
-var test = require('tape');
-
-test('empty or not', function (t) {
-    var xs = [ 1, 2, 3, 4, 5, 6 ];
-    var ixes = [];
-    var ys = concatMap(xs, function (x, ix) {
-        ixes.push(ix);
-        return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
-    });
-    t.same(ys, [ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]);
-    t.same(ixes, [ 0, 1, 2, 3, 4, 5 ]);
-    t.end();
-});
-
-test('always something', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : [ x ];
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('scalars', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function (x) {
-        return x === 'b' ? [ 'B', 'B', 'B' ] : x;
-    });
-    t.same(ys, [ 'a', 'B', 'B', 'B', 'c', 'd' ]);
-    t.end();
-});
-
-test('undefs', function (t) {
-    var xs = [ 'a', 'b', 'c', 'd' ];
-    var ys = concatMap(xs, function () {});
-    t.same(ys, [ undefined, undefined, undefined, undefined ]);
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json
deleted file mode 100644 (file)
index 20ab1e9..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_id": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-ybfQPAPze8cEvhAOUitA249s/Nk=",
-  "_location": "/grunt-standard/standard/glob/minimatch/brace-expansion",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "brace-expansion@https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "name": "brace-expansion",
-    "escapedName": "brace-expansion",
-    "rawSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob/minimatch"
-  ],
-  "_spec": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Julian Gruber",
-    "email": "mail@juliangruber.com",
-    "url": "http://juliangruber.com"
-  },
-  "bugs": {
-    "url": "https://github.com/juliangruber/brace-expansion/issues"
-  },
-  "dependencies": {
-    "balanced-match": "^0.2.0",
-    "concat-map": "0.0.1"
-  },
-  "description": "Brace expansion as known from sh/bash",
-  "devDependencies": {
-    "tape": "^3.0.3"
-  },
-  "homepage": "https://github.com/juliangruber/brace-expansion",
-  "keywords": [],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "brace-expansion",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/juliangruber/brace-expansion.git"
-  },
-  "scripts": {
-    "gentest": "bash test/generate.sh",
-    "test": "tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/8..latest",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "chrome/25..latest",
-      "chrome/canary",
-      "opera/12..latest",
-      "opera/next",
-      "safari/5.1..latest",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-comparison.js
deleted file mode 100644 (file)
index 5fe2b8a..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-var fs = require('fs');
-var resfile = __dirname + '/bash-results.txt';
-var cases = fs.readFileSync(resfile, 'utf8').split('><><><><');
-
-// throw away the EOF marker
-cases.pop()
-
-test('matches bash expansions', function(t) {
-  cases.forEach(function(testcase) {
-    var set = testcase.split('\n');
-    var pattern = set.shift();
-    var actual = expand(pattern);
-
-    // If it expands to the empty string, then it's actually
-    // just nothing, but Bash is a singly typed language, so
-    // "nothing" is the same as "".
-    if (set.length === 1 && set[0] === '') {
-      set = []
-    } else {
-      // otherwise, strip off the [] that were added so that
-      // "" expansions would be preserved properly.
-      set = set.map(function (s) {
-        return s.replace(/^\[|\]$/g, '')
-      })
-    }
-
-    t.same(actual, set, pattern);
-  });
-  t.end();
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/bash-results.txt
deleted file mode 100644 (file)
index 958148d..0000000
+++ /dev/null
@@ -1,1075 +0,0 @@
-A{b,{d,e},{f,g}}Z
-[AbZ]
-[AdZ]
-[AeZ]
-[AfZ]
-[AgZ]><><><><PRE-{a,b}{{a,b},a,b}-POST
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-aa-POST]
-[PRE-ab-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]
-[PRE-ba-POST]
-[PRE-bb-POST]><><><><\{a,b}{{a,b},a,b}
-[{a,b}a]
-[{a,b}b]
-[{a,b}a]
-[{a,b}b]><><><><{{a,b}
-[{a]
-[{b]><><><><{a,b}}
-[a}]
-[b}]><><><><{,}
-><><><><a{,}
-[a]
-[a]><><><><{,}b
-[b]
-[b]><><><><a{,}b
-[ab]
-[ab]><><><><a{b}c
-[a{b}c]><><><><a{1..5}b
-[a1b]
-[a2b]
-[a3b]
-[a4b]
-[a5b]><><><><a{01..5}b
-[a01b]
-[a02b]
-[a03b]
-[a04b]
-[a05b]><><><><a{-01..5}b
-[a-01b]
-[a000b]
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]><><><><a{-01..5..3}b
-[a-01b]
-[a002b]
-[a005b]><><><><a{001..9}b
-[a001b]
-[a002b]
-[a003b]
-[a004b]
-[a005b]
-[a006b]
-[a007b]
-[a008b]
-[a009b]><><><><a{b,c{d,e},{f,g}h}x{y,z
-[abx{y,z]
-[acdx{y,z]
-[acex{y,z]
-[afhx{y,z]
-[aghx{y,z]><><><><a{b,c{d,e},{f,g}h}x{y,z\}
-[abx{y,z}]
-[acdx{y,z}]
-[acex{y,z}]
-[afhx{y,z}]
-[aghx{y,z}]><><><><a{b,c{d,e},{f,g}h}x{y,z}
-[abxy]
-[abxz]
-[acdxy]
-[acdxz]
-[acexy]
-[acexz]
-[afhxy]
-[afhxz]
-[aghxy]
-[aghxz]><><><><a{b{c{d,e}f{x,y{{g}h
-[a{b{cdf{x,y{{g}h]
-[a{b{cef{x,y{{g}h]><><><><a{b{c{d,e}f{x,y{}g}h
-[a{b{cdfxh]
-[a{b{cdfy{}gh]
-[a{b{cefxh]
-[a{b{cefy{}gh]><><><><a{b{c{d,e}f{x,y}}g}h
-[a{b{cdfx}g}h]
-[a{b{cdfy}g}h]
-[a{b{cefx}g}h]
-[a{b{cefy}g}h]><><><><a{b{c{d,e}f}g}h
-[a{b{cdf}g}h]
-[a{b{cef}g}h]><><><><a{{x,y},z}b
-[axb]
-[ayb]
-[azb]><><><><f{x,y{g,z}}h
-[fxh]
-[fygh]
-[fyzh]><><><><f{x,y{{g,z}}h
-[f{x,y{g}h]
-[f{x,y{z}h]><><><><f{x,y{{g,z}}h}
-[fx]
-[fy{g}h]
-[fy{z}h]><><><><f{x,y{{g}h
-[f{x,y{{g}h]><><><><f{x,y{{g}}h
-[f{x,y{{g}}h]><><><><f{x,y{}g}h
-[fxh]
-[fy{}gh]><><><><z{a,b{,c}d
-[z{a,bd]
-[z{a,bcd]><><><><z{a,b},c}d
-[za,c}d]
-[zb,c}d]><><><><{-01..5}
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]><><><><{-05..100..5}
-[-05]
-[000]
-[005]
-[010]
-[015]
-[020]
-[025]
-[030]
-[035]
-[040]
-[045]
-[050]
-[055]
-[060]
-[065]
-[070]
-[075]
-[080]
-[085]
-[090]
-[095]
-[100]><><><><{-05..100}
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]
-[001]
-[002]
-[003]
-[004]
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0..5..2}
-[0]
-[2]
-[4]><><><><{0001..05..2}
-[0001]
-[0003]
-[0005]><><><><{0001..-5..2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..-5..-2}
-[0001]
-[-001]
-[-003]
-[-005]><><><><{0001..5..-2}
-[0001]
-[0003]
-[0005]><><><><{01..5}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05}
-[01]
-[02]
-[03]
-[04]
-[05]><><><><{1..05..3}
-[01]
-[04]><><><><{05..100}
-[005]
-[006]
-[007]
-[008]
-[009]
-[010]
-[011]
-[012]
-[013]
-[014]
-[015]
-[016]
-[017]
-[018]
-[019]
-[020]
-[021]
-[022]
-[023]
-[024]
-[025]
-[026]
-[027]
-[028]
-[029]
-[030]
-[031]
-[032]
-[033]
-[034]
-[035]
-[036]
-[037]
-[038]
-[039]
-[040]
-[041]
-[042]
-[043]
-[044]
-[045]
-[046]
-[047]
-[048]
-[049]
-[050]
-[051]
-[052]
-[053]
-[054]
-[055]
-[056]
-[057]
-[058]
-[059]
-[060]
-[061]
-[062]
-[063]
-[064]
-[065]
-[066]
-[067]
-[068]
-[069]
-[070]
-[071]
-[072]
-[073]
-[074]
-[075]
-[076]
-[077]
-[078]
-[079]
-[080]
-[081]
-[082]
-[083]
-[084]
-[085]
-[086]
-[087]
-[088]
-[089]
-[090]
-[091]
-[092]
-[093]
-[094]
-[095]
-[096]
-[097]
-[098]
-[099]
-[100]><><><><{0a..0z}
-[{0a..0z}]><><><><{a,b\}c,d}
-[a]
-[b}c]
-[d]><><><><{a,b{c,d}
-[{a,bc]
-[{a,bd]><><><><{a,b}c,d}
-[ac,d}]
-[bc,d}]><><><><{a..F}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]><><><><{A..f}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{a..Z}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]><><><><{A..z}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{z..A}
-[z]
-[y]
-[x]
-[w]
-[v]
-[u]
-[t]
-[s]
-[r]
-[q]
-[p]
-[o]
-[n]
-[m]
-[l]
-[k]
-[j]
-[i]
-[h]
-[g]
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{Z..a}
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{a..F..2}
-[a]
-[_]
-[]]
-[[]
-[Y]
-[W]
-[U]
-[S]
-[Q]
-[O]
-[M]
-[K]
-[I]
-[G]><><><><{A..f..02}
-[A]
-[C]
-[E]
-[G]
-[I]
-[K]
-[M]
-[O]
-[Q]
-[S]
-[U]
-[W]
-[Y]
-[[]
-[]]
-[_]
-[a]
-[c]
-[e]><><><><{a..Z..5}
-[a]
-[]><><><><d{a..Z..5}b
-[dab]
-[db]><><><><{A..z..10}
-[A]
-[K]
-[U]
-[_]
-[i]
-[s]><><><><{z..A..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]
-[`]
-[^]
-[]
-[Z]
-[X]
-[V]
-[T]
-[R]
-[P]
-[N]
-[L]
-[J]
-[H]
-[F]
-[D]
-[B]><><><><{Z..a..20}
-[Z]><><><><{a{,b}
-[{a]
-[{ab]><><><><{a},b}
-[a}]
-[b]><><><><{x,y{,}g}
-[x]
-[yg]
-[yg]><><><><{x,y{}g}
-[x]
-[y{}g]><><><><{{a,b}
-[{a]
-[{b]><><><><{{a,b},c}
-[a]
-[b]
-[c]><><><><{{a,b}c}
-[{ac}]
-[{bc}]><><><><{{a,b},}
-[a]
-[b]><><><><X{{a,b},}X
-[XaX]
-[XbX]
-[XX]><><><><{{a,b},}c
-[ac]
-[bc]
-[c]><><><><{{a,b}.}
-[{a.}]
-[{b.}]><><><><{{a,b}}
-[{a}]
-[{b}]><><><><X{a..#}X
-[X{a..#}X]><><><><
-><><><><{-10..00}
-[-10]
-[-09]
-[-08]
-[-07]
-[-06]
-[-05]
-[-04]
-[-03]
-[-02]
-[-01]
-[000]><><><><{a,\\{a,b}c}
-[a]
-[\ac]
-[\bc]><><><><{a,\{a,b}c}
-[ac}]
-[{ac}]
-[bc}]><><><><a,\{b,c}
-[a,{b,c}]><><><><{-10.\.00}
-[{-10..00}]><><><><ff{c,b,a}
-[ffc]
-[ffb]
-[ffa]><><><><f{d,e,f}g
-[fdg]
-[feg]
-[ffg]><><><><{l,n,m}xyz
-[lxyz]
-[nxyz]
-[mxyz]><><><><{abc\,def}
-[{abc,def}]><><><><{abc}
-[{abc}]><><><><{x\,y,\{abc\},trie}
-[x,y]
-[{abc}]
-[trie]><><><><{}
-[{}]><><><><}
-[}]><><><><{
-[{]><><><><abcd{efgh
-[abcd{efgh]><><><><{1..10}
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]><><><><{0..10,braces}
-[0..10]
-[braces]><><><><{{0..10},braces}
-[0]
-[1]
-[2]
-[3]
-[4]
-[5]
-[6]
-[7]
-[8]
-[9]
-[10]
-[braces]><><><><x{{0..10},braces}y
-[x0y]
-[x1y]
-[x2y]
-[x3y]
-[x4y]
-[x5y]
-[x6y]
-[x7y]
-[x8y]
-[x9y]
-[x10y]
-[xbracesy]><><><><{3..3}
-[3]><><><><x{3..3}y
-[x3y]><><><><{10..1}
-[10]
-[9]
-[8]
-[7]
-[6]
-[5]
-[4]
-[3]
-[2]
-[1]><><><><{10..1}y
-[10y]
-[9y]
-[8y]
-[7y]
-[6y]
-[5y]
-[4y]
-[3y]
-[2y]
-[1y]><><><><x{10..1}y
-[x10y]
-[x9y]
-[x8y]
-[x7y]
-[x6y]
-[x5y]
-[x4y]
-[x3y]
-[x2y]
-[x1y]><><><><{a..f}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]><><><><{f..a}
-[f]
-[e]
-[d]
-[c]
-[b]
-[a]><><><><{a..A}
-[a]
-[`]
-[_]
-[^]
-[]]
-[]
-[[]
-[Z]
-[Y]
-[X]
-[W]
-[V]
-[U]
-[T]
-[S]
-[R]
-[Q]
-[P]
-[O]
-[N]
-[M]
-[L]
-[K]
-[J]
-[I]
-[H]
-[G]
-[F]
-[E]
-[D]
-[C]
-[B]
-[A]><><><><{A..a}
-[A]
-[B]
-[C]
-[D]
-[E]
-[F]
-[G]
-[H]
-[I]
-[J]
-[K]
-[L]
-[M]
-[N]
-[O]
-[P]
-[Q]
-[R]
-[S]
-[T]
-[U]
-[V]
-[W]
-[X]
-[Y]
-[Z]
-[[]
-[]
-[]]
-[^]
-[_]
-[`]
-[a]><><><><{f..f}
-[f]><><><><{1..f}
-[{1..f}]><><><><{f..1}
-[{f..1}]><><><><{-1..-10}
-[-1]
-[-2]
-[-3]
-[-4]
-[-5]
-[-6]
-[-7]
-[-8]
-[-9]
-[-10]><><><><{-20..0}
-[-20]
-[-19]
-[-18]
-[-17]
-[-16]
-[-15]
-[-14]
-[-13]
-[-12]
-[-11]
-[-10]
-[-9]
-[-8]
-[-7]
-[-6]
-[-5]
-[-4]
-[-3]
-[-2]
-[-1]
-[0]><><><><a-{b{d,e}}-c
-[a-{bd}-c]
-[a-{be}-c]><><><><a-{bdef-{g,i}-c
-[a-{bdef-g-c]
-[a-{bdef-i-c]><><><><{klklkl}{1,2,3}
-[{klklkl}1]
-[{klklkl}2]
-[{klklkl}3]><><><><{1..10..2}
-[1]
-[3]
-[5]
-[7]
-[9]><><><><{-1..-10..2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{-1..-10..-2}
-[-1]
-[-3]
-[-5]
-[-7]
-[-9]><><><><{10..1..-2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{10..1..2}
-[10]
-[8]
-[6]
-[4]
-[2]><><><><{1..20..2}
-[1]
-[3]
-[5]
-[7]
-[9]
-[11]
-[13]
-[15]
-[17]
-[19]><><><><{1..20..20}
-[1]><><><><{100..0..5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{100..0..-5}
-[100]
-[95]
-[90]
-[85]
-[80]
-[75]
-[70]
-[65]
-[60]
-[55]
-[50]
-[45]
-[40]
-[35]
-[30]
-[25]
-[20]
-[15]
-[10]
-[5]
-[0]><><><><{a..z}
-[a]
-[b]
-[c]
-[d]
-[e]
-[f]
-[g]
-[h]
-[i]
-[j]
-[k]
-[l]
-[m]
-[n]
-[o]
-[p]
-[q]
-[r]
-[s]
-[t]
-[u]
-[v]
-[w]
-[x]
-[y]
-[z]><><><><{a..z..2}
-[a]
-[c]
-[e]
-[g]
-[i]
-[k]
-[m]
-[o]
-[q]
-[s]
-[u]
-[w]
-[y]><><><><{z..a..-2}
-[z]
-[x]
-[v]
-[t]
-[r]
-[p]
-[n]
-[l]
-[j]
-[h]
-[f]
-[d]
-[b]><><><><{2147483645..2147483649}
-[2147483645]
-[2147483646]
-[2147483647]
-[2147483648]
-[2147483649]><><><><{10..0..2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{10..0..-2}
-[10]
-[8]
-[6]
-[4]
-[2]
-[0]><><><><{-50..-0..5}
-[-50]
-[-45]
-[-40]
-[-35]
-[-30]
-[-25]
-[-20]
-[-15]
-[-10]
-[-5]
-[0]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..ff}
-[{1..ff}]><><><><{1..10..ff}
-[{1..10..ff}]><><><><{1.20..2}
-[{1.20..2}]><><><><{1..20..f2}
-[{1..20..f2}]><><><><{1..20..2f}
-[{1..20..2f}]><><><><{1..2f..2}
-[{1..2f..2}]><><><><{1..ff..2}
-[{1..ff..2}]><><><><{1..ff}
-[{1..ff}]><><><><{1..f}
-[{1..f}]><><><><{1..0f}
-[{1..0f}]><><><><{1..10f}
-[{1..10f}]><><><><{1..10.f}
-[{1..10.f}]><><><><{1..10.f}
-[{1..10.f}]><><><><
\ No newline at end of file
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/cases.txt
deleted file mode 100644 (file)
index e5161c3..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-# skip quotes for now
-# "{x,x}"
-# {"x,x"}
-# {x","x}
-# '{a,b}{{a,b},a,b}'
-A{b,{d,e},{f,g}}Z
-PRE-{a,b}{{a,b},a,b}-POST
-\\{a,b}{{a,b},a,b}
-{{a,b}
-{a,b}}
-{,}
-a{,}
-{,}b
-a{,}b
-a{b}c
-a{1..5}b
-a{01..5}b
-a{-01..5}b
-a{-01..5..3}b
-a{001..9}b
-a{b,c{d,e},{f,g}h}x{y,z
-a{b,c{d,e},{f,g}h}x{y,z\\}
-a{b,c{d,e},{f,g}h}x{y,z}
-a{b{c{d,e}f{x,y{{g}h
-a{b{c{d,e}f{x,y{}g}h
-a{b{c{d,e}f{x,y}}g}h
-a{b{c{d,e}f}g}h
-a{{x,y},z}b
-f{x,y{g,z}}h
-f{x,y{{g,z}}h
-f{x,y{{g,z}}h}
-f{x,y{{g}h
-f{x,y{{g}}h
-f{x,y{}g}h
-z{a,b{,c}d
-z{a,b},c}d
-{-01..5}
-{-05..100..5}
-{-05..100}
-{0..5..2}
-{0001..05..2}
-{0001..-5..2}
-{0001..-5..-2}
-{0001..5..-2}
-{01..5}
-{1..05}
-{1..05..3}
-{05..100}
-{0a..0z}
-{a,b\\}c,d}
-{a,b{c,d}
-{a,b}c,d}
-{a..F}
-{A..f}
-{a..Z}
-{A..z}
-{z..A}
-{Z..a}
-{a..F..2}
-{A..f..02}
-{a..Z..5}
-d{a..Z..5}b
-{A..z..10}
-{z..A..-2}
-{Z..a..20}
-{a{,b}
-{a},b}
-{x,y{,}g}
-{x,y{}g}
-{{a,b}
-{{a,b},c}
-{{a,b}c}
-{{a,b},}
-X{{a,b},}X
-{{a,b},}c
-{{a,b}.}
-{{a,b}}
-X{a..#}X
-# this next one is an empty string
-
-{-10..00}
-# Need to escape slashes in here for reasons i guess.
-{a,\\\\{a,b}c}
-{a,\\{a,b}c}
-a,\\{b,c}
-{-10.\\.00}
-#### bash tests/braces.tests
-# Note that some tests are edited out because some features of
-# bash are intentionally not supported in this brace expander.
-ff{c,b,a}
-f{d,e,f}g
-{l,n,m}xyz
-{abc\\,def}
-{abc}
-{x\\,y,\\{abc\\},trie}
-# not impementing back-ticks obviously
-# XXXX\\{`echo a b c | tr ' ' ','`\\}
-{}
-# We only ever have to worry about parsing a single argument,
-# not a command line, so spaces have a different meaning than bash.
-# { }
-}
-{
-abcd{efgh
-# spaces
-# foo {1,2} bar
-# not impementing back-ticks obviously
-# `zecho foo {1,2} bar`
-# $(zecho foo {1,2} bar)
-# ${var} is not a variable here, like it is in bash. omit.
-# foo{bar,${var}.}
-# foo{bar,${var}}
-# isaacs: skip quotes for now
-# "${var}"{x,y}
-# $var{x,y}
-# ${var}{x,y}
-# new sequence brace operators
-{1..10}
-# this doesn't work yet
-{0..10,braces}
-# but this does
-{{0..10},braces}
-x{{0..10},braces}y
-{3..3}
-x{3..3}y
-{10..1}
-{10..1}y
-x{10..1}y
-{a..f}
-{f..a}
-{a..A}
-{A..a}
-{f..f}
-# mixes are incorrectly-formed brace expansions
-{1..f}
-{f..1}
-# spaces
-# 0{1..9} {10..20}
-# do negative numbers work?
-{-1..-10}
-{-20..0}
-# weirdly-formed brace expansions -- fixed in post-bash-3.1
-a-{b{d,e}}-c
-a-{bdef-{g,i}-c
-# isaacs: skip quotes for now
-# {"klklkl"}{1,2,3}
-# isaacs: this is a valid test, though
-{klklkl}{1,2,3}
-# {"x,x"}
-{1..10..2}
-{-1..-10..2}
-{-1..-10..-2}
-{10..1..-2}
-{10..1..2}
-{1..20..2}
-{1..20..20}
-{100..0..5}
-{100..0..-5}
-{a..z}
-{a..z..2}
-{z..a..-2}
-# make sure brace expansion handles ints > 2**31 - 1 using intmax_t
-{2147483645..2147483649}
-# unwanted zero-padding -- fixed post-bash-4.0
-{10..0..2}
-{10..0..-2}
-{-50..-0..5}
-# bad
-{1..10.f}
-{1..ff}
-{1..10..ff}
-{1.20..2}
-{1..20..f2}
-{1..20..2f}
-{1..2f..2}
-{1..ff..2}
-{1..ff}
-{1..f}
-{1..0f}
-{1..10f}
-{1..10.f}
-{1..10.f}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/dollar.js
deleted file mode 100644 (file)
index 3fcc185..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('ignores ${', function(t) {
-  t.deepEqual(expand('${1..3}'), ['${1..3}']);
-  t.deepEqual(expand('${a,b}${c,d}'), ['${a,b}${c,d}']);
-  t.deepEqual(expand('x${a,b}x${c,d}x'), ['x${a,b}x${c,d}x']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/empty-option.js
deleted file mode 100644 (file)
index e429121..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('empty option', function(t) {
-  t.deepEqual(expand('-v{,,,,}'), [
-    '-v', '-v', '-v', '-v', '-v'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/generate.sh
deleted file mode 100644 (file)
index e040e66..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-# Bash 4.3 because of arbitrary need to pick a single standard.
-
-if [ "${BASH_VERSINFO[0]}" != "4" ] || [ "${BASH_VERSINFO[1]}" != "3" ]; then
-  echo "this script requires bash 4.3" >&2
-  exit 1
-fi
-
-CDPATH= cd "$(dirname "$0")"
-
-js='require("./")(process.argv[1]).join(" ")'
-
-cat cases.txt | \
-  while read case; do
-    if [ "${case:0:1}" = "#" ]; then
-      continue;
-    fi;
-    b="$($BASH -c 'for c in '"$case"'; do echo ["$c"]; done')"
-    echo "$case"
-    echo -n "$b><><><><";
-  done > bash-results.txt
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/negative-increment.js
deleted file mode 100644 (file)
index 8d434c2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('negative increment', function(t) {
-  t.deepEqual(expand('{3..1}'), ['3', '2', '1']);
-  t.deepEqual(expand('{10..8}'), ['10', '9', '8']);
-  t.deepEqual(expand('{10..08}'), ['10', '09', '08']);
-  t.deepEqual(expand('{c..a}'), ['c', 'b', 'a']);
-
-  t.deepEqual(expand('{4..0..2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{4..0..-2}'), ['4', '2', '0']);
-  t.deepEqual(expand('{e..a..2}'), ['e', 'c', 'a']);
-
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/nested.js
deleted file mode 100644 (file)
index 0862dc5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('nested', function(t) {
-  t.deepEqual(expand('{a,b{1..3},c}'), [
-    'a', 'b1', 'b2', 'b3', 'c'
-  ]);
-  t.deepEqual(expand('{{A..Z},{a..z}}'),
-    'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')
-  );
-  t.deepEqual(expand('ppp{,config,oe{,conf}}'), [
-    'ppp', 'pppconfig', 'pppoe', 'pppoeconf'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/order.js
deleted file mode 100644 (file)
index c00ad15..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('order', function(t) {
-  t.deepEqual(expand('a{d,c,b}e'), [
-    'ade', 'ace', 'abe'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/pad.js
deleted file mode 100644 (file)
index e415877..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('pad', function(t) {
-  t.deepEqual(expand('{9..11}'), [
-    '9', '10', '11'
-  ]);
-  t.deepEqual(expand('{09..11}'), [
-    '09', '10', '11'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/same-type.js
deleted file mode 100644 (file)
index 3038fba..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('x and y of same type', function(t) {
-  t.deepEqual(expand('{a..9}'), ['{a..9}']);
-  t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/sequence.js
deleted file mode 100644 (file)
index f73a957..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-var test = require('tape');
-var expand = require('..');
-
-test('numeric sequences', function(t) {
-  t.deepEqual(expand('a{1..2}b{2..3}c'), [
-    'a1b2c', 'a1b3c', 'a2b2c', 'a2b3c'
-  ]);
-  t.deepEqual(expand('{1..2}{2..3}'), [
-    '12', '13', '22', '23'
-  ]);
-  t.end();
-});
-
-test('numeric sequences with step count', function(t) {
-  t.deepEqual(expand('{0..8..2}'), [
-    '0', '2', '4', '6', '8'
-  ]);
-  t.deepEqual(expand('{1..8..2}'), [
-    '1', '3', '5', '7'
-  ]);
-  t.end();
-});
-
-test('numeric sequence with negative x / y', function(t) {
-  t.deepEqual(expand('{3..-2}'), [
-    '3', '2', '1', '0', '-1', '-2'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences', function(t) {
-  t.deepEqual(expand('1{a..b}2{b..c}3'), [
-    '1a2b3', '1a2c3', '1b2b3', '1b2c3'
-  ]);
-  t.deepEqual(expand('{a..b}{b..c}'), [
-    'ab', 'ac', 'bb', 'bc'
-  ]);
-  t.end();
-});
-
-test('alphabetic sequences with step count', function(t) {
-  t.deepEqual(expand('{a..k..2}'), [
-    'a', 'c', 'e', 'g', 'i', 'k'
-  ]);
-  t.deepEqual(expand('{b..k..2}'), [
-    'b', 'd', 'f', 'h', 'j'
-  ]);
-  t.end();
-});
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/minimatch/package.json
deleted file mode 100644 (file)
index f75176c..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_id": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-g76hFYA+egl6eAIkJyh+23Yvr+0=",
-  "_location": "/grunt-standard/standard/glob/minimatch",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimatch@https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "name": "minimatch",
-    "escapedName": "minimatch",
-    "rawSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/minimatch/issues"
-  },
-  "dependencies": {
-    "brace-expansion": "^1.0.0"
-  },
-  "description": "a glob matcher in javascript",
-  "devDependencies": {
-    "browserify": "^9.0.3",
-    "tap": ""
-  },
-  "engines": {
-    "node": "*"
-  },
-  "files": [
-    "minimatch.js",
-    "browser.js"
-  ],
-  "homepage": "https://github.com/isaacs/minimatch#readme",
-  "license": {
-    "type": "MIT",
-    "url": "http://github.com/isaacs/minimatch/raw/master/LICENSE"
-  },
-  "main": "minimatch.js",
-  "name": "minimatch",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/minimatch.git"
-  },
-  "scripts": {
-    "prepublish": "browserify -o browser.js -e minimatch.js --bare",
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.4.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/README.md
deleted file mode 100644 (file)
index a2981ea..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-# once
-
-Only call a function once.
-
-## usage
-
-```javascript
-var once = require('once')
-
-function load (file, cb) {
-  cb = once(cb)
-  loader.load('file')
-  loader.once('load', cb)
-  loader.once('error', cb)
-}
-```
-
-Or add to the Function.prototype in a responsible way:
-
-```javascript
-// only has to be done once
-require('once').proto()
-
-function load (file, cb) {
-  cb = cb.once()
-  loader.load('file')
-  loader.once('load', cb)
-  loader.once('error', cb)
-}
-```
-
-Ironically, the prototype feature makes this module twice as
-complicated as necessary.
-
-To check whether you function has been called, use `fn.called`. Once the
-function is called for the first time the return value of the original
-function is saved in `fn.value` and subsequent calls will continue to
-return this value.
-
-```javascript
-var once = require('once')
-
-function load (cb) {
-  cb = once(cb)
-  var stream = createStream()
-  stream.once('data', cb)
-  stream.once('end', function () {
-    if (!cb.called) cb(new Error('not found'))
-  })
-}
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/README.md
deleted file mode 100644 (file)
index 98eab25..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-# wrappy
-
-Callback wrapping utility
-
-## USAGE
-
-```javascript
-var wrappy = require("wrappy")
-
-// var wrapper = wrappy(wrapperFunction)
-
-// make sure a cb is called only once
-// See also: http://npm.im/once for this specific use case
-var once = wrappy(function (cb) {
-  var called = false
-  return function () {
-    if (called) return
-    called = true
-    return cb.apply(this, arguments)
-  }
-})
-
-function printBoo () {
-  console.log('boo')
-}
-// has some rando property
-printBoo.iAmBooPrinter = true
-
-var onlyPrintOnce = once(printBoo)
-
-onlyPrintOnce() // prints 'boo'
-onlyPrintOnce() // does nothing
-
-// random property is retained!
-assert.equal(onlyPrintOnce.iAmBooPrinter, true)
-```
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/package.json
deleted file mode 100644 (file)
index 16c7582..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-{
-  "_args": [
-    [
-      "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_id": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-HmWWmWXMvC20VIxrhKbyxa7dRzk=",
-  "_location": "/grunt-standard/standard/glob/once/wrappy",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "wrappy@https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "name": "wrappy",
-    "escapedName": "wrappy",
-    "rawSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob/once"
-  ],
-  "_spec": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/npm/wrappy/issues"
-  },
-  "dependencies": {},
-  "description": "Callback wrapping utility",
-  "devDependencies": {
-    "tap": "^0.4.12"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/npm/wrappy",
-  "license": "ISC",
-  "main": "wrappy.js",
-  "name": "wrappy",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/npm/wrappy.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js
deleted file mode 100644 (file)
index 5ed0fcd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-var test = require('tap').test
-var wrappy = require('../wrappy.js')
-
-test('basic', function (t) {
-  function onceifier (cb) {
-    var called = false
-    return function () {
-      if (called) return
-      called = true
-      return cb.apply(this, arguments)
-    }
-  }
-  onceifier.iAmOnce = {}
-  var once = wrappy(onceifier)
-  t.equal(once.iAmOnce, onceifier.iAmOnce)
-
-  var called = 0
-  function boo () {
-    t.equal(called, 0)
-    called++
-  }
-  // has some rando property
-  boo.iAmBoo = true
-
-  var onlyPrintOnce = once(boo)
-
-  onlyPrintOnce() // prints 'boo'
-  onlyPrintOnce() // does nothing
-  t.equal(called, 1)
-
-  // random property is retained!
-  t.equal(onlyPrintOnce.iAmBoo, true)
-
-  var logs = []
-  var logwrap = wrappy(function (msg, cb) {
-    logs.push(msg + ' wrapping cb')
-    return function () {
-      logs.push(msg + ' before cb')
-      var ret = cb.apply(this, arguments)
-      logs.push(msg + ' after cb')
-    }
-  })
-
-  var c = logwrap('foo', function () {
-    t.same(logs, [ 'foo wrapping cb', 'foo before cb' ])
-  })
-  c()
-  t.same(logs, [ 'foo wrapping cb', 'foo before cb', 'foo after cb' ])
-
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js
deleted file mode 100644 (file)
index bb7e7d6..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
-  if (fn && cb) return wrappy(fn)(cb)
-
-  if (typeof fn !== 'function')
-    throw new TypeError('need wrapper function')
-
-  Object.keys(fn).forEach(function (k) {
-    wrapper[k] = fn[k]
-  })
-
-  return wrapper
-
-  function wrapper() {
-    var args = new Array(arguments.length)
-    for (var i = 0; i < args.length; i++) {
-      args[i] = arguments[i]
-    }
-    var ret = fn.apply(this, args)
-    var cb = args[args.length-1]
-    if (typeof ret === 'function' && ret !== cb) {
-      Object.keys(cb).forEach(function (k) {
-        ret[k] = cb[k]
-      })
-    }
-    return ret
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/once.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/once.js
deleted file mode 100644 (file)
index 2e1e721..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-var wrappy = require('wrappy')
-module.exports = wrappy(once)
-
-once.proto = once(function () {
-  Object.defineProperty(Function.prototype, 'once', {
-    value: function () {
-      return once(this)
-    },
-    configurable: true
-  })
-})
-
-function once (fn) {
-  var f = function () {
-    if (f.called) return f.value
-    f.called = true
-    return f.value = fn.apply(this, arguments)
-  }
-  f.called = false
-  return f
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/package.json
deleted file mode 100644 (file)
index 8ef875b..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_id": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-8/Pk2lt9J7XHMpae4+Z+cpRXsx8=",
-  "_location": "/grunt-standard/standard/glob/once",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "once@https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "name": "once",
-    "escapedName": "once",
-    "rawSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob",
-    "/grunt-standard/standard/glob/inflight"
-  ],
-  "_spec": "https://registry.npmjs.org/once/-/once-1.3.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/once/issues"
-  },
-  "dependencies": {
-    "wrappy": "1"
-  },
-  "description": "Run a function exactly one time",
-  "devDependencies": {
-    "tap": "~0.3.0"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "homepage": "https://github.com/isaacs/once#readme",
-  "keywords": [
-    "once",
-    "function",
-    "one",
-    "single"
-  ],
-  "license": "BSD",
-  "main": "once.js",
-  "name": "once",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/once.git"
-  },
-  "scripts": {
-    "test": "tap test/*.js"
-  },
-  "version": "https://registry.npmjs.org/once/-/once-1.3.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/test/once.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/once/test/once.js
deleted file mode 100644 (file)
index c618360..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-var test = require('tap').test
-var once = require('../once.js')
-
-test('once', function (t) {
-  var f = 0
-  function fn (g) {
-    t.equal(f, 0)
-    f ++
-    return f + g + this
-  }
-  fn.ownProperty = {}
-  var foo = once(fn)
-  t.equal(fn.ownProperty, foo.ownProperty)
-  t.notOk(foo.called)
-  for (var i = 0; i < 1E3; i++) {
-    t.same(f, i === 0 ? 0 : 1)
-    var g = foo.call(1, 1)
-    t.ok(foo.called)
-    t.same(g, 3)
-    t.same(f, 1)
-  }
-  t.end()
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/index.js
deleted file mode 100644 (file)
index 19f103f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-'use strict';
-
-function posix(path) {
-       return path.charAt(0) === '/';
-};
-
-function win32(path) {
-       // https://github.com/joyent/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56
-       var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
-       var result = splitDeviceRe.exec(path);
-       var device = result[1] || '';
-       var isUnc = !!device && device.charAt(1) !== ':';
-
-       // UNC paths are always absolute
-       return !!result[2] || isUnc;
-};
-
-module.exports = process.platform === 'win32' ? win32 : posix;
-module.exports.posix = posix;
-module.exports.win32 = win32;
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/package.json
deleted file mode 100644 (file)
index d37e2b7..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-{
-  "_args": [
-    [
-      "path-is-absolute@https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "path-is-absolute@https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-  "_id": "path-is-absolute@https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-Jj2tpmqz8vsQv3+dJN2PPlcO+RI=",
-  "_location": "/grunt-standard/standard/glob/path-is-absolute",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "path-is-absolute@https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-    "name": "path-is-absolute",
-    "escapedName": "path-is-absolute",
-    "rawSpec": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard/glob"
-  ],
-  "_spec": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Sindre Sorhus",
-    "email": "sindresorhus@gmail.com",
-    "url": "sindresorhus.com"
-  },
-  "bugs": {
-    "url": "https://github.com/sindresorhus/path-is-absolute/issues"
-  },
-  "description": "Node.js 0.12 path.isAbsolute() ponyfill",
-  "engines": {
-    "node": ">=0.10.0"
-  },
-  "files": [
-    "index.js"
-  ],
-  "homepage": "https://github.com/sindresorhus/path-is-absolute#readme",
-  "keywords": [
-    "path",
-    "paths",
-    "file",
-    "dir",
-    "absolute",
-    "isabsolute",
-    "is-absolute",
-    "built-in",
-    "util",
-    "utils",
-    "core",
-    "ponyfill",
-    "polyfill",
-    "shim",
-    "is",
-    "detect",
-    "check"
-  ],
-  "license": "MIT",
-  "name": "path-is-absolute",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/sindresorhus/path-is-absolute.git"
-  },
-  "scripts": {
-    "test": "node test.js"
-  },
-  "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/readme.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/node_modules/path-is-absolute/readme.md
deleted file mode 100644 (file)
index cdf94f4..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-# path-is-absolute [![Build Status](https://travis-ci.org/sindresorhus/path-is-absolute.svg?branch=master)](https://travis-ci.org/sindresorhus/path-is-absolute)
-
-> Node.js 0.12 [`path.isAbsolute()`](http://nodejs.org/api/path.html#path_path_isabsolute_path) ponyfill
-
-> Ponyfill: A polyfill that doesn't overwrite the native method
-
-
-## Install
-
-```
-$ npm install --save path-is-absolute
-```
-
-
-## Usage
-
-```js
-var pathIsAbsolute = require('path-is-absolute');
-
-// Linux
-pathIsAbsolute('/home/foo');
-//=> true
-
-// Windows
-pathIsAbsolute('C:/Users/');
-//=> true
-
-// Any OS
-pathIsAbsolute.posix('/home/foo');
-//=> true
-```
-
-
-## API
-
-See the [`path.isAbsolute()` docs](http://nodejs.org/api/path.html#path_path_isabsolute_path).
-
-### pathIsAbsolute(path)
-
-### pathIsAbsolute.posix(path)
-
-The Posix specific version.
-
-### pathIsAbsolute.win32(path)
-
-The Windows specific version.
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/package.json
deleted file mode 100644 (file)
index ca88efb..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  "_args": [
-    [
-      "glob@https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "glob@https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-  "_id": "glob@https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-eEQx5OKakArg1H+6aqHH8WqOffc=",
-  "_location": "/grunt-standard/standard/glob",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "glob@https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-    "name": "glob",
-    "escapedName": "glob",
-    "rawSpec": "https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-    "saveSpec": "https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-    "fetchSpec": "https://registry.npmjs.org/glob/-/glob-5.0.5.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/glob/-/glob-5.0.5.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Isaac Z. Schlueter",
-    "email": "i@izs.me",
-    "url": "http://blog.izs.me/"
-  },
-  "bugs": {
-    "url": "https://github.com/isaacs/node-glob/issues"
-  },
-  "dependencies": {
-    "inflight": "^1.0.4",
-    "inherits": "2",
-    "minimatch": "^2.0.1",
-    "once": "^1.3.0",
-    "path-is-absolute": "^1.0.0"
-  },
-  "description": "a little globber",
-  "devDependencies": {
-    "mkdirp": "0",
-    "rimraf": "^2.2.8",
-    "tap": "^0.5.0",
-    "tick": "0.0.6"
-  },
-  "engines": {
-    "node": "*"
-  },
-  "files": [
-    "glob.js",
-    "sync.js",
-    "common.js"
-  ],
-  "homepage": "https://github.com/isaacs/node-glob#readme",
-  "license": "ISC",
-  "main": "glob.js",
-  "name": "glob",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/isaacs/node-glob.git"
-  },
-  "scripts": {
-    "bench": "bash benchmark.sh",
-    "benchclean": "bash benchclean.sh",
-    "prepublish": "npm run benchclean",
-    "prof": "bash prof.sh && cat profile.txt",
-    "profclean": "rm -f v8.log profile.txt",
-    "test": "npm run profclean && tap test/*.js",
-    "test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js"
-  },
-  "version": "https://registry.npmjs.org/glob/-/glob-5.0.5.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/sync.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/glob/sync.js
deleted file mode 100644 (file)
index 92fe110..0000000
+++ /dev/null
@@ -1,457 +0,0 @@
-module.exports = globSync
-globSync.GlobSync = GlobSync
-
-var fs = require('fs')
-var minimatch = require('minimatch')
-var Minimatch = minimatch.Minimatch
-var Glob = require('./glob.js').Glob
-var util = require('util')
-var path = require('path')
-var assert = require('assert')
-var isAbsolute = require('path-is-absolute')
-var common = require('./common.js')
-var alphasort = common.alphasort
-var alphasorti = common.alphasorti
-var setopts = common.setopts
-var ownProp = common.ownProp
-var childrenIgnored = common.childrenIgnored
-
-function globSync (pattern, options) {
-  if (typeof options === 'function' || arguments.length === 3)
-    throw new TypeError('callback provided to sync glob\n'+
-                        'See: https://github.com/isaacs/node-glob/issues/167')
-
-  return new GlobSync(pattern, options).found
-}
-
-function GlobSync (pattern, options) {
-  if (!pattern)
-    throw new Error('must provide pattern')
-
-  if (typeof options === 'function' || arguments.length === 3)
-    throw new TypeError('callback provided to sync glob\n'+
-                        'See: https://github.com/isaacs/node-glob/issues/167')
-
-  if (!(this instanceof GlobSync))
-    return new GlobSync(pattern, options)
-
-  setopts(this, pattern, options)
-
-  if (this.noprocess)
-    return this
-
-  var n = this.minimatch.set.length
-  this.matches = new Array(n)
-  for (var i = 0; i < n; i ++) {
-    this._process(this.minimatch.set[i], i, false)
-  }
-  this._finish()
-}
-
-GlobSync.prototype._finish = function () {
-  assert(this instanceof GlobSync)
-  if (this.realpath) {
-    var self = this
-    this.matches.forEach(function (matchset, index) {
-      var set = self.matches[index] = Object.create(null)
-      for (var p in matchset) {
-        try {
-          p = self._makeAbs(p)
-          var real = fs.realpathSync(p, this.realpathCache)
-          set[real] = true
-        } catch (er) {
-          if (er.syscall === 'stat')
-            set[self._makeAbs(p)] = true
-          else
-            throw er
-        }
-      }
-    })
-  }
-  common.finish(this)
-}
-
-
-GlobSync.prototype._process = function (pattern, index, inGlobStar) {
-  assert(this instanceof GlobSync)
-
-  // Get the first [n] parts of pattern that are all strings.
-  var n = 0
-  while (typeof pattern[n] === 'string') {
-    n ++
-  }
-  // now n is the index of the first one that is *not* a string.
-
-  // See if there's anything else
-  var prefix
-  switch (n) {
-    // if not, then this is rather simple
-    case pattern.length:
-      this._processSimple(pattern.join('/'), index)
-      return
-
-    case 0:
-      // pattern *starts* with some non-trivial item.
-      // going to readdir(cwd), but not include the prefix in matches.
-      prefix = null
-      break
-
-    default:
-      // pattern has some string bits in the front.
-      // whatever it starts with, whether that's 'absolute' like /foo/bar,
-      // or 'relative' like '../baz'
-      prefix = pattern.slice(0, n).join('/')
-      break
-  }
-
-  var remain = pattern.slice(n)
-
-  // get the list of entries.
-  var read
-  if (prefix === null)
-    read = '.'
-  else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
-    if (!prefix || !isAbsolute(prefix))
-      prefix = '/' + prefix
-    read = prefix
-  } else
-    read = prefix
-
-  var abs = this._makeAbs(read)
-
-  //if ignored, skip processing
-  if (childrenIgnored(this, read))
-    return
-
-  var isGlobStar = remain[0] === minimatch.GLOBSTAR
-  if (isGlobStar)
-    this._processGlobStar(prefix, read, abs, remain, index, inGlobStar)
-  else
-    this._processReaddir(prefix, read, abs, remain, index, inGlobStar)
-}
-
-
-GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) {
-  var entries = this._readdir(abs, inGlobStar)
-
-  // if the abs isn't a dir, then nothing can match!
-  if (!entries)
-    return
-
-  // It will only match dot entries if it starts with a dot, or if
-  // dot is set.  Stuff like @(.foo|.bar) isn't allowed.
-  var pn = remain[0]
-  var negate = !!this.minimatch.negate
-  var rawGlob = pn._glob
-  var dotOk = this.dot || rawGlob.charAt(0) === '.'
-
-  var matchedEntries = []
-  for (var i = 0; i < entries.length; i++) {
-    var e = entries[i]
-    if (e.charAt(0) !== '.' || dotOk) {
-      var m
-      if (negate && !prefix) {
-        m = !e.match(pn)
-      } else {
-        m = e.match(pn)
-      }
-      if (m)
-        matchedEntries.push(e)
-    }
-  }
-
-  var len = matchedEntries.length
-  // If there are no matched entries, then nothing matches.
-  if (len === 0)
-    return
-
-  // if this is the last remaining pattern bit, then no need for
-  // an additional stat *unless* the user has specified mark or
-  // stat explicitly.  We know they exist, since readdir returned
-  // them.
-
-  if (remain.length === 1 && !this.mark && !this.stat) {
-    if (!this.matches[index])
-      this.matches[index] = Object.create(null)
-
-    for (var i = 0; i < len; i ++) {
-      var e = matchedEntries[i]
-      if (prefix) {
-        if (prefix.slice(-1) !== '/')
-          e = prefix + '/' + e
-        else
-          e = prefix + e
-      }
-
-      if (e.charAt(0) === '/' && !this.nomount) {
-        e = path.join(this.root, e)
-      }
-      this.matches[index][e] = true
-    }
-    // This was the last one, and no stats were needed
-    return
-  }
-
-  // now test all matched entries as stand-ins for that part
-  // of the pattern.
-  remain.shift()
-  for (var i = 0; i < len; i ++) {
-    var e = matchedEntries[i]
-    var newPattern
-    if (prefix)
-      newPattern = [prefix, e]
-    else
-      newPattern = [e]
-    this._process(newPattern.concat(remain), index, inGlobStar)
-  }
-}
-
-
-GlobSync.prototype._emitMatch = function (index, e) {
-  var abs = this._makeAbs(e)
-  if (this.mark)
-    e = this._mark(e)
-
-  if (this.matches[index][e])
-    return
-
-  if (this.nodir) {
-    var c = this.cache[this._makeAbs(e)]
-    if (c === 'DIR' || Array.isArray(c))
-      return
-  }
-
-  this.matches[index][e] = true
-  if (this.stat)
-    this._stat(e)
-}
-
-
-GlobSync.prototype._readdirInGlobStar = function (abs) {
-  // follow all symlinked directories forever
-  // just proceed as if this is a non-globstar situation
-  if (this.follow)
-    return this._readdir(abs, false)
-
-  var entries
-  var lstat
-  var stat
-  try {
-    lstat = fs.lstatSync(abs)
-  } catch (er) {
-    // lstat failed, doesn't exist
-    return null
-  }
-
-  var isSym = lstat.isSymbolicLink()
-  this.symlinks[abs] = isSym
-
-  // If it's not a symlink or a dir, then it's definitely a regular file.
-  // don't bother doing a readdir in that case.
-  if (!isSym && !lstat.isDirectory())
-    this.cache[abs] = 'FILE'
-  else
-    entries = this._readdir(abs, false)
-
-  return entries
-}
-
-GlobSync.prototype._readdir = function (abs, inGlobStar) {
-  var entries
-
-  if (inGlobStar && !ownProp(this.symlinks, abs))
-    return this._readdirInGlobStar(abs)
-
-  if (ownProp(this.cache, abs)) {
-    var c = this.cache[abs]
-    if (!c || c === 'FILE')
-      return null
-
-    if (Array.isArray(c))
-      return c
-  }
-
-  try {
-    return this._readdirEntries(abs, fs.readdirSync(abs))
-  } catch (er) {
-    this._readdirError(abs, er)
-    return null
-  }
-}
-
-GlobSync.prototype._readdirEntries = function (abs, entries) {
-  // if we haven't asked to stat everything, then just
-  // assume that everything in there exists, so we can avoid
-  // having to stat it a second time.
-  if (!this.mark && !this.stat) {
-    for (var i = 0; i < entries.length; i ++) {
-      var e = entries[i]
-      if (abs === '/')
-        e = abs + e
-      else
-        e = abs + '/' + e
-      this.cache[e] = true
-    }
-  }
-
-  this.cache[abs] = entries
-
-  // mark and cache dir-ness
-  return entries
-}
-
-GlobSync.prototype._readdirError = function (f, er) {
-  // handle errors, and cache the information
-  switch (er.code) {
-    case 'ENOTDIR': // totally normal. means it *does* exist.
-      this.cache[this._makeAbs(f)] = 'FILE'
-      break
-
-    case 'ENOENT': // not terribly unusual
-    case 'ELOOP':
-    case 'ENAMETOOLONG':
-    case 'UNKNOWN':
-      this.cache[this._makeAbs(f)] = false
-      break
-
-    default: // some unusual error.  Treat as failure.
-      this.cache[this._makeAbs(f)] = false
-      if (this.strict) throw er
-      if (!this.silent) console.error('glob error', er)
-      break
-  }
-}
-
-GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) {
-
-  var entries = this._readdir(abs, inGlobStar)
-
-  // no entries means not a dir, so it can never have matches
-  // foo.txt/** doesn't match foo.txt
-  if (!entries)
-    return
-
-  // test without the globstar, and with every child both below
-  // and replacing the globstar.
-  var remainWithoutGlobStar = remain.slice(1)
-  var gspref = prefix ? [ prefix ] : []
-  var noGlobStar = gspref.concat(remainWithoutGlobStar)
-
-  // the noGlobStar pattern exits the inGlobStar state
-  this._process(noGlobStar, index, false)
-
-  var len = entries.length
-  var isSym = this.symlinks[abs]
-
-  // If it's a symlink, and we're in a globstar, then stop
-  if (isSym && inGlobStar)
-    return
-
-  for (var i = 0; i < len; i++) {
-    var e = entries[i]
-    if (e.charAt(0) === '.' && !this.dot)
-      continue
-
-    // these two cases enter the inGlobStar state
-    var instead = gspref.concat(entries[i], remainWithoutGlobStar)
-    this._process(instead, index, true)
-
-    var below = gspref.concat(entries[i], remain)
-    this._process(below, index, true)
-  }
-}
-
-GlobSync.prototype._processSimple = function (prefix, index) {
-  // XXX review this.  Shouldn't it be doing the mounting etc
-  // before doing stat?  kinda weird?
-  var exists = this._stat(prefix)
-
-  if (!this.matches[index])
-    this.matches[index] = Object.create(null)
-
-  // If it doesn't exist, then just mark the lack of results
-  if (!exists)
-    return
-
-  if (prefix && isAbsolute(prefix) && !this.nomount) {
-    var trail = /[\/\\]$/.test(prefix)
-    if (prefix.charAt(0) === '/') {
-      prefix = path.join(this.root, prefix)
-    } else {
-      prefix = path.resolve(this.root, prefix)
-      if (trail)
-        prefix += '/'
-    }
-  }
-
-  if (process.platform === 'win32')
-    prefix = prefix.replace(/\\/g, '/')
-
-  // Mark this as a match
-  this.matches[index][prefix] = true
-}
-
-// Returns either 'DIR', 'FILE', or false
-GlobSync.prototype._stat = function (f) {
-  var abs = this._makeAbs(f)
-  var needDir = f.slice(-1) === '/'
-
-  if (f.length > this.maxLength)
-    return false
-
-  if (!this.stat && ownProp(this.cache, abs)) {
-    var c = this.cache[abs]
-
-    if (Array.isArray(c))
-      c = 'DIR'
-
-    // It exists, but maybe not how we need it
-    if (!needDir || c === 'DIR')
-      return c
-
-    if (needDir && c === 'FILE')
-      return false
-
-    // otherwise we have to stat, because maybe c=true
-    // if we know it exists, but not what it is.
-  }
-
-  var exists
-  var stat = this.statCache[abs]
-  if (!stat) {
-    var lstat
-    try {
-      lstat = fs.lstatSync(abs)
-    } catch (er) {
-      return false
-    }
-
-    if (lstat.isSymbolicLink()) {
-      try {
-        stat = fs.statSync(abs)
-      } catch (er) {
-        stat = lstat
-      }
-    } else {
-      stat = lstat
-    }
-  }
-
-  this.statCache[abs] = stat
-
-  var c = stat.isDirectory() ? 'DIR' : 'FILE'
-  this.cache[abs] = this.cache[abs] || c
-
-  if (needDir && c !== 'DIR')
-    return false
-
-  return c
-}
-
-GlobSync.prototype._mark = function (p) {
-  return common.mark(this, p)
-}
-
-GlobSync.prototype._makeAbs = function (f) {
-  return common.makeAbs(this, f)
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/index.js
deleted file mode 100644 (file)
index 185a045..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-module.exports = function (args, opts) {
-    if (!opts) opts = {};
-    
-    var flags = { bools : {}, strings : {}, unknownFn: null };
-
-    if (typeof opts['unknown'] === 'function') {
-        flags.unknownFn = opts['unknown'];
-    }
-
-    if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
-      flags.allBools = true;
-    } else {
-      [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
-          flags.bools[key] = true;
-      });
-    }
-    
-    var aliases = {};
-    Object.keys(opts.alias || {}).forEach(function (key) {
-        aliases[key] = [].concat(opts.alias[key]);
-        aliases[key].forEach(function (x) {
-            aliases[x] = [key].concat(aliases[key].filter(function (y) {
-                return x !== y;
-            }));
-        });
-    });
-
-    [].concat(opts.string).filter(Boolean).forEach(function (key) {
-        flags.strings[key] = true;
-        if (aliases[key]) {
-            flags.strings[aliases[key]] = true;
-        }
-     });
-
-    var defaults = opts['default'] || {};
-    
-    var argv = { _ : [] };
-    Object.keys(flags.bools).forEach(function (key) {
-        setArg(key, defaults[key] === undefined ? false : defaults[key]);
-    });
-    
-    var notFlags = [];
-
-    if (args.indexOf('--') !== -1) {
-        notFlags = args.slice(args.indexOf('--')+1);
-        args = args.slice(0, args.indexOf('--'));
-    }
-
-    function argDefined(key, arg) {
-        return (flags.allBools && /^--[^=]+$/.test(arg)) ||
-            flags.strings[key] || flags.bools[key] || aliases[key];
-    }
-
-    function setArg (key, val, arg) {
-        if (arg && flags.unknownFn && !argDefined(key, arg)) {
-            if (flags.unknownFn(arg) === false) return;
-        }
-
-        var value = !flags.strings[key] && isNumber(val)
-            ? Number(val) : val
-        ;
-        setKey(argv, key.split('.'), value);
-        
-        (aliases[key] || []).forEach(function (x) {
-            setKey(argv, x.split('.'), value);
-        });
-    }
-
-    function setKey (obj, keys, value) {
-        var o = obj;
-        keys.slice(0,-1).forEach(function (key) {
-            if (o[key] === undefined) o[key] = {};
-            o = o[key];
-        });
-
-        var key = keys[keys.length - 1];
-        if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
-            o[key] = value;
-        }
-        else if (Array.isArray(o[key])) {
-            o[key].push(value);
-        }
-        else {
-            o[key] = [ o[key], value ];
-        }
-    }
-    
-    for (var i = 0; i < args.length; i++) {
-        var arg = args[i];
-        
-        if (/^--.+=/.test(arg)) {
-            // Using [\s\S] instead of . because js doesn't support the
-            // 'dotall' regex modifier. See:
-            // http://stackoverflow.com/a/1068308/13216
-            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
-            setArg(m[1], m[2], arg);
-        }
-        else if (/^--no-.+/.test(arg)) {
-            var key = arg.match(/^--no-(.+)/)[1];
-            setArg(key, false, arg);
-        }
-        else if (/^--.+/.test(arg)) {
-            var key = arg.match(/^--(.+)/)[1];
-            var next = args[i + 1];
-            if (next !== undefined && !/^-/.test(next)
-            && !flags.bools[key]
-            && !flags.allBools
-            && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                setArg(key, next, arg);
-                i++;
-            }
-            else if (/^(true|false)$/.test(next)) {
-                setArg(key, next === 'true', arg);
-                i++;
-            }
-            else {
-                setArg(key, flags.strings[key] ? '' : true, arg);
-            }
-        }
-        else if (/^-[^-]+/.test(arg)) {
-            var letters = arg.slice(1,-1).split('');
-            
-            var broken = false;
-            for (var j = 0; j < letters.length; j++) {
-                var next = arg.slice(j+2);
-                
-                if (next === '-') {
-                    setArg(letters[j], next, arg)
-                    continue;
-                }
-                
-                if (/[A-Za-z]/.test(letters[j])
-                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
-                    setArg(letters[j], next, arg);
-                    broken = true;
-                    break;
-                }
-                
-                if (letters[j+1] && letters[j+1].match(/\W/)) {
-                    setArg(letters[j], arg.slice(j+2), arg);
-                    broken = true;
-                    break;
-                }
-                else {
-                    setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
-                }
-            }
-            
-            var key = arg.slice(-1)[0];
-            if (!broken && key !== '-') {
-                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
-                && !flags.bools[key]
-                && (aliases[key] ? !flags.bools[aliases[key]] : true)) {
-                    setArg(key, args[i+1], arg);
-                    i++;
-                }
-                else if (args[i+1] && /true|false/.test(args[i+1])) {
-                    setArg(key, args[i+1] === 'true', arg);
-                    i++;
-                }
-                else {
-                    setArg(key, flags.strings[key] ? '' : true, arg);
-                }
-            }
-        }
-        else {
-            if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
-                argv._.push(
-                    flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
-                );
-            }
-            if (opts.stopEarly) {
-                argv._.push.apply(argv._, args.slice(i + 1));
-                break;
-            }
-        }
-    }
-    
-    Object.keys(defaults).forEach(function (key) {
-        if (!hasKey(argv, key.split('.'))) {
-            setKey(argv, key.split('.'), defaults[key]);
-            
-            (aliases[key] || []).forEach(function (x) {
-                setKey(argv, x.split('.'), defaults[key]);
-            });
-        }
-    });
-    
-    if (opts['--']) {
-        argv['--'] = new Array();
-        notFlags.forEach(function(key) {
-            argv['--'].push(key);
-        });
-    }
-    else {
-        notFlags.forEach(function(key) {
-            argv._.push(key);
-        });
-    }
-
-    return argv;
-};
-
-function hasKey (obj, keys) {
-    var o = obj;
-    keys.slice(0,-1).forEach(function (key) {
-        o = (o[key] || {});
-    });
-
-    var key = keys[keys.length - 1];
-    return key in o;
-}
-
-function isNumber (x) {
-    if (typeof x === 'number') return true;
-    if (/^0x[0-9a-f]+$/i.test(x)) return true;
-    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
-}
-
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/package.json
deleted file mode 100644 (file)
index de5cfce..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-{
-  "_args": [
-    [
-      "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_id": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-G8K8cWWM3KVxJHVoQ2NhWwtPaVs=",
-  "_location": "/grunt-standard/standard/minimist",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "minimist@https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "name": "minimist",
-    "escapedName": "minimist",
-    "rawSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "James Halliday",
-    "email": "mail@substack.net",
-    "url": "http://substack.net"
-  },
-  "bugs": {
-    "url": "https://github.com/substack/minimist/issues"
-  },
-  "description": "parse argument options",
-  "devDependencies": {
-    "covert": "^1.0.0",
-    "tap": "~0.4.0",
-    "tape": "^3.5.0"
-  },
-  "homepage": "https://github.com/substack/minimist",
-  "keywords": [
-    "argv",
-    "getopt",
-    "parser",
-    "optimist"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "minimist",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/substack/minimist.git"
-  },
-  "scripts": {
-    "coverage": "covert test/*.js",
-    "test": "tap test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/6..latest",
-      "ff/5",
-      "firefox/latest",
-      "chrome/10",
-      "chrome/latest",
-      "safari/5.1",
-      "safari/latest",
-      "opera/12"
-    ]
-  },
-  "version": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/bool.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/minimist/test/bool.js
deleted file mode 100644 (file)
index 749e083..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-var parse = require('../');
-var test = require('tape');
-
-test('flag boolean default false', function (t) {
-    var argv = parse(['moo'], {
-        boolean: ['t', 'verbose'],
-        default: { verbose: false, t: false }
-    });
-    
-    t.deepEqual(argv, {
-        verbose: false,
-        t: false,
-        _: ['moo']
-    });
-    
-    t.deepEqual(typeof argv.verbose, 'boolean');
-    t.deepEqual(typeof argv.t, 'boolean');
-    t.end();
-
-});
-
-test('boolean groups', function (t) {
-    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
-        boolean: ['x','y','z']
-    });
-    
-    t.deepEqual(argv, {
-        x : true,
-        y : false,
-        z : true,
-        _ : [ 'one', 'two', 'three' ]
-    });
-    
-    t.deepEqual(typeof argv.x, 'boolean');
-    t.deepEqual(typeof argv.y, 'boolean');
-    t.deepEqual(typeof argv.z, 'boolean');
-    t.end();
-});
-test('boolean and alias with chainable api', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp',  'derp' ];
-    var opts = {
-        herp: { alias: 'h', boolean: true }
-    };
-    var aliasedArgv = parse(aliased, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var propertyArgv = parse(regular, {
-        boolean: 'herp',
-        alias: { h: 'herp' }
-    });
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-test('boolean and alias with options hash', function (t) {
-    var aliased = [ '-h', 'derp' ];
-    var regular = [ '--herp', 'derp' ];
-    var opts = {
-        alias: { 'h': 'herp' },
-        boolean: 'herp'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ 'derp' ]
-    };
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected);
-    t.end();
-});
-
-test('boolean and alias using explicit true', function (t) {
-    var aliased = [ '-h', 'true' ];
-    var regular = [ '--herp',  'true' ];
-    var opts = {
-        alias: { h: 'herp' },
-        boolean: 'h'
-    };
-    var aliasedArgv = parse(aliased, opts);
-    var propertyArgv = parse(regular, opts);
-    var expected = {
-        herp: true,
-        h: true,
-        '_': [ ]
-    };
-
-    t.same(aliasedArgv, expected);
-    t.same(propertyArgv, expected); 
-    t.end();
-});
-
-// regression, see https://github.com/substack/node-optimist/issues/71
-test('boolean and --x=true', function(t) {
-    var parsed = parse(['--boool', '--other=true'], {
-        boolean: 'boool'
-    });
-
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'true');
-
-    parsed = parse(['--boool', '--other=false'], {
-        boolean: 'boool'
-    });
-    
-    t.same(parsed.boool, true);
-    t.same(parsed.other, 'false');
-    t.end();
-});
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/.travis.yml b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/.travis.yml
deleted file mode 100644 (file)
index 18ae2d8..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
-  - "0.11"
-  - "0.10"
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/README.md b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/README.md
deleted file mode 100644 (file)
index 8b684c6..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-# run-parallel [![travis](https://img.shields.io/travis/feross/run-parallel.svg)](https://travis-ci.org/feross/run-parallel) [![npm](https://img.shields.io/npm/v/run-parallel.svg)](https://npmjs.org/package/run-parallel) [![npm](https://img.shields.io/npm/dm/run-parallel.svg)](https://npmjs.org/package/run-parallel)
-
-### Run an array of functions in parallel
-
-![parallel](https://raw.githubusercontent.com/feross/run-parallel/master/img.png) [![browser support](https://ci.testling.com/feross/run-parallel.png)](https://ci.testling.com/feross/run-parallel)
-
-### install
-
-```
-npm install run-parallel
-```
-
-### usage
-
-#### parallel(tasks, [callback])
-
-Run the `tasks` array of functions in parallel, without waiting until the previous
-function has completed. If any of the functions pass an error to its callback, the main
-`callback` is immediately called with the value of the error. Once the `tasks` have
-completed, the results are passed to the final `callback` as an array.
-
-It is also possible to use an object instead of an array. Each property will be run as a
-function and the results will be passed to the final `callback` as an object instead of
-an array. This can be a more readable way of handling the results.
-
-##### arguments
-
-- `tasks` - An array or object containing functions to run. Each function is passed a
-`callback(err, result)` which it must call on completion with an error `err` (which can
-be `null`) and an optional `result` value.
-- `callback(err, results)` - An optional callback to run once all the functions have
-completed. This function gets a results array (or object) containing all the result
-arguments passed to the task callbacks.
-
-##### example
-
-```js
-var parallel = require('run-parallel')
-
-parallel([
-  function (callback) {
-    setTimeout(function () {
-      callback(null, 'one')
-    }, 200)
-  },
-  function (callback) {
-    setTimeout(function () {
-      callback(null, 'two')
-    }, 100)
-  }
-],
-// optional callback
-function (err, results) {
-  // the results array will equal ['one','two'] even though
-  // the second function had a shorter timeout.
-})
-```
-
-This module is basically equavalent to
-[`async.parallel`](https://github.com/caolan/async#paralleltasks-callback), but it's
-handy to just have the one function you need instead of the kitchen sink. Modularity!
-Especially handy if you're serving to the browser and need to reduce your javascript
-bundle size.
-
-Works great in the browser with [browserify](http://browserify.org/)!
-
-### see also
-
-- [run-auto](https://github.com/feross/run-auto)
-- [run-series](https://github.com/feross/run-series)
-- [run-waterfall](https://github.com/feross/run-waterfall)
-
-### license
-
-MIT. Copyright (c) [Feross Aboukhadijeh](http://feross.org).
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/img.png b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/img.png
deleted file mode 100644 (file)
index a5cdcd0..0000000
Binary files a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/img.png and /dev/null differ
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/index.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/index.js
deleted file mode 100644 (file)
index 5ae44d0..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-var dezalgo = require('dezalgo')
-
-module.exports = function (tasks, cb) {
-  if (cb) cb = dezalgo(cb)
-  var results, pending, keys
-  if (Array.isArray(tasks)) {
-    results = []
-    pending = tasks.length
-  } else {
-    keys = Object.keys(tasks)
-    results = {}
-    pending = keys.length
-  }
-
-  function done (i, err, result) {
-    results[i] = result
-    if (--pending === 0 || err) {
-      if (cb) cb(err, results)
-      cb = null
-    }
-  }
-
-  if (!pending) {
-    // empty
-    if (cb) cb(null, results)
-    cb = null
-  } else if (keys) {
-    // object
-    keys.forEach(function (key) {
-      tasks[key](done.bind(undefined, key))
-    })
-  } else {
-    // array
-    tasks.forEach(function (task, i) {
-      task(done.bind(undefined, i))
-    })
-  }
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/package.json
deleted file mode 100644 (file)
index a738310..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-{
-  "_args": [
-    [
-      "run-parallel@https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "run-parallel@https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-  "_id": "run-parallel@https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-bFHDt+BkAKOfOONKoedkY6AV5n8=",
-  "_location": "/grunt-standard/standard/run-parallel",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "run-parallel@https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-    "name": "run-parallel",
-    "escapedName": "run-parallel",
-    "rawSpec": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Feross Aboukhadijeh",
-    "email": "feross@feross.org",
-    "url": "http://feross.org/"
-  },
-  "bugs": {
-    "url": "https://github.com/feross/run-parallel/issues"
-  },
-  "dependencies": {
-    "dezalgo": "^1.0.1"
-  },
-  "description": "Run an array of functions in parallel",
-  "devDependencies": {
-    "standard": "^3.2.0",
-    "tape": "^2.12.3"
-  },
-  "homepage": "https://github.com/feross/run-parallel",
-  "keywords": [
-    "parallel",
-    "async",
-    "function",
-    "callback",
-    "asynchronous",
-    "run",
-    "array",
-    "run parallel"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "run-parallel",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/feross/run-parallel.git"
-  },
-  "scripts": {
-    "test": "standard && tape test/*.js"
-  },
-  "testling": {
-    "files": "test/*.js",
-    "browsers": [
-      "ie/9..latest",
-      "chrome/25..latest",
-      "chrome/canary",
-      "firefox/20..latest",
-      "firefox/nightly",
-      "safari/6..latest",
-      "opera/12..latest",
-      "opera/next",
-      "ipad/6.0..latest",
-      "iphone/6.0..latest",
-      "android-browser/4.2..latest"
-    ]
-  },
-  "version": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.0.tgz"
-}
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/error.js b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/run-parallel/test/error.js
deleted file mode 100644 (file)
index 8e356bd..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-var parallel = require('../')
-var test = require('tape')
-
-test('functions that return errors (array)', function (t) {
-  t.plan(3)
-
-  var tasks = [
-    function (cb) {
-      t.pass('cb 1')
-      cb(new Error('oops'))
-    },
-    function (cb) {
-      setTimeout(function () {
-        t.pass('cb 2')
-        cb(null, 2)
-      }, 100)
-    }
-  ]
-
-  parallel(tasks, function (err) {
-    t.ok(err instanceof Error)
-  })
-})
-
-test('functions that return errors (object)', function (t) {
-  t.plan(3)
-
-  var tasks = {
-    one: function (cb) {
-      t.pass('cb 1')
-      cb(new Error('oops'))
-    },
-    two: function (cb) {
-      setTimeout(function () {
-        t.pass('cb 2')
-        cb(null, 2)
-      }, 100)
-    }
-  }
-
-  parallel(tasks, function (err) {
-    t.ok(err instanceof Error)
-  })
-})
-
-test('functions that return errors (object) w/ partial results', function (t) {
-  t.plan(4)
-
-  var tasks = {
-    one: function (cb) {
-      t.pass('cb 1')
-      cb(null, 1)
-    },
-    two: function (cb) {
-      setTimeout(function () {
-        t.pass('cb 2')
-        cb(new Error('oops'))
-      }, 100)
-    }
-  }
-
-  parallel(tasks, function (err, results) {
-    t.ok(err instanceof Error)
-    t.deepEqual(results, { one: 1, two: undefined })
-  })
-})
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/package.json b/wrt/build/node_modules/grunt-standard/node_modules/standard/node_modules/uniq/package.json
deleted file mode 100644 (file)
index c791446..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  "_args": [
-    [
-      "uniq@https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
-    ]
-  ],
-  "_development": true,
-  "_from": "uniq@https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-  "_id": "uniq@https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
-  "_location": "/grunt-standard/standard/uniq",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "remote",
-    "raw": "uniq@https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-    "name": "uniq",
-    "escapedName": "uniq",
-    "rawSpec": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-    "saveSpec": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-    "fetchSpec": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz"
-  },
-  "_requiredBy": [
-    "/grunt-standard/standard"
-  ],
-  "_spec": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
-  "author": {
-    "name": "Mikola Lysenko"
-  },
-  "bugs": {
-    "url": "https://github.com/mikolalysenko/uniq/issues"
-  },
-  "dependencies": {},
-  "description": "Removes duplicates from a sorted array in place",
-  "devDependencies": {
-    "tape": "^2.12.3"
-  },
-  "directories": {
-    "test": "test"
-  },
-  "gitHead": "e9828cfcb97e25a351f95b39fdf3c31876ff3985",
-  "homepage": "https://github.com/mikolalysenko/uniq#readme",
-  "keywords": [
-    "array",
-    "duplicate",
-    "unique",
-    "uniq",
-    "remove",
-    "sort",
-    "in",
-    "place",
-    "no",
-    "copy"
-  ],
-  "license": "MIT",
-  "main": "uniq.js",
-  "name": "uniq",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/mikolalysenko/uniq.git"
-  },
-  "scripts": {
-    "test": "tape test/*.js"
-  },
-  "version": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz"
-}
index da52465..b8687c8 100644 (file)
@@ -1,34 +1,46 @@
 {
   "_args": [
     [
-      "standard@https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "standard@3.7.0",
+        "scope": null,
+        "escapedName": "standard",
+        "name": "standard",
+        "rawSpec": "3.7.0",
+        "spec": "3.7.0",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard"
     ]
   ],
-  "_development": true,
-  "_from": "standard@https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-  "_id": "standard@https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-cDqmfuQyfqd8hYCDWIJqUwxlV+U=",
+  "_from": "standard@3.7.0",
+  "_id": "standard@3.7.0",
+  "_inCache": true,
   "_location": "/grunt-standard/standard",
-  "_phantomChildren": {
-    "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz",
-    "text-table": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+  "_nodeVersion": "0.12.2",
+  "_npmUser": {
+    "name": "feross",
+    "email": "feross@feross.org"
   },
+  "_npmVersion": "2.7.4",
+  "_phantomChildren": {},
   "_requested": {
-    "type": "remote",
-    "raw": "standard@https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-    "name": "standard",
+    "raw": "standard@3.7.0",
+    "scope": null,
     "escapedName": "standard",
-    "rawSpec": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz"
+    "name": "standard",
+    "rawSpec": "3.7.0",
+    "spec": "3.7.0",
+    "type": "version"
   },
   "_requiredBy": [
     "/grunt-standard"
   ],
-  "_spec": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/standard/-/standard-3.7.0.tgz",
+  "_shasum": "703aa67ee4327ea77c85808358826a530c6557e5",
+  "_shrinkwrap": null,
+  "_spec": "standard@3.7.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard",
   "author": {
     "name": "Feross Aboukhadijeh",
     "email": "feross@feross.org",
     "tape": "^4.0.0",
     "xtend": "^4.0.0"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "703aa67ee4327ea77c85808358826a530c6557e5",
+    "tarball": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz"
+  },
+  "gitHead": "65bd9c047b2ae5d016d47f630c01badef333e6b8",
   "homepage": "https://github.com/feross/standard",
   "keywords": [
     "standard",
   ],
   "license": "MIT",
   "main": "index.js",
+  "maintainers": [
+    {
+      "name": "feross",
+      "email": "feross@feross.org"
+    }
+  ],
   "name": "standard",
+  "optionalDependencies": {},
   "preferGlobal": true,
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git://github.com/feross/standard.git"
   "standard": {
     "ignore": "tmp/"
   },
-  "version": "https://registry.npmjs.org/standard/-/standard-3.7.0.tgz"
+  "version": "3.7.0"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/package.json b/wrt/build/node_modules/grunt-standard/node_modules/strip-ansi/package.json
new file mode 100644 (file)
index 0000000..adda70f
--- /dev/null
@@ -0,0 +1,122 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "strip-ansi@^2.0.1",
+        "scope": null,
+        "escapedName": "strip-ansi",
+        "name": "strip-ansi",
+        "rawSpec": "^2.0.1",
+        "spec": ">=2.0.1 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk"
+    ]
+  ],
+  "_from": "strip-ansi@>=2.0.1 <3.0.0",
+  "_id": "strip-ansi@2.0.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/strip-ansi",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "strip-ansi@^2.0.1",
+    "scope": null,
+    "escapedName": "strip-ansi",
+    "name": "strip-ansi",
+    "rawSpec": "^2.0.1",
+    "spec": ">=2.0.1 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/chalk"
+  ],
+  "_resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
+  "_shasum": "df62c1aa94ed2f114e1d0f21fd1d50482b79a60e",
+  "_shrinkwrap": null,
+  "_spec": "strip-ansi@^2.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bin": {
+    "strip-ansi": "cli.js"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/strip-ansi/issues"
+  },
+  "dependencies": {
+    "ansi-regex": "^1.0.0"
+  },
+  "description": "Strip ANSI escape codes",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "df62c1aa94ed2f114e1d0f21fd1d50482b79a60e",
+    "tarball": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js",
+    "cli.js"
+  ],
+  "gitHead": "1eff0936c01f89efa312d9d51deed137259871a1",
+  "homepage": "https://github.com/sindresorhus/strip-ansi",
+  "keywords": [
+    "strip",
+    "trim",
+    "remove",
+    "ansi",
+    "styles",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "string",
+    "tty",
+    "escape",
+    "formatting",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "log",
+    "logging",
+    "command-line",
+    "text"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    },
+    {
+      "name": "jbnicolai",
+      "email": "jappelman@xebia.com"
+    }
+  ],
+  "name": "strip-ansi",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/strip-ansi.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "2.0.1"
+}
index 176742c..1d9f995 100644 (file)
@@ -1,32 +1,46 @@
 {
   "_args": [
     [
-      "text-table@https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "text-table@0.2.0",
+        "scope": null,
+        "escapedName": "text-table",
+        "name": "text-table",
+        "rawSpec": "0.2.0",
+        "spec": "0.2.0",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard"
     ]
   ],
-  "_from": "text-table@https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-  "_id": "text-table@https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-  "_inBundle": false,
-  "_integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
+  "_from": "text-table@0.2.0",
+  "_id": "text-table@0.2.0",
+  "_inCache": true,
   "_location": "/grunt-standard/text-table",
+  "_npmUser": {
+    "name": "substack",
+    "email": "mail@substack.net"
+  },
+  "_npmVersion": "1.3.7",
   "_phantomChildren": {},
   "_requested": {
-    "type": "remote",
-    "raw": "text-table@https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-    "name": "text-table",
+    "raw": "text-table@0.2.0",
+    "scope": null,
     "escapedName": "text-table",
-    "rawSpec": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-    "saveSpec": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-    "fetchSpec": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+    "name": "text-table",
+    "rawSpec": "0.2.0",
+    "spec": "0.2.0",
+    "type": "version"
   },
   "_requiredBy": [
     "/grunt-standard",
-    "/grunt-standard/grunt-nsp-shrinkwrap",
-    "/grunt-standard/standard/eslint"
+    "/grunt-standard/eslint"
   ],
-  "_spec": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+  "_shasum": "7f5ee823ae805207c00af2df4a84ec3fcfa570b4",
+  "_shrinkwrap": null,
+  "_spec": "text-table@0.2.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard",
   "author": {
     "name": "James Halliday",
     "email": "mail@substack.net",
   "bugs": {
     "url": "https://github.com/substack/text-table/issues"
   },
+  "dependencies": {},
   "description": "borderless text tables with alignment",
   "devDependencies": {
     "cli-color": "~0.2.3",
     "tap": "~0.4.0",
     "tape": "~1.0.2"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "7f5ee823ae805207c00af2df4a84ec3fcfa570b4",
+    "tarball": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+  },
   "homepage": "https://github.com/substack/text-table",
   "keywords": [
     "text",
   ],
   "license": "MIT",
   "main": "index.js",
+  "maintainers": [
+    {
+      "name": "substack",
+      "email": "mail@substack.net"
+    }
+  ],
   "name": "text-table",
+  "optionalDependencies": {},
+  "readme": "# text-table\n\ngenerate borderless text table strings suitable for printing to stdout\n\n[![build status](https://secure.travis-ci.org/substack/text-table.png)](http://travis-ci.org/substack/text-table)\n\n[![browser support](https://ci.testling.com/substack/text-table.png)](http://ci.testling.com/substack/text-table)\n\n# example\n\n## default align\n\n``` js\nvar table = require('text-table');\nvar t = table([\n    [ 'master', '0123456789abcdef' ],\n    [ 'staging', 'fedcba9876543210' ]\n]);\nconsole.log(t);\n```\n\n```\nmaster   0123456789abcdef\nstaging  fedcba9876543210\n```\n\n## left-right align\n\n``` js\nvar table = require('text-table');\nvar t = table([\n    [ 'beep', '1024' ],\n    [ 'boop', '33450' ],\n    [ 'foo', '1006' ],\n    [ 'bar', '45' ]\n], { align: [ 'l', 'r' ] });\nconsole.log(t);\n```\n\n```\nbeep   1024\nboop  33450\nfoo    1006\nbar      45\n```\n\n## dotted align\n\n``` js\nvar table = require('text-table');\nvar t = table([\n    [ 'beep', '1024' ],\n    [ 'boop', '334.212' ],\n    [ 'foo', '1006' ],\n    [ 'bar', '45.6' ],\n    [ 'baz', '123.' ]\n], { align: [ 'l', '.' ] });\nconsole.log(t);\n```\n\n```\nbeep  1024\nboop   334.212\nfoo   1006\nbar     45.6\nbaz    123.\n```\n\n## centered\n\n``` js\nvar table = require('text-table');\nvar t = table([\n    [ 'beep', '1024', 'xyz' ],\n    [ 'boop', '3388450', 'tuv' ],\n    [ 'foo', '10106', 'qrstuv' ],\n    [ 'bar', '45', 'lmno' ]\n], { align: [ 'l', 'c', 'l' ] });\nconsole.log(t);\n```\n\n```\nbeep    1024   xyz\nboop  3388450  tuv\nfoo    10106   qrstuv\nbar      45    lmno\n```\n\n# methods\n\n``` js\nvar table = require('text-table')\n```\n\n## var s = table(rows, opts={})\n\nReturn a formatted table string `s` from an array of `rows` and some options\n`opts`.\n\n`rows` should be an array of arrays containing strings, numbers, or other\nprintable values.\n\noptions can be:\n\n* `opts.hsep` - separator to use between columns, default `'  '`\n* `opts.align` - array of alignment types for each column, default `['l','l',...]`\n* `opts.stringLength` - callback function to use when calculating the string length\n\nalignment types are:\n\n* `'l'` - left\n* `'r'` - right\n* `'c'` - center\n* `'.'` - decimal\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install text-table\n```\n\n# Use with ANSI-colors\n\nSince the string length of ANSI color schemes does not equal the length\nJavaScript sees internally it is necessary to pass the a custom string length\ncalculator during the main function call.\n\nSee the `test/ansi-colors.js` file for an example.\n\n# license\n\nMIT\n",
+  "readmeFilename": "readme.markdown",
   "repository": {
     "type": "git",
     "url": "git://github.com/substack/text-table.git"
       "ipad/6"
     ]
   },
-  "version": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
+  "version": "0.2.0"
 }
diff --git a/wrt/build/node_modules/grunt-standard/node_modules/user-home/package.json b/wrt/build/node_modules/grunt-standard/node_modules/user-home/package.json
new file mode 100644 (file)
index 0000000..c94691f
--- /dev/null
@@ -0,0 +1,103 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "user-home@^1.0.0",
+        "scope": null,
+        "escapedName": "user-home",
+        "name": "user-home",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "user-home@>=1.0.0 <2.0.0",
+  "_id": "user-home@1.1.1",
+  "_inCache": true,
+  "_location": "/grunt-standard/user-home",
+  "_nodeVersion": "0.10.32",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "2.1.16",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "user-home@^1.0.0",
+    "scope": null,
+    "escapedName": "user-home",
+    "name": "user-home",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "http://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
+  "_shasum": "2b5be23a32b63a7c9deb8d0f28d485724a3df190",
+  "_shrinkwrap": null,
+  "_spec": "user-home@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bin": {
+    "user-home": "cli.js"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/user-home/issues"
+  },
+  "dependencies": {},
+  "description": "Get the path to the user home directory",
+  "devDependencies": {
+    "ava": "0.0.3"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "2b5be23a32b63a7c9deb8d0f28d485724a3df190",
+    "tarball": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js",
+    "cli.js"
+  ],
+  "gitHead": "cf6ba885d3e6bf625fb3c15ad0334fa623968481",
+  "homepage": "https://github.com/sindresorhus/user-home",
+  "keywords": [
+    "cli",
+    "bin",
+    "user",
+    "home",
+    "homedir",
+    "dir",
+    "directory",
+    "folder",
+    "path"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    }
+  ],
+  "name": "user-home",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/user-home.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.1.1"
+}
diff --git a/wrt/build/node_modules/isexe/.npmignore b/wrt/build/node_modules/isexe/.npmignore
new file mode 100644 (file)
index 0000000..c1cb757
--- /dev/null
@@ -0,0 +1,2 @@
+.nyc_output/
+coverage/
diff --git a/wrt/build/node_modules/isexe/README.md b/wrt/build/node_modules/isexe/README.md
new file mode 100644 (file)
index 0000000..35769e8
--- /dev/null
@@ -0,0 +1,51 @@
+# isexe
+
+Minimal module to check if a file is executable, and a normal file.
+
+Uses `fs.stat` and tests against the `PATHEXT` environment variable on
+Windows.
+
+## USAGE
+
+```javascript
+var isexe = require('isexe')
+isexe('some-file-name', function (err, isExe) {
+  if (err) {
+    console.error('probably file does not exist or something', err)
+  } else if (isExe) {
+    console.error('this thing can be run')
+  } else {
+    console.error('cannot be run')
+  }
+})
+
+// same thing but synchronous, throws errors
+var isExe = isexe.sync('some-file-name')
+
+// treat errors as just "not executable"
+isexe('maybe-missing-file', { ignoreErrors: true }, callback)
+var isExe = isexe.sync('maybe-missing-file', { ignoreErrors: true })
+```
+
+## API
+
+### `isexe(path, [options], [callback])`
+
+Check if the path is executable.  If no callback provided, and a
+global `Promise` object is available, then a Promise will be returned.
+
+Will raise whatever errors may be raised by `fs.stat`, unless
+`options.ignoreErrors` is set to true.
+
+### `isexe.sync(path, [options])`
+
+Same as `isexe` but returns the value and throws any errors raised.
+
+### Options
+
+* `ignoreErrors` Treat all errors as "no, this is not executable", but
+  don't raise them.
+* `uid` Number to use as the user id
+* `gid` Number to use as the group id
+* `pathExt` List of path extensions to use instead of `PATHEXT`
+  environment variable on Windows.
diff --git a/wrt/build/node_modules/isexe/index.js b/wrt/build/node_modules/isexe/index.js
new file mode 100644 (file)
index 0000000..553fb32
--- /dev/null
@@ -0,0 +1,57 @@
+var fs = require('fs')
+var core
+if (process.platform === 'win32' || global.TESTING_WINDOWS) {
+  core = require('./windows.js')
+} else {
+  core = require('./mode.js')
+}
+
+module.exports = isexe
+isexe.sync = sync
+
+function isexe (path, options, cb) {
+  if (typeof options === 'function') {
+    cb = options
+    options = {}
+  }
+
+  if (!cb) {
+    if (typeof Promise !== 'function') {
+      throw new TypeError('callback not provided')
+    }
+
+    return new Promise(function (resolve, reject) {
+      isexe(path, options || {}, function (er, is) {
+        if (er) {
+          reject(er)
+        } else {
+          resolve(is)
+        }
+      })
+    })
+  }
+
+  core(path, options || {}, function (er, is) {
+    // ignore EACCES because that just means we aren't allowed to run it
+    if (er) {
+      if (er.code === 'EACCES' || options && options.ignoreErrors) {
+        er = null
+        is = false
+      }
+    }
+    cb(er, is)
+  })
+}
+
+function sync (path, options) {
+  // my kingdom for a filtered catch
+  try {
+    return core.sync(path, options || {})
+  } catch (er) {
+    if (options && options.ignoreErrors || er.code === 'EACCES') {
+      return false
+    } else {
+      throw er
+    }
+  }
+}
diff --git a/wrt/build/node_modules/isexe/mode.js b/wrt/build/node_modules/isexe/mode.js
new file mode 100644 (file)
index 0000000..1995ea4
--- /dev/null
@@ -0,0 +1,41 @@
+module.exports = isexe
+isexe.sync = sync
+
+var fs = require('fs')
+
+function isexe (path, options, cb) {
+  fs.stat(path, function (er, stat) {
+    cb(er, er ? false : checkStat(stat, options))
+  })
+}
+
+function sync (path, options) {
+  return checkStat(fs.statSync(path), options)
+}
+
+function checkStat (stat, options) {
+  return stat.isFile() && checkMode(stat, options)
+}
+
+function checkMode (stat, options) {
+  var mod = stat.mode
+  var uid = stat.uid
+  var gid = stat.gid
+
+  var myUid = options.uid !== undefined ?
+    options.uid : process.getuid && process.getuid()
+  var myGid = options.gid !== undefined ?
+    options.gid : process.getgid && process.getgid()
+
+  var u = parseInt('100', 8)
+  var g = parseInt('010', 8)
+  var o = parseInt('001', 8)
+  var ug = u | g
+
+  var ret = (mod & o) ||
+    (mod & g) && gid === myGid ||
+    (mod & u) && uid === myUid ||
+    (mod & ug) && myUid === 0
+
+  return ret
+}
diff --git a/wrt/build/node_modules/isexe/package.json b/wrt/build/node_modules/isexe/package.json
new file mode 100644 (file)
index 0000000..75b039b
--- /dev/null
@@ -0,0 +1,95 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "isexe@^2.0.0",
+        "scope": null,
+        "escapedName": "isexe",
+        "name": "isexe",
+        "rawSpec": "^2.0.0",
+        "spec": ">=2.0.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/which"
+    ]
+  ],
+  "_from": "isexe@>=2.0.0 <3.0.0",
+  "_id": "isexe@2.0.0",
+  "_inCache": true,
+  "_location": "/isexe",
+  "_nodeVersion": "8.0.0-pre",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/isexe-2.0.0.tgz_1490230396126_0.8949183595832437"
+  },
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "i@izs.me"
+  },
+  "_npmVersion": "4.4.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "isexe@^2.0.0",
+    "scope": null,
+    "escapedName": "isexe",
+    "name": "isexe",
+    "rawSpec": "^2.0.0",
+    "spec": ">=2.0.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/which"
+  ],
+  "_resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+  "_shasum": "e8fbf374dc556ff8947a10dcb0572d633f2cfa10",
+  "_shrinkwrap": null,
+  "_spec": "isexe@^2.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/which",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me/"
+  },
+  "bugs": {
+    "url": "https://github.com/isaacs/isexe/issues"
+  },
+  "dependencies": {},
+  "description": "Minimal module to check if a file is executable.",
+  "devDependencies": {
+    "mkdirp": "^0.5.1",
+    "rimraf": "^2.5.0",
+    "tap": "^10.3.0"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "e8fbf374dc556ff8947a10dcb0572d633f2cfa10",
+    "tarball": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
+  },
+  "gitHead": "10f8be491aab2e158c7e20df64a7f90ab5b5475c",
+  "homepage": "https://github.com/isaacs/isexe#readme",
+  "keywords": [],
+  "license": "ISC",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "i@izs.me"
+    }
+  ],
+  "name": "isexe",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/isaacs/isexe.git"
+  },
+  "scripts": {
+    "postpublish": "git push origin --all; git push origin --tags",
+    "postversion": "npm publish",
+    "preversion": "npm test",
+    "test": "tap test/*.js --100"
+  },
+  "version": "2.0.0"
+}
diff --git a/wrt/build/node_modules/isexe/test/basic.js b/wrt/build/node_modules/isexe/test/basic.js
new file mode 100644 (file)
index 0000000..d926df6
--- /dev/null
@@ -0,0 +1,221 @@
+var t = require('tap')
+var fs = require('fs')
+var path = require('path')
+var fixture = path.resolve(__dirname, 'fixtures')
+var meow = fixture + '/meow.cat'
+var mine = fixture + '/mine.cat'
+var ours = fixture + '/ours.cat'
+var fail = fixture + '/fail.false'
+var noent = fixture + '/enoent.exe'
+var mkdirp = require('mkdirp')
+var rimraf = require('rimraf')
+
+var isWindows = process.platform === 'win32'
+var hasAccess = typeof fs.access === 'function'
+var winSkip = isWindows && 'windows'
+var accessSkip = !hasAccess && 'no fs.access function'
+var hasPromise = typeof Promise === 'function'
+var promiseSkip = !hasPromise && 'no global Promise'
+
+function reset () {
+  delete require.cache[require.resolve('../')]
+  return require('../')
+}
+
+t.test('setup fixtures', function (t) {
+  rimraf.sync(fixture)
+  mkdirp.sync(fixture)
+  fs.writeFileSync(meow, '#!/usr/bin/env cat\nmeow\n')
+  fs.chmodSync(meow, parseInt('0755', 8))
+  fs.writeFileSync(fail, '#!/usr/bin/env false\n')
+  fs.chmodSync(fail, parseInt('0644', 8))
+  fs.writeFileSync(mine, '#!/usr/bin/env cat\nmine\n')
+  fs.chmodSync(mine, parseInt('0744', 8))
+  fs.writeFileSync(ours, '#!/usr/bin/env cat\nours\n')
+  fs.chmodSync(ours, parseInt('0754', 8))
+  t.end()
+})
+
+t.test('promise', { skip: promiseSkip }, function (t) {
+  var isexe = reset()
+  t.test('meow async', function (t) {
+    isexe(meow).then(function (is) {
+      t.ok(is)
+      t.end()
+    })
+  })
+  t.test('fail async', function (t) {
+    isexe(fail).then(function (is) {
+      t.notOk(is)
+      t.end()
+    })
+  })
+  t.test('noent async', function (t) {
+    isexe(noent).catch(function (er) {
+      t.ok(er)
+      t.end()
+    })
+  })
+  t.test('noent ignore async', function (t) {
+    isexe(noent, { ignoreErrors: true }).then(function (is) {
+      t.notOk(is)
+      t.end()
+    })
+  })
+  t.end()
+})
+
+t.test('no promise', function (t) {
+  global.Promise = null
+  var isexe = reset()
+  t.throws('try to meow a promise', function () {
+    isexe(meow)
+  })
+  t.end()
+})
+
+t.test('access', { skip: accessSkip || winSkip }, function (t) {
+  runTest(t)
+})
+
+t.test('mode', { skip: winSkip }, function (t) {
+  delete fs.access
+  delete fs.accessSync
+  var isexe = reset()
+  t.ok(isexe.sync(ours, { uid: 0, gid: 0 }))
+  t.ok(isexe.sync(mine, { uid: 0, gid: 0 }))
+  runTest(t)
+})
+
+t.test('windows', function (t) {
+  global.TESTING_WINDOWS = true
+  var pathExt = '.EXE;.CAT;.CMD;.COM'
+  t.test('pathExt option', function (t) {
+    runTest(t, { pathExt: '.EXE;.CAT;.CMD;.COM' })
+  })
+  t.test('pathExt env', function (t) {
+    process.env.PATHEXT = pathExt
+    runTest(t)
+  })
+  t.test('no pathExt', function (t) {
+    // with a pathExt of '', any filename is fine.
+    // so the "fail" one would still pass.
+    runTest(t, { pathExt: '', skipFail: true })
+  })
+  t.test('pathext with empty entry', function (t) {
+    // with a pathExt of '', any filename is fine.
+    // so the "fail" one would still pass.
+    runTest(t, { pathExt: ';' + pathExt, skipFail: true })
+  })
+  t.end()
+})
+
+t.test('cleanup', function (t) {
+  rimraf.sync(fixture)
+  t.end()
+})
+
+function runTest (t, options) {
+  var isexe = reset()
+
+  var optionsIgnore = Object.create(options || {})
+  optionsIgnore.ignoreErrors = true
+
+  if (!options || !options.skipFail) {
+    t.notOk(isexe.sync(fail, options))
+  }
+  t.notOk(isexe.sync(noent, optionsIgnore))
+  if (!options) {
+    t.ok(isexe.sync(meow))
+  } else {
+    t.ok(isexe.sync(meow, options))
+  }
+
+  t.ok(isexe.sync(mine, options))
+  t.ok(isexe.sync(ours, options))
+  t.throws(function () {
+    isexe.sync(noent, options)
+  })
+
+  t.test('meow async', function (t) {
+    if (!options) {
+      isexe(meow, function (er, is) {
+        if (er) {
+          throw er
+        }
+        t.ok(is)
+        t.end()
+      })
+    } else {
+      isexe(meow, options, function (er, is) {
+        if (er) {
+          throw er
+        }
+        t.ok(is)
+        t.end()
+      })
+    }
+  })
+
+  t.test('mine async', function (t) {
+    isexe(mine, options, function (er, is) {
+      if (er) {
+        throw er
+      }
+      t.ok(is)
+      t.end()
+    })
+  })
+
+  t.test('ours async', function (t) {
+    isexe(ours, options, function (er, is) {
+      if (er) {
+        throw er
+      }
+      t.ok(is)
+      t.end()
+    })
+  })
+
+  if (!options || !options.skipFail) {
+    t.test('fail async', function (t) {
+      isexe(fail, options, function (er, is) {
+        if (er) {
+          throw er
+        }
+        t.notOk(is)
+        t.end()
+      })
+    })
+  }
+
+  t.test('noent async', function (t) {
+    isexe(noent, options, function (er, is) {
+      t.ok(er)
+      t.notOk(is)
+      t.end()
+    })
+  })
+
+  t.test('noent ignore async', function (t) {
+    isexe(noent, optionsIgnore, function (er, is) {
+      if (er) {
+        throw er
+      }
+      t.notOk(is)
+      t.end()
+    })
+  })
+
+  t.test('directory is not executable', function (t) {
+    isexe(__dirname, options, function (er, is) {
+      if (er) {
+        throw er
+      }
+      t.notOk(is)
+      t.end()
+    })
+  })
+
+  t.end()
+}
diff --git a/wrt/build/node_modules/isexe/windows.js b/wrt/build/node_modules/isexe/windows.js
new file mode 100644 (file)
index 0000000..3499673
--- /dev/null
@@ -0,0 +1,42 @@
+module.exports = isexe
+isexe.sync = sync
+
+var fs = require('fs')
+
+function checkPathExt (path, options) {
+  var pathext = options.pathExt !== undefined ?
+    options.pathExt : process.env.PATHEXT
+
+  if (!pathext) {
+    return true
+  }
+
+  pathext = pathext.split(';')
+  if (pathext.indexOf('') !== -1) {
+    return true
+  }
+  for (var i = 0; i < pathext.length; i++) {
+    var p = pathext[i].toLowerCase()
+    if (p && path.substr(-p.length).toLowerCase() === p) {
+      return true
+    }
+  }
+  return false
+}
+
+function checkStat (stat, path, options) {
+  if (!stat.isSymbolicLink() && !stat.isFile()) {
+    return false
+  }
+  return checkPathExt(path, options)
+}
+
+function isexe (path, options, cb) {
+  fs.stat(path, function (er, stat) {
+    cb(er, er ? false : checkStat(stat, path, options))
+  })
+}
+
+function sync (path, options) {
+  return checkStat(fs.statSync(path), path, options)
+}
diff --git a/wrt/build/node_modules/mout/.editorconfig b/wrt/build/node_modules/mout/.editorconfig
new file mode 100644 (file)
index 0000000..faaf0d3
--- /dev/null
@@ -0,0 +1,20 @@
+; EditorConfig is awesome: http://EditorConfig.org
+
+; top-most EditorConfig file
+root = true
+
+; base rules
+[*]
+end_of_line = lf
+insert_final_newline = false
+indent_style = space
+indent_size = 4
+charset = utf-8
+trim_trailing_whitespace = true
+
+; The default indent on package.json is 2 spaces, better to keep it so we can
+; use `npm install --save` and other features that rewrites the package.json
+; file automatically
+[{bower,package}.json]
+indent_style = space
+indent_size = 2
diff --git a/wrt/build/node_modules/mout/.travis.yml b/wrt/build/node_modules/mout/.travis.yml
new file mode 100644 (file)
index 0000000..2ea0044
--- /dev/null
@@ -0,0 +1,18 @@
+ language: node_js
+ node_js:
+   - "iojs"
+   - "0.10"
+   - "0.12"
+ script:
+   - "npm test --coverage"
+   - "jshint src"
+ notifications:
+  irc:
+    channels:
+      - "irc.freenode.org#moutjs"
+    on_success: change
+    on_failure: always
+    use_notice: true
+    skip_join: true
+ git:
+   depth: 10
diff --git a/wrt/build/node_modules/mout/CHANGELOG.md b/wrt/build/node_modules/mout/CHANGELOG.md
new file mode 100644 (file)
index 0000000..694e6fa
--- /dev/null
@@ -0,0 +1,201 @@
+mout changelog
+==============
+
+v0.12.0 (2016/03/03)
+--------------------
+ - add `array/indicesOf`
+ - add `function/memoize`
+ - add `array/reverse`
+ - add `math/overflow`
+ - fix `query/getQuery`
+ - fix `object/deepMatches`
+ - optimize `function/partial`
+ - updates license
+
+
+v0.11.0 (2014/11/17)
+--------------------
+
+ - add `array/take`;
+ - remove unused variable from `date/totalDaysInMonth`;
+ - fix case insensitive RegExp cloning on `lang/clone`;
+
+
+v0.10.0 (2014/09/02)
+--------------------
+
+ - add `array/equals`;
+ - add `array/groupBy`;
+ - add `array/last`;
+ - add `function/wrap`;
+ - add `lang/GLOBAL`;
+ - add `lang/isPrimitive`;
+ - add `number/MAX_SAFE_INTEGER`;
+ - add `object/omit`;
+ - add `object/result`;
+ - add `object/result`;
+ - add `random/randString`;
+ - change `lang/isEmpty` behavior to return `true` for any value that isn't
+   a collection.
+ - fix `array/findLastIndex` to stop at zero index;
+ - improve `function/partial` to accept placeholders;
+ - improve `math.norm` behavior for values outside the range and for cases
+   where `val === min === max`;
+ - improve `object/get` behavior to return properties from any value that is
+   not `null` or `undefined`;
+ - move `object/deepEquals` to `lang/deepEquals` (improving the behavior);
+
+
+v0.9.1 (2014/04/08)
+-------------------
+
+ - fix `array/slice` behavior when start and end are higher than length.
+
+
+v0.9.0 (2014/02/04)
+-------------------
+
+ - add `date/quarter`;
+ - add `function/constant`;
+ - add `random/randBool`;
+ - add un-padded 12-hour (`%l`) to `date/strftime`;
+ - fix `array/slice` on IE < 9 by using a custom implementation.
+ - fix `object/forIn` iteration for IE < 9 constructor property;
+ - improve `lang/inheritPrototype` by returning the `prototype`;
+ - improve `string/removeNonWord` to cover more chars;
+ - improve `string/repeat` performance;
+ - improve `string/unescapeHtml` by accepting leading zeros for `&#39`;
+
+
+v0.8.0 (2013/11/22)
+-------------------
+
+ - add `array/findLast`.
+ - add `array/findLastIndex`.
+ - add `array/slice` and use it internally.
+ - add `array/sortBy`
+ - add `function/awaitDelay`.
+ - add `function/identity`
+ - add `number/isNaN`.
+ - add `number/nth`.
+ - add `number/ordinal`.
+ - allows nested replacement patterns in `string/interpolate`.
+ - change `function/makeIterator_` behavior (uses `identity` by default).
+ - simplify `string/escapeRegExp`.
+ - support custom equality on `array/compare`.
+
+
+v0.7.1 (2013/09/18)
+-------------------
+
+ - fix `null` value handling in object/get.
+
+
+v0.7.0 (2013/09/05)
+-------------------
+
+ - add bower ignores.
+ - add german translation for date localization.
+ - alias `function` package as `fn` since "function" is a reserved keyword.
+ - allow second argument on `array/pick`.
+ - improve `string/makePath` to not remove "//" after protocol.
+ - make sure methods inside `number` package works with mixed types.
+ - support arrays on `queryString/encode`.
+ - support multiple values for same property on `queryString/decode`.
+ - add `cancel()` method to `throttled/debounced` functions.
+ - add `function/times`.
+ - add `lang/toNumber`.
+ - add `string/insert`.
+ - add `super_` to constructor on `lang/inheritPrototype`.
+
+
+v0.6.0 (2013/05/22)
+-------------------
+
+ - add optional delimeter to `string/unCamelCase`
+ - allow custom char on `number/pad`
+ - allow underscore characters in `string/removeNonWord`
+ - accept `level` on `array/flatten` instead of a flag
+ - convert underscores to camelCase in `string/camelCase`
+ - remove `create()` from number/currencyFormat
+ - add `date/dayOfTheYear`
+ - add `date/diff`
+ - add `date/isSame`
+ - add `date/startOf`
+ - add `date/strftime`
+ - add `date/timezoneAbbr`
+ - add `date/timezoneOffset`
+ - add `date/totalDaysInYear`
+ - add `date/weekOfTheYear`
+ - add `function/timeout`
+ - add `object/bindAll`
+ - add `object/functions`
+ - add `time/convert`
+
+
+v0.5.0 (2013/04/04)
+-------------------
+
+ - add `array/collect`
+ - add `callback` parameter to `object/equals` and `object/deepEquals` to allow
+   custom compare operations.
+ - normalize behavior in `array/*` methods to treat `null` values as empty
+   arrays when reading from array
+ - add `date/parseIso`
+ - add `date/isLeapYear`
+ - add `date/totalDaysInMonth`
+ - add `object/deepMatches`
+ - change `function/makeIterator_` to use `deepMatches` (affects nearly all
+   iteration methods)
+ - add `thisObj` parameter to `array/min` and `array/max`
+
+
+v0.4.0 (2013/02/26)
+-------------------
+
+ - add `object/equals`
+ - add `object/deepEquals`
+ - add `object/matches`.
+ - add `lang/is` and `lang/isnt`.
+ - add `lang/isInteger`.
+ - add `array/findIndex`.
+ - add shorthand syntax to `array/*`, `object/*` and `collection/*` methods.
+ - improve `number/sign` behavior when value is NaN or +0 or -0.
+ - improve `lang/isNaN` to actually check if value *is not a number* without
+   coercing value; so `[]`, `""`, `null` and `"12"` are considered NaN (#39).
+ - improve `string/contains` to match ES6 behavior (add fromIndex argument).
+
+
+v0.3.0 (2013/02/01)
+-------------------
+
+ - add `lang/clone`.
+ - add `lang/toString`.
+ - add `string/replace`.
+ - add `string/WHITE_SPACES`
+ - rename `function/curry` to `function/partial`.
+ - allow custom chars in `string/trim`, `ltrim`, and `rtrim`.
+ - convert values to strings in the `string/*` functions.
+
+
+v0.2.0 (2013/01/13)
+-------------------
+
+ - fix bug in `math/ceil` for negative radixes.
+ - change `object/deepFillIn` and `object/deepMixIn` to recurse only if both
+   existing and new values are plain objects. Will not recurse into arrays
+   or objects not created by the Object constructor.
+ - add `lang/isPlainObject` to check if a file is a valid object and is created
+   by the Object constructor
+ - change `lang/clone` behavior when dealing with custom types (avoid cloning
+   it by default) and add second argument to allow custom behavior if needed.
+ - rename `lang/clone` to `lang/deepClone`.
+ - add VERSION property to index.js
+ - simplify `math/floor`, `math/round`, `math/ceil` and `math/countSteps`.
+
+
+v0.1.0 (2013/01/09)
+-------------------
+
+- Rename project from "amd-utils" to "mout"
+
diff --git a/wrt/build/node_modules/mout/README.md b/wrt/build/node_modules/mout/README.md
new file mode 100644 (file)
index 0000000..06b853d
--- /dev/null
@@ -0,0 +1,65 @@
+![mout](http://moutjs.com/logo.png "Modular JavaScript Utilties")
+
+http://moutjs.com/
+
+[![Build Status](https://travis-ci.org/mout/mout.svg?branch=master)](https://travis-ci.org/mout/mout)
+[![Downloads](https://img.shields.io/npm/dm/mout.svg)](https://www.npmjs.com/package/mout)
+[![Version](https://img.shields.io/npm/v/mout.svg)](https://www.npmjs.com/package/mout)
+
+All code is library agnostic and consist mostly of helper methods that aren't
+directly related with the DOM, the purpose of this library isn't to replace
+Dojo, jQuery, YUI, Mootools, etc, but to provide modular solutions for common
+problems that aren't solved by most of them. Consider it as a crossbrowser
+JavaScript standard library.
+
+
+
+## Main goals ##
+
+ - increase code reuse;
+ - be clear (code should be clean/readable);
+ - be easy to debug;
+ - be easy to maintain;
+ - follow best practices;
+ - follow standards when possible;
+ - **don't convert JavaScript into another language!**
+ - be compatible with other frameworks;
+ - be modular;
+ - have unit tests for all modules;
+ - work on multiple environments (IE7+, modern browsers, node.js);
+
+
+
+## What shouldn't be here ##
+
+ - UI components;
+ - CSS selector engine;
+ - Event system - pub/sub;
+ - Template engine;
+ - Anything that isn't generic enough to be on a standard library;
+ - Anything that could be a separate library and/or isn't a modular utility...
+
+
+
+## API Documentation ##
+
+Online documentation can be found at http://moutjs.com/ or inside the
+`doc` folder.
+
+
+
+## FAQ / Wiki / IRC ##
+
+For more info about project structure, design decisions, tips, how to
+contribute, build system, etc, please check the [project
+wiki](https://github.com/mout/mout/wiki).
+
+We also have an IRC channel [#moutjs on
+irc.freenode.net](http://webchat.freenode.net/?channels=moutjs)
+
+
+
+## License ##
+
+Released under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
+
diff --git a/wrt/build/node_modules/mout/array.js b/wrt/build/node_modules/mout/array.js
new file mode 100644 (file)
index 0000000..695eef8
--- /dev/null
@@ -0,0 +1,56 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'append' : require('./array/append'),
+    'collect' : require('./array/collect'),
+    'combine' : require('./array/combine'),
+    'compact' : require('./array/compact'),
+    'contains' : require('./array/contains'),
+    'difference' : require('./array/difference'),
+    'equals' : require('./array/equals'),
+    'every' : require('./array/every'),
+    'filter' : require('./array/filter'),
+    'find' : require('./array/find'),
+    'findIndex' : require('./array/findIndex'),
+    'findLast' : require('./array/findLast'),
+    'findLastIndex' : require('./array/findLastIndex'),
+    'flatten' : require('./array/flatten'),
+    'forEach' : require('./array/forEach'),
+    'groupBy' : require('./array/groupBy'),
+    'indexOf' : require('./array/indexOf'),
+    'indicesOf' : require('./array/indicesOf'),
+    'insert' : require('./array/insert'),
+    'intersection' : require('./array/intersection'),
+    'invoke' : require('./array/invoke'),
+    'join' : require('./array/join'),
+    'last' : require('./array/last'),
+    'lastIndexOf' : require('./array/lastIndexOf'),
+    'map' : require('./array/map'),
+    'max' : require('./array/max'),
+    'min' : require('./array/min'),
+    'pick' : require('./array/pick'),
+    'pluck' : require('./array/pluck'),
+    'range' : require('./array/range'),
+    'reduce' : require('./array/reduce'),
+    'reduceRight' : require('./array/reduceRight'),
+    'reject' : require('./array/reject'),
+    'remove' : require('./array/remove'),
+    'removeAll' : require('./array/removeAll'),
+    'reverse' : require('./array/reverse'),
+    'shuffle' : require('./array/shuffle'),
+    'slice' : require('./array/slice'),
+    'some' : require('./array/some'),
+    'sort' : require('./array/sort'),
+    'sortBy' : require('./array/sortBy'),
+    'split' : require('./array/split'),
+    'take' : require('./array/take'),
+    'toLookup' : require('./array/toLookup'),
+    'union' : require('./array/union'),
+    'unique' : require('./array/unique'),
+    'xor' : require('./array/xor'),
+    'zip' : require('./array/zip')
+};
+
+
diff --git a/wrt/build/node_modules/mout/array/flatten.js b/wrt/build/node_modules/mout/array/flatten.js
new file mode 100644 (file)
index 0000000..3aad385
--- /dev/null
@@ -0,0 +1,45 @@
+var isArray = require('../lang/isArray');
+var append = require('./append');
+
+    /*
+     * Helper function to flatten to a destination array.
+     * Used to remove the need to create intermediate arrays while flattening.
+     */
+    function flattenTo(arr, result, level) {
+        if (level === 0) {
+            append(result, arr);
+            return result;
+        }
+
+        var value,
+            i = -1,
+            len = arr.length;
+        while (++i < len) {
+            value = arr[i];
+            if (isArray(value)) {
+                flattenTo(value, result, level - 1);
+            } else {
+                result.push(value);
+            }
+        }
+        return result;
+    }
+
+    /**
+     * Recursively flattens an array.
+     * A new array containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(arr, level) {
+        if (arr == null) {
+            return [];
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(arr, [], level);
+    }
+
+    module.exports = flatten;
+
+
+
diff --git a/wrt/build/node_modules/mout/array/indicesOf.js b/wrt/build/node_modules/mout/array/indicesOf.js
new file mode 100644 (file)
index 0000000..46d656e
--- /dev/null
@@ -0,0 +1,28 @@
+
+
+    /**
+     * Array indicesOf
+     */
+    function indicesOf(arr, item, fromIndex) {
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        fromIndex = typeof fromIndex === 'number' ? fromIndex : 0;
+
+        var length = arr.length;
+        var cursor = fromIndex >= 0 ? fromIndex : length + fromIndex;
+
+        while (cursor < length) {
+            if (arr[cursor] === item) {
+                results.push(cursor);
+            }
+            cursor++;
+        }
+
+        return results;
+    }
+
+    module.exports = indicesOf;
+
diff --git a/wrt/build/node_modules/mout/array/reverse.js b/wrt/build/node_modules/mout/array/reverse.js
new file mode 100644 (file)
index 0000000..a35cc1a
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Returns a copy of the array in reversed order.
+     */
+    function reverse(array) {
+        var copy = array.slice();
+        copy.reverse();
+        return copy;
+    }
+
+    module.exports = reverse;
+
+
diff --git a/wrt/build/node_modules/mout/array/shuffle.js b/wrt/build/node_modules/mout/array/shuffle.js
new file mode 100644 (file)
index 0000000..9cd1fb5
--- /dev/null
@@ -0,0 +1,28 @@
+var randInt = require('../random/randInt');
+
+    /**
+     * Shuffle array items.
+     */
+    function shuffle(arr) {
+        var results = [],
+            rnd;
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (!i) {
+                results[0] = arr[0];
+            } else {
+                rnd = randInt(0, i);
+                results[i] = results[rnd];
+                results[rnd] = arr[i];
+            }
+        }
+
+        return results;
+    }
+
+    module.exports = shuffle;
+
diff --git a/wrt/build/node_modules/mout/doc/array.md b/wrt/build/node_modules/mout/doc/array.md
new file mode 100644 (file)
index 0000000..cfe6bd7
--- /dev/null
@@ -0,0 +1,1003 @@
+# array #
+
+Array utilities.
+
+
+
+
+## append(arr1, arr2):Array
+
+Appends an array to the end of the other.
+The first array will be modified and will contain the appended items.
+
+See: [`union()`](#union), [`combine()`](#combine)
+
+```js
+var foo = ['a', 'b'],
+    bar = ['b', 'd'];
+
+append(foo, bar); // ['a', 'b', 'b', 'd']
+```
+
+
+
+## collect(arr, callback, [thisObj]):Array
+
+Maps the items in `arr` and concatenates the resulting arrays.
+
+See: [`map()`](#map)
+
+```js
+collect([1, 2, 3], function(val) {
+    return [val, val % 2];
+}); // [1, 1, 2, 0, 3, 1];
+
+collect(['a', 'bb', ''], function(val) {
+    return val.split('');
+}); // ['a', 'b', 'b']
+```
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{ a: [1] }, { b: 'foo' }, { a: [2, 3] }];
+collect(items, 'a'); // [1, 2, 3];
+```
+
+
+
+## combine(arr1, arr2):Array
+
+Combines an array with all the items of another.
+The first array will be modified and will contain the combined items.
+Does not allow duplicates and is case and type sensitive.
+
+See: [`union()`](#union), [`append()`](#append)
+
+```js
+var foo = ['a', 'b'],
+    bar = ['b', 'd'];
+
+combine(foo, bar); // ['a', 'b', 'd']
+```
+
+
+
+## compact(arr):Array
+
+Returns a new Array without any `null` or `undefined` values. Note that it will
+keep empty strings and other falsy values (simillar to Ruby Array#compact).
+
+```js
+var arr = [0, 1, null, false, '', 'foo', undefined, 'bar'];
+compact(arr); // [0, 1, false, '', 'foo', 'bar'];
+```
+
+
+
+## contains(arr, value):Boolean
+
+Checks if Array contains value. Alias to `indexOf(arr, val) !== -1`.
+
+```js
+var arr = [1, 2, 3];
+contains(arr, 2);      // true
+contains(arr, 'foo');  // false
+```
+
+
+
+## difference(...arrs):Array
+
+Return a new Array with elements that aren't present in the other Arrays
+besides the first one.
+
+Works like [Python set#difference](http://docs.python.org/library/stdtypes.html#set.difference).
+
+It will remove duplicates.
+
+See: [`xor()`](#xor), [`intersection()`](#intersection)
+
+```js
+var a = ['a', 'b', 1];
+var b = ['c', 1];
+difference(a, b); // ['a', 'b']
+```
+
+
+## equals(a, b, [compare]):Boolean
+
+Checks if both arrays are equal.
+
+```js
+equals([1, 2], [1, 2]); // true
+equals([2, 4], [1, 2]); // false
+```
+
+By default it uses the [lang/is](lang.html#is) as the `compare` function but
+you can pass a custom function to change the behavior.
+
+```js
+function loose(a, b) {
+    return a == b;
+}
+equals(['1', 2], [1, 2], loose); // true
+```
+
+See: [object/equals](object.html#equals), [lang/deepEquals](lang.html#deepEquals)
+
+
+
+## every(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.every()`.
+
+Tests whether all elements in the array pass the test implemented by the provided function.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = [1, 'foo', 'bar'];
+every(items, isString);   // false
+every(items, isFunction); // false
+every(items, function(val, key, arr){
+    return val != null;
+}); // true
+```
+
+more info at [MDN Array#every](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every)
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{id:1, active:true}, {id:3, active:true}, {id:8, active:true}];
+// all items with `id === 8`
+every(items, {id:8}); // false
+// `active` is truthy on all items
+every(items, 'active'); // true
+```
+
+
+
+## filter(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.filter()`.
+
+Creates a new array with all elements that pass the callback test.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var nums = [1, 2, 3, 4, 5, 6];
+var oddNumbers = filter(nums, function(val, key, arr){
+    return (val % 2) !== 0;
+});
+// > [1, 3, 5]
+```
+
+more info at [MDN Array#filter](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter)
+
+Filter also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true},
+    {name:'jane', surname:'doe', beard:false}
+];
+// filter item that matches all properties/values pairs
+filter(arr, {name:'john', beard:false});
+// > [{name:'john', surnname:'connor', beard:false}]
+// items where 'beard' is a truthy value
+filter(arr, 'beard');
+// > [{name:'john', surnname:'doe', beard:true}]
+```
+
+See [`reject()`](#reject)
+
+
+
+## find(arr, callback, [thisObj]):*
+
+Loops through all the items in the Array and returns the first one that passes
+a truth test (callback).
+
+```js
+var arr = [123, {a:'b'}, 'foo', 'bar'];
+find(arr, isString); // "foo"
+find(arr, isNumber); // 123
+find(arr, isObject); // {a:'b'}
+```
+
+Find also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true}
+];
+// first item that matches all properties/values pairs
+find(arr, {name:'john'}); // {name:'john', surnname:'connor', beard:false}
+// first item where 'beard' is a truthy value
+find(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
+```
+
+See: [findIndex()](#findIndex), [findLast()](#findLast),
+[findLastIndex()](#findLastIndex)
+
+
+
+## findLast(arr, callback, [thisObj]):*
+
+Loops through all the items in the Array (starting from last item) and returns
+the first one that passes a truth test (callback).
+
+```js
+var arr = [123, {a:'b'}, 'foo', 'bar'];
+findLast(arr, isString); // "bar"
+findLast(arr, isNumber); // 123
+findLast(arr, isObject); // {a:'b'}
+```
+
+`findLast` also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true}
+];
+// last item that matches all properties/values pairs
+findLast(arr, {name:'john'}); // {name:'john', surnname:'doe', beard:true}
+// last item where 'beard' is a truthy value
+findLast(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
+```
+
+See: [find()](#find), [findIndex()](#findIndex),
+[findLastIndex()](#findLastIndex)
+
+
+
+## findIndex(arr, iterator, [thisObj]):Number
+
+Loops through the items in the Array and returns the index of the first one
+that passes a truth test (callback).
+
+Returns `-1` if no item was found that passes the truth test.
+
+```js
+var arr = [1, { a: 1 }, 'foo', 'bar'];
+findIndex(arr, isString); // 2
+findIndex(arr, isNumber); // 0
+findIndex(arr, isObject); // 1
+findIndex(arr, isRegExp); // -1
+```
+
+`findIndex` also supports shorthand notation:
+
+```js
+var pets = [
+    { pet: 'dog', name: 'Sam' },
+    { pet: 'dog', name: 'Maggie' }
+];
+
+findIndex(pets, { pet: 'dog' }); // 0
+findIndex(pets, { name: 'Maggie' }); // 1
+```
+
+See: [find()](#find), [findLastIndex()](#findLastIndex)
+
+
+
+## findLastIndex(arr, iterator, [thisObj]):Number
+
+Loops through the items in the Array on the reverse order and returns the index
+of the first one that passes a truth test (callback).
+
+Returns `-1` if no item was found that passes the truth test.
+
+```js
+var arr = [1, { a: 1 }, 'foo', 'bar'];
+findLastIndex(arr, isString); // 3
+findLastIndex(arr, isNumber); // 0
+findLastIndex(arr, isObject); // 1
+findLastIndex(arr, isRegExp); // -1
+```
+
+`findLastndex` also supports shorthand notation:
+
+```js
+var pets = [
+    { pet: 'dog', name: 'Sam' },
+    { pet: 'dog', name: 'Maggie' }
+];
+
+findLastIndex(pets, { pet: 'dog' }); // 1
+findLastIndex(pets, { name: 'Sam' }); // 0
+```
+
+See: [find()](#find), [findIndex()](#findIndex)
+
+
+
+## flatten(arr, [level]):Array
+
+Recursively flattens an array. A new array containing all the elements is
+returned. If `level` is specified, it will only flatten up to that level.
+Note that arrays within objects will not be flattened.
+
+### Example
+
+```js
+flatten([1, [2], [3, [4, 5]]]);
+// > [1, 2, 3, 4, 5]
+flatten([1, [2], [3, [4, 5]]], 1);
+// > [1, 2, 3, [4, 5]]
+```
+
+See: [`object/flatten()`](./object.html#flatten)
+
+
+## forEach(arr, callback, [thisObj]):void
+
+Crossbrowser `Array.forEach()`.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = ['foo', 'bar', 'lorem', 'ipsum'];
+forEach(items, function(val, key, arr){
+    console.log(key +' : '+ val);
+    if (val === 'lorem') {
+        // stop iteration (break)
+        return false;
+    }
+});
+```
+
+more info at [MDN Array#forEach](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach)
+
+
+
+## groupBy(arr, [categorize=identity], [thisObj]):Object
+
+Groups array elements by the `key` returned from the `categorize` function.
+
+It will use the [function/identity](function.html#identity) as the default
+`categorize` function.
+
+```js
+var items = ['lorem', 'ipsum', 'foo', 'bar', 'baz'];
+groupBy(items, function(val) { return val.length });
+// > {'3': ['foo', 'bar', 'baz'], '5': ['lorem', 'ipsum']}
+```
+
+
+
+## indexOf(arr, item, [fromIndex]):Number
+
+Crossbrowser `Array.indexOf()`.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#indexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf)
+
+
+
+
+## indicesOf(arr, item, [fromIndex]):Number
+
+Returns an array of indices where `item` is found in the array.
+
+Like `array/indexOf` it does loop over sparse items in the array. The optional
+`fromIndex` parameter can limit the scope, the same way as it does in indexOf.
+
+```js
+var items = ['lorem', 'ipsum', 'foo', 'ipsum', 'ipsum'];
+
+indicesOf(items, 'ipsum');
+// > [1, 3, 4]
+
+indicesOf(items, 'ipsum', 1);
+// > [3, 4]
+```
+
+
+
+
+
+## insert(arr, ...items):Number
+
+Push items into array only if they aren't contained by it. Returns the new
+`length` of the array.
+
+See: [`remove()`](#remove), [`removeAll()`](#removeAll),
+[`contains()`](#contains)
+
+```js
+var arr = ['a', 'b'];
+insert(arr, 'a');       // 2 : ['a', 'b']
+insert(arr, 'c');       // 3 : ['a', 'b', 'c']
+insert(arr, 1, 2, 'b'); // 5 : ['a', 'b', 'c', 1, 2]
+```
+
+
+
+## intersection(...arrs):Array
+
+Return a new Array with elements common to all Arrays.
+
+Similar to Python set#intersection and underscore.js intersection.
+
+It will remove duplicates.
+
+See: [`difference()`](#difference), [`xor()`](#xor)
+
+```js
+var a = ['a', 'b', 1],
+    b = ['c', 1],
+    c = [1, 2, 3];
+intersection(a, b, c); // [1]
+```
+
+
+
+## invoke(arr, methodName[, ...args]):Array
+
+Call `methodName` on each item of the array passing custom arguments if needed.
+
+```js
+invoke([[3,2,1], [9,5,2]], 'sort'); // [[1,2,3], [2,5,9]]
+```
+
+
+
+## join(arr, [separator]):String
+
+Joins the strings in `arr`, inserting `separator` between each value.
+
+This ignores null values and empty strings that are in the array. `separator`
+defaults to an empty string. This will convert all non-string objects in the
+array to a string.
+
+### Example
+
+```js
+join(['a', 'b', 'c']); // 'abc'
+join(['foo', 'bar'], ', '); // 'foo, bar'
+join([null, 'foo', '', 'bar', undefined], ':'); // 'foo:bar'
+```
+
+
+## last(arr):*
+
+Returns the last element of an array without modifying the array.
+
+
+```js
+last( [1, 2, 3, 4] ) // > 4
+last( ['foo', 'bar'] ) // > 'bar'
+```
+
+
+## lastIndexOf(arr, item, [fromIndex]):Number
+
+Crossbrowser `Array.lastIndexOf()`.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#lastIndexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf)
+
+
+
+## map(arr, callback, [thisObj]]):Array
+
+Crossbrowser `Array.map()`.
+
+Creates a new array with the results of calling a provided function on every
+element in this array.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+See: [`collect()`](#collect)
+
+```js
+var nums = [1,2,3,4];
+var double = map(nums, function(val, key, arr){
+    return val * 2;
+});
+// > [2, 4, 6, 8]
+```
+
+more info at [MDN Array#map](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map)
+
+It also supports a shorthand notation which can be used to achieve same result
+as [`array/pluck`](#pluck):
+
+```js
+var src = ['lorem', 'ipsum', 'foo', 'amet'];
+// grab the "length" property of all items
+var lengths = map(src, 'length'); // [5, 5, 3, 4]
+```
+
+
+
+## max(arr, [iterator], [thisObj]):*
+
+Returns maximum value inside array or use a custom iterator to define how items
+should be compared.
+
+See: [`min()`](#min)
+
+```js
+max([10, 2, 7]); // 10
+max(['foo', 'lorem', 'amet'], function(val){
+    return val.length;
+}); // 'lorem'
+```
+
+It also supports a shorthand notation:
+
+```js
+max(['foo', 'lorem', 'amet'], 'length'); // "lorem"
+```
+
+
+
+## min(arr, [iterator], [thisObj]):*
+
+Returns minimum value inside array or use a custom iterator to define how items
+should be compared.
+
+See: [`max()`](#max)
+
+```js
+min([10, 2, 7]); // 2
+min(['foo', 'lorem', 'amet'], function(val){
+    return val.length;
+}); // 'foo'
+```
+
+It also supports a shorthand notation:
+
+```js
+min(['foo', 'lorem', 'amet'], 'length'); // "foo"
+```
+
+
+
+## pick(arr, [nItems]):*
+
+Gets random item(s) and removes it from the original array.
+
+If `nItems` is specified it will return a new Array contained the *picked*
+items otherwise it returns a single item.
+
+See: [`random/choice()`](./random.html#choice)
+
+### Example:
+
+```js
+var arr = [1, 2, 3, 4, 5, 6];
+var item1 = pick(arr); // 4
+var item2 = pick(arr); // 1
+var items = pick(arr, 2); // [5, 2]
+console.log(arr); // [3, 6]
+```
+
+
+
+## pluck(arr, propName):Array
+
+Extract a list of property values.
+
+See: [`function/prop()`](function.html#prop)
+
+```js
+var users = [{name : 'John', age: 21}, {name: 'Jane', age : 27}];
+var names = pluck(users, 'name'); // ["John", "Jane"]
+var ages = pluck(users, 'age'); // [21, 27]
+```
+
+
+
+## range([start], stop[, step]):Array
+
+Creates a new Array with all the values inside the range. Works similarly to
+Python#range or PHP#range.
+
+### Arguments
+
+ 1. `[start]` (Number) : Range start. Default is `0`.
+ 2. `stop` (Number) : Range limit.
+ 3. `[step]` (Number) : Step size. Default is `1`.
+
+### Example
+
+```js
+range(5);         // [0, 1, 2, 3, 4, 5]
+range(0, 5);      // [0, 1, 2, 3, 4, 5]
+range(0, 5, 2);   // [0, 2, 4]
+range(20, 40, 5); // [20, 25, 30, 35, 40]
+```
+
+
+
+## reduce(arr, fn):*
+
+Crossbrowser `Array.reduce()`.
+
+Apply a function against an accumulator and each value of the array (from
+left-to-right) as to reduce it to a single value.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#reduce](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduce)
+
+
+
+## reduceRight(arr, fn):*
+
+Crossbrowser `Array.reduceRight()`.
+
+Apply a function simultaneously against two values of the array (from
+right-to-left) as to reduce it to a single value.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#reduceRight](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduceRight)
+
+
+
+## reject(arr, fn, thisObj):Array
+
+Creates a new array with all the elements that do **not** pass the truth test.
+Opposite of [`filter()`](#filter).
+
+See [`filter()`](#filter)
+
+### Example
+
+```js
+var numbers = [1, 2, 3, 4, 5, 6];
+reject(numbers, function(x) { return (x % 2) !== 0; }); // [2, 4, 6]
+```
+
+It also supports a shorthand syntax:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true},
+    {name:'jane', surname:'doe', beard:false}
+];
+// reject items that matches all properties/values pairs
+reject(arr, {name:'john'});
+// > [{name:'jane', surnname:'doe', beard:false}]
+// reject items where 'beard' is a truthy value
+filter(arr, 'beard');
+// > [{name:'john', surnname:'connor', beard:false},
+//    {name:'jane', surname:'doe', beard:false}]
+```
+
+
+
+## remove(arr, item):void
+
+Remove a single item from the array.
+
+IMPORTANT: it won't remove duplicates, just a single item.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4];
+remove(foo, 2);
+console.log(foo); // [1, 3, 4]
+```
+
+
+
+## removeAll(arr, item):void
+
+Remove all instances of an item from the array.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4, 2, 2];
+removeAll(foo, 2);
+console.log(foo); // [1, 3, 4];
+```
+
+## reverse(arr):void
+
+Returns a copy of the array with all elements in reversed order.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4, 5];
+var bar = reverse(foo);
+console.log(bar); // [5, 4, 3, 2, 1];
+
+console.log(foo); // [1, 2, 3, 4, 5];
+```
+
+
+
+
+## shuffle(arr):Array
+
+Returns a new Array with items randomly sorted (shuffled). Similar to Ruby Array#shuffle.
+
+### Example
+
+```js
+var arr = ['a', 'b', 'c', 'd', 'e'];
+shuffle(arr); // ['b', 'd', 'e', 'c', 'a']
+```
+
+
+
+## slice(arr, [start], [end]):Array
+
+Returns a new array containing the items from `arr` from the start index to the
+end index.
+
+If `start` is omitted, it will start at `0`. If `end` is omitted, it will used
+the last index of the array.  If `start` or `end` is negative, it is used as an
+offset from the end of the array.
+
+It will also convert array-like objects to arrays.
+
+### Example
+
+```js
+slice([1, 2, 3, 4], 1, 2); // [2, 3]
+slice([1, 2, 3], 1); // [2, 3]
+slice([1, 2, 3]); // [1, 2, 3]
+slice({ length: 2, 0: 'a', 1: 'b' }); // ['a', 'b']
+slice([1, 2, 3], 0, -1); // [1, 2]
+slice([1, 2, 3], -2); // [2, 3]
+```
+
+
+
+## some(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.some()`.
+
+Tests whether some element in the array passes the test implemented by the provided function.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = [1, 'foo', 'bar'];
+some(items, isString);   // true
+some(items, isFunction); // false
+```
+
+more info at [MDN Array#some](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some)
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{id:1, active:true}, {id:3, active:false}, {id:8, active:false}];
+// at least one item with `id === 8`
+some(items, {id:8}); // true
+// `active` is truthy on at least one item
+some(items, 'active'); // true
+```
+
+see also: [`object/matches`](object.html#matches)
+
+
+
+## sort(arr, [compareFn]):Array
+
+Returns a sorted Array using the [Merge Sort](http://en.wikipedia.org/wiki/Merge_sort) algorithm (stable sort).
+
+The `Array.prototype.sort` browser implementations differ since the sorting algorithm isn't described in the ES spec - [in V8 it isn't stable](http://code.google.com/p/v8/issues/detail?id=90) and [on Firefox it is stable](https://bugzilla.mozilla.org/show_bug.cgi?id=224128) - so this function doesn't use the browser native implementation and is recommended in cases where a stable sort is required (items should preserve same order if already sorted).
+
+**Important:** It does logical comparisson by default (greater/less than) and
+not a string comparisson like the native `Array#sort`.
+
+### compareFn
+
+If `compareFn` is supplied elements are sorted based on the value returned by
+the `compareFn`.
+
+ - If `compareFn(a, b)` is less than `0`, sort `a` to a lower index than `b`.
+ - If `compareFn(a, b)` returns `0`, leave `a` and `b` unchanged with respect
+   to each other, but sorted with respect to all different elements.
+ - If `compareFn(a, b)` is greater than `0`, sort `b` to a lower index than
+   `a`.
+
+See: [`sortBy`](#sortBy)
+
+### Example
+
+```js
+sort([187, 23, 47, 987, 12, 59, 0]); // [0, 12, 23, 47, 59, 187, 987]
+sort(['a', 'z', 'c', 'beta', 'b']); // ['a', 'b', 'beta', 'c', 'z']
+
+// ['sit', 'amet', 'lorem', 'ipsum']
+sort(['lorem', 'ipsum', 'sit', 'amet'], function(a, b){
+    // sort by length, items with same length
+    // will keep the relative order (stable)
+    return a.length - b.length;
+});
+
+// [4, 3, 2, 1]
+sort([2, 3, 1, 4], function(a, b){
+    // reverse sort
+    return b - a;
+});
+```
+
+
+
+## sortBy(arr, callback, [context]):Array
+
+Returns an array sorted by the result of the callback.
+
+The callback is called for each item that is to be sorted, and the
+results of the callback are used to sort the array. The callback
+is called with the item as the first parameter, optionally with
+the provided context.
+
+It also supports a shorthand notation which can be used to sort by a property
+name.
+
+See: [`sort`](#sort)
+
+```js
+// Returns [{ a: 1 }, { a: 2 }, { a: 3 }]
+sortBy([{ a: 1 }, { a: 3 }, { a: 2 }],
+    function(item) { return item.a; });
+
+// Same as above, using shorthand notation
+sortBy([{ a: 1 }, { a: 3 }, { a: 2 }], 'a');
+```
+
+
+
+## split(arr, [segments]):Array
+
+Splits an array into a fixed number of segments.
+
+The number of segments is specified by `segments` and defaults to 2. If the
+array cannot be evenly split, the first segments will contain the extra items.
+If `arr` is empty, an empty array is returned. If `arr.length` is less than
+`segments`, then the resulting array will have `arr.length` number of
+single-element arrays.
+
+### Example
+```js
+split([1, 2, 3, 4, 5], 3) // [ [1, 2], [3, 4], [5] ]
+split([1, 2, 3, 4, 5]) // [ [1, 2, 3], [4, 5] ]
+split([]) // []
+split([1, 2], 3) // [ [1], [2] ]
+```
+
+
+
+## take(times, callback, [thisObj]):Array
+
+Builds a new array based on the returned values from the given `callback`.
+
+```js
+take(4, function(i, total) {
+    return i / total;
+});
+// > [0, 0.25, 0.5, 0.75]
+```
+
+see: [function/times](../function.html#times)
+
+
+
+## toLookup(arr, key):Object
+
+Create an object that indexes the items in the array by a key. If `key` is a function, the key for each value in the resulting object will be the result of calling the function with the value as an argument. Otherwise `key` specifies the property on each value to use as the key.
+
+### Example
+
+```js
+var foo = [{ name: 'a', thing: 1 }, { name: 'b', thing: 2 }];
+// { a: { name: 'a', thing: 1 }, b: { name: 'b', thing: 2 } }
+toLookup(foo, 'name');
+// same as above
+toLookup(foo, function (value) { return value.name; });
+```
+
+
+
+## union(...arrs):Array
+
+Concat multiple arrays removing duplicates.
+
+```js
+var a = ['a', 'b'],
+    b = ['c', 'a'],
+    c = [1, 'b', 2, 3, 'a'];
+
+//note that unique remove from begin to end
+union(a, b, c); // ['c', 1, 'b', 2, 3, 'a']
+```
+
+
+
+## unique(arr, [compare]):Array
+
+Return a new Array of unique items.
+
+**IMPORTANT:** duplicates are removed starting from begining of array.
+
+```js
+var arr = [1, 2, 3, 4, 2, 2, 4];
+var foo = unique(arr);
+console.log(foo);
+// > [1, 3, 2, 4];
+
+// you also have the option to set a custom compare function
+var users = [{name: 'john'}, {name: 'paul'}, {name: 'john'}];
+var uniqueNames = unique(arr, function(a, b){
+    return a.name === b.name;
+});
+console.log(uniqueNames);
+// > [{name: 'paul'}, {name: 'john'}]
+```
+
+
+
+## xor(arr1, arr2):Array
+
+Exclusive OR. Returns items that are present in a single array.
+
+Works like [Python set#symmetric_difference](http://docs.python.org/library/stdtypes.html#set.symmetric_difference) renamed for brevity.
+
+It will remove duplicates.
+
+See: [`difference()`](#difference), [`intersection()`](#intersection)
+
+```js
+var a = ['a', 'b', 1];
+var b = ['c', 1];
+xor(a, b); // ['a', 'b', 'c']
+```
+
+
+
+## zip(...arrs):Array
+
+Groups the elements of each array at their corresponding indexes.
+
+Useful for separate data sources that are coordinated through matching array
+indexes. For a matrix of nested arrays, `zip.apply(...)` can transpose the
+matrix in a similar fashion.
+
+```js
+// [['moe', 30, true], ['larry', 40, false], ['curly', 50, false]]
+zip(['moe', 'larry', 'curly'], [30, 40, 50], [true, false, false]);
+```
+
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/mout/doc/function.md b/wrt/build/node_modules/mout/doc/function.md
new file mode 100644 (file)
index 0000000..1425cb3
--- /dev/null
@@ -0,0 +1,310 @@
+# function #
+
+Function*(al)* utilities.
+
+## after(fn, n):Function
+
+This creates a function that will only call `fn` if it was called `n` or more times.
+
+
+```js
+function onLoaded() {
+    console.log('all images loaded');
+}
+
+var imagePaths = ['1.jpg', '2.jpg', '3.jpg'];
+var callback = after(onLoaded, imagePaths.length);
+
+forEach(imagePaths, function(path) {
+    asyncLoad(path, callback);
+});
+```
+
+## awaitDelay(fn, delay):Function
+
+Returns a function that ensures that `fn` is only called *after* `delay`
+milliseconds have elapsed. When the returned function is called before the
+delay has elapsed, it will wait until the delay has elapsed and then call `fn`.
+When the returned function is called after the delay has elapsed, it will call
+`fn` after the next "tick" (it will always be called asynchronously). The
+context and arguments that the returned function is called in are applied to
+`fn`.
+
+In the below example `onLoaded` will not be executed before a 1000 millisecond
+delay. Even if `loadImages` loads and calls `callback` earlier.  However, say
+the images take 1500 milliseconds to load, it will trigger `onLoaded`
+immediately.
+
+```js
+var callback = awaitDelay(onLoaded, 1000);
+loadImages(callback);
+function onLoaded(){
+    console.log('loaded');
+}
+```
+
+You can also cancel de delayed call by simply using the native `clearTimeout`
+method (like a regular `setTimeout` call).
+
+```js
+var timeoutId = callback();
+// onLoaded won't be called since it was canceled before the 1000ms delay
+clearTimeout(timeoutId);
+```
+
+### Arguments:
+
+ 1. `fn` (Function)    : Target Function
+ 2. `delay` (Number)   : Delay of execution in milliseconds
+
+See: [`debounce()`](#debounce)
+
+
+
+## bind(fn, context, [...args]):Function
+
+Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
+
+### Arguments
+
+ 1. `fn` (Function)    : Target Function
+ 2. `context` (Object) : Execution context (object used as `this`)
+ 3. `[...args]` (*)    : Arguments (0...n arguments)
+
+See: [`partial()`](#partial), [object/bindAll](./object.html#bindAll)
+
+
+
+## compose(...fn):Function
+
+Returns the composition of a list of functions, where each function consumes
+the return value of the function that follows. In math terms, composing the
+functions `f()`, `g()`, and `h()` produces `f(g(h()))`.
+
+```js
+function add2(x) { return x + 2 }
+function multi2(x) { return x * 2 }
+map([1, 2, 3], compose(add2, multi2)); // [4, 6, 8]
+
+//same as
+map([1, 2, 3], function(x){
+    return add2( multi2(x) );
+});
+```
+
+
+
+## constant(value):Function
+
+Returns a new function that will always return `value` when called.
+
+```js
+var f = constant('foo');
+f(); // 'foo'
+
+// Provided arguments are ignored; value is always returned
+f(1); // 'foo'
+
+f = constant({ foo: 'bar' });
+f(); // { foo: 'bar' }
+```
+
+
+
+## debounce(fn, delay[, isAsap]):Function
+
+Creates a function that will delay the execution of `fn` until after `delay`
+milliseconds have elapsed since the last time it was invoked.
+
+Subsequent calls to the debounced function will return the result of the last
+`fn` call.
+
+```js
+// sometimes less is more
+var lazyRedraw = debounce(redraw, 300);
+foo.on.resize.add(lazyRedraw);
+```
+
+In this visualization, `|` is a debounced-function call and `X` is the actual
+callback execution:
+
+    Default
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+                             X                                 X
+
+    Debounced with `isAsap == true`:
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+    X                                 X
+
+You also have the option to cancel the debounced call if it didn't happen yet:
+
+```js
+lazyRedraw();
+// lazyRedraw won't be called since `cancel` was called before the `delay`
+lazyRedraw.cancel();
+```
+
+See: [`throttle()`](#throttle)
+
+
+## func(name):Function
+
+Returns a function that calls a method with given `name` on supplied object.
+Useful for iteration methods like `array/map` and `array/forEach`.
+
+See: [`prop()`](#prop)
+
+```js
+// will call the method `getName()` for each `user`
+var names = map(users, func('getName'));
+```
+
+
+
+## identity(val):*
+
+Returns the first argument provided to it.
+
+```js
+identity(3);     // 3
+identity(1,2,3); // 1
+identity('foo'); // "foo"
+```
+
+
+
+## partial(fn, [...args]):Function
+
+Return a partially applied function supplying default arguments.
+
+This method is similar to [`bind`](#bind), except it does not alter the this
+binding.
+
+### Arguments
+
+ 1. `fn` (Function)    : Target Function
+ 2. `[...args]` (*)    : Arguments (0...n arguments)
+
+See: [`bind()`](#bind)
+
+```js
+function add(a, b){ return a + b }
+var add10 = partial(add, 10);
+console.log( add10(2) ); // 12
+```
+
+
+
+## prop(name):Function
+
+Returns a function that gets a property with given `name` from supplied object.
+Useful for using in conjunction with `array/map` and/or for creating getters.
+
+See: [`array/pluck()`](array.html#pluck)
+
+```js
+var users = [{name:"John", age:21}, {name:"Jane", age:25}];
+// ["John", "Jane"]
+var names = map(users, prop('name'));
+```
+
+
+
+## series(...fn):Function
+
+Returns a function that will execute all the supplied functions in order and
+passing the same parameters to all of them. Useful for combining multiple
+`array/forEach` into a single one and/or for debugging.
+
+```js
+// call `console.log()` and `doStuff()` for each item item in the array
+forEach(arr, series(console.log, doStuff));
+```
+
+
+
+## throttle(fn, interval):Function
+
+Creates a function that, when executed, will only call the `fn` function at
+most once per every `interval` milliseconds.
+
+If the throttled function is invoked more than once during the wait timeout,
+`fn` will also be called on the trailing edge of the timeout.
+
+Subsequent calls to the throttled function will return the result of the last
+`fn` call.
+
+```js
+// sometimes less is more
+var lazyRedraw = throttle(redraw, 300);
+foo.on.resize.add(lazyRedraw);
+```
+
+In this visualization, `|` is a throttled-function call and `X` is the actual
+`fn` execution:
+
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+    X    X    X    X    X    X        X    X    X    X    X    X
+
+You also have the option to cancel the throttled call if it didn't happen yet:
+
+```js
+lazyRedraw();
+setTimeout(function(){
+    lazyRedraw();
+    // lazyRedraw will be called only once since `cancel` was called before
+    // the `interval` for 2nd call completed
+    lazyRedraw.cancel();
+}, 250);
+```
+
+See: [`debounce()`](#debounce)
+
+
+## timeout(fn, millis, context, [...args]):Number
+
+Functions as a wrapper for `setTimeout`. Calls a the function `fn` after a given delay `millis` in milliseconds.
+The function is called within the specified context. The return value can be used to clear the timeout using `clearTimeout`.
+
+```js
+var id = timeout(doStuff, 300, this);
+
+clearTimeout(id);
+```
+
+## times(n, callback, [context]):void
+
+Iterates over a callback `n` times.
+
+### Arguments
+
+ 1. `n` (Number)           : Number of iterations
+ 2. `callback` (Function)  : Closure executed for every iteration
+ 3. `context` (Object)     : Execution context (object used as `this`)
+
+```js
+var output = '';
+times(5, function(i) {
+    output += i.toString();
+});
+// output: 01234
+```
+
+## wrap(fn, wrapper):Function
+
+Wraps the first `fn` inside of the `wrapper` function, passing it as the first argument. This allows the `wrapper` to execute code before and after the `fn` runs, adjust the arguments, and execute it conditionally.
+
+```js
+var hello = function(name) { return "hello: " + name; };
+hello = wrap(hello, function(func) {
+  return "before, " + func("moe") + ", after";
+});
+hello();
+// output: 'before, hello: moe, after'
+```
+
+See: [`partial()`](#partial)
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/mout/doc/math.md b/wrt/build/node_modules/mout/doc/math.md
new file mode 100644 (file)
index 0000000..d9d2410
--- /dev/null
@@ -0,0 +1,316 @@
+# math #
+
+Math utilities.
+
+
+## ceil(val[, step]):Number
+
+Round value up to full steps. Similar to `Math.ceil()` but can round value
+to an arbitrary *radix*.
+
+    ceil(7.2);   // 8
+    ceil(7.8);   // 8
+    ceil(7, 5);  // 10
+    ceil(11, 5); // 15
+    ceil(15, 5); // 15
+
+### Common use cases
+
+Round values by increments of 5/10/1000/etc.
+
+See: [`round()`](#round), [`floor()`](#floor), [`countSteps()`](#countSteps)
+
+
+
+## clamp(val, min, max):Number
+
+Clamps value inside range.
+
+`clamp()` is extremely useful in cases where you need to limit a value inside
+a certain range. So instead of doing a complex `if/else` to filter/process the
+value you can restrict it to always be inside the desired range:
+
+    clamp(-5, 0, 10); // 0
+    clamp(7, 1, 10);  // 7
+    clamp(8, 1, 10);  // 8
+    clamp(10, 1, 10); // 10
+    clamp(11, 1, 10); // 10
+
+If the value is smaller than `min` it returns the `min`, if `val` is higher
+than `max` it returns `max`.
+
+### Common use cases
+
+Any situation where you need to limit a number inside a range like: slider
+position, image galleries <small>(so user can't skip to an image that doesn't
+exist)</small>, drag and drop, scroll boundaries, etc.
+
+See: [`loop()`](#loop)
+
+
+
+
+## countSteps(val, step[, overflow]):Number
+
+Count number of full steps.
+
+### Arguments:
+
+ 1. `val` (Number)        : Value.
+ 2. `step` (Number)       : Step size.
+ 3. `[overflow]` (Number) : Maximum number of steps, nSteps will loop if
+`>=` than overflow.
+
+
+Count steps is very useful for cases where you need to know how many "full
+steps" the number *completed*. Think of it as a division that only returns
+integers and ignore remainders.
+
+    countSteps(3,  5);    // 0
+    countSteps(6,  5);    // 1
+    countSteps(12, 5);    // 2
+    countSteps(18, 5);    // 3
+    countSteps(21, 5);    // 4
+
+You can also set an `overflow` which will reset the *counter* before reaching
+this number.
+
+    countSteps(3, 5, 3);  // 0
+    countSteps(6, 5, 3);  // 1
+    countSteps(12, 5, 3); // 2
+    countSteps(18, 5, 3); // 0
+    countSteps(21, 5, 3); // 1
+
+### Common use cases
+
+#### How many items fit inside an area:
+
+    var containerWidth = 100;
+    var itemWidth = 8;
+    var howManyFit = countSteps(containerWidth, itemWidth); // 12
+
+#### Split value into different scales or convert value from one scale to another
+
+From [mout/time/parseMs](time.html#parseMs):
+
+    function parseMs(ms){
+        return {
+            milliseconds : countSteps(ms, 1, 1000),
+            seconds      : countSteps(ms, 1000, 60),
+            minutes      : countSteps(ms, 60000, 60),
+            hours        : countSteps(ms, 3600000, 24),
+            days         : countSteps(ms, 86400000)
+        };
+    }
+
+    // {days:27, hours:4, minutes:26, seconds:5, milliseconds:454}
+    parseMs(2348765454);
+
+
+
+## floor(val[, step]):Number
+
+Round value down to full steps. Similar to `Math.floor()` but can round value
+to an arbitrary *radix*. (formerly `snap`)
+
+    floor(7.2);   // 7
+    floor(7.8);   // 7
+    floor(7, 5);  // 5
+    floor(11, 5); // 10
+    floor(15, 5); // 15
+
+### Common use cases
+
+Round values by increments of 5/10/1000/etc.
+
+See: [`round()`](#round), [`ceil()`](#ceil), [`countSteps()`](#countSteps)
+
+
+
+## inRange(val, min, max[, threshold]):Boolean
+
+Checks if value is inside the range.
+
+    inRange(-6, 1, 10);    // false
+    inRange( 5, 1, 10);    // true
+    inRange(12, 1, 10);    // false
+
+The threshold can be useful when you want granular control of what should match
+and/or the precision could change at runtime or by some configuration option,
+avoids the clutter of adding/subtracting the `threshold` from `mix` and `max`.
+
+    inRange(12, 1, 10, 2); // true
+    inRange(13, 1, 10, 2); // false
+
+### Common use cases
+
+Anything that needs to check if value is inside a range, be it collision
+detection, limiting interaction by mouse position, ignoring parts of the logic
+that shouldn't happen if value isn't valid, simplify `if/else` conditions,
+making code more readable, etc...
+
+
+
+
+## isNear(val, target, threshold):Boolean
+
+Check if value is close to target.
+
+Similar to `inRange()` but used to check if value is close to a certain value
+or match the desired value. Basically to simplify `if/else` conditions and to
+make code clearer.
+
+    isNear( 10.2, 10, 0.5); // true
+    isNear( 10.5, 10, 0.5); // true
+    isNear(10.51, 10, 0.5); // false
+
+### Common use cases
+
+Games where a certain action should happen if an *actor* is close to a target,
+gravity fields, any numeric check that has some tolerance.
+
+
+
+
+## lerp(ratio, start, end):Number
+
+Linear interpolation.
+
+    lerp(0.5, 0, 10);  // 5
+    lerp(0.75, 0, 10); // 7.5
+
+### Common use cases
+
+Linear interpolation is commonly used to create animations of elements moving
+from one point to another, where you simply update the current ratio (which in
+this case represents time) and get back the position of the element at that
+"frame".
+
+The core idea of `lerp` is that you are using a number that goes from `0` to
+`1` to specify a ratio inside that scale. This concept can be applied to
+convert numbers from different scales easily.
+
+See: [`map()`](#map), [`norm()`](#norm)
+
+
+
+
+## loop(val, min, max):Number
+
+Loops value inside range. Will return `min` if `val > max` and `max` if `val
+< min`, otherwise it returns `val`.
+
+    loop(-1, 0, 10); // 10
+    loop( 1, 0, 10); // 1
+    loop( 5, 0, 10); // 5
+    loop( 9, 0, 10); // 9
+    loop(10, 0, 10); // 10
+    loop(11, 0, 10); // 0
+
+Similar to [`clamp()`](#clamp) but *loops* the value inside the range when an
+overflow occurs.
+
+### Common use cases
+
+Image galleries, infinite scroll, any kind of logic that requires that the
+first item should be displayed after the last one or the last one should be
+displayed after first if going on the opposite direction.
+
+See: [`clamp()`](#clamp)
+
+
+
+
+## map(val, min1, max1, min2, max2):Number
+
+Maps a number from one scale to another.
+
+    map(3, 0, 4, -1, 1)   // 0.5
+    map(3, 0, 10, 0, 100) // 30
+
+### Common use cases
+
+Very useful to convert values from/to multiple scales.
+
+Let's suppose we have a slider that needs to go from `2000` to `5000` and that slider
+has `300px` of width, here is how we would translate the knob position into the
+current value:
+
+    var knobX = 123;
+    var sliderWid = 300;
+    var minVal = 2000;
+    var maxVal = 5000;
+
+    var curVal = map(knobX, 0, sliderWid, minVal, maxVal); // 3230
+
+See: [`lerp()`](#lerp), [`norm()`](#norm)
+
+
+
+
+## norm(val, min, max):Number
+
+Gets normalized ratio of value inside range.
+
+If `val < min` or `val > max` it will throw a `RangeError` since we can't
+normalize the value.
+
+    norm(50, 0, 100); // 0.5
+    norm(75, 0, 100); // 0.75
+    norm(100, 0, 100); // 1
+    norm(-50, 0, 100); // RangeError: value (-50) must be between 0 and 100
+
+### Common use cases
+
+Convert values between scales, used by [`map()`](#map) internally. Direct
+opposite of [`lerp()`](#lerp).
+
+See: [`lerp()`](#lerp), [`map()`](#map)
+
+
+## overflow(val[, min], max):Number
+
+Wraps number within [min, max). When no `min` is given, the value `0` is assumed.
+A number larger or equal `max` loops around and starts over at `min`. For positive numbers larger
+or equal max this method behaves identical to the modulo operator.
+Numbers smaller than min loop around and start over at `max`.
+
+    overflow(13, 5, 10); // 8
+    overflow(3, 5, 10); // 8
+    overflow(23, 5); // 3
+    overflow(-10, -7, -1); // -4
+
+See: [`loop()`](#loop)
+
+
+## round(val[, step]):Number
+
+Round value to full steps. Similar to `Math.round()` but allow setting an
+arbitrary *radix*.
+
+    // default
+    round(0.22);      // 0
+    round(0.49);      // 0
+    round(0.51);      // 1
+
+    // custom radix
+    round(0.22, 0.5); // 0
+    round(0.49, 0.5); // 0.5
+    round(0.51, 0.5); // 0.5
+    round(0.74, 0.5); // 0.5
+    round(0.75, 0.5); // 1
+    round(1.24, 0.5); // 1
+    round(1.25, 0.5); // 1.5
+    round(1.74, 0.5); // 1.5
+
+### Common use cases
+
+Round values by increments of 0.5/5/10/1000/etc.
+
+See: [`floor()`](#floor), [`ceil()`](#ceil), [`countSteps()`](#countSteps)
+
+
+-------------------------------------------------------------------------------
+
+For more usage more info check the specs and source code.
+
diff --git a/wrt/build/node_modules/mout/doc/number.md b/wrt/build/node_modules/mout/doc/number.md
new file mode 100644 (file)
index 0000000..78e9c07
--- /dev/null
@@ -0,0 +1,279 @@
+# number #
+
+Number utilities.
+
+
+## abbreviate(val[, nDecimalDigits, dictionary]):String
+
+Abbreviate number to thousands (K), millions (M) or billions (B).
+
+The default value for `nDecimalDigits` is `1`.
+
+### Example
+
+    abbreviate(123456);     // "123.5K"
+    abbreviate(12345678);   // "12.3M"
+    abbreviate(1234567890); // "1.2B"
+
+You can set the amount of decimal digits (default is `1`):
+
+    abbreviate(543);    // "0.5K"
+    abbreviate(543, 1); // "0.5K"
+    abbreviate(543, 2); // "0.54K"
+    abbreviate(543, 3); // "0.543K"
+
+You can customize the abbreviation by passing a custom "dictionary":
+
+    var _ptbrDict = {
+        thousand: ' mil',
+        million: ' Mi',
+        billion: ' Bi'
+    };
+    function customAbbr(val) {
+        return abbreviate(val, 1, _ptbrDict);
+    }
+
+    customAbbr(123456); // "123.5 mil"
+    customAbbr(12345678); // "12.3 Mi"
+    customAbbr(1234567890); // "1.2 Bi"
+
+
+
+## currencyFormat(val[, nDecimalDigits, decimalSeparator, thousandsSeparator]):String
+
+Format a number as currency.
+
+### Example:
+
+    currencyFormat(1000);              // "1,000.00"
+    currencyFormat(1000, 1);           // "1,000.0"
+    currencyFormat(1000, 2, ',', '.'); // "1.000,00"
+
+
+
+## enforcePrecision(val, nDecimalDigits):Number
+
+Enforce a specific amount of decimal digits and also fix floating point
+rounding issues.
+
+### Example:
+
+```js
+enforcePrecision(0.615, 2); // 0.62
+enforcePrecision(0.625, 2); // 0.63
+//floating point rounding "error" (rounds to odd number)
++(0.615).toFixed(2);        // 0.61
++(0.625).toFixed(2);        // 0.63
+```
+
+
+## isNaN(val):Boolean
+
+ES6 `Number.isNaN()`, checks if supplied value is `NaN`.
+
+```js
+// only returns `true` for `NaN`
+isNaN(NaN);    // true
+isNaN(0 / 0);  // true
+
+// everything else is `false`
+isNaN(true);   // false
+isNaN(123);    // false
+isNaN('asd');  // false
+isNaN('NaN');  // false
+```
+
+
+## MAX_INT:Number
+
+Maximum 32-bit signed integer value. `Math.pow(2, 31) - 1`
+
+### Example:
+
+```js
+console.log( MAX_INT ); // 2147483647
+```
+
+
+## MAX_SAFE_INTEGER:Number
+
+Maximum safe integer. `Math.pow(2,53) − 1`
+
+
+## MAX_UINT:Number
+
+Maximum 32-bit unsigned integer value. `Math.pow(2, 32) - 1`
+
+### Example:
+
+```js
+console.log( MAX_UINT ); // 4294967295
+```
+
+
+## MIN_INT:Number
+
+Minimum 32-bit signed integer value. `Math.pow(2, 31) * -1`.
+
+### Example:
+
+```js
+console.log( MIN_INT ); // -2147483648
+```
+
+
+## nth(n):String
+
+Returns the "nth" of number. (`"st"`, `"nd"`, `"rd"`, `"th"`)
+
+```js
+nth(1); // "st"
+nth(2); // "nd"
+nth(12); // "th"
+nth(22); // "nd"
+nth(23); // "rd"
+nth(34); // "th"
+```
+
+See: [`ordinal()`](#ordinal)
+
+
+
+## ordinal(n):String
+
+Converts number into ordinal form (1st, 2nd, 3rd, 4th, ...)
+
+```js
+ordinal(1); // "1st"
+ordinal(2); // "2nd"
+ordinal(3); // "3rd"
+ordinal(14); // "14th"
+ordinal(21); // "21st"
+```
+
+See: [`nth()`](#nth)
+
+
+
+## pad(n, minLength[, char]):String
+
+Add padding zeros if `n.length` < `minLength`.
+
+### Example:
+
+```js
+pad(1, 5);      // "00001"
+pad(12, 5);     // "00012"
+pad(123, 5);    // "00123"
+pad(1234, 5);   // "01234"
+pad(12345, 5);  // "12345"
+pad(123456, 5); // "123456"
+
+// you can also specify the "char" used for padding
+pad(12, 5, '_'); // "___12"
+```
+
+see: [string/lpad](./string.html#lpad)
+
+
+
+## rol(val, shift):Number
+
+Bitwise circular shift left.
+
+More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
+
+
+
+## ror(val, shift):Number
+
+Bitwise circular shift right.
+
+More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
+
+
+
+## sign(val):Number
+
+Returns `-1` if value is negative, `0` if the value is `0` and `1` if value is positive. Useful for
+multiplications.
+
+```js
+sign(-123); // -1
+sign(123);  // 1
+sign(0);    // 0
+```
+
+
+
+## toInt(val):Number
+
+"Convert" value into an 32-bit integer.  Works like `Math.floor` if `val > 0` and
+`Math.ceil` if `val < 0`.
+
+**IMPORTANT:** val will wrap at [number/MIN_INT](#MIN_INT) and
+[number/MAX_INT](#MAX_INT).
+
+Created because most people don't know bitwise operations and also because this
+feature is commonly needed.
+
+[Perf tests](http://jsperf.com/vs-vs-parseint-bitwise-operators/7)
+
+### Example:
+
+```js
+toInt(1.25);   // 1
+toInt(0.75);   // 0
+toInt(-0.55);  // 0
+toInt(-5.0001) // -5
+```
+
+
+
+## toUInt(val):Number
+
+"Convert" value into an 32-bit unsigned integer.
+
+Works like AS3#uint().
+
+**IMPORTANT:** val will wrap at 2^32.
+
+### Example:
+
+```js
+toUInt(1.25);                 // 1
+toUInt(0.75);                 // 0
+toUInt(-0.55);                // 0
+toUInt(-5.0001);              // 4294967291
+toUInt(Math.pow(2,32) - 0.5); // 4294967295
+toUInt(Math.pow(2,32) + 0.5); // 0
+```
+
+
+## toUInt31(val):Number
+
+"Convert" value into an 31-bit unsigned integer (since 1 bit is used for sign).
+
+Useful since all bitwise operators besides `>>>` treat numbers as signed
+integers.
+
+**IMPORTANT:** val will wrap at 2^31 and negative numbers will be treated as
+`zero`.
+
+### Example:
+
+```js
+toUInt31(1.25);                 // 1
+toUInt31(0.75);                 // 0
+toUInt31(-0.55);                // 0
+toUInt31(-5.0001);              // 0
+toUInt31(Math.pow(2,31) - 0.5); // 21474836470
+toUInt31(Math.pow(2,31) + 0.5); // 0
+```
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/mout/doc/object.md b/wrt/build/node_modules/mout/doc/object.md
new file mode 100644 (file)
index 0000000..02bf4e6
--- /dev/null
@@ -0,0 +1,811 @@
+# object #
+
+Object utilities.
+
+
+
+## bindAll(obj, [...methodNames]):void
+
+Bind methods of the target object to always execute on its own context
+(ovewritting the original function).
+
+See: [function/bind](./function.html#bind)
+
+```js
+var view = {
+    name: 'Lorem Ipsum',
+    logNameOnClick: function() {
+        console.log(this.name);
+    }
+};
+
+// binds all methods by default
+bindAll(view);
+jQuery('#docs').on('click', view.logNameOnClick);
+```
+
+You can also specify the list of methods that you want to bind (in case you
+just want to bind a few of them).
+
+```js
+// only the listed methods will be bound to `obj` context
+bindAll(obj, 'logNameOnClick', 'doAwesomeStuffOnDrag');
+```
+
+
+
+## contains(obj, value):Boolean
+
+Similar to [Array/contains](array.html#contains). Checks if Object contains
+value.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 'bar'
+};
+contains(obj, 2);      // true
+contains(obj, 'foo');  // false
+```
+
+
+
+## deepFillIn(target, ...objects):Object
+
+Fill missing properties recursively.
+
+It's different from `deepMixIn` since it won't override any existing property.
+It's also different from `merge` since it won't clone child objects during the
+process.
+
+It returns the target object and mutates it in place.
+
+See: [`fillIn()`](#fillIn), [`deepMixIn()`](#deepMixIn), [`merge()`](#merge)
+
+```js
+var base = {
+    foo : {
+        bar : 123
+    },
+    lorem : 'ipsum'
+};
+var options = deepFillIn({foo : { baz : 45 }, lorem : 'amet'}, base);
+// > {foo: {bar:123, baz : 45}, lorem : 'amet'}
+```
+
+
+
+## deepMatches(target, pattern):Boolean
+
+Recursively checks if object contains all properties/value pairs. When both
+the target and pattern values are arrays, it checks that the target value
+contain matches for all the items in the pattern array (independent of order).
+
+```js
+var john = {
+    name: 'John',
+    age: 22,
+    pets: [
+        { type: 'cat', name: 'Grumpy Cat' },
+        { type: 'dog', name: 'Hawk' }
+    ]
+};
+
+deepMatches(john, { name: 'John' }); // true
+deepMatches(john, { age: 21 }); // false
+deepMatches(john, { pets: [ { type: 'cat' } ] }); // true
+deepMatches(john, { pets: [ { name: 'Hawk' } ] }); // true
+deepMatches(john, { pets: [ { name: 'Hairball' } ] }); // false
+```
+
+See [`matches()`](#matches)
+
+
+
+## deepMixIn(target, ...objects):Object
+
+Mixes objects into the target object, recursively mixing existing child objects
+as well.
+
+It will only recursively mix objects if both (existing and new) values are
+plain objects.
+
+Returns the target object. Like [`merge()`](#merge), but mutates the target
+object, and does not clone child objects.
+
+```js
+var target = {
+    foo: {
+        name: "foo",
+        id: 1
+    }
+};
+
+deepMixIn(target, { foo: { id: 2 } });
+console.log(target); // { foo: { name: "foo", id: 2 } }
+```
+
+See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
+
+
+
+## equals(a, b, [callback]):Boolean
+
+Tests whether two objects contain the same keys and values.
+
+`callback` specifies the equality comparison function used to compare the
+values. It defaults to using [lang/is](lang.html#is).
+
+It will only check the keys and values contained by the objects; it will not
+check the objects' prototypes. If either of the values are not objects, they
+will be compared using the `callback` function.
+
+```js
+equals({}, {}); // true
+equals({ a: 1 }, { a: 1 }); // true
+equals({ a: 1 }, { a: 2 }); // false
+equals({ a: 1, b: 2 }, { a: 1 }); // false
+equals({ a: 1 }, { a: 1, b: 2 }); // false
+equals(null, null); // true
+equals(null, {}); // false
+equals({ a: 1 }, { a: '1' }, function(a, b) { return a == b; }); // true
+```
+
+See: [array/equals](array.html#equals), [lang/deepEquals](lang.html#deepEquals)
+
+
+## every(obj, callback, [thisObj]):Boolean
+
+Similar to [Array/every](array.html#every). Tests whether all properties in the
+object pass the test implemented by the provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+every(obj, isNumber); // false
+```
+
+
+
+## fillIn(obj, ...default):Object
+
+Fill in missing properties in object with values from the *defaults* objects.
+
+    var base = {
+        foo : 'bar',
+        num : 123
+    };
+
+    fillIn({foo:'ipsum'}, base); // {foo:'ipsum', num:123}
+
+PS: it allows merging multiple objects at once, the first ones will take
+precedence.
+
+See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
+
+
+
+## filter(obj, callback, [thisObj])
+
+Returns a new object containing all properties where `callback` returns true,
+similar to Array/filter. It does not use properties from the object's
+prototype.
+
+Callback receives the same arguments as `forOwn()`.
+
+See: [`forOwn()`](#forOwn), [`forIn()`](#forIn), [`pick()`](#pick)
+
+```js
+var obj = {
+    foo: 'value',
+    bar: 'bar value'
+};
+
+// returns { bar: 'bar value' }
+filter(obj, function(v) { return v.length > 5; });
+
+// returns { foo: 'value' }
+filter(obj, function(v, k) { return k === 'foo'; });
+```
+
+
+
+## find(obj, callback, [thisObj])
+
+Loops through all the properties in the Object and returns the first one that
+passes a truth test (callback), similar to [Array/find](array.html#find).
+Unlike Array/find, order of iteration is not guaranteed.
+
+```js
+var obj = {
+    a: 'foo',
+    b: 12
+};
+
+find(obj, isString); // 'foo'
+find(obj, isNumber); // 12
+```
+
+
+
+## flatten(object, [level]):Object
+
+Recursively flattens an object. A new object containing all the values is
+returned. If `level` is specified, it will only flatten up to that level.
+Note that objects within arrays will not be flattened.
+
+### Example
+
+```js
+flatten({ a: 1, b: { c: 2, d: { e: 3 } } });
+// > { a: 1, 'b.c': 2, 'b.d.e': 3 }
+flatten({ a: 1, b: { c: 2, d: { e: 3 } } }, 1);
+// > { a: 1, 'b.c': 2, 'b.d': { e: 3 } }
+```
+
+See: [`array/flatten()`](./array.html#flatten)
+
+
+## forIn(obj, callback[, thisObj])
+
+Iterate over all properties of an Object, similar to
+[Array/forEach](array.html#forEach).
+
+It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
+It **will** iterate over inherited (enumerable) properties from the prototype.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys), [`values()`](#values)
+
+### Callback arguments
+
+Callback will receive the following arguments:
+
+ 1. Property Value (*)
+ 2. Key name (String)
+ 3. Target object (Object)
+
+### Example
+
+```js
+function Foo(){
+    this.foo = 1;
+    this.bar = 2;
+}
+
+Foo.prototype.lorem = 4;
+
+var obj = new Foo();
+
+var result = 0;
+var keys = [];
+
+forIn(obj, function(val, key, o){
+    result += val;
+    keys.push(key);
+});
+
+console.log(result); // 7
+console.log(keys);   // ['foo', 'bar', 'lorem']
+```
+
+
+
+## forOwn(obj, callback[, thisObj])
+
+Iterate over all own properties from an Object, similar to
+[Array/forEach](array.html#forEach).
+
+It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
+Notice that it **won't** iterate over properties from the prototype.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+See: [`forIn()`](#forIn), [`keys()`](#keys), [`values()`](#values)
+
+### Callback arguments
+
+Callback will receive the following arguments:
+
+ 1. Property Value (*)
+ 2. Key name (String)
+ 3. Target object (Object)
+
+### Example
+
+```js
+function Foo(){
+    this.foo = 1;
+    this.bar = 2;
+}
+
+// will be ignored
+Foo.prototype.lorem = 4;
+
+var obj = new Foo();
+
+var result = 0;
+var keys = [];
+
+forOwn(obj, function(val, key, o){
+    result += val;
+    keys.push(key);
+});
+
+console.log(result); // 3
+console.log(keys);   // ['foo', 'bar']
+```
+
+
+
+## functions(obj):Array
+
+Returns a sorted list of all enumerable properties that have function values
+(including inherited properties).
+
+```js
+var obj = {
+    foo : function(){},
+    bar : 'baz'
+};
+functions(obj); // ['foo']
+```
+
+
+
+## get(obj, propName):*
+
+Returns nested property value. Will return `undefined` if property doesn't
+exist.
+
+See: [`set()`](#set), [`namespace()`](#namespace), [`has()`](#has)
+
+```js
+var lorem = {
+        ipsum : {
+            dolor : {
+                sit : 'amet'
+            }
+        }
+    };
+
+get(lorem, 'ipsum.dolor.sit'); // "amet"
+get(lorem, 'foo.bar');         // undefined
+```
+
+
+
+## has(obj, propName):Boolean
+
+Checks if object contains a child property. Useful for cases where you need to
+check if an object contain a *nested* property. It will get properties
+inherited by the prototype.
+
+see: [`hasOwn()`](#hasOwn), [`get()`](#get)
+
+```js
+var a = {
+        b : {
+            c : 123
+        }
+    };
+
+has(a, 'b.c');   // true
+has(a, 'foo.c'); // false
+```
+
+### Common use case
+
+```js
+if( has(a, 'foo.c') ){ // false
+    // ...
+}
+
+if( a.foo.c ){ // ReferenceError: `foo` is not defined
+    // ...
+}
+```
+
+
+
+## hasOwn(obj, propName):Boolean
+
+Safer `Object.hasOwnProperty`. Returns a boolean indicating whether the object
+has the specified property.
+
+see: [`has()`](#has)
+
+```js
+var obj = {
+    foo: 1,
+    hasOwnProperty : 'bar'
+};
+
+obj.hasOwnProperty('foo'); // ERROR! hasOwnProperty is not a function
+
+hasOwn(obj, 'foo');            // true
+hasOwn(obj, 'hasOwnProperty'); // true
+hasOwn(obj, 'toString');       // false
+```
+
+
+
+## keys(obj):Array
+
+Returns an array of all own enumerable properties found upon a given object.
+It will use the native `Object.keys` if present.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`values()`](#values)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+keys(obj); // ['foo', 'bar', 'lorem']
+```
+
+
+
+## map(obj, callback, [thisObj]):Object
+
+Returns a new object where the property values are the result of calling the
+callback for each property in the original object, similar to Array/map.
+
+The callback function receives the same arguments as in `forOwn()`.
+
+See: [`forOwn()`](#forOwn)
+
+```js
+var obj = { foo: 1, bar: 2 },
+    data = { foo: 0, bar: 1 };
+
+map(obj, function(v) { return v + 1; }); // { foo: 2, bar: 3 }
+map(obj, function(v, k) { return k; }); // { foo: "foo", bar: "bar" }
+map(obj, function(v, k) { return this[k]; }, data); // { foo: 0, bar: 1 }
+```
+
+
+
+## matches(obj, props):Boolean
+
+Checks if object contains all properties/values pairs. Useful for validation
+and filtering.
+
+```js
+var john = {age:25, hair:'long', beard:true};
+var mark = {age:27, hair:'short', beard:false};
+var hippie = {hair:'long', beard:true};
+matches(john, hippie); // true
+matches(mark, hippie); // false
+```
+
+See [`deepMatches()`](#deepMatches)
+
+
+
+## merge(...objects):Object
+
+Deep merges objects. Note that objects and properties will be cloned during the
+process to avoid undesired side effects. It return a new object and won't
+affect source objects.
+
+```js
+var obj1 = {a: {b: 1, c: 1, d: {e: 1, f: 1}}};
+var obj2 = {a: {b: 2, d : {f : 'yeah'} }};
+
+merge(obj1, obj2); // {a: {b : 2, c : 1, d : {e : 1, f : 'yeah'}}}
+```
+
+See: [`deepMixIn()`](#deepMixIn), [`deepFillIn()`](#deepFillIn)
+
+
+
+## max(obj[, iterator]):*
+
+Returns maximum value inside object or use a custom iterator to define how
+items should be compared. Similar to [Array/max](array.html#max).
+
+See: [`min()`](#min)
+
+```js
+max({a: 100, b: 2, c: 1, d: 3, e: 200}); // 200
+max({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
+    return val.length;
+}); // 'lorem'
+```
+
+
+
+## min(obj[, iterator]):*
+
+Returns minimum value inside object or use a custom iterator to define how
+items should be compared. Similar to [Array/min](array.html#min).
+
+See: [`max()`](#max)
+
+```js
+min({a: 100, b: 2, c: 1, d: 3, e: 200}); // 1
+min({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
+    return val.length;
+}); // 'foo'
+```
+
+
+
+## mixIn(target, ...objects):Object
+
+Combine properties from all the objects into first one.
+
+This method affects target object in place, if you want to create a new Object
+pass an empty object as first parameter.
+
+### Arguments
+
+ 1. `target` (Object)        : Target Object.
+ 2. `...objects` (...Object) : Objects to be combined (0...n objects).
+
+### Example
+
+```js
+var a = {foo: "bar"};
+var b = {lorem: 123};
+
+mixIn({}, a, b); // {foo: "bar", lorem: 123}
+console.log(a);  // {foo: "bar"}
+
+mixIn(a, b);     // {foo: "bar", lorem: 123}
+console.log(a);  // {foo: "bar", lorem: 123}
+```
+
+See: [`fillIn()`](#fillIn), [`merge()`](#merge)
+
+
+
+
+## namespace(obj, propName):Object
+
+Creates an empty object inside namespace if not existent. Will return created
+object or existing object.
+
+See: [`get()`](#get), [`set()`](#set)
+
+```js
+var obj = {};
+namespace(obj, 'foo.bar'); // {}
+console.log(obj);          // {foo:{bar:{}}}
+```
+
+
+## omit(obj, ...keys):Object
+
+Return a copy of the object without the blacklisted keys.
+
+See: [`filter()`](#filter)
+
+```js
+var user = {
+    firstName : 'John',
+    lastName : 'Doe',
+    dob : '1985/07/23',
+    gender : 'male'
+};
+
+// can pass an array of keys as second argument
+var keys = ['firstName', 'dob']
+omit(user, keys); // {lastName : 'Doe', gender : 'male'}
+
+// or multiple arguments
+omit(user, 'firstName', 'lastName'); // {dob : '1985/07/23', gender : 'male'}
+```
+
+
+
+## pick(obj, ...keys):Object
+
+Return a copy of the object that contains only the whitelisted keys.
+
+See: [`filter()`](#filter)
+
+```js
+var user = {
+    firstName : 'John',
+    lastName : 'Doe',
+    dob : '1985/07/23',
+    gender : 'male'
+};
+
+// can pass an array of keys as second argument
+var keys = ['firstName', 'dob']
+pick(user, keys); // {firstName:"John", dob: "1985/07/23"}
+
+// or multiple arguments
+pick(user, 'firstName', 'lastName'); // {firstName:"John", lastName: "Doe"}
+```
+
+
+
+## pluck(obj, propName):Object
+
+Extract an object containing property values with keys as they appear in the
+passed object.
+
+```js
+var users = {
+    first: {
+        name : 'John',
+        age : 21
+    },
+    second: {
+        name : 'Mary',
+        age : 25
+    }
+};
+
+pluck(users, 'name'); // {first: 'John', second: 'Mary'} );
+pluck(users, 'age');  // {first: 21, second: 25} );
+```
+
+
+
+## reduce(obj, callback, initial, [thisObj]):*
+
+Similar to [Array/reduce](array.html#reduce).
+
+Apply a function against an accumulator and each property of the object (order
+is undefined) as to reduce it to a single value.
+
+```js
+var obj = {a: 1, b: 2, c: 3, d: 4};
+
+function sum(prev, cur, key, list) {
+    compare1.push(prev);
+    return prev + cur;
+}
+
+reduce(obj, sum); // 10
+```
+
+
+
+## reject(obj, callback, thisObj):Object
+
+Returns a new object containing all properties where `callback` returns true,
+similar to [Array/reject](array.html#reject). It does not use properties from
+the object's prototype. Opposite of [`filter()`](#filter).
+
+See [`filter()`](#filter)
+
+### Example
+
+```js
+var obj = {a: 1, b: 2, c: 3, d: 4, e: 5};
+reject(obj, function(x) { return (x % 2) !== 0; }); // {b: 2, d: 4}
+```
+
+
+
+## values(obj):Array
+
+Returns an array of all own enumerable properties values found upon a given object.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+values(obj); // [1, 2, 3]
+```
+
+
+
+## set(obj, propName, value)
+
+Sets a nested property value.
+
+See: [`get()`](#get), [`namespace()`](#namespace)
+
+```js
+var obj = {};
+set(obj, 'foo.bar', 123);
+console.log(obj.foo.bar); // 123
+console.log(obj);         // {foo:{bar:123}}
+```
+
+
+
+## size(obj):Number
+
+Returns the count of own enumerable properties found upon a given object.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+size(obj); // 3
+```
+
+
+
+## some(obj, callback, [thisObj]):Boolean
+
+Similar to [Array/some](array.html#some). Tests whether any properties in the
+object pass the test implemented by the provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+some(obj, isNumber); // true
+```
+
+
+
+## unset(obj, propName):Boolean
+
+Delete object property if existent and returns a boolean indicating succes. It
+will also return `true` if property doesn't exist.
+
+Some properties can't be deleted, to understand why [check this
+article](http://perfectionkills.com/understanding-delete/).
+
+See: [`set()`](#set)
+
+```js
+var lorem = {
+        ipsum : {
+            dolor : {
+                sit : 'amet'
+            }
+        }
+    };
+
+unset(lorem, 'ipsum.dolor.sit'); // true
+console.log(lorem.ipsum.dolor);  // {}
+unset(lorem, 'foo.bar');         // true
+```
+
+
+
+## result(object, property):Mixed
+
+Evaluates an objects property and returns result.
+
+```js
+var person = {
+    name: 'john',
+
+    mood: function() {
+        // some dynamic calculated property.
+        return 'happy';
+    }
+};
+
+var name = result(person, 'name'), // john
+    mood = result(person, 'mood'); // happy
+```
diff --git a/wrt/build/node_modules/mout/doc/random.md b/wrt/build/node_modules/mout/doc/random.md
new file mode 100644 (file)
index 0000000..0d24dc3
--- /dev/null
@@ -0,0 +1,256 @@
+# random #
+
+Pseudo-random generators.
+
+mout uses `Math.random` by default on all the pseudo-random generators, if
+you need a seeded random or a better algorithm see the [`random()`](#random)
+documentation for instructions.
+
+
+
+## choice(...items):*
+
+Returns a random element from the supplied arguments or from an array if single
+argument is an array.
+
+### Example:
+
+```js
+choice(1, 2, 3, 4, 5); // 3
+
+var arr = ['lorem', 'ipsum', 'dolor'];
+choice(arr); // 'dolor'
+```
+
+
+
+## guid():String
+
+Generates a pseudo-random [Globally Unique Identifier](http://en.wikipedia.org/wiki/Globally_unique_identifier) (v4).
+
+Since the total number of GUIDs is 2<sup>122</sup> the chance of generating the
+same value twice is negligible.
+
+**Important:** this method uses `Math.random` by default so the UUID isn't
+*safe* (sequence of outputs can be predicted in some cases), check the
+[`random()`](#random) documentation for more info on how to replace the default
+PRNG if you need extra safety or need *seeded* results.
+
+See: [`randHex()`](#randHex), [`random()`](#random)
+
+### Example:
+
+```js
+guid();      // 830e9f50-ac7f-4369-a14f-ed0e62b2fa0b
+guid();      // 5de3d09b-e79c-4727-932b-48c49228d508
+```
+
+
+
+## rand([min], [max]):Number
+
+Gets a random number inside range or snap to min/max values.
+
+### Arguments:
+
+ 1. `[min]` (Number)         : Minimum value. Defaults to `number/MIN_INT`.
+ 2. `[max]` (Number)         : Maximum value. Defaults to `number/MAX_INT`.
+
+
+### Example:
+
+```js
+rand();      // 448740433.55274725
+rand();      // -31797596.097682
+rand(0, 10); // 7.369723
+rand(0, 10); // 5.987042
+```
+
+See: [`random()`](#random)
+
+
+
+## randBit():Number
+
+Returns a random "bit" (0 or 1). Useful for addition/subtraction.
+
+It's slightly faster than `choice(0, 1)` since implementation is simpler (not
+that it will make a huge difference in most cases).
+
+See: [`choice()`](#choice)
+
+### Example:
+
+```js
+randBit(); // 1
+randBit(); // 0
+
+//same effect as
+choice(0, 1);
+```
+
+
+## randBool():Boolean
+
+Returns a random Boolean (`true` or `false`).
+
+Since this is very common it makes sense to abstract it into a discrete method.
+
+### Example:
+
+```js
+randBool(); // true
+randBool(); // false
+```
+
+
+
+## randHex([size]):String
+
+Returns a random hexadecimal string.
+
+The default `size` is `6`.
+
+### Example:
+
+```js
+randHex();   // "dd8575"
+randHex();   // "e6baeb"
+randHex(2);  // "a2"
+randHex(30); // "effd7e2ad9a4a3067e30525fab983a"
+```
+
+
+
+## randInt([min], [max]):Number
+
+Gets a random integer inside range or snap to min/max values.
+
+### Arguments:
+
+ 1. `[min]` (Number)         : Minimum value. Defaults to `number/MIN_INT`.
+ 2. `[max]` (Number)         : Maximum value. Defaults to `number/MAX_INT`.
+
+
+### Example:
+
+```js
+randInt();      // 448740433
+randInt();      // -31797596
+randInt(0, 10); // 7
+randInt(0, 10); // 5
+```
+
+
+
+## randSign():Number
+
+Returns a random "sign" (-1 or 1). Useful for multiplications.
+
+It's slightly faster than `choice(-1, 1)` since implementation is simpler (not
+that it will make a huge difference in most cases).
+
+See: [`choice()`](#choice)
+
+### Example:
+
+```js
+randSign(); // -1
+randSign(); // 1
+
+//same effect as
+choice(-1, 1);
+```
+
+
+
+## random():Number
+
+Returns a random number between `0` and `1`. Same as `Math.random()`.
+
+```js
+random(); // 0.35435103671625257
+random(); // 0.8768321881070733
+```
+
+**Important:** No methods inside mout should call `Math.random()`
+directly, they all use `random/random` as a proxy, that way we can
+inject/replace the pseudo-random number generator if needed (ie. in case we
+need a seeded random or a better algorithm than the native one).
+
+### Replacing the PRNG
+
+In some cases we might need better/different algorithms than the one provided
+by `Math.random` (ie. safer, seeded).
+
+Because of licensing issues, file size limitations and different needs we
+decided to **not** implement a custom PRNG and instead provide a easy way to
+override the default behavior. - [issue #99](https://github.com/millermedeiros/amd-utils/issues/99)
+
+If you are using mout with a loader that supports the [AMD map
+config](https://github.com/amdjs/amdjs-api/wiki/Common-Config), such as
+[RequireJS](http://requirejs.org/), you can use it to replace the PRNG
+(recommended approach):
+
+```js
+requirejs.config({
+    map : {
+        // all modules will load "my_custom_prng" instead of
+        // "mout/random/random"
+        '*' : {
+            'mout/random/random' : 'my_custom_prng'
+        }
+    }
+});
+```
+
+You also have the option to override `random.get` in case you are using
+mout on node.js or with a loader which doesn't support the map config:
+
+```js
+// replace the PRNG
+var n = 0;
+random.get = function(){
+    return ++n % 2? 0 : 1; // not so random :P
+};
+random(); // 0
+random(); // 1
+random(); // 0
+random(); // 1
+```
+
+See this [detailed explanation about PRNG in
+JavaScript](https://github.com/nquinlan/better-random-numbers-for-javascript-mirror)
+to understand the issues with the native `Math.random` and also for a list of
+algorithms that could be used instead.
+
+
+
+## randString([length, dictionary]):String
+
+Returns a random string.
+
+By default returns string containing alphanumeric characters (lowercase and uppercase) with a length of 8.
+
+### Arguments:
+
+ 1. `[length]`      (number)       : Length of the string to return. Defaults to 8.
+ 2. `[dictionary]`  (string)       : A string containing all characters used as a dictionary for the random string construction. Defaults to alphanumeric characters (lowercase and uppercase).
+
+### Example:
+
+```js
+randString();             // returns a string with length 8.
+randString(12);           // returns a string of length 12.
+randString(-1);           // returns a string of length 8.
+randString(null, 'pew!'); // returns a random string of length 8 composed of 'p', 'e', 'w' and '!'.
+randString(10, '0');      // always returns '0's of length 10.
+randString(rand(8, 10));  // returns a random string with length between 8 and 10.
+```
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/mout/function.js b/wrt/build/node_modules/mout/function.js
new file mode 100644 (file)
index 0000000..1065230
--- /dev/null
@@ -0,0 +1,25 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'after' : require('./function/after'),
+    'awaitDelay' : require('./function/awaitDelay'),
+    'bind' : require('./function/bind'),
+    'compose' : require('./function/compose'),
+    'constant' : require('./function/constant'),
+    'debounce' : require('./function/debounce'),
+    'func' : require('./function/func'),
+    'identity' : require('./function/identity'),
+    'makeIterator_' : require('./function/makeIterator_'),
+    'memoize' : require('./function/memoize'),
+    'partial' : require('./function/partial'),
+    'prop' : require('./function/prop'),
+    'series' : require('./function/series'),
+    'throttle' : require('./function/throttle'),
+    'timeout' : require('./function/timeout'),
+    'times' : require('./function/times'),
+    'wrap' : require('./function/wrap')
+};
+
+
diff --git a/wrt/build/node_modules/mout/function/after.js b/wrt/build/node_modules/mout/function/after.js
new file mode 100644 (file)
index 0000000..828bdd6
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Calls closure only after callback is called x times
+     */
+    function after(closure, times){
+        return function () {
+            if (--times <= 0) closure();
+        };
+    }
+
+    module.exports = after;
+
+
diff --git a/wrt/build/node_modules/mout/function/memoize.js b/wrt/build/node_modules/mout/function/memoize.js
new file mode 100644 (file)
index 0000000..0ea4433
--- /dev/null
@@ -0,0 +1,40 @@
+var isFunction = require('../lang/isFunction');
+var hasOwn = require('../object/hasOwn');
+
+    /**
+     * Creates a function that memoizes the result of `fn`. If `resolver` is
+     * provided it determines the cache key for storing the result based on the
+     * arguments provided to the memoized function. By default, the first argument
+     * provided to the memoized function is coerced to a string and used as the
+     * cache key. The `fn` is invoked with the `this` binding of the memoized
+     * function. Modified from lodash.
+     *
+     * @param {Function} fn Function to have its output memoized.
+     * @param {Function} context Function to resolve the cache key.
+     * @return {Function} Returns the new memoized function.
+     */
+    function memoize(fn, resolver) {
+        if (!isFunction(fn) || (resolver && !isFunction(resolver))) {
+            throw new TypeError('Expected a function');
+        }
+
+        var memoized = function() {
+            var cache = memoized.cache,
+                key = resolver ? resolver.apply(this, arguments) : arguments[0];
+
+            if (hasOwn(cache, key)) {
+                return cache[key];
+            }
+            var result = fn.apply(this, arguments);
+            cache[key] = result;
+            return result;
+        };
+
+        memoized.cache = {};
+
+        return memoized;
+    }
+
+    module.exports = memoize;
+
+
diff --git a/wrt/build/node_modules/mout/function/partial.js b/wrt/build/node_modules/mout/function/partial.js
new file mode 100644 (file)
index 0000000..fbebb2d
--- /dev/null
@@ -0,0 +1,31 @@
+var indexOf = require('../array/indexOf');
+var slice = require('../array/slice');
+var take = require('../array/take');
+
+    var _ = {};
+
+    /**
+     * Creates a partially applied function.
+     */
+    function partial(f) {
+        var as = slice(arguments, 1);
+        var has_ = indexOf(as, _) !== -1;
+
+        return function() {
+            var rest = slice(arguments);
+
+            // Don't waste time checking for placeholders if there aren't any.
+            var args = has_ ? take(as.length, function(i) {
+                var a = as[i];
+                return a === _ ? rest.shift() : a;
+            }) : as;
+
+            return f.apply(this, rest.length ? args.concat(rest) : args);
+        };
+    }
+
+    partial._ = _;
+
+    module.exports = partial;
+
+
diff --git a/wrt/build/node_modules/mout/index.js b/wrt/build/node_modules/mout/index.js
new file mode 100644 (file)
index 0000000..ae262b0
--- /dev/null
@@ -0,0 +1,25 @@
+/**@license
+ * mout v1.0.0 | http://moutjs.com | MIT license
+ */
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'VERSION' : '1.0.0',
+    'array' : require('./array'),
+    'collection' : require('./collection'),
+    'date' : require('./date'),
+    'function' : require('./function'),
+    'lang' : require('./lang'),
+    'math' : require('./math'),
+    'number' : require('./number'),
+    'object' : require('./object'),
+    'queryString' : require('./queryString'),
+    'random' : require('./random'),
+    'string' : require('./string'),
+    'time' : require('./time'),
+    'fn' : require('./function')
+};
+
+
diff --git a/wrt/build/node_modules/mout/math.js b/wrt/build/node_modules/mout/math.js
new file mode 100644 (file)
index 0000000..bd3ec5a
--- /dev/null
@@ -0,0 +1,20 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'ceil' : require('./math/ceil'),
+    'clamp' : require('./math/clamp'),
+    'countSteps' : require('./math/countSteps'),
+    'floor' : require('./math/floor'),
+    'inRange' : require('./math/inRange'),
+    'isNear' : require('./math/isNear'),
+    'lerp' : require('./math/lerp'),
+    'loop' : require('./math/loop'),
+    'map' : require('./math/map'),
+    'norm' : require('./math/norm'),
+    'overflow' : require('./math/overflow'),
+    'round' : require('./math/round')
+};
+
+
diff --git a/wrt/build/node_modules/mout/math/overflow.js b/wrt/build/node_modules/mout/math/overflow.js
new file mode 100644 (file)
index 0000000..af4950c
--- /dev/null
@@ -0,0 +1,23 @@
+
+
+    /**
+     * Wraps number within bounds both positive and negative
+     */
+    function overflow(number, min, max){
+        if ( max === undefined ) {
+            max = min;
+            min = 0;
+        }
+
+        var difference = max - min;
+
+        if ( number < min ) {
+            number += difference * ( ~~( ( min - number ) / difference ) + 1 );
+        }
+
+        return min + ( number - min ) % difference;
+    }
+
+    module.exports = overflow;
+
+
diff --git a/wrt/build/node_modules/mout/object.js b/wrt/build/node_modules/mout/object.js
new file mode 100644 (file)
index 0000000..ee1e94e
--- /dev/null
@@ -0,0 +1,44 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'bindAll' : require('./object/bindAll'),
+    'contains' : require('./object/contains'),
+    'deepFillIn' : require('./object/deepFillIn'),
+    'deepMatches' : require('./object/deepMatches'),
+    'deepMixIn' : require('./object/deepMixIn'),
+    'equals' : require('./object/equals'),
+    'every' : require('./object/every'),
+    'fillIn' : require('./object/fillIn'),
+    'filter' : require('./object/filter'),
+    'find' : require('./object/find'),
+    'flatten' : require('./object/flatten'),
+    'forIn' : require('./object/forIn'),
+    'forOwn' : require('./object/forOwn'),
+    'functions' : require('./object/functions'),
+    'get' : require('./object/get'),
+    'has' : require('./object/has'),
+    'hasOwn' : require('./object/hasOwn'),
+    'keys' : require('./object/keys'),
+    'map' : require('./object/map'),
+    'matches' : require('./object/matches'),
+    'max' : require('./object/max'),
+    'merge' : require('./object/merge'),
+    'min' : require('./object/min'),
+    'mixIn' : require('./object/mixIn'),
+    'namespace' : require('./object/namespace'),
+    'omit' : require('./object/omit'),
+    'pick' : require('./object/pick'),
+    'pluck' : require('./object/pluck'),
+    'reduce' : require('./object/reduce'),
+    'reject' : require('./object/reject'),
+    'result' : require('./object/result'),
+    'set' : require('./object/set'),
+    'size' : require('./object/size'),
+    'some' : require('./object/some'),
+    'unset' : require('./object/unset'),
+    'values' : require('./object/values')
+};
+
+
diff --git a/wrt/build/node_modules/mout/object/deepMatches.js b/wrt/build/node_modules/mout/object/deepMatches.js
new file mode 100644 (file)
index 0000000..4beaf57
--- /dev/null
@@ -0,0 +1,56 @@
+var forOwn = require('./forOwn');
+var isArray = require('../lang/isArray');
+
+    function containsMatch(array, pattern) {
+        var i = -1, length = array.length;
+        while (++i < length) {
+            if (deepMatches(array[i], pattern)) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    function matchArray(target, pattern) {
+        var i = -1, patternLength = pattern.length;
+        while (++i < patternLength) {
+            if (!containsMatch(target, pattern[i])) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    function matchObject(target, pattern) {
+        var result = true;
+        forOwn(pattern, function(val, key) {
+            if (!deepMatches(target[key], val)) {
+                // Return false to break out of forOwn early
+                return (result = false);
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively check if the objects match.
+     */
+    function deepMatches(target, pattern){
+        if (target && typeof target === 'object' &&
+            pattern && typeof pattern === 'object') {
+            if (isArray(target) && isArray(pattern)) {
+                return matchArray(target, pattern);
+            } else {
+                return matchObject(target, pattern);
+            }
+        } else {
+            return target === pattern;
+        }
+    }
+
+    module.exports = deepMatches;
+
+
diff --git a/wrt/build/node_modules/mout/object/flatten.js b/wrt/build/node_modules/mout/object/flatten.js
new file mode 100644 (file)
index 0000000..a356f15
--- /dev/null
@@ -0,0 +1,38 @@
+var forOwn = require('./forOwn');
+var isPlainObject = require('../lang/isPlainObject');
+
+    /*
+     * Helper function to flatten to a destination object.
+     * Used to remove the need to create intermediate objects while flattening.
+     */
+    function flattenTo(obj, result, prefix, level) {
+        forOwn(obj, function (value, key) {
+            var nestedPrefix = prefix ? prefix + '.' + key : key;
+
+            if (level !== 0 && isPlainObject(value)) {
+                flattenTo(value, result, nestedPrefix, level - 1);
+            } else {
+                result[nestedPrefix] = value;
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively flattens an object.
+     * A new object containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(obj, level) {
+        if (obj == null) {
+            return {};
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(obj, {}, '', level);
+    }
+
+    module.exports = flatten;
+
+
diff --git a/wrt/build/node_modules/mout/package.json b/wrt/build/node_modules/mout/package.json
new file mode 100644 (file)
index 0000000..bdf88e9
--- /dev/null
@@ -0,0 +1,192 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "mout@>=0.9 <2.0",
+        "scope": null,
+        "escapedName": "mout",
+        "name": "mout",
+        "rawSpec": ">=0.9 <2.0",
+        "spec": ">=0.9.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "mout@>=0.9.0 <2.0.0",
+  "_id": "mout@1.0.0",
+  "_inCache": true,
+  "_location": "/mout",
+  "_nodeVersion": "4.1.0",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/mout-1.0.0.tgz_1459021746644_0.5081953555345535"
+  },
+  "_npmUser": {
+    "name": "mathias.paumgarten",
+    "email": "mail@mathias-paumgarten.com"
+  },
+  "_npmVersion": "3.7.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "mout@>=0.9 <2.0",
+    "scope": null,
+    "escapedName": "mout",
+    "name": "mout",
+    "rawSpec": ">=0.9 <2.0",
+    "spec": ">=0.9.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/mout/-/mout-1.0.0.tgz",
+  "_shasum": "9bdf1d4af57d66d47cb353a6335a3281098e1501",
+  "_shrinkwrap": null,
+  "_spec": "mout@>=0.9 <2.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "contact@millermedeiros.com",
+    "url": "http://blog.millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/mout/mout/issues/"
+  },
+  "contributors": [
+    {
+      "name": "Adam Nowotny"
+    },
+    {
+      "name": "André Cruz",
+      "email": "amdfcruz@gmail.com"
+    },
+    {
+      "name": "Conrad Zimmerman",
+      "url": "http://www.conradz.com"
+    },
+    {
+      "name": "Friedemann Altrock",
+      "email": "frodenius@gmail.com"
+    },
+    {
+      "name": "Igor Almeida",
+      "email": "igor.p.almeida@gmail.com"
+    },
+    {
+      "name": "Jarrod Overson",
+      "url": "http://jarrodoverson.com"
+    },
+    {
+      "name": "Mathias Paumgarten",
+      "email": "mail@mathias-paumgarten.com"
+    },
+    {
+      "name": "Zach Shipley"
+    }
+  ],
+  "dependencies": {},
+  "description": "Modular Utilities",
+  "devDependencies": {
+    "commander": "~1.0.5",
+    "handlebars": "~1.0.6",
+    "istanbul": "~0.1.27",
+    "jasmine-node": "~1.14.5",
+    "jshint": "~2.9.1",
+    "mdoc": "~0.3.2",
+    "nodefy": "*",
+    "regenerate": "~0.5.4",
+    "requirejs": "~2.2.0",
+    "rimraf": "~2.5.2",
+    "rocambole": "~0.2.3"
+  },
+  "directories": {
+    "doc": "./doc"
+  },
+  "dist": {
+    "shasum": "9bdf1d4af57d66d47cb353a6335a3281098e1501",
+    "tarball": "https://registry.npmjs.org/mout/-/mout-1.0.0.tgz"
+  },
+  "gitHead": "2ff20539568bfe53b8c1da521cd743cf0ba79c2a",
+  "homepage": "http://moutjs.com/",
+  "keywords": [
+    "utilities",
+    "functional",
+    "amd-utils",
+    "stdlib"
+  ],
+  "license": "MIT",
+  "main": "./index.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    },
+    {
+      "name": "satazor",
+      "email": "andremiguelcruz@msn.com"
+    },
+    {
+      "name": "conradz",
+      "email": "me@conradz.com"
+    },
+    {
+      "name": "mathias.paumgarten",
+      "email": "mail@mathias-paumgarten.com"
+    }
+  ],
+  "name": "mout",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/mout/mout.git"
+  },
+  "scripts": {
+    "pretest": "node build pkg",
+    "test": "istanbul test tests/runner.js --hook-run-in-context"
+  },
+  "testling": {
+    "preprocess": "node build testling",
+    "browsers": {
+      "ie": [
+        7,
+        8,
+        9,
+        10
+      ],
+      "firefox": [
+        17,
+        "nightly"
+      ],
+      "chrome": [
+        23,
+        "canary"
+      ],
+      "opera": [
+        12,
+        "next"
+      ],
+      "safari": [
+        5.1,
+        6
+      ],
+      "iphone": [
+        6
+      ],
+      "ipad": [
+        6
+      ]
+    },
+    "scripts": [
+      "tests/lib/jasmine/jasmine.js",
+      "tests/lib/jasmine/jasmine.async.js",
+      "tests/lib/jasmine/jasmine-tap.js",
+      "tests/lib/requirejs/require.js",
+      "tests/testling/src.js",
+      "tests/testling/specs.js",
+      "tests/runner.js"
+    ]
+  },
+  "version": "1.0.0"
+}
diff --git a/wrt/build/node_modules/mout/queryString/decode.js b/wrt/build/node_modules/mout/queryString/decode.js
new file mode 100644 (file)
index 0000000..c1b2cab
--- /dev/null
@@ -0,0 +1,36 @@
+var typecast = require('../string/typecast');
+var isArray = require('../lang/isArray');
+var hasOwn = require('../object/hasOwn');
+
+    /**
+     * Decode query string into an object of keys => vals.
+     */
+    function decode(queryStr, shouldTypecast) {
+        var queryArr = (queryStr || '').replace('?', '').split('&'),
+            reg = /([^=]+)=(.+)/,
+            i = -1,
+            obj = {},
+            equalIndex, cur, pValue, pName;
+
+        while ((cur = queryArr[++i])) {
+            equalIndex = cur.indexOf('=');
+            pName = cur.substring(0, equalIndex);
+            pValue = decodeURIComponent(cur.substring(equalIndex + 1));
+            if (shouldTypecast !== false) {
+                pValue = typecast(pValue);
+            }
+            if (hasOwn(obj, pName)){
+                if(isArray(obj[pName])){
+                    obj[pName].push(pValue);
+                } else {
+                    obj[pName] = [obj[pName], pValue];
+                }
+            } else {
+                obj[pName] = pValue;
+           }
+        }
+        return obj;
+    }
+
+    module.exports = decode;
+
diff --git a/wrt/build/node_modules/mout/queryString/getQuery.js b/wrt/build/node_modules/mout/queryString/getQuery.js
new file mode 100644 (file)
index 0000000..9d4402e
--- /dev/null
@@ -0,0 +1,13 @@
+
+
+    /**
+     * Gets full query as string with all special chars decoded.
+     */
+    function getQuery(url) {
+        // url = url.replace(/#.*\?/, '?'); //removes hash (to avoid getting hash query)
+        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
+        return (queryString)? decodeURIComponent(queryString[0].replace(/\+/g,' ')) : '';
+    }
+
+    module.exports = getQuery;
+
diff --git a/wrt/build/node_modules/mout/src/array.js b/wrt/build/node_modules/mout/src/array.js
new file mode 100644 (file)
index 0000000..19cb9de
--- /dev/null
@@ -0,0 +1,56 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'append' : require('./array/append'),
+    'collect' : require('./array/collect'),
+    'combine' : require('./array/combine'),
+    'compact' : require('./array/compact'),
+    'contains' : require('./array/contains'),
+    'difference' : require('./array/difference'),
+    'equals' : require('./array/equals'),
+    'every' : require('./array/every'),
+    'filter' : require('./array/filter'),
+    'find' : require('./array/find'),
+    'findIndex' : require('./array/findIndex'),
+    'findLast' : require('./array/findLast'),
+    'findLastIndex' : require('./array/findLastIndex'),
+    'flatten' : require('./array/flatten'),
+    'forEach' : require('./array/forEach'),
+    'groupBy' : require('./array/groupBy'),
+    'indexOf' : require('./array/indexOf'),
+    'indicesOf' : require('./array/indicesOf'),
+    'insert' : require('./array/insert'),
+    'intersection' : require('./array/intersection'),
+    'invoke' : require('./array/invoke'),
+    'join' : require('./array/join'),
+    'last' : require('./array/last'),
+    'lastIndexOf' : require('./array/lastIndexOf'),
+    'map' : require('./array/map'),
+    'max' : require('./array/max'),
+    'min' : require('./array/min'),
+    'pick' : require('./array/pick'),
+    'pluck' : require('./array/pluck'),
+    'range' : require('./array/range'),
+    'reduce' : require('./array/reduce'),
+    'reduceRight' : require('./array/reduceRight'),
+    'reject' : require('./array/reject'),
+    'remove' : require('./array/remove'),
+    'removeAll' : require('./array/removeAll'),
+    'reverse' : require('./array/reverse'),
+    'shuffle' : require('./array/shuffle'),
+    'slice' : require('./array/slice'),
+    'some' : require('./array/some'),
+    'sort' : require('./array/sort'),
+    'sortBy' : require('./array/sortBy'),
+    'split' : require('./array/split'),
+    'take' : require('./array/take'),
+    'toLookup' : require('./array/toLookup'),
+    'union' : require('./array/union'),
+    'unique' : require('./array/unique'),
+    'xor' : require('./array/xor'),
+    'zip' : require('./array/zip')
+};
+
+});
diff --git a/wrt/build/node_modules/mout/src/array/flatten.js b/wrt/build/node_modules/mout/src/array/flatten.js
new file mode 100644 (file)
index 0000000..3035b33
--- /dev/null
@@ -0,0 +1,44 @@
+define(['../lang/isArray', './append'], function (isArray, append) {
+
+    /*
+     * Helper function to flatten to a destination array.
+     * Used to remove the need to create intermediate arrays while flattening.
+     */
+    function flattenTo(arr, result, level) {
+        if (level === 0) {
+            append(result, arr);
+            return result;
+        }
+
+        var value,
+            i = -1,
+            len = arr.length;
+        while (++i < len) {
+            value = arr[i];
+            if (isArray(value)) {
+                flattenTo(value, result, level - 1);
+            } else {
+                result.push(value);
+            }
+        }
+        return result;
+    }
+
+    /**
+     * Recursively flattens an array.
+     * A new array containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(arr, level) {
+        if (arr == null) {
+            return [];
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(arr, [], level);
+    }
+
+    return flatten;
+
+});
+
diff --git a/wrt/build/node_modules/mout/src/array/indicesOf.js b/wrt/build/node_modules/mout/src/array/indicesOf.js
new file mode 100644 (file)
index 0000000..c17006b
--- /dev/null
@@ -0,0 +1,28 @@
+define(function () {
+
+    /**
+     * Array indicesOf
+     */
+    function indicesOf(arr, item, fromIndex) {
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        fromIndex = typeof fromIndex === 'number' ? fromIndex : 0;
+
+        var length = arr.length;
+        var cursor = fromIndex >= 0 ? fromIndex : length + fromIndex;
+
+        while (cursor < length) {
+            if (arr[cursor] === item) {
+                results.push(cursor);
+            }
+            cursor++;
+        }
+
+        return results;
+    }
+
+    return indicesOf;
+});
diff --git a/wrt/build/node_modules/mout/src/array/reverse.js b/wrt/build/node_modules/mout/src/array/reverse.js
new file mode 100644 (file)
index 0000000..b970427
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Returns a copy of the array in reversed order.
+     */
+    function reverse(array) {
+        var copy = array.slice();
+        copy.reverse();
+        return copy;
+    }
+
+    return reverse;
+
+});
diff --git a/wrt/build/node_modules/mout/src/array/shuffle.js b/wrt/build/node_modules/mout/src/array/shuffle.js
new file mode 100644 (file)
index 0000000..1965b66
--- /dev/null
@@ -0,0 +1,28 @@
+define(['../random/randInt'], function (randInt) {
+
+    /**
+     * Shuffle array items.
+     */
+    function shuffle(arr) {
+        var results = [],
+            rnd;
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (!i) {
+                results[0] = arr[0];
+            } else {
+                rnd = randInt(0, i);
+                results[i] = results[rnd];
+                results[rnd] = arr[i];
+            }
+        }
+
+        return results;
+    }
+
+    return shuffle;
+});
diff --git a/wrt/build/node_modules/mout/src/function.js b/wrt/build/node_modules/mout/src/function.js
new file mode 100644 (file)
index 0000000..a2f667e
--- /dev/null
@@ -0,0 +1,25 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'after' : require('./function/after'),
+    'awaitDelay' : require('./function/awaitDelay'),
+    'bind' : require('./function/bind'),
+    'compose' : require('./function/compose'),
+    'constant' : require('./function/constant'),
+    'debounce' : require('./function/debounce'),
+    'func' : require('./function/func'),
+    'identity' : require('./function/identity'),
+    'makeIterator_' : require('./function/makeIterator_'),
+    'memoize' : require('./function/memoize'),
+    'partial' : require('./function/partial'),
+    'prop' : require('./function/prop'),
+    'series' : require('./function/series'),
+    'throttle' : require('./function/throttle'),
+    'timeout' : require('./function/timeout'),
+    'times' : require('./function/times'),
+    'wrap' : require('./function/wrap')
+};
+
+});
diff --git a/wrt/build/node_modules/mout/src/function/after.js b/wrt/build/node_modules/mout/src/function/after.js
new file mode 100644 (file)
index 0000000..e4ccf65
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Calls closure only after callback is called x times
+     */
+    function after(closure, times){
+        return function () {
+            if (--times <= 0) closure();
+        };
+    }
+
+    return after;
+
+});
diff --git a/wrt/build/node_modules/mout/src/function/memoize.js b/wrt/build/node_modules/mout/src/function/memoize.js
new file mode 100644 (file)
index 0000000..8833fee
--- /dev/null
@@ -0,0 +1,39 @@
+define(['../lang/isFunction', '../object/hasOwn'], function(isFunction, hasOwn){
+
+    /**
+     * Creates a function that memoizes the result of `fn`. If `resolver` is
+     * provided it determines the cache key for storing the result based on the
+     * arguments provided to the memoized function. By default, the first argument
+     * provided to the memoized function is coerced to a string and used as the
+     * cache key. The `fn` is invoked with the `this` binding of the memoized
+     * function. Modified from lodash.
+     *
+     * @param {Function} fn Function to have its output memoized.
+     * @param {Function} context Function to resolve the cache key.
+     * @return {Function} Returns the new memoized function.
+     */
+    function memoize(fn, resolver) {
+        if (!isFunction(fn) || (resolver && !isFunction(resolver))) {
+            throw new TypeError('Expected a function');
+        }
+
+        var memoized = function() {
+            var cache = memoized.cache,
+                key = resolver ? resolver.apply(this, arguments) : arguments[0];
+
+            if (hasOwn(cache, key)) {
+                return cache[key];
+            }
+            var result = fn.apply(this, arguments);
+            cache[key] = result;
+            return result;
+        };
+
+        memoized.cache = {};
+
+        return memoized;
+    }
+
+    return memoize;
+});
+
diff --git a/wrt/build/node_modules/mout/src/function/partial.js b/wrt/build/node_modules/mout/src/function/partial.js
new file mode 100644 (file)
index 0000000..a9e9d76
--- /dev/null
@@ -0,0 +1,29 @@
+define(['../array/indexOf', '../array/slice', '../array/take'], function (indexOf, slice, take) {
+
+    var _ = {};
+
+    /**
+     * Creates a partially applied function.
+     */
+    function partial(f) {
+        var as = slice(arguments, 1);
+        var has_ = indexOf(as, _) !== -1;
+
+        return function() {
+            var rest = slice(arguments);
+
+            // Don't waste time checking for placeholders if there aren't any.
+            var args = has_ ? take(as.length, function(i) {
+                var a = as[i];
+                return a === _ ? rest.shift() : a;
+            }) : as;
+
+            return f.apply(this, rest.length ? args.concat(rest) : args);
+        };
+    }
+
+    partial._ = _;
+
+    return partial;
+
+});
diff --git a/wrt/build/node_modules/mout/src/index.js b/wrt/build/node_modules/mout/src/index.js
new file mode 100644 (file)
index 0000000..7e24b1f
--- /dev/null
@@ -0,0 +1,25 @@
+/**@license
+ * mout v1.0.0 | http://moutjs.com | MIT license
+ */
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'VERSION' : '1.0.0',
+    'array' : require('./array'),
+    'collection' : require('./collection'),
+    'date' : require('./date'),
+    'function' : require('./function'),
+    'lang' : require('./lang'),
+    'math' : require('./math'),
+    'number' : require('./number'),
+    'object' : require('./object'),
+    'queryString' : require('./queryString'),
+    'random' : require('./random'),
+    'string' : require('./string'),
+    'time' : require('./time'),
+    'fn' : require('./function')
+};
+
+});
diff --git a/wrt/build/node_modules/mout/src/math.js b/wrt/build/node_modules/mout/src/math.js
new file mode 100644 (file)
index 0000000..481e44f
--- /dev/null
@@ -0,0 +1,20 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'ceil' : require('./math/ceil'),
+    'clamp' : require('./math/clamp'),
+    'countSteps' : require('./math/countSteps'),
+    'floor' : require('./math/floor'),
+    'inRange' : require('./math/inRange'),
+    'isNear' : require('./math/isNear'),
+    'lerp' : require('./math/lerp'),
+    'loop' : require('./math/loop'),
+    'map' : require('./math/map'),
+    'norm' : require('./math/norm'),
+    'overflow' : require('./math/overflow'),
+    'round' : require('./math/round')
+};
+
+});
diff --git a/wrt/build/node_modules/mout/src/math/overflow.js b/wrt/build/node_modules/mout/src/math/overflow.js
new file mode 100644 (file)
index 0000000..d9fd529
--- /dev/null
@@ -0,0 +1,23 @@
+define(function () {
+
+    /**
+     * Wraps number within bounds both positive and negative
+     */
+    function overflow(number, min, max){
+        if ( max === undefined ) {
+            max = min;
+            min = 0;
+        }
+
+        var difference = max - min;
+
+        if ( number < min ) {
+            number += difference * ( ~~( ( min - number ) / difference ) + 1 );
+        }
+
+        return min + ( number - min ) % difference;
+    }
+
+    return overflow;
+
+});
diff --git a/wrt/build/node_modules/mout/src/object.js b/wrt/build/node_modules/mout/src/object.js
new file mode 100644 (file)
index 0000000..93cb49e
--- /dev/null
@@ -0,0 +1,44 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'bindAll' : require('./object/bindAll'),
+    'contains' : require('./object/contains'),
+    'deepFillIn' : require('./object/deepFillIn'),
+    'deepMatches' : require('./object/deepMatches'),
+    'deepMixIn' : require('./object/deepMixIn'),
+    'equals' : require('./object/equals'),
+    'every' : require('./object/every'),
+    'fillIn' : require('./object/fillIn'),
+    'filter' : require('./object/filter'),
+    'find' : require('./object/find'),
+    'flatten' : require('./object/flatten'),
+    'forIn' : require('./object/forIn'),
+    'forOwn' : require('./object/forOwn'),
+    'functions' : require('./object/functions'),
+    'get' : require('./object/get'),
+    'has' : require('./object/has'),
+    'hasOwn' : require('./object/hasOwn'),
+    'keys' : require('./object/keys'),
+    'map' : require('./object/map'),
+    'matches' : require('./object/matches'),
+    'max' : require('./object/max'),
+    'merge' : require('./object/merge'),
+    'min' : require('./object/min'),
+    'mixIn' : require('./object/mixIn'),
+    'namespace' : require('./object/namespace'),
+    'omit' : require('./object/omit'),
+    'pick' : require('./object/pick'),
+    'pluck' : require('./object/pluck'),
+    'reduce' : require('./object/reduce'),
+    'reject' : require('./object/reject'),
+    'result' : require('./object/result'),
+    'set' : require('./object/set'),
+    'size' : require('./object/size'),
+    'some' : require('./object/some'),
+    'unset' : require('./object/unset'),
+    'values' : require('./object/values')
+};
+
+});
diff --git a/wrt/build/node_modules/mout/src/object/deepMatches.js b/wrt/build/node_modules/mout/src/object/deepMatches.js
new file mode 100644 (file)
index 0000000..ffd43e3
--- /dev/null
@@ -0,0 +1,55 @@
+define(['./forOwn', '../lang/isArray'], function(forOwn, isArray) {
+
+    function containsMatch(array, pattern) {
+        var i = -1, length = array.length;
+        while (++i < length) {
+            if (deepMatches(array[i], pattern)) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    function matchArray(target, pattern) {
+        var i = -1, patternLength = pattern.length;
+        while (++i < patternLength) {
+            if (!containsMatch(target, pattern[i])) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    function matchObject(target, pattern) {
+        var result = true;
+        forOwn(pattern, function(val, key) {
+            if (!deepMatches(target[key], val)) {
+                // Return false to break out of forOwn early
+                return (result = false);
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively check if the objects match.
+     */
+    function deepMatches(target, pattern){
+        if (target && typeof target === 'object' &&
+            pattern && typeof pattern === 'object') {
+            if (isArray(target) && isArray(pattern)) {
+                return matchArray(target, pattern);
+            } else {
+                return matchObject(target, pattern);
+            }
+        } else {
+            return target === pattern;
+        }
+    }
+
+    return deepMatches;
+
+});
diff --git a/wrt/build/node_modules/mout/src/object/flatten.js b/wrt/build/node_modules/mout/src/object/flatten.js
new file mode 100644 (file)
index 0000000..4fe07af
--- /dev/null
@@ -0,0 +1,37 @@
+define(['./forOwn', '../lang/isPlainObject'], function (forOwn, isPlainObject) {
+
+    /*
+     * Helper function to flatten to a destination object.
+     * Used to remove the need to create intermediate objects while flattening.
+     */
+    function flattenTo(obj, result, prefix, level) {
+        forOwn(obj, function (value, key) {
+            var nestedPrefix = prefix ? prefix + '.' + key : key;
+
+            if (level !== 0 && isPlainObject(value)) {
+                flattenTo(value, result, nestedPrefix, level - 1);
+            } else {
+                result[nestedPrefix] = value;
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively flattens an object.
+     * A new object containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(obj, level) {
+        if (obj == null) {
+            return {};
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(obj, {}, '', level);
+    }
+
+    return flatten;
+
+});
diff --git a/wrt/build/node_modules/mout/src/queryString/decode.js b/wrt/build/node_modules/mout/src/queryString/decode.js
new file mode 100644 (file)
index 0000000..a37c123
--- /dev/null
@@ -0,0 +1,34 @@
+define(['../string/typecast', '../lang/isArray', '../object/hasOwn'], function (typecast, isArray, hasOwn) {
+
+    /**
+     * Decode query string into an object of keys => vals.
+     */
+    function decode(queryStr, shouldTypecast) {
+        var queryArr = (queryStr || '').replace('?', '').split('&'),
+            reg = /([^=]+)=(.+)/,
+            i = -1,
+            obj = {},
+            equalIndex, cur, pValue, pName;
+
+        while ((cur = queryArr[++i])) {
+            equalIndex = cur.indexOf('=');
+            pName = cur.substring(0, equalIndex);
+            pValue = decodeURIComponent(cur.substring(equalIndex + 1));
+            if (shouldTypecast !== false) {
+                pValue = typecast(pValue);
+            }
+            if (hasOwn(obj, pName)){
+                if(isArray(obj[pName])){
+                    obj[pName].push(pValue);
+                } else {
+                    obj[pName] = [obj[pName], pValue];
+                }
+            } else {
+                obj[pName] = pValue;
+           }
+        }
+        return obj;
+    }
+
+    return decode;
+});
diff --git a/wrt/build/node_modules/mout/src/queryString/getQuery.js b/wrt/build/node_modules/mout/src/queryString/getQuery.js
new file mode 100644 (file)
index 0000000..995e00d
--- /dev/null
@@ -0,0 +1,13 @@
+define(function () {
+
+    /**
+     * Gets full query as string with all special chars decoded.
+     */
+    function getQuery(url) {
+        // url = url.replace(/#.*\?/, '?'); //removes hash (to avoid getting hash query)
+        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
+        return (queryString)? decodeURIComponent(queryString[0].replace(/\+/g,' ')) : '';
+    }
+
+    return getQuery;
+});
diff --git a/wrt/build/node_modules/ms/index.js b/wrt/build/node_modules/ms/index.js
new file mode 100644 (file)
index 0000000..6a522b1
--- /dev/null
@@ -0,0 +1,152 @@
+/**
+ * Helpers.
+ */
+
+var s = 1000;
+var m = s * 60;
+var h = m * 60;
+var d = h * 24;
+var y = d * 365.25;
+
+/**
+ * Parse or format the given `val`.
+ *
+ * Options:
+ *
+ *  - `long` verbose formatting [false]
+ *
+ * @param {String|Number} val
+ * @param {Object} [options]
+ * @throws {Error} throw an error if val is not a non-empty string or a number
+ * @return {String|Number}
+ * @api public
+ */
+
+module.exports = function(val, options) {
+  options = options || {};
+  var type = typeof val;
+  if (type === 'string' && val.length > 0) {
+    return parse(val);
+  } else if (type === 'number' && isNaN(val) === false) {
+    return options.long ? fmtLong(val) : fmtShort(val);
+  }
+  throw new Error(
+    'val is not a non-empty string or a valid number. val=' +
+      JSON.stringify(val)
+  );
+};
+
+/**
+ * Parse the given `str` and return milliseconds.
+ *
+ * @param {String} str
+ * @return {Number}
+ * @api private
+ */
+
+function parse(str) {
+  str = String(str);
+  if (str.length > 100) {
+    return;
+  }
+  var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(
+    str
+  );
+  if (!match) {
+    return;
+  }
+  var n = parseFloat(match[1]);
+  var type = (match[2] || 'ms').toLowerCase();
+  switch (type) {
+    case 'years':
+    case 'year':
+    case 'yrs':
+    case 'yr':
+    case 'y':
+      return n * y;
+    case 'days':
+    case 'day':
+    case 'd':
+      return n * d;
+    case 'hours':
+    case 'hour':
+    case 'hrs':
+    case 'hr':
+    case 'h':
+      return n * h;
+    case 'minutes':
+    case 'minute':
+    case 'mins':
+    case 'min':
+    case 'm':
+      return n * m;
+    case 'seconds':
+    case 'second':
+    case 'secs':
+    case 'sec':
+    case 's':
+      return n * s;
+    case 'milliseconds':
+    case 'millisecond':
+    case 'msecs':
+    case 'msec':
+    case 'ms':
+      return n;
+    default:
+      return undefined;
+  }
+}
+
+/**
+ * Short format for `ms`.
+ *
+ * @param {Number} ms
+ * @return {String}
+ * @api private
+ */
+
+function fmtShort(ms) {
+  if (ms >= d) {
+    return Math.round(ms / d) + 'd';
+  }
+  if (ms >= h) {
+    return Math.round(ms / h) + 'h';
+  }
+  if (ms >= m) {
+    return Math.round(ms / m) + 'm';
+  }
+  if (ms >= s) {
+    return Math.round(ms / s) + 's';
+  }
+  return ms + 'ms';
+}
+
+/**
+ * Long format for `ms`.
+ *
+ * @param {Number} ms
+ * @return {String}
+ * @api private
+ */
+
+function fmtLong(ms) {
+  return plural(ms, d, 'day') ||
+    plural(ms, h, 'hour') ||
+    plural(ms, m, 'minute') ||
+    plural(ms, s, 'second') ||
+    ms + ' ms';
+}
+
+/**
+ * Pluralization helper.
+ */
+
+function plural(ms, n, name) {
+  if (ms < n) {
+    return;
+  }
+  if (ms < n * 1.5) {
+    return Math.floor(ms / n) + ' ' + name;
+  }
+  return Math.ceil(ms / n) + ' ' + name + 's';
+}
diff --git a/wrt/build/node_modules/ms/license.md b/wrt/build/node_modules/ms/license.md
new file mode 100644 (file)
index 0000000..69b6125
--- /dev/null
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2016 Zeit, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/wrt/build/node_modules/ms/package.json b/wrt/build/node_modules/ms/package.json
new file mode 100644 (file)
index 0000000..6240df3
--- /dev/null
@@ -0,0 +1,109 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "ms@2.0.0",
+        "scope": null,
+        "escapedName": "ms",
+        "name": "ms",
+        "rawSpec": "2.0.0",
+        "spec": "2.0.0",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/debug"
+    ]
+  ],
+  "_from": "ms@2.0.0",
+  "_id": "ms@2.0.0",
+  "_inCache": true,
+  "_location": "/ms",
+  "_nodeVersion": "7.8.0",
+  "_npmOperationalInternal": {
+    "host": "packages-18-east.internal.npmjs.com",
+    "tmp": "tmp/ms-2.0.0.tgz_1494937565215_0.34005374647676945"
+  },
+  "_npmUser": {
+    "name": "leo",
+    "email": "leo@zeit.co"
+  },
+  "_npmVersion": "4.2.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "ms@2.0.0",
+    "scope": null,
+    "escapedName": "ms",
+    "name": "ms",
+    "rawSpec": "2.0.0",
+    "spec": "2.0.0",
+    "type": "version"
+  },
+  "_requiredBy": [
+    "/debug"
+  ],
+  "_resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+  "_shasum": "5608aeadfc00be6c2901df5f9861788de0d597c8",
+  "_shrinkwrap": null,
+  "_spec": "ms@2.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/debug",
+  "bugs": {
+    "url": "https://github.com/zeit/ms/issues"
+  },
+  "dependencies": {},
+  "description": "Tiny milisecond conversion utility",
+  "devDependencies": {
+    "eslint": "3.19.0",
+    "expect.js": "0.3.1",
+    "husky": "0.13.3",
+    "lint-staged": "3.4.1",
+    "mocha": "3.4.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "5608aeadfc00be6c2901df5f9861788de0d597c8",
+    "tarball": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
+  },
+  "eslintConfig": {
+    "extends": "eslint:recommended",
+    "env": {
+      "node": true,
+      "es6": true
+    }
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "9b88d1568a52ec9bb67ecc8d2aa224fa38fd41f4",
+  "homepage": "https://github.com/zeit/ms#readme",
+  "license": "MIT",
+  "lint-staged": {
+    "*.js": [
+      "npm run lint",
+      "prettier --single-quote --write",
+      "git add"
+    ]
+  },
+  "main": "./index",
+  "maintainers": [
+    {
+      "name": "leo",
+      "email": "leo@zeit.co"
+    },
+    {
+      "name": "rauchg",
+      "email": "rauchg@gmail.com"
+    }
+  ],
+  "name": "ms",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/zeit/ms.git"
+  },
+  "scripts": {
+    "lint": "eslint lib/* bin/*",
+    "precommit": "lint-staged",
+    "test": "mocha tests.js"
+  },
+  "version": "2.0.0"
+}
diff --git a/wrt/build/node_modules/ms/readme.md b/wrt/build/node_modules/ms/readme.md
new file mode 100644 (file)
index 0000000..84a9974
--- /dev/null
@@ -0,0 +1,51 @@
+# ms
+
+[![Build Status](https://travis-ci.org/zeit/ms.svg?branch=master)](https://travis-ci.org/zeit/ms)
+[![Slack Channel](http://zeit-slackin.now.sh/badge.svg)](https://zeit.chat/)
+
+Use this package to easily convert various time formats to milliseconds.
+
+## Examples
+
+```js
+ms('2 days')  // 172800000
+ms('1d')      // 86400000
+ms('10h')     // 36000000
+ms('2.5 hrs') // 9000000
+ms('2h')      // 7200000
+ms('1m')      // 60000
+ms('5s')      // 5000
+ms('1y')      // 31557600000
+ms('100')     // 100
+```
+
+### Convert from milliseconds
+
+```js
+ms(60000)             // "1m"
+ms(2 * 60000)         // "2m"
+ms(ms('10 hours'))    // "10h"
+```
+
+### Time format written-out
+
+```js
+ms(60000, { long: true })             // "1 minute"
+ms(2 * 60000, { long: true })         // "2 minutes"
+ms(ms('10 hours'), { long: true })    // "10 hours"
+```
+
+## Features
+
+- Works both in [node](https://nodejs.org) and in the browser.
+- If a number is supplied to `ms`, a string with a unit is returned.
+- If a string that contains the number is supplied, it returns it as a number (e.g.: it returns `100` for `'100'`).
+- If you pass a string with a number and a valid unit, the number of equivalent ms is returned.
+
+## Caught a bug?
+
+1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository to your own GitHub account and then [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device
+2. Link the package to the global module directory: `npm link`
+3. Within the module you want to test your local development instance of ms, just link it to the dependencies: `npm link ms`. Instead of the default one from npm, node will now use your clone of ms!
+
+As always, you can run the tests using: `npm test`
diff --git a/wrt/build/node_modules/npm-path/.travis.yml b/wrt/build/node_modules/npm-path/.travis.yml
new file mode 100644 (file)
index 0000000..c5b90d3
--- /dev/null
@@ -0,0 +1,6 @@
+language: node_js
+before_install: npm install npm -g
+node_js:
+  - "iojs"
+  - "0.12"
+  - "0.10"
diff --git a/wrt/build/node_modules/npm-path/find-prefix.js b/wrt/build/node_modules/npm-path/find-prefix.js
new file mode 100644 (file)
index 0000000..db3afca
--- /dev/null
@@ -0,0 +1,73 @@
+var fs = require('fs')
+var path = require('path')
+
+module.exports = function (options, cb) {
+  return findPrefix(options.cwd, options.isSync, cb)
+}
+
+function readdir (p, isSync, fn) {
+  if (isSync) {
+    try {
+      var val = fs.readdirSync(p)
+    } catch (err) {
+      return fn(err)
+    }
+
+    return fn(null, val)
+  }
+
+  return fs.readdir(p, fn)
+}
+
+// try to find the most reasonable prefix to use
+function findPrefix (p, isSync, cb_) {
+  function cb (er, p) {
+    if (isSync) return cb_(er, p)
+    process.nextTick(function () {
+      cb_(er, p)
+    })
+  }
+
+  p = path.resolve(p)
+  // if there's no node_modules folder, then
+  // walk up until we hopefully find one.
+  // if none anywhere, then use cwd.
+  var walkedUp = false
+  while (path.basename(p) === 'node_modules') {
+    p = path.dirname(p)
+    walkedUp = true
+  }
+  if (walkedUp) return cb(null, p)
+
+  findPrefix_(p, p, isSync, cb)
+}
+
+function findPrefix_ (p, original, isSync, cb) {
+  if (p === '/' ||
+      (process.platform === 'win32' && p.match(/^[a-zA-Z]:(\\|\/)?$/))) {
+    return cb(null, original)
+  }
+
+  readdir(p, isSync, function (er, files) {
+    // an error right away is a bad sign.
+    // unless the prefix was simply a non
+    // existent directory.
+    if (er && p === original) {
+      if (er.code === 'ENOENT') return cb(null, original)
+      return cb(er)
+    }
+
+    // walked up too high or something.
+    if (er) return cb(null, original)
+
+    if (files.indexOf('node_modules') !== -1 ||
+        files.indexOf('package.json') !== -1) {
+      return cb(null, p)
+    }
+
+    var d = path.dirname(p)
+    if (d === p) return cb(null, original)
+
+    return findPrefix_(d, original, isSync, cb)
+  })
+}
diff --git a/wrt/build/node_modules/npm-path/index.js b/wrt/build/node_modules/npm-path/index.js
new file mode 100644 (file)
index 0000000..cb3e6dc
--- /dev/null
@@ -0,0 +1,194 @@
+"use strict"
+
+var fs = require('fs')
+var path = require('path')
+var which = require('which')
+var findPrefix = require('./find-prefix')
+
+var PATH = getPATHKey()
+var SEPARATOR = getPATHSeparator()
+
+/**
+ * Get new $PATH setting with additional paths supplied by the npm.
+ *
+ * @param Object options Config options Object.
+ * @param Object options.env Environment to use. Default: process.env
+ * @param String options.wd Working directory. Default: process.cwd()
+ * @param Function fn callback function.
+ */
+
+function getPath(options, fn) {
+  var wd = options.cwd = options.cwd || process.cwd()
+  var env = options.env = options.env || process.env
+  var pathArr = getPathArr(options)
+
+  whichNpm(options, function(err, npmPath) {
+    if (err) return fn(err)
+    findPrefix(options, function (err, prefixPath) {
+      if (!err && prefixPath) {
+        // ignore err if cannot find prefix
+        pathArr.unshift(path.join(prefixPath, "node_modules", ".bin"))
+      }
+      // we also unshift the bundled node-gyp-bin folder so that
+      // the bundled one will be used for installing things.
+      pathArr.unshift(path.join(path.dirname(npmPath), "node-gyp-bin"))
+      if (env[PATH]) pathArr.push(env[PATH])
+      fn(null, pathArr.join(SEPARATOR))
+    })
+  })
+}
+
+/**
+ * Async wrapper around `getPath`.
+ */
+
+function getPathAsync(options, fn) {
+  // options is optional
+  if (options instanceof Function) fn = options, options = {}
+  // if no fn, execute as sync
+  if (!(fn instanceof Function)) return getPathSync(options)
+  options = options || {}
+  options.isSync = false
+  return getPath(options, fn)
+}
+
+/**
+ * Sync wrapper around `getPath`.
+ */
+
+function getPathSync(options) {
+  options = options || {}
+  options.isSync = true
+  var thePath = undefined
+  // sync magic: if sync true, callback is executed sync
+  // therefore we can set thePath from inside it before returning
+  getPath(options, function(err, foundPath) {
+    if (err) throw err
+    thePath = foundPath
+  })
+  return thePath
+}
+
+/**
+ * Change environment to include npm path adjustments.
+ *
+ * @param Object options Config options Object.
+ * @param Object options.env Environment to use. Default: process.env
+ * @param String options.wd Working directory. Default: process.cwd()
+ * @param Function fn callback function.
+ */
+
+function setPathAsync(options, fn) {
+  // options is optional
+  if (options instanceof Function) fn = options, options = {}
+  // if no fn, execute as sync
+  if (!(fn instanceof Function)) return setPathSync(options)
+
+  getPathAsync(options, function(err, newPath) {
+    if (err) return fn(err)
+    fn(null, options.env[PATH] = newPath)
+  })
+}
+
+/**
+ * Sync version of `setPathAsync`
+ */
+
+function setPathSync(options) {
+  options = options || {}
+  var newPath = getPathSync(options)
+  return options.env[PATH] = newPath
+}
+
+/**
+ * Generate simple parts of the npm path. Basically everything that doesn't
+ * depend on potentially async operations.
+ *
+ * @return Array
+ */
+
+function getPathArr(options) {
+  var wd = options.cwd
+  var pathArr = []
+  var p = wd.split(path.sep + "node_modules" + path.sep)
+  var acc = path.resolve(p.shift())
+
+  // first add the directory containing the `node` executable currently
+  // running, so that any lifecycle script that invoke "node" will execute
+  // this same one.
+  pathArr.unshift(path.dirname(process.execPath))
+
+  p.forEach(function (pp) {
+    pathArr.unshift(path.join(acc, "node_modules", ".bin"))
+    acc = path.join(acc, "node_modules", pp)
+  })
+  pathArr.unshift(path.join(acc, "node_modules", ".bin"))
+  return pathArr
+}
+
+/**
+ * Use callback-style signature but toggle sync execution if `isSync` is true.
+ * If options.npm is supplied, this will simply provide npm/bin/npm-cli.
+ */
+
+function whichNpm(options, fn) {
+  var npmCli = options.npm && path.join(options.npm, 'bin', 'npm-cli.js')
+
+  if (options.isSync) {
+    fn(null, fs.realpathSync(
+      npmCli || which.sync('npm')
+    ))
+    return
+  }
+
+  if (options.npm) {
+    process.nextTick(function() {
+      fn(null, npmCli)
+    })
+    return
+  }
+
+  which('npm', function(err, npmPath) {
+    if (err) return fn(err)
+    fs.realpath(npmPath, fn)
+  })
+}
+
+/**
+ * Get key to use as $PATH in environment
+ */
+
+function getPATHKey() {
+  var PATH = 'PATH'
+
+  // windows calls it's path "Path" usually, but this is not guaranteed.
+  if (process.platform === "win32") {
+    PATH = "Path"
+    Object.keys(process.env).forEach(function (e) {
+      if (e.match(/^PATH$/i)) {
+        PATH = e
+      }
+    })
+  }
+  return PATH
+}
+
+/**
+ * Get $PATH separator based on environment
+ */
+
+function getPATHSeparator() {
+  return process.platform === "win32" ? ";" : ":"
+}
+
+module.exports = setPathAsync
+module.exports.get = getPathAsync
+module.exports.get.sync = getPathSync
+module.exports.getSync = getPathSync
+
+module.exports.set = setPathAsync
+module.exports.set.sync = setPathSync
+module.exports.setSync = setPathSync
+
+module.exports.PATH = PATH
+module.exports.SEPARATOR = SEPARATOR
diff --git a/wrt/build/node_modules/npm-path/package.json b/wrt/build/node_modules/npm-path/package.json
new file mode 100644 (file)
index 0000000..a003812
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "npm-path@^1.0.1",
+        "scope": null,
+        "escapedName": "npm-path",
+        "name": "npm-path",
+        "rawSpec": "^1.0.1",
+        "spec": ">=1.0.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run"
+    ]
+  ],
+  "_from": "npm-path@>=1.0.1 <2.0.0",
+  "_id": "npm-path@1.1.0",
+  "_inCache": true,
+  "_location": "/npm-path",
+  "_nodeVersion": "4.2.4",
+  "_npmOperationalInternal": {
+    "host": "packages-6-west.internal.npmjs.com",
+    "tmp": "tmp/npm-path-1.1.0.tgz_1455592355776_0.19419350288808346"
+  },
+  "_npmUser": {
+    "name": "timoxley",
+    "email": "secoif@gmail.com"
+  },
+  "_npmVersion": "2.14.12",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "npm-path@^1.0.1",
+    "scope": null,
+    "escapedName": "npm-path",
+    "name": "npm-path",
+    "rawSpec": "^1.0.1",
+    "spec": ">=1.0.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/npm-run"
+  ],
+  "_resolved": "https://registry.npmjs.org/npm-path/-/npm-path-1.1.0.tgz",
+  "_shasum": "0474ae00419c327d54701b7cf2cd05dc88be1140",
+  "_shrinkwrap": null,
+  "_spec": "npm-path@^1.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run",
+  "author": {
+    "name": "Tim Oxley"
+  },
+  "bin": {
+    "npm-path": "bin/npm-path"
+  },
+  "bugs": {
+    "url": "https://github.com/timoxley/npm-path/issues"
+  },
+  "dependencies": {
+    "which": "^1.2.4"
+  },
+  "description": "Get a PATH with all executables available to npm scripts.",
+  "devDependencies": {
+    "faucet": "0.0.1",
+    "npm": "^3.7.2",
+    "tape": "^4.4.0"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "0474ae00419c327d54701b7cf2cd05dc88be1140",
+    "tarball": "https://registry.npmjs.org/npm-path/-/npm-path-1.1.0.tgz"
+  },
+  "gitHead": "e1e9acac92fe51f9a86076ae975b03f7d9d9cee0",
+  "homepage": "https://github.com/timoxley/npm-path",
+  "keywords": [
+    "npm",
+    "run",
+    "executable"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "timoxley",
+      "email": "secoif@gmail.com"
+    }
+  ],
+  "name": "npm-path",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/timoxley/npm-path.git"
+  },
+  "scripts": {
+    "test": "faucet"
+  },
+  "version": "1.1.0"
+}
diff --git a/wrt/build/node_modules/npm-path/test/fixture/level0/test/.npmignore b/wrt/build/node_modules/npm-path/test/fixture/level0/test/.npmignore
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/wrt/build/node_modules/npm-path/test/fixture/level0_node_modules/test/.npmignore b/wrt/build/node_modules/npm-path/test/fixture/level0_node_modules/test/.npmignore
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/wrt/build/node_modules/npm-path/test/index.js b/wrt/build/node_modules/npm-path/test/index.js
new file mode 100644 (file)
index 0000000..5ed97b0
--- /dev/null
@@ -0,0 +1,194 @@
+"use strict"
+
+var test = require('tape')
+
+var path = require('path')
+var fs = require('fs')
+var os = require('os')
+
+var which = require('which')
+
+var npmPath = require('../')
+
+var SEP = npmPath.SEPARATOR
+var PATH = npmPath.PATH
+
+var level0 = path.join(__dirname, 'fixture', 'level0')
+var level1 = path.join(level0, 'node_modules', 'level1')
+var level2 = path.join(level1, 'node_modules', 'level2')
+
+var level = [level0, level1, level2]
+var binPath = level.map(function(levelPath) {
+  return path.join(levelPath, "node_modules", ".bin")
+})
+
+test('exports separator', function(t) {
+  t.ok(npmPath.SEPARATOR)
+  t.end()
+})
+
+test('exports $PATH key', function(t) {
+  t.ok(npmPath.PATH)
+  t.end()
+})
+
+test('includes current node executable dir', function(t) {
+  var level0Path = npmPath.getSync({cwd: level0})
+  t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
+  t.end()
+})
+
+test('async version works', function(t) {
+  var isAsync = false
+  npmPath.get({cwd: level0}, function(err, level0Path) {
+    t.ifError(err)
+    t.ok(isAsync)
+    t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
+    t.end()
+  })
+  isAsync = true // can only be set if above callback not synchronous
+})
+
+test('no fn == sync', function(t) {
+  var level0Path = npmPath.get({cwd: level0})
+  t.ok(level0Path.indexOf(path.dirname(process.execPath) + SEP) != -1)
+  t.end()
+})
+
+test('sync options is optional', function(t) {
+  var newPath = npmPath.get()
+  t.ok(newPath.indexOf(path.dirname(process.execPath) + SEP) != -1)
+  t.end()
+})
+
+test('async options is optional', function(t) {
+  var isAsync = false
+  npmPath.get(function(err, newPath) {
+    t.ifError(err)
+    t.ok(newPath.indexOf(path.dirname(process.execPath) + SEP) != -1)
+    t.ok(isAsync)
+    t.end()
+  })
+  isAsync = true // can only be set if above callback not synchronous
+})
+
+test('includes bin from sibling dirs', function(t) {
+  t.test('from existing sibling directory', function(t) {
+    var level1Path = npmPath.getSync({cwd: path.join(level[0], 'test')})
+    t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level1Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
+    t.end()
+  })
+
+  t.test('from existing sibling directory async', function(t) {
+    npmPath({cwd: path.join(level[0], 'test')}, function(err, level1Path) {
+      t.ifError(err)
+      t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
+      t.ok(level1Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
+      t.end()
+    })
+  })
+})
+
+test('includes all .bin dirs in all parent node_modules folders', function(t) {
+  t.test('no nesting', function(t) {
+    var level0Path = npmPath.getSync({cwd: level[0]})
+    t.ok(level0Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level0Path.indexOf(binPath[1] + SEP) === -1, 'should not include child paths')
+    t.ok(level0Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
+    t.end()
+  })
+
+  t.test('1 level of nesting', function(t) {
+    var level1Path = npmPath.getSync({cwd: level[1]})
+    t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level1Path.indexOf(binPath[1] + SEP) != -1, 'should include level 1 .bin')
+    t.ok(level1Path.indexOf(binPath[2] + SEP) === -1, 'should not include child paths')
+    t.end()
+  })
+
+  t.test('2 levels of nesting', function(t) {
+    var level1Path = npmPath.getSync({cwd: level[2]})
+    t.ok(level1Path.indexOf(binPath[0] + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level1Path.indexOf(binPath[1] + SEP) != -1, 'should include level 1 .bin')
+    t.ok(level1Path.indexOf(binPath[2] + SEP) != -1, 'should include level 2 .bin')
+    t.end()
+  })
+
+  t.end()
+})
+
+test('handles directories with node_modules in the name', function(t) {
+  var trickyL0 = level[0].replace('level0', 'level0_node_modules')
+  var trickyL1 = level[1].replace('level0', 'level0_node_modules')
+  var trickyL2 = level[2].replace('level0', 'level0_node_modules')
+
+  t.test('no nesting', function(t) {
+    var level0Path = npmPath.getSync({cwd: trickyL0})
+    t.ok(level0Path.indexOf(path.join(trickyL0, 'node_modules', '.bin') + SEP) != -1, 'should include level 0 .bin')
+    t.end()
+  })
+
+  t.test('1 level of nesting', function(t) {
+    var level1Path = npmPath.getSync({cwd: trickyL1})
+
+    t.ok(level1Path.indexOf(path.join(trickyL0, 'node_modules', '.bin') + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level1Path.indexOf(path.join(trickyL1, 'node_modules', '.bin') + SEP) != -1, 'should include level 1 .bin')
+    t.end()
+  })
+
+  t.test('2 levels of nesting', function(t) {
+    var level2Path = npmPath.getSync({cwd: trickyL2})
+
+    t.ok(level2Path.indexOf(path.join(trickyL0, 'node_modules', '.bin') + SEP) != -1, 'should include level 0 .bin')
+    t.ok(level2Path.indexOf(path.join(trickyL1, 'node_modules', '.bin') + SEP) != -1, 'should include level 1 .bin')
+    t.ok(level2Path.indexOf(path.join(trickyL2, 'node_modules', '.bin') + SEP) != -1, 'should include level 1 .bin')
+    t.end()
+  })
+
+  t.end()
+})
+
+test('can set path', function(t) {
+  var oldPath = process.env[PATH]
+  npmPath.set.sync()
+  var newPath = process.env[PATH]
+  t.notDeepEqual(oldPath, newPath)
+  process.env[PATH] = oldPath
+  t.end()
+})
+
+test('includes node-gyp bundled with current npm', function(t) {
+  var oldPath = process.env[PATH]
+  var oldGypPath = which.sync('node-gyp')
+  npmPath()
+  var newGypPath = which.sync('node-gyp')
+  t.ok(newGypPath)
+  t.ok(fs.existsSync(newGypPath))
+  t.ok(newGypPath.indexOf(path.join('npm', 'bin', 'node-gyp-bin') + SEP !== -1))
+  process.env[PATH] = oldPath
+  t.end()
+})
+
+test('can set path to npm root to use for node-gyp lookup', function(t) {
+  var oldPath = process.env[PATH]
+  var pathToNpm = path.resolve(
+    fs.realpathSync(which.sync('npm')),
+    '..',
+    '..'
+  )
+
+  var tmpFile = path.join(os.tmpdir(), 'npm-path-custom-npm')
+  try {fs.unlinkSync(tmpFile)}catch(e){}
+  fs.linkSync(pathToNpm, tmpFile)
+  var newPath = npmPath.get({
+    npm: tmpFile
+  })
+  t.ok(newPath.indexOf(
+    path.join(tmpFile, 'bin', 'node-gyp-bin') + SEP
+  ) !== -1)
+  process.env[PATH] = oldPath
+  fs.unlinkSync(tmpFile)
+  t.end()
+})
+
diff --git a/wrt/build/node_modules/npm-run/node_modules/minimist/.travis.yml b/wrt/build/node_modules/npm-run/node_modules/minimist/.travis.yml
new file mode 100644 (file)
index 0000000..74c57bf
--- /dev/null
@@ -0,0 +1,8 @@
+language: node_js
+node_js:
+  - "0.8"
+  - "0.10"
+  - "0.12"
+  - "iojs"
+before_install:
+  - npm install -g npm@~1.4.6
diff --git a/wrt/build/node_modules/npm-run/node_modules/minimist/index.js b/wrt/build/node_modules/npm-run/node_modules/minimist/index.js
new file mode 100644 (file)
index 0000000..6a0559d
--- /dev/null
@@ -0,0 +1,236 @@
+module.exports = function (args, opts) {
+    if (!opts) opts = {};
+    
+    var flags = { bools : {}, strings : {}, unknownFn: null };
+
+    if (typeof opts['unknown'] === 'function') {
+        flags.unknownFn = opts['unknown'];
+    }
+
+    if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
+      flags.allBools = true;
+    } else {
+      [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
+          flags.bools[key] = true;
+      });
+    }
+    
+    var aliases = {};
+    Object.keys(opts.alias || {}).forEach(function (key) {
+        aliases[key] = [].concat(opts.alias[key]);
+        aliases[key].forEach(function (x) {
+            aliases[x] = [key].concat(aliases[key].filter(function (y) {
+                return x !== y;
+            }));
+        });
+    });
+
+    [].concat(opts.string).filter(Boolean).forEach(function (key) {
+        flags.strings[key] = true;
+        if (aliases[key]) {
+            flags.strings[aliases[key]] = true;
+        }
+     });
+
+    var defaults = opts['default'] || {};
+    
+    var argv = { _ : [] };
+    Object.keys(flags.bools).forEach(function (key) {
+        setArg(key, defaults[key] === undefined ? false : defaults[key]);
+    });
+    
+    var notFlags = [];
+
+    if (args.indexOf('--') !== -1) {
+        notFlags = args.slice(args.indexOf('--')+1);
+        args = args.slice(0, args.indexOf('--'));
+    }
+
+    function argDefined(key, arg) {
+        return (flags.allBools && /^--[^=]+$/.test(arg)) ||
+            flags.strings[key] || flags.bools[key] || aliases[key];
+    }
+
+    function setArg (key, val, arg) {
+        if (arg && flags.unknownFn && !argDefined(key, arg)) {
+            if (flags.unknownFn(arg) === false) return;
+        }
+
+        var value = !flags.strings[key] && isNumber(val)
+            ? Number(val) : val
+        ;
+        setKey(argv, key.split('.'), value);
+        
+        (aliases[key] || []).forEach(function (x) {
+            setKey(argv, x.split('.'), value);
+        });
+    }
+
+    function setKey (obj, keys, value) {
+        var o = obj;
+        keys.slice(0,-1).forEach(function (key) {
+            if (o[key] === undefined) o[key] = {};
+            o = o[key];
+        });
+
+        var key = keys[keys.length - 1];
+        if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
+            o[key] = value;
+        }
+        else if (Array.isArray(o[key])) {
+            o[key].push(value);
+        }
+        else {
+            o[key] = [ o[key], value ];
+        }
+    }
+    
+    function aliasIsBoolean(key) {
+      return aliases[key].some(function (x) {
+          return flags.bools[x];
+      });
+    }
+
+    for (var i = 0; i < args.length; i++) {
+        var arg = args[i];
+        
+        if (/^--.+=/.test(arg)) {
+            // Using [\s\S] instead of . because js doesn't support the
+            // 'dotall' regex modifier. See:
+            // http://stackoverflow.com/a/1068308/13216
+            var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
+            var key = m[1];
+            var value = m[2];
+            if (flags.bools[key]) {
+                value = value !== 'false';
+            }
+            setArg(key, value, arg);
+        }
+        else if (/^--no-.+/.test(arg)) {
+            var key = arg.match(/^--no-(.+)/)[1];
+            setArg(key, false, arg);
+        }
+        else if (/^--.+/.test(arg)) {
+            var key = arg.match(/^--(.+)/)[1];
+            var next = args[i + 1];
+            if (next !== undefined && !/^-/.test(next)
+            && !flags.bools[key]
+            && !flags.allBools
+            && (aliases[key] ? !aliasIsBoolean(key) : true)) {
+                setArg(key, next, arg);
+                i++;
+            }
+            else if (/^(true|false)$/.test(next)) {
+                setArg(key, next === 'true', arg);
+                i++;
+            }
+            else {
+                setArg(key, flags.strings[key] ? '' : true, arg);
+            }
+        }
+        else if (/^-[^-]+/.test(arg)) {
+            var letters = arg.slice(1,-1).split('');
+            
+            var broken = false;
+            for (var j = 0; j < letters.length; j++) {
+                var next = arg.slice(j+2);
+                
+                if (next === '-') {
+                    setArg(letters[j], next, arg)
+                    continue;
+                }
+                
+                if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {
+                    setArg(letters[j], next.split('=')[1], arg);
+                    broken = true;
+                    break;
+                }
+                
+                if (/[A-Za-z]/.test(letters[j])
+                && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
+                    setArg(letters[j], next, arg);
+                    broken = true;
+                    break;
+                }
+                
+                if (letters[j+1] && letters[j+1].match(/\W/)) {
+                    setArg(letters[j], arg.slice(j+2), arg);
+                    broken = true;
+                    break;
+                }
+                else {
+                    setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
+                }
+            }
+            
+            var key = arg.slice(-1)[0];
+            if (!broken && key !== '-') {
+                if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
+                && !flags.bools[key]
+                && (aliases[key] ? !aliasIsBoolean(key) : true)) {
+                    setArg(key, args[i+1], arg);
+                    i++;
+                }
+                else if (args[i+1] && /true|false/.test(args[i+1])) {
+                    setArg(key, args[i+1] === 'true', arg);
+                    i++;
+                }
+                else {
+                    setArg(key, flags.strings[key] ? '' : true, arg);
+                }
+            }
+        }
+        else {
+            if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
+                argv._.push(
+                    flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
+                );
+            }
+            if (opts.stopEarly) {
+                argv._.push.apply(argv._, args.slice(i + 1));
+                break;
+            }
+        }
+    }
+    
+    Object.keys(defaults).forEach(function (key) {
+        if (!hasKey(argv, key.split('.'))) {
+            setKey(argv, key.split('.'), defaults[key]);
+            
+            (aliases[key] || []).forEach(function (x) {
+                setKey(argv, x.split('.'), defaults[key]);
+            });
+        }
+    });
+    
+    if (opts['--']) {
+        argv['--'] = new Array();
+        notFlags.forEach(function(key) {
+            argv['--'].push(key);
+        });
+    }
+    else {
+        notFlags.forEach(function(key) {
+            argv._.push(key);
+        });
+    }
+
+    return argv;
+};
+
+function hasKey (obj, keys) {
+    var o = obj;
+    keys.slice(0,-1).forEach(function (key) {
+        o = (o[key] || {});
+    });
+
+    var key = keys[keys.length - 1];
+    return key in o;
+}
+
+function isNumber (x) {
+    if (typeof x === 'number') return true;
+    if (/^0x[0-9a-f]+$/i.test(x)) return true;
+    return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
+}
+
diff --git a/wrt/build/node_modules/npm-run/node_modules/minimist/package.json b/wrt/build/node_modules/npm-run/node_modules/minimist/package.json
new file mode 100644 (file)
index 0000000..f7e6fcb
--- /dev/null
@@ -0,0 +1,117 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "minimist@^1.1.0",
+        "scope": null,
+        "escapedName": "minimist",
+        "name": "minimist",
+        "rawSpec": "^1.1.0",
+        "spec": ">=1.1.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ],
+    [
+      {
+        "raw": "minimist@^1.1.0",
+        "scope": null,
+        "escapedName": "minimist",
+        "name": "minimist",
+        "rawSpec": "^1.1.0",
+        "spec": ">=1.1.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run"
+    ]
+  ],
+  "_from": "minimist@^1.1.0",
+  "_id": "minimist@1.2.0",
+  "_inCache": true,
+  "_location": "/npm-run/minimist",
+  "_nodeVersion": "2.4.0",
+  "_npmUser": {
+    "name": "substack",
+    "email": "substack@gmail.com"
+  },
+  "_npmVersion": "3.2.2",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "minimist@^1.1.0",
+    "scope": null,
+    "escapedName": "minimist",
+    "name": "minimist",
+    "rawSpec": "^1.1.0",
+    "spec": ">=1.1.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/npm-run"
+  ],
+  "_resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+  "_shasum": "a35008b20f41383eec1fb914f4cd5df79a264284",
+  "_shrinkwrap": null,
+  "_spec": "minimist@^1.1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run",
+  "author": {
+    "name": "James Halliday",
+    "email": "mail@substack.net",
+    "url": "http://substack.net"
+  },
+  "bugs": {
+    "url": "https://github.com/substack/minimist/issues"
+  },
+  "dependencies": {},
+  "description": "parse argument options",
+  "devDependencies": {
+    "covert": "^1.0.0",
+    "tap": "~0.4.0",
+    "tape": "^3.5.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "a35008b20f41383eec1fb914f4cd5df79a264284",
+    "tarball": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz"
+  },
+  "gitHead": "dc624482fcfec5bc669c68cdb861f00573ed4e64",
+  "homepage": "https://github.com/substack/minimist",
+  "keywords": [
+    "argv",
+    "getopt",
+    "parser",
+    "optimist"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "substack",
+      "email": "mail@substack.net"
+    }
+  ],
+  "name": "minimist",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/substack/minimist.git"
+  },
+  "scripts": {
+    "coverage": "covert test/*.js",
+    "test": "tap test/*.js"
+  },
+  "testling": {
+    "files": "test/*.js",
+    "browsers": [
+      "ie/6..latest",
+      "ff/5",
+      "firefox/latest",
+      "chrome/10",
+      "chrome/latest",
+      "safari/5.1",
+      "safari/latest",
+      "opera/12"
+    ]
+  },
+  "version": "1.2.0"
+}
diff --git a/wrt/build/node_modules/npm-run/node_modules/minimist/test/bool.js b/wrt/build/node_modules/npm-run/node_modules/minimist/test/bool.js
new file mode 100644 (file)
index 0000000..14b0717
--- /dev/null
@@ -0,0 +1,166 @@
+var parse = require('../');
+var test = require('tape');
+
+test('flag boolean default false', function (t) {
+    var argv = parse(['moo'], {
+        boolean: ['t', 'verbose'],
+        default: { verbose: false, t: false }
+    });
+    
+    t.deepEqual(argv, {
+        verbose: false,
+        t: false,
+        _: ['moo']
+    });
+    
+    t.deepEqual(typeof argv.verbose, 'boolean');
+    t.deepEqual(typeof argv.t, 'boolean');
+    t.end();
+
+});
+
+test('boolean groups', function (t) {
+    var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
+        boolean: ['x','y','z']
+    });
+    
+    t.deepEqual(argv, {
+        x : true,
+        y : false,
+        z : true,
+        _ : [ 'one', 'two', 'three' ]
+    });
+    
+    t.deepEqual(typeof argv.x, 'boolean');
+    t.deepEqual(typeof argv.y, 'boolean');
+    t.deepEqual(typeof argv.z, 'boolean');
+    t.end();
+});
+test('boolean and alias with chainable api', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp',  'derp' ];
+    var opts = {
+        herp: { alias: 'h', boolean: true }
+    };
+    var aliasedArgv = parse(aliased, {
+        boolean: 'herp',
+        alias: { h: 'herp' }
+    });
+    var propertyArgv = parse(regular, {
+        boolean: 'herp',
+        alias: { h: 'herp' }
+    });
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected); 
+    t.end();
+});
+
+test('boolean and alias with options hash', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp', 'derp' ];
+    var opts = {
+        alias: { 'h': 'herp' },
+        boolean: 'herp'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected);
+    t.end();
+});
+
+test('boolean and alias array with options hash', function (t) {
+    var aliased = [ '-h', 'derp' ];
+    var regular = [ '--herp', 'derp' ];
+    var alt = [ '--harp', 'derp' ];
+    var opts = {
+        alias: { 'h': ['herp', 'harp'] },
+        boolean: 'h'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var altPropertyArgv = parse(alt, opts);
+    var expected = {
+        harp: true,
+        herp: true,
+        h: true,
+        '_': [ 'derp' ]
+    };
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected);
+    t.same(altPropertyArgv, expected);
+    t.end();
+});
+
+test('boolean and alias using explicit true', function (t) {
+    var aliased = [ '-h', 'true' ];
+    var regular = [ '--herp',  'true' ];
+    var opts = {
+        alias: { h: 'herp' },
+        boolean: 'h'
+    };
+    var aliasedArgv = parse(aliased, opts);
+    var propertyArgv = parse(regular, opts);
+    var expected = {
+        herp: true,
+        h: true,
+        '_': [ ]
+    };
+
+    t.same(aliasedArgv, expected);
+    t.same(propertyArgv, expected); 
+    t.end();
+});
+
+// regression, see https://github.com/substack/node-optimist/issues/71
+test('boolean and --x=true', function(t) {
+    var parsed = parse(['--boool', '--other=true'], {
+        boolean: 'boool'
+    });
+
+    t.same(parsed.boool, true);
+    t.same(parsed.other, 'true');
+
+    parsed = parse(['--boool', '--other=false'], {
+        boolean: 'boool'
+    });
+    
+    t.same(parsed.boool, true);
+    t.same(parsed.other, 'false');
+    t.end();
+});
+
+test('boolean --boool=true', function (t) {
+    var parsed = parse(['--boool=true'], {
+        default: {
+            boool: false
+        },
+        boolean: ['boool']
+    });
+
+    t.same(parsed.boool, true);
+    t.end();
+});
+
+test('boolean --boool=false', function (t) {
+    var parsed = parse(['--boool=false'], {
+        default: {
+          boool: true
+        },
+        boolean: ['boool']
+    });
+
+    t.same(parsed.boool, false);
+    t.end();
+});
diff --git a/wrt/build/node_modules/npm-run/node_modules/minimist/test/kv_short.js b/wrt/build/node_modules/npm-run/node_modules/minimist/test/kv_short.js
new file mode 100644 (file)
index 0000000..f813b30
--- /dev/null
@@ -0,0 +1,16 @@
+var parse = require('../');
+var test = require('tape');
+
+test('short -k=v' , function (t) {
+    t.plan(1);
+    
+    var argv = parse([ '-b=123' ]);
+    t.deepEqual(argv, { b: 123, _: [] });
+});
+
+test('multi short -k=v' , function (t) {
+    t.plan(1);
+    
+    var argv = parse([ '-a=whatever', '-b=robots' ]);
+    t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
+});
diff --git a/wrt/build/node_modules/npm-run/package.json b/wrt/build/node_modules/npm-run/package.json
new file mode 100644 (file)
index 0000000..3ba7a65
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "npm-run@^1.1.1",
+        "scope": null,
+        "escapedName": "npm-run",
+        "name": "npm-run",
+        "rawSpec": "^1.1.1",
+        "spec": ">=1.1.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "npm-run@>=1.1.1 <2.0.0",
+  "_id": "npm-run@1.1.1",
+  "_inCache": true,
+  "_location": "/npm-run",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "timoxley",
+    "email": "secoif@gmail.com"
+  },
+  "_npmVersion": "2.5.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "npm-run@^1.1.1",
+    "scope": null,
+    "escapedName": "npm-run",
+    "name": "npm-run",
+    "rawSpec": "^1.1.1",
+    "spec": ">=1.1.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz",
+  "_shasum": "c4312451f382b7aee7a4858e60283abf3dbac8ec",
+  "_shrinkwrap": null,
+  "_spec": "npm-run@^1.1.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Tim Oxley"
+  },
+  "bin": {
+    "npm-run": "bin/npm-run.js"
+  },
+  "bugs": {
+    "url": "https://github.com/timoxley/npm-run/issues"
+  },
+  "dependencies": {
+    "minimist": "^1.1.0",
+    "npm-path": "^1.0.1",
+    "serializerr": "^1.0.1",
+    "sync-exec": "^0.5.0"
+  },
+  "description": "Run locally-installed executables.",
+  "devDependencies": {
+    "bl": "^0.9.4",
+    "faucet": "0.0.1",
+    "tape": "^3.5.0"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "c4312451f382b7aee7a4858e60283abf3dbac8ec",
+    "tarball": "https://registry.npmjs.org/npm-run/-/npm-run-1.1.1.tgz"
+  },
+  "gitHead": "5915646b4e65ac0956652e57be2e40f365885e4c",
+  "homepage": "https://github.com/timoxley/npm-run",
+  "keywords": [
+    "npm",
+    "path",
+    "executable",
+    "run"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "timoxley",
+      "email": "secoif@gmail.com"
+    }
+  ],
+  "name": "npm-run",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/timoxley/npm-run.git"
+  },
+  "scripts": {
+    "test": "faucet"
+  },
+  "version": "1.1.1"
+}
diff --git a/wrt/build/node_modules/object-assign/package.json b/wrt/build/node_modules/object-assign/package.json
new file mode 100644 (file)
index 0000000..85efdba
--- /dev/null
@@ -0,0 +1,102 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "object-assign@^2.0.0",
+        "scope": null,
+        "escapedName": "object-assign",
+        "name": "object-assign",
+        "rawSpec": "^2.0.0",
+        "spec": ">=2.0.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint"
+    ]
+  ],
+  "_from": "object-assign@>=2.0.0 <3.0.0",
+  "_id": "object-assign@2.1.1",
+  "_inCache": true,
+  "_location": "/object-assign",
+  "_nodeVersion": "0.12.4",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "2.10.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "object-assign@^2.0.0",
+    "scope": null,
+    "escapedName": "object-assign",
+    "name": "object-assign",
+    "rawSpec": "^2.0.0",
+    "spec": ">=2.0.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/eslint"
+  ],
+  "_resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz",
+  "_shasum": "43c36e5d569ff8e4816c4efa8be02d26967c18aa",
+  "_shrinkwrap": null,
+  "_spec": "object-assign@^2.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/eslint",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "http://sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/object-assign/issues"
+  },
+  "dependencies": {},
+  "description": "ES6 Object.assign() ponyfill",
+  "devDependencies": {
+    "mocha": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "43c36e5d569ff8e4816c4efa8be02d26967c18aa",
+    "tarball": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "gitHead": "4cd0365f5a78dd369473ca0bbd31f7b234148c42",
+  "homepage": "https://github.com/sindresorhus/object-assign",
+  "keywords": [
+    "object",
+    "assign",
+    "extend",
+    "properties",
+    "es6",
+    "ecmascript",
+    "harmony",
+    "ponyfill",
+    "prollyfill",
+    "polyfill",
+    "shim",
+    "browser"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    }
+  ],
+  "name": "object-assign",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/object-assign.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "2.1.1"
+}
diff --git a/wrt/build/node_modules/path-parse/.travis.yml b/wrt/build/node_modules/path-parse/.travis.yml
new file mode 100644 (file)
index 0000000..dae31da
--- /dev/null
@@ -0,0 +1,9 @@
+language: node_js
+node_js:
+  - "0.12"
+  - "0.11"
+  - "0.10"
+  - "0.10.12"
+  - "0.8"
+  - "0.6"
+  - "iojs"
diff --git a/wrt/build/node_modules/path-parse/README.md b/wrt/build/node_modules/path-parse/README.md
new file mode 100644 (file)
index 0000000..c6af02c
--- /dev/null
@@ -0,0 +1,44 @@
+# path-parse [![Build Status](https://travis-ci.org/jbgutierrez/path-parse.svg?branch=master)](https://travis-ci.org/jbgutierrez/path-parse)
+
+> Node.js [`path.parse(pathString)`](https://nodejs.org/api/path.html#path_path_parse_pathstring) ponyfill.
+
+> Ponyfill: A polyfill that doesn't overwrite the native method
+
+## Install
+
+```
+$ npm install --save path-parse
+```
+
+## Usage
+
+```js
+var pathParse = require('path-parse');
+
+pathParse('/home/user/dir/file.txt');
+//=> {
+//       root : "/",
+//       dir : "/home/user/dir",
+//       base : "file.txt",
+//       ext : ".txt",
+//       name : "file"
+//   }
+```
+
+## API
+
+See [`path.parse(pathString)`](https://nodejs.org/api/path.html#path_path_parse_pathstring) docs.
+
+### pathParse(path)
+
+### pathParse.posix(path)
+
+The Posix specific version.
+
+### pathParse.win32(path)
+
+The Windows specific version.
+
+## License
+
+MIT © [Javier Blanco](http://jbgutierrez.info)
diff --git a/wrt/build/node_modules/path-parse/index.js b/wrt/build/node_modules/path-parse/index.js
new file mode 100644 (file)
index 0000000..3b7601f
--- /dev/null
@@ -0,0 +1,93 @@
+'use strict';
+
+var isWindows = process.platform === 'win32';
+
+// Regex to split a windows path into three parts: [*, device, slash,
+// tail] windows-only
+var splitDeviceRe =
+    /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
+
+// Regex to split the tail part of the above into [*, dir, basename, ext]
+var splitTailRe =
+    /^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/;
+
+var win32 = {};
+
+// Function to split a filename into [root, dir, basename, ext]
+function win32SplitPath(filename) {
+  // Separate device+slash from tail
+  var result = splitDeviceRe.exec(filename),
+      device = (result[1] || '') + (result[2] || ''),
+      tail = result[3] || '';
+  // Split the tail into dir, basename and extension
+  var result2 = splitTailRe.exec(tail),
+      dir = result2[1],
+      basename = result2[2],
+      ext = result2[3];
+  return [device, dir, basename, ext];
+}
+
+win32.parse = function(pathString) {
+  if (typeof pathString !== 'string') {
+    throw new TypeError(
+        "Parameter 'pathString' must be a string, not " + typeof pathString
+    );
+  }
+  var allParts = win32SplitPath(pathString);
+  if (!allParts || allParts.length !== 4) {
+    throw new TypeError("Invalid path '" + pathString + "'");
+  }
+  return {
+    root: allParts[0],
+    dir: allParts[0] + allParts[1].slice(0, -1),
+    base: allParts[2],
+    ext: allParts[3],
+    name: allParts[2].slice(0, allParts[2].length - allParts[3].length)
+  };
+};
+
+
+
+// Split a filename into [root, dir, basename, ext], unix version
+// 'root' is just a slash, or nothing.
+var splitPathRe =
+    /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
+var posix = {};
+
+
+function posixSplitPath(filename) {
+  return splitPathRe.exec(filename).slice(1);
+}
+
+
+posix.parse = function(pathString) {
+  if (typeof pathString !== 'string') {
+    throw new TypeError(
+        "Parameter 'pathString' must be a string, not " + typeof pathString
+    );
+  }
+  var allParts = posixSplitPath(pathString);
+  if (!allParts || allParts.length !== 4) {
+    throw new TypeError("Invalid path '" + pathString + "'");
+  }
+  allParts[1] = allParts[1] || '';
+  allParts[2] = allParts[2] || '';
+  allParts[3] = allParts[3] || '';
+
+  return {
+    root: allParts[0],
+    dir: allParts[0] + allParts[1].slice(0, -1),
+    base: allParts[2],
+    ext: allParts[3],
+    name: allParts[2].slice(0, allParts[2].length - allParts[3].length)
+  };
+};
+
+
+if (isWindows)
+  module.exports = win32.parse;
+else /* posix */
+  module.exports = posix.parse;
+
+module.exports.posix = posix.parse;
+module.exports.win32 = win32.parse;
diff --git a/wrt/build/node_modules/path-parse/index.min.js b/wrt/build/node_modules/path-parse/index.min.js
new file mode 100644 (file)
index 0000000..027da51
--- /dev/null
@@ -0,0 +1 @@
+"use strict";var isWindows=process.platform==="win32";var splitDeviceRe=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;var splitTailRe=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/;var win32={};function win32SplitPath(b){var a=splitDeviceRe.exec(b),g=(a[1]||"")+(a[2]||""),e=a[3]||"";var d=splitTailRe.exec(e),c=d[1],h=d[2],f=d[3];return[g,c,h,f]}win32.parse=function(b){if(typeof b!=="string"){throw new TypeError("Parameter 'pathString' must be a string, not "+typeof b)}var a=win32SplitPath(b);if(!a||a.length!==4){throw new TypeError("Invalid path '"+b+"'")}return{root:a[0],dir:a[0]+a[1].slice(0,-1),base:a[2],ext:a[3],name:a[2].slice(0,a[2].length-a[3].length)}};var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;var posix={};function posixSplitPath(a){return splitPathRe.exec(a).slice(1)}posix.parse=function(b){if(typeof b!=="string"){throw new TypeError("Parameter 'pathString' must be a string, not "+typeof b)}var a=posixSplitPath(b);if(!a||a.length!==4){throw new TypeError("Invalid path '"+b+"'")}a[1]=a[1]||"";a[2]=a[2]||"";a[3]=a[3]||"";return{root:a[0],dir:a[0]+a[1].slice(0,-1),base:a[2],ext:a[3],name:a[2].slice(0,a[2].length-a[3].length)}};if(isWindows){module.exports=win32.parse}else{module.exports=posix.parse}module.exports.posix=posix.parse;module.exports.win32=win32.parse;
\ No newline at end of file
diff --git a/wrt/build/node_modules/path-parse/package.json b/wrt/build/node_modules/path-parse/package.json
new file mode 100644 (file)
index 0000000..1adfd8f
--- /dev/null
@@ -0,0 +1,92 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "path-parse@^1.0.5",
+        "scope": null,
+        "escapedName": "path-parse",
+        "name": "path-parse",
+        "rawSpec": "^1.0.5",
+        "spec": ">=1.0.5 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter/node_modules/resolve"
+    ]
+  ],
+  "_from": "path-parse@>=1.0.5 <2.0.0",
+  "_id": "path-parse@1.0.5",
+  "_inCache": true,
+  "_location": "/path-parse",
+  "_npmUser": {
+    "name": "jbgutierrez",
+    "email": "jbgutierrez@gmail.com"
+  },
+  "_npmVersion": "1.4.9",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "path-parse@^1.0.5",
+    "scope": null,
+    "escapedName": "path-parse",
+    "name": "path-parse",
+    "rawSpec": "^1.0.5",
+    "spec": ">=1.0.5 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter/resolve"
+  ],
+  "_resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
+  "_shasum": "3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1",
+  "_shrinkwrap": null,
+  "_spec": "path-parse@^1.0.5",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter/node_modules/resolve",
+  "author": {
+    "name": "Javier Blanco",
+    "email": "http://jbgutierrez.info"
+  },
+  "bugs": {
+    "url": "https://github.com/jbgutierrez/path-parse/issues"
+  },
+  "dependencies": {},
+  "description": "Node.js path.parse() ponyfill",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1",
+    "tarball": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz"
+  },
+  "homepage": "https://github.com/jbgutierrez/path-parse#readme",
+  "keywords": [
+    "path",
+    "paths",
+    "file",
+    "dir",
+    "parse",
+    "built-in",
+    "util",
+    "utils",
+    "core",
+    "ponyfill",
+    "polyfill",
+    "shim"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "jbgutierrez",
+      "email": "jbgutierrez@gmail.com"
+    }
+  ],
+  "name": "path-parse",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jbgutierrez/path-parse.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.0.5"
+}
diff --git a/wrt/build/node_modules/path-parse/test.js b/wrt/build/node_modules/path-parse/test.js
new file mode 100644 (file)
index 0000000..0b30c12
--- /dev/null
@@ -0,0 +1,77 @@
+var assert = require('assert');
+var pathParse = require('./index');
+
+var winParseTests = [
+  [{ root: 'C:\\', dir: 'C:\\path\\dir', base: 'index.html', ext: '.html', name: 'index' }, 'C:\\path\\dir\\index.html'],
+  [{ root: 'C:\\', dir: 'C:\\another_path\\DIR\\1\\2\\33', base: 'index', ext: '', name: 'index' }, 'C:\\another_path\\DIR\\1\\2\\33\\index'],
+  [{ root: '', dir: 'another_path\\DIR with spaces\\1\\2\\33', base: 'index', ext: '', name: 'index' }, 'another_path\\DIR with spaces\\1\\2\\33\\index'],
+  [{ root: '\\', dir: '\\foo', base: 'C:', ext: '', name: 'C:' }, '\\foo\\C:'],
+  [{ root: '', dir: '', base: 'file', ext: '', name: 'file' }, 'file'],
+  [{ root: '', dir: '.', base: 'file', ext: '', name: 'file' }, '.\\file'],
+
+  // unc
+  [{ root: '\\\\server\\share\\', dir: '\\\\server\\share\\', base: 'file_path', ext: '', name: 'file_path' }, '\\\\server\\share\\file_path'],
+  [{ root: '\\\\server two\\shared folder\\', dir: '\\\\server two\\shared folder\\', base: 'file path.zip', ext: '.zip', name: 'file path' }, '\\\\server two\\shared folder\\file path.zip'],
+  [{ root: '\\\\teela\\admin$\\', dir: '\\\\teela\\admin$\\', base: 'system32', ext: '', name: 'system32' }, '\\\\teela\\admin$\\system32'],
+  [{ root: '\\\\?\\UNC\\', dir: '\\\\?\\UNC\\server', base: 'share', ext: '', name: 'share' }, '\\\\?\\UNC\\server\\share']
+];
+
+var winSpecialCaseFormatTests = [
+  [{dir: 'some\\dir'}, 'some\\dir\\'],
+  [{base: 'index.html'}, 'index.html'],
+  [{}, '']
+];
+
+var unixParseTests = [
+  [{ root: '/', dir: '/home/user/dir', base: 'file.txt', ext: '.txt', name: 'file' }, '/home/user/dir/file.txt'],
+  [{ root: '/', dir: '/home/user/a dir', base: 'another File.zip', ext: '.zip', name: 'another File' }, '/home/user/a dir/another File.zip'],
+  [{ root: '/', dir: '/home/user/a dir/', base: 'another&File.', ext: '.', name: 'another&File' }, '/home/user/a dir//another&File.'],
+  [{ root: '/', dir: '/home/user/a$$$dir/', base: 'another File.zip', ext: '.zip', name: 'another File' }, '/home/user/a$$$dir//another File.zip'],
+  [{ root: '', dir: 'user/dir', base: 'another File.zip', ext: '.zip', name: 'another File' }, 'user/dir/another File.zip'],
+  [{ root: '', dir: '', base: 'file', ext: '', name: 'file' }, 'file'],
+  [{ root: '', dir: '', base: '.\\file', ext: '', name: '.\\file' }, '.\\file'],
+  [{ root: '', dir: '.', base: 'file', ext: '', name: 'file' }, './file'],
+  [{ root: '', dir: '', base: 'C:\\foo', ext: '', name: 'C:\\foo' }, 'C:\\foo']
+];
+
+var unixSpecialCaseFormatTests = [
+  [{dir: 'some/dir'}, 'some/dir/'],
+  [{base: 'index.html'}, 'index.html'],
+  [{}, '']
+];
+
+var errors = [
+  {input: null, message: /Parameter 'pathString' must be a string, not/},
+  {input: {}, message: /Parameter 'pathString' must be a string, not object/},
+  {input: true, message: /Parameter 'pathString' must be a string, not boolean/},
+  {input: 1, message: /Parameter 'pathString' must be a string, not number/},
+  {input: undefined, message: /Parameter 'pathString' must be a string, not undefined/},
+];
+
+checkParseFormat(pathParse.win32, winParseTests);
+checkParseFormat(pathParse.posix, unixParseTests);
+checkErrors(pathParse.win32);
+checkErrors(pathParse.posix);
+
+function checkErrors(parse) {
+  errors.forEach(function(errorCase) {
+    try {
+      parse(errorCase.input);
+    } catch(err) {
+      assert.ok(err instanceof TypeError);
+      assert.ok(
+        errorCase.message.test(err.message),
+        'expected ' + errorCase.message + ' to match ' + err.message
+      );
+      return;
+    }
+
+    assert.fail('should have thrown');
+  });
+}
+
+function checkParseFormat(parse, testCases) {
+  testCases.forEach(function(testCase) {
+    assert.deepEqual(parse(testCase[1]), testCase[0]);
+  });
+}
diff --git a/wrt/build/node_modules/path-parse/test.min.js b/wrt/build/node_modules/path-parse/test.min.js
new file mode 100644 (file)
index 0000000..90cc2b8
--- /dev/null
@@ -0,0 +1 @@
+var assert=require("assert");var pathParse=require("./index");var winParseTests=[[{root:"C:\\",dir:"C:\\path\\dir",base:"index.html",ext:".html",name:"index"},"C:\\path\\dir\\index.html"],[{root:"C:\\",dir:"C:\\another_path\\DIR\\1\\2\\33",base:"index",ext:"",name:"index"},"C:\\another_path\\DIR\\1\\2\\33\\index"],[{root:"",dir:"another_path\\DIR with spaces\\1\\2\\33",base:"index",ext:"",name:"index"},"another_path\\DIR with spaces\\1\\2\\33\\index"],[{root:"\\",dir:"\\foo",base:"C:",ext:"",name:"C:"},"\\foo\\C:"],[{root:"",dir:"",base:"file",ext:"",name:"file"},"file"],[{root:"",dir:".",base:"file",ext:"",name:"file"},".\\file"],[{root:"\\\\server\\share\\",dir:"\\\\server\\share\\",base:"file_path",ext:"",name:"file_path"},"\\\\server\\share\\file_path"],[{root:"\\\\server two\\shared folder\\",dir:"\\\\server two\\shared folder\\",base:"file path.zip",ext:".zip",name:"file path"},"\\\\server two\\shared folder\\file path.zip"],[{root:"\\\\teela\\admin$\\",dir:"\\\\teela\\admin$\\",base:"system32",ext:"",name:"system32"},"\\\\teela\\admin$\\system32"],[{root:"\\\\?\\UNC\\",dir:"\\\\?\\UNC\\server",base:"share",ext:"",name:"share"},"\\\\?\\UNC\\server\\share"]];var winSpecialCaseFormatTests=[[{dir:"some\\dir"},"some\\dir\\"],[{base:"index.html"},"index.html"],[{},""]];var unixParseTests=[[{root:"/",dir:"/home/user/dir",base:"file.txt",ext:".txt",name:"file"},"/home/user/dir/file.txt"],[{root:"/",dir:"/home/user/a dir",base:"another File.zip",ext:".zip",name:"another File"},"/home/user/a dir/another File.zip"],[{root:"/",dir:"/home/user/a dir/",base:"another&File.",ext:".",name:"another&File"},"/home/user/a dir//another&File."],[{root:"/",dir:"/home/user/a$$$dir/",base:"another File.zip",ext:".zip",name:"another File"},"/home/user/a$$$dir//another File.zip"],[{root:"",dir:"user/dir",base:"another File.zip",ext:".zip",name:"another File"},"user/dir/another File.zip"],[{root:"",dir:"",base:"file",ext:"",name:"file"},"file"],[{root:"",dir:"",base:".\\file",ext:"",name:".\\file"},".\\file"],[{root:"",dir:".",base:"file",ext:"",name:"file"},"./file"],[{root:"",dir:"",base:"C:\\foo",ext:"",name:"C:\\foo"},"C:\\foo"]];var unixSpecialCaseFormatTests=[[{dir:"some/dir"},"some/dir/"],[{base:"index.html"},"index.html"],[{},""]];var errors=[{input:null,message:/Parameter 'pathString' must be a string, not/},{input:{},message:/Parameter 'pathString' must be a string, not object/},{input:true,message:/Parameter 'pathString' must be a string, not boolean/},{input:1,message:/Parameter 'pathString' must be a string, not number/},{input:undefined,message:/Parameter 'pathString' must be a string, not undefined/},];checkParseFormat(pathParse.win32,winParseTests);checkParseFormat(pathParse.posix,unixParseTests);checkErrors(pathParse.win32);checkErrors(pathParse.posix);function checkErrors(a){errors.forEach(function(c){try{a(c.input)}catch(b){assert.ok(b instanceof TypeError);assert.ok(c.message.test(b.message),"expected "+c.message+" to match "+b.message);return}assert.fail("should have thrown")})}function checkParseFormat(b,a){a.forEach(function(c){assert.deepEqual(b(c[1]),c[0])})};
\ No newline at end of file
diff --git a/wrt/build/node_modules/protochain/History.md b/wrt/build/node_modules/protochain/History.md
new file mode 100644 (file)
index 0000000..97d9815
--- /dev/null
@@ -0,0 +1,40 @@
+1.0.5 / 2016-06-30
+==================
+
+  * Fix default export for CommonJS compatibility. (@ljharb)
+
+1.0.4 / 2016-06-30
+==================
+
+  * Lint code with standard.
+  * Build with babel 6.
+  * Remove broken class extends Function test. Does not work with babel 6.
+  * Add more tests, including tests for collections & typed arrays.
+  * Mild internal refactoring.
+  * Update tape.
+
+1.0.3 / 2015-06-29
+==================
+
+  * Update babel & tape devDependencies.
+  * Functions are also not primitives. (@ljharb)
+
+1.0.2 / 2015-03-07
+==================
+
+  * Add History.md.
+  * Avoid running Symbol test on platforms where Symbol is undefined.
+  * More strict test suite.
+  * Support Symbols. (@hemanth)
+  * Add Travis CI.
+
+1.0.1 / 2015-03-06
+==================
+
+  * Add LICENSE.
+  * Remove npm init added dependencies.
+
+1.0.0 / 2015-03-06
+==================
+
+  * Birth
diff --git a/wrt/build/node_modules/protochain/index.js b/wrt/build/node_modules/protochain/index.js
new file mode 100644 (file)
index 0000000..cbdbe05
--- /dev/null
@@ -0,0 +1,17 @@
+'use strict'
+
+module.exports = function protochain (obj) {
+  const chain = []
+  let target = getPrototypeOf(obj)
+  while (target) {
+    chain.push(target)
+    target = getPrototypeOf(target)
+  }
+
+  return chain
+}
+
+function getPrototypeOf (obj) {
+  if (obj == null) return null
+  return Object.getPrototypeOf(Object(obj))
+}
diff --git a/wrt/build/node_modules/protochain/package.json b/wrt/build/node_modules/protochain/package.json
new file mode 100644 (file)
index 0000000..163d02e
--- /dev/null
@@ -0,0 +1,110 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "protochain@^1.0.5",
+        "scope": null,
+        "escapedName": "protochain",
+        "name": "protochain",
+        "rawSpec": "^1.0.5",
+        "spec": ">=1.0.5 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/serializerr"
+    ]
+  ],
+  "_from": "protochain@>=1.0.5 <2.0.0",
+  "_id": "protochain@1.0.5",
+  "_inCache": true,
+  "_location": "/protochain",
+  "_nodeVersion": "6.2.2",
+  "_npmOperationalInternal": {
+    "host": "packages-16-east.internal.npmjs.com",
+    "tmp": "tmp/protochain-1.0.5.tgz_1467272419690_0.4231074433773756"
+  },
+  "_npmUser": {
+    "name": "timoxley",
+    "email": "secoif@gmail.com"
+  },
+  "_npmVersion": "3.9.5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "protochain@^1.0.5",
+    "scope": null,
+    "escapedName": "protochain",
+    "name": "protochain",
+    "rawSpec": "^1.0.5",
+    "spec": ">=1.0.5 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/serializerr"
+  ],
+  "_resolved": "https://registry.npmjs.org/protochain/-/protochain-1.0.5.tgz",
+  "_shasum": "991c407e99de264aadf8f81504b5e7faf7bfa260",
+  "_shrinkwrap": null,
+  "_spec": "protochain@^1.0.5",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/serializerr",
+  "author": {
+    "name": "Tim Oxley",
+    "email": "secoif@gmail.com"
+  },
+  "babel": {
+    "presets": [
+      "es2015"
+    ]
+  },
+  "bugs": {
+    "url": "https://github.com/timoxley/protochain/issues"
+  },
+  "dependencies": {},
+  "description": "Get the prototype chain of any value as an Array",
+  "devDependencies": {
+    "babel-cli": "^6.10.1",
+    "babel-preset-es2015": "^6.9.0",
+    "standard": "^7.1.2",
+    "tape": "^4.6.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "991c407e99de264aadf8f81504b5e7faf7bfa260",
+    "tarball": "https://registry.npmjs.org/protochain/-/protochain-1.0.5.tgz"
+  },
+  "gitHead": "eece11ecc91e46e0cc55f1b3510f584239966afd",
+  "homepage": "https://github.com/timoxley/protochain",
+  "keywords": [
+    "object",
+    "inherit",
+    "inheritance",
+    "prototypical",
+    "prototype",
+    "utility",
+    "proto",
+    "hierarchy",
+    "ancestors",
+    "grandparents",
+    "parents"
+  ],
+  "license": "ISC",
+  "main": "protochain.js",
+  "maintainers": [
+    {
+      "name": "timoxley",
+      "email": "secoif@gmail.com"
+    }
+  ],
+  "name": "protochain",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/timoxley/protochain.git"
+  },
+  "scripts": {
+    "posttest": "rm protochain-test.js",
+    "prepublish": "babel index.js > protochain.js",
+    "pretest": "npm run prepublish",
+    "test": "(babel test.js > protochain-test.js) && tape protochain-test.js && standard index.js test.js"
+  },
+  "version": "1.0.5"
+}
diff --git a/wrt/build/node_modules/protochain/protochain.js b/wrt/build/node_modules/protochain/protochain.js
new file mode 100644 (file)
index 0000000..e1da79c
--- /dev/null
@@ -0,0 +1,18 @@
+'use strict';
+
+module.exports = function protochain(obj) {
+  var chain = [];
+  var target = getPrototypeOf(obj);
+  while (target) {
+    chain.push(target);
+    target = getPrototypeOf(target);
+  }
+
+  return chain;
+};
+
+function getPrototypeOf(obj) {
+  if (obj == null) return null;
+  return Object.getPrototypeOf(Object(obj));
+}
+
diff --git a/wrt/build/node_modules/protochain/test.js b/wrt/build/node_modules/protochain/test.js
new file mode 100644 (file)
index 0000000..3b3bac9
--- /dev/null
@@ -0,0 +1,136 @@
+'use strict'
+
+const test = require('tape')
+const protochain = require('./')
+
+test('protochain', t => {
+  t.test('finds correct prototype chain', t => {
+    const obj = {}
+    strictEqualArray(t, protochain(obj), [Object.prototype])
+    strictEqualArray(t, protochain(Object.create(obj)), [obj, Object.prototype])
+    strictEqualArray(t, protochain(new Error('message')), [Error.prototype, Object.prototype])
+    strictEqualArray(t, protochain(new TypeError('message')), [TypeError.prototype, Error.prototype, Object.prototype])
+    /* eslint-disable no-new-wrappers */
+    strictEqualArray(t, protochain(new String()), [String.prototype, Object.prototype])
+    strictEqualArray(t, protochain(new Number()), [Number.prototype, Object.prototype])
+    /* eslint-enable no-new-wrappers */
+    /* eslint-disable no-new-func */
+    strictEqualArray(t, protochain(new Function()), [Function.prototype, Object.prototype])
+    /* eslint-enable no-new-func */
+    strictEqualArray(t, protochain(new RegExp('abc')), [RegExp.prototype, Object.prototype])
+    strictEqualArray(t, protochain(new Date()), [Date.prototype, Object.prototype])
+    t.end()
+  })
+
+  t.test('null prototype is handled correctly', t => {
+    const noProtoObject = Object.create(null)
+    strictEqualArray(t, protochain(noProtoObject), [])
+    strictEqualArray(t, protochain(Object.create(noProtoObject)), [noProtoObject])
+    t.end()
+  })
+
+  t.test('falsey valueOf', t => {
+    const obj = {
+      valueOf () {
+        return false
+      }
+    }
+
+    strictEqualArray(t, protochain(obj), [Object.prototype])
+    t.end()
+  })
+
+  t.test('non-object values cooerce to object counterparts correctly', t => {
+    strictEqualArray(t, protochain(function () {}), [Function.prototype, Object.prototype])
+    strictEqualArray(t, protochain('abc'), [String.prototype, Object.prototype])
+    strictEqualArray(t, protochain(123), [Number.prototype, Object.prototype])
+    strictEqualArray(t, protochain(/abc/), [RegExp.prototype, Object.prototype])
+    strictEqualArray(t, protochain(true), [Boolean.prototype, Object.prototype])
+    t.test('falsey values with prototypes', t => {
+      strictEqualArray(t, protochain(NaN), [Number.prototype, Object.prototype])
+      strictEqualArray(t, protochain(false), [Boolean.prototype, Object.prototype])
+      strictEqualArray(t, protochain(''), [String.prototype, Object.prototype])
+      strictEqualArray(t, protochain(0), [Number.prototype, Object.prototype])
+      t.end()
+    })
+    t.end()
+  })
+
+  t.test('null values produce empty list', t => {
+    strictEqualArray(t, protochain(), [])
+    strictEqualArray(t, protochain(undefined), [])
+    strictEqualArray(t, protochain(null), [])
+    t.end()
+  })
+
+  t.test('ES5 inheritance', t => {
+    function Person () {}
+    function FancyPerson () {
+      Person.call(this)
+    }
+    FancyPerson.prototype = Object.create(Person.prototype)
+
+    strictEqualArray(t, protochain(new Person()), [Person.prototype, Object.prototype])
+    strictEqualArray(t, protochain(new FancyPerson()), [FancyPerson.prototype, Person.prototype, Object.prototype])
+    t.end()
+  })
+
+  t.test('ES6 inheritance', t => {
+    // note this will be compiled to ES5 in the test
+    class Person {}
+    class FancyPerson extends Person {}
+
+    strictEqualArray(t, protochain(new Person()), [Person.prototype, Object.prototype])
+    strictEqualArray(t, protochain(new FancyPerson()), [FancyPerson.prototype, Person.prototype, Object.prototype])
+    t.end()
+  })
+
+  // new native types which may not be supported
+  if (typeof Symbol !== 'undefined') {
+    t.test('symbol support', t => {
+      const foo = Symbol('foo')
+      strictEqualArray(t, protochain(foo), [Symbol.prototype, Object.prototype])
+      t.end()
+    })
+  }
+
+  if (typeof Promise !== 'undefined') {
+    t.test('promise support', t => {
+      const foo = Promise.resolve()
+      strictEqualArray(t, protochain(foo), [Promise.prototype, Object.prototype])
+      t.end()
+    })
+  }
+
+  if (typeof Map !== 'undefined') {
+    t.test('collections support', t => {
+      strictEqualArray(t, protochain(new Map()), [Map.prototype, Object.prototype])
+      strictEqualArray(t, protochain(new Set()), [Set.prototype, Object.prototype])
+      strictEqualArray(t, protochain(new WeakMap()), [WeakMap.prototype, Object.prototype])
+      strictEqualArray(t, protochain(new WeakSet()), [WeakSet.prototype, Object.prototype])
+      t.end()
+    })
+  }
+
+  if (typeof Uint8Array !== 'undefined') {
+    t.test('typed array support', t => {
+      const TypedArray = Object.getPrototypeOf(Int8Array.prototype)
+      strictEqualArray(t, protochain(new Int8Array()), [Int8Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Uint8Array()), [Uint8Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Uint8ClampedArray()), [Uint8ClampedArray.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Int16Array()), [Int16Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Int32Array()), [Int32Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Uint32Array()), [Uint32Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Float32Array()), [Float32Array.prototype, TypedArray, Object.prototype])
+      strictEqualArray(t, protochain(new Float64Array()), [Float64Array.prototype, TypedArray, Object.prototype])
+      t.end()
+    })
+  }
+
+  t.end()
+})
+
+function strictEqualArray (t, a, b) {
+  a.forEach((item, index) => t.strictEqual(a[index], b[index], `strictEqual at index ${index}`))
+  t.equal(a.length, b.length, 'same length')
+}
index 528b29a..b783449 100644 (file)
@@ -1,33 +1,45 @@
 {
   "_args": [
     [
-      "resolve@0.3.1",
-      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build"
+      {
+        "raw": "resolve@~0.3.1",
+        "scope": null,
+        "escapedName": "resolve",
+        "name": "resolve",
+        "rawSpec": "~0.3.1",
+        "spec": ">=0.3.1 <0.4.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-cli"
     ]
   ],
-  "_development": true,
-  "_from": "resolve@0.3.1",
+  "_from": "resolve@>=0.3.1 <0.4.0",
   "_id": "resolve@0.3.1",
-  "_inBundle": false,
-  "_integrity": "sha1-NMY0R8ZkxwWY0cmxJvxDsqJDEKQ=",
+  "_inCache": true,
   "_location": "/resolve",
+  "_npmUser": {
+    "name": "substack",
+    "email": "mail@substack.net"
+  },
+  "_npmVersion": "1.2.2",
   "_phantomChildren": {},
   "_requested": {
-    "type": "version",
-    "registry": true,
-    "raw": "resolve@0.3.1",
-    "name": "resolve",
+    "raw": "resolve@~0.3.1",
+    "scope": null,
     "escapedName": "resolve",
-    "rawSpec": "0.3.1",
-    "saveSpec": null,
-    "fetchSpec": "0.3.1"
+    "name": "resolve",
+    "rawSpec": "~0.3.1",
+    "spec": ">=0.3.1 <0.4.0",
+    "type": "range"
   },
   "_requiredBy": [
     "/grunt-cli"
   ],
-  "_resolved": "https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz",
-  "_spec": "0.3.1",
-  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build",
+  "_resolved": "http://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz",
+  "_shasum": "34c63447c664c70598d1c9b126fc43b2a24310a4",
+  "_shrinkwrap": null,
+  "_spec": "resolve@~0.3.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-cli",
   "author": {
     "name": "James Halliday",
     "email": "mail@substack.net",
   "bugs": {
     "url": "https://github.com/substack/node-resolve/issues"
   },
+  "dependencies": {},
   "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously",
   "devDependencies": {
     "tap": "~0.4.0"
   },
+  "directories": {},
+  "dist": {
+    "shasum": "34c63447c664c70598d1c9b126fc43b2a24310a4",
+    "tarball": "https://registry.npmjs.org/resolve/-/resolve-0.3.1.tgz"
+  },
   "homepage": "https://github.com/substack/node-resolve#readme",
   "keywords": [
     "resolve",
   ],
   "license": "MIT",
   "main": "index.js",
+  "maintainers": [
+    {
+      "name": "substack",
+      "email": "mail@substack.net"
+    }
+  ],
   "name": "resolve",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
   "repository": {
     "type": "git",
     "url": "git://github.com/substack/node-resolve.git"
diff --git a/wrt/build/node_modules/rocambole-indent/CHANGELOG.md b/wrt/build/node_modules/rocambole-indent/CHANGELOG.md
new file mode 100644 (file)
index 0000000..b85b796
--- /dev/null
@@ -0,0 +1,50 @@
+# rocambole-indent changelog
+
+## v2.0.4 (2015-05-02)
+
+ - align comments surrounded by empty lines with next non-empty line. (#6)
+
+## v2.0.3 (2015-03-26)
+
+ - fix comment alignment if surrounded by empty lines (#5)
+
+## v2.0.2 (2015-03-25)
+
+ - fix edge cases related to comments just after `{` followed by an empty line.
+
+## v2.0.1 (2015-03-25)
+
+ - safeguard against empty nodes/ast on `alignComments()`
+
+## v2.0.0 (2015-03-25)
+
+ - change `alignComments()` rule to add one indent level if comment is inside
+   empty block/array/parenthesis
+
+## v1.1.1 (2015-03-25)
+
+ - fix `WhiteSpace` conversion into `Indent` inside `alignComments()`
+
+## v1.1.0 (2015-03-25)
+
+ - update `alignComments()` to consider `WhiteSpace` tokens at the begining of
+   the line as `Indent` tokens as well
+ - add `whiteSpaceToIndent()`
+
+## v1.0.0 (2015-03-24)
+
+ - add `alignComments()`
+ - expose `updateBlockComment()`
+
+## v0.2.0 (2015-03-20)
+
+ - rename `line()` as `addLevel()`
+ - change the way `inBetween()` loops through the `start` and `end` tokens
+   (not inclusive)
+ - `sanitize()` won't call `updateBlockComment()` since this is already handled
+   by `addLevel()`
+
+## v0.1.0 (2015-03-20)
+
+ - initial release
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/.editorconfig b/wrt/build/node_modules/rocambole-indent/node_modules/mout/.editorconfig
new file mode 100644 (file)
index 0000000..faaf0d3
--- /dev/null
@@ -0,0 +1,20 @@
+; EditorConfig is awesome: http://EditorConfig.org
+
+; top-most EditorConfig file
+root = true
+
+; base rules
+[*]
+end_of_line = lf
+insert_final_newline = false
+indent_style = space
+indent_size = 4
+charset = utf-8
+trim_trailing_whitespace = true
+
+; The default indent on package.json is 2 spaces, better to keep it so we can
+; use `npm install --save` and other features that rewrites the package.json
+; file automatically
+[{bower,package}.json]
+indent_style = space
+indent_size = 2
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/.jshintrc b/wrt/build/node_modules/rocambole-indent/node_modules/mout/.jshintrc
new file mode 100644 (file)
index 0000000..bbdb29c
--- /dev/null
@@ -0,0 +1,69 @@
+{
+    // Settings
+    "passfail"      : false, // Stop on first error.
+    "maxerr"        : 50,    // Maximum error before stopping.
+
+
+    // Predefined globals whom JSHint will ignore.
+    "browser"       : true,  // Standard browser globals e.g. `window`, `document`.
+    "couch"         : false,
+    "dojo"          : false,
+    "jquery"        : true,
+    "mootools"      : false,
+    "node"          : false,
+    "prototypejs"   : false,
+    "rhino"         : false,
+    "wsh"           : false,
+
+    // Custom globals.
+    "predef"        : [
+        "define",
+        "require"
+    ],
+
+
+    // Development.
+    "debug"         : false, // Allow debugger statements e.g. browser breakpoints.
+    "devel"         : false, // Allow developments statements e.g. `console.log();`.
+
+
+    // EcmaScript 5.
+    "es5"           : false, // Allow EcmaScript 5 syntax.
+    "globalstrict"  : false, // Allow global "use strict" (also enables 'strict').
+    "strict"        : false, // Require `use strict` pragma  in every file.
+
+
+    // The Good Parts.
+    "asi"           : false, // Tolerate Automatic Semicolon Insertion (no semicolons).
+    "bitwise"       : false, // Prohibit bitwise operators (&, |, ^, etc.).
+    "boss"          : true,  // Tolerate assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments.
+    "curly"         : false, // Require {} for every new block or scope.
+    "eqeqeq"        : true,  // Require triple equals i.e. `===`.
+    "eqnull"        : true,  // Tolerate use of `== null`.
+    "evil"          : false, // Tolerate use of `eval`.
+    "expr"          : false, // Tolerate `ExpressionStatement` as Programs.
+    "forin"         : false, // Tolerate `for in` loops without `hasOwnPrototype`.
+    "immed"         : true,  // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );`
+    "latedef"       : false, // Prohibit variable use before definition.
+    "laxbreak"      : false, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons.
+    "loopfunc"      : false, // Allow functions to be defined within loops.
+    "noarg"         : true,  // Prohibit use of `arguments.caller` and `arguments.callee`.
+    "regexdash"     : true,  // Tolerate unescaped last dash i.e. `[-...]`.
+    "regexp"        : false, // Prohibit `.` and `[^...]` in regular expressions.
+    "scripturl"     : false, // Tolerate script-targeted URLs.
+    "shadow"        : false, // Allows re-define variables later in code e.g. `var x=1; x=2;`.
+    "supernew"      : false, // Tolerate `new function () { ... };` and `new Object;`.
+    "undef"         : false, // Require all non-global variables be declared before they are used.
+
+
+    // Personal styling prefrences.
+    "newcap"        : true,  // Require capitalization of all constructor functions e.g. `new F()`.
+    "noempty"       : true,  // Prohipit use of empty blocks.
+    "nomen"         : false, // Prohibit use of initial or trailing underbars in names.
+    "nonew"         : true,  // Prohibit use of constructors for side-effects.
+    "onevar"        : false, // Allow only one `var` statement per function.
+    "plusplus"      : false, // Prohibit use of `++` & `--`.
+    "sub"           : false, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`.
+    "trailing"      : true,  // Prohibit trailing whitespaces.
+    "white"         : false  // Check against strict whitespace and indentation rules.
+}
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/.npmignore b/wrt/build/node_modules/rocambole-indent/node_modules/mout/.npmignore
new file mode 100644 (file)
index 0000000..1341acd
--- /dev/null
@@ -0,0 +1,30 @@
+# dumb files
+# ==========
+
+.tmp*
+.project
+.settings/
+.livereload
+.DS_Store?
+ehthumbs.db
+Icon?
+Thumbs.db
+
+
+# stuff not needed by node
+# ========================
+
+node_modules/
+tests/
+_build/
+doc_html/
+coverage/
+
+# we keep the doc/ folder in case npm decides to display it in the future
+# also good in case user is using an old version or working offline
+
+# we also keep the src/ folder in case the user still needs the AMD modules
+# after build (see issue #102)
+
+bower.json
+build.js
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/.travis.yml b/wrt/build/node_modules/rocambole-indent/node_modules/mout/.travis.yml
new file mode 100644 (file)
index 0000000..2ea0044
--- /dev/null
@@ -0,0 +1,18 @@
+ language: node_js
+ node_js:
+   - "iojs"
+   - "0.10"
+   - "0.12"
+ script:
+   - "npm test --coverage"
+   - "jshint src"
+ notifications:
+  irc:
+    channels:
+      - "irc.freenode.org#moutjs"
+    on_success: change
+    on_failure: always
+    use_notice: true
+    skip_join: true
+ git:
+   depth: 10
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/CONTRIBUTING.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/CONTRIBUTING.md
new file mode 100644 (file)
index 0000000..65d9add
--- /dev/null
@@ -0,0 +1,61 @@
+# Contributing
+
+Fork the repo at https://github.com/mout/mout
+
+ > "Write clearly, don't be too clever" - The Elements of Programming Style
+
+Avoid unnamed functions and follow the other modules structure. By only using named functions it will be easier to extract the code from the AMD module if needed and it will also give better error messages, JavaScript minifiers like [Google Closure Compiler](http://code.google.com/closure/compiler/) and [UglifyJS](https://github.com/mishoo/UglifyJS) will make sure code is as small/optimized as possible.
+
+ > "Make it clear before you make it faster." - The Elements of Programming Style
+
+Be sure to always create tests for each proposed module. Features will only be merged if they contain proper tests and documentation.
+
+ > "Good code is its own best documentation." - Steve McConnell
+
+We should do a code review before merging to make sure names makes sense and implementation is as good as possible.
+
+Try to split your pull requests into logical groups, the smaller the easier to be reviewed/merged.
+
+
+
+## Tests & Code Coverage ##
+
+Tests can be found inside the `tests` folder, to execute them in the browser open the `tests/runner.html`. The same tests also work on node.js by running `npm test`.
+
+We should have tests for all methods and ensure we have a high code coverage through our continuous integration server ([travis](https://travis-ci.org/mout/mout)). When you ask for a pull request Travis will automatically run the tests on node.js and check the code coverage as well.
+
+We run `node build pkg` automatically before any `npm test`, so specs and packages should always be in sync. (will avoid human mistakes)
+
+To check code coverage run `npm test --coverage`, it will generate the reports inside the `coverage` folder and also log the results. Please note that node.js doesn't execute all code branches since we have some conditionals that are only met on old JavaScript engines (eg. IE 7-8), so we will never have 100% code coverage (but should be close to it).
+
+
+
+## Build Script ##
+
+The [build script](https://github.com/mout/mout/wiki/Build-Script) can be extremely helpful and can avoid human mistakes, use it.
+
+
+
+## Admins / Pull Requests ##
+
+Even if you are an admin (have commit rights) please do pull requests when adding new features or changing current behavior, that way we can review the work and discuss. Feel free to push changes that doesn't affect behavior without asking for a pull request (readme, changelog, build script, typos, refactoring, ...).
+
+
+
+## Large changes ##
+
+If you are proposing some major change, please create an issue to discuss it first. (maybe it's outside the scope of the project)
+
+
+
+## Questions / IRC / Wiki / Issue Tracker ##
+
+When in doubt ask someone on IRC to help you ([#moutjs on irc.freenode.net](http://webchat.freenode.net/?channels=moutjs)) or create a [new issue](http://github.com/mout/mout/issues).
+
+The [project wiki](https://github.com/mout/mout/wiki) can also be a good resource of information.
+
+
+---
+
+Check the [contributors list at github](https://github.com/mout/mout/contributors).
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/LICENSE.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/LICENSE.md
new file mode 100644 (file)
index 0000000..e9ccc2b
--- /dev/null
@@ -0,0 +1,21 @@
+# The MIT License (MIT)
+## Copyright (c) 2012, 2013 moutjs team and contributors (http://moutjs.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array.js
new file mode 100644 (file)
index 0000000..d0b7c04
--- /dev/null
@@ -0,0 +1,55 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'append' : require('./array/append'),
+    'collect' : require('./array/collect'),
+    'combine' : require('./array/combine'),
+    'compact' : require('./array/compact'),
+    'contains' : require('./array/contains'),
+    'difference' : require('./array/difference'),
+    'equals' : require('./array/equals'),
+    'every' : require('./array/every'),
+    'filter' : require('./array/filter'),
+    'find' : require('./array/find'),
+    'findIndex' : require('./array/findIndex'),
+    'findLast' : require('./array/findLast'),
+    'findLastIndex' : require('./array/findLastIndex'),
+    'flatten' : require('./array/flatten'),
+    'forEach' : require('./array/forEach'),
+    'groupBy' : require('./array/groupBy'),
+    'indexOf' : require('./array/indexOf'),
+    'insert' : require('./array/insert'),
+    'intersection' : require('./array/intersection'),
+    'invoke' : require('./array/invoke'),
+    'join' : require('./array/join'),
+    'last' : require('./array/last'),
+    'lastIndexOf' : require('./array/lastIndexOf'),
+    'map' : require('./array/map'),
+    'max' : require('./array/max'),
+    'min' : require('./array/min'),
+    'pick' : require('./array/pick'),
+    'pluck' : require('./array/pluck'),
+    'range' : require('./array/range'),
+    'reduce' : require('./array/reduce'),
+    'reduceRight' : require('./array/reduceRight'),
+    'reject' : require('./array/reject'),
+    'remove' : require('./array/remove'),
+    'removeAll' : require('./array/removeAll'),
+    'reverse' : require('./array/reverse'),
+    'shuffle' : require('./array/shuffle'),
+    'slice' : require('./array/slice'),
+    'some' : require('./array/some'),
+    'sort' : require('./array/sort'),
+    'sortBy' : require('./array/sortBy'),
+    'split' : require('./array/split'),
+    'take' : require('./array/take'),
+    'toLookup' : require('./array/toLookup'),
+    'union' : require('./array/union'),
+    'unique' : require('./array/unique'),
+    'xor' : require('./array/xor'),
+    'zip' : require('./array/zip')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/append.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/append.js
new file mode 100644 (file)
index 0000000..bf74037
--- /dev/null
@@ -0,0 +1,21 @@
+
+
+    /**
+     * Appends an array to the end of another.
+     * The first array will be modified.
+     */
+    function append(arr1, arr2) {
+        if (arr2 == null) {
+            return arr1;
+        }
+
+        var pad = arr1.length,
+            i = -1,
+            len = arr2.length;
+        while (++i < len) {
+            arr1[pad + i] = arr2[i];
+        }
+        return arr1;
+    }
+    module.exports = append;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/collect.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/collect.js
new file mode 100644 (file)
index 0000000..5863749
--- /dev/null
@@ -0,0 +1,27 @@
+var append = require('./append');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Maps the items in the array and concatenates the result arrays.
+     */
+    function collect(arr, callback, thisObj){
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            var value = callback(arr[i], i, arr);
+            if (value != null) {
+                append(results, value);
+            }
+        }
+
+        return results;
+    }
+
+    module.exports = collect;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/combine.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/combine.js
new file mode 100644 (file)
index 0000000..d66e621
--- /dev/null
@@ -0,0 +1,22 @@
+var indexOf = require('./indexOf');
+
+    /**
+     * Combines an array with all the items of another.
+     * Does not allow duplicates and is case and type sensitive.
+     */
+    function combine(arr1, arr2) {
+        if (arr2 == null) {
+            return arr1;
+        }
+
+        var i = -1, len = arr2.length;
+        while (++i < len) {
+            if (indexOf(arr1, arr2[i]) === -1) {
+                arr1.push(arr2[i]);
+            }
+        }
+
+        return arr1;
+    }
+    module.exports = combine;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/compact.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/compact.js
new file mode 100644 (file)
index 0000000..74c176e
--- /dev/null
@@ -0,0 +1,13 @@
+var filter = require('./filter');
+
+    /**
+     * Remove all null/undefined items from array.
+     */
+    function compact(arr) {
+        return filter(arr, function(val){
+            return (val != null);
+        });
+    }
+
+    module.exports = compact;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/contains.js
new file mode 100644 (file)
index 0000000..92bb6ad
--- /dev/null
@@ -0,0 +1,10 @@
+var indexOf = require('./indexOf');
+
+    /**
+     * If array contains values.
+     */
+    function contains(arr, val) {
+        return indexOf(arr, val) !== -1;
+    }
+    module.exports = contains;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/difference.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/difference.js
new file mode 100644 (file)
index 0000000..ca57524
--- /dev/null
@@ -0,0 +1,23 @@
+var unique = require('./unique');
+var filter = require('./filter');
+var some = require('./some');
+var contains = require('./contains');
+var slice = require('./slice');
+
+
+    /**
+     * Return a new Array with elements that aren't present in the other Arrays.
+     */
+    function difference(arr) {
+        var arrs = slice(arguments, 1),
+            result = filter(unique(arr), function(needle){
+                return !some(arrs, function(haystack){
+                    return contains(haystack, needle);
+                });
+            });
+        return result;
+    }
+
+    module.exports = difference;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/equals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/equals.js
new file mode 100644 (file)
index 0000000..1a20430
--- /dev/null
@@ -0,0 +1,30 @@
+var is = require('../lang/is');
+var isArray = require('../lang/isArray');
+var every = require('./every');
+
+    /**
+     * Compares if both arrays have the same elements
+     */
+    function equals(a, b, callback){
+        callback = callback || is;
+
+        if (!isArray(a) || !isArray(b)) {
+            return callback(a, b);
+        }
+
+        if (a.length !== b.length) {
+            return false;
+        }
+
+        return every(a, makeCompare(callback), b);
+    }
+
+    function makeCompare(callback) {
+        return function(value, i) {
+            return i in this && callback(value, this[i]);
+        };
+    }
+
+    module.exports = equals;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/every.js
new file mode 100644 (file)
index 0000000..ac59883
--- /dev/null
@@ -0,0 +1,27 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Array every
+     */
+    function every(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = true;
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (!callback(arr[i], i, arr) ) {
+                result = false;
+                break;
+            }
+        }
+
+        return result;
+    }
+
+    module.exports = every;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/filter.js
new file mode 100644 (file)
index 0000000..f0e7419
--- /dev/null
@@ -0,0 +1,26 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Array filter
+     */
+    function filter(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            if (callback(value, i, arr)) {
+                results.push(value);
+            }
+        }
+
+        return results;
+    }
+
+    module.exports = filter;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/find.js
new file mode 100644 (file)
index 0000000..b4a7313
--- /dev/null
@@ -0,0 +1,13 @@
+var findIndex = require('./findIndex');
+
+    /**
+     * Returns first item that matches criteria
+     */
+    function find(arr, iterator, thisObj){
+        var idx = findIndex(arr, iterator, thisObj);
+        return idx >= 0? arr[idx] : void(0);
+    }
+
+    module.exports = find;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findIndex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findIndex.js
new file mode 100644 (file)
index 0000000..53f22a5
--- /dev/null
@@ -0,0 +1,23 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Returns the index of the first item that matches criteria
+     */
+    function findIndex(arr, iterator, thisObj){
+        iterator = makeIterator(iterator, thisObj);
+        if (arr == null) {
+            return -1;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (iterator(arr[i], i, arr)) {
+                return i;
+            }
+        }
+
+        return -1;
+    }
+
+    module.exports = findIndex;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLast.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLast.js
new file mode 100644 (file)
index 0000000..84ba4bf
--- /dev/null
@@ -0,0 +1,13 @@
+var findLastIndex = require('./findLastIndex');
+
+    /**
+     * Returns last item that matches criteria
+     */
+    function findLast(arr, iterator, thisObj){
+        var idx = findLastIndex(arr, iterator, thisObj);
+        return idx >= 0? arr[idx] : void(0);
+    }
+
+    module.exports = findLast;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLastIndex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/findLastIndex.js
new file mode 100644 (file)
index 0000000..b8330f2
--- /dev/null
@@ -0,0 +1,24 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Returns the index of the last item that matches criteria
+     */
+    function findLastIndex(arr, iterator, thisObj){
+        iterator = makeIterator(iterator, thisObj);
+        if (arr == null) {
+            return -1;
+        }
+
+        var n = arr.length;
+        while (--n >= 0) {
+            if (iterator(arr[n], n, arr)) {
+                return n;
+            }
+        }
+
+        return -1;
+    }
+
+    module.exports = findLastIndex;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/flatten.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/flatten.js
new file mode 100644 (file)
index 0000000..3aad385
--- /dev/null
@@ -0,0 +1,45 @@
+var isArray = require('../lang/isArray');
+var append = require('./append');
+
+    /*
+     * Helper function to flatten to a destination array.
+     * Used to remove the need to create intermediate arrays while flattening.
+     */
+    function flattenTo(arr, result, level) {
+        if (level === 0) {
+            append(result, arr);
+            return result;
+        }
+
+        var value,
+            i = -1,
+            len = arr.length;
+        while (++i < len) {
+            value = arr[i];
+            if (isArray(value)) {
+                flattenTo(value, result, level - 1);
+            } else {
+                result.push(value);
+            }
+        }
+        return result;
+    }
+
+    /**
+     * Recursively flattens an array.
+     * A new array containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(arr, level) {
+        if (arr == null) {
+            return [];
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(arr, [], level);
+    }
+
+    module.exports = flatten;
+
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/forEach.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/forEach.js
new file mode 100644 (file)
index 0000000..268e506
--- /dev/null
@@ -0,0 +1,23 @@
+
+
+    /**
+     * Array forEach
+     */
+    function forEach(arr, callback, thisObj) {
+        if (arr == null) {
+            return;
+        }
+        var i = -1,
+            len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if ( callback.call(thisObj, arr[i], i, arr) === false ) {
+                break;
+            }
+        }
+    }
+
+    module.exports = forEach;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/groupBy.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/groupBy.js
new file mode 100644 (file)
index 0000000..af6f434
--- /dev/null
@@ -0,0 +1,30 @@
+var forEach = require('../array/forEach');
+var identity = require('../function/identity');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Bucket the array values.
+     */
+    function groupBy(arr, categorize, thisObj) {
+        if (categorize) {
+            categorize = makeIterator(categorize, thisObj);
+        } else {
+            // Default to identity function.
+            categorize = identity;
+        }
+
+        var buckets = {};
+        forEach(arr, function(element) {
+            var bucket = categorize(element);
+            if (!(bucket in buckets)) {
+                buckets[bucket] = [];
+            }
+
+            buckets[bucket].push(element);
+        });
+
+        return buckets;
+    }
+
+    module.exports = groupBy;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/indexOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/indexOf.js
new file mode 100644 (file)
index 0000000..6a9ac83
--- /dev/null
@@ -0,0 +1,28 @@
+
+
+    /**
+     * Array.indexOf
+     */
+    function indexOf(arr, item, fromIndex) {
+        fromIndex = fromIndex || 0;
+        if (arr == null) {
+            return -1;
+        }
+
+        var len = arr.length,
+            i = fromIndex < 0 ? len + fromIndex : fromIndex;
+        while (i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (arr[i] === item) {
+                return i;
+            }
+
+            i++;
+        }
+
+        return -1;
+    }
+
+    module.exports = indexOf;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/insert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/insert.js
new file mode 100644 (file)
index 0000000..20bd442
--- /dev/null
@@ -0,0 +1,15 @@
+var difference = require('./difference');
+var slice = require('./slice');
+
+    /**
+     * Insert item into array if not already present.
+     */
+    function insert(arr, rest_items) {
+        var diff = difference(slice(arguments, 1), arr);
+        if (diff.length) {
+            Array.prototype.push.apply(arr, diff);
+        }
+        return arr.length;
+    }
+    module.exports = insert;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/intersection.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/intersection.js
new file mode 100644 (file)
index 0000000..34957ab
--- /dev/null
@@ -0,0 +1,24 @@
+var unique = require('./unique');
+var filter = require('./filter');
+var every = require('./every');
+var contains = require('./contains');
+var slice = require('./slice');
+
+
+    /**
+     * Return a new Array with elements common to all Arrays.
+     * - based on underscore.js implementation
+     */
+    function intersection(arr) {
+        var arrs = slice(arguments, 1),
+            result = filter(unique(arr), function(needle){
+                return every(arrs, function(haystack){
+                    return contains(haystack, needle);
+                });
+            });
+        return result;
+    }
+
+    module.exports = intersection;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/invoke.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/invoke.js
new file mode 100644 (file)
index 0000000..32ec584
--- /dev/null
@@ -0,0 +1,23 @@
+var slice = require('./slice');
+
+    /**
+     * Call `methodName` on each item of the array passing custom arguments if
+     * needed.
+     */
+    function invoke(arr, methodName, var_args){
+        if (arr == null) {
+            return arr;
+        }
+
+        var args = slice(arguments, 2);
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            value[methodName].apply(value, args);
+        }
+
+        return arr;
+    }
+
+    module.exports = invoke;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/join.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/join.js
new file mode 100644 (file)
index 0000000..71d8bd2
--- /dev/null
@@ -0,0 +1,17 @@
+var filter = require('./filter');
+
+    function isValidString(val) {
+        return (val != null && val !== '');
+    }
+
+    /**
+     * Joins strings with the specified separator inserted between each value.
+     * Null values and empty strings will be excluded.
+     */
+    function join(items, separator) {
+        separator = separator || '';
+        return filter(items, isValidString).join(separator);
+    }
+
+    module.exports = join;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/last.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/last.js
new file mode 100644 (file)
index 0000000..d80ab2b
--- /dev/null
@@ -0,0 +1,16 @@
+
+
+    /**
+     * Returns last element of array.
+     */
+    function last(arr){
+        if (arr == null || arr.length < 1) {
+            return undefined;
+        }
+
+        return arr[arr.length - 1];
+    }
+
+    module.exports = last;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/lastIndexOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/lastIndexOf.js
new file mode 100644 (file)
index 0000000..ee44a25
--- /dev/null
@@ -0,0 +1,28 @@
+
+
+    /**
+     * Array lastIndexOf
+     */
+    function lastIndexOf(arr, item, fromIndex) {
+        if (arr == null) {
+            return -1;
+        }
+
+        var len = arr.length;
+        fromIndex = (fromIndex == null || fromIndex >= len)? len - 1 : fromIndex;
+        fromIndex = (fromIndex < 0)? len + fromIndex : fromIndex;
+
+        while (fromIndex >= 0) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (arr[fromIndex] === item) {
+                return fromIndex;
+            }
+            fromIndex--;
+        }
+
+        return -1;
+    }
+
+    module.exports = lastIndexOf;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/map.js
new file mode 100644 (file)
index 0000000..7b7fb33
--- /dev/null
@@ -0,0 +1,22 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Array map
+     */
+    function map(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null){
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            results[i] = callback(arr[i], i, arr);
+        }
+
+        return results;
+    }
+
+     module.exports = map;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/max.js
new file mode 100644 (file)
index 0000000..0b8f259
--- /dev/null
@@ -0,0 +1,34 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Return maximum value inside array
+     */
+    function max(arr, iterator, thisObj){
+        if (arr == null || !arr.length) {
+            return Infinity;
+        } else if (arr.length && !iterator) {
+            return Math.max.apply(Math, arr);
+        } else {
+            iterator = makeIterator(iterator, thisObj);
+            var result,
+                compare = -Infinity,
+                value,
+                temp;
+
+            var i = -1, len = arr.length;
+            while (++i < len) {
+                value = arr[i];
+                temp = iterator(value, i, arr);
+                if (temp > compare) {
+                    compare = temp;
+                    result = value;
+                }
+            }
+
+            return result;
+        }
+    }
+
+    module.exports = max;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/min.js
new file mode 100644 (file)
index 0000000..ed6cc6a
--- /dev/null
@@ -0,0 +1,34 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Return minimum value inside array
+     */
+    function min(arr, iterator, thisObj){
+        if (arr == null || !arr.length) {
+            return -Infinity;
+        } else if (arr.length && !iterator) {
+            return Math.min.apply(Math, arr);
+        } else {
+            iterator = makeIterator(iterator, thisObj);
+            var result,
+                compare = Infinity,
+                value,
+                temp;
+
+            var i = -1, len = arr.length;
+            while (++i < len) {
+                value = arr[i];
+                temp = iterator(value, i, arr);
+                if (temp < compare) {
+                    compare = temp;
+                    result = value;
+                }
+            }
+
+            return result;
+        }
+    }
+
+    module.exports = min;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pick.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pick.js
new file mode 100644 (file)
index 0000000..6408678
--- /dev/null
@@ -0,0 +1,31 @@
+var randInt = require('../random/randInt');
+
+    /**
+     * Remove random item(s) from the Array and return it.
+     * Returns an Array of items if [nItems] is provided or a single item if
+     * it isn't specified.
+     */
+    function pick(arr, nItems){
+        if (nItems != null) {
+            var result = [];
+            if (nItems > 0 && arr && arr.length) {
+                nItems = nItems > arr.length? arr.length : nItems;
+                while (nItems--) {
+                    result.push( pickOne(arr) );
+                }
+            }
+            return result;
+        }
+        return (arr && arr.length)? pickOne(arr) : void(0);
+    }
+
+
+    function pickOne(arr){
+        var idx = randInt(0, arr.length - 1);
+        return arr.splice(idx, 1)[0];
+    }
+
+
+    module.exports = pick;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/pluck.js
new file mode 100644 (file)
index 0000000..fef4043
--- /dev/null
@@ -0,0 +1,12 @@
+var map = require('./map');
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(arr, propName){
+        return map(arr, propName);
+    }
+
+    module.exports = pluck;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/range.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/range.js
new file mode 100644 (file)
index 0000000..31d3c77
--- /dev/null
@@ -0,0 +1,27 @@
+var countSteps = require('../math/countSteps');
+
+    /**
+     * Returns an Array of numbers inside range.
+     */
+    function range(start, stop, step) {
+        if (stop == null) {
+            stop = start;
+            start = 0;
+        }
+        step = step || 1;
+
+        var result = [],
+            nSteps = countSteps(stop - start, step),
+            i = start;
+
+        while (i <= stop) {
+            result.push(i);
+            i += step;
+        }
+
+        return result;
+    }
+
+    module.exports = range;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduce.js
new file mode 100644 (file)
index 0000000..827f428
--- /dev/null
@@ -0,0 +1,33 @@
+
+
+    /**
+     * Array reduce
+     */
+    function reduce(arr, fn, initVal) {
+        // check for args.length since initVal might be "undefined" see #gh-57
+        var hasInit = arguments.length > 2,
+            result = initVal;
+
+        if (arr == null || !arr.length) {
+            if (!hasInit) {
+                throw new Error('reduce of empty array with no initial value');
+            } else {
+                return initVal;
+            }
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (!hasInit) {
+                result = arr[i];
+                hasInit = true;
+            } else {
+                result = fn(result, arr[i], i, arr);
+            }
+        }
+
+        return result;
+    }
+
+    module.exports = reduce;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduceRight.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reduceRight.js
new file mode 100644 (file)
index 0000000..e36fd4a
--- /dev/null
@@ -0,0 +1,34 @@
+
+
+    /**
+     * Array reduceRight
+     */
+    function reduceRight(arr, fn, initVal) {
+        // check for args.length since initVal might be "undefined" see #gh-57
+        var hasInit = arguments.length > 2;
+
+        if (arr == null || !arr.length) {
+            if (hasInit) {
+                return initVal;
+            } else {
+                throw new Error('reduce of empty array with no initial value');
+            }
+        }
+
+        var i = arr.length, result = initVal, value;
+        while (--i >= 0) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            value = arr[i];
+            if (!hasInit) {
+                result = value;
+                hasInit = true;
+            } else {
+                result = fn(result, value, i, arr);
+            }
+        }
+        return result;
+    }
+
+    module.exports = reduceRight;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reject.js
new file mode 100644 (file)
index 0000000..0cfc8b1
--- /dev/null
@@ -0,0 +1,25 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Array reject
+     */
+    function reject(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            if (!callback(value, i, arr)) {
+                results.push(value);
+            }
+        }
+
+        return results;
+    }
+
+    module.exports = reject;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/remove.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/remove.js
new file mode 100644 (file)
index 0000000..aa6517d
--- /dev/null
@@ -0,0 +1,13 @@
+var indexOf = require('./indexOf');
+
+    /**
+     * Remove a single item from the array.
+     * (it won't remove duplicates, just a single item)
+     */
+    function remove(arr, item){
+        var idx = indexOf(arr, item);
+        if (idx !== -1) arr.splice(idx, 1);
+    }
+
+    module.exports = remove;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/removeAll.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/removeAll.js
new file mode 100644 (file)
index 0000000..d5f7f3b
--- /dev/null
@@ -0,0 +1,15 @@
+var indexOf = require('./indexOf');
+
+    /**
+     * Remove all instances of an item from array.
+     */
+    function removeAll(arr, item){
+        var idx = indexOf(arr, item);
+        while (idx !== -1) {
+            arr.splice(idx, 1);
+            idx = indexOf(arr, item, idx);
+        }
+    }
+
+    module.exports = removeAll;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reverse.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/reverse.js
new file mode 100644 (file)
index 0000000..a35cc1a
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Returns a copy of the array in reversed order.
+     */
+    function reverse(array) {
+        var copy = array.slice();
+        copy.reverse();
+        return copy;
+    }
+
+    module.exports = reverse;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/slice.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/slice.js
new file mode 100644 (file)
index 0000000..0a4d5cf
--- /dev/null
@@ -0,0 +1,35 @@
+
+
+    /**
+     * Create slice of source array or array-like object
+     */
+    function slice(arr, start, end){
+        var len = arr.length;
+
+        if (start == null) {
+            start = 0;
+        } else if (start < 0) {
+            start = Math.max(len + start, 0);
+        } else {
+            start = Math.min(start, len);
+        }
+
+        if (end == null) {
+            end = len;
+        } else if (end < 0) {
+            end = Math.max(len + end, 0);
+        } else {
+            end = Math.min(end, len);
+        }
+
+        var result = [];
+        while (start < end) {
+            result.push(arr[start++]);
+        }
+
+        return result;
+    }
+
+    module.exports = slice;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/some.js
new file mode 100644 (file)
index 0000000..8d17772
--- /dev/null
@@ -0,0 +1,27 @@
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Array some
+     */
+    function some(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = false;
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if ( callback(arr[i], i, arr) ) {
+                result = true;
+                break;
+            }
+        }
+
+        return result;
+    }
+
+    module.exports = some;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sort.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sort.js
new file mode 100644 (file)
index 0000000..7807339
--- /dev/null
@@ -0,0 +1,55 @@
+
+
+    /**
+     * Merge sort (http://en.wikipedia.org/wiki/Merge_sort)
+     */
+    function mergeSort(arr, compareFn) {
+        if (arr == null) {
+            return [];
+        } else if (arr.length < 2) {
+            return arr;
+        }
+
+        if (compareFn == null) {
+            compareFn = defaultCompare;
+        }
+
+        var mid, left, right;
+
+        mid   = ~~(arr.length / 2);
+        left  = mergeSort( arr.slice(0, mid), compareFn );
+        right = mergeSort( arr.slice(mid, arr.length), compareFn );
+
+        return merge(left, right, compareFn);
+    }
+
+    function defaultCompare(a, b) {
+        return a < b ? -1 : (a > b? 1 : 0);
+    }
+
+    function merge(left, right, compareFn) {
+        var result = [];
+
+        while (left.length && right.length) {
+            if (compareFn(left[0], right[0]) <= 0) {
+                // if 0 it should preserve same order (stable)
+                result.push(left.shift());
+            } else {
+                result.push(right.shift());
+            }
+        }
+
+        if (left.length) {
+            result.push.apply(result, left);
+        }
+
+        if (right.length) {
+            result.push.apply(result, right);
+        }
+
+        return result;
+    }
+
+    module.exports = mergeSort;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sortBy.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/sortBy.js
new file mode 100644 (file)
index 0000000..b84544c
--- /dev/null
@@ -0,0 +1,19 @@
+var sort = require('./sort');
+var makeIterator = require('../function/makeIterator_');
+
+    /*
+     * Sort array by the result of the callback
+     */
+    function sortBy(arr, callback, context){
+        callback = makeIterator(callback, context);
+
+        return sort(arr, function(a, b) {
+            a = callback(a);
+            b = callback(b);
+            return (a < b) ? -1 : ((a > b) ? 1 : 0);
+        });
+    }
+
+    module.exports = sortBy;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/split.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/split.js
new file mode 100644 (file)
index 0000000..4f3ba50
--- /dev/null
@@ -0,0 +1,35 @@
+
+
+    /**
+     * Split array into a fixed number of segments.
+     */
+    function split(array, segments) {
+        segments = segments || 2;
+        var results = [];
+        if (array == null) {
+            return results;
+        }
+
+        var minLength = Math.floor(array.length / segments),
+            remainder = array.length % segments,
+            i = 0,
+            len = array.length,
+            segmentIndex = 0,
+            segmentLength;
+
+        while (i < len) {
+            segmentLength = minLength;
+            if (segmentIndex < remainder) {
+                segmentLength++;
+            }
+
+            results.push(array.slice(i, i + segmentLength));
+
+            segmentIndex++;
+            i += segmentLength;
+        }
+
+        return results;
+    }
+    module.exports = split;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/take.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/take.js
new file mode 100644 (file)
index 0000000..bd8eb07
--- /dev/null
@@ -0,0 +1,24 @@
+
+
+    /**
+     * Iterates over a callback a set amount of times
+     * returning the results
+     */
+    function take(n, callback, thisObj){
+        var i = -1;
+        var arr = [];
+        if( !thisObj ){
+            while(++i < n){
+                arr[i] = callback(i, n);
+            }
+        } else {
+            while(++i < n){
+                arr[i] = callback.call(thisObj, i, n);
+            }
+        }
+        return arr;
+    }
+
+    module.exports = take;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/toLookup.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/toLookup.js
new file mode 100644 (file)
index 0000000..ce4c55d
--- /dev/null
@@ -0,0 +1,28 @@
+var isFunction = require('../lang/isFunction');
+
+    /**
+     * Creates an object that holds a lookup for the objects in the array.
+     */
+    function toLookup(arr, key) {
+        var result = {};
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length, value;
+        if (isFunction(key)) {
+            while (++i < len) {
+                value = arr[i];
+                result[key(value)] = value;
+            }
+        } else {
+            while (++i < len) {
+                value = arr[i];
+                result[value[key]] = value;
+            }
+        }
+
+        return result;
+    }
+    module.exports = toLookup;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/union.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/union.js
new file mode 100644 (file)
index 0000000..f1334a9
--- /dev/null
@@ -0,0 +1,19 @@
+var unique = require('./unique');
+var append = require('./append');
+
+    /**
+     * Concat multiple arrays and remove duplicates
+     */
+    function union(arrs) {
+        var results = [];
+        var i = -1, len = arguments.length;
+        while (++i < len) {
+            append(results, arguments[i]);
+        }
+
+        return unique(results);
+    }
+
+    module.exports = union;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/unique.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/unique.js
new file mode 100644 (file)
index 0000000..5db2510
--- /dev/null
@@ -0,0 +1,25 @@
+var filter = require('./filter');
+
+    /**
+     * @return {array} Array of unique items
+     */
+    function unique(arr, compare){
+        compare = compare || isEqual;
+        return filter(arr, function(item, i, arr){
+            var n = arr.length;
+            while (++i < n) {
+                if ( compare(item, arr[i]) ) {
+                    return false;
+                }
+            }
+            return true;
+        });
+    }
+
+    function isEqual(a, b){
+        return a === b;
+    }
+
+    module.exports = unique;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/xor.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/xor.js
new file mode 100644 (file)
index 0000000..c125a99
--- /dev/null
@@ -0,0 +1,26 @@
+var unique = require('./unique');
+var filter = require('./filter');
+var contains = require('./contains');
+
+
+    /**
+     * Exclusive OR. Returns items that are present in a single array.
+     * - like ptyhon's `symmetric_difference`
+     */
+    function xor(arr1, arr2) {
+        arr1 = unique(arr1);
+        arr2 = unique(arr2);
+
+        var a1 = filter(arr1, function(item){
+                return !contains(arr2, item);
+            }),
+            a2 = filter(arr2, function(item){
+                return !contains(arr1, item);
+            });
+
+        return a1.concat(a2);
+    }
+
+    module.exports = xor;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/zip.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/array/zip.js
new file mode 100644 (file)
index 0000000..8bce9c0
--- /dev/null
@@ -0,0 +1,28 @@
+var max = require('./max');
+var map = require('./map');
+
+    function getLength(arr) {
+        return arr == null ? 0 : arr.length;
+    }
+
+    /**
+     * Merges together the values of each of the arrays with the values at the
+     * corresponding position.
+     */
+    function zip(arr){
+        var len = arr ? max(map(arguments, getLength)) : 0,
+            results = [],
+            i = -1;
+        while (++i < len) {
+            // jshint loopfunc: true
+            results.push(map(arguments, function(item) {
+                return item == null ? undefined : item[i];
+            }));
+        }
+
+        return results;
+    }
+
+    module.exports = zip;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection.js
new file mode 100644 (file)
index 0000000..d5cf6ca
--- /dev/null
@@ -0,0 +1,22 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'contains' : require('./collection/contains'),
+    'every' : require('./collection/every'),
+    'filter' : require('./collection/filter'),
+    'find' : require('./collection/find'),
+    'forEach' : require('./collection/forEach'),
+    'make_' : require('./collection/make_'),
+    'map' : require('./collection/map'),
+    'max' : require('./collection/max'),
+    'min' : require('./collection/min'),
+    'pluck' : require('./collection/pluck'),
+    'reduce' : require('./collection/reduce'),
+    'reject' : require('./collection/reject'),
+    'size' : require('./collection/size'),
+    'some' : require('./collection/some')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/contains.js
new file mode 100644 (file)
index 0000000..a73f994
--- /dev/null
@@ -0,0 +1,9 @@
+var make = require('./make_');
+var arrContains = require('../array/contains');
+var objContains = require('../object/contains');
+
+    /**
+     */
+    module.exports = make(arrContains, objContains);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/every.js
new file mode 100644 (file)
index 0000000..300e03c
--- /dev/null
@@ -0,0 +1,9 @@
+var make = require('./make_');
+var arrEvery = require('../array/every');
+var objEvery = require('../object/every');
+
+    /**
+     */
+    module.exports = make(arrEvery, objEvery);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/filter.js
new file mode 100644 (file)
index 0000000..3875700
--- /dev/null
@@ -0,0 +1,23 @@
+var forEach = require('./forEach');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * filter collection values, returns array.
+     */
+    function filter(list, iterator, thisObj) {
+        iterator = makeIterator(iterator, thisObj);
+        var results = [];
+        if (!list) {
+            return results;
+        }
+        forEach(list, function(value, index, list) {
+            if (iterator(value, index, list)) {
+                results[results.length] = value;
+            }
+        });
+        return results;
+    }
+
+    module.exports = filter;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/find.js
new file mode 100644 (file)
index 0000000..14317e6
--- /dev/null
@@ -0,0 +1,10 @@
+var make = require('./make_');
+var arrFind = require('../array/find');
+var objFind = require('../object/find');
+
+    /**
+     * Find value that returns true on iterator check.
+     */
+    module.exports = make(arrFind, objFind);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/forEach.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/forEach.js
new file mode 100644 (file)
index 0000000..6e28dcb
--- /dev/null
@@ -0,0 +1,9 @@
+var make = require('./make_');
+var arrForEach = require('../array/forEach');
+var objForEach = require('../object/forOwn');
+
+    /**
+     */
+    module.exports = make(arrForEach, objForEach);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/make_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/make_.js
new file mode 100644 (file)
index 0000000..4fb8a81
--- /dev/null
@@ -0,0 +1,19 @@
+var slice = require('../array/slice');
+
+    /**
+     * internal method used to create other collection modules.
+     */
+    function makeCollectionMethod(arrMethod, objMethod, defaultReturn) {
+        return function(){
+            var args = slice(arguments);
+            if (args[0] == null) {
+                return defaultReturn;
+            }
+            // array-like is treated as array
+            return (typeof args[0].length === 'number')? arrMethod.apply(null, args) : objMethod.apply(null, args);
+        };
+    }
+
+    module.exports = makeCollectionMethod;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/map.js
new file mode 100644 (file)
index 0000000..fc157f5
--- /dev/null
@@ -0,0 +1,23 @@
+var isObject = require('../lang/isObject');
+var values = require('../object/values');
+var arrMap = require('../array/map');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Map collection values, returns Array.
+     */
+    function map(list, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        // list.length to check array-like object, if not array-like
+        // we simply map all the object values
+        if( isObject(list) && list.length == null ){
+            list = values(list);
+        }
+        return arrMap(list, function (val, key, list) {
+            return callback(val, key, list);
+        });
+    }
+
+    module.exports = map;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/max.js
new file mode 100644 (file)
index 0000000..a8490e7
--- /dev/null
@@ -0,0 +1,10 @@
+var make = require('./make_');
+var arrMax = require('../array/max');
+var objMax = require('../object/max');
+
+    /**
+     * Get maximum value inside collection
+     */
+    module.exports = make(arrMax, objMax);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/min.js
new file mode 100644 (file)
index 0000000..51d9f14
--- /dev/null
@@ -0,0 +1,10 @@
+var make = require('./make_');
+var arrMin = require('../array/min');
+var objMin = require('../object/min');
+
+    /**
+     * Get minimum value inside collection.
+     */
+    module.exports = make(arrMin, objMin);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/pluck.js
new file mode 100644 (file)
index 0000000..9b28377
--- /dev/null
@@ -0,0 +1,14 @@
+var map = require('./map');
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(list, key) {
+        return map(list, function(value) {
+            return value[key];
+        });
+    }
+
+    module.exports = pluck;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reduce.js
new file mode 100644 (file)
index 0000000..4c07573
--- /dev/null
@@ -0,0 +1,9 @@
+var make = require('./make_');
+var arrReduce = require('../array/reduce');
+var objReduce = require('../object/reduce');
+
+    /**
+     */
+    module.exports = make(arrReduce, objReduce);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/reject.js
new file mode 100644 (file)
index 0000000..2a92e3b
--- /dev/null
@@ -0,0 +1,16 @@
+var filter = require('./filter');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Inverse or collection/filter
+     */
+    function reject(list, iterator, thisObj) {
+        iterator = makeIterator(iterator, thisObj);
+        return filter(list, function(value, index, list) {
+            return !iterator(value, index, list);
+        }, thisObj);
+    }
+
+    module.exports = reject;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/size.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/size.js
new file mode 100644 (file)
index 0000000..244e33e
--- /dev/null
@@ -0,0 +1,19 @@
+var isArray = require('../lang/isArray');
+var objSize = require('../object/size');
+
+    /**
+     * Get collection size
+     */
+    function size(list) {
+        if (!list) {
+            return 0;
+        }
+        if (isArray(list)) {
+            return list.length;
+        }
+        return objSize(list);
+    }
+
+    module.exports = size;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/collection/some.js
new file mode 100644 (file)
index 0000000..48fd252
--- /dev/null
@@ -0,0 +1,9 @@
+var make = require('./make_');
+var arrSome = require('../array/some');
+var objSome = require('../object/some');
+
+    /**
+     */
+    module.exports = make(arrSome, objSome);
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date.js
new file mode 100644 (file)
index 0000000..9c2efe9
--- /dev/null
@@ -0,0 +1,22 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'dayOfTheYear' : require('./date/dayOfTheYear'),
+    'diff' : require('./date/diff'),
+    'i18n_' : require('./date/i18n_'),
+    'isLeapYear' : require('./date/isLeapYear'),
+    'isSame' : require('./date/isSame'),
+    'parseIso' : require('./date/parseIso'),
+    'quarter' : require('./date/quarter'),
+    'startOf' : require('./date/startOf'),
+    'strftime' : require('./date/strftime'),
+    'timezoneAbbr' : require('./date/timezoneAbbr'),
+    'timezoneOffset' : require('./date/timezoneOffset'),
+    'totalDaysInMonth' : require('./date/totalDaysInMonth'),
+    'totalDaysInYear' : require('./date/totalDaysInYear'),
+    'weekOfTheYear' : require('./date/weekOfTheYear')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/dayOfTheYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/dayOfTheYear.js
new file mode 100644 (file)
index 0000000..85905c5
--- /dev/null
@@ -0,0 +1,13 @@
+var isDate = require('../lang/isDate');
+
+    /**
+     * return the day of the year (1..366)
+     */
+    function dayOfTheYear(date){
+        return (Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()) -
+                Date.UTC(date.getFullYear(), 0, 1)) / 86400000 + 1;
+    }
+
+    module.exports = dayOfTheYear;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/diff.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/diff.js
new file mode 100644 (file)
index 0000000..1131cdc
--- /dev/null
@@ -0,0 +1,130 @@
+var totalDaysInMonth = require('./totalDaysInMonth');
+var totalDaysInYear = require('./totalDaysInYear');
+var convert = require('../time/convert');
+
+    /**
+     * calculate the difference between dates (range)
+     */
+    function diff(start, end, unitName){
+        // sort the dates to make it easier to process (specially year/month)
+        if (start > end) {
+            var swap = start;
+            start = end;
+            end = swap;
+        }
+
+        var output;
+
+        if (unitName === 'month') {
+            output = getMonthsDiff(start, end);
+        } else if (unitName === 'year'){
+            output = getYearsDiff(start, end);
+        } else if (unitName != null) {
+            if (unitName === 'day') {
+                // ignore timezone difference because of daylight savings time
+                start = toUtc(start);
+                end = toUtc(end);
+            }
+            output = convert(end - start, 'ms', unitName);
+        } else {
+            output = end - start;
+        }
+
+        return output;
+    }
+
+
+    function toUtc(d){
+        // we ignore timezone differences on purpose because of daylight
+        // savings time, otherwise it would return fractional days/weeks even
+        // if a full day elapsed. eg:
+        // Wed Feb 12 2014 00:00:00 GMT-0200 (BRST)
+        // Sun Feb 16 2014 00:00:00 GMT-0300 (BRT)
+        // diff should be 4 days and not 4.041666666666667
+        return Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate(),
+                        d.getHours(), d.getMinutes(), d.getSeconds(),
+                        d.getMilliseconds());
+    }
+
+
+    function getMonthsDiff(start, end){
+        return getElapsedMonths(start, end) +
+               getElapsedYears(start, end) * 12 +
+               getFractionalMonth(start, end);
+    }
+
+
+    function getYearsDiff(start, end){
+        var elapsedYears = getElapsedYears(start, end);
+        return elapsedYears + getFractionalYear(start, end, elapsedYears);
+    }
+
+
+    function getElapsedMonths(start, end){
+        var monthDiff = end.getMonth() - start.getMonth();
+        if (monthDiff < 0) {
+            monthDiff += 12;
+        }
+        // less than a full month
+        if (start.getDate() > end.getDate()) {
+            monthDiff -= 1;
+        }
+        return monthDiff;
+    }
+
+
+    function getElapsedYears(start, end){
+        var yearDiff = end.getFullYear() - start.getFullYear();
+        // less than a full year
+        if (start.getMonth() > end.getMonth()) {
+            yearDiff -= 1;
+        }
+        return yearDiff;
+    }
+
+
+    function getFractionalMonth(start, end){
+        var fractionalDiff = 0;
+        var startDay = start.getDate();
+        var endDay = end.getDate();
+
+        if (startDay !== endDay) {
+            var startTotalDays = totalDaysInMonth(start);
+            var endTotalDays = totalDaysInMonth(end);
+            var totalDays;
+            var daysElapsed;
+
+            if (startDay > endDay) {
+                // eg: Jan 29 - Feb 27 (29 days elapsed but not a full month)
+                var baseDay = startTotalDays - startDay;
+                daysElapsed = endDay + baseDay;
+                // total days should be relative to 1st day of next month if
+                // startDay > endTotalDays
+                totalDays = (startDay > endTotalDays)?
+                    endTotalDays + baseDay + 1 : startDay + baseDay;
+            } else {
+                // fractional is only based on endMonth eg: Jan 12 - Feb 18
+                // (6 fractional days, 28 days until next full month)
+                daysElapsed = endDay - startDay;
+                totalDays = endTotalDays;
+            }
+
+            fractionalDiff = daysElapsed / totalDays;
+        }
+
+        return fractionalDiff;
+    }
+
+
+    function getFractionalYear(start, end, elapsedYears){
+        var base = elapsedYears?
+            new Date(end.getFullYear(), start.getMonth(), start.getDate()) :
+            start;
+        var elapsedDays = diff(base, end, 'day');
+        return elapsedDays / totalDaysInYear(end);
+    }
+
+
+    module.exports = diff;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/de-DE.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/de-DE.js
new file mode 100644 (file)
index 0000000..b3ab620
--- /dev/null
@@ -0,0 +1,61 @@
+
+    // de-DE (German)
+    module.exports = {
+        "am" : "",
+        "pm" : "",
+
+        "x": "%d/%m/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %H:%M:%S %Z",
+
+        "months" : [
+            "Januar",
+            "Februar",
+            "März",
+            "April",
+            "Mai",
+            "Juni",
+            "Juli",
+            "August",
+            "September",
+            "Oktober",
+            "November",
+            "Dezember"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Febr",
+            "März",
+            "Apr",
+            "Mai",
+            "Juni",
+            "Juli",
+            "Aug",
+            "Sept",
+            "Okt",
+            "Nov",
+            "Dez"
+        ],
+
+        "days" : [
+            "Sonntag",
+            "Montag",
+            "Dienstag",
+            "Mittwoch",
+            "Donnerstag",
+            "Freitag",
+            "Samstag"
+        ],
+
+        "days_abbr" : [
+            "So",
+            "Mo",
+            "Di",
+            "Mi",
+            "Do",
+            "Fr",
+            "Sa"
+        ]
+    };
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/en-US.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/en-US.js
new file mode 100644 (file)
index 0000000..f9526ce
--- /dev/null
@@ -0,0 +1,61 @@
+
+    // en-US (English, United States)
+    module.exports = {
+        "am" : "AM",
+        "pm" : "PM",
+
+        "x": "%m/%d/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %I:%M:%S %p %Z",
+
+        "months" : [
+            "January",
+            "February",
+            "March",
+            "April",
+            "May",
+            "June",
+            "July",
+            "August",
+            "September",
+            "October",
+            "November",
+            "December"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Feb",
+            "Mar",
+            "Apr",
+            "May",
+            "Jun",
+            "Jul",
+            "Aug",
+            "Sep",
+            "Oct",
+            "Nov",
+            "Dec"
+        ],
+
+        "days" : [
+            "Sunday",
+            "Monday",
+            "Tuesday",
+            "Wednesday",
+            "Thursday",
+            "Friday",
+            "Saturday"
+        ],
+
+        "days_abbr" : [
+            "Sun",
+            "Mon",
+            "Tue",
+            "Wed",
+            "Thu",
+            "Fri",
+            "Sat"
+        ]
+    };
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/pt-BR.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n/pt-BR.js
new file mode 100644 (file)
index 0000000..71ebadb
--- /dev/null
@@ -0,0 +1,61 @@
+
+    // pt-BR (Brazillian Portuguese)
+    module.exports = {
+        "am" : "",
+        "pm" : "",
+
+        "x": "%d/%m/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %H:%M:%S %Z",
+
+        "months" : [
+            "Janeiro",
+            "Fevereiro",
+            "Março",
+            "Abril",
+            "Maio",
+            "Junho",
+            "Julho",
+            "Agosto",
+            "Setembro",
+            "Outubro",
+            "Novembro",
+            "Dezembro"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Fev",
+            "Mar",
+            "Abr",
+            "Mai",
+            "Jun",
+            "Jul",
+            "Ago",
+            "Set",
+            "Out",
+            "Nov",
+            "Dez"
+        ],
+
+        "days" : [
+            "Domingo",
+            "Segunda",
+            "Terça",
+            "Quarta",
+            "Quinta",
+            "Sexta",
+            "Sábado"
+        ],
+
+        "days_abbr" : [
+            "Dom",
+            "Seg",
+            "Ter",
+            "Qua",
+            "Qui",
+            "Sex",
+            "Sáb"
+        ]
+    };
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/i18n_.js
new file mode 100644 (file)
index 0000000..723fc10
--- /dev/null
@@ -0,0 +1,14 @@
+var mixIn = require('../object/mixIn');
+var enUS = require('./i18n/en-US');
+
+    // we also use mixIn to make sure we don't affect the original locale
+    var activeLocale = mixIn({}, enUS, {
+        // we expose a "set" method to allow overriding the global locale
+        set : function(localeData){
+            mixIn(activeLocale, localeData);
+        }
+    });
+
+    module.exports = activeLocale;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isLeapYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isLeapYear.js
new file mode 100644 (file)
index 0000000..4212870
--- /dev/null
@@ -0,0 +1,15 @@
+var isDate = require('../lang/isDate');
+
+    /**
+     * checks if it's a leap year
+     */
+    function isLeapYear(fullYear){
+        if (isDate(fullYear)) {
+            fullYear = fullYear.getFullYear();
+        }
+        return fullYear % 400 === 0 || (fullYear % 100 !== 0 && fullYear % 4 === 0);
+    }
+
+    module.exports = isLeapYear;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isSame.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/isSame.js
new file mode 100644 (file)
index 0000000..4097d29
--- /dev/null
@@ -0,0 +1,16 @@
+var startOf = require('./startOf');
+
+    /**
+     * Check if date is "same" with optional period
+     */
+    function isSame(date1, date2, period){
+        if (period) {
+            date1 = startOf(date1, period);
+            date2 = startOf(date2, period);
+        }
+        return Number(date1) === Number(date2);
+    }
+
+    module.exports = isSame;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/parseIso.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/parseIso.js
new file mode 100644 (file)
index 0000000..40a70a8
--- /dev/null
@@ -0,0 +1,146 @@
+var some = require('../array/some');
+
+    var datePatterns = [
+        /^([0-9]{4})$/,                        // YYYY
+        /^([0-9]{4})-([0-9]{2})$/,             // YYYY-MM (YYYYMM not allowed)
+        /^([0-9]{4})-?([0-9]{2})-?([0-9]{2})$/ // YYYY-MM-DD or YYYYMMDD
+    ];
+    var ORD_DATE = /^([0-9]{4})-?([0-9]{3})$/; // YYYY-DDD
+
+    var timePatterns = [
+        /^([0-9]{2}(?:\.[0-9]*)?)$/,                      // HH.hh
+        /^([0-9]{2}):?([0-9]{2}(?:\.[0-9]*)?)$/,          // HH:MM.mm
+        /^([0-9]{2}):?([0-9]{2}):?([0-9]{2}(\.[0-9]*)?)$/ // HH:MM:SS.ss
+    ];
+
+    var DATE_TIME = /^(.+)T(.+)$/;
+    var TIME_ZONE = /^(.+)([+\-])([0-9]{2}):?([0-9]{2})$/;
+
+    function matchAll(str, patterns) {
+        var match;
+        var found = some(patterns, function(pattern) {
+            return !!(match = pattern.exec(str));
+        });
+
+        return found ? match : null;
+    }
+
+    function getDate(year, month, day) {
+        var date = new Date(Date.UTC(year, month, day));
+
+        // Explicitly set year to avoid Date.UTC making dates < 100 relative to
+        // 1900
+        date.setUTCFullYear(year);
+
+        var valid =
+            date.getUTCFullYear() === year &&
+            date.getUTCMonth() === month &&
+            date.getUTCDate() === day;
+        return valid ? +date : NaN;
+    }
+
+    function parseOrdinalDate(str) {
+        var match = ORD_DATE.exec(str);
+        if (match ) {
+            var year = +match[1],
+                day = +match[2],
+                date = new Date(Date.UTC(year, 0, day));
+
+            if (date.getUTCFullYear() === year) {
+                return +date;
+            }
+        }
+
+        return NaN;
+    }
+
+    function parseDate(str) {
+        var match, year, month, day;
+
+        match = matchAll(str, datePatterns);
+        if (match === null) {
+            // Ordinal dates are verified differently.
+            return parseOrdinalDate(str);
+        }
+
+        year = (match[1] === void 0) ? 0 : +match[1];
+        month = (match[2] === void 0) ? 0 : +match[2] - 1;
+        day = (match[3] === void 0) ? 1 : +match[3];
+
+        return getDate(year, month, day);
+    }
+
+    function getTime(hr, min, sec) {
+        var valid =
+            (hr < 24 && hr >= 0 &&
+             min < 60 && min >= 0 &&
+             sec < 60 && min >= 0) ||
+            (hr === 24 && min === 0 && sec === 0);
+        if (!valid) {
+            return NaN;
+        }
+
+        return ((hr * 60 + min) * 60 + sec) * 1000;
+    }
+
+    function parseOffset(str) {
+        var match;
+        if (str.charAt(str.length - 1) === 'Z') {
+            str = str.substring(0, str.length - 1);
+        } else {
+            match = TIME_ZONE.exec(str);
+            if (match) {
+                var hours = +match[3],
+                    minutes = (match[4] === void 0) ? 0 : +match[4],
+                    offset = getTime(hours, minutes, 0);
+
+                if (match[2] === '-') {
+                    offset *= -1;
+                }
+
+                return { offset: offset, time: match[1] };
+            }
+        }
+
+        // No time zone specified, assume UTC
+        return { offset: 0, time: str };
+    }
+
+    function parseTime(str) {
+        var match;
+        var offset = parseOffset(str);
+
+        str = offset.time;
+        offset = offset.offset;
+        if (isNaN(offset)) {
+            return NaN;
+        }
+
+        match = matchAll(str, timePatterns);
+        if (match === null) {
+            return NaN;
+        }
+
+        var hours = (match[1] === void 0) ? 0 : +match[1],
+            minutes = (match[2] === void 0) ? 0 : +match[2],
+            seconds = (match[3] === void 0) ? 0 : +match[3];
+
+        return getTime(hours, minutes, seconds) - offset;
+    }
+
+    /**
+     * Parse an ISO8601 formatted date string, and return a Date object.
+     */
+    function parseISO8601(str){
+        var match = DATE_TIME.exec(str);
+        if (!match) {
+            // No time specified
+            return parseDate(str);
+        }
+
+        return parseDate(match[1]) + parseTime(match[2]);
+    }
+
+    module.exports = parseISO8601;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/quarter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/quarter.js
new file mode 100644 (file)
index 0000000..8f61076
--- /dev/null
@@ -0,0 +1,16 @@
+
+
+    /**
+     * gets date quarter
+     */
+    function quarter(date){
+        var month = date.getMonth();
+        if (month < 3) return 1;
+        if (month < 6) return 2;
+        if (month < 9) return 3;
+        return 4;
+    }
+
+    module.exports = quarter;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/startOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/startOf.js
new file mode 100644 (file)
index 0000000..072bc0e
--- /dev/null
@@ -0,0 +1,54 @@
+var clone = require('../lang/clone');
+
+    /**
+     * get a new Date object representing start of period
+     */
+    function startOf(date, period){
+        date = clone(date);
+
+        // intentionally removed "break" from switch since start of
+        // month/year/etc should also reset the following periods
+        switch (period) {
+            case 'year':
+                date.setMonth(0);
+            /* falls through */
+            case 'month':
+                date.setDate(1);
+            /* falls through */
+            case 'week':
+            case 'day':
+                date.setHours(0);
+            /* falls through */
+            case 'hour':
+                date.setMinutes(0);
+            /* falls through */
+            case 'minute':
+                date.setSeconds(0);
+            /* falls through */
+            case 'second':
+                date.setMilliseconds(0);
+                break;
+            default:
+                throw new Error('"'+ period +'" is not a valid period');
+        }
+
+        // week is the only case that should reset the weekDay and maybe even
+        // overflow to previous month
+        if (period === 'week') {
+            var weekDay = date.getDay();
+            var baseDate = date.getDate();
+            if (weekDay) {
+                if (weekDay >= baseDate) {
+                    //start of the week is on previous month
+                    date.setDate(0);
+                }
+                date.setDate(date.getDate() - date.getDay());
+            }
+        }
+
+        return date;
+    }
+
+    module.exports = startOf;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/strftime.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/strftime.js
new file mode 100644 (file)
index 0000000..5e56633
--- /dev/null
@@ -0,0 +1,121 @@
+var pad = require('../number/pad');
+var lpad = require('../string/lpad');
+var i18n = require('./i18n_');
+var dayOfTheYear = require('./dayOfTheYear');
+var timezoneOffset = require('./timezoneOffset');
+var timezoneAbbr = require('./timezoneAbbr');
+var weekOfTheYear = require('./weekOfTheYear');
+
+    var _combinations = {
+        'D': '%m/%d/%y',
+        'F': '%Y-%m-%d',
+        'r': '%I:%M:%S %p',
+        'R': '%H:%M',
+        'T': '%H:%M:%S',
+        'x': 'locale',
+        'X': 'locale',
+        'c': 'locale'
+    };
+
+
+    /**
+     * format date based on strftime format
+     */
+    function strftime(date, format, localeData){
+        localeData = localeData  || i18n;
+        var reToken = /%([a-z%])/gi;
+
+        function makeIterator(fn) {
+            return function(match, token){
+                return fn(date, token, localeData);
+            };
+        }
+
+        return format
+            .replace(reToken, makeIterator(expandCombinations))
+            .replace(reToken, makeIterator(convertToken));
+    }
+
+
+    function expandCombinations(date, token, l10n){
+        if (token in _combinations) {
+            var expanded = _combinations[token];
+            return expanded === 'locale'? l10n[token] : expanded;
+        } else {
+            return '%'+ token;
+        }
+    }
+
+
+    function convertToken(date, token, l10n){
+        switch (token){
+            case 'a':
+                return l10n.days_abbr[date.getDay()];
+            case 'A':
+                return l10n.days[date.getDay()];
+            case 'h':
+            case 'b':
+                return l10n.months_abbr[date.getMonth()];
+            case 'B':
+                return l10n.months[date.getMonth()];
+            case 'C':
+                return pad(Math.floor(date.getFullYear() / 100), 2);
+            case 'd':
+                return pad(date.getDate(), 2);
+            case 'e':
+                return pad(date.getDate(), 2, ' ');
+            case 'H':
+                return pad(date.getHours(), 2);
+            case 'I':
+                return pad(date.getHours() % 12, 2);
+            case 'j':
+                return pad(dayOfTheYear(date), 3);
+            case 'l':
+                return lpad(date.getHours() % 12, 2);
+            case 'L':
+                return pad(date.getMilliseconds(), 3);
+            case 'm':
+                return pad(date.getMonth() + 1, 2);
+            case 'M':
+                return pad(date.getMinutes(), 2);
+            case 'n':
+                return '\n';
+            case 'p':
+                return date.getHours() >= 12? l10n.pm : l10n.am;
+            case 'P':
+                return convertToken(date, 'p', l10n).toLowerCase();
+            case 's':
+                return date.getTime() / 1000;
+            case 'S':
+                return pad(date.getSeconds(), 2);
+            case 't':
+                return '\t';
+            case 'u':
+                var day = date.getDay();
+                return day === 0? 7 : day;
+            case 'U':
+                return pad(weekOfTheYear(date), 2);
+            case 'w':
+                return date.getDay();
+            case 'W':
+                return pad(weekOfTheYear(date, 1), 2);
+            case 'y':
+                return pad(date.getFullYear() % 100, 2);
+            case 'Y':
+                return pad(date.getFullYear(), 4);
+            case 'z':
+                return timezoneOffset(date);
+            case 'Z':
+                return timezoneAbbr(date);
+            case '%':
+                return '%';
+            default:
+                // keep unrecognized tokens
+                return '%'+ token;
+        }
+    }
+
+
+    module.exports = strftime;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneAbbr.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneAbbr.js
new file mode 100644 (file)
index 0000000..b100687
--- /dev/null
@@ -0,0 +1,17 @@
+var timezoneOffset = require('./timezoneOffset');
+
+    /**
+     * Abbreviated time zone name or similar information.
+     */
+    function timezoneAbbr(date){
+        // Date.toString gives different results depending on the
+        // browser/system so we fallback to timezone offset
+        // chrome: 'Mon Apr 08 2013 09:02:04 GMT-0300 (BRT)'
+        // IE: 'Mon Apr 8 09:02:04 UTC-0300 2013'
+        var tz = /\(([A-Z]{3,4})\)/.exec(date.toString());
+        return tz? tz[1] : timezoneOffset(date);
+    }
+
+    module.exports = timezoneAbbr;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneOffset.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/timezoneOffset.js
new file mode 100644 (file)
index 0000000..9492dce
--- /dev/null
@@ -0,0 +1,16 @@
+var pad = require('../number/pad');
+
+    /**
+     * time zone as hour and minute offset from UTC (e.g. +0900)
+     */
+    function timezoneOffset(date){
+        var offset = date.getTimezoneOffset();
+        var abs = Math.abs(offset);
+        var h = pad(Math.floor(abs / 60), 2);
+        var m = pad(abs % 60, 2);
+        return (offset > 0? '-' : '+') + h + m;
+    }
+
+    module.exports = timezoneOffset;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInMonth.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInMonth.js
new file mode 100644 (file)
index 0000000..e5d5390
--- /dev/null
@@ -0,0 +1,23 @@
+var isDate = require('../lang/isDate');
+var isLeapYear = require('./isLeapYear');
+
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+
+    /**
+     * returns the total amount of days in the month (considering leap years)
+     */
+    function totalDaysInMonth(fullYear, monthIndex){
+        if (isDate(fullYear)) {
+            monthIndex = fullYear.getMonth();
+        }
+
+        if (monthIndex === 1 && isLeapYear(fullYear)) {
+            return 29;
+        } else {
+            return DAYS_IN_MONTH[monthIndex];
+        }
+    }
+
+    module.exports = totalDaysInMonth;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/totalDaysInYear.js
new file mode 100644 (file)
index 0000000..b4b7e9b
--- /dev/null
@@ -0,0 +1,13 @@
+var isLeapYear = require('./isLeapYear');
+
+    /**
+     * return the amount of days in the year following the gregorian calendar
+     * and leap years
+     */
+    function totalDaysInYear(fullYear){
+        return isLeapYear(fullYear)? 366 : 365;
+    }
+
+    module.exports = totalDaysInYear;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/weekOfTheYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/date/weekOfTheYear.js
new file mode 100644 (file)
index 0000000..dd51b7f
--- /dev/null
@@ -0,0 +1,16 @@
+var dayOfTheYear = require('./dayOfTheYear');
+
+    /**
+     * Return the week of the year based on given firstDayOfWeek
+     */
+    function weekOfTheYear(date, firstDayOfWeek){
+        firstDayOfWeek = firstDayOfWeek == null? 0 : firstDayOfWeek;
+        var doy = dayOfTheYear(date);
+        var dow = (7 + date.getDay() - firstDayOfWeek) % 7;
+        var relativeWeekDay = 6 - firstDayOfWeek - dow;
+        return Math.floor((doy + relativeWeekDay) / 7);
+    }
+
+    module.exports = weekOfTheYear;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/array.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/array.md
new file mode 100644 (file)
index 0000000..62ceb15
--- /dev/null
@@ -0,0 +1,982 @@
+# array #
+
+Array utilities.
+
+
+
+
+## append(arr1, arr2):Array
+
+Appends an array to the end of the other.
+The first array will be modified and will contain the appended items.
+
+See: [`union()`](#union), [`combine()`](#combine)
+
+```js
+var foo = ['a', 'b'],
+    bar = ['b', 'd'];
+
+append(foo, bar); // ['a', 'b', 'b', 'd']
+```
+
+
+
+## collect(arr, callback, [thisObj]):Array
+
+Maps the items in `arr` and concatenates the resulting arrays.
+
+See: [`map()`](#map)
+
+```js
+collect([1, 2, 3], function(val) {
+    return [val, val % 2];
+}); // [1, 1, 2, 0, 3, 1];
+
+collect(['a', 'bb', ''], function(val) {
+    return val.split('');
+}); // ['a', 'b', 'b']
+```
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{ a: [1] }, { b: 'foo' }, { a: [2, 3] }];
+collect(items, 'a'); // [1, 2, 3];
+```
+
+
+
+## combine(arr1, arr2):Array
+
+Combines an array with all the items of another.
+The first array will be modified and will contain the combined items.
+Does not allow duplicates and is case and type sensitive.
+
+See: [`union()`](#union), [`append()`](#append)
+
+```js
+var foo = ['a', 'b'],
+    bar = ['b', 'd'];
+
+combine(foo, bar); // ['a', 'b', 'd']
+```
+
+
+
+## compact(arr):Array
+
+Returns a new Array without any `null` or `undefined` values. Note that it will
+keep empty strings and other falsy values (simillar to Ruby Array#compact).
+
+```js
+var arr = [0, 1, null, false, '', 'foo', undefined, 'bar'];
+compact(arr); // [0, 1, false, '', 'foo', 'bar'];
+```
+
+
+
+## contains(arr, value):Boolean
+
+Checks if Array contains value. Alias to `indexOf(arr, val) !== -1`.
+
+```js
+var arr = [1, 2, 3];
+contains(arr, 2);      // true
+contains(arr, 'foo');  // false
+```
+
+
+
+## difference(...arrs):Array
+
+Return a new Array with elements that aren't present in the other Arrays
+besides the first one.
+
+Works like [Python set#difference](http://docs.python.org/library/stdtypes.html#set.difference).
+
+It will remove duplicates.
+
+See: [`xor()`](#xor), [`intersection()`](#intersection)
+
+```js
+var a = ['a', 'b', 1];
+var b = ['c', 1];
+difference(a, b); // ['a', 'b']
+```
+
+
+## equals(a, b, [compare]):Boolean
+
+Checks if both arrays are equal.
+
+```js
+equals([1, 2], [1, 2]); // true
+equals([2, 4], [1, 2]); // false
+```
+
+By default it uses the [lang/is](lang.html#is) as the `compare` function but
+you can pass a custom function to change the behavior.
+
+```js
+function loose(a, b) {
+    return a == b;
+}
+equals(['1', 2], [1, 2], loose); // true
+```
+
+See: [object/equals](object.html#equals), [lang/deepEquals](lang.html#deepEquals)
+
+
+
+## every(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.every()`.
+
+Tests whether all elements in the array pass the test implemented by the provided function.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = [1, 'foo', 'bar'];
+every(items, isString);   // false
+every(items, isFunction); // false
+every(items, function(val, key, arr){
+    return val != null;
+}); // true
+```
+
+more info at [MDN Array#every](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every)
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{id:1, active:true}, {id:3, active:true}, {id:8, active:true}];
+// all items with `id === 8`
+every(items, {id:8}); // false
+// `active` is truthy on all items
+every(items, 'active'); // true
+```
+
+
+
+## filter(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.filter()`.
+
+Creates a new array with all elements that pass the callback test.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var nums = [1, 2, 3, 4, 5, 6];
+var oddNumbers = filter(nums, function(val, key, arr){
+    return (val % 2) !== 0;
+});
+// > [1, 3, 5]
+```
+
+more info at [MDN Array#filter](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter)
+
+Filter also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true},
+    {name:'jane', surname:'doe', beard:false}
+];
+// filter item that matches all properties/values pairs
+filter(arr, {name:'john', beard:false});
+// > [{name:'john', surnname:'connor', beard:false}]
+// items where 'beard' is a truthy value
+filter(arr, 'beard');
+// > [{name:'john', surnname:'doe', beard:true}]
+```
+
+See [`reject()`](#reject)
+
+
+
+## find(arr, callback, [thisObj]):*
+
+Loops through all the items in the Array and returns the first one that passes
+a truth test (callback).
+
+```js
+var arr = [123, {a:'b'}, 'foo', 'bar'];
+find(arr, isString); // "foo"
+find(arr, isNumber); // 123
+find(arr, isObject); // {a:'b'}
+```
+
+Find also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true}
+];
+// first item that matches all properties/values pairs
+find(arr, {name:'john'}); // {name:'john', surnname:'connor', beard:false}
+// first item where 'beard' is a truthy value
+find(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
+```
+
+See: [findIndex()](#findIndex), [findLast()](#findLast),
+[findLastIndex()](#findLastIndex)
+
+
+
+## findLast(arr, callback, [thisObj]):*
+
+Loops through all the items in the Array (starting from last item) and returns
+the first one that passes a truth test (callback).
+
+```js
+var arr = [123, {a:'b'}, 'foo', 'bar'];
+findLast(arr, isString); // "bar"
+findLast(arr, isNumber); // 123
+findLast(arr, isObject); // {a:'b'}
+```
+
+`findLast` also supports shorthand notation:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true}
+];
+// last item that matches all properties/values pairs
+findLast(arr, {name:'john'}); // {name:'john', surnname:'doe', beard:true}
+// last item where 'beard' is a truthy value
+findLast(arr, 'beard'); // {name:'john', surnname:'doe', beard:true}
+```
+
+See: [find()](#find), [findIndex()](#findIndex),
+[findLastIndex()](#findLastIndex)
+
+
+
+## findIndex(arr, iterator, [thisObj]):Number
+
+Loops through the items in the Array and returns the index of the first one
+that passes a truth test (callback).
+
+Returns `-1` if no item was found that passes the truth test.
+
+```js
+var arr = [1, { a: 1 }, 'foo', 'bar'];
+findIndex(arr, isString); // 2
+findIndex(arr, isNumber); // 0
+findIndex(arr, isObject); // 1
+findIndex(arr, isRegExp); // -1
+```
+
+`findIndex` also supports shorthand notation:
+
+```js
+var pets = [
+    { pet: 'dog', name: 'Sam' },
+    { pet: 'dog', name: 'Maggie' }
+];
+
+findIndex(pets, { pet: 'dog' }); // 0
+findIndex(pets, { name: 'Maggie' }); // 1
+```
+
+See: [find()](#find), [findLastIndex()](#findLastIndex)
+
+
+
+## findLastIndex(arr, iterator, [thisObj]):Number
+
+Loops through the items in the Array on the reverse order and returns the index
+of the first one that passes a truth test (callback).
+
+Returns `-1` if no item was found that passes the truth test.
+
+```js
+var arr = [1, { a: 1 }, 'foo', 'bar'];
+findLastIndex(arr, isString); // 3
+findLastIndex(arr, isNumber); // 0
+findLastIndex(arr, isObject); // 1
+findLastIndex(arr, isRegExp); // -1
+```
+
+`findLastndex` also supports shorthand notation:
+
+```js
+var pets = [
+    { pet: 'dog', name: 'Sam' },
+    { pet: 'dog', name: 'Maggie' }
+];
+
+findLastIndex(pets, { pet: 'dog' }); // 1
+findLastIndex(pets, { name: 'Sam' }); // 0
+```
+
+See: [find()](#find), [findIndex()](#findIndex)
+
+
+
+## flatten(arr, [level]):Array
+
+Recursively flattens an array. A new array containing all the elements is
+returned. If `level` is specified, it will only flatten up to that level.
+Note that arrays within objects will not be flattened.
+
+### Example
+
+```js
+flatten([1, [2], [3, [4, 5]]]);
+// > [1, 2, 3, 4, 5]
+flatten([1, [2], [3, [4, 5]]], 1);
+// > [1, 2, 3, [4, 5]]
+```
+
+See: [`object/flatten()`](./object.html#flatten)
+
+
+## forEach(arr, callback, [thisObj]):void
+
+Crossbrowser `Array.forEach()`.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = ['foo', 'bar', 'lorem', 'ipsum'];
+forEach(items, function(val, key, arr){
+    console.log(key +' : '+ val);
+    if (val === 'lorem') {
+        // stop iteration (break)
+        return false;
+    }
+});
+```
+
+more info at [MDN Array#forEach](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach)
+
+
+
+## groupBy(arr, [categorize=identity], [thisObj]):Object
+
+Groups array elements by the `key` returned from the `categorize` function.
+
+It will use the [function/identity](function.html#identity) as the default
+`categorize` function.
+
+```js
+var items = ['lorem', 'ipsum', 'foo', 'bar', 'baz'];
+groupBy(items, function(val) { return val.length });
+// > {'3': ['foo', 'bar', 'baz'], '5': ['lorem', 'ipsum']}
+```
+
+
+
+## indexOf(arr, item, [fromIndex]):Number
+
+Crossbrowser `Array.indexOf()`.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#indexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf)
+
+
+
+
+## insert(arr, ...items):Number
+
+Push items into array only if they aren't contained by it. Returns the new
+`length` of the array.
+
+See: [`remove()`](#remove), [`removeAll()`](#removeAll),
+[`contains()`](#contains)
+
+```js
+var arr = ['a', 'b'];
+insert(arr, 'a');       // 2 : ['a', 'b']
+insert(arr, 'c');       // 3 : ['a', 'b', 'c']
+insert(arr, 1, 2, 'b'); // 5 : ['a', 'b', 'c', 1, 2]
+```
+
+
+
+## intersection(...arrs):Array
+
+Return a new Array with elements common to all Arrays.
+
+Similar to Python set#intersection and underscore.js intersection.
+
+It will remove duplicates.
+
+See: [`difference()`](#difference), [`xor()`](#xor)
+
+```js
+var a = ['a', 'b', 1],
+    b = ['c', 1],
+    c = [1, 2, 3];
+intersection(a, b, c); // [1]
+```
+
+
+
+## invoke(arr, methodName[, ...args]):Array
+
+Call `methodName` on each item of the array passing custom arguments if needed.
+
+```js
+invoke([[3,2,1], [9,5,2]], 'sort'); // [[1,2,3], [2,5,9]]
+```
+
+
+
+## join(arr, [separator]):String
+
+Joins the strings in `arr`, inserting `separator` between each value.
+
+This ignores null values and empty strings that are in the array. `separator`
+defaults to an empty string. This will convert all non-string objects in the
+array to a string.
+
+### Example
+
+```js
+join(['a', 'b', 'c']); // 'abc'
+join(['foo', 'bar'], ', '); // 'foo, bar'
+join([null, 'foo', '', 'bar', undefined], ':'); // 'foo:bar'
+```
+
+
+## last(arr):*
+
+Returns the last element of an array without modifying the array.
+
+
+```js
+last( [1, 2, 3, 4] ) // > 4
+last( ['foo', 'bar'] ) // > 'bar'
+```
+
+
+## lastIndexOf(arr, item, [fromIndex]):Number
+
+Crossbrowser `Array.lastIndexOf()`.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#lastIndexOf](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf)
+
+
+
+## map(arr, callback, [thisObj]]):Array
+
+Crossbrowser `Array.map()`.
+
+Creates a new array with the results of calling a provided function on every
+element in this array.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+See: [`collect()`](#collect)
+
+```js
+var nums = [1,2,3,4];
+var double = map(nums, function(val, key, arr){
+    return val * 2;
+});
+// > [2, 4, 6, 8]
+```
+
+more info at [MDN Array#map](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map)
+
+It also supports a shorthand notation which can be used to achieve same result
+as [`array/pluck`](#pluck):
+
+```js
+var src = ['lorem', 'ipsum', 'foo', 'amet'];
+// grab the "length" property of all items
+var lengths = map(src, 'length'); // [5, 5, 3, 4]
+```
+
+
+
+## max(arr, [iterator], [thisObj]):*
+
+Returns maximum value inside array or use a custom iterator to define how items
+should be compared.
+
+See: [`min()`](#min)
+
+```js
+max([10, 2, 7]); // 10
+max(['foo', 'lorem', 'amet'], function(val){
+    return val.length;
+}); // 'lorem'
+```
+
+It also supports a shorthand notation:
+
+```js
+max(['foo', 'lorem', 'amet'], 'length'); // "lorem"
+```
+
+
+
+## min(arr, [iterator], [thisObj]):*
+
+Returns minimum value inside array or use a custom iterator to define how items
+should be compared.
+
+See: [`max()`](#max)
+
+```js
+min([10, 2, 7]); // 2
+min(['foo', 'lorem', 'amet'], function(val){
+    return val.length;
+}); // 'foo'
+```
+
+It also supports a shorthand notation:
+
+```js
+min(['foo', 'lorem', 'amet'], 'length'); // "foo"
+```
+
+
+
+## pick(arr, [nItems]):*
+
+Gets random item(s) and removes it from the original array.
+
+If `nItems` is specified it will return a new Array contained the *picked*
+items otherwise it returns a single item.
+
+See: [`random/choice()`](./random.html#choice)
+
+### Example:
+
+```js
+var arr = [1, 2, 3, 4, 5, 6];
+var item1 = pick(arr); // 4
+var item2 = pick(arr); // 1
+var items = pick(arr, 2); // [5, 2]
+console.log(arr); // [3, 6]
+```
+
+
+
+## pluck(arr, propName):Array
+
+Extract a list of property values.
+
+See: [`function/prop()`](function.html#prop)
+
+```js
+var users = [{name : 'John', age: 21}, {name: 'Jane', age : 27}];
+var names = pluck(users, 'name'); // ["John", "Jane"]
+var ages = pluck(users, 'age'); // [21, 27]
+```
+
+
+
+## range([start], stop[, step]):Array
+
+Creates a new Array with all the values inside the range. Works similarly to
+Python#range or PHP#range.
+
+### Arguments
+
+ 1. `[start]` (Number) : Range start. Default is `0`.
+ 2. `stop` (Number) : Range limit.
+ 3. `[step]` (Number) : Step size. Default is `1`.
+
+### Example
+
+```js
+range(5);         // [0, 1, 2, 3, 4, 5]
+range(0, 5);      // [0, 1, 2, 3, 4, 5]
+range(0, 5, 2);   // [0, 2, 4]
+range(20, 40, 5); // [20, 25, 30, 35, 40]
+```
+
+
+
+## reduce(arr, fn):*
+
+Crossbrowser `Array.reduce()`.
+
+Apply a function against an accumulator and each value of the array (from
+left-to-right) as to reduce it to a single value.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#reduce](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduce)
+
+
+
+## reduceRight(arr, fn):*
+
+Crossbrowser `Array.reduceRight()`.
+
+Apply a function simultaneously against two values of the array (from
+right-to-left) as to reduce it to a single value.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+more info at [MDN Array#reduceRight](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/reduceRight)
+
+
+
+## reject(arr, fn, thisObj):Array
+
+Creates a new array with all the elements that do **not** pass the truth test.
+Opposite of [`filter()`](#filter).
+
+See [`filter()`](#filter)
+
+### Example
+
+```js
+var numbers = [1, 2, 3, 4, 5, 6];
+reject(numbers, function(x) { return (x % 2) !== 0; }); // [2, 4, 6]
+```
+
+It also supports a shorthand syntax:
+
+```js
+var users = [
+    {name:'john', surname:'connor', beard:false},
+    {name:'john', surname:'doe', beard:true},
+    {name:'jane', surname:'doe', beard:false}
+];
+// reject items that matches all properties/values pairs
+reject(arr, {name:'john'});
+// > [{name:'jane', surnname:'doe', beard:false}]
+// reject items where 'beard' is a truthy value
+filter(arr, 'beard');
+// > [{name:'john', surnname:'connor', beard:false},
+//    {name:'jane', surname:'doe', beard:false}]
+```
+
+
+
+## remove(arr, item):void
+
+Remove a single item from the array.
+
+IMPORTANT: it won't remove duplicates, just a single item.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4];
+remove(foo, 2);
+console.log(foo); // [1, 3, 4]
+```
+
+
+
+## removeAll(arr, item):void
+
+Remove all instances of an item from the array.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4, 2, 2];
+removeAll(foo, 2);
+console.log(foo); // [1, 3, 4];
+```
+
+## reverse(arr):void
+
+Returns a copy of the array with all elements in reversed order.
+
+### Example
+
+```js
+var foo = [1, 2, 3, 4, 5];
+var bar = reverse(foo);
+console.log(bar); // [5, 4, 3, 2, 1];
+
+console.log(foo); // [1, 2, 3, 4, 5];
+```
+
+
+
+
+## shuffle(arr):Array
+
+Returns a new Array with items randomly sorted (shuffled). Similar to Ruby Array#shuffle.
+
+### Example
+
+```js
+var arr = ['a', 'b', 'c', 'd', 'e'];
+shuffle(arr); // ['b', 'd', 'e', 'c', 'a']
+```
+
+
+
+## slice(arr, [start], [end]):Array
+
+Returns a new array containing the items from `arr` from the start index to the
+end index.
+
+If `start` is omitted, it will start at `0`. If `end` is omitted, it will used
+the last index of the array.  If `start` or `end` is negative, it is used as an
+offset from the end of the array.
+
+It will also convert array-like objects to arrays.
+
+### Example
+
+```js
+slice([1, 2, 3, 4], 1, 2); // [2, 3]
+slice([1, 2, 3], 1); // [2, 3]
+slice([1, 2, 3]); // [1, 2, 3]
+slice({ length: 2, 0: 'a', 1: 'b' }); // ['a', 'b']
+slice([1, 2, 3], 0, -1); // [1, 2]
+slice([1, 2, 3], -2); // [2, 3]
+```
+
+
+
+## some(arr, callback, [thisObj]):Array
+
+Crossbrowser `Array.some()`.
+
+Tests whether some element in the array passes the test implemented by the provided function.
+
+It differs from ES5 since it will also loop over sparse items in the array to
+normalize the behavior across browsers (avoid inconsistencies).
+
+```js
+var items = [1, 'foo', 'bar'];
+some(items, isString);   // true
+some(items, isFunction); // false
+```
+
+more info at [MDN Array#some](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some)
+
+It also supports a shorthand syntax:
+
+```js
+var items = [{id:1, active:true}, {id:3, active:false}, {id:8, active:false}];
+// at least one item with `id === 8`
+some(items, {id:8}); // true
+// `active` is truthy on at least one item
+some(items, 'active'); // true
+```
+
+see also: [`object/matches`](object.html#matches)
+
+
+
+## sort(arr, [compareFn]):Array
+
+Returns a sorted Array using the [Merge Sort](http://en.wikipedia.org/wiki/Merge_sort) algorithm (stable sort).
+
+The `Array.prototype.sort` browser implementations differ since the sorting algorithm isn't described in the ES spec - [in V8 it isn't stable](http://code.google.com/p/v8/issues/detail?id=90) and [on Firefox it is stable](https://bugzilla.mozilla.org/show_bug.cgi?id=224128) - so this function doesn't use the browser native implementation and is recommended in cases where a stable sort is required (items should preserve same order if already sorted).
+
+**Important:** It does logical comparisson by default (greater/less than) and
+not a string comparisson like the native `Array#sort`.
+
+### compareFn
+
+If `compareFn` is supplied elements are sorted based on the value returned by
+the `compareFn`.
+
+ - If `compareFn(a, b)` is less than `0`, sort `a` to a lower index than `b`.
+ - If `compareFn(a, b)` returns `0`, leave `a` and `b` unchanged with respect
+   to each other, but sorted with respect to all different elements.
+ - If `compareFn(a, b)` is greater than `0`, sort `b` to a lower index than
+   `a`.
+
+See: [`sortBy`](#sortBy)
+
+### Example
+
+```js
+sort([187, 23, 47, 987, 12, 59, 0]); // [0, 12, 23, 47, 59, 187, 987]
+sort(['a', 'z', 'c', 'beta', 'b']); // ['a', 'b', 'beta', 'c', 'z']
+
+// ['sit', 'amet', 'lorem', 'ipsum']
+sort(['lorem', 'ipsum', 'sit', 'amet'], function(a, b){
+    // sort by length, items with same length
+    // will keep the relative order (stable)
+    return a.length - b.length;
+});
+
+// [4, 3, 2, 1]
+sort([2, 3, 1, 4], function(a, b){
+    // reverse sort
+    return b - a;
+});
+```
+
+
+
+## sortBy(arr, callback, [context]):Array
+
+Returns an array sorted by the result of the callback.
+
+The callback is called for each item that is to be sorted, and the
+results of the callback are used to sort the array. The callback
+is called with the item as the first parameter, optionally with
+the provided context.
+
+It also supports a shorthand notation which can be used to sort by a property
+name.
+
+See: [`sort`](#sort)
+
+```js
+// Returns [{ a: 1 }, { a: 2 }, { a: 3 }]
+sortBy([{ a: 1 }, { a: 3 }, { a: 2 }],
+    function(item) { return item.a; });
+
+// Same as above, using shorthand notation
+sortBy([{ a: 1 }, { a: 3 }, { a: 2 }], 'a');
+```
+
+
+
+## split(arr, [segments]):Array
+
+Splits an array into a fixed number of segments.
+
+The number of segments is specified by `segments` and defaults to 2. If the
+array cannot be evenly split, the first segments will contain the extra items.
+If `arr` is empty, an empty array is returned. If `arr.length` is less than
+`segments`, then the resulting array will have `arr.length` number of
+single-element arrays.
+
+### Example
+```js
+split([1, 2, 3, 4, 5], 3) // [ [1, 2], [3, 4], [5] ]
+split([1, 2, 3, 4, 5]) // [ [1, 2, 3], [4, 5] ]
+split([]) // []
+split([1, 2], 3) // [ [1], [2] ]
+```
+
+
+
+## take(times, callback, [thisObj]):Array
+
+Builds a new array based on the returned values from the given `callback`.
+
+```js
+take(4, function(i, total) {
+    return i / total;
+});
+// > [0, 0.25, 0.5, 0.75]
+```
+
+see: [function/times](../function.html#times)
+
+
+
+## toLookup(arr, key):Object
+
+Create an object that indexes the items in the array by a key. If `key` is a function, the key for each value in the resulting object will be the result of calling the function with the value as an argument. Otherwise `key` specifies the property on each value to use as the key.
+
+### Example
+
+```js
+var foo = [{ name: 'a', thing: 1 }, { name: 'b', thing: 2 }];
+// { a: { name: 'a', thing: 1 }, b: { name: 'b', thing: 2 } }
+toLookup(foo, 'name');
+// same as above
+toLookup(foo, function (value) { return value.name; });
+```
+
+
+
+## union(...arrs):Array
+
+Concat multiple arrays removing duplicates.
+
+```js
+var a = ['a', 'b'],
+    b = ['c', 'a'],
+    c = [1, 'b', 2, 3, 'a'];
+
+//note that unique remove from begin to end
+union(a, b, c); // ['c', 1, 'b', 2, 3, 'a']
+```
+
+
+
+## unique(arr, [compare]):Array
+
+Return a new Array of unique items.
+
+**IMPORTANT:** duplicates are removed starting from begining of array.
+
+```js
+var arr = [1, 2, 3, 4, 2, 2, 4];
+var foo = unique(arr);
+console.log(foo);
+// > [1, 3, 2, 4];
+
+// you also have the option to set a custom compare function
+var users = [{name: 'john'}, {name: 'paul'}, {name: 'john'}];
+var uniqueNames = unique(arr, function(a, b){
+    return a.name === b.name;
+});
+console.log(uniqueNames);
+// > [{name: 'paul'}, {name: 'john'}]
+```
+
+
+
+## xor(arr1, arr2):Array
+
+Exclusive OR. Returns items that are present in a single array.
+
+Works like [Python set#symmetric_difference](http://docs.python.org/library/stdtypes.html#set.symmetric_difference) renamed for brevity.
+
+It will remove duplicates.
+
+See: [`difference()`](#difference), [`intersection()`](#intersection)
+
+```js
+var a = ['a', 'b', 1];
+var b = ['c', 1];
+xor(a, b); // ['a', 'b', 'c']
+```
+
+
+
+## zip(...arrs):Array
+
+Groups the elements of each array at their corresponding indexes.
+
+Useful for separate data sources that are coordinated through matching array
+indexes. For a matrix of nested arrays, `zip.apply(...)` can transpose the
+matrix in a similar fashion.
+
+```js
+// [['moe', 30, true], ['larry', 40, false], ['curly', 50, false]]
+zip(['moe', 'larry', 'curly'], [30, 40, 50], [true, false, false]);
+```
+
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/collection.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/collection.md
new file mode 100644 (file)
index 0000000..2ffcab1
--- /dev/null
@@ -0,0 +1,233 @@
+# collection #
+
+Methods for dealing with collections (Array or Objects).
+
+
+
+## contains(list, value):Boolean
+
+Checks if collection contains value.
+
+```js
+contains({a: 1, b: 2, c: 'bar'}, 2); // true
+contains([1, 2, 3], 'foo');  // false
+```
+
+See: [array/contains](array.html#contains), [object/contains](object.html#contains)
+
+
+
+## every(list, callback, [thisObj]):Boolean
+
+Tests whether all values in the collection pass the test implemented by the
+provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+every(obj, isNumber); // false
+```
+
+See: [array/every](array.html#every), [object/every](object.html#every)
+
+
+
+## filter(list, callback, [thisObj]):Array
+
+Filter collection properties.
+
+See: [array/filter](array.html#filter), [object/filter](object.html#filter)
+
+
+
+## find(list, callback, [thisObj]):*
+
+Loops through all the values in the collection and returns the first one that
+passes a truth test (callback).
+
+**Important:** loop order over objects properties isn't guaranteed to be the
+same on all environments.
+
+```js
+find({a: 'foo', b: 12}, isString); // 'foo'
+find(['foo', 12], isNumber); // 12
+```
+
+See: [array/find](array.html#find), [object/find](object.html#find)
+
+
+
+## forEach(list, callback, [thisObj])
+
+Loop through all values of the collection.
+
+See: [array/forEach](array.html#forEach), [object/forOwn](object.html#forOwn)
+
+
+
+## map(list, callback, [thisObj]):Array
+
+Returns a new collection where the properties values are the result of calling
+the callback for each property in the original collection.
+
+See: [array/map](array.html#map), [object/map](object.html#map)
+
+
+
+## max(list, [iterator]):*
+
+Returns maximum value inside collection or use a custom iterator to define how
+items should be compared.
+
+See: [`min()`](#min), [array/max](array.html#max), [object/max](object.html#max)
+
+```js
+max({a: 100, b: 2, c: 1, d: 3, e: 200}); // 200
+max(['foo', 'lorem', 'amet'], function(val){
+    return val.length;
+}); // 'lorem'
+```
+
+
+
+## min(list, [iterator]):*
+
+Returns minimum value inside collection or use a custom iterator to define how
+items should be compared.
+
+See: [`max()`](#max), [array/min](array.html#min), [object/min](object.html#min)
+
+```js
+min([10, 2, 7]); // 2
+min({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
+    return val.length;
+}); // 'foo'
+```
+
+
+
+## pluck(list, propName):Array
+
+Extract a list of property values.
+
+```js
+var users = [
+    {
+        name : 'John',
+        age : 21
+    },
+    {
+        name : 'Jane',
+        age : 27
+    }
+];
+
+pluck(users, 'name'); // ["John", "Jane"]
+pluck(users, 'age'); // [21, 27]
+
+users = {
+    first: {
+        name : 'John',
+        age : 21
+    },
+    second: {
+        name : 'Mary',
+        age : 25
+    }
+};
+
+pluck(users, 'name'); // ['John', 'Mary']
+```
+
+See: [array/pluck](array.html#pluck), [object/pluck](object.html#pluck)
+
+
+
+## reduce(list, callback, initial, [thisObj]):*
+
+Apply a function against an accumulator and each value in the collection as to
+reduce it to a single value.
+
+```js
+var obj = {a: 1, b: 2, c: 3, d: 4};
+
+function sum(prev, cur, key, list) {
+    return prev + cur;
+}
+
+reduce(obj, sum); // 10
+```
+
+See: [array/reduce](array.html#reduce), [object/reduce](object.html#reduce)
+
+
+
+## reject(list, fn, [thisObj]):Array
+
+Creates a new array with all the elements that do **not** pass the truth test.
+Opposite of [`filter()`](#filter).
+
+### Example
+
+```js
+var numbers = [1, 2, 3, 4, 5];
+reject(numbers, function(x) { return (x % 2) !== 0; }); // [2, 4]
+
+var obj = {a: 1, b: 2, c: 3, d: 4, e: 5};
+reject(obj, function(x) { return (x % 2) !== 0; }); // [2, 4]
+```
+
+See: [array/reject](array.html#reject), [object/reject](object.html#reject)
+
+
+
+## size(list):Number
+
+Returns the number of values in the collection.
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+size(obj);     // 3
+size([1,2,3]); // 3
+size(null);    // 0
+```
+
+See: [object/size](object.html#size)
+
+
+
+## some(list, callback, [thisObj]):Boolean
+
+Tests whether any values in the collection pass the test implemented by the
+provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+some(obj, isNumber);      // true
+some(obj, isString);      // true
+some([1, 2, 3], isNumber) // true
+some([1, 2, 3], isString) // false
+```
+
+See: [array/some](array.html#some), [object/some](object.html#some)
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/date.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/date.md
new file mode 100644 (file)
index 0000000..e140399
--- /dev/null
@@ -0,0 +1,307 @@
+# date #
+
+Date utilities.
+
+
+## dayOfTheYear(date):Number
+
+How many days elapsed since begining of the year (following gregorian
+calendar).
+
+```js
+// Jan 1st
+dayOfTheYear(new Date(2013, 0, 1)); // 1
+// Dec 31th
+dayOfTheYear(new Date(2013, 11, 31)); // 364
+```
+
+
+
+## diff(date1, date2, [unitName]):Number
+
+Calculate the difference between dates (range).
+
+The returned value is always positive. The default `unitName` is `"ms"`.
+
+Available units: `year`, `month`, `week`, `day`, `hour`, `minute`, `second`,
+`millisecond`.
+
+See: [`time/convert()`](time.html#convert)
+
+```js
+var d1 = new Date(2012, 4, 5);
+var d2 = new Date(2013, 4, 8);
+diff(d1, d2);          // 31795200000
+diff(d1, d2, 'hour');  // 8832
+diff(d1, d2, 'week');  // 52.57142857142857
+diff(d1, d2, 'month'); // 12.096774193548388
+diff(d1, d2, 'year');  // 1.0082191780821919
+```
+
+
+
+## isLeapYear(fullYear|date):Boolean
+
+Checks if it's a [leap year](http://en.wikipedia.org/wiki/Leap_year) according
+to the Gregorian calendar.
+
+see: [`totalDaysInMonth()`](#totalDaysInMonth)
+
+```js
+isLeapYear(2012); // true
+isLeapYear(2013); // false
+isLeapYear(new Date(2012, 2, 28)); // true
+```
+
+
+## isSame(date1, date2[, period]):Boolean
+
+Check if both dates are the "same".
+
+You can pass an optional *period* used to set the comparisson precision.
+
+Available periods: `year`, `month`, `week`, `day`, `hour`, `minute`, `second`.
+
+```js
+var date1 = new Date(2013, 1, 3);
+var date2 = new Date(2013, 2, 9);
+isSame(date1, date2);          // false
+isSame(date1, date2, 'day');   // false
+isSame(date1, date2, 'month'); // false
+isSame(date1, date2, 'year');  // true
+```
+
+
+
+## parseIso(str):Number
+
+Parses an [ISO8601](http://en.wikipedia.org/wiki/Iso8601) date and returns the
+number of milliseconds since January 1, 1970, 00:00:00 UTC, or `NaN` if it is
+not a valid ISO8601 date.
+
+This parses *all* ISO8601 dates, including dates without times, [ordinal
+dates](https://en.wikipedia.org/wiki/ISO_8601#Ordinal_dates), and the compact
+representation (omitting delimeters). The only exception is [ISO week
+dates](https://en.wikipedia.org/wiki/ISO_week_date), which are not parsed.
+
+If no time zone offset is specified, it assumes UTC time.
+
+```js
+// Jan 01, 1970 00:00 GMT
+parseIso('1970-01-01T00:00:00')    // 0
+parseIso('1970-001')               // 0
+parseIso('1970-01-01')             // 0
+parseIso('19700101T000000.00')     // 0
+parseIso('1970-01-01T02:00+02:00') // 0
+
+// Jan 02, 2000 20:10 GMT+04:00
+parseIso('2000-01-02T20:10+04:00') // 946829400000
+```
+
+
+## quarter(date):Number
+
+Get a number between 1 to 4 that represents the quarter of the year.
+
+```js
+quarter(new Date(2013, 1, 19)); // 1
+quarter(new Date(2013, 4, 12)); // 2
+quarter(new Date(2013, 7, 25)); // 3
+quarter(new Date(2013, 10, 8)); // 4
+```
+
+
+## startOf(date, period):Date
+
+Get a new Date at the start of the period.
+
+Available periods: `year`, `month`, `week`, `day`, `hour`, `minute`, `second`.
+
+```js
+// Apr 05 2013 11:27:43
+var date = new Date(2013, 3, 5, 11, 27, 43, 123);
+startOf(date, 'year');  // Jan 01 2013 00:00:00
+startOf(date, 'month'); // Apr 01 2013 00:00:00
+startOf(date, 'day');   // Apr 05 2013 00:00:00
+startOf(date, 'hour');  // Apr 05 2013 11:00:00
+```
+
+
+
+## strftime(date, format, [l10n]):String
+
+Format date based on strftime format.
+
+Replaced tokens:
+
+<dl>
+<dt>%a</dt><dd> locale's abbreviated weekday name.</dd>
+<dt>%A</dt><dd> locale's full weekday name.</dd>
+<dt>%b</dt><dd> locale's abbreviated month name.</dd>
+<dt>%B</dt><dd> locale's full month name.</dd>
+<dt>%c</dt><dd> locale's appropriate date and time representation.</dd>
+<dt>%C</dt><dd> century number (the year divided by 100 and truncated
+to an integer) as a decimal number [00..99].</dd>
+<dt>%d</dt><dd> day of the month as a decimal number [01..31].</dd>
+<dt>%D</dt><dd>same as %m/%d/%y.</dd>
+<dt>%e</dt><dd> day of the month as a decimal number [1..31];
+a single digit is preceded by a space.</dd>
+<dt>%F</dt><dd>The ISO 8601 date format (%Y-%m-%d)</dd>
+<dt>%h</dt><dd>same as %b.</dd>
+<dt>%H</dt><dd> hour (24-hour clock) as a decimal number [00..23].</dd>
+<dt>%I</dt><dd> hour (12-hour clock) as a decimal number [01..12].</dd>
+<dt>%j</dt><dd> day of the year as a decimal number [001..366].</dd>
+<dt>%l</dt><dd> hour (12-hour clock) as a decimal number (range 1 to 12); single digits are preceded by a blank</dd>
+<dt>%L</dt><dd> zero-padded milliseconds [000..999]</dd>
+<dt>%m</dt><dd> month as a decimal number [01..12].</dd>
+<dt>%M</dt><dd> minute as a decimal number [00..59].</dd>
+<dt>%n</dt><dd> newline character.</dd>
+<dt>%p</dt><dd> locale's equivalent of either "am" or "pm"</dd>
+<dt>%P</dt><dd> locale's equivalent of either "AM" or "PM"</dd>
+<dt>%r</dt><dd> time in a.m. and
+p.m. notation; in the POSIX locale this is equivalent to %I:%M:%S %p.</dd>
+<dt>%R</dt><dd> time in 24 hour notation (%H:%M).</dd>
+<dt>%s</dt><dd> seconds since Epoch (1970-01-01 00:00:00 UTC)</dd>
+<dt>%S</dt><dd> second as a decimal number [00..60].</dd>
+<dt>%t</dt><dd> tab character.</dd>
+<dt>%T</dt><dd> time (%H:%M:%S).</dd>
+<dt>%u</dt><dd> weekday as a decimal number [1..7], with 1 representing
+Monday.</dd>
+<dt>%U</dt><dd> week number of the year (Sunday as the first day of
+the week) as a decimal number [00..53].</dd>
+<del><dt>%V</dt><dd> week number of the year (Monday as the first day of the
+week) as a decimal number [01..53].  If the week containing 1 January has
+four or more days in the new year, then it is considered week 1. Otherwise,
+it is the last week of the previous year, and the next week is week 1.</dd></del>
+<dt>%w</dt><dd> weekday as a decimal number [0..6], with 0 representing
+Sunday.</dd>
+<dt>%W</dt><dd> week number of the year (Monday as the first day of
+the week) as a decimal number [00..53].  All days in a new year preceding
+the first Monday are considered to be in week 0.</dd>
+<dt>%x</dt><dd> locale's appropriate date representation.</dd>
+<dt>%X</dt><dd> locale's appropriate time representation.</dd>
+<dt>%y</dt><dd> year without century as a decimal number [00..99].</dd>
+<dt>%Y</dt><dd> year with century as a decimal number.</dd>
+<dt>%Z</dt><dd> timezone name or abbreviation, or by no bytes
+if no timezone information exists.</dd>
+<dt>%%</dt><dd>is replaced by %.</dd>
+</dl>
+
+```js
+var date = new Date(2013, 3, 8, 9, 2, 4);
+strftime(date, '%Y-%m-%d'); // "2013-04-08"
+strftime(date, '%R'); // "09:02"
+strftime(date, '%Y-%m-%dT%H:%M:%S%z'); // "2013-04-08T09:02:04+0000"
+```
+
+You can also set a custom locale:
+
+```js
+var ptBr = require('mout/date/i18n/pt-BR');
+strftime(date, '%a, %d %b', ptBr); // 'Seg, 08 Abr'
+strftime(date, '%A, %d %B', ptBr); // 'Segunda, 08 Abril'
+```
+
+To set it globally:
+
+```js
+require('mout/date/i18n_').set( customLocaleData );
+```
+
+See [date/i18n](https://github.com/mout/mout/tree/master/src/date/i18n)
+for localization examples.
+
+
+
+## timezoneAbbr(date):String
+
+Return timezone abbreviation or similar data.
+
+The result will vary based on the OS/browser since some environments doesn't
+provide enough info about the current locale.
+
+```js
+// IE 7-8
+timezoneAbbr(new Date()); // "-0500"
+// Chrome, FF, V8
+timezoneAbbr(new Date()); // "EST"
+```
+
+
+
+## timezoneOffset(date):String
+
+Return time zone as hour and minute offset from UTC (e.g. +0900).
+
+It's important to note that JavaScript Date object will use the system locale
+info to determinate the [timezone
+offset](https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset)
+and that daylight saving time affects the result.
+
+```js
+// if system locale is EST
+timezoneOffset(new Date()); // -0500
+```
+
+
+
+## totalDaysInMonth(fullYear, monthIndex):Number
+
+Returns the amount of days in the month taking into consideration leap years
+(following Gregorian calendar).
+
+see: [`isLeapYear()`](#isLeapYear)
+
+```js
+totalDaysInMonth(2008, 1); // 29 (leap year)
+totalDaysInMonth(2009, 1); // 28
+
+// you can also pass a Date object as single argument
+totalDaysInMonth( new Date(2013, 0, 1) ); // 31
+```
+
+
+## totalDaysInYear(fullYear):Number
+
+Returns the amount of days in the year taking into consideration leap years
+(following Gregorian calendar).
+
+see: [`isLeapYear()`](#isLeapYear), [`totalDaysInMonth()`](#totalDaysInMonth)
+
+```js
+totalDaysInYear(2008); // 366 (leap year)
+totalDaysInYear(2009); // 365
+
+// you can also pass a Date object as single argument
+totalDaysInYear( new Date(2013, 0, 1) ); // 365
+```
+
+
+
+## weekOfTheYear(date, [firstDayOfWeek]):Number
+
+Returns how many weeks elapsed since start of the year (`0..53`).
+
+`firstDayOfWeek` can be `0` (Sunday) or `1` (Monday). By default weeks start at
+Sunday.
+
+It will return `0` if `date` is before the first `firstDayOfWeek` of the year.
+
+```js
+// Tue Jan 01 2013
+weekOfTheYear( new Date(2013,0,1) ); // 0
+// Wed Jan 09 2013
+weekOfTheYear( new Date(2013,0,9) ); // 1
+// Sun Jan 01 2012
+weekOfTheYear( new Date(2012,0,1) ); // 1
+// Mon Jan 09 2012
+weekOfTheYear( new Date(2012,0,9) ); // 2
+```
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/function.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/function.md
new file mode 100644 (file)
index 0000000..5c55242
--- /dev/null
@@ -0,0 +1,293 @@
+# function #
+
+Function*(al)* utilities.
+
+
+## awaitDelay(fn, delay):Function
+
+Returns a function that ensures that `fn` is only called *after* `delay`
+milliseconds have elapsed. When the returned function is called before the
+delay has elapsed, it will wait until the delay has elapsed and then call `fn`.
+When the returned function is called after the delay has elapsed, it will call
+`fn` after the next "tick" (it will always be called asynchronously). The
+context and arguments that the returned function is called in are applied to
+`fn`.
+
+In the below example `onLoaded` will not be executed before a 1000 millisecond
+delay. Even if `loadImages` loads and calls `callback` earlier.  However, say
+the images take 1500 milliseconds to load, it will trigger `onLoaded`
+immediately.
+
+```js
+var callback = awaitDelay(onLoaded, 1000);
+loadImages(callback);
+function onLoaded(){
+    console.log('loaded');
+}
+```
+
+You can also cancel de delayed call by simply using the native `clearTimeout`
+method (like a regular `setTimeout` call).
+
+```js
+var timeoutId = callback();
+// onLoaded won't be called since it was canceled before the 1000ms delay
+clearTimeout(timeoutId);
+```
+
+### Arguments:
+
+ 1. `fn` (Function)    : Target Function
+ 2. `delay` (Number)   : Delay of execution in milliseconds
+
+See: [`debounce()`](#debounce)
+
+
+
+## bind(fn, context, [...args]):Function
+
+Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
+
+### Arguments
+
+ 1. `fn` (Function)    : Target Function
+ 2. `context` (Object) : Execution context (object used as `this`)
+ 3. `[...args]` (*)    : Arguments (0...n arguments)
+
+See: [`partial()`](#partial), [object/bindAll](./object.html#bindAll)
+
+
+
+## compose(...fn):Function
+
+Returns the composition of a list of functions, where each function consumes
+the return value of the function that follows. In math terms, composing the
+functions `f()`, `g()`, and `h()` produces `f(g(h()))`.
+
+```js
+function add2(x) { return x + 2 }
+function multi2(x) { return x * 2 }
+map([1, 2, 3], compose(add2, multi2)); // [4, 6, 8]
+
+//same as
+map([1, 2, 3], function(x){
+    return add2( multi2(x) );
+});
+```
+
+
+
+## constant(value):Function
+
+Returns a new function that will always return `value` when called.
+
+```js
+var f = constant('foo');
+f(); // 'foo'
+
+// Provided arguments are ignored; value is always returned
+f(1); // 'foo'
+
+f = constant({ foo: 'bar' });
+f(); // { foo: 'bar' }
+```
+
+
+
+## debounce(fn, delay[, isAsap]):Function
+
+Creates a function that will delay the execution of `fn` until after `delay`
+milliseconds have elapsed since the last time it was invoked.
+
+Subsequent calls to the debounced function will return the result of the last
+`fn` call.
+
+```js
+// sometimes less is more
+var lazyRedraw = debounce(redraw, 300);
+foo.on.resize.add(lazyRedraw);
+```
+
+In this visualization, `|` is a debounced-function call and `X` is the actual
+callback execution:
+
+    Default
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+                             X                                 X
+
+    Debounced with `isAsap == true`:
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+    X                                 X
+
+You also have the option to cancel the debounced call if it didn't happen yet:
+
+```js
+lazyRedraw();
+// lazyRedraw won't be called since `cancel` was called before the `delay`
+lazyRedraw.cancel();
+```
+
+See: [`throttle()`](#throttle)
+
+
+## func(name):Function
+
+Returns a function that calls a method with given `name` on supplied object.
+Useful for iteration methods like `array/map` and `array/forEach`.
+
+See: [`prop()`](#prop)
+
+```js
+// will call the method `getName()` for each `user`
+var names = map(users, func('getName'));
+```
+
+
+
+## identity(val):*
+
+Returns the first argument provided to it.
+
+```js
+identity(3);     // 3
+identity(1,2,3); // 1
+identity('foo'); // "foo"
+```
+
+
+
+## partial(fn, [...args]):Function
+
+Return a partially applied function supplying default arguments.
+
+This method is similar to [`bind`](#bind), except it does not alter the this
+binding.
+
+### Arguments
+
+ 1. `fn` (Function)    : Target Function
+ 2. `[...args]` (*)    : Arguments (0...n arguments)
+
+See: [`bind()`](#bind)
+
+```js
+function add(a, b){ return a + b }
+var add10 = partial(add, 10);
+console.log( add10(2) ); // 12
+```
+
+
+
+## prop(name):Function
+
+Returns a function that gets a property with given `name` from supplied object.
+Useful for using in conjunction with `array/map` and/or for creating getters.
+
+See: [`array/pluck()`](array.html#pluck)
+
+```js
+var users = [{name:"John", age:21}, {name:"Jane", age:25}];
+// ["John", "Jane"]
+var names = map(users, prop('name'));
+```
+
+
+
+## series(...fn):Function
+
+Returns a function that will execute all the supplied functions in order and
+passing the same parameters to all of them. Useful for combining multiple
+`array/forEach` into a single one and/or for debugging.
+
+```js
+// call `console.log()` and `doStuff()` for each item item in the array
+forEach(arr, series(console.log, doStuff));
+```
+
+
+
+## throttle(fn, interval):Function
+
+Creates a function that, when executed, will only call the `fn` function at
+most once per every `interval` milliseconds.
+
+If the throttled function is invoked more than once during the wait timeout,
+`fn` will also be called on the trailing edge of the timeout.
+
+Subsequent calls to the throttled function will return the result of the last
+`fn` call.
+
+```js
+// sometimes less is more
+var lazyRedraw = throttle(redraw, 300);
+foo.on.resize.add(lazyRedraw);
+```
+
+In this visualization, `|` is a throttled-function call and `X` is the actual
+`fn` execution:
+
+    ||||||||||||||||||||||||| (pause) |||||||||||||||||||||||||
+    X    X    X    X    X    X        X    X    X    X    X    X
+
+You also have the option to cancel the throttled call if it didn't happen yet:
+
+```js
+lazyRedraw();
+setTimeout(function(){
+    lazyRedraw();
+    // lazyRedraw will be called only once since `cancel` was called before
+    // the `interval` for 2nd call completed
+    lazyRedraw.cancel();
+}, 250);
+```
+
+See: [`debounce()`](#debounce)
+
+
+## timeout(fn, millis, context, [...args]):Number
+
+Functions as a wrapper for `setTimeout`. Calls a the function `fn` after a given delay `millis` in milliseconds.
+The function is called within the specified context. The return value can be used to clear the timeout using `clearTimeout`.
+
+```js
+var id = timeout(doStuff, 300, this);
+
+clearTimeout(id);
+```
+
+## times(n, callback, [context]):void
+
+Iterates over a callback `n` times.
+
+### Arguments
+
+ 1. `n` (Number)           : Number of iterations
+ 2. `callback` (Function)  : Closure executed for every iteration
+ 3. `context` (Object)     : Execution context (object used as `this`)
+
+```js
+var output = '';
+times(5, function(i) {
+    output += i.toString();
+});
+// output: 01234
+```
+
+## wrap(fn, wrapper):Function
+
+Wraps the first `fn` inside of the `wrapper` function, passing it as the first argument. This allows the `wrapper` to execute code before and after the `fn` runs, adjust the arguments, and execute it conditionally.
+
+```js
+var hello = function(name) { return "hello: " + name; };
+hello = wrap(hello, function(func) {
+  return "before, " + func("moe") + ", after";
+});
+hello();
+// output: 'before, hello: moe, after'
+```
+
+See: [`partial()`](#partial)
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/lang.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/lang.md
new file mode 100644 (file)
index 0000000..9324968
--- /dev/null
@@ -0,0 +1,516 @@
+# lang #
+
+Language Utilities. Easier inheritance, scope handling, type checks.
+
+
+
+## clone(val):*
+
+Clone native types like Object, Array, RegExp, Date and primitives.
+
+This method will not clone values that are referenced within `val`. It will
+only copy the value reference to the new value. If the value is not a plain
+object but is an object, it will return the value unchanged.
+
+### Example
+
+```js
+var a = { foo: 'bar' };
+var b = clone(a);
+console.log(a === b); // false
+console.log(a.foo === b.foo); // true
+
+var c = [1, 2, 3];
+var d = clone(b);
+console.log(c === d); // false
+console.log(c); // [1, 2, 3]
+```
+
+See: [`deepClone()`](#deepClone)
+
+
+
+## createObject(parent, [props]):Object
+
+Create Object using prototypal inheritance and setting custom properties.
+
+Mix between [Douglas Crockford Prototypal Inheritance](http://javascript.crockford.com/prototypal.html) and [`object/mixIn`](./object.html#mixIn).
+
+### Arguments
+
+ 1. `parent` (Object)  : Parent Object
+ 2. `[props]` (Object) : Object properties
+
+### Example
+
+```js
+var base = {
+    trace : function(){
+        console.log(this.name);
+    }
+};
+
+var myObject = createObject(base, {
+    name : 'Lorem Ipsum'
+});
+
+myObject.trace(); // "Lorem Ipsum"
+```
+
+
+
+## ctorApply(constructor, args):Object
+
+Do `Function.prototype.apply()` on a constructor while maintaining prototype
+chain.
+
+```js
+function Person(name, surname) {
+    this.name = name;
+    this.surname = surname;
+}
+
+Person.prototype.walk = function(){
+    console.log(this.name +' is walking');
+};
+
+var args = ['John', 'Doe'];
+
+// "similar" effect as calling `new Person("John", "Doe")`
+var john = ctorApply(Person, args);
+john.walk(); // "John is walking"
+```
+
+
+
+## deepClone(val, [instanceClone]):*
+
+Deep clone native types like Object, Array, RegExp, Date and primitives.
+
+The `instanceClone` function will be invoked to clone objects that are not
+"plain" objects (as defined by [`isPlainObject`](#isPlainObject)) if it is
+provided. If `instanceClone` is not specified, it will not attempt to clone
+non-plain objects, and will copy the object reference.
+
+### Example
+
+```js
+var a = {foo:'bar', obj: {a:1, b:2}};
+var b = deepClone(a); // {foo:'bar', obj: {a:1, b:2}}
+console.log( a === b ); // false
+console.log( a.obj === b.obj ); // false
+
+var c = [1, 2, [3, 4]];
+var d = deepClone(c); // [1, 2, [3, 4]]
+var e = c.concat(); // [1, 2, [3, 4]]
+
+console.log( c[2] === d[2] ); // false
+// concat doesn't do a deep clone, arrays are passed by reference
+console.log( e[2] === d[2] ); // true
+
+function Custom() { }
+function cloneCustom(x) { return new Custom(); }
+var f = { test: new Custom() };
+var g = deepClone(f, cloneCustom);
+g.test === f.test // false, since new Custom instance will be created
+```
+
+See: [`clone()`](#clone)
+
+
+
+## deepEquals(a, b, [callback]):Boolean
+
+Recursively tests whether two values contains the same keys and values.
+
+`callback` specifies the equality comparison function used to compare
+non-object values. It defaults to using the [`is()`](#is) function.
+
+If the values are both an object or array, it will recurse into both values,
+checking if their keys/values are equal. It will only check the keys and values
+contained by the objects; it will not check the objects' prototypes.  If either
+of the values are not objects, they will be checked using the `callback`
+function.
+
+Example:
+
+```js
+deepEquals({ a: 1 }, { a: 1 }); // true
+deepEquals({ value: { a: 1 } }, { value: { a: 1 } }); // true
+deepEquals({ value: { a: 1 } }, { value: { a: 2 } }); // false
+deepEquals({ value: { a: 1 } }, { value: { a: 1, b: 2 } }); // false
+deepEquals({}, null); // false
+deepEquals(null, null); // true
+deepEquals(
+    { a: { b: 1 } },
+    { a: { b: '1' } },
+    function(a, b) { return a == b; }); // true
+```
+
+See: [object/equals](object.html#equals), [array/equals](array.html#equals)
+
+
+
+## defaults(val, ...defaults):void
+
+Return first value that isn't `null` or `undefined`.
+
+    function doSomethingAwesome(foo, bar) {
+        // default arguments
+        foo = defaults(foo, 'lorem');
+        bar = defaults(bar, 123);
+        // ...
+    }
+
+
+
+## GLOBAL:Object
+
+Reference to the global context (`window` inside a browser, `global` on
+node.js). Works on ES3 and ES5 strict-mode.
+
+
+
+## inheritPrototype(childCtor, parentCtor):Object
+
+Inherit the prototype methods from one constructor into another.
+
+Similar to [node.js util/inherits](http://nodejs.org/docs/latest/api/util.html#util_util_inherits_constructor_superconstructor).
+
+It returns the the `childCtor.prototype` for convenience.
+
+```js
+function Foo(name){
+    this.name = name;
+}
+Foo.prototype = {
+    getName : function(){
+        return this.name;
+    }
+};
+
+function Bar(name){
+    Foo.call(this, name);
+}
+//should be called before calling constructor
+var proto = inheritPrototype(Bar, Foo);
+
+// for convenience we return the new prototype object
+console.log(proto === Bar.prototype); // true
+
+var myObj = new Bar('lorem ipsum');
+myObj.getName(); // "lorem ipsum"
+
+console.log(myObj instanceof Foo); // true
+
+// you also have access to the "super" constructor
+console.log(Bar.super_ === Foo); // true
+```
+
+
+## is(x, y):Boolean
+
+Check if both values are identical/egal.
+
+```js
+// wtfjs
+NaN === NaN; // false
+-0 === +0;   // true
+
+is(NaN, NaN); // true
+is(-0, +0);   // false
+is('a', 'b'); // false
+```
+
+See: [`isnt()`](#isnt)
+
+
+
+## isnt(x, y):Boolean
+
+Check if both values are not identical/egal.
+
+```js
+// wtfjs
+NaN === NaN; // false
+-0 === +0;   // true
+
+isnt(NaN, NaN); // false
+isnt(-0, +0);   // true
+isnt('a', 'b'); // true
+```
+
+See: [`is()`](#is)
+
+
+
+
+## isArguments(val):Boolean
+
+If value is an "Arguments" object.
+
+
+
+## isArray(val):Boolean
+
+If value is an Array. Uses native ES5 `Array.isArray()` if available.
+
+
+
+## isBoolean(val):Boolean
+
+If value is a Boolean.
+
+
+
+## isDate(val):Boolean
+
+If value is a Date.
+
+
+
+## isEmpty(val):Boolean
+
+Checks if Array/Object/String is empty.
+
+Will return `true` for any object that doesn't contain enumerable properties
+and also to any type of value that isn't considered a collection (boolean,
+null, undefined, function, etc).
+
+```js
+isEmpty('');         // true
+isEmpty('bar');      // false
+isEmpty([]);         // true
+isEmpty([1, 2]);     // false
+isEmpty({});         // true
+isEmpty({a:1, b:2}); // false
+// null, undefined, booleans, numbers are considered as "empty" values
+isEmpty(null);       // true
+isEmpty(undefined);  // true
+isEmpty(123);        // true
+isEmpty(true);       // true
+```
+
+
+## isFinite(val):Boolean
+
+Checks if value is Finite.
+
+**IMPORTANT:** This is not the same as native `isFinite`, which will return
+`true` for values that can be coerced into finite numbers. See
+http://es5.github.com/#x15.1.2.5.
+
+```js
+isFinite(123);      // true
+isFinite(Infinity); // false
+
+// this is different than native behavior
+isFinite('');   // false
+isFinite(true); // false
+isFinite([]);   // false
+isFinite(null); // false
+```
+
+
+## isFunction(val):Boolean
+
+If value is a Function.
+
+
+
+## isKind(val, kind):Boolean
+
+If value is of "kind". (used internally by some of the *isSomething* checks).
+
+Favor the other methods since strings are commonly mistyped and also because
+some "kinds" can only be accurately checked by using other methods (e.g.
+`Arguments`), some of the other checks are also faster.
+
+```js
+isKind([1,2], 'Array'); // true
+isKind(3, 'Array');     // false
+isKind(3, 'Number');    // true
+```
+
+See: [`kindOf()`](#kindOf)
+
+
+
+## isInteger(val):Boolean
+
+Check if value is an integer.
+
+```js
+isInteger(123);    // true
+isInteger(123.45); // false
+isInteger({});     // false
+isInteger('foo');  // false
+isInteger('123');  // false
+```
+
+
+
+## isNaN(val):Boolean
+
+Check if value is not a number.
+
+It doesn't coerce value into number before doing the check, giving better
+results than native `isNaN`. Returns `true` for everything besides numeric
+values.
+
+**IMPORTANT:** behavior is very different than the native `isNaN` and way more
+useful!!! See: http://es5.github.io/#x15.1.2.4
+
+```js
+isNaN(123);       // false
+
+isNaN(NaN);       // true
+isNaN({});        // true
+isNaN(undefined); // true
+isNaN([4,5]);     // true
+
+// these are all "false" on native isNaN and main reason why this module exists
+isNaN('');    // true
+isNaN(null);  // true
+isNaN(true);  // true
+isNaN(false); // true
+isNaN("123"); // true
+isNaN([]);    // true
+isNaN([5]);   // true
+```
+
+
+
+## isNull(val):Boolean
+
+If value is `null`.
+
+
+
+## isNumber(val):Boolean
+
+If value is a Number.
+
+
+
+## isObject(val):Boolean
+
+If value is an Object.
+
+
+
+## isPlainObject(val):Boolean
+
+If the value is an Object created by the Object constructor.
+
+
+
+## isRegExp(val):Boolean
+
+If value is a RegExp.
+
+
+
+## isString(val):Boolean
+
+If value is a String.
+
+
+
+## isUndefined(val):Boolean
+
+If value is `undefined`.
+
+
+
+## kindOf(val):String
+
+Gets kind of value (e.g. "String", "Number", "RegExp", "Null", "Date").
+Used internally by `isKind()` and most of the other *isSomething* checks.
+
+```js
+kindOf([1,2]); // "Array"
+kindOf('foo'); // "String"
+kindOf(3);     // "Number"
+```
+
+See: [`isKind()`](#isKind)
+
+
+## toArray(val):Array
+
+Convert array-like object into Array or wrap value into Array.
+
+```js
+toArray({
+    "0" : "foo",
+    "1" : "bar",
+    "length" : 2
+});                              // ["foo", "bar"]
+
+function foo(){
+    return toArray(arguments);
+}
+foo("lorem", 123);               // ["lorem", 123]
+
+toArray("lorem ipsum");          // ["lorem ipsum"]
+toArray(window);                 // [window]
+toArray({foo:"bar", lorem:123}); // [{foo:"bar", lorem:123}]
+```
+
+See: object/values()
+
+
+
+## toNumber(val):Number
+
+Convert value into number.
+
+```js
+// numeric values are typecasted as Number
+toNumber('123');     // 123
+toNumber(-567);      // -567
+
+// falsy values returns zero
+toNumber('');        // 0
+toNumber(null);      // 0
+toNumber(undefined); // 0
+toNumber(false);     // 0
+
+// non-numeric values returns NaN
+toNumber('asd');     // NaN
+toNumber({});        // NaN
+toNumber([]);        // NaN
+
+// Date objects return milliseconds since epoch
+toNumber(new Date(1985, 6, 23)); // 490935600000
+```
+
+
+
+## toString(val):String
+
+Convert any value to its string representation.
+
+Will return an empty string for `undefined` or `null`, otherwise will convert
+the value to its string representation.
+
+```js
+// null and undefined are converted into empty strings
+toString(null);      // ""
+toString(undefined); // ""
+
+toString(1);       // "1"
+toString([1,2,3]); // "1,2,3"
+toString(false);   // "false"
+
+// uses `val.toString()` to convert value
+toString({toString:funtion(){ return 'foo'; }}); // "foo"
+```
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/number.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/number.md
new file mode 100644 (file)
index 0000000..78e9c07
--- /dev/null
@@ -0,0 +1,279 @@
+# number #
+
+Number utilities.
+
+
+## abbreviate(val[, nDecimalDigits, dictionary]):String
+
+Abbreviate number to thousands (K), millions (M) or billions (B).
+
+The default value for `nDecimalDigits` is `1`.
+
+### Example
+
+    abbreviate(123456);     // "123.5K"
+    abbreviate(12345678);   // "12.3M"
+    abbreviate(1234567890); // "1.2B"
+
+You can set the amount of decimal digits (default is `1`):
+
+    abbreviate(543);    // "0.5K"
+    abbreviate(543, 1); // "0.5K"
+    abbreviate(543, 2); // "0.54K"
+    abbreviate(543, 3); // "0.543K"
+
+You can customize the abbreviation by passing a custom "dictionary":
+
+    var _ptbrDict = {
+        thousand: ' mil',
+        million: ' Mi',
+        billion: ' Bi'
+    };
+    function customAbbr(val) {
+        return abbreviate(val, 1, _ptbrDict);
+    }
+
+    customAbbr(123456); // "123.5 mil"
+    customAbbr(12345678); // "12.3 Mi"
+    customAbbr(1234567890); // "1.2 Bi"
+
+
+
+## currencyFormat(val[, nDecimalDigits, decimalSeparator, thousandsSeparator]):String
+
+Format a number as currency.
+
+### Example:
+
+    currencyFormat(1000);              // "1,000.00"
+    currencyFormat(1000, 1);           // "1,000.0"
+    currencyFormat(1000, 2, ',', '.'); // "1.000,00"
+
+
+
+## enforcePrecision(val, nDecimalDigits):Number
+
+Enforce a specific amount of decimal digits and also fix floating point
+rounding issues.
+
+### Example:
+
+```js
+enforcePrecision(0.615, 2); // 0.62
+enforcePrecision(0.625, 2); // 0.63
+//floating point rounding "error" (rounds to odd number)
++(0.615).toFixed(2);        // 0.61
++(0.625).toFixed(2);        // 0.63
+```
+
+
+## isNaN(val):Boolean
+
+ES6 `Number.isNaN()`, checks if supplied value is `NaN`.
+
+```js
+// only returns `true` for `NaN`
+isNaN(NaN);    // true
+isNaN(0 / 0);  // true
+
+// everything else is `false`
+isNaN(true);   // false
+isNaN(123);    // false
+isNaN('asd');  // false
+isNaN('NaN');  // false
+```
+
+
+## MAX_INT:Number
+
+Maximum 32-bit signed integer value. `Math.pow(2, 31) - 1`
+
+### Example:
+
+```js
+console.log( MAX_INT ); // 2147483647
+```
+
+
+## MAX_SAFE_INTEGER:Number
+
+Maximum safe integer. `Math.pow(2,53) − 1`
+
+
+## MAX_UINT:Number
+
+Maximum 32-bit unsigned integer value. `Math.pow(2, 32) - 1`
+
+### Example:
+
+```js
+console.log( MAX_UINT ); // 4294967295
+```
+
+
+## MIN_INT:Number
+
+Minimum 32-bit signed integer value. `Math.pow(2, 31) * -1`.
+
+### Example:
+
+```js
+console.log( MIN_INT ); // -2147483648
+```
+
+
+## nth(n):String
+
+Returns the "nth" of number. (`"st"`, `"nd"`, `"rd"`, `"th"`)
+
+```js
+nth(1); // "st"
+nth(2); // "nd"
+nth(12); // "th"
+nth(22); // "nd"
+nth(23); // "rd"
+nth(34); // "th"
+```
+
+See: [`ordinal()`](#ordinal)
+
+
+
+## ordinal(n):String
+
+Converts number into ordinal form (1st, 2nd, 3rd, 4th, ...)
+
+```js
+ordinal(1); // "1st"
+ordinal(2); // "2nd"
+ordinal(3); // "3rd"
+ordinal(14); // "14th"
+ordinal(21); // "21st"
+```
+
+See: [`nth()`](#nth)
+
+
+
+## pad(n, minLength[, char]):String
+
+Add padding zeros if `n.length` < `minLength`.
+
+### Example:
+
+```js
+pad(1, 5);      // "00001"
+pad(12, 5);     // "00012"
+pad(123, 5);    // "00123"
+pad(1234, 5);   // "01234"
+pad(12345, 5);  // "12345"
+pad(123456, 5); // "123456"
+
+// you can also specify the "char" used for padding
+pad(12, 5, '_'); // "___12"
+```
+
+see: [string/lpad](./string.html#lpad)
+
+
+
+## rol(val, shift):Number
+
+Bitwise circular shift left.
+
+More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
+
+
+
+## ror(val, shift):Number
+
+Bitwise circular shift right.
+
+More info at [Wikipedia#Circular_shift](http://en.wikipedia.org/wiki/Circular_shift)
+
+
+
+## sign(val):Number
+
+Returns `-1` if value is negative, `0` if the value is `0` and `1` if value is positive. Useful for
+multiplications.
+
+```js
+sign(-123); // -1
+sign(123);  // 1
+sign(0);    // 0
+```
+
+
+
+## toInt(val):Number
+
+"Convert" value into an 32-bit integer.  Works like `Math.floor` if `val > 0` and
+`Math.ceil` if `val < 0`.
+
+**IMPORTANT:** val will wrap at [number/MIN_INT](#MIN_INT) and
+[number/MAX_INT](#MAX_INT).
+
+Created because most people don't know bitwise operations and also because this
+feature is commonly needed.
+
+[Perf tests](http://jsperf.com/vs-vs-parseint-bitwise-operators/7)
+
+### Example:
+
+```js
+toInt(1.25);   // 1
+toInt(0.75);   // 0
+toInt(-0.55);  // 0
+toInt(-5.0001) // -5
+```
+
+
+
+## toUInt(val):Number
+
+"Convert" value into an 32-bit unsigned integer.
+
+Works like AS3#uint().
+
+**IMPORTANT:** val will wrap at 2^32.
+
+### Example:
+
+```js
+toUInt(1.25);                 // 1
+toUInt(0.75);                 // 0
+toUInt(-0.55);                // 0
+toUInt(-5.0001);              // 4294967291
+toUInt(Math.pow(2,32) - 0.5); // 4294967295
+toUInt(Math.pow(2,32) + 0.5); // 0
+```
+
+
+## toUInt31(val):Number
+
+"Convert" value into an 31-bit unsigned integer (since 1 bit is used for sign).
+
+Useful since all bitwise operators besides `>>>` treat numbers as signed
+integers.
+
+**IMPORTANT:** val will wrap at 2^31 and negative numbers will be treated as
+`zero`.
+
+### Example:
+
+```js
+toUInt31(1.25);                 // 1
+toUInt31(0.75);                 // 0
+toUInt31(-0.55);                // 0
+toUInt31(-5.0001);              // 0
+toUInt31(Math.pow(2,31) - 0.5); // 21474836470
+toUInt31(Math.pow(2,31) + 0.5); // 0
+```
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/object.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/object.md
new file mode 100644 (file)
index 0000000..02bf4e6
--- /dev/null
@@ -0,0 +1,811 @@
+# object #
+
+Object utilities.
+
+
+
+## bindAll(obj, [...methodNames]):void
+
+Bind methods of the target object to always execute on its own context
+(ovewritting the original function).
+
+See: [function/bind](./function.html#bind)
+
+```js
+var view = {
+    name: 'Lorem Ipsum',
+    logNameOnClick: function() {
+        console.log(this.name);
+    }
+};
+
+// binds all methods by default
+bindAll(view);
+jQuery('#docs').on('click', view.logNameOnClick);
+```
+
+You can also specify the list of methods that you want to bind (in case you
+just want to bind a few of them).
+
+```js
+// only the listed methods will be bound to `obj` context
+bindAll(obj, 'logNameOnClick', 'doAwesomeStuffOnDrag');
+```
+
+
+
+## contains(obj, value):Boolean
+
+Similar to [Array/contains](array.html#contains). Checks if Object contains
+value.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 'bar'
+};
+contains(obj, 2);      // true
+contains(obj, 'foo');  // false
+```
+
+
+
+## deepFillIn(target, ...objects):Object
+
+Fill missing properties recursively.
+
+It's different from `deepMixIn` since it won't override any existing property.
+It's also different from `merge` since it won't clone child objects during the
+process.
+
+It returns the target object and mutates it in place.
+
+See: [`fillIn()`](#fillIn), [`deepMixIn()`](#deepMixIn), [`merge()`](#merge)
+
+```js
+var base = {
+    foo : {
+        bar : 123
+    },
+    lorem : 'ipsum'
+};
+var options = deepFillIn({foo : { baz : 45 }, lorem : 'amet'}, base);
+// > {foo: {bar:123, baz : 45}, lorem : 'amet'}
+```
+
+
+
+## deepMatches(target, pattern):Boolean
+
+Recursively checks if object contains all properties/value pairs. When both
+the target and pattern values are arrays, it checks that the target value
+contain matches for all the items in the pattern array (independent of order).
+
+```js
+var john = {
+    name: 'John',
+    age: 22,
+    pets: [
+        { type: 'cat', name: 'Grumpy Cat' },
+        { type: 'dog', name: 'Hawk' }
+    ]
+};
+
+deepMatches(john, { name: 'John' }); // true
+deepMatches(john, { age: 21 }); // false
+deepMatches(john, { pets: [ { type: 'cat' } ] }); // true
+deepMatches(john, { pets: [ { name: 'Hawk' } ] }); // true
+deepMatches(john, { pets: [ { name: 'Hairball' } ] }); // false
+```
+
+See [`matches()`](#matches)
+
+
+
+## deepMixIn(target, ...objects):Object
+
+Mixes objects into the target object, recursively mixing existing child objects
+as well.
+
+It will only recursively mix objects if both (existing and new) values are
+plain objects.
+
+Returns the target object. Like [`merge()`](#merge), but mutates the target
+object, and does not clone child objects.
+
+```js
+var target = {
+    foo: {
+        name: "foo",
+        id: 1
+    }
+};
+
+deepMixIn(target, { foo: { id: 2 } });
+console.log(target); // { foo: { name: "foo", id: 2 } }
+```
+
+See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
+
+
+
+## equals(a, b, [callback]):Boolean
+
+Tests whether two objects contain the same keys and values.
+
+`callback` specifies the equality comparison function used to compare the
+values. It defaults to using [lang/is](lang.html#is).
+
+It will only check the keys and values contained by the objects; it will not
+check the objects' prototypes. If either of the values are not objects, they
+will be compared using the `callback` function.
+
+```js
+equals({}, {}); // true
+equals({ a: 1 }, { a: 1 }); // true
+equals({ a: 1 }, { a: 2 }); // false
+equals({ a: 1, b: 2 }, { a: 1 }); // false
+equals({ a: 1 }, { a: 1, b: 2 }); // false
+equals(null, null); // true
+equals(null, {}); // false
+equals({ a: 1 }, { a: '1' }, function(a, b) { return a == b; }); // true
+```
+
+See: [array/equals](array.html#equals), [lang/deepEquals](lang.html#deepEquals)
+
+
+## every(obj, callback, [thisObj]):Boolean
+
+Similar to [Array/every](array.html#every). Tests whether all properties in the
+object pass the test implemented by the provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+every(obj, isNumber); // false
+```
+
+
+
+## fillIn(obj, ...default):Object
+
+Fill in missing properties in object with values from the *defaults* objects.
+
+    var base = {
+        foo : 'bar',
+        num : 123
+    };
+
+    fillIn({foo:'ipsum'}, base); // {foo:'ipsum', num:123}
+
+PS: it allows merging multiple objects at once, the first ones will take
+precedence.
+
+See: [`mixIn()`](#mixIn), [`merge()`](#merge), [`deepFillIn()`](#deepFillIn)
+
+
+
+## filter(obj, callback, [thisObj])
+
+Returns a new object containing all properties where `callback` returns true,
+similar to Array/filter. It does not use properties from the object's
+prototype.
+
+Callback receives the same arguments as `forOwn()`.
+
+See: [`forOwn()`](#forOwn), [`forIn()`](#forIn), [`pick()`](#pick)
+
+```js
+var obj = {
+    foo: 'value',
+    bar: 'bar value'
+};
+
+// returns { bar: 'bar value' }
+filter(obj, function(v) { return v.length > 5; });
+
+// returns { foo: 'value' }
+filter(obj, function(v, k) { return k === 'foo'; });
+```
+
+
+
+## find(obj, callback, [thisObj])
+
+Loops through all the properties in the Object and returns the first one that
+passes a truth test (callback), similar to [Array/find](array.html#find).
+Unlike Array/find, order of iteration is not guaranteed.
+
+```js
+var obj = {
+    a: 'foo',
+    b: 12
+};
+
+find(obj, isString); // 'foo'
+find(obj, isNumber); // 12
+```
+
+
+
+## flatten(object, [level]):Object
+
+Recursively flattens an object. A new object containing all the values is
+returned. If `level` is specified, it will only flatten up to that level.
+Note that objects within arrays will not be flattened.
+
+### Example
+
+```js
+flatten({ a: 1, b: { c: 2, d: { e: 3 } } });
+// > { a: 1, 'b.c': 2, 'b.d.e': 3 }
+flatten({ a: 1, b: { c: 2, d: { e: 3 } } }, 1);
+// > { a: 1, 'b.c': 2, 'b.d': { e: 3 } }
+```
+
+See: [`array/flatten()`](./array.html#flatten)
+
+
+## forIn(obj, callback[, thisObj])
+
+Iterate over all properties of an Object, similar to
+[Array/forEach](array.html#forEach).
+
+It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
+It **will** iterate over inherited (enumerable) properties from the prototype.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys), [`values()`](#values)
+
+### Callback arguments
+
+Callback will receive the following arguments:
+
+ 1. Property Value (*)
+ 2. Key name (String)
+ 3. Target object (Object)
+
+### Example
+
+```js
+function Foo(){
+    this.foo = 1;
+    this.bar = 2;
+}
+
+Foo.prototype.lorem = 4;
+
+var obj = new Foo();
+
+var result = 0;
+var keys = [];
+
+forIn(obj, function(val, key, o){
+    result += val;
+    keys.push(key);
+});
+
+console.log(result); // 7
+console.log(keys);   // ['foo', 'bar', 'lorem']
+```
+
+
+
+## forOwn(obj, callback[, thisObj])
+
+Iterate over all own properties from an Object, similar to
+[Array/forEach](array.html#forEach).
+
+It [avoids don't enum bug on IE](https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug).
+Notice that it **won't** iterate over properties from the prototype.
+
+It allows exiting the iteration early by returning `false` on the callback.
+
+See: [`forIn()`](#forIn), [`keys()`](#keys), [`values()`](#values)
+
+### Callback arguments
+
+Callback will receive the following arguments:
+
+ 1. Property Value (*)
+ 2. Key name (String)
+ 3. Target object (Object)
+
+### Example
+
+```js
+function Foo(){
+    this.foo = 1;
+    this.bar = 2;
+}
+
+// will be ignored
+Foo.prototype.lorem = 4;
+
+var obj = new Foo();
+
+var result = 0;
+var keys = [];
+
+forOwn(obj, function(val, key, o){
+    result += val;
+    keys.push(key);
+});
+
+console.log(result); // 3
+console.log(keys);   // ['foo', 'bar']
+```
+
+
+
+## functions(obj):Array
+
+Returns a sorted list of all enumerable properties that have function values
+(including inherited properties).
+
+```js
+var obj = {
+    foo : function(){},
+    bar : 'baz'
+};
+functions(obj); // ['foo']
+```
+
+
+
+## get(obj, propName):*
+
+Returns nested property value. Will return `undefined` if property doesn't
+exist.
+
+See: [`set()`](#set), [`namespace()`](#namespace), [`has()`](#has)
+
+```js
+var lorem = {
+        ipsum : {
+            dolor : {
+                sit : 'amet'
+            }
+        }
+    };
+
+get(lorem, 'ipsum.dolor.sit'); // "amet"
+get(lorem, 'foo.bar');         // undefined
+```
+
+
+
+## has(obj, propName):Boolean
+
+Checks if object contains a child property. Useful for cases where you need to
+check if an object contain a *nested* property. It will get properties
+inherited by the prototype.
+
+see: [`hasOwn()`](#hasOwn), [`get()`](#get)
+
+```js
+var a = {
+        b : {
+            c : 123
+        }
+    };
+
+has(a, 'b.c');   // true
+has(a, 'foo.c'); // false
+```
+
+### Common use case
+
+```js
+if( has(a, 'foo.c') ){ // false
+    // ...
+}
+
+if( a.foo.c ){ // ReferenceError: `foo` is not defined
+    // ...
+}
+```
+
+
+
+## hasOwn(obj, propName):Boolean
+
+Safer `Object.hasOwnProperty`. Returns a boolean indicating whether the object
+has the specified property.
+
+see: [`has()`](#has)
+
+```js
+var obj = {
+    foo: 1,
+    hasOwnProperty : 'bar'
+};
+
+obj.hasOwnProperty('foo'); // ERROR! hasOwnProperty is not a function
+
+hasOwn(obj, 'foo');            // true
+hasOwn(obj, 'hasOwnProperty'); // true
+hasOwn(obj, 'toString');       // false
+```
+
+
+
+## keys(obj):Array
+
+Returns an array of all own enumerable properties found upon a given object.
+It will use the native `Object.keys` if present.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`values()`](#values)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+keys(obj); // ['foo', 'bar', 'lorem']
+```
+
+
+
+## map(obj, callback, [thisObj]):Object
+
+Returns a new object where the property values are the result of calling the
+callback for each property in the original object, similar to Array/map.
+
+The callback function receives the same arguments as in `forOwn()`.
+
+See: [`forOwn()`](#forOwn)
+
+```js
+var obj = { foo: 1, bar: 2 },
+    data = { foo: 0, bar: 1 };
+
+map(obj, function(v) { return v + 1; }); // { foo: 2, bar: 3 }
+map(obj, function(v, k) { return k; }); // { foo: "foo", bar: "bar" }
+map(obj, function(v, k) { return this[k]; }, data); // { foo: 0, bar: 1 }
+```
+
+
+
+## matches(obj, props):Boolean
+
+Checks if object contains all properties/values pairs. Useful for validation
+and filtering.
+
+```js
+var john = {age:25, hair:'long', beard:true};
+var mark = {age:27, hair:'short', beard:false};
+var hippie = {hair:'long', beard:true};
+matches(john, hippie); // true
+matches(mark, hippie); // false
+```
+
+See [`deepMatches()`](#deepMatches)
+
+
+
+## merge(...objects):Object
+
+Deep merges objects. Note that objects and properties will be cloned during the
+process to avoid undesired side effects. It return a new object and won't
+affect source objects.
+
+```js
+var obj1 = {a: {b: 1, c: 1, d: {e: 1, f: 1}}};
+var obj2 = {a: {b: 2, d : {f : 'yeah'} }};
+
+merge(obj1, obj2); // {a: {b : 2, c : 1, d : {e : 1, f : 'yeah'}}}
+```
+
+See: [`deepMixIn()`](#deepMixIn), [`deepFillIn()`](#deepFillIn)
+
+
+
+## max(obj[, iterator]):*
+
+Returns maximum value inside object or use a custom iterator to define how
+items should be compared. Similar to [Array/max](array.html#max).
+
+See: [`min()`](#min)
+
+```js
+max({a: 100, b: 2, c: 1, d: 3, e: 200}); // 200
+max({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
+    return val.length;
+}); // 'lorem'
+```
+
+
+
+## min(obj[, iterator]):*
+
+Returns minimum value inside object or use a custom iterator to define how
+items should be compared. Similar to [Array/min](array.html#min).
+
+See: [`max()`](#max)
+
+```js
+min({a: 100, b: 2, c: 1, d: 3, e: 200}); // 1
+min({a: 'foo', b: 'lorem', c: 'amet'}, function(val){
+    return val.length;
+}); // 'foo'
+```
+
+
+
+## mixIn(target, ...objects):Object
+
+Combine properties from all the objects into first one.
+
+This method affects target object in place, if you want to create a new Object
+pass an empty object as first parameter.
+
+### Arguments
+
+ 1. `target` (Object)        : Target Object.
+ 2. `...objects` (...Object) : Objects to be combined (0...n objects).
+
+### Example
+
+```js
+var a = {foo: "bar"};
+var b = {lorem: 123};
+
+mixIn({}, a, b); // {foo: "bar", lorem: 123}
+console.log(a);  // {foo: "bar"}
+
+mixIn(a, b);     // {foo: "bar", lorem: 123}
+console.log(a);  // {foo: "bar", lorem: 123}
+```
+
+See: [`fillIn()`](#fillIn), [`merge()`](#merge)
+
+
+
+
+## namespace(obj, propName):Object
+
+Creates an empty object inside namespace if not existent. Will return created
+object or existing object.
+
+See: [`get()`](#get), [`set()`](#set)
+
+```js
+var obj = {};
+namespace(obj, 'foo.bar'); // {}
+console.log(obj);          // {foo:{bar:{}}}
+```
+
+
+## omit(obj, ...keys):Object
+
+Return a copy of the object without the blacklisted keys.
+
+See: [`filter()`](#filter)
+
+```js
+var user = {
+    firstName : 'John',
+    lastName : 'Doe',
+    dob : '1985/07/23',
+    gender : 'male'
+};
+
+// can pass an array of keys as second argument
+var keys = ['firstName', 'dob']
+omit(user, keys); // {lastName : 'Doe', gender : 'male'}
+
+// or multiple arguments
+omit(user, 'firstName', 'lastName'); // {dob : '1985/07/23', gender : 'male'}
+```
+
+
+
+## pick(obj, ...keys):Object
+
+Return a copy of the object that contains only the whitelisted keys.
+
+See: [`filter()`](#filter)
+
+```js
+var user = {
+    firstName : 'John',
+    lastName : 'Doe',
+    dob : '1985/07/23',
+    gender : 'male'
+};
+
+// can pass an array of keys as second argument
+var keys = ['firstName', 'dob']
+pick(user, keys); // {firstName:"John", dob: "1985/07/23"}
+
+// or multiple arguments
+pick(user, 'firstName', 'lastName'); // {firstName:"John", lastName: "Doe"}
+```
+
+
+
+## pluck(obj, propName):Object
+
+Extract an object containing property values with keys as they appear in the
+passed object.
+
+```js
+var users = {
+    first: {
+        name : 'John',
+        age : 21
+    },
+    second: {
+        name : 'Mary',
+        age : 25
+    }
+};
+
+pluck(users, 'name'); // {first: 'John', second: 'Mary'} );
+pluck(users, 'age');  // {first: 21, second: 25} );
+```
+
+
+
+## reduce(obj, callback, initial, [thisObj]):*
+
+Similar to [Array/reduce](array.html#reduce).
+
+Apply a function against an accumulator and each property of the object (order
+is undefined) as to reduce it to a single value.
+
+```js
+var obj = {a: 1, b: 2, c: 3, d: 4};
+
+function sum(prev, cur, key, list) {
+    compare1.push(prev);
+    return prev + cur;
+}
+
+reduce(obj, sum); // 10
+```
+
+
+
+## reject(obj, callback, thisObj):Object
+
+Returns a new object containing all properties where `callback` returns true,
+similar to [Array/reject](array.html#reject). It does not use properties from
+the object's prototype. Opposite of [`filter()`](#filter).
+
+See [`filter()`](#filter)
+
+### Example
+
+```js
+var obj = {a: 1, b: 2, c: 3, d: 4, e: 5};
+reject(obj, function(x) { return (x % 2) !== 0; }); // {b: 2, d: 4}
+```
+
+
+
+## values(obj):Array
+
+Returns an array of all own enumerable properties values found upon a given object.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+values(obj); // [1, 2, 3]
+```
+
+
+
+## set(obj, propName, value)
+
+Sets a nested property value.
+
+See: [`get()`](#get), [`namespace()`](#namespace)
+
+```js
+var obj = {};
+set(obj, 'foo.bar', 123);
+console.log(obj.foo.bar); // 123
+console.log(obj);         // {foo:{bar:123}}
+```
+
+
+
+## size(obj):Number
+
+Returns the count of own enumerable properties found upon a given object.
+
+PS: it won't return properties from the prototype.
+
+See: [`forOwn()`](#forOwn), [`keys()`](#keys)
+
+```js
+var obj = {
+    foo : 1,
+    bar : 2,
+    lorem : 3
+};
+size(obj); // 3
+```
+
+
+
+## some(obj, callback, [thisObj]):Boolean
+
+Similar to [Array/some](array.html#some). Tests whether any properties in the
+object pass the test implemented by the provided callback.
+
+```js
+var obj = {
+    a: 1,
+    b: 2,
+    c: 3,
+    d: 'string'
+};
+
+some(obj, isNumber); // true
+```
+
+
+
+## unset(obj, propName):Boolean
+
+Delete object property if existent and returns a boolean indicating succes. It
+will also return `true` if property doesn't exist.
+
+Some properties can't be deleted, to understand why [check this
+article](http://perfectionkills.com/understanding-delete/).
+
+See: [`set()`](#set)
+
+```js
+var lorem = {
+        ipsum : {
+            dolor : {
+                sit : 'amet'
+            }
+        }
+    };
+
+unset(lorem, 'ipsum.dolor.sit'); // true
+console.log(lorem.ipsum.dolor);  // {}
+unset(lorem, 'foo.bar');         // true
+```
+
+
+
+## result(object, property):Mixed
+
+Evaluates an objects property and returns result.
+
+```js
+var person = {
+    name: 'john',
+
+    mood: function() {
+        // some dynamic calculated property.
+        return 'happy';
+    }
+};
+
+var name = result(person, 'name'), // john
+    mood = result(person, 'mood'); // happy
+```
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/queryString.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/queryString.md
new file mode 100644 (file)
index 0000000..1be3c10
--- /dev/null
@@ -0,0 +1,115 @@
+# queryString #
+
+Utilities for query string manipulation.
+
+
+
+## contains(url, paramName):Boolen
+
+Checks if query string contains parameter.
+
+### Arguments:
+
+ 1. `url` (String)     : URL or query string.
+ 2. `paramName` (String) : Parameter name.
+
+### Example:
+
+```js
+var url = 'example.com/?lorem=ipsum';
+contains(url, 'lorem'); // true
+contains(url, 'foo');   //false
+```
+
+
+
+## decode(queryStr[, shouldTypecast]):Object
+
+Parses query string and creates an object of keys => vals.
+
+Will typecast value with [`string/typecast`](string.html#typecast) by default
+and decode string parameters using `decodeURIComponent()`.
+
+```js
+var query = '?foo=bar&lorem=123';
+decode(query);        // {foo: "bar", lorem: 123}
+decode(query, false); // {foo: "bar", lorem: "123"}
+```
+
+
+## encode(obj):String
+
+Encode object into a query string.
+
+Will encode parameters with `encodeURIComponent()`.
+
+```js
+encode({foo: "bar", lorem: 123}); // "?foo=bar&lorem=123"
+```
+
+
+## getParam(url, param[, shouldTypecast]):*
+
+Get query parameter value.
+
+Will typecast value with [`string/typecast`](string.html#typecast) by default.
+
+See: [`setParam()`](#setParam)
+
+### Arguments:
+
+ 1. `url` (String) : Url.
+ 2. `param` (String) : Parameter name.
+ 3. `[shouldTypecast]` (Boolean) : If it should typecast value.
+
+### Example:
+
+```js
+var url = 'example.com/?foo=bar&lorem=123&ipsum=false';
+getParam(url, 'dolor');        // "amet"
+getParam(url, 'lorem');        // 123
+getParam(url, 'lorem', false); // "123"
+```
+
+
+## parse(url[, shouldTypecast]):Object
+
+Parses URL, extracts query string and decodes it.
+
+It will typecast all properties of the query object unless second argument is
+`false`.
+
+Alias to: `decode(getQuery(url))`.
+
+```js
+var url = 'example.com/?lorem=ipsum&a=123';
+parse(url);        // {lorem: "ipsum", a: 123}
+parse(url, false); // {lorem: "ipsum", a: "123"}
+```
+
+
+## getQuery(url):String
+
+Gets full query as string with all special chars decoded.
+
+```js
+getQuery('example.com/?lorem=ipsum'); // "?lorem=ipsum"
+```
+
+
+## setParam(url, paramName, value):String
+
+Add new query string parameter to URL or update existing value.
+
+See: [`getParam()`](#getParam)
+
+```js
+setParam('?foo=bar&lorem=0', 'lorem', 'ipsum'); // '?foo=bar&lorem=ipsum'
+setParam('?lorem=1', 'foo', 123); // '?lorem=1&foo=123'
+```
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/string.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/string.md
new file mode 100644 (file)
index 0000000..70a36fc
--- /dev/null
@@ -0,0 +1,626 @@
+# string #
+
+String utilities.
+
+
+## camelCase(str):String
+
+Convert string to "camelCase" text.
+
+See: [`pascalCase()`](#pascalCase), [`unCamelCase()`](#unCamelCase)
+
+### Example
+
+```js
+camelCase('lorem-ipsum-dolor'); // "loremIpsumDolor"
+camelCase('lorem ipsum dolor'); // "loremIpsumDolor"
+```
+
+
+
+## contains(str, substring, [fromIndex]):Boolean
+
+Checks if string contains the given substring.
+
+See: [`startsWith()`](#startsWith), [`endsWith()`](#endsWith)
+
+### Example
+
+```js
+contains('lorem', 'or');  // true
+contains('lorem', 'bar'); // false
+```
+
+
+
+## crop(str, maxChars, [append]):String
+
+Truncate string at full words. Alias to `truncate(str, maxChars, append, true);`.
+
+See: [`truncate()`](#truncate)
+
+### Example
+
+```js
+crop('lorem ipsum dolor', 10);      // "lorem..."
+crop('lorem ipsum dolor', 10, '+'); // "lorem+"
+```
+
+
+
+## endsWith(str, suffix):Boolean
+
+Checks if string ends with specified suffix.
+
+See: [`startsWith()`](#startsWith), [`contains()`](#contains)
+
+### Example
+
+```js
+endsWith('lorem ipsum', 'lorem'); // false
+endsWith('lorem ipsum', 'ipsum'); // true
+```
+
+
+
+## escapeHtml(str):String
+
+Escapes the following special characters for use in HTML:
+
+* `&` becomes `&amp;`
+* `<` becomes `&lt;`
+* `>` becomes `&gt;`
+* `'` becomes `&#39;`
+* `"` becomes `&quot;`
+
+No other characters are escaped. To HTML-escape other characters as well, use a third-party library like [_he_](http://mths.be/he).
+
+See: [`unescapeHtml()`](#unescapeHtml)
+
+### Example
+
+```js
+escapeHtml('lorem & "ipsum"'); // "lorem &amp;amp; &amp;quot;ipsum&amp;quot;"
+```
+
+
+
+## escapeRegExp(str):String
+
+Escape special chars to be used as literals in RegExp constructors.
+
+### Example
+
+```js
+str = escapeRegExp('[lorem.ipsum]'); // "\\[lorem\\.ipsum\\]"
+reg = new RegExp(str);               // /\[lorem\.ipsum\]/
+```
+
+
+
+## escapeUnicode(str[, shouldEscapePrintable]):String
+
+Unicode escape chars.
+
+It will only escape non-printable ASCII chars unless `shouldEscapePrintable` is
+set to `true`.
+
+See: [`unescapeUnicode()`](#unescapeUnicode)
+
+```js
+escapeUnicode('føo bår');
+// > "f\u00f8o b\u00e5r"
+escapeUnicode('føo bår', true);
+// > "\u0066\u00f8\u006f\u0020\u0062\u00e5\u0072"
+```
+
+
+
+## hyphenate(str):String
+
+Replaces spaces with hyphens, split camelCase text, remove non-word chars,
+remove accents and convert to lower case.
+
+See: [`slugify()`](#slugify), [`underscore()`](#underscore),
+[`unhyphenate`](#unhyphenate)
+
+```js
+hyphenate(' %# lorem ipsum  ? $  dolor'); // "lorem-ipsum-dolor"
+hyphenate('spéçïãl çhârs');               // "special-chars"
+hyphenate('loremIpsum');                  // "lorem-ipsum"
+```
+
+
+
+## insert(str, index, partial):String
+
+Inserts a `partial` before the given `index` in the provided `str`.
+If the index is larger than the length of the string the partial is appended at the end.
+A negative index is treated as `length - index` where `length` is the length or the string.
+
+```js
+insert('this is a sentence', 10, 'sample '); // "this is a sample sentence"
+insert('foo', 100, 'bar'); // "foobar"
+insert('image.png', -4, '-large'); // "image-large.png"
+```
+
+## interpolate(str, replacements[, syntax]):String
+
+String interpolation. Format/replace tokens with object properties.
+
+```js
+var tmpl = 'Hello {{name}}!';
+interpolate(tmpl, {name: 'World'});       // "Hello World!"
+interpolate(tmpl, {name: 'Lorem Ipsum'}); // "Hello Lorem Ipsum!"
+
+tmpl = 'Hello {{name.first}}!';
+interpolate(tmpl, {name: {first: 'Lorem'}}); // "Hello Lorem!"
+```
+
+It uses a mustache-like syntax by default but you can set your own format if
+needed. You can also use Arrays for the replacements (since Arrays are
+objects as well):
+
+```js
+// matches everything inside "${}"
+var syntax = /\$\{([^}]+)\}/g;
+var tmpl = "Hello ${0}!";
+interpolate(tmpl, ['Foo Bar'], syntax); // "Hello Foo Bar!"
+```
+
+
+
+## lowerCase(str):String
+
+"Safer" `String.toLowerCase()`. (Used internally)
+
+### Example
+
+```js
+(null).toLowerCase();      // Error!
+(undefined).toLowerCase(); // Error!
+lowerCase(null);           // ""
+lowerCase(undefined);      // ""
+```
+
+
+
+## lpad(str, minLength[, char]):String
+
+Pad string from left with `char` if its' length is smaller than `minLen`.
+
+See: [`rpad()`](#rpad)
+
+### Example
+
+```js
+lpad('a', 5);        // "    a"
+lpad('a', 5, '-');   // "----a"
+lpad('abc', 3, '-'); // "abc"
+lpad('abc', 4, '-'); // "-abc"
+```
+
+
+
+## ltrim(str, [chars]):String
+
+Remove chars or white-spaces from beginning of string.
+
+`chars` is an array of chars to remove from the beginning of the string. If
+`chars` is not specified, Unicode whitespace chars will be used instead.
+
+See: [`rtrim()`](#rtrim), [`trim()`](#trim)
+
+### Example
+
+```js
+ltrim('   lorem ipsum   ');      // "lorem ipsum   "
+ltrim('--lorem ipsum--', ['-']); // "lorem ipsum--"
+```
+
+
+
+## makePath(...args):String
+
+Group arguments as path segments, if any of the args is `null` or `undefined`
+it will be ignored from resulting path. It will also remove duplicate "/".
+
+See: [`array/join()`](array.html#join)
+
+### Example
+
+```js
+makePath('lorem', 'ipsum', null, 'dolor'); // "lorem/ipsum/dolor"
+makePath('foo///bar/');                    // "foo/bar/"
+```
+
+
+
+## normalizeLineBreaks(str, [lineBreak]):String
+
+Normalize line breaks to a single format. Defaults to Unix `\n`.
+
+It handles DOS (`\r\n`), Mac (`\r`) and Unix (`\n`) formats.
+
+### Example
+
+```js
+// "foo\nbar\nlorem\nipsum"
+normalizeLineBreaks('foo\nbar\r\nlorem\ripsum');
+
+// "foo\rbar\rlorem\ripsum"
+normalizeLineBreaks('foo\nbar\r\nlorem\ripsum', '\r');
+
+// "foo bar lorem ipsum"
+normalizeLineBreaks('foo\nbar\r\nlorem\ripsum', ' ');
+```
+
+
+
+## pascalCase(str):String
+
+Convert string to "PascalCase" text.
+
+See: [`camelCase()`](#camelCase)
+
+### Example
+
+```js
+pascalCase('lorem-ipsum-dolor'); // "LoremIpsumDolor"
+pascalCase('lorem ipsum dolor'); // "LoremIpsumDolor"
+```
+
+
+
+## properCase(str):String
+
+UPPERCASE first char of each word, lowercase other chars.
+
+### Example
+
+```js
+properCase('loRem iPSum'); // "Lorem Ipsum"
+```
+
+
+
+## removeNonASCII(str):String
+
+Remove [non-printable ASCII
+chars](http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters).
+
+### Example
+
+```js
+removeNonASCII('äÄçÇéÉêlorem-ipsumöÖÐþúÚ'); // "lorem-ipsum"
+```
+
+
+
+## removeNonWord(str):String
+
+Remove non-word chars.
+
+### Example
+
+```js
+var str = 'lorem ~!@#$%^&*()_+`-={}[]|\\:";\'/?><., ipsum';
+removeNonWord(str); // "lorem - ipsum"
+```
+
+
+
+## repeat(str, n):String
+
+Repeat string n-times.
+
+### Example
+
+```js
+repeat('a', 3);  // "aaa"
+repeat('bc', 2); // "bcbc"
+repeat('a', 0);  // ""
+```
+
+
+
+## replace(str, search, replacements):String
+
+Replace string(s) with the replacement(s) in the source.
+
+`search` and `replacements` can be an array, or a single item. For every item
+in `search`, it will call `str.replace` with the search item and the matching
+replacement in `replacements`. If `replacements` only contains one replacement,
+it will be used for all the searches, otherwise it will use the replacement at
+the same index as the search.
+
+### Example
+
+```js
+replace('foo bar', 'foo', 'test');                // "test bar"
+replace('test 1 2', ['1', '2'], 'n');             // "test n n"
+replace('test 1 2', ['1', '2'], ['one', 'two']);  // "test one two"
+replace('123abc', [/\d/g, /[a-z]/g], ['0', '.']); // "000..."
+```
+
+
+
+## replaceAccents(str):String
+
+Replaces all accented chars with regular ones.
+
+**Important:** Only covers **Basic Latin** and **Latin-1** unicode chars.
+
+### Example
+
+```js
+replaceAccents('spéçïãl çhârs'); // "special chars"
+```
+
+
+
+## rpad(str, minLength[, char]):String
+
+Pad string from right with `char` if its' length is smaller than `minLen`.
+
+See: [`lpad()`](#lpad)
+
+### Example
+
+```js
+rpad('a', 5);        // "a    "
+rpad('a', 5, '-');   // "a----"
+rpad('abc', 3, '-'); // "abc"
+rpad('abc', 4, '-'); // "abc-"
+```
+
+
+
+## rtrim(str, [chars]):String
+
+Remove chars or white-spaces from end of string.
+
+`chars` is an array of chars to remove from the end of the string. If
+`chars` is not specified, Unicode whitespace chars will be used instead.
+
+See: [`trim()`](#trim), [`ltrim()`](#ltrim)
+
+### Example
+
+```js
+rtrim('   lorem ipsum   ');      // "   lorem ipsum"
+rtrim('--lorem ipsum--', ['-']); // "--lorem ipsum"
+```
+
+
+
+## sentenceCase(str):String
+
+UPPERCASE first char of each sentence and lowercase other chars.
+
+### Example
+
+```js
+var str = 'Lorem IpSum DoLOr. maeCeNnas Ullamcor.';
+sentenceCase(str); // "Lorem ipsum dolor. Maecennas ullamcor."
+```
+
+
+
+## stripHtmlTags(str):String
+
+Remove HTML/XML tags from string.
+
+### Example
+
+```js
+var str = '<p><em>lorem</em> <strong>ipsum</strong></p>';
+stripHtmlTags(str); // "lorem ipsum"
+```
+
+
+
+## startsWith(str, prefix):Boolean
+
+Checks if string starts with specified prefix.
+
+See: [`endsWith()`](#endsWith), [`contains()`](#contains)
+
+### Example
+
+```js
+startsWith('lorem ipsum', 'lorem'); // true
+startsWith('lorem ipsum', 'ipsum'); // false
+```
+
+
+
+## slugify(str[, delimeter]):String
+
+Convert to lower case, remove accents, remove non-word chars and replace spaces
+with the delimeter. The default delimeter is a hyphen.
+
+Note that this does not split camelCase text.
+
+See: [`hyphenate()`](#hyphenate) and [`underscore()`](#underscore)
+
+### Example
+
+```js
+var str = 'loremIpsum dolor spéçïãl chârs';
+slugify(str); // "loremipsum-dolor-special-chars"
+slugify(str, '_'); // "loremipsum_dolor_special_chars"
+```
+
+
+
+## trim(str, [chars]):String
+
+Remove chars or white-spaces from beginning and end of string.
+
+`chars` is an array of chars to remove from the beginning and end of the
+string. If `chars` is not specified, Unicode whitespace chars will be used
+instead.
+
+See: [`rtrim()`](#rtrim), [`ltrim()`](#ltrim)
+
+### Example
+
+```js
+trim('   lorem ipsum   ');             // "lorem ipsum"
+trim('-+-lorem ipsum-+-', ['-', '+']); // "lorem ipsum"
+```
+
+
+
+## truncate(str, maxChars, [append], [onlyFullWords]):String
+
+Limit number of chars. Returned string `length` will be `<= maxChars`.
+
+See: [`crop()`](#crop)
+
+### Arguments
+
+ 1. `str` (String) : String
+ 2. `maxChars` (Number) : Maximum number of characters including `append.length`.
+ 3. `[append]` (String) : Value that should be added to the end of string.
+    Defaults to "...".
+ 4. `[onlyFullWords]` (Boolean) : If it shouldn't break words. Default is
+    `false`. (favor [`crop()`](#crop) since code will be clearer).
+
+### Example
+
+```js
+truncate('lorem ipsum dolor', 11);             // "lorem ip..."
+truncate('lorem ipsum dolor', 11, '+');        // "lorem ipsu+"
+truncate('lorem ipsum dolor', 11, null, true); // "lorem..."
+```
+
+
+
+## typecast(str):*
+
+Parses string and convert it into a native value.
+
+### Example
+
+```js
+typecast('lorem ipsum'); // "lorem ipsum"
+typecast('123');         // 123
+typecast('123.45');      // 123.45
+typecast('false');       // false
+typecast('true');        // true
+typecast('null');        // null
+typecast('undefined');   // undefined
+```
+
+
+
+## unCamelCase(str, [delimiter]):String
+
+Add the delimiter between camelCase text and convert first char of each word to
+lower case.
+
+The delimiter defaults to a space character.
+
+See: [`camelCase()`][#camelCase]
+
+### Example
+
+```js
+unCamelCase('loremIpsumDolor'); // "lorem ipsum dolor"
+unCamelCase('loremIpsumDolor', '-'); // "lorem-ipsum-color"
+```
+
+
+## underscore(str):String
+
+Replaces spaces with underscores, split camelCase text, remove non-word chars,
+remove accents and convert to lower case.
+
+See: [`slugify()`](#slugify), [`hyphenate()`](#hyphenate)
+
+```js
+underscore(' %# lorem ipsum  ? $  dolor'); // "lorem_ipsum_dolor"
+underscore('spéçïãl çhârs');               // "special_chars"
+underscore('loremIpsum');                  // "lorem_ipsum"
+```
+
+
+
+## unescapeHtml(str):String
+
+Unescapes the following HTML character references back into the raw symbol they map to: 
+
+* `&amp;` becomes `&`
+* `&lt;` becomes `<`
+* `&gt;` becomes `>`
+* `&#39;` becomes `'`
+* `&quot;` becomes `"`
+
+No other HTML character references are unescaped. To HTML-unescape other entities as well, use a third-party library like [_he_](http://mths.be/he).
+
+
+See: [`escapeHtml()`](#escapeHtml)
+
+### Example
+
+```js
+unescapeHtml('lorem &amp;amp; &amp;quot;ipsum&amp;quot;'); // 'lorem & "ipsum"'
+```
+
+
+
+## unescapeUnicode(str):String
+
+Unescapes unicode char sequences.
+
+See: [`escapeUnicode()`](#escapeUnicode)
+
+```js
+unescapeUnicode('\\u0066\\u00f8\\u006f\\u0020\\u0062\\u00e5\\u0072');
+// > 'føo bår'
+```
+
+
+
+## unhyphenate(str):String
+
+Replaces hyphens with spaces. (only hyphens between word chars)
+
+See : [`hyphenate()`](#hyphenate)
+
+### Example
+
+```js
+unhyphenate('lorem-ipsum-dolor'); // "lorem ipsum dolor"
+```
+
+
+## upperCase(str):String
+
+"Safer" `String.toUpperCase()`. (Used internally)
+
+### Example
+
+```js
+(null).toUpperCase();      // Error!
+(undefined).toUpperCase(); // Error!
+upperCase(null);           // ""
+upperCase(undefined);      // ""
+```
+
+
+
+## WHITE_SPACES:Array
+
+Constant array of all [Unicode white-space
+characters](http://en.wikipedia.org/wiki/Whitespace_character).
+
+
+
+-------------------------------------------------------------------------------
+
+For more usage examples check specs inside `/tests` folder. Unit tests are the
+best documentation you can get...
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/time.md b/wrt/build/node_modules/rocambole-indent/node_modules/mout/doc/time.md
new file mode 100644 (file)
index 0000000..628c2a9
--- /dev/null
@@ -0,0 +1,64 @@
+# time #
+
+Utilities for time manipulation.
+
+
+## convert(value, sourceUnit, [destinationUnit]):Number
+
+Converts time between units.
+
+Available units: `millisecond`, `second`, `minute`, `hour`, `day`, `week`.
+Abbreviations: `ms`, `s`, `m`, `h`, `d`, `w`.
+
+We do **not** support year and month as a time unit since their values are not
+fixed.
+
+The default `destinationUnit` is `ms`.
+
+```js
+convert(1, 'minute');    // 60000
+convert(2.5, 's', 'ms'); // 2500
+convert(2, 'm', 's');    // 120
+convert(500, 'ms', 's'); // 0.5
+```
+
+
+
+## now():Number
+
+Returns the number of milliseconds elapsed since 1 January 1970 00:00:00 UTC.
+Uses `Date.now()` if available.
+
+### Example
+
+```js
+now(); // 1335449614650
+```
+
+
+
+## parseMs(ms):Object
+
+Parse timestamp (milliseconds) into an object `{milliseconds:number,
+seconds:number, minutes:number, hours:number, days:number}`.
+
+### Example
+
+```js
+// {days:27, hours:4, minutes:26, seconds:5, milliseconds:454}
+parseMs(2348765454);
+```
+
+
+
+## toTimeString(ms):String
+
+Convert timestamp (milliseconds) into a time string in the format "[H:]MM:SS".
+
+### Example
+
+```js
+toTimeString(12513);   // "00:12"
+toTimeString(951233);  // "15:51"
+toTimeString(8765235); // "2:26:05"
+```
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/awaitDelay.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/awaitDelay.js
new file mode 100644 (file)
index 0000000..8c9b1a3
--- /dev/null
@@ -0,0 +1,22 @@
+var now = require('../time/now');
+var timeout = require('./timeout');
+var append = require('../array/append');
+
+    /**
+     * Ensure a minimum delay for callbacks
+     */
+    function awaitDelay( callback, delay ){
+        var baseTime = now() + delay;
+        return function() {
+            // ensure all browsers will execute it asynchronously (avoid hard
+            // to catch errors) not using "0" because of old browsers and also
+            // since new browsers increase the value to be at least "4"
+            // http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout
+            var ms = Math.max(baseTime - now(), 4);
+            return timeout.apply(this, append([callback, ms, this], arguments));
+        };
+    }
+
+    module.exports = awaitDelay;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/bind.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/bind.js
new file mode 100644 (file)
index 0000000..c6c4719
--- /dev/null
@@ -0,0 +1,19 @@
+var slice = require('../array/slice');
+
+    /**
+     * Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
+     * @param {Function} fn  Function.
+     * @param {object} context   Execution context.
+     * @param {rest} args    Arguments (0...n arguments).
+     * @return {Function} Wrapped Function.
+     */
+    function bind(fn, context, args){
+        var argsArr = slice(arguments, 2); //curried args
+        return function(){
+            return fn.apply(context, argsArr.concat(slice(arguments)));
+        };
+    }
+
+    module.exports = bind;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/compose.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/compose.js
new file mode 100644 (file)
index 0000000..8cd5c5f
--- /dev/null
@@ -0,0 +1,23 @@
+
+
+    /**
+     * Returns a function that composes multiple functions, passing results to
+     * each other.
+     */
+    function compose() {
+        var fns = arguments;
+        return function(arg){
+            // only cares about the first argument since the chain can only
+            // deal with a single return value anyway. It should start from
+            // the last fn.
+            var n = fns.length;
+            while (n--) {
+                arg = fns[n].call(this, arg);
+            }
+            return arg;
+         };
+     }
+
+     module.exports = compose;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/constant.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/constant.js
new file mode 100644 (file)
index 0000000..ab932d9
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Returns a new function that will return the value
+     */
+    function constant(value){
+        return function() {
+            return value;
+        };
+    }
+
+    module.exports = constant;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/debounce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/debounce.js
new file mode 100644 (file)
index 0000000..7f6f302
--- /dev/null
@@ -0,0 +1,32 @@
+
+
+    /**
+     * Debounce callback execution
+     */
+    function debounce(fn, threshold, isAsap){
+        var timeout, result;
+        function debounced(){
+            var args = arguments, context = this;
+            function delayed(){
+                if (! isAsap) {
+                    result = fn.apply(context, args);
+                }
+                timeout = null;
+            }
+            if (timeout) {
+                clearTimeout(timeout);
+            } else if (isAsap) {
+                result = fn.apply(context, args);
+            }
+            timeout = setTimeout(delayed, threshold);
+            return result;
+        }
+        debounced.cancel = function(){
+            clearTimeout(timeout);
+        };
+        return debounced;
+    }
+
+    module.exports = debounce;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/func.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/func.js
new file mode 100644 (file)
index 0000000..b81bf0a
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Returns a function that call a method on the passed object
+     */
+    function func(name){
+        return function(obj){
+            return obj[name]();
+        };
+    }
+
+    module.exports = func;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/identity.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/identity.js
new file mode 100644 (file)
index 0000000..d07b01a
--- /dev/null
@@ -0,0 +1,12 @@
+
+
+    /**
+     * Returns the first argument provided to it.
+     */
+    function identity(val){
+        return val;
+    }
+
+    module.exports = identity;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/makeIterator_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/makeIterator_.js
new file mode 100644 (file)
index 0000000..20cc0e7
--- /dev/null
@@ -0,0 +1,34 @@
+var identity = require('./identity');
+var prop = require('./prop');
+var deepMatches = require('../object/deepMatches');
+
+    /**
+     * Converts argument into a valid iterator.
+     * Used internally on most array/object/collection methods that receives a
+     * callback/iterator providing a shortcut syntax.
+     */
+    function makeIterator(src, thisObj){
+        if (src == null) {
+            return identity;
+        }
+        switch(typeof src) {
+            case 'function':
+                // function is the first to improve perf (most common case)
+                // also avoid using `Function#call` if not needed, which boosts
+                // perf a lot in some cases
+                return (typeof thisObj !== 'undefined')? function(val, i, arr){
+                    return src.call(thisObj, val, i, arr);
+                } : src;
+            case 'object':
+                return function(val){
+                    return deepMatches(val, src);
+                };
+            case 'string':
+            case 'number':
+                return prop(src);
+        }
+    }
+
+    module.exports = makeIterator;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/prop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/prop.js
new file mode 100644 (file)
index 0000000..734acb7
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * Returns a function that gets a property of the passed object
+     */
+    function prop(name){
+        return function(obj){
+            return obj[name];
+        };
+    }
+
+    module.exports = prop;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/series.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/series.js
new file mode 100644 (file)
index 0000000..25159c2
--- /dev/null
@@ -0,0 +1,22 @@
+
+
+    /**
+     * Returns a function that will execute a list of functions in sequence
+     * passing the same arguments to each one. (useful for batch processing
+     * items during a forEach loop)
+     */
+    function series(){
+        var fns = arguments;
+        return function(){
+            var i = 0,
+                n = fns.length;
+            while (i < n) {
+                fns[i].apply(this, arguments);
+                i += 1;
+            }
+        };
+    }
+
+    module.exports = series;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/throttle.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/throttle.js
new file mode 100644 (file)
index 0000000..0a5e161
--- /dev/null
@@ -0,0 +1,33 @@
+var now = require('../time/now');
+
+    /**
+     */
+    function throttle(fn, delay){
+        var context, timeout, result, args,
+            diff, prevCall = 0;
+        function delayed(){
+            prevCall = now();
+            timeout = null;
+            result = fn.apply(context, args);
+        }
+        function throttled(){
+            context = this;
+            args = arguments;
+            diff = delay - (now() - prevCall);
+            if (diff <= 0) {
+                clearTimeout(timeout);
+                delayed();
+            } else if (! timeout) {
+                timeout = setTimeout(delayed, diff);
+            }
+            return result;
+        }
+        throttled.cancel = function(){
+            clearTimeout(timeout);
+        };
+        return throttled;
+    }
+
+    module.exports = throttle;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/timeout.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/timeout.js
new file mode 100644 (file)
index 0000000..509dd68
--- /dev/null
@@ -0,0 +1,17 @@
+var slice = require('../array/slice');
+
+    /**
+     * Delays the call of a function within a given context.
+     */
+    function timeout(fn, millis, context){
+
+        var args = slice(arguments, 3);
+
+        return setTimeout(function() {
+            fn.apply(context, args);
+        }, millis);
+    }
+
+    module.exports = timeout;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/times.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/times.js
new file mode 100644 (file)
index 0000000..04a11c2
--- /dev/null
@@ -0,0 +1,17 @@
+
+
+    /**
+     * Iterates over a callback a set amount of times
+     */
+    function times(n, callback, thisObj){
+        var i = -1;
+        while (++i < n) {
+            if ( callback.call(thisObj, i) === false ) {
+                break;
+            }
+        }
+    }
+
+    module.exports = times;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/wrap.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/function/wrap.js
new file mode 100644 (file)
index 0000000..82d77ff
--- /dev/null
@@ -0,0 +1,14 @@
+var partial = require('./partial');
+
+    /**
+     * Returns the first function passed as an argument to the second,
+     * allowing you to adjust arguments, run code before and after, and
+     * conditionally execute the original function.
+     */
+    function wrap(fn, wrapper){
+        return partial(wrapper, fn);
+    }
+
+    module.exports = wrap;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/index.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/index.js
new file mode 100644 (file)
index 0000000..17ef9dd
--- /dev/null
@@ -0,0 +1,25 @@
+/**@license
+ * mout v0.11.1 | http://moutjs.com | MIT license
+ */
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'VERSION' : '0.11.1',
+    'array' : require('./array'),
+    'collection' : require('./collection'),
+    'date' : require('./date'),
+    'function' : require('./function'),
+    'lang' : require('./lang'),
+    'math' : require('./math'),
+    'number' : require('./number'),
+    'object' : require('./object'),
+    'queryString' : require('./queryString'),
+    'random' : require('./random'),
+    'string' : require('./string'),
+    'time' : require('./time'),
+    'fn' : require('./function')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang.js
new file mode 100644 (file)
index 0000000..150007f
--- /dev/null
@@ -0,0 +1,40 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'GLOBAL' : require('./lang/GLOBAL'),
+    'clone' : require('./lang/clone'),
+    'createObject' : require('./lang/createObject'),
+    'ctorApply' : require('./lang/ctorApply'),
+    'deepClone' : require('./lang/deepClone'),
+    'deepEquals' : require('./lang/deepEquals'),
+    'defaults' : require('./lang/defaults'),
+    'inheritPrototype' : require('./lang/inheritPrototype'),
+    'is' : require('./lang/is'),
+    'isArguments' : require('./lang/isArguments'),
+    'isArray' : require('./lang/isArray'),
+    'isBoolean' : require('./lang/isBoolean'),
+    'isDate' : require('./lang/isDate'),
+    'isEmpty' : require('./lang/isEmpty'),
+    'isFinite' : require('./lang/isFinite'),
+    'isFunction' : require('./lang/isFunction'),
+    'isInteger' : require('./lang/isInteger'),
+    'isKind' : require('./lang/isKind'),
+    'isNaN' : require('./lang/isNaN'),
+    'isNull' : require('./lang/isNull'),
+    'isNumber' : require('./lang/isNumber'),
+    'isObject' : require('./lang/isObject'),
+    'isPlainObject' : require('./lang/isPlainObject'),
+    'isPrimitive' : require('./lang/isPrimitive'),
+    'isRegExp' : require('./lang/isRegExp'),
+    'isString' : require('./lang/isString'),
+    'isUndefined' : require('./lang/isUndefined'),
+    'isnt' : require('./lang/isnt'),
+    'kindOf' : require('./lang/kindOf'),
+    'toArray' : require('./lang/toArray'),
+    'toNumber' : require('./lang/toNumber'),
+    'toString' : require('./lang/toString')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/GLOBAL.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/GLOBAL.js
new file mode 100644 (file)
index 0000000..4d759ba
--- /dev/null
@@ -0,0 +1,7 @@
+
+
+    // Reference to the global context (works on ES3 and ES5-strict mode)
+    //jshint -W061, -W064
+    module.exports = Function('return this')();
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/clone.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/clone.js
new file mode 100644 (file)
index 0000000..e515487
--- /dev/null
@@ -0,0 +1,49 @@
+var kindOf = require('./kindOf');
+var isPlainObject = require('./isPlainObject');
+var mixIn = require('../object/mixIn');
+
+    /**
+     * Clone native types.
+     */
+    function clone(val){
+        switch (kindOf(val)) {
+            case 'Object':
+                return cloneObject(val);
+            case 'Array':
+                return cloneArray(val);
+            case 'RegExp':
+                return cloneRegExp(val);
+            case 'Date':
+                return cloneDate(val);
+            default:
+                return val;
+        }
+    }
+
+    function cloneObject(source) {
+        if (isPlainObject(source)) {
+            return mixIn({}, source);
+        } else {
+            return source;
+        }
+    }
+
+    function cloneRegExp(r) {
+        var flags = '';
+        flags += r.multiline ? 'm' : '';
+        flags += r.global ? 'g' : '';
+        flags += r.ignoreCase ? 'i' : '';
+        return new RegExp(r.source, flags);
+    }
+
+    function cloneDate(date) {
+        return new Date(+date);
+    }
+
+    function cloneArray(arr) {
+        return arr.slice();
+    }
+
+    module.exports = clone;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/createObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/createObject.js
new file mode 100644 (file)
index 0000000..bbc14c1
--- /dev/null
@@ -0,0 +1,18 @@
+var mixIn = require('../object/mixIn');
+
+    /**
+     * Create Object using prototypal inheritance and setting custom properties.
+     * - Mix between Douglas Crockford Prototypal Inheritance <http://javascript.crockford.com/prototypal.html> and the EcmaScript 5 `Object.create()` method.
+     * @param {object} parent    Parent Object.
+     * @param {object} [props] Object properties.
+     * @return {object} Created object.
+     */
+    function createObject(parent, props){
+        function F(){}
+        F.prototype = parent;
+        return mixIn(new F(), props);
+
+    }
+    module.exports = createObject;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/ctorApply.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/ctorApply.js
new file mode 100644 (file)
index 0000000..d68dc50
--- /dev/null
@@ -0,0 +1,17 @@
+
+
+    function F(){}
+
+    /**
+     * Do fn.apply on a constructor.
+     */
+    function ctorApply(ctor, args) {
+        F.prototype = ctor.prototype;
+        var instance = new F();
+        ctor.apply(instance, args);
+        return instance;
+    }
+
+    module.exports = ctorApply;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepClone.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepClone.js
new file mode 100644 (file)
index 0000000..25fd95f
--- /dev/null
@@ -0,0 +1,48 @@
+var clone = require('./clone');
+var forOwn = require('../object/forOwn');
+var kindOf = require('./kindOf');
+var isPlainObject = require('./isPlainObject');
+
+    /**
+     * Recursively clone native types.
+     */
+    function deepClone(val, instanceClone) {
+        switch ( kindOf(val) ) {
+            case 'Object':
+                return cloneObject(val, instanceClone);
+            case 'Array':
+                return cloneArray(val, instanceClone);
+            default:
+                return clone(val);
+        }
+    }
+
+    function cloneObject(source, instanceClone) {
+        if (isPlainObject(source)) {
+            var out = {};
+            forOwn(source, function(val, key) {
+                this[key] = deepClone(val, instanceClone);
+            }, out);
+            return out;
+        } else if (instanceClone) {
+            return instanceClone(source);
+        } else {
+            return source;
+        }
+    }
+
+    function cloneArray(arr, instanceClone) {
+        var out = [],
+            i = -1,
+            n = arr.length,
+            val;
+        while (++i < n) {
+            out[i] = deepClone(arr[i], instanceClone);
+        }
+        return out;
+    }
+
+    module.exports = deepClone;
+
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepEquals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/deepEquals.js
new file mode 100644 (file)
index 0000000..bf2b90d
--- /dev/null
@@ -0,0 +1,30 @@
+var is = require('./is');
+var isObject = require('./isObject');
+var isArray = require('./isArray');
+var objEquals = require('../object/equals');
+var arrEquals = require('../array/equals');
+
+    /**
+     * Recursively checks for same properties and values.
+     */
+    function deepEquals(a, b, callback){
+        callback = callback || is;
+
+        var bothObjects = isObject(a) && isObject(b);
+        var bothArrays = !bothObjects && isArray(a) && isArray(b);
+
+        if (!bothObjects && !bothArrays) {
+            return callback(a, b);
+        }
+
+        function compare(a, b){
+            return deepEquals(a, b, callback);
+        }
+
+        var method = bothObjects ? objEquals : arrEquals;
+        return method(a, b, compare);
+    }
+
+    module.exports = deepEquals;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/defaults.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/defaults.js
new file mode 100644 (file)
index 0000000..1111b2e
--- /dev/null
@@ -0,0 +1,17 @@
+var toArray = require('./toArray');
+var find = require('../array/find');
+
+    /**
+     * Return first non void argument
+     */
+    function defaults(var_args){
+        return find(toArray(arguments), nonVoid);
+    }
+
+    function nonVoid(val){
+        return val != null;
+    }
+
+    module.exports = defaults;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/inheritPrototype.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/inheritPrototype.js
new file mode 100644 (file)
index 0000000..1c9da1f
--- /dev/null
@@ -0,0 +1,18 @@
+var createObject = require('./createObject');
+
+    /**
+    * Inherit prototype from another Object.
+    * - inspired by Nicholas Zackas <http://nczonline.net> Solution
+    * @param {object} child Child object
+    * @param {object} parent    Parent Object
+    */
+    function inheritPrototype(child, parent){
+        var p = createObject(parent.prototype);
+        p.constructor = child;
+        child.prototype = p;
+        child.super_ = parent;
+        return p;
+    }
+
+    module.exports = inheritPrototype;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/is.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/is.js
new file mode 100644 (file)
index 0000000..4a83573
--- /dev/null
@@ -0,0 +1,23 @@
+
+
+    /**
+     * Check if both arguments are egal.
+     */
+    function is(x, y){
+        // implementation borrowed from harmony:egal spec
+        if (x === y) {
+          // 0 === -0, but they are not identical
+          return x !== 0 || 1 / x === 1 / y;
+        }
+
+        // NaN !== NaN, but they are identical.
+        // NaNs are the only non-reflexive value, i.e., if x !== x,
+        // then x is a NaN.
+        // isNaN is broken: it converts its argument to number, so
+        // isNaN("foo") => true
+        return x !== x && y !== y;
+    }
+
+    module.exports = is;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArguments.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArguments.js
new file mode 100644 (file)
index 0000000..f7b08ba
--- /dev/null
@@ -0,0 +1,15 @@
+var isKind = require('./isKind');
+
+    /**
+     */
+    var isArgs = isKind(arguments, 'Arguments')?
+            function(val){
+                return isKind(val, 'Arguments');
+            } :
+            function(val){
+                // Arguments is an Object on IE7
+                return !!(val && Object.prototype.hasOwnProperty.call(val, 'callee'));
+            };
+
+    module.exports = isArgs;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArray.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isArray.js
new file mode 100644 (file)
index 0000000..262ee40
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    var isArray = Array.isArray || function (val) {
+        return isKind(val, 'Array');
+    };
+    module.exports = isArray;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isBoolean.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isBoolean.js
new file mode 100644 (file)
index 0000000..86557cb
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isBoolean(val) {
+        return isKind(val, 'Boolean');
+    }
+    module.exports = isBoolean;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isDate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isDate.js
new file mode 100644 (file)
index 0000000..4a5130f
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isDate(val) {
+        return isKind(val, 'Date');
+    }
+    module.exports = isDate;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isEmpty.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isEmpty.js
new file mode 100644 (file)
index 0000000..c7854c6
--- /dev/null
@@ -0,0 +1,24 @@
+var forOwn = require('../object/forOwn');
+var isArray = require('./isArray');
+
+    function isEmpty(val){
+        if (val == null) {
+            // typeof null == 'object' so we check it first
+            return true;
+        } else if ( typeof val === 'string' || isArray(val) ) {
+            return !val.length;
+        } else if ( typeof val === 'object' ) {
+            var result = true;
+            forOwn(val, function(){
+                result = false;
+                return false; // break loop
+            });
+            return result;
+        } else {
+            return true;
+        }
+    }
+
+    module.exports = isEmpty;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFinite.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFinite.js
new file mode 100644 (file)
index 0000000..812e317
--- /dev/null
@@ -0,0 +1,20 @@
+var isNumber = require('./isNumber');
+var GLOBAL = require('./GLOBAL');
+
+    /**
+     * Check if value is finite
+     */
+    function isFinite(val){
+        var is = false;
+        if (typeof val === 'string' && val !== '') {
+            is = GLOBAL.isFinite( parseFloat(val) );
+        } else if (isNumber(val)){
+            // need to use isNumber because of Number constructor
+            is = GLOBAL.isFinite( val );
+        }
+        return is;
+    }
+
+    module.exports = isFinite;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFunction.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isFunction.js
new file mode 100644 (file)
index 0000000..216879f
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isFunction(val) {
+        return isKind(val, 'Function');
+    }
+    module.exports = isFunction;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isInteger.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isInteger.js
new file mode 100644 (file)
index 0000000..29f95d9
--- /dev/null
@@ -0,0 +1,12 @@
+var isNumber = require('./isNumber');
+
+    /**
+     * Check if value is an integer
+     */
+    function isInteger(val){
+        return isNumber(val) && (val % 1 === 0);
+    }
+
+    module.exports = isInteger;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isKind.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isKind.js
new file mode 100644 (file)
index 0000000..02301e0
--- /dev/null
@@ -0,0 +1,9 @@
+var kindOf = require('./kindOf');
+    /**
+     * Check if value is from a specific "kind".
+     */
+    function isKind(val, kind){
+        return kindOf(val) === kind;
+    }
+    module.exports = isKind;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNaN.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNaN.js
new file mode 100644 (file)
index 0000000..b1018ec
--- /dev/null
@@ -0,0 +1,16 @@
+var isNumber = require('./isNumber');
+var $isNaN = require('../number/isNaN');
+
+    /**
+     * Check if value is NaN for realz
+     */
+    function isNaN(val){
+        // based on the fact that NaN !== NaN
+        // need to check if it's a number to avoid conflicts with host objects
+        // also need to coerce ToNumber to avoid edge case `new Number(NaN)`
+        return !isNumber(val) || $isNaN(Number(val));
+    }
+
+    module.exports = isNaN;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNull.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNull.js
new file mode 100644 (file)
index 0000000..6252f9e
--- /dev/null
@@ -0,0 +1,9 @@
+
+    /**
+     */
+    function isNull(val){
+        return val === null;
+    }
+    module.exports = isNull;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNumber.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isNumber.js
new file mode 100644 (file)
index 0000000..126c1cc
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isNumber(val) {
+        return isKind(val, 'Number');
+    }
+    module.exports = isNumber;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isObject.js
new file mode 100644 (file)
index 0000000..7350c89
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isObject(val) {
+        return isKind(val, 'Object');
+    }
+    module.exports = isObject;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPlainObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPlainObject.js
new file mode 100644 (file)
index 0000000..b81342e
--- /dev/null
@@ -0,0 +1,13 @@
+
+
+    /**
+     * Checks if the value is created by the `Object` constructor.
+     */
+    function isPlainObject(value) {
+        return (!!value && typeof value === 'object' &&
+            value.constructor === Object);
+    }
+
+    module.exports = isPlainObject;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPrimitive.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isPrimitive.js
new file mode 100644 (file)
index 0000000..e255475
--- /dev/null
@@ -0,0 +1,21 @@
+
+
+    /**
+     * Checks if the object is a primitive
+     */
+    function isPrimitive(value) {
+        // Using switch fallthrough because it's simple to read and is
+        // generally fast: http://jsperf.com/testing-value-is-primitive/5
+        switch (typeof value) {
+            case "string":
+            case "number":
+            case "boolean":
+                return true;
+        }
+
+        return value == null;
+    }
+
+    module.exports = isPrimitive;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isRegExp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isRegExp.js
new file mode 100644 (file)
index 0000000..fc5459a
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isRegExp(val) {
+        return isKind(val, 'RegExp');
+    }
+    module.exports = isRegExp;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isString.js
new file mode 100644 (file)
index 0000000..f890658
--- /dev/null
@@ -0,0 +1,8 @@
+var isKind = require('./isKind');
+    /**
+     */
+    function isString(val) {
+        return isKind(val, 'String');
+    }
+    module.exports = isString;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isUndefined.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isUndefined.js
new file mode 100644 (file)
index 0000000..fb2261d
--- /dev/null
@@ -0,0 +1,10 @@
+
+    var UNDEF;
+
+    /**
+     */
+    function isUndef(val){
+        return val === UNDEF;
+    }
+    module.exports = isUndef;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isnt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/isnt.js
new file mode 100644 (file)
index 0000000..9dad58c
--- /dev/null
@@ -0,0 +1,12 @@
+var is = require('./is');
+
+    /**
+     * Check if both values are not identical/egal
+     */
+    function isnt(x, y){
+        return !is(x, y);
+    }
+
+    module.exports = isnt;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/kindOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/kindOf.js
new file mode 100644 (file)
index 0000000..663464d
--- /dev/null
@@ -0,0 +1,20 @@
+
+
+    var _rKind = /^\[object (.*)\]$/,
+        _toString = Object.prototype.toString,
+        UNDEF;
+
+    /**
+     * Gets the "kind" of value. (e.g. "String", "Number", etc)
+     */
+    function kindOf(val) {
+        if (val === null) {
+            return 'Null';
+        } else if (val === UNDEF) {
+            return 'Undefined';
+        } else {
+            return _rKind.exec( _toString.call(val) )[1];
+        }
+    }
+    module.exports = kindOf;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toArray.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toArray.js
new file mode 100644 (file)
index 0000000..1f3a2b6
--- /dev/null
@@ -0,0 +1,30 @@
+var kindOf = require('./kindOf');
+var GLOBAL = require('./GLOBAL');
+
+    /**
+     * Convert array-like object into array
+     */
+    function toArray(val){
+        var ret = [],
+            kind = kindOf(val),
+            n;
+
+        if (val != null) {
+            if ( val.length == null || kind === 'String' || kind === 'Function' || kind === 'RegExp' || val === GLOBAL ) {
+                //string, regexp, function have .length but user probably just want
+                //to wrap value into an array..
+                ret[ret.length] = val;
+            } else {
+                //window returns true on isObject in IE7 and may have length
+                //property. `typeof NodeList` returns `function` on Safari so
+                //we can't use it (#58)
+                n = val.length;
+                while (n--) {
+                    ret[n] = val[n];
+                }
+            }
+        }
+        return ret;
+    }
+    module.exports = toArray;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toNumber.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toNumber.js
new file mode 100644 (file)
index 0000000..8b6df34
--- /dev/null
@@ -0,0 +1,20 @@
+var isArray = require('./isArray');
+
+    /**
+     * covert value into number if numeric
+     */
+    function toNumber(val){
+        // numberic values should come first because of -0
+        if (typeof val === 'number') return val;
+        // we want all falsy values (besides -0) to return zero to avoid
+        // headaches
+        if (!val) return 0;
+        if (typeof val === 'string') return parseFloat(val);
+        // arrays are edge cases. `Number([4]) === 4`
+        if (isArray(val)) return NaN;
+        return Number(val);
+    }
+
+    module.exports = toNumber;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/lang/toString.js
new file mode 100644 (file)
index 0000000..ae5c2b0
--- /dev/null
@@ -0,0 +1,13 @@
+
+
+    /**
+     * Typecast a value to a String, using an empty string value for null or
+     * undefined.
+     */
+    function toString(val){
+        return val == null ? '' : val.toString();
+    }
+
+    module.exports = toString;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/ceil.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/ceil.js
new file mode 100644 (file)
index 0000000..a279e15
--- /dev/null
@@ -0,0 +1,11 @@
+
+    /**
+     * Round value up with a custom radix.
+     */
+    function ceil(val, step){
+        step = Math.abs(step || 1);
+        return Math.ceil(val / step) * step;
+    }
+
+    module.exports = ceil;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/clamp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/clamp.js
new file mode 100644 (file)
index 0000000..e929a9a
--- /dev/null
@@ -0,0 +1,9 @@
+
+    /**
+     * Clamps value inside range.
+     */
+    function clamp(val, min, max){
+        return val < min? min : (val > max? max : val);
+    }
+    module.exports = clamp;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/countSteps.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/countSteps.js
new file mode 100644 (file)
index 0000000..60ac90c
--- /dev/null
@@ -0,0 +1,16 @@
+
+    /**
+    * Count number of full steps.
+    */
+    function countSteps(val, step, overflow){
+        val = Math.floor(val / step);
+
+        if (overflow) {
+            return val % overflow;
+        }
+
+        return val;
+    }
+
+    module.exports = countSteps;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/floor.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/floor.js
new file mode 100644 (file)
index 0000000..9de5053
--- /dev/null
@@ -0,0 +1,10 @@
+
+    /**
+    * Floor value to full steps.
+    */
+    function floor(val, step){
+        step = Math.abs(step || 1);
+        return Math.floor(val / step) * step;
+    }
+    module.exports = floor;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/inRange.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/inRange.js
new file mode 100644 (file)
index 0000000..763218f
--- /dev/null
@@ -0,0 +1,11 @@
+
+    /**
+    * Checks if value is inside the range.
+    */
+    function inRange(val, min, max, threshold){
+        threshold = threshold || 0;
+        return (val + threshold >= min && val - threshold <= max);
+    }
+
+    module.exports = inRange;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/isNear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/isNear.js
new file mode 100644 (file)
index 0000000..45486b6
--- /dev/null
@@ -0,0 +1,9 @@
+
+    /**
+    * Check if value is close to target.
+    */
+    function isNear(val, target, threshold){
+        return (Math.abs(val - target) <= threshold);
+    }
+    module.exports = isNear;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/lerp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/lerp.js
new file mode 100644 (file)
index 0000000..111e271
--- /dev/null
@@ -0,0 +1,11 @@
+
+    /**
+    * Linear interpolation.
+    * IMPORTANT:will return `Infinity` if numbers overflow Number.MAX_VALUE
+    */
+    function lerp(ratio, start, end){
+        return start + (end - start) * ratio;
+    }
+
+    module.exports = lerp;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/loop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/loop.js
new file mode 100644 (file)
index 0000000..35207c1
--- /dev/null
@@ -0,0 +1,10 @@
+
+    /**
+    * Loops value inside range.
+    */
+    function loop(val, min, max){
+        return val < min? max : (val > max? min : val);
+    }
+
+    module.exports = loop;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/map.js
new file mode 100644 (file)
index 0000000..96c4b78
--- /dev/null
@@ -0,0 +1,11 @@
+var lerp = require('./lerp');
+var norm = require('./norm');
+    /**
+    * Maps a number from one scale to another.
+    * @example map(3, 0, 4, -1, 1) -> 0.5
+    */
+    function map(val, min1, max1, min2, max2){
+        return lerp( norm(val, min1, max1), min2, max2 );
+    }
+    module.exports = map;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/norm.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/norm.js
new file mode 100644 (file)
index 0000000..8ee53d8
--- /dev/null
@@ -0,0 +1,13 @@
+
+    /**
+    * Gets normalized ratio of value inside range.
+    */
+    function norm(val, min, max){
+        if (val < min || val > max) {
+            throw new RangeError('value (' + val + ') must be between ' + min + ' and ' + max);
+        }
+
+        return val === max ? 1 : (val - min) / (max - min);
+    }
+    module.exports = norm;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/round.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/math/round.js
new file mode 100644 (file)
index 0000000..d108e6c
--- /dev/null
@@ -0,0 +1,12 @@
+
+    /**
+     * Round number to a specific radix
+     */
+    function round(value, radix){
+        radix = radix || 1; // default round 1
+        return Math.round(value / radix) * radix;
+    }
+
+    module.exports = round;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number.js
new file mode 100644 (file)
index 0000000..ba7034a
--- /dev/null
@@ -0,0 +1,25 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'MAX_INT' : require('./number/MAX_INT'),
+    'MAX_SAFE_INTEGER' : require('./number/MAX_SAFE_INTEGER'),
+    'MAX_UINT' : require('./number/MAX_UINT'),
+    'MIN_INT' : require('./number/MIN_INT'),
+    'abbreviate' : require('./number/abbreviate'),
+    'currencyFormat' : require('./number/currencyFormat'),
+    'enforcePrecision' : require('./number/enforcePrecision'),
+    'isNaN' : require('./number/isNaN'),
+    'nth' : require('./number/nth'),
+    'ordinal' : require('./number/ordinal'),
+    'pad' : require('./number/pad'),
+    'rol' : require('./number/rol'),
+    'ror' : require('./number/ror'),
+    'sign' : require('./number/sign'),
+    'toInt' : require('./number/toInt'),
+    'toUInt' : require('./number/toUInt'),
+    'toUInt31' : require('./number/toUInt31')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_INT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_INT.js
new file mode 100644 (file)
index 0000000..1d6f0e4
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Maximum 32-bit signed integer value. (2^31 - 1)
+ */
+
+    module.exports = 2147483647;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_SAFE_INTEGER.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_SAFE_INTEGER.js
new file mode 100644 (file)
index 0000000..b13e538
--- /dev/null
@@ -0,0 +1,7 @@
+
+
+    // maximum safe integer (Math.pow(2, 53) - 1)
+    // see: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer
+    module.exports = 9007199254740991;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_UINT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MAX_UINT.js
new file mode 100644 (file)
index 0000000..700da0f
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Maximum 32-bit unsigned integet value (2^32 - 1)
+ */
+
+    module.exports = 4294967295;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MIN_INT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/MIN_INT.js
new file mode 100644 (file)
index 0000000..b34ab2c
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Minimum 32-bit signed integer value (-2^31).
+ */
+
+    module.exports = -2147483648;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/abbreviate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/abbreviate.js
new file mode 100644 (file)
index 0000000..dd6716b
--- /dev/null
@@ -0,0 +1,35 @@
+var enforcePrecision = require('./enforcePrecision');
+
+    var _defaultDict = {
+        thousand : 'K',
+        million : 'M',
+        billion : 'B'
+    };
+
+    /**
+     * Abbreviate number if bigger than 1000. (eg: 2.5K, 17.5M, 3.4B, ...)
+     */
+    function abbreviateNumber(val, nDecimals, dict){
+        nDecimals = nDecimals != null? nDecimals : 1;
+        dict = dict || _defaultDict;
+        val = enforcePrecision(val, nDecimals);
+
+        var str, mod;
+
+        if (val < 1000000) {
+            mod = enforcePrecision(val / 1000, nDecimals);
+            // might overflow to next scale during rounding
+            str = mod < 1000? mod + dict.thousand : 1 + dict.million;
+        } else if (val < 1000000000) {
+            mod = enforcePrecision(val / 1000000, nDecimals);
+            str = mod < 1000? mod + dict.million : 1 + dict.billion;
+        } else {
+            str = enforcePrecision(val / 1000000000, nDecimals) + dict.billion;
+        }
+
+        return str;
+    }
+
+    module.exports = abbreviateNumber;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/currencyFormat.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/currencyFormat.js
new file mode 100644 (file)
index 0000000..c85a668
--- /dev/null
@@ -0,0 +1,27 @@
+var toNumber = require('../lang/toNumber');
+
+    /**
+     * Converts number into currency format
+     */
+    function currencyFormat(val, nDecimalDigits, decimalSeparator, thousandsSeparator) {
+        val = toNumber(val);
+        nDecimalDigits = nDecimalDigits == null? 2 : nDecimalDigits;
+        decimalSeparator = decimalSeparator == null? '.' : decimalSeparator;
+        thousandsSeparator = thousandsSeparator == null? ',' : thousandsSeparator;
+
+        //can't use enforce precision since it returns a number and we are
+        //doing a RegExp over the string
+        var fixed = val.toFixed(nDecimalDigits),
+            //separate begin [$1], middle [$2] and decimal digits [$4]
+            parts = new RegExp('^(-?\\d{1,3})((?:\\d{3})+)(\\.(\\d{'+ nDecimalDigits +'}))?$').exec( fixed );
+
+        if(parts){ //val >= 1000 || val <= -1000
+            return parts[1] + parts[2].replace(/\d{3}/g, thousandsSeparator + '$&') + (parts[4] ? decimalSeparator + parts[4] : '');
+        }else{
+            return fixed.replace('.', decimalSeparator);
+        }
+    }
+
+    module.exports = currencyFormat;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/enforcePrecision.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/enforcePrecision.js
new file mode 100644 (file)
index 0000000..3d3b2d4
--- /dev/null
@@ -0,0 +1,12 @@
+var toNumber = require('../lang/toNumber');
+    /**
+     * Enforce a specific amount of decimal digits and also fix floating
+     * point rounding issues.
+     */
+    function enforcePrecision(val, nDecimalDigits){
+        val = toNumber(val);
+        var pow = Math.pow(10, nDecimalDigits);
+        return +(Math.round(val * pow) / pow).toFixed(nDecimalDigits);
+    }
+    module.exports = enforcePrecision;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/isNaN.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/isNaN.js
new file mode 100644 (file)
index 0000000..3799f3b
--- /dev/null
@@ -0,0 +1,14 @@
+
+
+    /**
+     * ES6 Number.isNaN
+     * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isNaN
+     */
+    function isNaN(val){
+        // jshint eqeqeq:false
+        return typeof val === 'number' && val != val;
+    }
+
+    module.exports = isNaN;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/nth.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/nth.js
new file mode 100644 (file)
index 0000000..43ffb21
--- /dev/null
@@ -0,0 +1,25 @@
+
+
+    /**
+     * Returns "nth" of number (1 = "st", 2 = "nd", 3 = "rd", 4..10 = "th", ...)
+     */
+    function nth(i) {
+        var t = (i % 100);
+        if (t >= 10 && t <= 20) {
+            return 'th';
+        }
+        switch(i % 10) {
+            case 1:
+                return 'st';
+            case 2:
+                return 'nd';
+            case 3:
+                return 'rd';
+            default:
+                return 'th';
+        }
+    }
+
+    module.exports = nth;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ordinal.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ordinal.js
new file mode 100644 (file)
index 0000000..939a0fa
--- /dev/null
@@ -0,0 +1,14 @@
+var toInt = require('./toInt');
+var nth = require('./nth');
+
+    /**
+     * converts number into ordinal form (1st, 2nd, 3rd, 4th, ...)
+     */
+    function ordinal(n){
+       n = toInt(n);
+       return n + nth(n);
+    }
+
+    module.exports = ordinal;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/pad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/pad.js
new file mode 100644 (file)
index 0000000..1f83af4
--- /dev/null
@@ -0,0 +1,14 @@
+var lpad = require('../string/lpad');
+var toNumber = require('../lang/toNumber');
+
+    /**
+     * Add padding zeros if n.length < minLength.
+     */
+    function pad(n, minLength, char){
+        n = toNumber(n);
+        return lpad(''+ n, minLength, char || '0');
+    }
+
+    module.exports = pad;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/rol.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/rol.js
new file mode 100644 (file)
index 0000000..ecd58da
--- /dev/null
@@ -0,0 +1,10 @@
+
+    /**
+     * Bitwise circular shift left
+     * http://en.wikipedia.org/wiki/Circular_shift
+     */
+    function rol(val, shift){
+        return (val << shift) | (val >> (32 - shift));
+    }
+    module.exports = rol;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ror.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/ror.js
new file mode 100644 (file)
index 0000000..2eda81d
--- /dev/null
@@ -0,0 +1,10 @@
+
+    /**
+     * Bitwise circular shift right
+     * http://en.wikipedia.org/wiki/Circular_shift
+     */
+    function ror(val, shift){
+        return (val >> shift) | (val << (32 - shift));
+    }
+    module.exports = ror;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/sign.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/sign.js
new file mode 100644 (file)
index 0000000..7f9a1e2
--- /dev/null
@@ -0,0 +1,15 @@
+var toNumber = require('../lang/toNumber');
+
+    /**
+     * Get sign of the value.
+     */
+    function sign(val) {
+        var num = toNumber(val);
+        if (num === 0) return num; // +0 and +0 === 0
+        if (isNaN(num)) return num; // NaN
+        return num < 0? -1 : 1;
+    }
+
+    module.exports = sign;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toInt.js
new file mode 100644 (file)
index 0000000..72fd7de
--- /dev/null
@@ -0,0 +1,17 @@
+
+
+    /**
+     * "Convert" value into an 32-bit integer.
+     * Works like `Math.floor` if val > 0 and `Math.ceil` if val < 0.
+     * IMPORTANT: val will wrap at 2^31 and -2^31.
+     * Perf tests: http://jsperf.com/vs-vs-parseint-bitwise-operators/7
+     */
+    function toInt(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return ~~val;
+    }
+
+    module.exports = toInt;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt.js
new file mode 100644 (file)
index 0000000..d279656
--- /dev/null
@@ -0,0 +1,15 @@
+
+
+    /**
+     * "Convert" value into a 32-bit unsigned integer.
+     * IMPORTANT: Value will wrap at 2^32.
+     */
+    function toUInt(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return val >>> 0;
+    }
+
+    module.exports = toUInt;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt31.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/number/toUInt31.js
new file mode 100644 (file)
index 0000000..6cd3bb5
--- /dev/null
@@ -0,0 +1,15 @@
+var MAX_INT = require('./MAX_INT');
+
+    /**
+     * "Convert" value into an 31-bit unsigned integer (since 1 bit is used for sign).
+     * IMPORTANT: value wil wrap at 2^31, if negative will return 0.
+     */
+    function toUInt31(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return (val <= 0)? 0 : (val > MAX_INT? ~~(val % (MAX_INT + 1)) : ~~val);
+    }
+
+    module.exports = toUInt31;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object.js
new file mode 100644 (file)
index 0000000..ee1e94e
--- /dev/null
@@ -0,0 +1,44 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'bindAll' : require('./object/bindAll'),
+    'contains' : require('./object/contains'),
+    'deepFillIn' : require('./object/deepFillIn'),
+    'deepMatches' : require('./object/deepMatches'),
+    'deepMixIn' : require('./object/deepMixIn'),
+    'equals' : require('./object/equals'),
+    'every' : require('./object/every'),
+    'fillIn' : require('./object/fillIn'),
+    'filter' : require('./object/filter'),
+    'find' : require('./object/find'),
+    'flatten' : require('./object/flatten'),
+    'forIn' : require('./object/forIn'),
+    'forOwn' : require('./object/forOwn'),
+    'functions' : require('./object/functions'),
+    'get' : require('./object/get'),
+    'has' : require('./object/has'),
+    'hasOwn' : require('./object/hasOwn'),
+    'keys' : require('./object/keys'),
+    'map' : require('./object/map'),
+    'matches' : require('./object/matches'),
+    'max' : require('./object/max'),
+    'merge' : require('./object/merge'),
+    'min' : require('./object/min'),
+    'mixIn' : require('./object/mixIn'),
+    'namespace' : require('./object/namespace'),
+    'omit' : require('./object/omit'),
+    'pick' : require('./object/pick'),
+    'pluck' : require('./object/pluck'),
+    'reduce' : require('./object/reduce'),
+    'reject' : require('./object/reject'),
+    'result' : require('./object/result'),
+    'set' : require('./object/set'),
+    'size' : require('./object/size'),
+    'some' : require('./object/some'),
+    'unset' : require('./object/unset'),
+    'values' : require('./object/values')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/bindAll.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/bindAll.js
new file mode 100644 (file)
index 0000000..c8a2034
--- /dev/null
@@ -0,0 +1,19 @@
+var functions = require('./functions');
+var bind = require('../function/bind');
+var forEach = require('../array/forEach');
+var slice = require('../array/slice');
+
+    /**
+     * Binds methods of the object to be run in it's own context.
+     */
+    function bindAll(obj, rest_methodNames){
+        var keys = arguments.length > 1?
+                    slice(arguments, 1) : functions(obj);
+        forEach(keys, function(key){
+            obj[key] = bind(obj[key], obj);
+        });
+    }
+
+    module.exports = bindAll;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/contains.js
new file mode 100644 (file)
index 0000000..8076e2c
--- /dev/null
@@ -0,0 +1,13 @@
+var some = require('./some');
+
+    /**
+     * Check if object contains value
+     */
+    function contains(obj, needle) {
+        return some(obj, function(val) {
+            return (val === needle);
+        });
+    }
+    module.exports = contains;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepFillIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepFillIn.js
new file mode 100644 (file)
index 0000000..6568ea8
--- /dev/null
@@ -0,0 +1,33 @@
+var forOwn = require('./forOwn');
+var isPlainObject = require('../lang/isPlainObject');
+
+    /**
+     * Deeply copy missing properties in the target from the defaults.
+     */
+    function deepFillIn(target, defaults){
+        var i = 0,
+            n = arguments.length,
+            obj;
+
+        while(++i < n) {
+            obj = arguments[i];
+            if (obj) {
+                // jshint loopfunc: true
+                forOwn(obj, function(newValue, key) {
+                    var curValue = target[key];
+                    if (curValue == null) {
+                        target[key] = newValue;
+                    } else if (isPlainObject(curValue) &&
+                               isPlainObject(newValue)) {
+                        deepFillIn(curValue, newValue);
+                    }
+                });
+            }
+        }
+
+        return target;
+    }
+
+    module.exports = deepFillIn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepMixIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/deepMixIn.js
new file mode 100644 (file)
index 0000000..a97e98d
--- /dev/null
@@ -0,0 +1,34 @@
+var forOwn = require('./forOwn');
+var isPlainObject = require('../lang/isPlainObject');
+
+    /**
+     * Mixes objects into the target object, recursively mixing existing child
+     * objects.
+     */
+    function deepMixIn(target, objects) {
+        var i = 0,
+            n = arguments.length,
+            obj;
+
+        while(++i < n){
+            obj = arguments[i];
+            if (obj) {
+                forOwn(obj, copyProp, target);
+            }
+        }
+
+        return target;
+    }
+
+    function copyProp(val, key) {
+        var existing = this[key];
+        if (isPlainObject(val) && isPlainObject(existing)) {
+            deepMixIn(existing, val);
+        } else {
+            this[key] = val;
+        }
+    }
+
+    module.exports = deepMixIn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/equals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/equals.js
new file mode 100644 (file)
index 0000000..7c89ab8
--- /dev/null
@@ -0,0 +1,33 @@
+var hasOwn = require('./hasOwn');
+var every = require('./every');
+var isObject = require('../lang/isObject');
+var is = require('../lang/is');
+
+    // Makes a function to compare the object values from the specified compare
+    // operation callback.
+    function makeCompare(callback) {
+        return function(value, key) {
+            return hasOwn(this, key) && callback(value, this[key]);
+        };
+    }
+
+    function checkProperties(value, key) {
+        return hasOwn(this, key);
+    }
+
+    /**
+     * Checks if two objects have the same keys and values.
+     */
+    function equals(a, b, callback) {
+        callback = callback || is;
+
+        if (!isObject(a) || !isObject(b)) {
+            return callback(a, b);
+        }
+
+        return (every(a, makeCompare(callback), b) &&
+                every(b, checkProperties, a));
+    }
+
+    module.exports = equals;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/every.js
new file mode 100644 (file)
index 0000000..01106e5
--- /dev/null
@@ -0,0 +1,23 @@
+var forOwn = require('./forOwn');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Object every
+     */
+    function every(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = true;
+        forOwn(obj, function(val, key) {
+            // we consider any falsy values as "false" on purpose so shorthand
+            // syntax can be used to check property existence
+            if (!callback(val, key, obj)) {
+                result = false;
+                return false; // break
+            }
+        });
+        return result;
+    }
+
+    module.exports = every;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/fillIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/fillIn.js
new file mode 100644 (file)
index 0000000..4010e28
--- /dev/null
@@ -0,0 +1,21 @@
+var forEach = require('../array/forEach');
+var slice = require('../array/slice');
+var forOwn = require('./forOwn');
+
+    /**
+     * Copy missing properties in the obj from the defaults.
+     */
+    function fillIn(obj, var_defaults){
+        forEach(slice(arguments, 1), function(base){
+            forOwn(base, function(val, key){
+                if (obj[key] == null) {
+                    obj[key] = val;
+                }
+            });
+        });
+        return obj;
+    }
+
+    module.exports = fillIn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/filter.js
new file mode 100644 (file)
index 0000000..3a83a92
--- /dev/null
@@ -0,0 +1,20 @@
+var forOwn = require('./forOwn');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Creates a new object with all the properties where the callback returns
+     * true.
+     */
+    function filterValues(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var output = {};
+        forOwn(obj, function(value, key, obj) {
+            if (callback(value, key, obj)) {
+                output[key] = value;
+            }
+        });
+
+        return output;
+    }
+    module.exports = filterValues;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/find.js
new file mode 100644 (file)
index 0000000..d39c070
--- /dev/null
@@ -0,0 +1,21 @@
+var some = require('./some');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Returns first item that matches criteria
+     */
+    function find(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result;
+        some(obj, function(value, key, obj) {
+            if (callback(value, key, obj)) {
+                result = value;
+                return true; //break
+            }
+        });
+        return result;
+    }
+
+    module.exports = find;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/flatten.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/flatten.js
new file mode 100644 (file)
index 0000000..a356f15
--- /dev/null
@@ -0,0 +1,38 @@
+var forOwn = require('./forOwn');
+var isPlainObject = require('../lang/isPlainObject');
+
+    /*
+     * Helper function to flatten to a destination object.
+     * Used to remove the need to create intermediate objects while flattening.
+     */
+    function flattenTo(obj, result, prefix, level) {
+        forOwn(obj, function (value, key) {
+            var nestedPrefix = prefix ? prefix + '.' + key : key;
+
+            if (level !== 0 && isPlainObject(value)) {
+                flattenTo(value, result, nestedPrefix, level - 1);
+            } else {
+                result[nestedPrefix] = value;
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively flattens an object.
+     * A new object containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(obj, level) {
+        if (obj == null) {
+            return {};
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(obj, {}, '', level);
+    }
+
+    module.exports = flatten;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forIn.js
new file mode 100644 (file)
index 0000000..7fe96ce
--- /dev/null
@@ -0,0 +1,76 @@
+var hasOwn = require('./hasOwn');
+
+    var _hasDontEnumBug,
+        _dontEnums;
+
+    function checkDontEnum(){
+        _dontEnums = [
+                'toString',
+                'toLocaleString',
+                'valueOf',
+                'hasOwnProperty',
+                'isPrototypeOf',
+                'propertyIsEnumerable',
+                'constructor'
+            ];
+
+        _hasDontEnumBug = true;
+
+        for (var key in {'toString': null}) {
+            _hasDontEnumBug = false;
+        }
+    }
+
+    /**
+     * Similar to Array/forEach but works over object properties and fixes Don't
+     * Enum bug on IE.
+     * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+     */
+    function forIn(obj, fn, thisObj){
+        var key, i = 0;
+        // no need to check if argument is a real object that way we can use
+        // it for arrays, functions, date, etc.
+
+        //post-pone check till needed
+        if (_hasDontEnumBug == null) checkDontEnum();
+
+        for (key in obj) {
+            if (exec(fn, obj, key, thisObj) === false) {
+                break;
+            }
+        }
+
+
+        if (_hasDontEnumBug) {
+            var ctor = obj.constructor,
+                isProto = !!ctor && obj === ctor.prototype;
+
+            while (key = _dontEnums[i++]) {
+                // For constructor, if it is a prototype object the constructor
+                // is always non-enumerable unless defined otherwise (and
+                // enumerated above).  For non-prototype objects, it will have
+                // to be defined on this object, since it cannot be defined on
+                // any prototype objects.
+                //
+                // For other [[DontEnum]] properties, check if the value is
+                // different than Object prototype value.
+                if (
+                    (key !== 'constructor' ||
+                        (!isProto && hasOwn(obj, key))) &&
+                    obj[key] !== Object.prototype[key]
+                ) {
+                    if (exec(fn, obj, key, thisObj) === false) {
+                        break;
+                    }
+                }
+            }
+        }
+    }
+
+    function exec(fn, obj, key, thisObj){
+        return fn.call(thisObj, obj[key], key, obj);
+    }
+
+    module.exports = forIn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forOwn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/forOwn.js
new file mode 100644 (file)
index 0000000..5f2dfbf
--- /dev/null
@@ -0,0 +1,19 @@
+var hasOwn = require('./hasOwn');
+var forIn = require('./forIn');
+
+    /**
+     * Similar to Array/forEach but works over object properties and fixes Don't
+     * Enum bug on IE.
+     * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+     */
+    function forOwn(obj, fn, thisObj){
+        forIn(obj, function(val, key){
+            if (hasOwn(obj, key)) {
+                return fn.call(thisObj, obj[key], key, obj);
+            }
+        });
+    }
+
+    module.exports = forOwn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/functions.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/functions.js
new file mode 100644 (file)
index 0000000..f571797
--- /dev/null
@@ -0,0 +1,18 @@
+var forIn = require('./forIn');
+
+    /**
+     * return a list of all enumerable properties that have function values
+     */
+    function functions(obj){
+        var keys = [];
+        forIn(obj, function(val, key){
+            if (typeof val === 'function'){
+                keys.push(key);
+            }
+        });
+        return keys.sort();
+    }
+
+    module.exports = functions;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/get.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/get.js
new file mode 100644 (file)
index 0000000..9c64e21
--- /dev/null
@@ -0,0 +1,20 @@
+var isPrimitive = require('../lang/isPrimitive');
+
+    /**
+     * get "nested" object property
+     */
+    function get(obj, prop){
+        var parts = prop.split('.'),
+            last = parts.pop();
+
+        while (prop = parts.shift()) {
+            obj = obj[prop];
+            if (obj == null) return;
+        }
+
+        return obj[last];
+    }
+
+    module.exports = get;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/has.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/has.js
new file mode 100644 (file)
index 0000000..ca9f228
--- /dev/null
@@ -0,0 +1,15 @@
+var get = require('./get');
+
+    var UNDEF;
+
+    /**
+     * Check if object has nested property.
+     */
+    function has(obj, prop){
+        return get(obj, prop) !== UNDEF;
+    }
+
+    module.exports = has;
+
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/hasOwn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/hasOwn.js
new file mode 100644 (file)
index 0000000..7e3c82a
--- /dev/null
@@ -0,0 +1,12 @@
+
+
+    /**
+     * Safer Object.hasOwnProperty
+     */
+     function hasOwn(obj, prop){
+         return Object.prototype.hasOwnProperty.call(obj, prop);
+     }
+
+     module.exports = hasOwn;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/keys.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/keys.js
new file mode 100644 (file)
index 0000000..dd2f4f5
--- /dev/null
@@ -0,0 +1,16 @@
+var forOwn = require('./forOwn');
+
+    /**
+     * Get object keys
+     */
+     var keys = Object.keys || function (obj) {
+            var keys = [];
+            forOwn(obj, function(val, key){
+                keys.push(key);
+            });
+            return keys;
+        };
+
+    module.exports = keys;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/map.js
new file mode 100644 (file)
index 0000000..dd449a7
--- /dev/null
@@ -0,0 +1,18 @@
+var forOwn = require('./forOwn');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Creates a new object where all the values are the result of calling
+     * `callback`.
+     */
+    function mapValues(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var output = {};
+        forOwn(obj, function(val, key, obj) {
+            output[key] = callback(val, key, obj);
+        });
+
+        return output;
+    }
+    module.exports = mapValues;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/matches.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/matches.js
new file mode 100644 (file)
index 0000000..6074faa
--- /dev/null
@@ -0,0 +1,20 @@
+var forOwn = require('./forOwn');
+
+    /**
+     * checks if a object contains all given properties/values
+     */
+    function matches(target, props){
+        // can't use "object/every" because of circular dependency
+        var result = true;
+        forOwn(props, function(val, key){
+            if (target[key] !== val) {
+                // break loop at first difference
+                return (result = false);
+            }
+        });
+        return result;
+    }
+
+    module.exports = matches;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/max.js
new file mode 100644 (file)
index 0000000..3e8e92c
--- /dev/null
@@ -0,0 +1,12 @@
+var arrMax = require('../array/max');
+var values = require('./values');
+
+    /**
+     * Returns maximum value inside object.
+     */
+    function max(obj, compareFn) {
+        return arrMax(values(obj), compareFn);
+    }
+
+    module.exports = max;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/merge.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/merge.js
new file mode 100644 (file)
index 0000000..6961f60
--- /dev/null
@@ -0,0 +1,40 @@
+var hasOwn = require('./hasOwn');
+var deepClone = require('../lang/deepClone');
+var isObject = require('../lang/isObject');
+
+    /**
+     * Deep merge objects.
+     */
+    function merge() {
+        var i = 1,
+            key, val, obj, target;
+
+        // make sure we don't modify source element and it's properties
+        // objects are passed by reference
+        target = deepClone( arguments[0] );
+
+        while (obj = arguments[i++]) {
+            for (key in obj) {
+                if ( ! hasOwn(obj, key) ) {
+                    continue;
+                }
+
+                val = obj[key];
+
+                if ( isObject(val) && isObject(target[key]) ){
+                    // inception, deep merge objects
+                    target[key] = merge(target[key], val);
+                } else {
+                    // make sure arrays, regexp, date, objects are cloned
+                    target[key] = deepClone(val);
+                }
+
+            }
+        }
+
+        return target;
+    }
+
+    module.exports = merge;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/min.js
new file mode 100644 (file)
index 0000000..e1e6697
--- /dev/null
@@ -0,0 +1,12 @@
+var arrMin = require('../array/min');
+var values = require('./values');
+
+    /**
+     * Returns minimum value inside object.
+     */
+    function min(obj, iterator) {
+        return arrMin(values(obj), iterator);
+    }
+
+    module.exports = min;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/mixIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/mixIn.js
new file mode 100644 (file)
index 0000000..55ec8fd
--- /dev/null
@@ -0,0 +1,28 @@
+var forOwn = require('./forOwn');
+
+    /**
+    * Combine properties from all the objects into first one.
+    * - This method affects target object in place, if you want to create a new Object pass an empty object as first param.
+    * @param {object} target    Target Object
+    * @param {...object} objects    Objects to be combined (0...n objects).
+    * @return {object} Target Object.
+    */
+    function mixIn(target, objects){
+        var i = 0,
+            n = arguments.length,
+            obj;
+        while(++i < n){
+            obj = arguments[i];
+            if (obj != null) {
+                forOwn(obj, copyProp, target);
+            }
+        }
+        return target;
+    }
+
+    function copyProp(val, key){
+        this[key] = val;
+    }
+
+    module.exports = mixIn;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/namespace.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/namespace.js
new file mode 100644 (file)
index 0000000..c6e79f6
--- /dev/null
@@ -0,0 +1,19 @@
+var forEach = require('../array/forEach');
+
+    /**
+     * Create nested object if non-existent
+     */
+    function namespace(obj, path){
+        if (!path) return obj;
+        forEach(path.split('.'), function(key){
+            if (!obj[key]) {
+                obj[key] = {};
+            }
+            obj = obj[key];
+        });
+        return obj;
+    }
+
+    module.exports = namespace;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/omit.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/omit.js
new file mode 100644 (file)
index 0000000..7a5ef05
--- /dev/null
@@ -0,0 +1,21 @@
+var slice = require('../array/slice');
+var contains = require('../array/contains');
+
+    /**
+     * Return a copy of the object, filtered to only contain properties except the blacklisted keys.
+     */
+    function omit(obj, var_keys){
+        var keys = typeof arguments[1] !== 'string'? arguments[1] : slice(arguments, 1),
+            out = {};
+
+        for (var property in obj) {
+            if (obj.hasOwnProperty(property) && !contains(keys, property)) {
+                out[property] = obj[property];
+            }
+        }
+        return out;
+    }
+
+    module.exports = omit;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pick.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pick.js
new file mode 100644 (file)
index 0000000..da5a564
--- /dev/null
@@ -0,0 +1,18 @@
+var slice = require('../array/slice');
+
+    /**
+     * Return a copy of the object, filtered to only have values for the whitelisted keys.
+     */
+    function pick(obj, var_keys){
+        var keys = typeof arguments[1] !== 'string'? arguments[1] : slice(arguments, 1),
+            out = {},
+            i = 0, key;
+        while (key = keys[i++]) {
+            out[key] = obj[key];
+        }
+        return out;
+    }
+
+    module.exports = pick;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/pluck.js
new file mode 100644 (file)
index 0000000..e844df4
--- /dev/null
@@ -0,0 +1,13 @@
+var map = require('./map');
+var prop = require('../function/prop');
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(obj, propName){
+        return map(obj, prop(propName));
+    }
+
+    module.exports = pluck;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reduce.js
new file mode 100644 (file)
index 0000000..6f19a3a
--- /dev/null
@@ -0,0 +1,29 @@
+var forOwn = require('./forOwn');
+var size = require('./size');
+
+    /**
+     * Object reduce
+     */
+    function reduce(obj, callback, memo, thisObj) {
+        var initial = arguments.length > 2;
+
+        if (!size(obj) && !initial) {
+            throw new Error('reduce of empty object with no initial value');
+        }
+
+        forOwn(obj, function(value, key, list) {
+            if (!initial) {
+                memo = value;
+                initial = true;
+            }
+            else {
+                memo = callback.call(thisObj, memo, value, key, list);
+            }
+        });
+
+        return memo;
+    }
+
+    module.exports = reduce;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/reject.js
new file mode 100644 (file)
index 0000000..7464379
--- /dev/null
@@ -0,0 +1,16 @@
+var filter = require('./filter');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Object reject
+     */
+    function reject(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        return filter(obj, function(value, index, obj) {
+            return !callback(value, index, obj);
+        }, thisObj);
+    }
+
+    module.exports = reject;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/result.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/result.js
new file mode 100644 (file)
index 0000000..0efdd41
--- /dev/null
@@ -0,0 +1,14 @@
+var isFunction = require('../lang/isFunction');
+
+    function result(obj, prop) {
+        var property = obj[prop];
+
+        if(property === undefined) {
+            return;
+        }
+
+        return isFunction(property) ? property.call(obj) : property;
+    }
+
+    module.exports = result;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/set.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/set.js
new file mode 100644 (file)
index 0000000..9b3cdc4
--- /dev/null
@@ -0,0 +1,17 @@
+var namespace = require('./namespace');
+
+    /**
+     * set "nested" object property
+     */
+    function set(obj, prop, val){
+        var parts = (/^(.+)\.(.+)$/).exec(prop);
+        if (parts){
+            namespace(obj, parts[1])[parts[2]] = val;
+        } else {
+            obj[prop] = val;
+        }
+    }
+
+    module.exports = set;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/size.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/size.js
new file mode 100644 (file)
index 0000000..9788595
--- /dev/null
@@ -0,0 +1,16 @@
+var forOwn = require('./forOwn');
+
+    /**
+     * Get object size
+     */
+    function size(obj) {
+        var count = 0;
+        forOwn(obj, function(){
+            count++;
+        });
+        return count;
+    }
+
+    module.exports = size;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/some.js
new file mode 100644 (file)
index 0000000..384c6f3
--- /dev/null
@@ -0,0 +1,21 @@
+var forOwn = require('./forOwn');
+var makeIterator = require('../function/makeIterator_');
+
+    /**
+     * Object some
+     */
+    function some(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = false;
+        forOwn(obj, function(val, key) {
+            if (callback(val, key, obj)) {
+                result = true;
+                return false; // break
+            }
+        });
+        return result;
+    }
+
+    module.exports = some;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/unset.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/unset.js
new file mode 100644 (file)
index 0000000..343bca0
--- /dev/null
@@ -0,0 +1,23 @@
+var has = require('./has');
+
+    /**
+     * Unset object property.
+     */
+    function unset(obj, prop){
+        if (has(obj, prop)) {
+            var parts = prop.split('.'),
+                last = parts.pop();
+            while (prop = parts.shift()) {
+                obj = obj[prop];
+            }
+            return (delete obj[last]);
+
+        } else {
+            // if property doesn't exist treat as deleted
+            return true;
+        }
+    }
+
+    module.exports = unset;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/values.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/object/values.js
new file mode 100644 (file)
index 0000000..265a693
--- /dev/null
@@ -0,0 +1,16 @@
+var forOwn = require('./forOwn');
+
+    /**
+     * Get object values
+     */
+    function values(obj) {
+        var vals = [];
+        forOwn(obj, function(val, key){
+            vals.push(val);
+        });
+        return vals;
+    }
+
+    module.exports = values;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/package.json b/wrt/build/node_modules/rocambole-indent/node_modules/mout/package.json
new file mode 100644 (file)
index 0000000..b510678
--- /dev/null
@@ -0,0 +1,188 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "mout@^0.11.0",
+        "scope": null,
+        "escapedName": "mout",
+        "name": "mout",
+        "rawSpec": "^0.11.0",
+        "spec": ">=0.11.0 <0.12.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole-indent"
+    ]
+  ],
+  "_from": "mout@>=0.11.0 <0.12.0",
+  "_id": "mout@0.11.1",
+  "_inCache": true,
+  "_location": "/rocambole-indent/mout",
+  "_nodeVersion": "4.2.1",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.14.7",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "mout@^0.11.0",
+    "scope": null,
+    "escapedName": "mout",
+    "name": "mout",
+    "rawSpec": "^0.11.0",
+    "spec": ">=0.11.0 <0.12.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/rocambole-indent"
+  ],
+  "_resolved": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz",
+  "_shasum": "ba3611df5f0e5b1ffbfd01166b8f02d1f5fa2b99",
+  "_shrinkwrap": null,
+  "_spec": "mout@^0.11.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole-indent",
+  "bugs": {
+    "url": "https://github.com/mout/mout/issues/"
+  },
+  "contributors": [
+    {
+      "name": "Adam Nowotny"
+    },
+    {
+      "name": "André Cruz",
+      "email": "amdfcruz@gmail.com"
+    },
+    {
+      "name": "Conrad Zimmerman",
+      "url": "http://www.conradz.com"
+    },
+    {
+      "name": "Friedemann Altrock",
+      "email": "frodenius@gmail.com"
+    },
+    {
+      "name": "Igor Almeida",
+      "email": "igor.p.almeida@gmail.com"
+    },
+    {
+      "name": "Jarrod Overson",
+      "url": "http://jarrodoverson.com"
+    },
+    {
+      "name": "Miller Medeiros",
+      "email": "contact@millermedeiros.com",
+      "url": "http://blog.millermedeiros.com"
+    },
+    {
+      "name": "Mathias Paumgarten",
+      "email": "mail@mathias-paumgarten.com"
+    },
+    {
+      "name": "Zach Shipley"
+    }
+  ],
+  "dependencies": {},
+  "description": "Modular Utilities",
+  "devDependencies": {
+    "commander": "~1.0.5",
+    "handlebars": "~1.0.6",
+    "istanbul": "~0.1.27",
+    "jasmine-node": "~1.14.5",
+    "jshint": "2.x",
+    "mdoc": "~0.3.2",
+    "nodefy": "*",
+    "regenerate": "~0.5.4",
+    "requirejs": "2.x",
+    "rimraf": "2.2.2",
+    "rocambole": "~0.2.3"
+  },
+  "directories": {
+    "doc": "./doc"
+  },
+  "dist": {
+    "shasum": "ba3611df5f0e5b1ffbfd01166b8f02d1f5fa2b99",
+    "tarball": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz"
+  },
+  "gitHead": "588be08f87ee06cc0e14aa1fdb4da3c1417949a4",
+  "homepage": "http://moutjs.com/",
+  "keywords": [
+    "utilities",
+    "functional",
+    "amd-utils",
+    "stdlib"
+  ],
+  "license": "MIT",
+  "main": "./index.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    },
+    {
+      "name": "satazor",
+      "email": "andremiguelcruz@msn.com"
+    },
+    {
+      "name": "conradz",
+      "email": "me@conradz.com"
+    },
+    {
+      "name": "mathias.paumgarten",
+      "email": "mail@mathias-paumgarten.com"
+    }
+  ],
+  "name": "mout",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/mout/mout.git"
+  },
+  "scripts": {
+    "pretest": "node build pkg",
+    "test": "istanbul test tests/runner.js --hook-run-in-context"
+  },
+  "testling": {
+    "preprocess": "node build testling",
+    "browsers": {
+      "ie": [
+        7,
+        8,
+        9,
+        10
+      ],
+      "firefox": [
+        17,
+        "nightly"
+      ],
+      "chrome": [
+        23,
+        "canary"
+      ],
+      "opera": [
+        12,
+        "next"
+      ],
+      "safari": [
+        5.1,
+        6
+      ],
+      "iphone": [
+        6
+      ],
+      "ipad": [
+        6
+      ]
+    },
+    "scripts": [
+      "tests/lib/jasmine/jasmine.js",
+      "tests/lib/jasmine/jasmine.async.js",
+      "tests/lib/jasmine/jasmine-tap.js",
+      "tests/lib/requirejs/require.js",
+      "tests/testling/src.js",
+      "tests/testling/specs.js",
+      "tests/runner.js"
+    ]
+  },
+  "version": "0.11.1"
+}
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString.js
new file mode 100644 (file)
index 0000000..22685a7
--- /dev/null
@@ -0,0 +1,15 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'contains' : require('./queryString/contains'),
+    'decode' : require('./queryString/decode'),
+    'encode' : require('./queryString/encode'),
+    'getParam' : require('./queryString/getParam'),
+    'getQuery' : require('./queryString/getQuery'),
+    'parse' : require('./queryString/parse'),
+    'setParam' : require('./queryString/setParam')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/contains.js
new file mode 100644 (file)
index 0000000..da678cf
--- /dev/null
@@ -0,0 +1,12 @@
+var getQuery = require('./getQuery');
+
+    /**
+     * Checks if query string contains parameter.
+     */
+    function contains(url, paramName) {
+        var regex = new RegExp('(\\?|&)'+ paramName +'=', 'g'); //matches `?param=` or `&param=`
+        return regex.test(getQuery(url));
+    }
+
+    module.exports = contains;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/decode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/decode.js
new file mode 100644 (file)
index 0000000..c1b2cab
--- /dev/null
@@ -0,0 +1,36 @@
+var typecast = require('../string/typecast');
+var isArray = require('../lang/isArray');
+var hasOwn = require('../object/hasOwn');
+
+    /**
+     * Decode query string into an object of keys => vals.
+     */
+    function decode(queryStr, shouldTypecast) {
+        var queryArr = (queryStr || '').replace('?', '').split('&'),
+            reg = /([^=]+)=(.+)/,
+            i = -1,
+            obj = {},
+            equalIndex, cur, pValue, pName;
+
+        while ((cur = queryArr[++i])) {
+            equalIndex = cur.indexOf('=');
+            pName = cur.substring(0, equalIndex);
+            pValue = decodeURIComponent(cur.substring(equalIndex + 1));
+            if (shouldTypecast !== false) {
+                pValue = typecast(pValue);
+            }
+            if (hasOwn(obj, pName)){
+                if(isArray(obj[pName])){
+                    obj[pName].push(pValue);
+                } else {
+                    obj[pName] = [obj[pName], pValue];
+                }
+            } else {
+                obj[pName] = pValue;
+           }
+        }
+        return obj;
+    }
+
+    module.exports = decode;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/encode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/encode.js
new file mode 100644 (file)
index 0000000..3a4fd0a
--- /dev/null
@@ -0,0 +1,27 @@
+var forOwn = require('../object/forOwn');
+var isArray = require('../lang/isArray');
+var forEach = require('../array/forEach');
+
+    /**
+     * Encode object into a query string.
+     */
+    function encode(obj){
+        var query = [],
+            arrValues, reg;
+        forOwn(obj, function (val, key) {
+            if (isArray(val)) {
+                arrValues = key + '=';
+                reg = new RegExp('&'+key+'+=$');
+                forEach(val, function (aValue) {
+                    arrValues += encodeURIComponent(aValue) + '&' + key + '=';
+                });
+                query.push(arrValues.replace(reg, ''));
+            } else {
+               query.push(key + '=' + encodeURIComponent(val));
+            }
+        });
+        return (query.length) ? '?' + query.join('&') : '';
+    }
+
+    module.exports = encode;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getParam.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getParam.js
new file mode 100644 (file)
index 0000000..f149c3e
--- /dev/null
@@ -0,0 +1,15 @@
+var typecast = require('../string/typecast');
+var getQuery = require('./getQuery');
+
+    /**
+     * Get query parameter value.
+     */
+    function getParam(url, param, shouldTypecast){
+        var regexp = new RegExp('(\\?|&)'+ param + '=([^&]*)'), //matches `?param=value` or `&param=value`, value = $2
+            result = regexp.exec( getQuery(url) ),
+            val = (result && result[2])? result[2] : null;
+        return shouldTypecast === false? val : typecast(val);
+    }
+
+    module.exports = getParam;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getQuery.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/getQuery.js
new file mode 100644 (file)
index 0000000..62140fa
--- /dev/null
@@ -0,0 +1,13 @@
+
+
+    /**
+     * Gets full query as string with all special chars decoded.
+     */
+    function getQuery(url) {
+        url = url.replace(/#.*/, ''); //removes hash (to avoid getting hash query)
+        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
+        return (queryString)? decodeURIComponent(queryString[0].replace(/\+/g,' ')) : '';
+    }
+
+    module.exports = getQuery;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/parse.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/parse.js
new file mode 100644 (file)
index 0000000..532906c
--- /dev/null
@@ -0,0 +1,13 @@
+var decode = require('./decode');
+var getQuery = require('./getQuery');
+
+    /**
+     * Get query string, parses and decodes it.
+     */
+    function parse(url, shouldTypecast) {
+        return decode(getQuery(url), shouldTypecast);
+    }
+
+    module.exports = parse;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/setParam.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/queryString/setParam.js
new file mode 100644 (file)
index 0000000..052a9ba
--- /dev/null
@@ -0,0 +1,28 @@
+
+
+    /**
+     * Set query string parameter value
+     */
+    function setParam(url, paramName, value){
+        url = url || '';
+
+        var re = new RegExp('(\\?|&)'+ paramName +'=[^&]*' );
+        var param = paramName +'='+ encodeURIComponent( value );
+
+        if ( re.test(url) ) {
+            return url.replace(re, '$1'+ param);
+        } else {
+            if (url.indexOf('?') === -1) {
+                url += '?';
+            }
+            if (url.indexOf('=') !== -1) {
+                url += '&';
+            }
+            return url + param;
+        }
+
+    }
+
+    module.exports = setParam;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random.js
new file mode 100644 (file)
index 0000000..a924a10
--- /dev/null
@@ -0,0 +1,18 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'choice' : require('./random/choice'),
+    'guid' : require('./random/guid'),
+    'rand' : require('./random/rand'),
+    'randBit' : require('./random/randBit'),
+    'randBool' : require('./random/randBool'),
+    'randHex' : require('./random/randHex'),
+    'randInt' : require('./random/randInt'),
+    'randSign' : require('./random/randSign'),
+    'randString' : require('./random/randString'),
+    'random' : require('./random/random')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/choice.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/choice.js
new file mode 100644 (file)
index 0000000..51aa82a
--- /dev/null
@@ -0,0 +1,15 @@
+var randInt = require('./randInt');
+var isArray = require('../lang/isArray');
+
+    /**
+     * Returns a random element from the supplied arguments
+     * or from the array (if single argument is an array).
+     */
+    function choice(items) {
+        var target = (arguments.length === 1 && isArray(items))? items : arguments;
+        return target[ randInt(0, target.length - 1) ];
+    }
+
+    module.exports = choice;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/guid.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/guid.js
new file mode 100644 (file)
index 0000000..41f6edd
--- /dev/null
@@ -0,0 +1,24 @@
+var randHex = require('./randHex');
+var choice = require('./choice');
+
+  /**
+   * Returns pseudo-random guid (UUID v4)
+   * IMPORTANT: it's not totally "safe" since randHex/choice uses Math.random
+   * by default and sequences can be predicted in some cases. See the
+   * "random/random" documentation for more info about it and how to replace
+   * the default PRNG.
+   */
+  function guid() {
+    return (
+        randHex(8)+'-'+
+        randHex(4)+'-'+
+        // v4 UUID always contain "4" at this position to specify it was
+        // randomly generated
+        '4' + randHex(3) +'-'+
+        // v4 UUID always contain chars [a,b,8,9] at this position
+        choice(8, 9, 'a', 'b') + randHex(3)+'-'+
+        randHex(12)
+    );
+  }
+  module.exports = guid;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/rand.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/rand.js
new file mode 100644 (file)
index 0000000..782dec8
--- /dev/null
@@ -0,0 +1,15 @@
+var random = require('./random');
+var MIN_INT = require('../number/MIN_INT');
+var MAX_INT = require('../number/MAX_INT');
+
+    /**
+     * Returns random number inside range
+     */
+    function rand(min, max){
+        min = min == null? MIN_INT : min;
+        max = max == null? MAX_INT : max;
+        return min + (max - min) * random();
+    }
+
+    module.exports = rand;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBit.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBit.js
new file mode 100644 (file)
index 0000000..04f7aa5
--- /dev/null
@@ -0,0 +1,11 @@
+var randBool = require('./randBool');
+
+    /**
+     * Returns random bit (0 or 1)
+     */
+    function randomBit() {
+        return randBool()? 1 : 0;
+    }
+
+    module.exports = randomBit;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBool.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randBool.js
new file mode 100644 (file)
index 0000000..d3d35cb
--- /dev/null
@@ -0,0 +1,12 @@
+var random = require('./random');
+
+    /**
+     * returns a random boolean value (true or false)
+     */
+    function randBool(){
+        return random() >= 0.5;
+    }
+
+    module.exports = randBool;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randHex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randHex.js
new file mode 100644 (file)
index 0000000..d8d711c
--- /dev/null
@@ -0,0 +1,19 @@
+var choice = require('./choice');
+
+    var _chars = '0123456789abcdef'.split('');
+
+    /**
+     * Returns a random hexadecimal string
+     */
+    function randHex(size){
+        size = size && size > 0? size : 6;
+        var str = '';
+        while (size--) {
+            str += choice(_chars);
+        }
+        return str;
+    }
+
+    module.exports = randHex;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randInt.js
new file mode 100644 (file)
index 0000000..e237d96
--- /dev/null
@@ -0,0 +1,18 @@
+var MIN_INT = require('../number/MIN_INT');
+var MAX_INT = require('../number/MAX_INT');
+var rand = require('./rand');
+
+    /**
+     * Gets random integer inside range or snap to min/max values.
+     */
+    function randInt(min, max){
+        min = min == null? MIN_INT : ~~min;
+        max = max == null? MAX_INT : ~~max;
+        // can't be max + 0.5 otherwise it will round up if `rand`
+        // returns `max` causing it to overflow range.
+        // -0.5 and + 0.49 are required to avoid bias caused by rounding
+        return Math.round( rand(min - 0.5, max + 0.499999999999) );
+    }
+
+    module.exports = randInt;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randSign.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randSign.js
new file mode 100644 (file)
index 0000000..75a1a51
--- /dev/null
@@ -0,0 +1,11 @@
+var randBool = require('./randBool');
+
+    /**
+     * Returns random sign (-1 or 1)
+     */
+    function randomSign() {
+        return randBool()? 1 : -1;
+    }
+
+    module.exports = randomSign;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/randString.js
new file mode 100644 (file)
index 0000000..e3c3597
--- /dev/null
@@ -0,0 +1,27 @@
+var isNumber = require('../lang/isNumber');
+var isString = require('../lang/isString');
+var randInt = require('./randInt');
+
+    var defaultDictionary = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+
+    function randomString(length, dictionary) {
+        if(!isNumber(length) || length <= 0) {
+          length = 8;
+        }
+
+        if(!isString(dictionary) || dictionary.length < 1) {
+          dictionary = defaultDictionary;
+        }
+
+        var result = '',
+            domain = dictionary.length - 1;
+
+        while(length--) {
+          result += dictionary[randInt(0, domain)];
+        }
+        
+        return result;
+    }
+
+    module.exports = randomString;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/random.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/random/random.js
new file mode 100644 (file)
index 0000000..670a3cc
--- /dev/null
@@ -0,0 +1,18 @@
+
+
+    /**
+     * Just a wrapper to Math.random. No methods inside mout/random should call
+     * Math.random() directly so we can inject the pseudo-random number
+     * generator if needed (ie. in case we need a seeded random or a better
+     * algorithm than the native one)
+     */
+    function random(){
+        return random.get();
+    }
+
+    // we expose the method so it can be swapped if needed
+    random.get = Math.random;
+
+    module.exports = random;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array.js
new file mode 100644 (file)
index 0000000..794dcec
--- /dev/null
@@ -0,0 +1,55 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'append' : require('./array/append'),
+    'collect' : require('./array/collect'),
+    'combine' : require('./array/combine'),
+    'compact' : require('./array/compact'),
+    'contains' : require('./array/contains'),
+    'difference' : require('./array/difference'),
+    'equals' : require('./array/equals'),
+    'every' : require('./array/every'),
+    'filter' : require('./array/filter'),
+    'find' : require('./array/find'),
+    'findIndex' : require('./array/findIndex'),
+    'findLast' : require('./array/findLast'),
+    'findLastIndex' : require('./array/findLastIndex'),
+    'flatten' : require('./array/flatten'),
+    'forEach' : require('./array/forEach'),
+    'groupBy' : require('./array/groupBy'),
+    'indexOf' : require('./array/indexOf'),
+    'insert' : require('./array/insert'),
+    'intersection' : require('./array/intersection'),
+    'invoke' : require('./array/invoke'),
+    'join' : require('./array/join'),
+    'last' : require('./array/last'),
+    'lastIndexOf' : require('./array/lastIndexOf'),
+    'map' : require('./array/map'),
+    'max' : require('./array/max'),
+    'min' : require('./array/min'),
+    'pick' : require('./array/pick'),
+    'pluck' : require('./array/pluck'),
+    'range' : require('./array/range'),
+    'reduce' : require('./array/reduce'),
+    'reduceRight' : require('./array/reduceRight'),
+    'reject' : require('./array/reject'),
+    'remove' : require('./array/remove'),
+    'removeAll' : require('./array/removeAll'),
+    'reverse' : require('./array/reverse'),
+    'shuffle' : require('./array/shuffle'),
+    'slice' : require('./array/slice'),
+    'some' : require('./array/some'),
+    'sort' : require('./array/sort'),
+    'sortBy' : require('./array/sortBy'),
+    'split' : require('./array/split'),
+    'take' : require('./array/take'),
+    'toLookup' : require('./array/toLookup'),
+    'union' : require('./array/union'),
+    'unique' : require('./array/unique'),
+    'xor' : require('./array/xor'),
+    'zip' : require('./array/zip')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/append.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/append.js
new file mode 100644 (file)
index 0000000..549d875
--- /dev/null
@@ -0,0 +1,21 @@
+define(function () {
+
+    /**
+     * Appends an array to the end of another.
+     * The first array will be modified.
+     */
+    function append(arr1, arr2) {
+        if (arr2 == null) {
+            return arr1;
+        }
+
+        var pad = arr1.length,
+            i = -1,
+            len = arr2.length;
+        while (++i < len) {
+            arr1[pad + i] = arr2[i];
+        }
+        return arr1;
+    }
+    return append;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/collect.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/collect.js
new file mode 100644 (file)
index 0000000..8f60cda
--- /dev/null
@@ -0,0 +1,26 @@
+define(['./append', '../function/makeIterator_'], function (append, makeIterator) {
+
+    /**
+     * Maps the items in the array and concatenates the result arrays.
+     */
+    function collect(arr, callback, thisObj){
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            var value = callback(arr[i], i, arr);
+            if (value != null) {
+                append(results, value);
+            }
+        }
+
+        return results;
+    }
+
+    return collect;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/combine.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/combine.js
new file mode 100644 (file)
index 0000000..22efb86
--- /dev/null
@@ -0,0 +1,22 @@
+define(['./indexOf'], function (indexOf) {
+
+    /**
+     * Combines an array with all the items of another.
+     * Does not allow duplicates and is case and type sensitive.
+     */
+    function combine(arr1, arr2) {
+        if (arr2 == null) {
+            return arr1;
+        }
+
+        var i = -1, len = arr2.length;
+        while (++i < len) {
+            if (indexOf(arr1, arr2[i]) === -1) {
+                arr1.push(arr2[i]);
+            }
+        }
+
+        return arr1;
+    }
+    return combine;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/compact.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/compact.js
new file mode 100644 (file)
index 0000000..02a8109
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./filter'], function (filter) {
+
+    /**
+     * Remove all null/undefined items from array.
+     */
+    function compact(arr) {
+        return filter(arr, function(val){
+            return (val != null);
+        });
+    }
+
+    return compact;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/contains.js
new file mode 100644 (file)
index 0000000..fca4f7c
--- /dev/null
@@ -0,0 +1,10 @@
+define(['./indexOf'], function (indexOf) {
+
+    /**
+     * If array contains values.
+     */
+    function contains(arr, val) {
+        return indexOf(arr, val) !== -1;
+    }
+    return contains;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/difference.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/difference.js
new file mode 100644 (file)
index 0000000..0d52c25
--- /dev/null
@@ -0,0 +1,19 @@
+define(['./unique', './filter', './some', './contains', './slice'], function (unique, filter, some, contains, slice) {
+
+
+    /**
+     * Return a new Array with elements that aren't present in the other Arrays.
+     */
+    function difference(arr) {
+        var arrs = slice(arguments, 1),
+            result = filter(unique(arr), function(needle){
+                return !some(arrs, function(haystack){
+                    return contains(haystack, needle);
+                });
+            });
+        return result;
+    }
+
+    return difference;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/equals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/equals.js
new file mode 100644 (file)
index 0000000..0e3e148
--- /dev/null
@@ -0,0 +1,28 @@
+define(['../lang/is', '../lang/isArray', './every'], function(is, isArray, every) {
+
+    /**
+     * Compares if both arrays have the same elements
+     */
+    function equals(a, b, callback){
+        callback = callback || is;
+
+        if (!isArray(a) || !isArray(b)) {
+            return callback(a, b);
+        }
+
+        if (a.length !== b.length) {
+            return false;
+        }
+
+        return every(a, makeCompare(callback), b);
+    }
+
+    function makeCompare(callback) {
+        return function(value, i) {
+            return i in this && callback(value, this[i]);
+        };
+    }
+
+    return equals;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/every.js
new file mode 100644 (file)
index 0000000..78ba46d
--- /dev/null
@@ -0,0 +1,27 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Array every
+     */
+    function every(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = true;
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (!callback(arr[i], i, arr) ) {
+                result = false;
+                break;
+            }
+        }
+
+        return result;
+    }
+
+    return every;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/filter.js
new file mode 100644 (file)
index 0000000..38add18
--- /dev/null
@@ -0,0 +1,26 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Array filter
+     */
+    function filter(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            if (callback(value, i, arr)) {
+                results.push(value);
+            }
+        }
+
+        return results;
+    }
+
+    return filter;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/find.js
new file mode 100644 (file)
index 0000000..3957dcd
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./findIndex'], function (findIndex) {
+
+    /**
+     * Returns first item that matches criteria
+     */
+    function find(arr, iterator, thisObj){
+        var idx = findIndex(arr, iterator, thisObj);
+        return idx >= 0? arr[idx] : void(0);
+    }
+
+    return find;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findIndex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findIndex.js
new file mode 100644 (file)
index 0000000..59dfeeb
--- /dev/null
@@ -0,0 +1,23 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Returns the index of the first item that matches criteria
+     */
+    function findIndex(arr, iterator, thisObj){
+        iterator = makeIterator(iterator, thisObj);
+        if (arr == null) {
+            return -1;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (iterator(arr[i], i, arr)) {
+                return i;
+            }
+        }
+
+        return -1;
+    }
+
+    return findIndex;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLast.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLast.js
new file mode 100644 (file)
index 0000000..9308fa6
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./findLastIndex'], function (findLastIndex) {
+
+    /**
+     * Returns last item that matches criteria
+     */
+    function findLast(arr, iterator, thisObj){
+        var idx = findLastIndex(arr, iterator, thisObj);
+        return idx >= 0? arr[idx] : void(0);
+    }
+
+    return findLast;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLastIndex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/findLastIndex.js
new file mode 100644 (file)
index 0000000..45f266e
--- /dev/null
@@ -0,0 +1,24 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Returns the index of the last item that matches criteria
+     */
+    function findLastIndex(arr, iterator, thisObj){
+        iterator = makeIterator(iterator, thisObj);
+        if (arr == null) {
+            return -1;
+        }
+
+        var n = arr.length;
+        while (--n >= 0) {
+            if (iterator(arr[n], n, arr)) {
+                return n;
+            }
+        }
+
+        return -1;
+    }
+
+    return findLastIndex;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/flatten.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/flatten.js
new file mode 100644 (file)
index 0000000..3035b33
--- /dev/null
@@ -0,0 +1,44 @@
+define(['../lang/isArray', './append'], function (isArray, append) {
+
+    /*
+     * Helper function to flatten to a destination array.
+     * Used to remove the need to create intermediate arrays while flattening.
+     */
+    function flattenTo(arr, result, level) {
+        if (level === 0) {
+            append(result, arr);
+            return result;
+        }
+
+        var value,
+            i = -1,
+            len = arr.length;
+        while (++i < len) {
+            value = arr[i];
+            if (isArray(value)) {
+                flattenTo(value, result, level - 1);
+            } else {
+                result.push(value);
+            }
+        }
+        return result;
+    }
+
+    /**
+     * Recursively flattens an array.
+     * A new array containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(arr, level) {
+        if (arr == null) {
+            return [];
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(arr, [], level);
+    }
+
+    return flatten;
+
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/forEach.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/forEach.js
new file mode 100644 (file)
index 0000000..0e04586
--- /dev/null
@@ -0,0 +1,23 @@
+define(function () {
+
+    /**
+     * Array forEach
+     */
+    function forEach(arr, callback, thisObj) {
+        if (arr == null) {
+            return;
+        }
+        var i = -1,
+            len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if ( callback.call(thisObj, arr[i], i, arr) === false ) {
+                break;
+            }
+        }
+    }
+
+    return forEach;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/groupBy.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/groupBy.js
new file mode 100644 (file)
index 0000000..47906be
--- /dev/null
@@ -0,0 +1,32 @@
+define([
+    '../array/forEach',
+    '../function/identity',
+    '../function/makeIterator_'
+], function(forEach, identity, makeIterator) {
+
+    /**
+     * Bucket the array values.
+     */
+    function groupBy(arr, categorize, thisObj) {
+        if (categorize) {
+            categorize = makeIterator(categorize, thisObj);
+        } else {
+            // Default to identity function.
+            categorize = identity;
+        }
+
+        var buckets = {};
+        forEach(arr, function(element) {
+            var bucket = categorize(element);
+            if (!(bucket in buckets)) {
+                buckets[bucket] = [];
+            }
+
+            buckets[bucket].push(element);
+        });
+
+        return buckets;
+    }
+
+    return groupBy;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/indexOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/indexOf.js
new file mode 100644 (file)
index 0000000..0e75f99
--- /dev/null
@@ -0,0 +1,28 @@
+define(function () {
+
+    /**
+     * Array.indexOf
+     */
+    function indexOf(arr, item, fromIndex) {
+        fromIndex = fromIndex || 0;
+        if (arr == null) {
+            return -1;
+        }
+
+        var len = arr.length,
+            i = fromIndex < 0 ? len + fromIndex : fromIndex;
+        while (i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (arr[i] === item) {
+                return i;
+            }
+
+            i++;
+        }
+
+        return -1;
+    }
+
+    return indexOf;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/insert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/insert.js
new file mode 100644 (file)
index 0000000..a3d7196
--- /dev/null
@@ -0,0 +1,14 @@
+define(['./difference', './slice'], function (difference, slice) {
+
+    /**
+     * Insert item into array if not already present.
+     */
+    function insert(arr, rest_items) {
+        var diff = difference(slice(arguments, 1), arr);
+        if (diff.length) {
+            Array.prototype.push.apply(arr, diff);
+        }
+        return arr.length;
+    }
+    return insert;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/intersection.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/intersection.js
new file mode 100644 (file)
index 0000000..8d0baa4
--- /dev/null
@@ -0,0 +1,20 @@
+define(['./unique', './filter', './every', './contains', './slice'], function (unique, filter, every, contains, slice) {
+
+
+    /**
+     * Return a new Array with elements common to all Arrays.
+     * - based on underscore.js implementation
+     */
+    function intersection(arr) {
+        var arrs = slice(arguments, 1),
+            result = filter(unique(arr), function(needle){
+                return every(arrs, function(haystack){
+                    return contains(haystack, needle);
+                });
+            });
+        return result;
+    }
+
+    return intersection;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/invoke.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/invoke.js
new file mode 100644 (file)
index 0000000..860d72a
--- /dev/null
@@ -0,0 +1,23 @@
+define(['./slice'], function (slice) {
+
+    /**
+     * Call `methodName` on each item of the array passing custom arguments if
+     * needed.
+     */
+    function invoke(arr, methodName, var_args){
+        if (arr == null) {
+            return arr;
+        }
+
+        var args = slice(arguments, 2);
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            value[methodName].apply(value, args);
+        }
+
+        return arr;
+    }
+
+    return invoke;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/join.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/join.js
new file mode 100644 (file)
index 0000000..2c618d2
--- /dev/null
@@ -0,0 +1,17 @@
+define(['./filter'], function(filter) {
+
+    function isValidString(val) {
+        return (val != null && val !== '');
+    }
+
+    /**
+     * Joins strings with the specified separator inserted between each value.
+     * Null values and empty strings will be excluded.
+     */
+    function join(items, separator) {
+        separator = separator || '';
+        return filter(items, isValidString).join(separator);
+    }
+
+    return join;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/last.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/last.js
new file mode 100644 (file)
index 0000000..2c85296
--- /dev/null
@@ -0,0 +1,16 @@
+define(function () {
+
+    /**
+     * Returns last element of array.
+     */
+    function last(arr){
+        if (arr == null || arr.length < 1) {
+            return undefined;
+        }
+
+        return arr[arr.length - 1];
+    }
+
+    return last;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/lastIndexOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/lastIndexOf.js
new file mode 100644 (file)
index 0000000..931235f
--- /dev/null
@@ -0,0 +1,28 @@
+define(function () {
+
+    /**
+     * Array lastIndexOf
+     */
+    function lastIndexOf(arr, item, fromIndex) {
+        if (arr == null) {
+            return -1;
+        }
+
+        var len = arr.length;
+        fromIndex = (fromIndex == null || fromIndex >= len)? len - 1 : fromIndex;
+        fromIndex = (fromIndex < 0)? len + fromIndex : fromIndex;
+
+        while (fromIndex >= 0) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if (arr[fromIndex] === item) {
+                return fromIndex;
+            }
+            fromIndex--;
+        }
+
+        return -1;
+    }
+
+    return lastIndexOf;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/map.js
new file mode 100644 (file)
index 0000000..14377ab
--- /dev/null
@@ -0,0 +1,22 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Array map
+     */
+    function map(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null){
+            return results;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            results[i] = callback(arr[i], i, arr);
+        }
+
+        return results;
+    }
+
+     return map;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/max.js
new file mode 100644 (file)
index 0000000..d0628f0
--- /dev/null
@@ -0,0 +1,34 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Return maximum value inside array
+     */
+    function max(arr, iterator, thisObj){
+        if (arr == null || !arr.length) {
+            return Infinity;
+        } else if (arr.length && !iterator) {
+            return Math.max.apply(Math, arr);
+        } else {
+            iterator = makeIterator(iterator, thisObj);
+            var result,
+                compare = -Infinity,
+                value,
+                temp;
+
+            var i = -1, len = arr.length;
+            while (++i < len) {
+                value = arr[i];
+                temp = iterator(value, i, arr);
+                if (temp > compare) {
+                    compare = temp;
+                    result = value;
+                }
+            }
+
+            return result;
+        }
+    }
+
+    return max;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/min.js
new file mode 100644 (file)
index 0000000..07a0c71
--- /dev/null
@@ -0,0 +1,34 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Return minimum value inside array
+     */
+    function min(arr, iterator, thisObj){
+        if (arr == null || !arr.length) {
+            return -Infinity;
+        } else if (arr.length && !iterator) {
+            return Math.min.apply(Math, arr);
+        } else {
+            iterator = makeIterator(iterator, thisObj);
+            var result,
+                compare = Infinity,
+                value,
+                temp;
+
+            var i = -1, len = arr.length;
+            while (++i < len) {
+                value = arr[i];
+                temp = iterator(value, i, arr);
+                if (temp < compare) {
+                    compare = temp;
+                    result = value;
+                }
+            }
+
+            return result;
+        }
+    }
+
+    return min;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pick.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pick.js
new file mode 100644 (file)
index 0000000..dc5b222
--- /dev/null
@@ -0,0 +1,31 @@
+define(['../random/randInt'], function (randInt) {
+
+    /**
+     * Remove random item(s) from the Array and return it.
+     * Returns an Array of items if [nItems] is provided or a single item if
+     * it isn't specified.
+     */
+    function pick(arr, nItems){
+        if (nItems != null) {
+            var result = [];
+            if (nItems > 0 && arr && arr.length) {
+                nItems = nItems > arr.length? arr.length : nItems;
+                while (nItems--) {
+                    result.push( pickOne(arr) );
+                }
+            }
+            return result;
+        }
+        return (arr && arr.length)? pickOne(arr) : void(0);
+    }
+
+
+    function pickOne(arr){
+        var idx = randInt(0, arr.length - 1);
+        return arr.splice(idx, 1)[0];
+    }
+
+
+    return pick;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/pluck.js
new file mode 100644 (file)
index 0000000..c908856
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./map'], function (map) {
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(arr, propName){
+        return map(arr, propName);
+    }
+
+    return pluck;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/range.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/range.js
new file mode 100644 (file)
index 0000000..148ebf9
--- /dev/null
@@ -0,0 +1,27 @@
+define(['../math/countSteps'], function (countSteps) {
+
+    /**
+     * Returns an Array of numbers inside range.
+     */
+    function range(start, stop, step) {
+        if (stop == null) {
+            stop = start;
+            start = 0;
+        }
+        step = step || 1;
+
+        var result = [],
+            nSteps = countSteps(stop - start, step),
+            i = start;
+
+        while (i <= stop) {
+            result.push(i);
+            i += step;
+        }
+
+        return result;
+    }
+
+    return range;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduce.js
new file mode 100644 (file)
index 0000000..5f97ae8
--- /dev/null
@@ -0,0 +1,33 @@
+define(function () {
+
+    /**
+     * Array reduce
+     */
+    function reduce(arr, fn, initVal) {
+        // check for args.length since initVal might be "undefined" see #gh-57
+        var hasInit = arguments.length > 2,
+            result = initVal;
+
+        if (arr == null || !arr.length) {
+            if (!hasInit) {
+                throw new Error('reduce of empty array with no initial value');
+            } else {
+                return initVal;
+            }
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            if (!hasInit) {
+                result = arr[i];
+                hasInit = true;
+            } else {
+                result = fn(result, arr[i], i, arr);
+            }
+        }
+
+        return result;
+    }
+
+    return reduce;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduceRight.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reduceRight.js
new file mode 100644 (file)
index 0000000..ddae0e7
--- /dev/null
@@ -0,0 +1,34 @@
+define(function () {
+
+    /**
+     * Array reduceRight
+     */
+    function reduceRight(arr, fn, initVal) {
+        // check for args.length since initVal might be "undefined" see #gh-57
+        var hasInit = arguments.length > 2;
+
+        if (arr == null || !arr.length) {
+            if (hasInit) {
+                return initVal;
+            } else {
+                throw new Error('reduce of empty array with no initial value');
+            }
+        }
+
+        var i = arr.length, result = initVal, value;
+        while (--i >= 0) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            value = arr[i];
+            if (!hasInit) {
+                result = value;
+                hasInit = true;
+            } else {
+                result = fn(result, value, i, arr);
+            }
+        }
+        return result;
+    }
+
+    return reduceRight;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reject.js
new file mode 100644 (file)
index 0000000..cad4038
--- /dev/null
@@ -0,0 +1,25 @@
+define(['../function/makeIterator_'], function(makeIterator) {
+
+    /**
+     * Array reject
+     */
+    function reject(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var results = [];
+        if (arr == null) {
+            return results;
+        }
+
+        var i = -1, len = arr.length, value;
+        while (++i < len) {
+            value = arr[i];
+            if (!callback(value, i, arr)) {
+                results.push(value);
+            }
+        }
+
+        return results;
+    }
+
+    return reject;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/remove.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/remove.js
new file mode 100644 (file)
index 0000000..dec9134
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./indexOf'], function(indexOf){
+
+    /**
+     * Remove a single item from the array.
+     * (it won't remove duplicates, just a single item)
+     */
+    function remove(arr, item){
+        var idx = indexOf(arr, item);
+        if (idx !== -1) arr.splice(idx, 1);
+    }
+
+    return remove;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/removeAll.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/removeAll.js
new file mode 100644 (file)
index 0000000..e81022b
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./indexOf'], function(indexOf){
+
+    /**
+     * Remove all instances of an item from array.
+     */
+    function removeAll(arr, item){
+        var idx = indexOf(arr, item);
+        while (idx !== -1) {
+            arr.splice(idx, 1);
+            idx = indexOf(arr, item, idx);
+        }
+    }
+
+    return removeAll;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reverse.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/reverse.js
new file mode 100644 (file)
index 0000000..b970427
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Returns a copy of the array in reversed order.
+     */
+    function reverse(array) {
+        var copy = array.slice();
+        copy.reverse();
+        return copy;
+    }
+
+    return reverse;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/slice.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/slice.js
new file mode 100644 (file)
index 0000000..994caba
--- /dev/null
@@ -0,0 +1,35 @@
+define(function () {
+
+    /**
+     * Create slice of source array or array-like object
+     */
+    function slice(arr, start, end){
+        var len = arr.length;
+
+        if (start == null) {
+            start = 0;
+        } else if (start < 0) {
+            start = Math.max(len + start, 0);
+        } else {
+            start = Math.min(start, len);
+        }
+
+        if (end == null) {
+            end = len;
+        } else if (end < 0) {
+            end = Math.max(len + end, 0);
+        } else {
+            end = Math.min(end, len);
+        }
+
+        var result = [];
+        while (start < end) {
+            result.push(arr[start++]);
+        }
+
+        return result;
+    }
+
+    return slice;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/some.js
new file mode 100644 (file)
index 0000000..e46a978
--- /dev/null
@@ -0,0 +1,27 @@
+define(['../function/makeIterator_'], function (makeIterator) {
+
+    /**
+     * Array some
+     */
+    function some(arr, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = false;
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length;
+        while (++i < len) {
+            // we iterate over sparse items since there is no way to make it
+            // work properly on IE 7-8. see #64
+            if ( callback(arr[i], i, arr) ) {
+                result = true;
+                break;
+            }
+        }
+
+        return result;
+    }
+
+    return some;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sort.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sort.js
new file mode 100644 (file)
index 0000000..4c19404
--- /dev/null
@@ -0,0 +1,55 @@
+define(function () {
+
+    /**
+     * Merge sort (http://en.wikipedia.org/wiki/Merge_sort)
+     */
+    function mergeSort(arr, compareFn) {
+        if (arr == null) {
+            return [];
+        } else if (arr.length < 2) {
+            return arr;
+        }
+
+        if (compareFn == null) {
+            compareFn = defaultCompare;
+        }
+
+        var mid, left, right;
+
+        mid   = ~~(arr.length / 2);
+        left  = mergeSort( arr.slice(0, mid), compareFn );
+        right = mergeSort( arr.slice(mid, arr.length), compareFn );
+
+        return merge(left, right, compareFn);
+    }
+
+    function defaultCompare(a, b) {
+        return a < b ? -1 : (a > b? 1 : 0);
+    }
+
+    function merge(left, right, compareFn) {
+        var result = [];
+
+        while (left.length && right.length) {
+            if (compareFn(left[0], right[0]) <= 0) {
+                // if 0 it should preserve same order (stable)
+                result.push(left.shift());
+            } else {
+                result.push(right.shift());
+            }
+        }
+
+        if (left.length) {
+            result.push.apply(result, left);
+        }
+
+        if (right.length) {
+            result.push.apply(result, right);
+        }
+
+        return result;
+    }
+
+    return mergeSort;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sortBy.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/sortBy.js
new file mode 100644 (file)
index 0000000..2797194
--- /dev/null
@@ -0,0 +1,18 @@
+define(['./sort', '../function/makeIterator_'], function (sort, makeIterator) {
+
+    /*
+     * Sort array by the result of the callback
+     */
+    function sortBy(arr, callback, context){
+        callback = makeIterator(callback, context);
+
+        return sort(arr, function(a, b) {
+            a = callback(a);
+            b = callback(b);
+            return (a < b) ? -1 : ((a > b) ? 1 : 0);
+        });
+    }
+
+    return sortBy;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/split.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/split.js
new file mode 100644 (file)
index 0000000..a17275e
--- /dev/null
@@ -0,0 +1,35 @@
+define(function() {
+
+    /**
+     * Split array into a fixed number of segments.
+     */
+    function split(array, segments) {
+        segments = segments || 2;
+        var results = [];
+        if (array == null) {
+            return results;
+        }
+
+        var minLength = Math.floor(array.length / segments),
+            remainder = array.length % segments,
+            i = 0,
+            len = array.length,
+            segmentIndex = 0,
+            segmentLength;
+
+        while (i < len) {
+            segmentLength = minLength;
+            if (segmentIndex < remainder) {
+                segmentLength++;
+            }
+
+            results.push(array.slice(i, i + segmentLength));
+
+            segmentIndex++;
+            i += segmentLength;
+        }
+
+        return results;
+    }
+    return split;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/take.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/take.js
new file mode 100644 (file)
index 0000000..74b8241
--- /dev/null
@@ -0,0 +1,24 @@
+define(function () {
+
+    /**
+     * Iterates over a callback a set amount of times
+     * returning the results
+     */
+    function take(n, callback, thisObj){
+        var i = -1;
+        var arr = [];
+        if( !thisObj ){
+            while(++i < n){
+                arr[i] = callback(i, n);
+            }
+        } else {
+            while(++i < n){
+                arr[i] = callback.call(thisObj, i, n);
+            }
+        }
+        return arr;
+    }
+
+    return take;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/toLookup.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/toLookup.js
new file mode 100644 (file)
index 0000000..aac8fd1
--- /dev/null
@@ -0,0 +1,28 @@
+define(['../lang/isFunction'], function (isFunction) {
+
+    /**
+     * Creates an object that holds a lookup for the objects in the array.
+     */
+    function toLookup(arr, key) {
+        var result = {};
+        if (arr == null) {
+            return result;
+        }
+
+        var i = -1, len = arr.length, value;
+        if (isFunction(key)) {
+            while (++i < len) {
+                value = arr[i];
+                result[key(value)] = value;
+            }
+        } else {
+            while (++i < len) {
+                value = arr[i];
+                result[value[key]] = value;
+            }
+        }
+
+        return result;
+    }
+    return toLookup;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/union.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/union.js
new file mode 100644 (file)
index 0000000..5f9922e
--- /dev/null
@@ -0,0 +1,18 @@
+define(['./unique', './append'], function (unique, append) {
+
+    /**
+     * Concat multiple arrays and remove duplicates
+     */
+    function union(arrs) {
+        var results = [];
+        var i = -1, len = arguments.length;
+        while (++i < len) {
+            append(results, arguments[i]);
+        }
+
+        return unique(results);
+    }
+
+    return union;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/unique.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/unique.js
new file mode 100644 (file)
index 0000000..c4a011a
--- /dev/null
@@ -0,0 +1,25 @@
+define(['./filter'], function(filter){
+
+    /**
+     * @return {array} Array of unique items
+     */
+    function unique(arr, compare){
+        compare = compare || isEqual;
+        return filter(arr, function(item, i, arr){
+            var n = arr.length;
+            while (++i < n) {
+                if ( compare(item, arr[i]) ) {
+                    return false;
+                }
+            }
+            return true;
+        });
+    }
+
+    function isEqual(a, b){
+        return a === b;
+    }
+
+    return unique;
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/xor.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/xor.js
new file mode 100644 (file)
index 0000000..7df89d9
--- /dev/null
@@ -0,0 +1,24 @@
+define(['./unique', './filter', './contains'], function (unique, filter, contains) {
+
+
+    /**
+     * Exclusive OR. Returns items that are present in a single array.
+     * - like ptyhon's `symmetric_difference`
+     */
+    function xor(arr1, arr2) {
+        arr1 = unique(arr1);
+        arr2 = unique(arr2);
+
+        var a1 = filter(arr1, function(item){
+                return !contains(arr2, item);
+            }),
+            a2 = filter(arr2, function(item){
+                return !contains(arr1, item);
+            });
+
+        return a1.concat(a2);
+    }
+
+    return xor;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/zip.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/array/zip.js
new file mode 100644 (file)
index 0000000..bd0dbb8
--- /dev/null
@@ -0,0 +1,27 @@
+define(['./max', './map'], function (max, map) {
+
+    function getLength(arr) {
+        return arr == null ? 0 : arr.length;
+    }
+
+    /**
+     * Merges together the values of each of the arrays with the values at the
+     * corresponding position.
+     */
+    function zip(arr){
+        var len = arr ? max(map(arguments, getLength)) : 0,
+            results = [],
+            i = -1;
+        while (++i < len) {
+            // jshint loopfunc: true
+            results.push(map(arguments, function(item) {
+                return item == null ? undefined : item[i];
+            }));
+        }
+
+        return results;
+    }
+
+    return zip;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection.js
new file mode 100644 (file)
index 0000000..386e6da
--- /dev/null
@@ -0,0 +1,22 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'contains' : require('./collection/contains'),
+    'every' : require('./collection/every'),
+    'filter' : require('./collection/filter'),
+    'find' : require('./collection/find'),
+    'forEach' : require('./collection/forEach'),
+    'make_' : require('./collection/make_'),
+    'map' : require('./collection/map'),
+    'max' : require('./collection/max'),
+    'min' : require('./collection/min'),
+    'pluck' : require('./collection/pluck'),
+    'reduce' : require('./collection/reduce'),
+    'reject' : require('./collection/reject'),
+    'size' : require('./collection/size'),
+    'some' : require('./collection/some')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/contains.js
new file mode 100644 (file)
index 0000000..192167e
--- /dev/null
@@ -0,0 +1,7 @@
+define(['./make_', '../array/contains', '../object/contains'], function (make, arrContains, objContains) {
+
+    /**
+     */
+    return make(arrContains, objContains);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/every.js
new file mode 100644 (file)
index 0000000..6317f50
--- /dev/null
@@ -0,0 +1,7 @@
+define(['./make_', '../array/every', '../object/every'], function (make, arrEvery, objEvery) {
+
+    /**
+     */
+    return make(arrEvery, objEvery);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/filter.js
new file mode 100644 (file)
index 0000000..4e7fadc
--- /dev/null
@@ -0,0 +1,22 @@
+define(['./forEach', '../function/makeIterator_'], function (forEach, makeIterator) {
+
+    /**
+     * filter collection values, returns array.
+     */
+    function filter(list, iterator, thisObj) {
+        iterator = makeIterator(iterator, thisObj);
+        var results = [];
+        if (!list) {
+            return results;
+        }
+        forEach(list, function(value, index, list) {
+            if (iterator(value, index, list)) {
+                results[results.length] = value;
+            }
+        });
+        return results;
+    }
+
+    return filter;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/find.js
new file mode 100644 (file)
index 0000000..681f941
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./make_', '../array/find', '../object/find'], function(make, arrFind, objFind) {
+
+    /**
+     * Find value that returns true on iterator check.
+     */
+    return make(arrFind, objFind);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/forEach.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/forEach.js
new file mode 100644 (file)
index 0000000..3b39d3e
--- /dev/null
@@ -0,0 +1,7 @@
+define(['./make_', '../array/forEach', '../object/forOwn'], function (make, arrForEach, objForEach) {
+
+    /**
+     */
+    return make(arrForEach, objForEach);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/make_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/make_.js
new file mode 100644 (file)
index 0000000..290a651
--- /dev/null
@@ -0,0 +1,19 @@
+define(['../array/slice'], function(slice){
+
+    /**
+     * internal method used to create other collection modules.
+     */
+    function makeCollectionMethod(arrMethod, objMethod, defaultReturn) {
+        return function(){
+            var args = slice(arguments);
+            if (args[0] == null) {
+                return defaultReturn;
+            }
+            // array-like is treated as array
+            return (typeof args[0].length === 'number')? arrMethod.apply(null, args) : objMethod.apply(null, args);
+        };
+    }
+
+    return makeCollectionMethod;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/map.js
new file mode 100644 (file)
index 0000000..96e2498
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../lang/isObject', '../object/values', '../array/map', '../function/makeIterator_'], function (isObject, values, arrMap, makeIterator) {
+
+    /**
+     * Map collection values, returns Array.
+     */
+    function map(list, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        // list.length to check array-like object, if not array-like
+        // we simply map all the object values
+        if( isObject(list) && list.length == null ){
+            list = values(list);
+        }
+        return arrMap(list, function (val, key, list) {
+            return callback(val, key, list);
+        });
+    }
+
+    return map;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/max.js
new file mode 100644 (file)
index 0000000..de9a6da
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./make_', '../array/max', '../object/max'], function (make, arrMax, objMax) {
+
+    /**
+     * Get maximum value inside collection
+     */
+    return make(arrMax, objMax);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/min.js
new file mode 100644 (file)
index 0000000..f0c239a
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./make_', '../array/min', '../object/min'], function (make, arrMin, objMin) {
+
+    /**
+     * Get minimum value inside collection.
+     */
+    return make(arrMin, objMin);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/pluck.js
new file mode 100644 (file)
index 0000000..ef784a7
--- /dev/null
@@ -0,0 +1,14 @@
+define(['./map'], function (map) {
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(list, key) {
+        return map(list, function(value) {
+            return value[key];
+        });
+    }
+
+    return pluck;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reduce.js
new file mode 100644 (file)
index 0000000..bd05d43
--- /dev/null
@@ -0,0 +1,7 @@
+define(['./make_', '../array/reduce', '../object/reduce'], function (make, arrReduce, objReduce) {
+
+    /**
+     */
+    return make(arrReduce, objReduce);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/reject.js
new file mode 100644 (file)
index 0000000..581adfd
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./filter', '../function/makeIterator_'], function (filter, makeIterator) {
+
+    /**
+     * Inverse or collection/filter
+     */
+    function reject(list, iterator, thisObj) {
+        iterator = makeIterator(iterator, thisObj);
+        return filter(list, function(value, index, list) {
+            return !iterator(value, index, list);
+        }, thisObj);
+    }
+
+    return reject;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/size.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/size.js
new file mode 100644 (file)
index 0000000..4e5ab41
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../lang/isArray', '../object/size'], function (isArray, objSize) {
+
+    /**
+     * Get collection size
+     */
+    function size(list) {
+        if (!list) {
+            return 0;
+        }
+        if (isArray(list)) {
+            return list.length;
+        }
+        return objSize(list);
+    }
+
+    return size;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/collection/some.js
new file mode 100644 (file)
index 0000000..c0aebee
--- /dev/null
@@ -0,0 +1,7 @@
+define(['./make_', '../array/some', '../object/some'], function (make, arrSome, objSome) {
+
+    /**
+     */
+    return make(arrSome, objSome);
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date.js
new file mode 100644 (file)
index 0000000..b3038ee
--- /dev/null
@@ -0,0 +1,22 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'dayOfTheYear' : require('./date/dayOfTheYear'),
+    'diff' : require('./date/diff'),
+    'i18n_' : require('./date/i18n_'),
+    'isLeapYear' : require('./date/isLeapYear'),
+    'isSame' : require('./date/isSame'),
+    'parseIso' : require('./date/parseIso'),
+    'quarter' : require('./date/quarter'),
+    'startOf' : require('./date/startOf'),
+    'strftime' : require('./date/strftime'),
+    'timezoneAbbr' : require('./date/timezoneAbbr'),
+    'timezoneOffset' : require('./date/timezoneOffset'),
+    'totalDaysInMonth' : require('./date/totalDaysInMonth'),
+    'totalDaysInYear' : require('./date/totalDaysInYear'),
+    'weekOfTheYear' : require('./date/weekOfTheYear')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/dayOfTheYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/dayOfTheYear.js
new file mode 100644 (file)
index 0000000..dc77ae1
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../lang/isDate'], function (isDate) {
+
+    /**
+     * return the day of the year (1..366)
+     */
+    function dayOfTheYear(date){
+        return (Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()) -
+                Date.UTC(date.getFullYear(), 0, 1)) / 86400000 + 1;
+    }
+
+    return dayOfTheYear;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/diff.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/diff.js
new file mode 100644 (file)
index 0000000..667165f
--- /dev/null
@@ -0,0 +1,128 @@
+define(['./totalDaysInMonth', './totalDaysInYear', '../time/convert'], function(totalDaysInMonth, totalDaysInYear, convert){
+
+    /**
+     * calculate the difference between dates (range)
+     */
+    function diff(start, end, unitName){
+        // sort the dates to make it easier to process (specially year/month)
+        if (start > end) {
+            var swap = start;
+            start = end;
+            end = swap;
+        }
+
+        var output;
+
+        if (unitName === 'month') {
+            output = getMonthsDiff(start, end);
+        } else if (unitName === 'year'){
+            output = getYearsDiff(start, end);
+        } else if (unitName != null) {
+            if (unitName === 'day') {
+                // ignore timezone difference because of daylight savings time
+                start = toUtc(start);
+                end = toUtc(end);
+            }
+            output = convert(end - start, 'ms', unitName);
+        } else {
+            output = end - start;
+        }
+
+        return output;
+    }
+
+
+    function toUtc(d){
+        // we ignore timezone differences on purpose because of daylight
+        // savings time, otherwise it would return fractional days/weeks even
+        // if a full day elapsed. eg:
+        // Wed Feb 12 2014 00:00:00 GMT-0200 (BRST)
+        // Sun Feb 16 2014 00:00:00 GMT-0300 (BRT)
+        // diff should be 4 days and not 4.041666666666667
+        return Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate(),
+                        d.getHours(), d.getMinutes(), d.getSeconds(),
+                        d.getMilliseconds());
+    }
+
+
+    function getMonthsDiff(start, end){
+        return getElapsedMonths(start, end) +
+               getElapsedYears(start, end) * 12 +
+               getFractionalMonth(start, end);
+    }
+
+
+    function getYearsDiff(start, end){
+        var elapsedYears = getElapsedYears(start, end);
+        return elapsedYears + getFractionalYear(start, end, elapsedYears);
+    }
+
+
+    function getElapsedMonths(start, end){
+        var monthDiff = end.getMonth() - start.getMonth();
+        if (monthDiff < 0) {
+            monthDiff += 12;
+        }
+        // less than a full month
+        if (start.getDate() > end.getDate()) {
+            monthDiff -= 1;
+        }
+        return monthDiff;
+    }
+
+
+    function getElapsedYears(start, end){
+        var yearDiff = end.getFullYear() - start.getFullYear();
+        // less than a full year
+        if (start.getMonth() > end.getMonth()) {
+            yearDiff -= 1;
+        }
+        return yearDiff;
+    }
+
+
+    function getFractionalMonth(start, end){
+        var fractionalDiff = 0;
+        var startDay = start.getDate();
+        var endDay = end.getDate();
+
+        if (startDay !== endDay) {
+            var startTotalDays = totalDaysInMonth(start);
+            var endTotalDays = totalDaysInMonth(end);
+            var totalDays;
+            var daysElapsed;
+
+            if (startDay > endDay) {
+                // eg: Jan 29 - Feb 27 (29 days elapsed but not a full month)
+                var baseDay = startTotalDays - startDay;
+                daysElapsed = endDay + baseDay;
+                // total days should be relative to 1st day of next month if
+                // startDay > endTotalDays
+                totalDays = (startDay > endTotalDays)?
+                    endTotalDays + baseDay + 1 : startDay + baseDay;
+            } else {
+                // fractional is only based on endMonth eg: Jan 12 - Feb 18
+                // (6 fractional days, 28 days until next full month)
+                daysElapsed = endDay - startDay;
+                totalDays = endTotalDays;
+            }
+
+            fractionalDiff = daysElapsed / totalDays;
+        }
+
+        return fractionalDiff;
+    }
+
+
+    function getFractionalYear(start, end, elapsedYears){
+        var base = elapsedYears?
+            new Date(end.getFullYear(), start.getMonth(), start.getDate()) :
+            start;
+        var elapsedDays = diff(base, end, 'day');
+        return elapsedDays / totalDaysInYear(end);
+    }
+
+
+    return diff;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/de-DE.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/de-DE.js
new file mode 100644 (file)
index 0000000..46f5c6a
--- /dev/null
@@ -0,0 +1,61 @@
+define(function(){
+    // de-DE (German)
+    return {
+        "am" : "",
+        "pm" : "",
+
+        "x": "%d/%m/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %H:%M:%S %Z",
+
+        "months" : [
+            "Januar",
+            "Februar",
+            "März",
+            "April",
+            "Mai",
+            "Juni",
+            "Juli",
+            "August",
+            "September",
+            "Oktober",
+            "November",
+            "Dezember"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Febr",
+            "März",
+            "Apr",
+            "Mai",
+            "Juni",
+            "Juli",
+            "Aug",
+            "Sept",
+            "Okt",
+            "Nov",
+            "Dez"
+        ],
+
+        "days" : [
+            "Sonntag",
+            "Montag",
+            "Dienstag",
+            "Mittwoch",
+            "Donnerstag",
+            "Freitag",
+            "Samstag"
+        ],
+
+        "days_abbr" : [
+            "So",
+            "Mo",
+            "Di",
+            "Mi",
+            "Do",
+            "Fr",
+            "Sa"
+        ]
+    };
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/en-US.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/en-US.js
new file mode 100644 (file)
index 0000000..5e640c2
--- /dev/null
@@ -0,0 +1,61 @@
+define(function(){
+    // en-US (English, United States)
+    return {
+        "am" : "AM",
+        "pm" : "PM",
+
+        "x": "%m/%d/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %I:%M:%S %p %Z",
+
+        "months" : [
+            "January",
+            "February",
+            "March",
+            "April",
+            "May",
+            "June",
+            "July",
+            "August",
+            "September",
+            "October",
+            "November",
+            "December"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Feb",
+            "Mar",
+            "Apr",
+            "May",
+            "Jun",
+            "Jul",
+            "Aug",
+            "Sep",
+            "Oct",
+            "Nov",
+            "Dec"
+        ],
+
+        "days" : [
+            "Sunday",
+            "Monday",
+            "Tuesday",
+            "Wednesday",
+            "Thursday",
+            "Friday",
+            "Saturday"
+        ],
+
+        "days_abbr" : [
+            "Sun",
+            "Mon",
+            "Tue",
+            "Wed",
+            "Thu",
+            "Fri",
+            "Sat"
+        ]
+    };
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/pt-BR.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n/pt-BR.js
new file mode 100644 (file)
index 0000000..47256dd
--- /dev/null
@@ -0,0 +1,61 @@
+define(function(){
+    // pt-BR (Brazillian Portuguese)
+    return {
+        "am" : "",
+        "pm" : "",
+
+        "x": "%d/%m/%y",
+        "X": "%H:%M:%S",
+        "c": "%a %d %b %Y %H:%M:%S %Z",
+
+        "months" : [
+            "Janeiro",
+            "Fevereiro",
+            "Março",
+            "Abril",
+            "Maio",
+            "Junho",
+            "Julho",
+            "Agosto",
+            "Setembro",
+            "Outubro",
+            "Novembro",
+            "Dezembro"
+        ],
+
+        "months_abbr" : [
+            "Jan",
+            "Fev",
+            "Mar",
+            "Abr",
+            "Mai",
+            "Jun",
+            "Jul",
+            "Ago",
+            "Set",
+            "Out",
+            "Nov",
+            "Dez"
+        ],
+
+        "days" : [
+            "Domingo",
+            "Segunda",
+            "Terça",
+            "Quarta",
+            "Quinta",
+            "Sexta",
+            "Sábado"
+        ],
+
+        "days_abbr" : [
+            "Dom",
+            "Seg",
+            "Ter",
+            "Qua",
+            "Qui",
+            "Sex",
+            "Sáb"
+        ]
+    };
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/i18n_.js
new file mode 100644 (file)
index 0000000..c04ce88
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../object/mixIn', './i18n/en-US'], function(mixIn, enUS){
+
+    // we also use mixIn to make sure we don't affect the original locale
+    var activeLocale = mixIn({}, enUS, {
+        // we expose a "set" method to allow overriding the global locale
+        set : function(localeData){
+            mixIn(activeLocale, localeData);
+        }
+    });
+
+    return activeLocale;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isLeapYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isLeapYear.js
new file mode 100644 (file)
index 0000000..e400b43
--- /dev/null
@@ -0,0 +1,15 @@
+define(['../lang/isDate'], function (isDate) {
+
+    /**
+     * checks if it's a leap year
+     */
+    function isLeapYear(fullYear){
+        if (isDate(fullYear)) {
+            fullYear = fullYear.getFullYear();
+        }
+        return fullYear % 400 === 0 || (fullYear % 100 !== 0 && fullYear % 4 === 0);
+    }
+
+    return isLeapYear;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isSame.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/isSame.js
new file mode 100644 (file)
index 0000000..f30531f
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./startOf'], function (startOf) {
+
+    /**
+     * Check if date is "same" with optional period
+     */
+    function isSame(date1, date2, period){
+        if (period) {
+            date1 = startOf(date1, period);
+            date2 = startOf(date2, period);
+        }
+        return Number(date1) === Number(date2);
+    }
+
+    return isSame;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/parseIso.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/parseIso.js
new file mode 100644 (file)
index 0000000..b21c879
--- /dev/null
@@ -0,0 +1,146 @@
+define(['../array/some'], function (some) {
+
+    var datePatterns = [
+        /^([0-9]{4})$/,                        // YYYY
+        /^([0-9]{4})-([0-9]{2})$/,             // YYYY-MM (YYYYMM not allowed)
+        /^([0-9]{4})-?([0-9]{2})-?([0-9]{2})$/ // YYYY-MM-DD or YYYYMMDD
+    ];
+    var ORD_DATE = /^([0-9]{4})-?([0-9]{3})$/; // YYYY-DDD
+
+    var timePatterns = [
+        /^([0-9]{2}(?:\.[0-9]*)?)$/,                      // HH.hh
+        /^([0-9]{2}):?([0-9]{2}(?:\.[0-9]*)?)$/,          // HH:MM.mm
+        /^([0-9]{2}):?([0-9]{2}):?([0-9]{2}(\.[0-9]*)?)$/ // HH:MM:SS.ss
+    ];
+
+    var DATE_TIME = /^(.+)T(.+)$/;
+    var TIME_ZONE = /^(.+)([+\-])([0-9]{2}):?([0-9]{2})$/;
+
+    function matchAll(str, patterns) {
+        var match;
+        var found = some(patterns, function(pattern) {
+            return !!(match = pattern.exec(str));
+        });
+
+        return found ? match : null;
+    }
+
+    function getDate(year, month, day) {
+        var date = new Date(Date.UTC(year, month, day));
+
+        // Explicitly set year to avoid Date.UTC making dates < 100 relative to
+        // 1900
+        date.setUTCFullYear(year);
+
+        var valid =
+            date.getUTCFullYear() === year &&
+            date.getUTCMonth() === month &&
+            date.getUTCDate() === day;
+        return valid ? +date : NaN;
+    }
+
+    function parseOrdinalDate(str) {
+        var match = ORD_DATE.exec(str);
+        if (match ) {
+            var year = +match[1],
+                day = +match[2],
+                date = new Date(Date.UTC(year, 0, day));
+
+            if (date.getUTCFullYear() === year) {
+                return +date;
+            }
+        }
+
+        return NaN;
+    }
+
+    function parseDate(str) {
+        var match, year, month, day;
+
+        match = matchAll(str, datePatterns);
+        if (match === null) {
+            // Ordinal dates are verified differently.
+            return parseOrdinalDate(str);
+        }
+
+        year = (match[1] === void 0) ? 0 : +match[1];
+        month = (match[2] === void 0) ? 0 : +match[2] - 1;
+        day = (match[3] === void 0) ? 1 : +match[3];
+
+        return getDate(year, month, day);
+    }
+
+    function getTime(hr, min, sec) {
+        var valid =
+            (hr < 24 && hr >= 0 &&
+             min < 60 && min >= 0 &&
+             sec < 60 && min >= 0) ||
+            (hr === 24 && min === 0 && sec === 0);
+        if (!valid) {
+            return NaN;
+        }
+
+        return ((hr * 60 + min) * 60 + sec) * 1000;
+    }
+
+    function parseOffset(str) {
+        var match;
+        if (str.charAt(str.length - 1) === 'Z') {
+            str = str.substring(0, str.length - 1);
+        } else {
+            match = TIME_ZONE.exec(str);
+            if (match) {
+                var hours = +match[3],
+                    minutes = (match[4] === void 0) ? 0 : +match[4],
+                    offset = getTime(hours, minutes, 0);
+
+                if (match[2] === '-') {
+                    offset *= -1;
+                }
+
+                return { offset: offset, time: match[1] };
+            }
+        }
+
+        // No time zone specified, assume UTC
+        return { offset: 0, time: str };
+    }
+
+    function parseTime(str) {
+        var match;
+        var offset = parseOffset(str);
+
+        str = offset.time;
+        offset = offset.offset;
+        if (isNaN(offset)) {
+            return NaN;
+        }
+
+        match = matchAll(str, timePatterns);
+        if (match === null) {
+            return NaN;
+        }
+
+        var hours = (match[1] === void 0) ? 0 : +match[1],
+            minutes = (match[2] === void 0) ? 0 : +match[2],
+            seconds = (match[3] === void 0) ? 0 : +match[3];
+
+        return getTime(hours, minutes, seconds) - offset;
+    }
+
+    /**
+     * Parse an ISO8601 formatted date string, and return a Date object.
+     */
+    function parseISO8601(str){
+        var match = DATE_TIME.exec(str);
+        if (!match) {
+            // No time specified
+            return parseDate(str);
+        }
+
+        return parseDate(match[1]) + parseTime(match[2]);
+    }
+
+    return parseISO8601;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/quarter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/quarter.js
new file mode 100644 (file)
index 0000000..62b9206
--- /dev/null
@@ -0,0 +1,16 @@
+define(function () {
+
+    /**
+     * gets date quarter
+     */
+    function quarter(date){
+        var month = date.getMonth();
+        if (month < 3) return 1;
+        if (month < 6) return 2;
+        if (month < 9) return 3;
+        return 4;
+    }
+
+    return quarter;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/startOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/startOf.js
new file mode 100644 (file)
index 0000000..747f114
--- /dev/null
@@ -0,0 +1,54 @@
+define(['../lang/clone'], function (clone) {
+
+    /**
+     * get a new Date object representing start of period
+     */
+    function startOf(date, period){
+        date = clone(date);
+
+        // intentionally removed "break" from switch since start of
+        // month/year/etc should also reset the following periods
+        switch (period) {
+            case 'year':
+                date.setMonth(0);
+            /* falls through */
+            case 'month':
+                date.setDate(1);
+            /* falls through */
+            case 'week':
+            case 'day':
+                date.setHours(0);
+            /* falls through */
+            case 'hour':
+                date.setMinutes(0);
+            /* falls through */
+            case 'minute':
+                date.setSeconds(0);
+            /* falls through */
+            case 'second':
+                date.setMilliseconds(0);
+                break;
+            default:
+                throw new Error('"'+ period +'" is not a valid period');
+        }
+
+        // week is the only case that should reset the weekDay and maybe even
+        // overflow to previous month
+        if (period === 'week') {
+            var weekDay = date.getDay();
+            var baseDate = date.getDate();
+            if (weekDay) {
+                if (weekDay >= baseDate) {
+                    //start of the week is on previous month
+                    date.setDate(0);
+                }
+                date.setDate(date.getDate() - date.getDay());
+            }
+        }
+
+        return date;
+    }
+
+    return startOf;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/strftime.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/strftime.js
new file mode 100644 (file)
index 0000000..9c09c69
--- /dev/null
@@ -0,0 +1,115 @@
+define(['../number/pad', '../string/lpad', './i18n_', './dayOfTheYear', './timezoneOffset', './timezoneAbbr', './weekOfTheYear'], function (pad, lpad, i18n, dayOfTheYear, timezoneOffset, timezoneAbbr, weekOfTheYear) {
+
+    var _combinations = {
+        'D': '%m/%d/%y',
+        'F': '%Y-%m-%d',
+        'r': '%I:%M:%S %p',
+        'R': '%H:%M',
+        'T': '%H:%M:%S',
+        'x': 'locale',
+        'X': 'locale',
+        'c': 'locale'
+    };
+
+
+    /**
+     * format date based on strftime format
+     */
+    function strftime(date, format, localeData){
+        localeData = localeData  || i18n;
+        var reToken = /%([a-z%])/gi;
+
+        function makeIterator(fn) {
+            return function(match, token){
+                return fn(date, token, localeData);
+            };
+        }
+
+        return format
+            .replace(reToken, makeIterator(expandCombinations))
+            .replace(reToken, makeIterator(convertToken));
+    }
+
+
+    function expandCombinations(date, token, l10n){
+        if (token in _combinations) {
+            var expanded = _combinations[token];
+            return expanded === 'locale'? l10n[token] : expanded;
+        } else {
+            return '%'+ token;
+        }
+    }
+
+
+    function convertToken(date, token, l10n){
+        switch (token){
+            case 'a':
+                return l10n.days_abbr[date.getDay()];
+            case 'A':
+                return l10n.days[date.getDay()];
+            case 'h':
+            case 'b':
+                return l10n.months_abbr[date.getMonth()];
+            case 'B':
+                return l10n.months[date.getMonth()];
+            case 'C':
+                return pad(Math.floor(date.getFullYear() / 100), 2);
+            case 'd':
+                return pad(date.getDate(), 2);
+            case 'e':
+                return pad(date.getDate(), 2, ' ');
+            case 'H':
+                return pad(date.getHours(), 2);
+            case 'I':
+                return pad(date.getHours() % 12, 2);
+            case 'j':
+                return pad(dayOfTheYear(date), 3);
+            case 'l':
+                return lpad(date.getHours() % 12, 2);
+            case 'L':
+                return pad(date.getMilliseconds(), 3);
+            case 'm':
+                return pad(date.getMonth() + 1, 2);
+            case 'M':
+                return pad(date.getMinutes(), 2);
+            case 'n':
+                return '\n';
+            case 'p':
+                return date.getHours() >= 12? l10n.pm : l10n.am;
+            case 'P':
+                return convertToken(date, 'p', l10n).toLowerCase();
+            case 's':
+                return date.getTime() / 1000;
+            case 'S':
+                return pad(date.getSeconds(), 2);
+            case 't':
+                return '\t';
+            case 'u':
+                var day = date.getDay();
+                return day === 0? 7 : day;
+            case 'U':
+                return pad(weekOfTheYear(date), 2);
+            case 'w':
+                return date.getDay();
+            case 'W':
+                return pad(weekOfTheYear(date, 1), 2);
+            case 'y':
+                return pad(date.getFullYear() % 100, 2);
+            case 'Y':
+                return pad(date.getFullYear(), 4);
+            case 'z':
+                return timezoneOffset(date);
+            case 'Z':
+                return timezoneAbbr(date);
+            case '%':
+                return '%';
+            default:
+                // keep unrecognized tokens
+                return '%'+ token;
+        }
+    }
+
+
+    return strftime;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneAbbr.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneAbbr.js
new file mode 100644 (file)
index 0000000..225a685
--- /dev/null
@@ -0,0 +1,17 @@
+define(['./timezoneOffset'], function(timezoneOffset) {
+
+    /**
+     * Abbreviated time zone name or similar information.
+     */
+    function timezoneAbbr(date){
+        // Date.toString gives different results depending on the
+        // browser/system so we fallback to timezone offset
+        // chrome: 'Mon Apr 08 2013 09:02:04 GMT-0300 (BRT)'
+        // IE: 'Mon Apr 8 09:02:04 UTC-0300 2013'
+        var tz = /\(([A-Z]{3,4})\)/.exec(date.toString());
+        return tz? tz[1] : timezoneOffset(date);
+    }
+
+    return timezoneAbbr;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneOffset.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/timezoneOffset.js
new file mode 100644 (file)
index 0000000..ca06705
--- /dev/null
@@ -0,0 +1,16 @@
+define(['../number/pad'], function (pad) {
+
+    /**
+     * time zone as hour and minute offset from UTC (e.g. +0900)
+     */
+    function timezoneOffset(date){
+        var offset = date.getTimezoneOffset();
+        var abs = Math.abs(offset);
+        var h = pad(Math.floor(abs / 60), 2);
+        var m = pad(abs % 60, 2);
+        return (offset > 0? '-' : '+') + h + m;
+    }
+
+    return timezoneOffset;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInMonth.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInMonth.js
new file mode 100644 (file)
index 0000000..9aaafd7
--- /dev/null
@@ -0,0 +1,22 @@
+define(['../lang/isDate', './isLeapYear'], function (isDate, isLeapYear) {
+
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+
+    /**
+     * returns the total amount of days in the month (considering leap years)
+     */
+    function totalDaysInMonth(fullYear, monthIndex){
+        if (isDate(fullYear)) {
+            monthIndex = fullYear.getMonth();
+        }
+
+        if (monthIndex === 1 && isLeapYear(fullYear)) {
+            return 29;
+        } else {
+            return DAYS_IN_MONTH[monthIndex];
+        }
+    }
+
+    return totalDaysInMonth;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/totalDaysInYear.js
new file mode 100644 (file)
index 0000000..e9036b4
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./isLeapYear'], function (isLeapYear) {
+
+    /**
+     * return the amount of days in the year following the gregorian calendar
+     * and leap years
+     */
+    function totalDaysInYear(fullYear){
+        return isLeapYear(fullYear)? 366 : 365;
+    }
+
+    return totalDaysInYear;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/weekOfTheYear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/date/weekOfTheYear.js
new file mode 100644 (file)
index 0000000..8dabc45
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./dayOfTheYear'], function (dayOfTheYear) {
+
+    /**
+     * Return the week of the year based on given firstDayOfWeek
+     */
+    function weekOfTheYear(date, firstDayOfWeek){
+        firstDayOfWeek = firstDayOfWeek == null? 0 : firstDayOfWeek;
+        var doy = dayOfTheYear(date);
+        var dow = (7 + date.getDay() - firstDayOfWeek) % 7;
+        var relativeWeekDay = 6 - firstDayOfWeek - dow;
+        return Math.floor((doy + relativeWeekDay) / 7);
+    }
+
+    return weekOfTheYear;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/awaitDelay.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/awaitDelay.js
new file mode 100644 (file)
index 0000000..88bea6e
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../time/now', './timeout', '../array/append'], function (now, timeout, append) {
+
+    /**
+     * Ensure a minimum delay for callbacks
+     */
+    function awaitDelay( callback, delay ){
+        var baseTime = now() + delay;
+        return function() {
+            // ensure all browsers will execute it asynchronously (avoid hard
+            // to catch errors) not using "0" because of old browsers and also
+            // since new browsers increase the value to be at least "4"
+            // http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout
+            var ms = Math.max(baseTime - now(), 4);
+            return timeout.apply(this, append([callback, ms, this], arguments));
+        };
+    }
+
+    return awaitDelay;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/bind.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/bind.js
new file mode 100644 (file)
index 0000000..787c298
--- /dev/null
@@ -0,0 +1,19 @@
+define(['../array/slice'], function(slice){
+
+    /**
+     * Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
+     * @param {Function} fn  Function.
+     * @param {object} context   Execution context.
+     * @param {rest} args    Arguments (0...n arguments).
+     * @return {Function} Wrapped Function.
+     */
+    function bind(fn, context, args){
+        var argsArr = slice(arguments, 2); //curried args
+        return function(){
+            return fn.apply(context, argsArr.concat(slice(arguments)));
+        };
+    }
+
+    return bind;
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/compose.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/compose.js
new file mode 100644 (file)
index 0000000..d8b228f
--- /dev/null
@@ -0,0 +1,23 @@
+define(function () {
+
+    /**
+     * Returns a function that composes multiple functions, passing results to
+     * each other.
+     */
+    function compose() {
+        var fns = arguments;
+        return function(arg){
+            // only cares about the first argument since the chain can only
+            // deal with a single return value anyway. It should start from
+            // the last fn.
+            var n = fns.length;
+            while (n--) {
+                arg = fns[n].call(this, arg);
+            }
+            return arg;
+         };
+     }
+
+     return compose;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/constant.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/constant.js
new file mode 100644 (file)
index 0000000..addd412
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Returns a new function that will return the value
+     */
+    function constant(value){
+        return function() {
+            return value;
+        };
+    }
+
+    return constant;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/debounce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/debounce.js
new file mode 100644 (file)
index 0000000..8c5fd47
--- /dev/null
@@ -0,0 +1,32 @@
+define(function () {
+
+    /**
+     * Debounce callback execution
+     */
+    function debounce(fn, threshold, isAsap){
+        var timeout, result;
+        function debounced(){
+            var args = arguments, context = this;
+            function delayed(){
+                if (! isAsap) {
+                    result = fn.apply(context, args);
+                }
+                timeout = null;
+            }
+            if (timeout) {
+                clearTimeout(timeout);
+            } else if (isAsap) {
+                result = fn.apply(context, args);
+            }
+            timeout = setTimeout(delayed, threshold);
+            return result;
+        }
+        debounced.cancel = function(){
+            clearTimeout(timeout);
+        };
+        return debounced;
+    }
+
+    return debounce;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/func.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/func.js
new file mode 100644 (file)
index 0000000..b920e00
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Returns a function that call a method on the passed object
+     */
+    function func(name){
+        return function(obj){
+            return obj[name]();
+        };
+    }
+
+    return func;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/identity.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/identity.js
new file mode 100644 (file)
index 0000000..59f7182
--- /dev/null
@@ -0,0 +1,12 @@
+define(function () {
+
+    /**
+     * Returns the first argument provided to it.
+     */
+    function identity(val){
+        return val;
+    }
+
+    return identity;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/makeIterator_.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/makeIterator_.js
new file mode 100644 (file)
index 0000000..771ea19
--- /dev/null
@@ -0,0 +1,32 @@
+define(['./identity', './prop', '../object/deepMatches'], function(identity, prop, deepMatches) {
+
+    /**
+     * Converts argument into a valid iterator.
+     * Used internally on most array/object/collection methods that receives a
+     * callback/iterator providing a shortcut syntax.
+     */
+    function makeIterator(src, thisObj){
+        if (src == null) {
+            return identity;
+        }
+        switch(typeof src) {
+            case 'function':
+                // function is the first to improve perf (most common case)
+                // also avoid using `Function#call` if not needed, which boosts
+                // perf a lot in some cases
+                return (typeof thisObj !== 'undefined')? function(val, i, arr){
+                    return src.call(thisObj, val, i, arr);
+                } : src;
+            case 'object':
+                return function(val){
+                    return deepMatches(val, src);
+                };
+            case 'string':
+            case 'number':
+                return prop(src);
+        }
+    }
+
+    return makeIterator;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/prop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/prop.js
new file mode 100644 (file)
index 0000000..c9df78c
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * Returns a function that gets a property of the passed object
+     */
+    function prop(name){
+        return function(obj){
+            return obj[name];
+        };
+    }
+
+    return prop;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/series.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/series.js
new file mode 100644 (file)
index 0000000..c8856a2
--- /dev/null
@@ -0,0 +1,22 @@
+define(function () {
+
+    /**
+     * Returns a function that will execute a list of functions in sequence
+     * passing the same arguments to each one. (useful for batch processing
+     * items during a forEach loop)
+     */
+    function series(){
+        var fns = arguments;
+        return function(){
+            var i = 0,
+                n = fns.length;
+            while (i < n) {
+                fns[i].apply(this, arguments);
+                i += 1;
+            }
+        };
+    }
+
+    return series;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/throttle.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/throttle.js
new file mode 100644 (file)
index 0000000..9fb47b2
--- /dev/null
@@ -0,0 +1,33 @@
+define(['../time/now'], function (now) {
+
+    /**
+     */
+    function throttle(fn, delay){
+        var context, timeout, result, args,
+            diff, prevCall = 0;
+        function delayed(){
+            prevCall = now();
+            timeout = null;
+            result = fn.apply(context, args);
+        }
+        function throttled(){
+            context = this;
+            args = arguments;
+            diff = delay - (now() - prevCall);
+            if (diff <= 0) {
+                clearTimeout(timeout);
+                delayed();
+            } else if (! timeout) {
+                timeout = setTimeout(delayed, diff);
+            }
+            return result;
+        }
+        throttled.cancel = function(){
+            clearTimeout(timeout);
+        };
+        return throttled;
+    }
+
+    return throttle;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/timeout.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/timeout.js
new file mode 100644 (file)
index 0000000..61b832c
--- /dev/null
@@ -0,0 +1,17 @@
+define(['../array/slice'], function (slice) {
+
+    /**
+     * Delays the call of a function within a given context.
+     */
+    function timeout(fn, millis, context){
+
+        var args = slice(arguments, 3);
+
+        return setTimeout(function() {
+            fn.apply(context, args);
+        }, millis);
+    }
+
+    return timeout;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/times.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/times.js
new file mode 100644 (file)
index 0000000..ec10cae
--- /dev/null
@@ -0,0 +1,17 @@
+define(function () {
+
+    /**
+     * Iterates over a callback a set amount of times
+     */
+    function times(n, callback, thisObj){
+        var i = -1;
+        while (++i < n) {
+            if ( callback.call(thisObj, i) === false ) {
+                break;
+            }
+        }
+    }
+
+    return times;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/wrap.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/function/wrap.js
new file mode 100644 (file)
index 0000000..b2f54dd
--- /dev/null
@@ -0,0 +1,14 @@
+define(['./partial'], function (partial) {
+
+    /**
+     * Returns the first function passed as an argument to the second,
+     * allowing you to adjust arguments, run code before and after, and
+     * conditionally execute the original function.
+     */
+    function wrap(fn, wrapper){
+        return partial(wrapper, fn);
+    }
+
+    return wrap;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/index.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/index.js
new file mode 100644 (file)
index 0000000..40cd88e
--- /dev/null
@@ -0,0 +1,25 @@
+/**@license
+ * mout v0.11.1 | http://moutjs.com | MIT license
+ */
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'VERSION' : '0.11.1',
+    'array' : require('./array'),
+    'collection' : require('./collection'),
+    'date' : require('./date'),
+    'function' : require('./function'),
+    'lang' : require('./lang'),
+    'math' : require('./math'),
+    'number' : require('./number'),
+    'object' : require('./object'),
+    'queryString' : require('./queryString'),
+    'random' : require('./random'),
+    'string' : require('./string'),
+    'time' : require('./time'),
+    'fn' : require('./function')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang.js
new file mode 100644 (file)
index 0000000..df713a5
--- /dev/null
@@ -0,0 +1,40 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'GLOBAL' : require('./lang/GLOBAL'),
+    'clone' : require('./lang/clone'),
+    'createObject' : require('./lang/createObject'),
+    'ctorApply' : require('./lang/ctorApply'),
+    'deepClone' : require('./lang/deepClone'),
+    'deepEquals' : require('./lang/deepEquals'),
+    'defaults' : require('./lang/defaults'),
+    'inheritPrototype' : require('./lang/inheritPrototype'),
+    'is' : require('./lang/is'),
+    'isArguments' : require('./lang/isArguments'),
+    'isArray' : require('./lang/isArray'),
+    'isBoolean' : require('./lang/isBoolean'),
+    'isDate' : require('./lang/isDate'),
+    'isEmpty' : require('./lang/isEmpty'),
+    'isFinite' : require('./lang/isFinite'),
+    'isFunction' : require('./lang/isFunction'),
+    'isInteger' : require('./lang/isInteger'),
+    'isKind' : require('./lang/isKind'),
+    'isNaN' : require('./lang/isNaN'),
+    'isNull' : require('./lang/isNull'),
+    'isNumber' : require('./lang/isNumber'),
+    'isObject' : require('./lang/isObject'),
+    'isPlainObject' : require('./lang/isPlainObject'),
+    'isPrimitive' : require('./lang/isPrimitive'),
+    'isRegExp' : require('./lang/isRegExp'),
+    'isString' : require('./lang/isString'),
+    'isUndefined' : require('./lang/isUndefined'),
+    'isnt' : require('./lang/isnt'),
+    'kindOf' : require('./lang/kindOf'),
+    'toArray' : require('./lang/toArray'),
+    'toNumber' : require('./lang/toNumber'),
+    'toString' : require('./lang/toString')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/GLOBAL.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/GLOBAL.js
new file mode 100644 (file)
index 0000000..dcd4a42
--- /dev/null
@@ -0,0 +1,7 @@
+define(function () {
+
+    // Reference to the global context (works on ES3 and ES5-strict mode)
+    //jshint -W061, -W064
+    return Function('return this')();
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/clone.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/clone.js
new file mode 100644 (file)
index 0000000..d3429fd
--- /dev/null
@@ -0,0 +1,47 @@
+define(['./kindOf', './isPlainObject', '../object/mixIn'], function (kindOf, isPlainObject, mixIn) {
+
+    /**
+     * Clone native types.
+     */
+    function clone(val){
+        switch (kindOf(val)) {
+            case 'Object':
+                return cloneObject(val);
+            case 'Array':
+                return cloneArray(val);
+            case 'RegExp':
+                return cloneRegExp(val);
+            case 'Date':
+                return cloneDate(val);
+            default:
+                return val;
+        }
+    }
+
+    function cloneObject(source) {
+        if (isPlainObject(source)) {
+            return mixIn({}, source);
+        } else {
+            return source;
+        }
+    }
+
+    function cloneRegExp(r) {
+        var flags = '';
+        flags += r.multiline ? 'm' : '';
+        flags += r.global ? 'g' : '';
+        flags += r.ignoreCase ? 'i' : '';
+        return new RegExp(r.source, flags);
+    }
+
+    function cloneDate(date) {
+        return new Date(+date);
+    }
+
+    function cloneArray(arr) {
+        return arr.slice();
+    }
+
+    return clone;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/createObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/createObject.js
new file mode 100644 (file)
index 0000000..f766150
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../object/mixIn'], function(mixIn){
+
+    /**
+     * Create Object using prototypal inheritance and setting custom properties.
+     * - Mix between Douglas Crockford Prototypal Inheritance <http://javascript.crockford.com/prototypal.html> and the EcmaScript 5 `Object.create()` method.
+     * @param {object} parent    Parent Object.
+     * @param {object} [props] Object properties.
+     * @return {object} Created object.
+     */
+    function createObject(parent, props){
+        function F(){}
+        F.prototype = parent;
+        return mixIn(new F(), props);
+
+    }
+    return createObject;
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/ctorApply.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/ctorApply.js
new file mode 100644 (file)
index 0000000..a9ac1c5
--- /dev/null
@@ -0,0 +1,17 @@
+define(function () {
+
+    function F(){}
+
+    /**
+     * Do fn.apply on a constructor.
+     */
+    function ctorApply(ctor, args) {
+        F.prototype = ctor.prototype;
+        var instance = new F();
+        ctor.apply(instance, args);
+        return instance;
+    }
+
+    return ctorApply;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepClone.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepClone.js
new file mode 100644 (file)
index 0000000..d45c10a
--- /dev/null
@@ -0,0 +1,45 @@
+define(['./clone', '../object/forOwn', './kindOf', './isPlainObject'], function (clone, forOwn, kindOf, isPlainObject) {
+
+    /**
+     * Recursively clone native types.
+     */
+    function deepClone(val, instanceClone) {
+        switch ( kindOf(val) ) {
+            case 'Object':
+                return cloneObject(val, instanceClone);
+            case 'Array':
+                return cloneArray(val, instanceClone);
+            default:
+                return clone(val);
+        }
+    }
+
+    function cloneObject(source, instanceClone) {
+        if (isPlainObject(source)) {
+            var out = {};
+            forOwn(source, function(val, key) {
+                this[key] = deepClone(val, instanceClone);
+            }, out);
+            return out;
+        } else if (instanceClone) {
+            return instanceClone(source);
+        } else {
+            return source;
+        }
+    }
+
+    function cloneArray(arr, instanceClone) {
+        var out = [],
+            i = -1,
+            n = arr.length,
+            val;
+        while (++i < n) {
+            out[i] = deepClone(arr[i], instanceClone);
+        }
+        return out;
+    }
+
+    return deepClone;
+
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepEquals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/deepEquals.js
new file mode 100644 (file)
index 0000000..f4eda1a
--- /dev/null
@@ -0,0 +1,26 @@
+define(['./is', './isObject', './isArray', '../object/equals', '../array/equals'], function (is, isObject, isArray, objEquals, arrEquals) {
+
+    /**
+     * Recursively checks for same properties and values.
+     */
+    function deepEquals(a, b, callback){
+        callback = callback || is;
+
+        var bothObjects = isObject(a) && isObject(b);
+        var bothArrays = !bothObjects && isArray(a) && isArray(b);
+
+        if (!bothObjects && !bothArrays) {
+            return callback(a, b);
+        }
+
+        function compare(a, b){
+            return deepEquals(a, b, callback);
+        }
+
+        var method = bothObjects ? objEquals : arrEquals;
+        return method(a, b, compare);
+    }
+
+    return deepEquals;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/defaults.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/defaults.js
new file mode 100644 (file)
index 0000000..5156b1b
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./toArray', '../array/find'], function (toArray, find) {
+
+    /**
+     * Return first non void argument
+     */
+    function defaults(var_args){
+        return find(toArray(arguments), nonVoid);
+    }
+
+    function nonVoid(val){
+        return val != null;
+    }
+
+    return defaults;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/inheritPrototype.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/inheritPrototype.js
new file mode 100644 (file)
index 0000000..64c9178
--- /dev/null
@@ -0,0 +1,18 @@
+define(['./createObject'], function(createObject){
+
+    /**
+    * Inherit prototype from another Object.
+    * - inspired by Nicholas Zackas <http://nczonline.net> Solution
+    * @param {object} child Child object
+    * @param {object} parent    Parent Object
+    */
+    function inheritPrototype(child, parent){
+        var p = createObject(parent.prototype);
+        p.constructor = child;
+        child.prototype = p;
+        child.super_ = parent;
+        return p;
+    }
+
+    return inheritPrototype;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/is.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/is.js
new file mode 100644 (file)
index 0000000..261a207
--- /dev/null
@@ -0,0 +1,23 @@
+define(function () {
+
+    /**
+     * Check if both arguments are egal.
+     */
+    function is(x, y){
+        // implementation borrowed from harmony:egal spec
+        if (x === y) {
+          // 0 === -0, but they are not identical
+          return x !== 0 || 1 / x === 1 / y;
+        }
+
+        // NaN !== NaN, but they are identical.
+        // NaNs are the only non-reflexive value, i.e., if x !== x,
+        // then x is a NaN.
+        // isNaN is broken: it converts its argument to number, so
+        // isNaN("foo") => true
+        return x !== x && y !== y;
+    }
+
+    return is;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArguments.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArguments.js
new file mode 100644 (file)
index 0000000..f889ee8
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./isKind'], function (isKind) {
+
+    /**
+     */
+    var isArgs = isKind(arguments, 'Arguments')?
+            function(val){
+                return isKind(val, 'Arguments');
+            } :
+            function(val){
+                // Arguments is an Object on IE7
+                return !!(val && Object.prototype.hasOwnProperty.call(val, 'callee'));
+            };
+
+    return isArgs;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArray.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isArray.js
new file mode 100644 (file)
index 0000000..886e2aa
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    var isArray = Array.isArray || function (val) {
+        return isKind(val, 'Array');
+    };
+    return isArray;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isBoolean.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isBoolean.js
new file mode 100644 (file)
index 0000000..1ca27a6
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isBoolean(val) {
+        return isKind(val, 'Boolean');
+    }
+    return isBoolean;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isDate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isDate.js
new file mode 100644 (file)
index 0000000..2708d67
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isDate(val) {
+        return isKind(val, 'Date');
+    }
+    return isDate;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isEmpty.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isEmpty.js
new file mode 100644 (file)
index 0000000..8b67750
--- /dev/null
@@ -0,0 +1,23 @@
+define(['../object/forOwn', './isArray'], function (forOwn, isArray) {
+
+    function isEmpty(val){
+        if (val == null) {
+            // typeof null == 'object' so we check it first
+            return true;
+        } else if ( typeof val === 'string' || isArray(val) ) {
+            return !val.length;
+        } else if ( typeof val === 'object' ) {
+            var result = true;
+            forOwn(val, function(){
+                result = false;
+                return false; // break loop
+            });
+            return result;
+        } else {
+            return true;
+        }
+    }
+
+    return isEmpty;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFinite.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFinite.js
new file mode 100644 (file)
index 0000000..05c29ac
--- /dev/null
@@ -0,0 +1,19 @@
+define(['./isNumber', './GLOBAL'], function (isNumber, GLOBAL) {
+
+    /**
+     * Check if value is finite
+     */
+    function isFinite(val){
+        var is = false;
+        if (typeof val === 'string' && val !== '') {
+            is = GLOBAL.isFinite( parseFloat(val) );
+        } else if (isNumber(val)){
+            // need to use isNumber because of Number constructor
+            is = GLOBAL.isFinite( val );
+        }
+        return is;
+    }
+
+    return isFinite;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFunction.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isFunction.js
new file mode 100644 (file)
index 0000000..ff5df7f
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isFunction(val) {
+        return isKind(val, 'Function');
+    }
+    return isFunction;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isInteger.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isInteger.js
new file mode 100644 (file)
index 0000000..1931f51
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./isNumber'], function (isNumber) {
+
+    /**
+     * Check if value is an integer
+     */
+    function isInteger(val){
+        return isNumber(val) && (val % 1 === 0);
+    }
+
+    return isInteger;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isKind.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isKind.js
new file mode 100644 (file)
index 0000000..6937a12
--- /dev/null
@@ -0,0 +1,9 @@
+define(['./kindOf'], function (kindOf) {
+    /**
+     * Check if value is from a specific "kind".
+     */
+    function isKind(val, kind){
+        return kindOf(val) === kind;
+    }
+    return isKind;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNaN.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNaN.js
new file mode 100644 (file)
index 0000000..2219404
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./isNumber', '../number/isNaN'], function (isNumber, $isNaN) {
+
+    /**
+     * Check if value is NaN for realz
+     */
+    function isNaN(val){
+        // based on the fact that NaN !== NaN
+        // need to check if it's a number to avoid conflicts with host objects
+        // also need to coerce ToNumber to avoid edge case `new Number(NaN)`
+        return !isNumber(val) || $isNaN(Number(val));
+    }
+
+    return isNaN;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNull.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNull.js
new file mode 100644 (file)
index 0000000..506e05e
--- /dev/null
@@ -0,0 +1,9 @@
+define(function () {
+    /**
+     */
+    function isNull(val){
+        return val === null;
+    }
+    return isNull;
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNumber.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isNumber.js
new file mode 100644 (file)
index 0000000..9a832c5
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isNumber(val) {
+        return isKind(val, 'Number');
+    }
+    return isNumber;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isObject.js
new file mode 100644 (file)
index 0000000..0befb06
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isObject(val) {
+        return isKind(val, 'Object');
+    }
+    return isObject;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPlainObject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPlainObject.js
new file mode 100644 (file)
index 0000000..406a279
--- /dev/null
@@ -0,0 +1,13 @@
+define(function () {
+
+    /**
+     * Checks if the value is created by the `Object` constructor.
+     */
+    function isPlainObject(value) {
+        return (!!value && typeof value === 'object' &&
+            value.constructor === Object);
+    }
+
+    return isPlainObject;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPrimitive.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isPrimitive.js
new file mode 100644 (file)
index 0000000..c4035ea
--- /dev/null
@@ -0,0 +1,21 @@
+define(function() {
+
+    /**
+     * Checks if the object is a primitive
+     */
+    function isPrimitive(value) {
+        // Using switch fallthrough because it's simple to read and is
+        // generally fast: http://jsperf.com/testing-value-is-primitive/5
+        switch (typeof value) {
+            case "string":
+            case "number":
+            case "boolean":
+                return true;
+        }
+
+        return value == null;
+    }
+
+    return isPrimitive;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isRegExp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isRegExp.js
new file mode 100644 (file)
index 0000000..d78a03d
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isRegExp(val) {
+        return isKind(val, 'RegExp');
+    }
+    return isRegExp;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isString.js
new file mode 100644 (file)
index 0000000..8a42fe0
--- /dev/null
@@ -0,0 +1,8 @@
+define(['./isKind'], function (isKind) {
+    /**
+     */
+    function isString(val) {
+        return isKind(val, 'String');
+    }
+    return isString;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isUndefined.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isUndefined.js
new file mode 100644 (file)
index 0000000..c57b28e
--- /dev/null
@@ -0,0 +1,10 @@
+define(function () {
+    var UNDEF;
+
+    /**
+     */
+    function isUndef(val){
+        return val === UNDEF;
+    }
+    return isUndef;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isnt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/isnt.js
new file mode 100644 (file)
index 0000000..d433622
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./is'], function (is) {
+
+    /**
+     * Check if both values are not identical/egal
+     */
+    function isnt(x, y){
+        return !is(x, y);
+    }
+
+    return isnt;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/kindOf.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/kindOf.js
new file mode 100644 (file)
index 0000000..97d21d1
--- /dev/null
@@ -0,0 +1,20 @@
+define(function () {
+
+    var _rKind = /^\[object (.*)\]$/,
+        _toString = Object.prototype.toString,
+        UNDEF;
+
+    /**
+     * Gets the "kind" of value. (e.g. "String", "Number", etc)
+     */
+    function kindOf(val) {
+        if (val === null) {
+            return 'Null';
+        } else if (val === UNDEF) {
+            return 'Undefined';
+        } else {
+            return _rKind.exec( _toString.call(val) )[1];
+        }
+    }
+    return kindOf;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toArray.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toArray.js
new file mode 100644 (file)
index 0000000..ad04d07
--- /dev/null
@@ -0,0 +1,29 @@
+define(['./kindOf', './GLOBAL'], function (kindOf, GLOBAL) {
+
+    /**
+     * Convert array-like object into array
+     */
+    function toArray(val){
+        var ret = [],
+            kind = kindOf(val),
+            n;
+
+        if (val != null) {
+            if ( val.length == null || kind === 'String' || kind === 'Function' || kind === 'RegExp' || val === GLOBAL ) {
+                //string, regexp, function have .length but user probably just want
+                //to wrap value into an array..
+                ret[ret.length] = val;
+            } else {
+                //window returns true on isObject in IE7 and may have length
+                //property. `typeof NodeList` returns `function` on Safari so
+                //we can't use it (#58)
+                n = val.length;
+                while (n--) {
+                    ret[n] = val[n];
+                }
+            }
+        }
+        return ret;
+    }
+    return toArray;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toNumber.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toNumber.js
new file mode 100644 (file)
index 0000000..3976738
--- /dev/null
@@ -0,0 +1,20 @@
+define(['./isArray'], function (isArray) {
+
+    /**
+     * covert value into number if numeric
+     */
+    function toNumber(val){
+        // numberic values should come first because of -0
+        if (typeof val === 'number') return val;
+        // we want all falsy values (besides -0) to return zero to avoid
+        // headaches
+        if (!val) return 0;
+        if (typeof val === 'string') return parseFloat(val);
+        // arrays are edge cases. `Number([4]) === 4`
+        if (isArray(val)) return NaN;
+        return Number(val);
+    }
+
+    return toNumber;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/lang/toString.js
new file mode 100644 (file)
index 0000000..c28b89a
--- /dev/null
@@ -0,0 +1,13 @@
+define(function () {
+
+    /**
+     * Typecast a value to a String, using an empty string value for null or
+     * undefined.
+     */
+    function toString(val){
+        return val == null ? '' : val.toString();
+    }
+
+    return toString;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/ceil.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/ceil.js
new file mode 100644 (file)
index 0000000..d73b058
--- /dev/null
@@ -0,0 +1,11 @@
+define(function(){
+    /**
+     * Round value up with a custom radix.
+     */
+    function ceil(val, step){
+        step = Math.abs(step || 1);
+        return Math.ceil(val / step) * step;
+    }
+
+    return ceil;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/clamp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/clamp.js
new file mode 100644 (file)
index 0000000..fb5a148
--- /dev/null
@@ -0,0 +1,9 @@
+define(function(){
+    /**
+     * Clamps value inside range.
+     */
+    function clamp(val, min, max){
+        return val < min? min : (val > max? max : val);
+    }
+    return clamp;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/countSteps.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/countSteps.js
new file mode 100644 (file)
index 0000000..0ecb32f
--- /dev/null
@@ -0,0 +1,16 @@
+define(function(){
+    /**
+    * Count number of full steps.
+    */
+    function countSteps(val, step, overflow){
+        val = Math.floor(val / step);
+
+        if (overflow) {
+            return val % overflow;
+        }
+
+        return val;
+    }
+
+    return countSteps;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/floor.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/floor.js
new file mode 100644 (file)
index 0000000..8a4456b
--- /dev/null
@@ -0,0 +1,10 @@
+define(function(){
+    /**
+    * Floor value to full steps.
+    */
+    function floor(val, step){
+        step = Math.abs(step || 1);
+        return Math.floor(val / step) * step;
+    }
+    return floor;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/inRange.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/inRange.js
new file mode 100644 (file)
index 0000000..0c89053
--- /dev/null
@@ -0,0 +1,11 @@
+define(function(){
+    /**
+    * Checks if value is inside the range.
+    */
+    function inRange(val, min, max, threshold){
+        threshold = threshold || 0;
+        return (val + threshold >= min && val - threshold <= max);
+    }
+
+    return inRange;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/isNear.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/isNear.js
new file mode 100644 (file)
index 0000000..b308a0b
--- /dev/null
@@ -0,0 +1,9 @@
+define(function(){
+    /**
+    * Check if value is close to target.
+    */
+    function isNear(val, target, threshold){
+        return (Math.abs(val - target) <= threshold);
+    }
+    return isNear;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/lerp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/lerp.js
new file mode 100644 (file)
index 0000000..26b99d0
--- /dev/null
@@ -0,0 +1,11 @@
+define(function(){
+    /**
+    * Linear interpolation.
+    * IMPORTANT:will return `Infinity` if numbers overflow Number.MAX_VALUE
+    */
+    function lerp(ratio, start, end){
+        return start + (end - start) * ratio;
+    }
+
+    return lerp;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/loop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/loop.js
new file mode 100644 (file)
index 0000000..c735ecf
--- /dev/null
@@ -0,0 +1,10 @@
+define(function(){
+    /**
+    * Loops value inside range.
+    */
+    function loop(val, min, max){
+        return val < min? max : (val > max? min : val);
+    }
+
+    return loop;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/map.js
new file mode 100644 (file)
index 0000000..bf7dc5d
--- /dev/null
@@ -0,0 +1,10 @@
+define(['./lerp', './norm'], function(lerp, norm){
+    /**
+    * Maps a number from one scale to another.
+    * @example map(3, 0, 4, -1, 1) -> 0.5
+    */
+    function map(val, min1, max1, min2, max2){
+        return lerp( norm(val, min1, max1), min2, max2 );
+    }
+    return map;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/norm.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/norm.js
new file mode 100644 (file)
index 0000000..724d4f5
--- /dev/null
@@ -0,0 +1,13 @@
+define(function(){
+    /**
+    * Gets normalized ratio of value inside range.
+    */
+    function norm(val, min, max){
+        if (val < min || val > max) {
+            throw new RangeError('value (' + val + ') must be between ' + min + ' and ' + max);
+        }
+
+        return val === max ? 1 : (val - min) / (max - min);
+    }
+    return norm;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/round.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/math/round.js
new file mode 100644 (file)
index 0000000..b43e4ac
--- /dev/null
@@ -0,0 +1,12 @@
+define(function () {
+    /**
+     * Round number to a specific radix
+     */
+    function round(value, radix){
+        radix = radix || 1; // default round 1
+        return Math.round(value / radix) * radix;
+    }
+
+    return round;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number.js
new file mode 100644 (file)
index 0000000..ffdb2cd
--- /dev/null
@@ -0,0 +1,25 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'MAX_INT' : require('./number/MAX_INT'),
+    'MAX_SAFE_INTEGER' : require('./number/MAX_SAFE_INTEGER'),
+    'MAX_UINT' : require('./number/MAX_UINT'),
+    'MIN_INT' : require('./number/MIN_INT'),
+    'abbreviate' : require('./number/abbreviate'),
+    'currencyFormat' : require('./number/currencyFormat'),
+    'enforcePrecision' : require('./number/enforcePrecision'),
+    'isNaN' : require('./number/isNaN'),
+    'nth' : require('./number/nth'),
+    'ordinal' : require('./number/ordinal'),
+    'pad' : require('./number/pad'),
+    'rol' : require('./number/rol'),
+    'ror' : require('./number/ror'),
+    'sign' : require('./number/sign'),
+    'toInt' : require('./number/toInt'),
+    'toUInt' : require('./number/toUInt'),
+    'toUInt31' : require('./number/toUInt31')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_INT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_INT.js
new file mode 100644 (file)
index 0000000..23a6e1a
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Maximum 32-bit signed integer value. (2^31 - 1)
+ */
+define(function(){
+    return 2147483647;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_SAFE_INTEGER.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_SAFE_INTEGER.js
new file mode 100644 (file)
index 0000000..ecdc62e
--- /dev/null
@@ -0,0 +1,7 @@
+define(function () {
+
+    // maximum safe integer (Math.pow(2, 53) - 1)
+    // see: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.max_safe_integer
+    return 9007199254740991;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_UINT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MAX_UINT.js
new file mode 100644 (file)
index 0000000..a035096
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Maximum 32-bit unsigned integet value (2^32 - 1)
+ */
+define(function(){
+    return 4294967295;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MIN_INT.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/MIN_INT.js
new file mode 100644 (file)
index 0000000..9b3e978
--- /dev/null
@@ -0,0 +1,6 @@
+/**
+ * @constant Minimum 32-bit signed integer value (-2^31).
+ */
+define(function(){
+    return -2147483648;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/abbreviate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/abbreviate.js
new file mode 100644 (file)
index 0000000..7e7405a
--- /dev/null
@@ -0,0 +1,35 @@
+define(['./enforcePrecision'], function (enforcePrecision) {
+
+    var _defaultDict = {
+        thousand : 'K',
+        million : 'M',
+        billion : 'B'
+    };
+
+    /**
+     * Abbreviate number if bigger than 1000. (eg: 2.5K, 17.5M, 3.4B, ...)
+     */
+    function abbreviateNumber(val, nDecimals, dict){
+        nDecimals = nDecimals != null? nDecimals : 1;
+        dict = dict || _defaultDict;
+        val = enforcePrecision(val, nDecimals);
+
+        var str, mod;
+
+        if (val < 1000000) {
+            mod = enforcePrecision(val / 1000, nDecimals);
+            // might overflow to next scale during rounding
+            str = mod < 1000? mod + dict.thousand : 1 + dict.million;
+        } else if (val < 1000000000) {
+            mod = enforcePrecision(val / 1000000, nDecimals);
+            str = mod < 1000? mod + dict.million : 1 + dict.billion;
+        } else {
+            str = enforcePrecision(val / 1000000000, nDecimals) + dict.billion;
+        }
+
+        return str;
+    }
+
+    return abbreviateNumber;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/currencyFormat.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/currencyFormat.js
new file mode 100644 (file)
index 0000000..1e5fecb
--- /dev/null
@@ -0,0 +1,27 @@
+define(['../lang/toNumber'], function (toNumber) {
+
+    /**
+     * Converts number into currency format
+     */
+    function currencyFormat(val, nDecimalDigits, decimalSeparator, thousandsSeparator) {
+        val = toNumber(val);
+        nDecimalDigits = nDecimalDigits == null? 2 : nDecimalDigits;
+        decimalSeparator = decimalSeparator == null? '.' : decimalSeparator;
+        thousandsSeparator = thousandsSeparator == null? ',' : thousandsSeparator;
+
+        //can't use enforce precision since it returns a number and we are
+        //doing a RegExp over the string
+        var fixed = val.toFixed(nDecimalDigits),
+            //separate begin [$1], middle [$2] and decimal digits [$4]
+            parts = new RegExp('^(-?\\d{1,3})((?:\\d{3})+)(\\.(\\d{'+ nDecimalDigits +'}))?$').exec( fixed );
+
+        if(parts){ //val >= 1000 || val <= -1000
+            return parts[1] + parts[2].replace(/\d{3}/g, thousandsSeparator + '$&') + (parts[4] ? decimalSeparator + parts[4] : '');
+        }else{
+            return fixed.replace('.', decimalSeparator);
+        }
+    }
+
+    return currencyFormat;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/enforcePrecision.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/enforcePrecision.js
new file mode 100644 (file)
index 0000000..1e65e50
--- /dev/null
@@ -0,0 +1,12 @@
+define(['../lang/toNumber'], function(toNumber){
+    /**
+     * Enforce a specific amount of decimal digits and also fix floating
+     * point rounding issues.
+     */
+    function enforcePrecision(val, nDecimalDigits){
+        val = toNumber(val);
+        var pow = Math.pow(10, nDecimalDigits);
+        return +(Math.round(val * pow) / pow).toFixed(nDecimalDigits);
+    }
+    return enforcePrecision;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/isNaN.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/isNaN.js
new file mode 100644 (file)
index 0000000..3f1ebb6
--- /dev/null
@@ -0,0 +1,14 @@
+define(function () {
+
+    /**
+     * ES6 Number.isNaN
+     * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isNaN
+     */
+    function isNaN(val){
+        // jshint eqeqeq:false
+        return typeof val === 'number' && val != val;
+    }
+
+    return isNaN;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/nth.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/nth.js
new file mode 100644 (file)
index 0000000..e991e2b
--- /dev/null
@@ -0,0 +1,25 @@
+define(function () {
+
+    /**
+     * Returns "nth" of number (1 = "st", 2 = "nd", 3 = "rd", 4..10 = "th", ...)
+     */
+    function nth(i) {
+        var t = (i % 100);
+        if (t >= 10 && t <= 20) {
+            return 'th';
+        }
+        switch(i % 10) {
+            case 1:
+                return 'st';
+            case 2:
+                return 'nd';
+            case 3:
+                return 'rd';
+            default:
+                return 'th';
+        }
+    }
+
+    return nth;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ordinal.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ordinal.js
new file mode 100644 (file)
index 0000000..17927fc
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./toInt', './nth'], function (toInt, nth) {
+
+    /**
+     * converts number into ordinal form (1st, 2nd, 3rd, 4th, ...)
+     */
+    function ordinal(n){
+       n = toInt(n);
+       return n + nth(n);
+    }
+
+    return ordinal;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/pad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/pad.js
new file mode 100644 (file)
index 0000000..194a3df
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../string/lpad', '../lang/toNumber'], function(lpad, toNumber){
+
+    /**
+     * Add padding zeros if n.length < minLength.
+     */
+    function pad(n, minLength, char){
+        n = toNumber(n);
+        return lpad(''+ n, minLength, char || '0');
+    }
+
+    return pad;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/rol.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/rol.js
new file mode 100644 (file)
index 0000000..a148f44
--- /dev/null
@@ -0,0 +1,10 @@
+define(function(){
+    /**
+     * Bitwise circular shift left
+     * http://en.wikipedia.org/wiki/Circular_shift
+     */
+    function rol(val, shift){
+        return (val << shift) | (val >> (32 - shift));
+    }
+    return rol;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ror.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/ror.js
new file mode 100644 (file)
index 0000000..b5c66f9
--- /dev/null
@@ -0,0 +1,10 @@
+define(function(){
+    /**
+     * Bitwise circular shift right
+     * http://en.wikipedia.org/wiki/Circular_shift
+     */
+    function ror(val, shift){
+        return (val >> shift) | (val << (32 - shift));
+    }
+    return ror;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/sign.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/sign.js
new file mode 100644 (file)
index 0000000..b387c95
--- /dev/null
@@ -0,0 +1,15 @@
+define(['../lang/toNumber'], function (toNumber) {
+
+    /**
+     * Get sign of the value.
+     */
+    function sign(val) {
+        var num = toNumber(val);
+        if (num === 0) return num; // +0 and +0 === 0
+        if (isNaN(num)) return num; // NaN
+        return num < 0? -1 : 1;
+    }
+
+    return sign;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toInt.js
new file mode 100644 (file)
index 0000000..5ea59e5
--- /dev/null
@@ -0,0 +1,17 @@
+define(function(){
+
+    /**
+     * "Convert" value into an 32-bit integer.
+     * Works like `Math.floor` if val > 0 and `Math.ceil` if val < 0.
+     * IMPORTANT: val will wrap at 2^31 and -2^31.
+     * Perf tests: http://jsperf.com/vs-vs-parseint-bitwise-operators/7
+     */
+    function toInt(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return ~~val;
+    }
+
+    return toInt;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt.js
new file mode 100644 (file)
index 0000000..36bbdad
--- /dev/null
@@ -0,0 +1,15 @@
+define(function () {
+
+    /**
+     * "Convert" value into a 32-bit unsigned integer.
+     * IMPORTANT: Value will wrap at 2^32.
+     */
+    function toUInt(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return val >>> 0;
+    }
+
+    return toUInt;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt31.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/number/toUInt31.js
new file mode 100644 (file)
index 0000000..c1c4aff
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./MAX_INT'], function(MAX_INT){
+
+    /**
+     * "Convert" value into an 31-bit unsigned integer (since 1 bit is used for sign).
+     * IMPORTANT: value wil wrap at 2^31, if negative will return 0.
+     */
+    function toUInt31(val){
+        // we do not use lang/toNumber because of perf and also because it
+        // doesn't break the functionality
+        return (val <= 0)? 0 : (val > MAX_INT? ~~(val % (MAX_INT + 1)) : ~~val);
+    }
+
+    return toUInt31;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object.js
new file mode 100644 (file)
index 0000000..93cb49e
--- /dev/null
@@ -0,0 +1,44 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'bindAll' : require('./object/bindAll'),
+    'contains' : require('./object/contains'),
+    'deepFillIn' : require('./object/deepFillIn'),
+    'deepMatches' : require('./object/deepMatches'),
+    'deepMixIn' : require('./object/deepMixIn'),
+    'equals' : require('./object/equals'),
+    'every' : require('./object/every'),
+    'fillIn' : require('./object/fillIn'),
+    'filter' : require('./object/filter'),
+    'find' : require('./object/find'),
+    'flatten' : require('./object/flatten'),
+    'forIn' : require('./object/forIn'),
+    'forOwn' : require('./object/forOwn'),
+    'functions' : require('./object/functions'),
+    'get' : require('./object/get'),
+    'has' : require('./object/has'),
+    'hasOwn' : require('./object/hasOwn'),
+    'keys' : require('./object/keys'),
+    'map' : require('./object/map'),
+    'matches' : require('./object/matches'),
+    'max' : require('./object/max'),
+    'merge' : require('./object/merge'),
+    'min' : require('./object/min'),
+    'mixIn' : require('./object/mixIn'),
+    'namespace' : require('./object/namespace'),
+    'omit' : require('./object/omit'),
+    'pick' : require('./object/pick'),
+    'pluck' : require('./object/pluck'),
+    'reduce' : require('./object/reduce'),
+    'reject' : require('./object/reject'),
+    'result' : require('./object/result'),
+    'set' : require('./object/set'),
+    'size' : require('./object/size'),
+    'some' : require('./object/some'),
+    'unset' : require('./object/unset'),
+    'values' : require('./object/values')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/bindAll.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/bindAll.js
new file mode 100644 (file)
index 0000000..76576d6
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./functions', '../function/bind', '../array/forEach', '../array/slice'], function (functions, bind, forEach, slice) {
+
+    /**
+     * Binds methods of the object to be run in it's own context.
+     */
+    function bindAll(obj, rest_methodNames){
+        var keys = arguments.length > 1?
+                    slice(arguments, 1) : functions(obj);
+        forEach(keys, function(key){
+            obj[key] = bind(obj[key], obj);
+        });
+    }
+
+    return bindAll;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/contains.js
new file mode 100644 (file)
index 0000000..297e898
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./some'], function (some) {
+
+    /**
+     * Check if object contains value
+     */
+    function contains(obj, needle) {
+        return some(obj, function(val) {
+            return (val === needle);
+        });
+    }
+    return contains;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepFillIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepFillIn.js
new file mode 100644 (file)
index 0000000..ee69c3d
--- /dev/null
@@ -0,0 +1,32 @@
+define(['./forOwn', '../lang/isPlainObject'], function (forOwn, isPlainObject) {
+
+    /**
+     * Deeply copy missing properties in the target from the defaults.
+     */
+    function deepFillIn(target, defaults){
+        var i = 0,
+            n = arguments.length,
+            obj;
+
+        while(++i < n) {
+            obj = arguments[i];
+            if (obj) {
+                // jshint loopfunc: true
+                forOwn(obj, function(newValue, key) {
+                    var curValue = target[key];
+                    if (curValue == null) {
+                        target[key] = newValue;
+                    } else if (isPlainObject(curValue) &&
+                               isPlainObject(newValue)) {
+                        deepFillIn(curValue, newValue);
+                    }
+                });
+            }
+        }
+
+        return target;
+    }
+
+    return deepFillIn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepMixIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/deepMixIn.js
new file mode 100644 (file)
index 0000000..1b4178e
--- /dev/null
@@ -0,0 +1,33 @@
+define(['./forOwn', '../lang/isPlainObject'], function (forOwn, isPlainObject) {
+
+    /**
+     * Mixes objects into the target object, recursively mixing existing child
+     * objects.
+     */
+    function deepMixIn(target, objects) {
+        var i = 0,
+            n = arguments.length,
+            obj;
+
+        while(++i < n){
+            obj = arguments[i];
+            if (obj) {
+                forOwn(obj, copyProp, target);
+            }
+        }
+
+        return target;
+    }
+
+    function copyProp(val, key) {
+        var existing = this[key];
+        if (isPlainObject(val) && isPlainObject(existing)) {
+            deepMixIn(existing, val);
+        } else {
+            this[key] = val;
+        }
+    }
+
+    return deepMixIn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/equals.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/equals.js
new file mode 100644 (file)
index 0000000..aeb8740
--- /dev/null
@@ -0,0 +1,30 @@
+define(['./hasOwn', './every', '../lang/isObject', '../lang/is'], function(hasOwn, every, isObject, is) {
+
+    // Makes a function to compare the object values from the specified compare
+    // operation callback.
+    function makeCompare(callback) {
+        return function(value, key) {
+            return hasOwn(this, key) && callback(value, this[key]);
+        };
+    }
+
+    function checkProperties(value, key) {
+        return hasOwn(this, key);
+    }
+
+    /**
+     * Checks if two objects have the same keys and values.
+     */
+    function equals(a, b, callback) {
+        callback = callback || is;
+
+        if (!isObject(a) || !isObject(b)) {
+            return callback(a, b);
+        }
+
+        return (every(a, makeCompare(callback), b) &&
+                every(b, checkProperties, a));
+    }
+
+    return equals;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/every.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/every.js
new file mode 100644 (file)
index 0000000..52983a5
--- /dev/null
@@ -0,0 +1,22 @@
+define(['./forOwn', '../function/makeIterator_'], function(forOwn, makeIterator) {
+
+    /**
+     * Object every
+     */
+    function every(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = true;
+        forOwn(obj, function(val, key) {
+            // we consider any falsy values as "false" on purpose so shorthand
+            // syntax can be used to check property existence
+            if (!callback(val, key, obj)) {
+                result = false;
+                return false; // break
+            }
+        });
+        return result;
+    }
+
+    return every;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/fillIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/fillIn.js
new file mode 100644 (file)
index 0000000..363beab
--- /dev/null
@@ -0,0 +1,19 @@
+define(['../array/forEach', '../array/slice', './forOwn'], function (forEach, slice, forOwn) {
+
+    /**
+     * Copy missing properties in the obj from the defaults.
+     */
+    function fillIn(obj, var_defaults){
+        forEach(slice(arguments, 1), function(base){
+            forOwn(base, function(val, key){
+                if (obj[key] == null) {
+                    obj[key] = val;
+                }
+            });
+        });
+        return obj;
+    }
+
+    return fillIn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/filter.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/filter.js
new file mode 100644 (file)
index 0000000..f213b91
--- /dev/null
@@ -0,0 +1,19 @@
+define(['./forOwn', '../function/makeIterator_'], function(forOwn, makeIterator) {
+
+    /**
+     * Creates a new object with all the properties where the callback returns
+     * true.
+     */
+    function filterValues(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var output = {};
+        forOwn(obj, function(value, key, obj) {
+            if (callback(value, key, obj)) {
+                output[key] = value;
+            }
+        });
+
+        return output;
+    }
+    return filterValues;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/find.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/find.js
new file mode 100644 (file)
index 0000000..47e6b09
--- /dev/null
@@ -0,0 +1,20 @@
+define(['./some', '../function/makeIterator_'], function(some, makeIterator) {
+
+    /**
+     * Returns first item that matches criteria
+     */
+    function find(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result;
+        some(obj, function(value, key, obj) {
+            if (callback(value, key, obj)) {
+                result = value;
+                return true; //break
+            }
+        });
+        return result;
+    }
+
+    return find;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/flatten.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/flatten.js
new file mode 100644 (file)
index 0000000..4fe07af
--- /dev/null
@@ -0,0 +1,37 @@
+define(['./forOwn', '../lang/isPlainObject'], function (forOwn, isPlainObject) {
+
+    /*
+     * Helper function to flatten to a destination object.
+     * Used to remove the need to create intermediate objects while flattening.
+     */
+    function flattenTo(obj, result, prefix, level) {
+        forOwn(obj, function (value, key) {
+            var nestedPrefix = prefix ? prefix + '.' + key : key;
+
+            if (level !== 0 && isPlainObject(value)) {
+                flattenTo(value, result, nestedPrefix, level - 1);
+            } else {
+                result[nestedPrefix] = value;
+            }
+        });
+
+        return result;
+    }
+
+    /**
+     * Recursively flattens an object.
+     * A new object containing all the elements is returned.
+     * If level is specified, it will only flatten up to that level.
+     */
+    function flatten(obj, level) {
+        if (obj == null) {
+            return {};
+        }
+
+        level = level == null ? -1 : level;
+        return flattenTo(obj, {}, '', level);
+    }
+
+    return flatten;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forIn.js
new file mode 100644 (file)
index 0000000..90f2706
--- /dev/null
@@ -0,0 +1,76 @@
+define(['./hasOwn'], function (hasOwn) {
+
+    var _hasDontEnumBug,
+        _dontEnums;
+
+    function checkDontEnum(){
+        _dontEnums = [
+                'toString',
+                'toLocaleString',
+                'valueOf',
+                'hasOwnProperty',
+                'isPrototypeOf',
+                'propertyIsEnumerable',
+                'constructor'
+            ];
+
+        _hasDontEnumBug = true;
+
+        for (var key in {'toString': null}) {
+            _hasDontEnumBug = false;
+        }
+    }
+
+    /**
+     * Similar to Array/forEach but works over object properties and fixes Don't
+     * Enum bug on IE.
+     * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+     */
+    function forIn(obj, fn, thisObj){
+        var key, i = 0;
+        // no need to check if argument is a real object that way we can use
+        // it for arrays, functions, date, etc.
+
+        //post-pone check till needed
+        if (_hasDontEnumBug == null) checkDontEnum();
+
+        for (key in obj) {
+            if (exec(fn, obj, key, thisObj) === false) {
+                break;
+            }
+        }
+
+
+        if (_hasDontEnumBug) {
+            var ctor = obj.constructor,
+                isProto = !!ctor && obj === ctor.prototype;
+
+            while (key = _dontEnums[i++]) {
+                // For constructor, if it is a prototype object the constructor
+                // is always non-enumerable unless defined otherwise (and
+                // enumerated above).  For non-prototype objects, it will have
+                // to be defined on this object, since it cannot be defined on
+                // any prototype objects.
+                //
+                // For other [[DontEnum]] properties, check if the value is
+                // different than Object prototype value.
+                if (
+                    (key !== 'constructor' ||
+                        (!isProto && hasOwn(obj, key))) &&
+                    obj[key] !== Object.prototype[key]
+                ) {
+                    if (exec(fn, obj, key, thisObj) === false) {
+                        break;
+                    }
+                }
+            }
+        }
+    }
+
+    function exec(fn, obj, key, thisObj){
+        return fn.call(thisObj, obj[key], key, obj);
+    }
+
+    return forIn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forOwn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/forOwn.js
new file mode 100644 (file)
index 0000000..b40cbaf
--- /dev/null
@@ -0,0 +1,18 @@
+define(['./hasOwn', './forIn'], function (hasOwn, forIn) {
+
+    /**
+     * Similar to Array/forEach but works over object properties and fixes Don't
+     * Enum bug on IE.
+     * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+     */
+    function forOwn(obj, fn, thisObj){
+        forIn(obj, function(val, key){
+            if (hasOwn(obj, key)) {
+                return fn.call(thisObj, obj[key], key, obj);
+            }
+        });
+    }
+
+    return forOwn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/functions.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/functions.js
new file mode 100644 (file)
index 0000000..60fee3d
--- /dev/null
@@ -0,0 +1,18 @@
+define(['./forIn'], function (forIn) {
+
+    /**
+     * return a list of all enumerable properties that have function values
+     */
+    function functions(obj){
+        var keys = [];
+        forIn(obj, function(val, key){
+            if (typeof val === 'function'){
+                keys.push(key);
+            }
+        });
+        return keys.sort();
+    }
+
+    return functions;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/get.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/get.js
new file mode 100644 (file)
index 0000000..464c7bc
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../lang/isPrimitive'], function (isPrimitive) {
+
+    /**
+     * get "nested" object property
+     */
+    function get(obj, prop){
+        var parts = prop.split('.'),
+            last = parts.pop();
+
+        while (prop = parts.shift()) {
+            obj = obj[prop];
+            if (obj == null) return;
+        }
+
+        return obj[last];
+    }
+
+    return get;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/has.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/has.js
new file mode 100644 (file)
index 0000000..cc29817
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./get'], function (get) {
+
+    var UNDEF;
+
+    /**
+     * Check if object has nested property.
+     */
+    function has(obj, prop){
+        return get(obj, prop) !== UNDEF;
+    }
+
+    return has;
+
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/hasOwn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/hasOwn.js
new file mode 100644 (file)
index 0000000..5c53bcf
--- /dev/null
@@ -0,0 +1,12 @@
+define(function () {
+
+    /**
+     * Safer Object.hasOwnProperty
+     */
+     function hasOwn(obj, prop){
+         return Object.prototype.hasOwnProperty.call(obj, prop);
+     }
+
+     return hasOwn;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/keys.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/keys.js
new file mode 100644 (file)
index 0000000..ed7c4f9
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./forOwn'], function (forOwn) {
+
+    /**
+     * Get object keys
+     */
+     var keys = Object.keys || function (obj) {
+            var keys = [];
+            forOwn(obj, function(val, key){
+                keys.push(key);
+            });
+            return keys;
+        };
+
+    return keys;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/map.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/map.js
new file mode 100644 (file)
index 0000000..2958f6b
--- /dev/null
@@ -0,0 +1,17 @@
+define(['./forOwn', '../function/makeIterator_'], function(forOwn, makeIterator) {
+
+    /**
+     * Creates a new object where all the values are the result of calling
+     * `callback`.
+     */
+    function mapValues(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var output = {};
+        forOwn(obj, function(val, key, obj) {
+            output[key] = callback(val, key, obj);
+        });
+
+        return output;
+    }
+    return mapValues;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/matches.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/matches.js
new file mode 100644 (file)
index 0000000..73ff427
--- /dev/null
@@ -0,0 +1,20 @@
+define(['./forOwn'], function (forOwn) {
+
+    /**
+     * checks if a object contains all given properties/values
+     */
+    function matches(target, props){
+        // can't use "object/every" because of circular dependency
+        var result = true;
+        forOwn(props, function(val, key){
+            if (target[key] !== val) {
+                // break loop at first difference
+                return (result = false);
+            }
+        });
+        return result;
+    }
+
+    return matches;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/max.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/max.js
new file mode 100644 (file)
index 0000000..ef311dc
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../array/max', './values'], function(arrMax, values) {
+
+    /**
+     * Returns maximum value inside object.
+     */
+    function max(obj, compareFn) {
+        return arrMax(values(obj), compareFn);
+    }
+
+    return max;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/merge.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/merge.js
new file mode 100644 (file)
index 0000000..d7cfede
--- /dev/null
@@ -0,0 +1,38 @@
+define(['./hasOwn', '../lang/deepClone', '../lang/isObject'], function (hasOwn, deepClone, isObject) {
+
+    /**
+     * Deep merge objects.
+     */
+    function merge() {
+        var i = 1,
+            key, val, obj, target;
+
+        // make sure we don't modify source element and it's properties
+        // objects are passed by reference
+        target = deepClone( arguments[0] );
+
+        while (obj = arguments[i++]) {
+            for (key in obj) {
+                if ( ! hasOwn(obj, key) ) {
+                    continue;
+                }
+
+                val = obj[key];
+
+                if ( isObject(val) && isObject(target[key]) ){
+                    // inception, deep merge objects
+                    target[key] = merge(target[key], val);
+                } else {
+                    // make sure arrays, regexp, date, objects are cloned
+                    target[key] = deepClone(val);
+                }
+
+            }
+        }
+
+        return target;
+    }
+
+    return merge;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/min.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/min.js
new file mode 100644 (file)
index 0000000..9fb4c1a
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../array/min', './values'], function(arrMin, values) {
+
+    /**
+     * Returns minimum value inside object.
+     */
+    function min(obj, iterator) {
+        return arrMin(values(obj), iterator);
+    }
+
+    return min;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/mixIn.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/mixIn.js
new file mode 100644 (file)
index 0000000..6210b7e
--- /dev/null
@@ -0,0 +1,28 @@
+define(['./forOwn'], function(forOwn){
+
+    /**
+    * Combine properties from all the objects into first one.
+    * - This method affects target object in place, if you want to create a new Object pass an empty object as first param.
+    * @param {object} target    Target Object
+    * @param {...object} objects    Objects to be combined (0...n objects).
+    * @return {object} Target Object.
+    */
+    function mixIn(target, objects){
+        var i = 0,
+            n = arguments.length,
+            obj;
+        while(++i < n){
+            obj = arguments[i];
+            if (obj != null) {
+                forOwn(obj, copyProp, target);
+            }
+        }
+        return target;
+    }
+
+    function copyProp(val, key){
+        this[key] = val;
+    }
+
+    return mixIn;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/namespace.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/namespace.js
new file mode 100644 (file)
index 0000000..7ed65db
--- /dev/null
@@ -0,0 +1,19 @@
+define(['../array/forEach'], function (forEach) {
+
+    /**
+     * Create nested object if non-existent
+     */
+    function namespace(obj, path){
+        if (!path) return obj;
+        forEach(path.split('.'), function(key){
+            if (!obj[key]) {
+                obj[key] = {};
+            }
+            obj = obj[key];
+        });
+        return obj;
+    }
+
+    return namespace;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/omit.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/omit.js
new file mode 100644 (file)
index 0000000..829cc58
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../array/slice', '../array/contains'], function(slice, contains){
+
+    /**
+     * Return a copy of the object, filtered to only contain properties except the blacklisted keys.
+     */
+    function omit(obj, var_keys){
+        var keys = typeof arguments[1] !== 'string'? arguments[1] : slice(arguments, 1),
+            out = {};
+
+        for (var property in obj) {
+            if (obj.hasOwnProperty(property) && !contains(keys, property)) {
+                out[property] = obj[property];
+            }
+        }
+        return out;
+    }
+
+    return omit;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pick.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pick.js
new file mode 100644 (file)
index 0000000..9d5e351
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../array/slice'], function(slice){
+
+    /**
+     * Return a copy of the object, filtered to only have values for the whitelisted keys.
+     */
+    function pick(obj, var_keys){
+        var keys = typeof arguments[1] !== 'string'? arguments[1] : slice(arguments, 1),
+            out = {},
+            i = 0, key;
+        while (key = keys[i++]) {
+            out[key] = obj[key];
+        }
+        return out;
+    }
+
+    return pick;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pluck.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/pluck.js
new file mode 100644 (file)
index 0000000..d47744b
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./map', '../function/prop'], function (map, prop) {
+
+    /**
+     * Extract a list of property values.
+     */
+    function pluck(obj, propName){
+        return map(obj, prop(propName));
+    }
+
+    return pluck;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reduce.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reduce.js
new file mode 100644 (file)
index 0000000..d3a5778
--- /dev/null
@@ -0,0 +1,28 @@
+define(['./forOwn', './size'], function(forOwn, size) {
+
+    /**
+     * Object reduce
+     */
+    function reduce(obj, callback, memo, thisObj) {
+        var initial = arguments.length > 2;
+
+        if (!size(obj) && !initial) {
+            throw new Error('reduce of empty object with no initial value');
+        }
+
+        forOwn(obj, function(value, key, list) {
+            if (!initial) {
+                memo = value;
+                initial = true;
+            }
+            else {
+                memo = callback.call(thisObj, memo, value, key, list);
+            }
+        });
+
+        return memo;
+    }
+
+    return reduce;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reject.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/reject.js
new file mode 100644 (file)
index 0000000..8429642
--- /dev/null
@@ -0,0 +1,15 @@
+define(['./filter', '../function/makeIterator_'], function (filter, makeIterator) {
+
+    /**
+     * Object reject
+     */
+    function reject(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        return filter(obj, function(value, index, obj) {
+            return !callback(value, index, obj);
+        }, thisObj);
+    }
+
+    return reject;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/result.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/result.js
new file mode 100644 (file)
index 0000000..133572d
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../lang/isFunction'], function (isFunction) {
+
+    function result(obj, prop) {
+        var property = obj[prop];
+
+        if(property === undefined) {
+            return;
+        }
+
+        return isFunction(property) ? property.call(obj) : property;
+    }
+
+    return result;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/set.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/set.js
new file mode 100644 (file)
index 0000000..b8fa25a
--- /dev/null
@@ -0,0 +1,17 @@
+define(['./namespace'], function (namespace) {
+
+    /**
+     * set "nested" object property
+     */
+    function set(obj, prop, val){
+        var parts = (/^(.+)\.(.+)$/).exec(prop);
+        if (parts){
+            namespace(obj, parts[1])[parts[2]] = val;
+        } else {
+            obj[prop] = val;
+        }
+    }
+
+    return set;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/size.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/size.js
new file mode 100644 (file)
index 0000000..c6e377c
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./forOwn'], function (forOwn) {
+
+    /**
+     * Get object size
+     */
+    function size(obj) {
+        var count = 0;
+        forOwn(obj, function(){
+            count++;
+        });
+        return count;
+    }
+
+    return size;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/some.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/some.js
new file mode 100644 (file)
index 0000000..1bd6fda
--- /dev/null
@@ -0,0 +1,20 @@
+define(['./forOwn', '../function/makeIterator_'], function(forOwn, makeIterator) {
+
+    /**
+     * Object some
+     */
+    function some(obj, callback, thisObj) {
+        callback = makeIterator(callback, thisObj);
+        var result = false;
+        forOwn(obj, function(val, key) {
+            if (callback(val, key, obj)) {
+                result = true;
+                return false; // break
+            }
+        });
+        return result;
+    }
+
+    return some;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/unset.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/unset.js
new file mode 100644 (file)
index 0000000..787fc19
--- /dev/null
@@ -0,0 +1,23 @@
+define(['./has'], function (has) {
+
+    /**
+     * Unset object property.
+     */
+    function unset(obj, prop){
+        if (has(obj, prop)) {
+            var parts = prop.split('.'),
+                last = parts.pop();
+            while (prop = parts.shift()) {
+                obj = obj[prop];
+            }
+            return (delete obj[last]);
+
+        } else {
+            // if property doesn't exist treat as deleted
+            return true;
+        }
+    }
+
+    return unset;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/values.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/object/values.js
new file mode 100644 (file)
index 0000000..b311fd0
--- /dev/null
@@ -0,0 +1,16 @@
+define(['./forOwn'], function (forOwn) {
+
+    /**
+     * Get object values
+     */
+    function values(obj) {
+        var vals = [];
+        forOwn(obj, function(val, key){
+            vals.push(val);
+        });
+        return vals;
+    }
+
+    return values;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString.js
new file mode 100644 (file)
index 0000000..4434612
--- /dev/null
@@ -0,0 +1,15 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'contains' : require('./queryString/contains'),
+    'decode' : require('./queryString/decode'),
+    'encode' : require('./queryString/encode'),
+    'getParam' : require('./queryString/getParam'),
+    'getQuery' : require('./queryString/getQuery'),
+    'parse' : require('./queryString/parse'),
+    'setParam' : require('./queryString/setParam')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/contains.js
new file mode 100644 (file)
index 0000000..a6d11cc
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./getQuery'], function (getQuery) {
+
+    /**
+     * Checks if query string contains parameter.
+     */
+    function contains(url, paramName) {
+        var regex = new RegExp('(\\?|&)'+ paramName +'=', 'g'); //matches `?param=` or `&param=`
+        return regex.test(getQuery(url));
+    }
+
+    return contains;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/decode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/decode.js
new file mode 100644 (file)
index 0000000..a37c123
--- /dev/null
@@ -0,0 +1,34 @@
+define(['../string/typecast', '../lang/isArray', '../object/hasOwn'], function (typecast, isArray, hasOwn) {
+
+    /**
+     * Decode query string into an object of keys => vals.
+     */
+    function decode(queryStr, shouldTypecast) {
+        var queryArr = (queryStr || '').replace('?', '').split('&'),
+            reg = /([^=]+)=(.+)/,
+            i = -1,
+            obj = {},
+            equalIndex, cur, pValue, pName;
+
+        while ((cur = queryArr[++i])) {
+            equalIndex = cur.indexOf('=');
+            pName = cur.substring(0, equalIndex);
+            pValue = decodeURIComponent(cur.substring(equalIndex + 1));
+            if (shouldTypecast !== false) {
+                pValue = typecast(pValue);
+            }
+            if (hasOwn(obj, pName)){
+                if(isArray(obj[pName])){
+                    obj[pName].push(pValue);
+                } else {
+                    obj[pName] = [obj[pName], pValue];
+                }
+            } else {
+                obj[pName] = pValue;
+           }
+        }
+        return obj;
+    }
+
+    return decode;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/encode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/encode.js
new file mode 100644 (file)
index 0000000..c249287
--- /dev/null
@@ -0,0 +1,25 @@
+define(['../object/forOwn','../lang/isArray','../array/forEach'], function (forOwn,isArray,forEach) {
+
+    /**
+     * Encode object into a query string.
+     */
+    function encode(obj){
+        var query = [],
+            arrValues, reg;
+        forOwn(obj, function (val, key) {
+            if (isArray(val)) {
+                arrValues = key + '=';
+                reg = new RegExp('&'+key+'+=$');
+                forEach(val, function (aValue) {
+                    arrValues += encodeURIComponent(aValue) + '&' + key + '=';
+                });
+                query.push(arrValues.replace(reg, ''));
+            } else {
+               query.push(key + '=' + encodeURIComponent(val));
+            }
+        });
+        return (query.length) ? '?' + query.join('&') : '';
+    }
+
+    return encode;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getParam.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getParam.js
new file mode 100644 (file)
index 0000000..d981372
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../string/typecast', './getQuery'], function (typecast, getQuery) {
+
+    /**
+     * Get query parameter value.
+     */
+    function getParam(url, param, shouldTypecast){
+        var regexp = new RegExp('(\\?|&)'+ param + '=([^&]*)'), //matches `?param=value` or `&param=value`, value = $2
+            result = regexp.exec( getQuery(url) ),
+            val = (result && result[2])? result[2] : null;
+        return shouldTypecast === false? val : typecast(val);
+    }
+
+    return getParam;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getQuery.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/getQuery.js
new file mode 100644 (file)
index 0000000..e8d70ff
--- /dev/null
@@ -0,0 +1,13 @@
+define(function () {
+
+    /**
+     * Gets full query as string with all special chars decoded.
+     */
+    function getQuery(url) {
+        url = url.replace(/#.*/, ''); //removes hash (to avoid getting hash query)
+        var queryString = /\?[a-zA-Z0-9\=\&\%\$\-\_\.\+\!\*\'\(\)\,]+/.exec(url); //valid chars according to: http://www.ietf.org/rfc/rfc1738.txt
+        return (queryString)? decodeURIComponent(queryString[0].replace(/\+/g,' ')) : '';
+    }
+
+    return getQuery;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/parse.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/parse.js
new file mode 100644 (file)
index 0000000..ac153e3
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./decode', './getQuery'], function (decode, getQuery) {
+
+    /**
+     * Get query string, parses and decodes it.
+     */
+    function parse(url, shouldTypecast) {
+        return decode(getQuery(url), shouldTypecast);
+    }
+
+    return parse;
+});
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/setParam.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/queryString/setParam.js
new file mode 100644 (file)
index 0000000..97081aa
--- /dev/null
@@ -0,0 +1,28 @@
+define(function () {
+
+    /**
+     * Set query string parameter value
+     */
+    function setParam(url, paramName, value){
+        url = url || '';
+
+        var re = new RegExp('(\\?|&)'+ paramName +'=[^&]*' );
+        var param = paramName +'='+ encodeURIComponent( value );
+
+        if ( re.test(url) ) {
+            return url.replace(re, '$1'+ param);
+        } else {
+            if (url.indexOf('?') === -1) {
+                url += '?';
+            }
+            if (url.indexOf('=') !== -1) {
+                url += '&';
+            }
+            return url + param;
+        }
+
+    }
+
+    return setParam;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random.js
new file mode 100644 (file)
index 0000000..b47f203
--- /dev/null
@@ -0,0 +1,18 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'choice' : require('./random/choice'),
+    'guid' : require('./random/guid'),
+    'rand' : require('./random/rand'),
+    'randBit' : require('./random/randBit'),
+    'randBool' : require('./random/randBool'),
+    'randHex' : require('./random/randHex'),
+    'randInt' : require('./random/randInt'),
+    'randSign' : require('./random/randSign'),
+    'randString' : require('./random/randString'),
+    'random' : require('./random/random')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/choice.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/choice.js
new file mode 100644 (file)
index 0000000..0d0c38d
--- /dev/null
@@ -0,0 +1,14 @@
+define(['./randInt', '../lang/isArray'], function (randInt, isArray) {
+
+    /**
+     * Returns a random element from the supplied arguments
+     * or from the array (if single argument is an array).
+     */
+    function choice(items) {
+        var target = (arguments.length === 1 && isArray(items))? items : arguments;
+        return target[ randInt(0, target.length - 1) ];
+    }
+
+    return choice;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/guid.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/guid.js
new file mode 100644 (file)
index 0000000..82f3a2d
--- /dev/null
@@ -0,0 +1,23 @@
+define(['./randHex', './choice'], function (randHex, choice) {
+
+  /**
+   * Returns pseudo-random guid (UUID v4)
+   * IMPORTANT: it's not totally "safe" since randHex/choice uses Math.random
+   * by default and sequences can be predicted in some cases. See the
+   * "random/random" documentation for more info about it and how to replace
+   * the default PRNG.
+   */
+  function guid() {
+    return (
+        randHex(8)+'-'+
+        randHex(4)+'-'+
+        // v4 UUID always contain "4" at this position to specify it was
+        // randomly generated
+        '4' + randHex(3) +'-'+
+        // v4 UUID always contain chars [a,b,8,9] at this position
+        choice(8, 9, 'a', 'b') + randHex(3)+'-'+
+        randHex(12)
+    );
+  }
+  return guid;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/rand.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/rand.js
new file mode 100644 (file)
index 0000000..b8c231d
--- /dev/null
@@ -0,0 +1,13 @@
+define(['./random', '../number/MIN_INT', '../number/MAX_INT'], function(random, MIN_INT, MAX_INT){
+
+    /**
+     * Returns random number inside range
+     */
+    function rand(min, max){
+        min = min == null? MIN_INT : min;
+        max = max == null? MAX_INT : max;
+        return min + (max - min) * random();
+    }
+
+    return rand;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBit.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBit.js
new file mode 100644 (file)
index 0000000..398fa2c
--- /dev/null
@@ -0,0 +1,11 @@
+define(['./randBool'], function (randBool) {
+
+    /**
+     * Returns random bit (0 or 1)
+     */
+    function randomBit() {
+        return randBool()? 1 : 0;
+    }
+
+    return randomBit;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBool.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randBool.js
new file mode 100644 (file)
index 0000000..8d9be0b
--- /dev/null
@@ -0,0 +1,12 @@
+define(['./random'], function (random) {
+
+    /**
+     * returns a random boolean value (true or false)
+     */
+    function randBool(){
+        return random() >= 0.5;
+    }
+
+    return randBool;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randHex.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randHex.js
new file mode 100644 (file)
index 0000000..6e9bf1c
--- /dev/null
@@ -0,0 +1,19 @@
+define(['./choice'], function (choice) {
+
+    var _chars = '0123456789abcdef'.split('');
+
+    /**
+     * Returns a random hexadecimal string
+     */
+    function randHex(size){
+        size = size && size > 0? size : 6;
+        var str = '';
+        while (size--) {
+            str += choice(_chars);
+        }
+        return str;
+    }
+
+    return randHex;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randInt.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randInt.js
new file mode 100644 (file)
index 0000000..1750e9d
--- /dev/null
@@ -0,0 +1,16 @@
+define(['../number/MIN_INT', '../number/MAX_INT', './rand'], function(MIN_INT, MAX_INT, rand){
+
+    /**
+     * Gets random integer inside range or snap to min/max values.
+     */
+    function randInt(min, max){
+        min = min == null? MIN_INT : ~~min;
+        max = max == null? MAX_INT : ~~max;
+        // can't be max + 0.5 otherwise it will round up if `rand`
+        // returns `max` causing it to overflow range.
+        // -0.5 and + 0.49 are required to avoid bias caused by rounding
+        return Math.round( rand(min - 0.5, max + 0.499999999999) );
+    }
+
+    return randInt;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randSign.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randSign.js
new file mode 100644 (file)
index 0000000..1171b40
--- /dev/null
@@ -0,0 +1,11 @@
+define(['./randBool'], function (randBool) {
+
+    /**
+     * Returns random sign (-1 or 1)
+     */
+    function randomSign() {
+        return randBool()? 1 : -1;
+    }
+
+    return randomSign;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/randString.js
new file mode 100644 (file)
index 0000000..d309d08
--- /dev/null
@@ -0,0 +1,29 @@
+define([
+  '../lang/isNumber',
+  '../lang/isString',
+  './randInt'
+], function (isNumber, isString, randInt) {
+
+    var defaultDictionary = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+
+    function randomString(length, dictionary) {
+        if(!isNumber(length) || length <= 0) {
+          length = 8;
+        }
+
+        if(!isString(dictionary) || dictionary.length < 1) {
+          dictionary = defaultDictionary;
+        }
+
+        var result = '',
+            domain = dictionary.length - 1;
+
+        while(length--) {
+          result += dictionary[randInt(0, domain)];
+        }
+        
+        return result;
+    }
+
+    return randomString;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/random.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/random/random.js
new file mode 100644 (file)
index 0000000..4270822
--- /dev/null
@@ -0,0 +1,18 @@
+define(function () {
+
+    /**
+     * Just a wrapper to Math.random. No methods inside mout/random should call
+     * Math.random() directly so we can inject the pseudo-random number
+     * generator if needed (ie. in case we need a seeded random or a better
+     * algorithm than the native one)
+     */
+    function random(){
+        return random.get();
+    }
+
+    // we expose the method so it can be swapped if needed
+    random.get = Math.random;
+
+    return random;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string.js
new file mode 100644 (file)
index 0000000..a157e4c
--- /dev/null
@@ -0,0 +1,46 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'WHITE_SPACES' : require('./string/WHITE_SPACES'),
+    'camelCase' : require('./string/camelCase'),
+    'contains' : require('./string/contains'),
+    'crop' : require('./string/crop'),
+    'endsWith' : require('./string/endsWith'),
+    'escapeHtml' : require('./string/escapeHtml'),
+    'escapeRegExp' : require('./string/escapeRegExp'),
+    'escapeUnicode' : require('./string/escapeUnicode'),
+    'hyphenate' : require('./string/hyphenate'),
+    'insert' : require('./string/insert'),
+    'interpolate' : require('./string/interpolate'),
+    'lowerCase' : require('./string/lowerCase'),
+    'lpad' : require('./string/lpad'),
+    'ltrim' : require('./string/ltrim'),
+    'makePath' : require('./string/makePath'),
+    'normalizeLineBreaks' : require('./string/normalizeLineBreaks'),
+    'pascalCase' : require('./string/pascalCase'),
+    'properCase' : require('./string/properCase'),
+    'removeNonASCII' : require('./string/removeNonASCII'),
+    'removeNonWord' : require('./string/removeNonWord'),
+    'repeat' : require('./string/repeat'),
+    'replace' : require('./string/replace'),
+    'replaceAccents' : require('./string/replaceAccents'),
+    'rpad' : require('./string/rpad'),
+    'rtrim' : require('./string/rtrim'),
+    'sentenceCase' : require('./string/sentenceCase'),
+    'slugify' : require('./string/slugify'),
+    'startsWith' : require('./string/startsWith'),
+    'stripHtmlTags' : require('./string/stripHtmlTags'),
+    'trim' : require('./string/trim'),
+    'truncate' : require('./string/truncate'),
+    'typecast' : require('./string/typecast'),
+    'unCamelCase' : require('./string/unCamelCase'),
+    'underscore' : require('./string/underscore'),
+    'unescapeHtml' : require('./string/unescapeHtml'),
+    'unescapeUnicode' : require('./string/unescapeUnicode'),
+    'unhyphenate' : require('./string/unhyphenate'),
+    'upperCase' : require('./string/upperCase')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/WHITE_SPACES.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/WHITE_SPACES.js
new file mode 100644 (file)
index 0000000..e830d86
--- /dev/null
@@ -0,0 +1,12 @@
+define(function() {
+    /**
+     * Contains all Unicode white-spaces. Taken from
+     * http://en.wikipedia.org/wiki/Whitespace_character.
+     */
+    return [
+        ' ', '\n', '\r', '\t', '\f', '\v', '\u00A0', '\u1680', '\u180E',
+        '\u2000', '\u2001', '\u2002', '\u2003', '\u2004', '\u2005', '\u2006',
+        '\u2007', '\u2008', '\u2009', '\u200A', '\u2028', '\u2029', '\u202F',
+        '\u205F', '\u3000'
+    ];
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/camelCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/camelCase.js
new file mode 100644 (file)
index 0000000..02e6c04
--- /dev/null
@@ -0,0 +1,16 @@
+define(['../lang/toString', './replaceAccents', './removeNonWord', './upperCase', './lowerCase'], function(toString, replaceAccents, removeNonWord, upperCase, lowerCase){
+    /**
+    * Convert string to camelCase text.
+    */
+    function camelCase(str){
+        str = toString(str);
+        str = replaceAccents(str);
+        str = removeNonWord(str)
+            .replace(/[\-_]/g, ' ') //convert all hyphens and underscores to spaces
+            .replace(/\s[a-z]/g, upperCase) //convert first char of each word to UPPERCASE
+            .replace(/\s+/g, '') //remove spaces
+            .replace(/^[A-Z]/g, lowerCase); //convert first char to lowercase
+        return str;
+    }
+    return camelCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/contains.js
new file mode 100644 (file)
index 0000000..825b5a5
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../lang/toString'], function(toString) {
+
+    /**
+     * Searches for a given substring
+     */
+    function contains(str, substring, fromIndex){
+        str = toString(str);
+        substring = toString(substring);
+        return str.indexOf(substring, fromIndex) !== -1;
+    }
+
+    return contains;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/crop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/crop.js
new file mode 100644 (file)
index 0000000..3c073f0
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString', './truncate'], function (toString, truncate) {
+    /**
+     * Truncate string at full words.
+     */
+     function crop(str, maxChars, append) {
+         str = toString(str);
+         return truncate(str, maxChars, append, true);
+     }
+
+     return crop;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/endsWith.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/endsWith.js
new file mode 100644 (file)
index 0000000..31a73f2
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../lang/toString'], function(toString) {
+    /**
+     * Checks if string ends with specified suffix.
+     */
+    function endsWith(str, suffix) {
+        str = toString(str);
+        suffix = toString(suffix);
+
+        return str.indexOf(suffix, str.length - suffix.length) !== -1;
+    }
+
+    return endsWith;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeHtml.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeHtml.js
new file mode 100644 (file)
index 0000000..de34b61
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../lang/toString'], function(toString) {
+
+    /**
+     * Escapes a string for insertion into HTML.
+     */
+    function escapeHtml(str){
+        str = toString(str)
+            .replace(/&/g, '&amp;')
+            .replace(/</g, '&lt;')
+            .replace(/>/g, '&gt;')
+            .replace(/'/g, '&#39;')
+            .replace(/"/g, '&quot;');
+        return str;
+    }
+
+    return escapeHtml;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeRegExp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeRegExp.js
new file mode 100644 (file)
index 0000000..862655b
--- /dev/null
@@ -0,0 +1,12 @@
+define(['../lang/toString'], function(toString) {
+
+    /**
+     * Escape RegExp string chars.
+     */
+    function escapeRegExp(str) {
+        return toString(str).replace(/\W/g,'\\$&');
+    }
+
+    return escapeRegExp;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeUnicode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/escapeUnicode.js
new file mode 100644 (file)
index 0000000..bd5e8c4
--- /dev/null
@@ -0,0 +1,21 @@
+define(['../lang/toString'], function(toString) {
+
+    /**
+     * Escape string into unicode sequences
+     */
+    function escapeUnicode(str, shouldEscapePrintable){
+        str = toString(str);
+        return str.replace(/[\s\S]/g, function(ch){
+            // skip printable ASCII chars if we should not escape them
+            if (!shouldEscapePrintable && (/[\x20-\x7E]/).test(ch)) {
+                return ch;
+            }
+            // we use "000" and slice(-4) for brevity, need to pad zeros,
+            // unicode escape always have 4 chars after "\u"
+            return '\\u'+ ('000'+ ch.charCodeAt(0).toString(16)).slice(-4);
+        });
+    }
+
+    return escapeUnicode;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/hyphenate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/hyphenate.js
new file mode 100644 (file)
index 0000000..679c405
--- /dev/null
@@ -0,0 +1,12 @@
+define(['../lang/toString', './slugify', './unCamelCase'], function(toString, slugify, unCamelCase){
+    /**
+     * Replaces spaces with hyphens, split camelCase text, remove non-word chars, remove accents and convert to lower case.
+     */
+    function hyphenate(str){
+        str = toString(str);
+        str = unCamelCase(str);
+        return slugify(str, "-");
+    }
+
+    return hyphenate;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/insert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/insert.js
new file mode 100644 (file)
index 0000000..79c45be
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../math/clamp', '../lang/toString'], function (clamp, toString) {
+
+    /**
+     * Inserts a string at a given index.
+     */
+    function insert(string, index, partial){
+        string = toString(string);
+
+        if (index < 0) {
+            index = string.length + index;
+        }
+
+        index = clamp(index, 0, string.length);
+
+        return string.substr(0, index) + partial + string.substr(index);
+    }
+
+    return insert;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/interpolate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/interpolate.js
new file mode 100644 (file)
index 0000000..b5e7f4b
--- /dev/null
@@ -0,0 +1,21 @@
+define([
+    '../lang/toString',
+    '../object/get'
+], function(toString, get) {
+
+    var stache = /\{\{([^\}]+)\}\}/g; //mustache-like
+
+    /**
+     * String interpolation
+     */
+    function interpolate(template, replacements, syntax){
+        template = toString(template);
+        var replaceFn = function(match, prop){
+            return toString( get(replacements, prop) );
+        };
+        return template.replace(syntax || stache, replaceFn);
+    }
+
+    return interpolate;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lowerCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lowerCase.js
new file mode 100644 (file)
index 0000000..b045d69
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString'], function(toString){
+    /**
+     * "Safer" String.toLowerCase()
+     */
+    function lowerCase(str){
+        str = toString(str);
+        return str.toLowerCase();
+    }
+
+    return lowerCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lpad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/lpad.js
new file mode 100644 (file)
index 0000000..134b415
--- /dev/null
@@ -0,0 +1,16 @@
+define(['../lang/toString', './repeat'], function(toString, repeat) {
+
+    /**
+     * Pad string with `char` if its' length is smaller than `minLen`
+     */
+    function lpad(str, minLen, ch) {
+        str = toString(str);
+        ch = ch || ' ';
+
+        return (str.length < minLen) ?
+            repeat(ch, minLen - str.length) + str : str;
+    }
+
+    return lpad;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/ltrim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/ltrim.js
new file mode 100644 (file)
index 0000000..477df95
--- /dev/null
@@ -0,0 +1,33 @@
+define(['../lang/toString', './WHITE_SPACES'], function(toString, WHITE_SPACES){
+    /**
+     * Remove chars from beginning of string.
+     */
+    function ltrim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+
+        var start = 0,
+            len = str.length,
+            charLen = chars.length,
+            found = true,
+            i, c;
+
+        while (found && start < len) {
+            found = false;
+            i = -1;
+            c = str.charAt(start);
+
+            while (++i < charLen) {
+                if (c === chars[i]) {
+                    found = true;
+                    start++;
+                    break;
+                }
+            }
+        }
+
+        return (start >= len) ? '' : str.substr(start, len);
+    }
+
+    return ltrim;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/makePath.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/makePath.js
new file mode 100644 (file)
index 0000000..3a6869e
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../array/join', '../array/slice'], function(join, slice){
+
+    /**
+     * Group arguments as path segments, if any of the args is `null` or an
+     * empty string it will be ignored from resulting path.
+     */
+    function makePath(var_args){
+        var result = join(slice(arguments), '/');
+        // need to disconsider duplicate '/' after protocol (eg: 'http://')
+        return result.replace(/([^:\/]|^)\/{2,}/g, '$1/');
+    }
+
+    return makePath;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/normalizeLineBreaks.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/normalizeLineBreaks.js
new file mode 100644 (file)
index 0000000..44e4194
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../lang/toString'], function (toString) {
+
+    /**
+     * Convert line-breaks from DOS/MAC to a single standard (UNIX by default)
+     */
+    function normalizeLineBreaks(str, lineEnd) {
+        str = toString(str);
+        lineEnd = lineEnd || '\n';
+
+        return str
+            .replace(/\r\n/g, lineEnd) // DOS
+            .replace(/\r/g, lineEnd)   // Mac
+            .replace(/\n/g, lineEnd);  // Unix
+    }
+
+    return normalizeLineBreaks;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/pascalCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/pascalCase.js
new file mode 100644 (file)
index 0000000..ead9ead
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString', './camelCase', './upperCase'], function(toString, camelCase, upperCase){
+    /**
+     * camelCase + UPPERCASE first char
+     */
+    function pascalCase(str){
+        str = toString(str);
+        return camelCase(str).replace(/^[a-z]/, upperCase);
+    }
+
+    return pascalCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/properCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/properCase.js
new file mode 100644 (file)
index 0000000..2987b50
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString', './lowerCase', './upperCase'], function(toString, lowerCase, upperCase){
+    /**
+     * UPPERCASE first char of each word.
+     */
+    function properCase(str){
+        str = toString(str);
+        return lowerCase(str).replace(/^\w|\s\w/g, upperCase);
+    }
+
+    return properCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonASCII.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonASCII.js
new file mode 100644 (file)
index 0000000..4905869
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../lang/toString'], function(toString){
+    /**
+     * Remove non-printable ASCII chars
+     */
+    function removeNonASCII(str){
+        str = toString(str);
+
+        // Matches non-printable ASCII chars -
+        // http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
+        return str.replace(/[^\x20-\x7E]/g, '');
+    }
+
+    return removeNonASCII;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonWord.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/removeNonWord.js
new file mode 100644 (file)
index 0000000..fb737d7
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../lang/toString'], function(toString){
+    // This pattern is generated by the _build/pattern-removeNonWord.js script
+    var PATTERN = /[^\x20\x2D0-9A-Z\x5Fa-z\xC0-\xD6\xD8-\xF6\xF8-\xFF]/g;
+
+    /**
+     * Remove non-word chars.
+     */
+    function removeNonWord(str){
+        str = toString(str);
+        return str.replace(PATTERN, '');
+    }
+
+    return removeNonWord;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/repeat.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/repeat.js
new file mode 100644 (file)
index 0000000..0a25d83
--- /dev/null
@@ -0,0 +1,25 @@
+define(['../lang/toString', '../number/toInt'], function(toString, toInt){
+
+    /**
+     * Repeat string n times
+     */
+     function repeat(str, n){
+         var result = '';
+         str = toString(str);
+         n = toInt(n);
+        if (n < 1) {
+            return '';
+        }
+        while (n > 0) {
+            if (n % 2) {
+                result += str;
+            }
+            n = Math.floor(n / 2);
+            str += str;
+        }
+        return result;
+     }
+
+     return repeat;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replace.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replace.js
new file mode 100644 (file)
index 0000000..8b762fd
--- /dev/null
@@ -0,0 +1,32 @@
+define(['../lang/toString', '../lang/toArray'], function (toString, toArray) {
+
+    /**
+     * Replace string(s) with the replacement(s) in the source.
+     */
+    function replace(str, search, replacements) {
+        str = toString(str);
+        search = toArray(search);
+        replacements = toArray(replacements);
+
+        var searchLength = search.length,
+            replacementsLength = replacements.length;
+
+        if (replacementsLength !== 1 && searchLength !== replacementsLength) {
+            throw new Error('Unequal number of searches and replacements');
+        }
+
+        var i = -1;
+        while (++i < searchLength) {
+            // Use the first replacement for all searches if only one
+            // replacement is provided
+            str = str.replace(
+                search[i],
+                replacements[(replacementsLength === 1) ? 0 : i]);
+        }
+
+        return str;
+    }
+
+    return replace;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replaceAccents.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/replaceAccents.js
new file mode 100644 (file)
index 0000000..3a63f55
--- /dev/null
@@ -0,0 +1,36 @@
+define(['../lang/toString'], function(toString){
+    /**
+    * Replaces all accented chars with regular ones
+    */
+    function replaceAccents(str){
+        str = toString(str);
+
+        // verifies if the String has accents and replace them
+        if (str.search(/[\xC0-\xFF]/g) > -1) {
+            str = str
+                    .replace(/[\xC0-\xC5]/g, "A")
+                    .replace(/[\xC6]/g, "AE")
+                    .replace(/[\xC7]/g, "C")
+                    .replace(/[\xC8-\xCB]/g, "E")
+                    .replace(/[\xCC-\xCF]/g, "I")
+                    .replace(/[\xD0]/g, "D")
+                    .replace(/[\xD1]/g, "N")
+                    .replace(/[\xD2-\xD6\xD8]/g, "O")
+                    .replace(/[\xD9-\xDC]/g, "U")
+                    .replace(/[\xDD]/g, "Y")
+                    .replace(/[\xDE]/g, "P")
+                    .replace(/[\xE0-\xE5]/g, "a")
+                    .replace(/[\xE6]/g, "ae")
+                    .replace(/[\xE7]/g, "c")
+                    .replace(/[\xE8-\xEB]/g, "e")
+                    .replace(/[\xEC-\xEF]/g, "i")
+                    .replace(/[\xF1]/g, "n")
+                    .replace(/[\xF2-\xF6\xF8]/g, "o")
+                    .replace(/[\xF9-\xFC]/g, "u")
+                    .replace(/[\xFE]/g, "p")
+                    .replace(/[\xFD\xFF]/g, "y");
+        }
+        return str;
+    }
+    return replaceAccents;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rpad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rpad.js
new file mode 100644 (file)
index 0000000..2efd9c8
--- /dev/null
@@ -0,0 +1,14 @@
+define(['../lang/toString', './repeat'], function (toString, repeat) {
+
+    /**
+     * Pad string with `char` if its' length is smaller than `minLen`
+     */
+    function rpad(str, minLen, ch) {
+        str = toString(str);
+        ch = ch || ' ';
+        return (str.length < minLen)? str + repeat(ch, minLen - str.length) : str;
+    }
+
+    return rpad;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rtrim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/rtrim.js
new file mode 100644 (file)
index 0000000..a4cc282
--- /dev/null
@@ -0,0 +1,32 @@
+define(['../lang/toString', './WHITE_SPACES'], function(toString, WHITE_SPACES){
+    /**
+     * Remove chars from end of string.
+     */
+    function rtrim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+
+        var end = str.length - 1,
+            charLen = chars.length,
+            found = true,
+            i, c;
+
+        while (found && end >= 0) {
+            found = false;
+            i = -1;
+            c = str.charAt(end);
+
+            while (++i < charLen) {
+                if (c === chars[i]) {
+                    found = true;
+                    end--;
+                    break;
+                }
+            }
+        }
+
+        return (end >= 0) ? str.substring(0, end + 1) : '';
+    }
+
+    return rtrim;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/sentenceCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/sentenceCase.js
new file mode 100644 (file)
index 0000000..cfe45af
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../lang/toString', './lowerCase', './upperCase'], function(toString, lowerCase, upperCase){
+    /**
+     * UPPERCASE first char of each sentence and lowercase other chars.
+     */
+    function sentenceCase(str){
+        str = toString(str);
+
+        // Replace first char of each sentence (new line or after '.\s+') to
+        // UPPERCASE
+        return lowerCase(str).replace(/(^\w)|\.\s+(\w)/gm, upperCase);
+    }
+    return sentenceCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/slugify.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/slugify.js
new file mode 100644 (file)
index 0000000..c6d68c7
--- /dev/null
@@ -0,0 +1,21 @@
+define(['../lang/toString', './replaceAccents', './removeNonWord', './trim'], function(toString, replaceAccents, removeNonWord, trim){
+    /**
+     * Convert to lower case, remove accents, remove non-word chars and
+     * replace spaces with the specified delimeter.
+     * Does not split camelCase text.
+     */
+    function slugify(str, delimeter){
+        str = toString(str);
+
+        if (delimeter == null) {
+            delimeter = "-";
+        }
+        str = replaceAccents(str);
+        str = removeNonWord(str);
+        str = trim(str) //should come after removeNonWord
+                .replace(/ +/g, delimeter) //replace spaces with delimeter
+                .toLowerCase();
+        return str;
+    }
+    return slugify;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/startsWith.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/startsWith.js
new file mode 100644 (file)
index 0000000..88ae545
--- /dev/null
@@ -0,0 +1,13 @@
+define(['../lang/toString'], function (toString) {
+    /**
+     * Checks if string starts with specified prefix.
+     */
+    function startsWith(str, prefix) {
+        str = toString(str);
+        prefix = toString(prefix);
+
+        return str.indexOf(prefix) === 0;
+    }
+
+    return startsWith;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/stripHtmlTags.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/stripHtmlTags.js
new file mode 100644 (file)
index 0000000..e8da956
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString'], function(toString){
+    /**
+     * Remove HTML tags from string.
+     */
+    function stripHtmlTags(str){
+        str = toString(str);
+
+        return str.replace(/<[^>]*>/g, '');
+    }
+    return stripHtmlTags;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/trim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/trim.js
new file mode 100644 (file)
index 0000000..5552604
--- /dev/null
@@ -0,0 +1,12 @@
+define(['../lang/toString', './WHITE_SPACES', './ltrim', './rtrim'], function(toString, WHITE_SPACES, ltrim, rtrim){
+    /**
+     * Remove white-spaces from beginning and end of string.
+     */
+    function trim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+        return ltrim(rtrim(str, chars), chars);
+    }
+
+    return trim;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/truncate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/truncate.js
new file mode 100644 (file)
index 0000000..34000d9
--- /dev/null
@@ -0,0 +1,20 @@
+define(['../lang/toString', './trim'], function(toString, trim){
+    /**
+     * Limit number of chars.
+     */
+    function truncate(str, maxChars, append, onlyFullWords){
+        str = toString(str);
+        append = append || '...';
+        maxChars = onlyFullWords? maxChars + 1 : maxChars;
+
+        str = trim(str);
+        if(str.length <= maxChars){
+            return str;
+        }
+        str = str.substr(0, maxChars - append.length);
+        //crop at last space or remove trailing whitespace
+        str = onlyFullWords? str.substr(0, str.lastIndexOf(' ')) : trim(str);
+        return str + append;
+    }
+    return truncate;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/typecast.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/typecast.js
new file mode 100644 (file)
index 0000000..a7c8315
--- /dev/null
@@ -0,0 +1,29 @@
+define(function () {
+
+    var UNDEF;
+
+    /**
+     * Parses string and convert it into a native value.
+     */
+    function typecast(val) {
+        var r;
+        if ( val === null || val === 'null' ) {
+            r = null;
+        } else if ( val === 'true' ) {
+            r = true;
+        } else if ( val === 'false' ) {
+            r = false;
+        } else if ( val === UNDEF || val === 'undefined' ) {
+            r = UNDEF;
+        } else if ( val === '' || isNaN(val) ) {
+            //isNaN('') returns false
+            r = val;
+        } else {
+            //parseFloat(null || '') returns NaN
+            r = parseFloat(val);
+        }
+        return r;
+    }
+
+    return typecast;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unCamelCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unCamelCase.js
new file mode 100644 (file)
index 0000000..eeef39b
--- /dev/null
@@ -0,0 +1,23 @@
+define(['../lang/toString'], function(toString){
+
+    var CAMEL_CASE_BORDER = /([a-z\xE0-\xFF])([A-Z\xC0\xDF])/g;
+
+    /**
+     * Add space between camelCase text.
+     */
+    function unCamelCase(str, delimiter){
+        if (delimiter == null) {
+            delimiter = ' ';
+        }
+
+        function join(str, c1, c2) {
+            return c1 + delimiter + c2;
+        }
+
+        str = toString(str);
+        str = str.replace(CAMEL_CASE_BORDER, join);
+        str = str.toLowerCase(); //add space between camelCase text
+        return str;
+    }
+    return unCamelCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/underscore.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/underscore.js
new file mode 100644 (file)
index 0000000..75dd464
--- /dev/null
@@ -0,0 +1,11 @@
+define(['../lang/toString', './slugify', './unCamelCase'], function(toString, slugify, unCamelCase){
+    /**
+     * Replaces spaces with underscores, split camelCase text, remove non-word chars, remove accents and convert to lower case.
+     */
+    function underscore(str){
+        str = toString(str);
+        str = unCamelCase(str);
+        return slugify(str, "_");
+    }
+    return underscore;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeHtml.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeHtml.js
new file mode 100644 (file)
index 0000000..ca89042
--- /dev/null
@@ -0,0 +1,18 @@
+define(['../lang/toString'], function (toString) {
+
+    /**
+     * Unescapes HTML special chars
+     */
+    function unescapeHtml(str){
+        str = toString(str)
+            .replace(/&amp;/g , '&')
+            .replace(/&lt;/g  , '<')
+            .replace(/&gt;/g  , '>')
+            .replace(/&#0*39;/g , "'")
+            .replace(/&quot;/g, '"');
+        return str;
+    }
+
+    return unescapeHtml;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeUnicode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unescapeUnicode.js
new file mode 100644 (file)
index 0000000..d4a7ba1
--- /dev/null
@@ -0,0 +1,16 @@
+define(['../lang/toString'], function(toString) {
+
+    /**
+     * Unescape unicode char sequences
+     */
+    function unescapeUnicode(str){
+        str = toString(str);
+        return str.replace(/\\u[0-9a-f]{4}/g, function(ch){
+            var code = parseInt(ch.slice(2), 16);
+            return String.fromCharCode(code);
+        });
+    }
+
+    return unescapeUnicode;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unhyphenate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/unhyphenate.js
new file mode 100644 (file)
index 0000000..6ac2fa4
--- /dev/null
@@ -0,0 +1,10 @@
+define(['../lang/toString'], function(toString){
+    /**
+     * Replaces hyphens with spaces. (only hyphens between word chars)
+     */
+    function unhyphenate(str){
+        str = toString(str);
+        return str.replace(/(\w)(-)(\w)/g, '$1 $3');
+    }
+    return unhyphenate;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/upperCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/string/upperCase.js
new file mode 100644 (file)
index 0000000..8b2073e
--- /dev/null
@@ -0,0 +1,10 @@
+define(['../lang/toString'], function(toString){
+    /**
+     * "Safer" String.toUpperCase()
+     */
+    function upperCase(str){
+        str = toString(str);
+        return str.toUpperCase();
+    }
+    return upperCase;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time.js
new file mode 100644 (file)
index 0000000..67c9068
--- /dev/null
@@ -0,0 +1,12 @@
+define(function(require){
+
+//automatically generated, do not edit!
+//run `node build` instead
+return {
+    'convert' : require('./time/convert'),
+    'now' : require('./time/now'),
+    'parseMs' : require('./time/parseMs'),
+    'toTimeString' : require('./time/toTimeString')
+};
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/convert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/convert.js
new file mode 100644 (file)
index 0000000..2de0cf2
--- /dev/null
@@ -0,0 +1,41 @@
+define(function () {
+
+    /**
+     * convert time into another unit
+     */
+    function convert(val, sourceUnitName, destinationUnitName){
+        destinationUnitName = destinationUnitName || 'ms';
+        return (val * getUnit(sourceUnitName)) / getUnit(destinationUnitName);
+    }
+
+
+    //TODO: maybe extract to a separate module
+    function getUnit(unitName){
+        switch(unitName){
+            case 'ms':
+            case 'millisecond':
+                return 1;
+            case 's':
+            case 'second':
+                 return 1000;
+            case 'm':
+            case 'minute':
+                 return 60000;
+            case 'h':
+            case 'hour':
+                 return 3600000;
+            case 'd':
+            case 'day':
+                 return 86400000;
+            case 'w':
+            case 'week':
+                 return 604800000;
+            default:
+                throw new Error('"'+ unitName + '" is not a valid unit');
+        }
+    }
+
+
+    return convert;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/now.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/now.js
new file mode 100644 (file)
index 0000000..4b2d03c
--- /dev/null
@@ -0,0 +1,18 @@
+define(function () {
+
+    /**
+     * Get current time in miliseconds
+     */
+    function now(){
+        // yes, we defer the work to another function to allow mocking it
+        // during the tests
+        return now.get();
+    }
+
+    now.get = (typeof Date.now === 'function')? Date.now : function(){
+        return +(new Date());
+    };
+
+    return now;
+
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/parseMs.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/parseMs.js
new file mode 100644 (file)
index 0000000..964929a
--- /dev/null
@@ -0,0 +1,17 @@
+define(['../math/countSteps'], function(countSteps){
+
+    /**
+     * Parse timestamp into an object.
+     */
+    function parseMs(ms){
+        return {
+            milliseconds : countSteps(ms, 1, 1000),
+            seconds      : countSteps(ms, 1000, 60),
+            minutes      : countSteps(ms, 60000, 60),
+            hours        : countSteps(ms, 3600000, 24),
+            days         : countSteps(ms, 86400000)
+        };
+    }
+
+    return parseMs;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/toTimeString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/src/time/toTimeString.js
new file mode 100644 (file)
index 0000000..edf1821
--- /dev/null
@@ -0,0 +1,23 @@
+define(['../math/countSteps', '../number/pad'], function(countSteps, pad){
+
+    var HOUR = 3600000,
+        MINUTE = 60000,
+        SECOND = 1000;
+
+    /**
+     * Format timestamp into a time string.
+     */
+    function toTimeString(ms){
+        var h = ms < HOUR   ? 0 : countSteps(ms, HOUR),
+            m = ms < MINUTE ? 0 : countSteps(ms, MINUTE, 60),
+            s = ms < SECOND ? 0 : countSteps(ms, SECOND, 60),
+            str = '';
+
+        str += h? h + ':' : '';
+        str += pad(m, 2) + ':';
+        str += pad(s, 2);
+
+        return str;
+    }
+    return toTimeString;
+});
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string.js
new file mode 100644 (file)
index 0000000..6115811
--- /dev/null
@@ -0,0 +1,46 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'WHITE_SPACES' : require('./string/WHITE_SPACES'),
+    'camelCase' : require('./string/camelCase'),
+    'contains' : require('./string/contains'),
+    'crop' : require('./string/crop'),
+    'endsWith' : require('./string/endsWith'),
+    'escapeHtml' : require('./string/escapeHtml'),
+    'escapeRegExp' : require('./string/escapeRegExp'),
+    'escapeUnicode' : require('./string/escapeUnicode'),
+    'hyphenate' : require('./string/hyphenate'),
+    'insert' : require('./string/insert'),
+    'interpolate' : require('./string/interpolate'),
+    'lowerCase' : require('./string/lowerCase'),
+    'lpad' : require('./string/lpad'),
+    'ltrim' : require('./string/ltrim'),
+    'makePath' : require('./string/makePath'),
+    'normalizeLineBreaks' : require('./string/normalizeLineBreaks'),
+    'pascalCase' : require('./string/pascalCase'),
+    'properCase' : require('./string/properCase'),
+    'removeNonASCII' : require('./string/removeNonASCII'),
+    'removeNonWord' : require('./string/removeNonWord'),
+    'repeat' : require('./string/repeat'),
+    'replace' : require('./string/replace'),
+    'replaceAccents' : require('./string/replaceAccents'),
+    'rpad' : require('./string/rpad'),
+    'rtrim' : require('./string/rtrim'),
+    'sentenceCase' : require('./string/sentenceCase'),
+    'slugify' : require('./string/slugify'),
+    'startsWith' : require('./string/startsWith'),
+    'stripHtmlTags' : require('./string/stripHtmlTags'),
+    'trim' : require('./string/trim'),
+    'truncate' : require('./string/truncate'),
+    'typecast' : require('./string/typecast'),
+    'unCamelCase' : require('./string/unCamelCase'),
+    'underscore' : require('./string/underscore'),
+    'unescapeHtml' : require('./string/unescapeHtml'),
+    'unescapeUnicode' : require('./string/unescapeUnicode'),
+    'unhyphenate' : require('./string/unhyphenate'),
+    'upperCase' : require('./string/upperCase')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/WHITE_SPACES.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/WHITE_SPACES.js
new file mode 100644 (file)
index 0000000..03e0125
--- /dev/null
@@ -0,0 +1,12 @@
+
+    /**
+     * Contains all Unicode white-spaces. Taken from
+     * http://en.wikipedia.org/wiki/Whitespace_character.
+     */
+    module.exports = [
+        ' ', '\n', '\r', '\t', '\f', '\v', '\u00A0', '\u1680', '\u180E',
+        '\u2000', '\u2001', '\u2002', '\u2003', '\u2004', '\u2005', '\u2006',
+        '\u2007', '\u2008', '\u2009', '\u200A', '\u2028', '\u2029', '\u202F',
+        '\u205F', '\u3000'
+    ];
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/camelCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/camelCase.js
new file mode 100644 (file)
index 0000000..aadb69a
--- /dev/null
@@ -0,0 +1,20 @@
+var toString = require('../lang/toString');
+var replaceAccents = require('./replaceAccents');
+var removeNonWord = require('./removeNonWord');
+var upperCase = require('./upperCase');
+var lowerCase = require('./lowerCase');
+    /**
+    * Convert string to camelCase text.
+    */
+    function camelCase(str){
+        str = toString(str);
+        str = replaceAccents(str);
+        str = removeNonWord(str)
+            .replace(/[\-_]/g, ' ') //convert all hyphens and underscores to spaces
+            .replace(/\s[a-z]/g, upperCase) //convert first char of each word to UPPERCASE
+            .replace(/\s+/g, '') //remove spaces
+            .replace(/^[A-Z]/g, lowerCase); //convert first char to lowercase
+        return str;
+    }
+    module.exports = camelCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/contains.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/contains.js
new file mode 100644 (file)
index 0000000..cb22cae
--- /dev/null
@@ -0,0 +1,14 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Searches for a given substring
+     */
+    function contains(str, substring, fromIndex){
+        str = toString(str);
+        substring = toString(substring);
+        return str.indexOf(substring, fromIndex) !== -1;
+    }
+
+    module.exports = contains;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/crop.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/crop.js
new file mode 100644 (file)
index 0000000..53b93b4
--- /dev/null
@@ -0,0 +1,12 @@
+var toString = require('../lang/toString');
+var truncate = require('./truncate');
+    /**
+     * Truncate string at full words.
+     */
+     function crop(str, maxChars, append) {
+         str = toString(str);
+         return truncate(str, maxChars, append, true);
+     }
+
+     module.exports = crop;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/endsWith.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/endsWith.js
new file mode 100644 (file)
index 0000000..d504e9d
--- /dev/null
@@ -0,0 +1,13 @@
+var toString = require('../lang/toString');
+    /**
+     * Checks if string ends with specified suffix.
+     */
+    function endsWith(str, suffix) {
+        str = toString(str);
+        suffix = toString(suffix);
+
+        return str.indexOf(suffix, str.length - suffix.length) !== -1;
+    }
+
+    module.exports = endsWith;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeHtml.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeHtml.js
new file mode 100644 (file)
index 0000000..e67c4b2
--- /dev/null
@@ -0,0 +1,18 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Escapes a string for insertion into HTML.
+     */
+    function escapeHtml(str){
+        str = toString(str)
+            .replace(/&/g, '&amp;')
+            .replace(/</g, '&lt;')
+            .replace(/>/g, '&gt;')
+            .replace(/'/g, '&#39;')
+            .replace(/"/g, '&quot;');
+        return str;
+    }
+
+    module.exports = escapeHtml;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeRegExp.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeRegExp.js
new file mode 100644 (file)
index 0000000..02d743c
--- /dev/null
@@ -0,0 +1,12 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Escape RegExp string chars.
+     */
+    function escapeRegExp(str) {
+        return toString(str).replace(/\W/g,'\\$&');
+    }
+
+    module.exports = escapeRegExp;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeUnicode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/escapeUnicode.js
new file mode 100644 (file)
index 0000000..ec649ad
--- /dev/null
@@ -0,0 +1,21 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Escape string into unicode sequences
+     */
+    function escapeUnicode(str, shouldEscapePrintable){
+        str = toString(str);
+        return str.replace(/[\s\S]/g, function(ch){
+            // skip printable ASCII chars if we should not escape them
+            if (!shouldEscapePrintable && (/[\x20-\x7E]/).test(ch)) {
+                return ch;
+            }
+            // we use "000" and slice(-4) for brevity, need to pad zeros,
+            // unicode escape always have 4 chars after "\u"
+            return '\\u'+ ('000'+ ch.charCodeAt(0).toString(16)).slice(-4);
+        });
+    }
+
+    module.exports = escapeUnicode;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/hyphenate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/hyphenate.js
new file mode 100644 (file)
index 0000000..95e3243
--- /dev/null
@@ -0,0 +1,14 @@
+var toString = require('../lang/toString');
+var slugify = require('./slugify');
+var unCamelCase = require('./unCamelCase');
+    /**
+     * Replaces spaces with hyphens, split camelCase text, remove non-word chars, remove accents and convert to lower case.
+     */
+    function hyphenate(str){
+        str = toString(str);
+        str = unCamelCase(str);
+        return slugify(str, "-");
+    }
+
+    module.exports = hyphenate;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/insert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/insert.js
new file mode 100644 (file)
index 0000000..8f042c6
--- /dev/null
@@ -0,0 +1,21 @@
+var clamp = require('../math/clamp');
+var toString = require('../lang/toString');
+
+    /**
+     * Inserts a string at a given index.
+     */
+    function insert(string, index, partial){
+        string = toString(string);
+
+        if (index < 0) {
+            index = string.length + index;
+        }
+
+        index = clamp(index, 0, string.length);
+
+        return string.substr(0, index) + partial + string.substr(index);
+    }
+
+    module.exports = insert;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/interpolate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/interpolate.js
new file mode 100644 (file)
index 0000000..efbbf7d
--- /dev/null
@@ -0,0 +1,19 @@
+var toString = require('../lang/toString');
+var get = require('../object/get');
+
+    var stache = /\{\{([^\}]+)\}\}/g; //mustache-like
+
+    /**
+     * String interpolation
+     */
+    function interpolate(template, replacements, syntax){
+        template = toString(template);
+        var replaceFn = function(match, prop){
+            return toString( get(replacements, prop) );
+        };
+        return template.replace(syntax || stache, replaceFn);
+    }
+
+    module.exports = interpolate;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lowerCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lowerCase.js
new file mode 100644 (file)
index 0000000..30bb7ad
--- /dev/null
@@ -0,0 +1,11 @@
+var toString = require('../lang/toString');
+    /**
+     * "Safer" String.toLowerCase()
+     */
+    function lowerCase(str){
+        str = toString(str);
+        return str.toLowerCase();
+    }
+
+    module.exports = lowerCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lpad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/lpad.js
new file mode 100644 (file)
index 0000000..63641d3
--- /dev/null
@@ -0,0 +1,17 @@
+var toString = require('../lang/toString');
+var repeat = require('./repeat');
+
+    /**
+     * Pad string with `char` if its' length is smaller than `minLen`
+     */
+    function lpad(str, minLen, ch) {
+        str = toString(str);
+        ch = ch || ' ';
+
+        return (str.length < minLen) ?
+            repeat(ch, minLen - str.length) + str : str;
+    }
+
+    module.exports = lpad;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/ltrim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/ltrim.js
new file mode 100644 (file)
index 0000000..23d7b33
--- /dev/null
@@ -0,0 +1,34 @@
+var toString = require('../lang/toString');
+var WHITE_SPACES = require('./WHITE_SPACES');
+    /**
+     * Remove chars from beginning of string.
+     */
+    function ltrim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+
+        var start = 0,
+            len = str.length,
+            charLen = chars.length,
+            found = true,
+            i, c;
+
+        while (found && start < len) {
+            found = false;
+            i = -1;
+            c = str.charAt(start);
+
+            while (++i < charLen) {
+                if (c === chars[i]) {
+                    found = true;
+                    start++;
+                    break;
+                }
+            }
+        }
+
+        return (start >= len) ? '' : str.substr(start, len);
+    }
+
+    module.exports = ltrim;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/makePath.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/makePath.js
new file mode 100644 (file)
index 0000000..c337cec
--- /dev/null
@@ -0,0 +1,15 @@
+var join = require('../array/join');
+var slice = require('../array/slice');
+
+    /**
+     * Group arguments as path segments, if any of the args is `null` or an
+     * empty string it will be ignored from resulting path.
+     */
+    function makePath(var_args){
+        var result = join(slice(arguments), '/');
+        // need to disconsider duplicate '/' after protocol (eg: 'http://')
+        return result.replace(/([^:\/]|^)\/{2,}/g, '$1/');
+    }
+
+    module.exports = makePath;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/normalizeLineBreaks.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/normalizeLineBreaks.js
new file mode 100644 (file)
index 0000000..8a8dccf
--- /dev/null
@@ -0,0 +1,18 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Convert line-breaks from DOS/MAC to a single standard (UNIX by default)
+     */
+    function normalizeLineBreaks(str, lineEnd) {
+        str = toString(str);
+        lineEnd = lineEnd || '\n';
+
+        return str
+            .replace(/\r\n/g, lineEnd) // DOS
+            .replace(/\r/g, lineEnd)   // Mac
+            .replace(/\n/g, lineEnd);  // Unix
+    }
+
+    module.exports = normalizeLineBreaks;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/pascalCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/pascalCase.js
new file mode 100644 (file)
index 0000000..fd19035
--- /dev/null
@@ -0,0 +1,13 @@
+var toString = require('../lang/toString');
+var camelCase = require('./camelCase');
+var upperCase = require('./upperCase');
+    /**
+     * camelCase + UPPERCASE first char
+     */
+    function pascalCase(str){
+        str = toString(str);
+        return camelCase(str).replace(/^[a-z]/, upperCase);
+    }
+
+    module.exports = pascalCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/properCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/properCase.js
new file mode 100644 (file)
index 0000000..61636be
--- /dev/null
@@ -0,0 +1,13 @@
+var toString = require('../lang/toString');
+var lowerCase = require('./lowerCase');
+var upperCase = require('./upperCase');
+    /**
+     * UPPERCASE first char of each word.
+     */
+    function properCase(str){
+        str = toString(str);
+        return lowerCase(str).replace(/^\w|\s\w/g, upperCase);
+    }
+
+    module.exports = properCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonASCII.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonASCII.js
new file mode 100644 (file)
index 0000000..fb46381
--- /dev/null
@@ -0,0 +1,14 @@
+var toString = require('../lang/toString');
+    /**
+     * Remove non-printable ASCII chars
+     */
+    function removeNonASCII(str){
+        str = toString(str);
+
+        // Matches non-printable ASCII chars -
+        // http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
+        return str.replace(/[^\x20-\x7E]/g, '');
+    }
+
+    module.exports = removeNonASCII;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonWord.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/removeNonWord.js
new file mode 100644 (file)
index 0000000..ffb05a9
--- /dev/null
@@ -0,0 +1,14 @@
+var toString = require('../lang/toString');
+    // This pattern is generated by the _build/pattern-removeNonWord.js script
+    var PATTERN = /[^\x20\x2D0-9A-Z\x5Fa-z\xC0-\xD6\xD8-\xF6\xF8-\xFF]/g;
+
+    /**
+     * Remove non-word chars.
+     */
+    function removeNonWord(str){
+        str = toString(str);
+        return str.replace(PATTERN, '');
+    }
+
+    module.exports = removeNonWord;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/repeat.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/repeat.js
new file mode 100644 (file)
index 0000000..df0dc1e
--- /dev/null
@@ -0,0 +1,26 @@
+var toString = require('../lang/toString');
+var toInt = require('../number/toInt');
+
+    /**
+     * Repeat string n times
+     */
+     function repeat(str, n){
+         var result = '';
+         str = toString(str);
+         n = toInt(n);
+        if (n < 1) {
+            return '';
+        }
+        while (n > 0) {
+            if (n % 2) {
+                result += str;
+            }
+            n = Math.floor(n / 2);
+            str += str;
+        }
+        return result;
+     }
+
+     module.exports = repeat;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replace.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replace.js
new file mode 100644 (file)
index 0000000..14433fc
--- /dev/null
@@ -0,0 +1,33 @@
+var toString = require('../lang/toString');
+var toArray = require('../lang/toArray');
+
+    /**
+     * Replace string(s) with the replacement(s) in the source.
+     */
+    function replace(str, search, replacements) {
+        str = toString(str);
+        search = toArray(search);
+        replacements = toArray(replacements);
+
+        var searchLength = search.length,
+            replacementsLength = replacements.length;
+
+        if (replacementsLength !== 1 && searchLength !== replacementsLength) {
+            throw new Error('Unequal number of searches and replacements');
+        }
+
+        var i = -1;
+        while (++i < searchLength) {
+            // Use the first replacement for all searches if only one
+            // replacement is provided
+            str = str.replace(
+                search[i],
+                replacements[(replacementsLength === 1) ? 0 : i]);
+        }
+
+        return str;
+    }
+
+    module.exports = replace;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replaceAccents.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/replaceAccents.js
new file mode 100644 (file)
index 0000000..bb22126
--- /dev/null
@@ -0,0 +1,36 @@
+var toString = require('../lang/toString');
+    /**
+    * Replaces all accented chars with regular ones
+    */
+    function replaceAccents(str){
+        str = toString(str);
+
+        // verifies if the String has accents and replace them
+        if (str.search(/[\xC0-\xFF]/g) > -1) {
+            str = str
+                    .replace(/[\xC0-\xC5]/g, "A")
+                    .replace(/[\xC6]/g, "AE")
+                    .replace(/[\xC7]/g, "C")
+                    .replace(/[\xC8-\xCB]/g, "E")
+                    .replace(/[\xCC-\xCF]/g, "I")
+                    .replace(/[\xD0]/g, "D")
+                    .replace(/[\xD1]/g, "N")
+                    .replace(/[\xD2-\xD6\xD8]/g, "O")
+                    .replace(/[\xD9-\xDC]/g, "U")
+                    .replace(/[\xDD]/g, "Y")
+                    .replace(/[\xDE]/g, "P")
+                    .replace(/[\xE0-\xE5]/g, "a")
+                    .replace(/[\xE6]/g, "ae")
+                    .replace(/[\xE7]/g, "c")
+                    .replace(/[\xE8-\xEB]/g, "e")
+                    .replace(/[\xEC-\xEF]/g, "i")
+                    .replace(/[\xF1]/g, "n")
+                    .replace(/[\xF2-\xF6\xF8]/g, "o")
+                    .replace(/[\xF9-\xFC]/g, "u")
+                    .replace(/[\xFE]/g, "p")
+                    .replace(/[\xFD\xFF]/g, "y");
+        }
+        return str;
+    }
+    module.exports = replaceAccents;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rpad.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rpad.js
new file mode 100644 (file)
index 0000000..99f6378
--- /dev/null
@@ -0,0 +1,15 @@
+var toString = require('../lang/toString');
+var repeat = require('./repeat');
+
+    /**
+     * Pad string with `char` if its' length is smaller than `minLen`
+     */
+    function rpad(str, minLen, ch) {
+        str = toString(str);
+        ch = ch || ' ';
+        return (str.length < minLen)? str + repeat(ch, minLen - str.length) : str;
+    }
+
+    module.exports = rpad;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rtrim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/rtrim.js
new file mode 100644 (file)
index 0000000..66ba80e
--- /dev/null
@@ -0,0 +1,33 @@
+var toString = require('../lang/toString');
+var WHITE_SPACES = require('./WHITE_SPACES');
+    /**
+     * Remove chars from end of string.
+     */
+    function rtrim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+
+        var end = str.length - 1,
+            charLen = chars.length,
+            found = true,
+            i, c;
+
+        while (found && end >= 0) {
+            found = false;
+            i = -1;
+            c = str.charAt(end);
+
+            while (++i < charLen) {
+                if (c === chars[i]) {
+                    found = true;
+                    end--;
+                    break;
+                }
+            }
+        }
+
+        return (end >= 0) ? str.substring(0, end + 1) : '';
+    }
+
+    module.exports = rtrim;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/sentenceCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/sentenceCase.js
new file mode 100644 (file)
index 0000000..354104c
--- /dev/null
@@ -0,0 +1,15 @@
+var toString = require('../lang/toString');
+var lowerCase = require('./lowerCase');
+var upperCase = require('./upperCase');
+    /**
+     * UPPERCASE first char of each sentence and lowercase other chars.
+     */
+    function sentenceCase(str){
+        str = toString(str);
+
+        // Replace first char of each sentence (new line or after '.\s+') to
+        // UPPERCASE
+        return lowerCase(str).replace(/(^\w)|\.\s+(\w)/gm, upperCase);
+    }
+    module.exports = sentenceCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/slugify.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/slugify.js
new file mode 100644 (file)
index 0000000..142f0d9
--- /dev/null
@@ -0,0 +1,24 @@
+var toString = require('../lang/toString');
+var replaceAccents = require('./replaceAccents');
+var removeNonWord = require('./removeNonWord');
+var trim = require('./trim');
+    /**
+     * Convert to lower case, remove accents, remove non-word chars and
+     * replace spaces with the specified delimeter.
+     * Does not split camelCase text.
+     */
+    function slugify(str, delimeter){
+        str = toString(str);
+
+        if (delimeter == null) {
+            delimeter = "-";
+        }
+        str = replaceAccents(str);
+        str = removeNonWord(str);
+        str = trim(str) //should come after removeNonWord
+                .replace(/ +/g, delimeter) //replace spaces with delimeter
+                .toLowerCase();
+        return str;
+    }
+    module.exports = slugify;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/startsWith.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/startsWith.js
new file mode 100644 (file)
index 0000000..bce2bd2
--- /dev/null
@@ -0,0 +1,13 @@
+var toString = require('../lang/toString');
+    /**
+     * Checks if string starts with specified prefix.
+     */
+    function startsWith(str, prefix) {
+        str = toString(str);
+        prefix = toString(prefix);
+
+        return str.indexOf(prefix) === 0;
+    }
+
+    module.exports = startsWith;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/stripHtmlTags.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/stripHtmlTags.js
new file mode 100644 (file)
index 0000000..01d17b0
--- /dev/null
@@ -0,0 +1,11 @@
+var toString = require('../lang/toString');
+    /**
+     * Remove HTML tags from string.
+     */
+    function stripHtmlTags(str){
+        str = toString(str);
+
+        return str.replace(/<[^>]*>/g, '');
+    }
+    module.exports = stripHtmlTags;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/trim.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/trim.js
new file mode 100644 (file)
index 0000000..9652b0c
--- /dev/null
@@ -0,0 +1,15 @@
+var toString = require('../lang/toString');
+var WHITE_SPACES = require('./WHITE_SPACES');
+var ltrim = require('./ltrim');
+var rtrim = require('./rtrim');
+    /**
+     * Remove white-spaces from beginning and end of string.
+     */
+    function trim(str, chars) {
+        str = toString(str);
+        chars = chars || WHITE_SPACES;
+        return ltrim(rtrim(str, chars), chars);
+    }
+
+    module.exports = trim;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/truncate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/truncate.js
new file mode 100644 (file)
index 0000000..a98d6c7
--- /dev/null
@@ -0,0 +1,21 @@
+var toString = require('../lang/toString');
+var trim = require('./trim');
+    /**
+     * Limit number of chars.
+     */
+    function truncate(str, maxChars, append, onlyFullWords){
+        str = toString(str);
+        append = append || '...';
+        maxChars = onlyFullWords? maxChars + 1 : maxChars;
+
+        str = trim(str);
+        if(str.length <= maxChars){
+            return str;
+        }
+        str = str.substr(0, maxChars - append.length);
+        //crop at last space or remove trailing whitespace
+        str = onlyFullWords? str.substr(0, str.lastIndexOf(' ')) : trim(str);
+        return str + append;
+    }
+    module.exports = truncate;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/typecast.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/typecast.js
new file mode 100644 (file)
index 0000000..c1386a4
--- /dev/null
@@ -0,0 +1,29 @@
+
+
+    var UNDEF;
+
+    /**
+     * Parses string and convert it into a native value.
+     */
+    function typecast(val) {
+        var r;
+        if ( val === null || val === 'null' ) {
+            r = null;
+        } else if ( val === 'true' ) {
+            r = true;
+        } else if ( val === 'false' ) {
+            r = false;
+        } else if ( val === UNDEF || val === 'undefined' ) {
+            r = UNDEF;
+        } else if ( val === '' || isNaN(val) ) {
+            //isNaN('') returns false
+            r = val;
+        } else {
+            //parseFloat(null || '') returns NaN
+            r = parseFloat(val);
+        }
+        return r;
+    }
+
+    module.exports = typecast;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unCamelCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unCamelCase.js
new file mode 100644 (file)
index 0000000..4968f37
--- /dev/null
@@ -0,0 +1,23 @@
+var toString = require('../lang/toString');
+
+    var CAMEL_CASE_BORDER = /([a-z\xE0-\xFF])([A-Z\xC0\xDF])/g;
+
+    /**
+     * Add space between camelCase text.
+     */
+    function unCamelCase(str, delimiter){
+        if (delimiter == null) {
+            delimiter = ' ';
+        }
+
+        function join(str, c1, c2) {
+            return c1 + delimiter + c2;
+        }
+
+        str = toString(str);
+        str = str.replace(CAMEL_CASE_BORDER, join);
+        str = str.toLowerCase(); //add space between camelCase text
+        return str;
+    }
+    module.exports = unCamelCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/underscore.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/underscore.js
new file mode 100644 (file)
index 0000000..ebd6e2b
--- /dev/null
@@ -0,0 +1,13 @@
+var toString = require('../lang/toString');
+var slugify = require('./slugify');
+var unCamelCase = require('./unCamelCase');
+    /**
+     * Replaces spaces with underscores, split camelCase text, remove non-word chars, remove accents and convert to lower case.
+     */
+    function underscore(str){
+        str = toString(str);
+        str = unCamelCase(str);
+        return slugify(str, "_");
+    }
+    module.exports = underscore;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeHtml.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeHtml.js
new file mode 100644 (file)
index 0000000..ad1987d
--- /dev/null
@@ -0,0 +1,18 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Unescapes HTML special chars
+     */
+    function unescapeHtml(str){
+        str = toString(str)
+            .replace(/&amp;/g , '&')
+            .replace(/&lt;/g  , '<')
+            .replace(/&gt;/g  , '>')
+            .replace(/&#0*39;/g , "'")
+            .replace(/&quot;/g, '"');
+        return str;
+    }
+
+    module.exports = unescapeHtml;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeUnicode.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unescapeUnicode.js
new file mode 100644 (file)
index 0000000..0b7fb73
--- /dev/null
@@ -0,0 +1,16 @@
+var toString = require('../lang/toString');
+
+    /**
+     * Unescape unicode char sequences
+     */
+    function unescapeUnicode(str){
+        str = toString(str);
+        return str.replace(/\\u[0-9a-f]{4}/g, function(ch){
+            var code = parseInt(ch.slice(2), 16);
+            return String.fromCharCode(code);
+        });
+    }
+
+    module.exports = unescapeUnicode;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unhyphenate.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/unhyphenate.js
new file mode 100644 (file)
index 0000000..311dfa1
--- /dev/null
@@ -0,0 +1,10 @@
+var toString = require('../lang/toString');
+    /**
+     * Replaces hyphens with spaces. (only hyphens between word chars)
+     */
+    function unhyphenate(str){
+        str = toString(str);
+        return str.replace(/(\w)(-)(\w)/g, '$1 $3');
+    }
+    module.exports = unhyphenate;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/upperCase.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/string/upperCase.js
new file mode 100644 (file)
index 0000000..6c92552
--- /dev/null
@@ -0,0 +1,10 @@
+var toString = require('../lang/toString');
+    /**
+     * "Safer" String.toUpperCase()
+     */
+    function upperCase(str){
+        str = toString(str);
+        return str.toUpperCase();
+    }
+    module.exports = upperCase;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/time.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/time.js
new file mode 100644 (file)
index 0000000..9f53329
--- /dev/null
@@ -0,0 +1,12 @@
+
+
+//automatically generated, do not edit!
+//run `node build` instead
+module.exports = {
+    'convert' : require('./time/convert'),
+    'now' : require('./time/now'),
+    'parseMs' : require('./time/parseMs'),
+    'toTimeString' : require('./time/toTimeString')
+};
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/convert.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/convert.js
new file mode 100644 (file)
index 0000000..852a0f0
--- /dev/null
@@ -0,0 +1,41 @@
+
+
+    /**
+     * convert time into another unit
+     */
+    function convert(val, sourceUnitName, destinationUnitName){
+        destinationUnitName = destinationUnitName || 'ms';
+        return (val * getUnit(sourceUnitName)) / getUnit(destinationUnitName);
+    }
+
+
+    //TODO: maybe extract to a separate module
+    function getUnit(unitName){
+        switch(unitName){
+            case 'ms':
+            case 'millisecond':
+                return 1;
+            case 's':
+            case 'second':
+                 return 1000;
+            case 'm':
+            case 'minute':
+                 return 60000;
+            case 'h':
+            case 'hour':
+                 return 3600000;
+            case 'd':
+            case 'day':
+                 return 86400000;
+            case 'w':
+            case 'week':
+                 return 604800000;
+            default:
+                throw new Error('"'+ unitName + '" is not a valid unit');
+        }
+    }
+
+
+    module.exports = convert;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/now.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/now.js
new file mode 100644 (file)
index 0000000..0cedb18
--- /dev/null
@@ -0,0 +1,18 @@
+
+
+    /**
+     * Get current time in miliseconds
+     */
+    function now(){
+        // yes, we defer the work to another function to allow mocking it
+        // during the tests
+        return now.get();
+    }
+
+    now.get = (typeof Date.now === 'function')? Date.now : function(){
+        return +(new Date());
+    };
+
+    module.exports = now;
+
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/parseMs.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/parseMs.js
new file mode 100644 (file)
index 0000000..6d99797
--- /dev/null
@@ -0,0 +1,17 @@
+var countSteps = require('../math/countSteps');
+
+    /**
+     * Parse timestamp into an object.
+     */
+    function parseMs(ms){
+        return {
+            milliseconds : countSteps(ms, 1, 1000),
+            seconds      : countSteps(ms, 1000, 60),
+            minutes      : countSteps(ms, 60000, 60),
+            hours        : countSteps(ms, 3600000, 24),
+            days         : countSteps(ms, 86400000)
+        };
+    }
+
+    module.exports = parseMs;
+
diff --git a/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/toTimeString.js b/wrt/build/node_modules/rocambole-indent/node_modules/mout/time/toTimeString.js
new file mode 100644 (file)
index 0000000..101d69f
--- /dev/null
@@ -0,0 +1,24 @@
+var countSteps = require('../math/countSteps');
+var pad = require('../number/pad');
+
+    var HOUR = 3600000,
+        MINUTE = 60000,
+        SECOND = 1000;
+
+    /**
+     * Format timestamp into a time string.
+     */
+    function toTimeString(ms){
+        var h = ms < HOUR   ? 0 : countSteps(ms, HOUR),
+            m = ms < MINUTE ? 0 : countSteps(ms, MINUTE, 60),
+            s = ms < SECOND ? 0 : countSteps(ms, SECOND, 60),
+            str = '';
+
+        str += h? h + ':' : '';
+        str += pad(m, 2) + ':';
+        str += pad(s, 2);
+
+        return str;
+    }
+    module.exports = toTimeString;
+
diff --git a/wrt/build/node_modules/rocambole-indent/package.json b/wrt/build/node_modules/rocambole-indent/package.json
new file mode 100644 (file)
index 0000000..7cfc90b
--- /dev/null
@@ -0,0 +1,98 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole-indent@^2.0.3",
+        "scope": null,
+        "escapedName": "rocambole-indent",
+        "name": "rocambole-indent",
+        "rawSpec": "^2.0.3",
+        "spec": ">=2.0.3 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole-indent@>=2.0.3 <3.0.0",
+  "_id": "rocambole-indent@2.0.4",
+  "_inCache": true,
+  "_location": "/rocambole-indent",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.7.5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole-indent@^2.0.3",
+    "scope": null,
+    "escapedName": "rocambole-indent",
+    "name": "rocambole-indent",
+    "rawSpec": "^2.0.3",
+    "spec": ">=2.0.3 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.4.tgz",
+  "_shasum": "a18a24977ca0400b861daa4631e861dcb52d085c",
+  "_shrinkwrap": null,
+  "_spec": "rocambole-indent@^2.0.3",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "http://millermedeiros.com",
+    "url": "contact@millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole-indent/issues"
+  },
+  "dependencies": {
+    "debug": "^2.1.3",
+    "mout": "^0.11.0",
+    "rocambole-token": "^1.2.1"
+  },
+  "description": "helpers for rocambole AST indentation",
+  "devDependencies": {
+    "disparity": "^2.0.0",
+    "rocambole": "^0.5.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "a18a24977ca0400b861daa4631e861dcb52d085c",
+    "tarball": "https://registry.npmjs.org/rocambole-indent/-/rocambole-indent-2.0.4.tgz"
+  },
+  "gitHead": "c3e41b175da3b964814b0214df96d507e0bd4128",
+  "homepage": "https://github.com/millermedeiros/rocambole-indent",
+  "jshintConfig": {
+    "node": true,
+    "eqnull": true
+  },
+  "keywords": [
+    "rocambole",
+    "ast",
+    "esformatter",
+    "indent"
+  ],
+  "license": "MIT",
+  "main": "rocambole-indent.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole-indent",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole-indent.git"
+  },
+  "scripts": {
+    "test": "node test/runner.js"
+  },
+  "version": "2.0.4"
+}
diff --git a/wrt/build/node_modules/rocambole-indent/rocambole-indent.js b/wrt/build/node_modules/rocambole-indent/rocambole-indent.js
new file mode 100644 (file)
index 0000000..17937b8
--- /dev/null
@@ -0,0 +1,348 @@
+'use strict';
+
+var debug = require('debug')('rocambole:indent');
+var tk = require('rocambole-token');
+var escapeRegExp = require('mout/string/escapeRegExp');
+var repeat = require('mout/string/repeat');
+
+
+// ---
+
+var _opts = {
+  value: '  ',
+  CommentInsideEmptyBlock: 1
+};
+
+// ---
+
+
+exports.setOptions = function(opts) {
+  _opts = opts;
+};
+
+
+exports.inBetween = indentInBetween;
+function indentInBetween(startToken, endToken, level) {
+  level = level != null ? level : 1;
+
+  if (!level || (!startToken || !endToken) || startToken === endToken) {
+    debug(
+      '[inBetween] not going to indent. start: %s, end: %s, level: %s',
+      startToken && startToken.value,
+      endToken && endToken.value,
+      level
+    );
+    return;
+  }
+
+  var token = startToken && startToken.next;
+  var endsWithBraces = isClosingBrace(endToken);
+  while (token && token !== endToken) {
+    if (tk.isBr(token.prev)) {
+      // we ignore the last indent (if first token on the line is a ws or
+      // ident) just because in most cases we don't want to change the indent
+      // just before "}", ")" and "]" - this allow us to pass
+      // `node.body.startToken` and `node.body.endToken` as the range
+      if (token.next !== endToken || !endsWithBraces || !tk.isEmpty(token)) {
+        addLevel(token, level);
+      }
+    }
+    token = token.next;
+  }
+}
+
+
+function isClosingBrace(token) {
+  var val = token.value;
+  return val === ')' || val === '}' || val === ']';
+}
+
+
+exports.addLevel = addLevel;
+function addLevel(token, level) {
+  if (!level) {
+    // zero is a noop
+    return;
+  }
+
+  token = findStartOfLine(token);
+
+  if (!token) {
+    // we never indent empty lines!
+    debug('[indent.addLevel] can\'t find start of line');
+    return;
+  }
+
+  var value = repeat(_opts.value, Math.abs(level));
+
+  if (tk.isIndent(token)) {
+    if (level > 0) {
+      // if it's already an Indent we just bump the value & level
+      token.value += value;
+      token.level += level;
+    } else {
+      if (token.level + level <= 0) {
+        tk.remove(token);
+      } else {
+        token.value = token.value.replace(value, '');
+        token.level += level;
+      }
+    }
+    if (token.next && token.next.type === 'BlockComment') {
+      updateBlockComment(token.next);
+    }
+    return;
+  }
+
+  if (level < 1) {
+    // we can't remove indent if previous token isn't an indent
+    debug(
+      '[addLevel] we can\'t decrement if line doesn\'t start with Indent. token: %s, level: %s',
+      token && token.value,
+      level
+    );
+    return;
+  }
+
+  if (tk.isWs(token)) {
+    // convert WhiteSpace token into Indent
+    token.type = 'Indent';
+    token.value = value;
+    token.level = level;
+    return;
+  }
+
+  // if regular token we add a new Indent before it
+  tk.before(token, {
+    type: 'Indent',
+    value: value,
+    level: level
+  });
+
+  if (token.type === 'BlockComment') {
+    updateBlockComment(token);
+  }
+}
+
+function findStartOfLine(token) {
+  if (tk.isBr(token) && tk.isBr(token.prev)) {
+    // empty lines are ignored
+    return null;
+  }
+  var prev = token.prev;
+  while (true) {
+    if (!prev || tk.isBr(prev)) {
+      return token;
+    }
+    token = prev;
+    prev = token.prev;
+  }
+}
+
+
+exports.sanitize = sanitize;
+function sanitize(astOrNode) {
+  var token = astOrNode.startToken;
+  var end = astOrNode.endToken && astOrNode.endToken.next;
+  while (token && token !== end) {
+    var next = token.next;
+    if (isOriginalIndent(token)) {
+      tk.remove(token);
+    }
+    token = next;
+  }
+}
+
+
+function isOriginalIndent(token) {
+  // original indent don't have a "level" value
+  // we also need to remove any indent that happens after a token that
+  // isn't a line break (just in case these are added by mistake)
+  return (token.type === 'WhiteSpace' && (!token.prev || tk.isBr(token.prev)) && !tk.isBr(token.next)) ||
+    (token.type === 'Indent' && (token.level == null || !tk.isBr(token.prev)));
+}
+
+
+exports.updateBlockComment = updateBlockComment;
+function updateBlockComment(comment) {
+  var orig = new RegExp('([\\n\\r]+)' + escapeRegExp(comment.originalIndent || ''), 'gm');
+  var update = comment.prev && comment.prev.type === 'Indent' ? comment.prev.value : '';
+  comment.raw = comment.raw.replace(orig, '$1' + update);
+  // override the originalIndent so multiple consecutive calls still work as
+  // expected
+  comment.originalIndent = update;
+}
+
+
+// comments are aligned based on the next line unless the line/block is
+// followed by an empty line, in that case it will use the previous line as
+// reference.
+exports.alignComments = alignComments;
+function alignComments(nodeOrAst) {
+  var first = nodeOrAst.startToken && nodeOrAst.startToken.prev;
+  var token = nodeOrAst.endToken;
+  while (token && token !== first) {
+    if (tk.isComment(token) && isFirstNonEmptyTokenOfLine(token)) {
+      var base = findReferenceIndent(token);
+      matchBaseIndent(token, base);
+
+      // if inside an empty block we add indent otherwise it looks weird
+      var change = _opts.CommentInsideEmptyBlock != null ?
+        _opts.CommentInsideEmptyBlock : 1;
+      if (change && isInsideEmptyBlock(token)) {
+        addLevel(token, change);
+      }
+
+      if (token.type === 'BlockComment') {
+        updateBlockComment(token);
+      }
+    }
+
+    token = token.prev;
+  }
+}
+
+function matchBaseIndent(token, base) {
+  if (!base) {
+    if (isIndentOrWs(token.prev)) {
+      tk.remove(token.prev);
+    }
+    return;
+  }
+
+  if (isIndentOrWs(token.prev)) {
+    // we reuse whitespace just because user might not have converted all
+    // the whitespaces into Indent tokens
+    token.prev.type = 'Indent';
+    token.prev.value = base.value;
+    token.prev.level = inferLevel(base, _opts.value);
+    return;
+  }
+
+  tk.before(token, {
+    type: 'Indent',
+    value: base.value,
+    level: inferLevel(base, _opts.value)
+  });
+}
+
+function isFirstNonEmptyTokenOfLine(token) {
+  if (!token.prev || tk.isBr(token.prev)) return true;
+  var prev = tk.findPrevNonEmpty(token);
+  return !prev ? true : tk.findInBetween(prev, token, tk.isBr);
+}
+
+function findReferenceIndent(start) {
+  var prevLine = findPrevReference(start);
+  var nextLine = findNextReference(start);
+  if (isAtBeginingOfBlock(start) || isDetached(start, nextLine)) {
+    // this handles an edge case of comment just after "{" followed by an empty
+    // line (would use the previous line as reference by mistake)
+    // and also an edge case where comment is surrounded by empty lines but
+    // should still use the next non-empty line as a reference
+    while (nextLine && tk.isBr(nextLine)) {
+      nextLine = findNextReference(nextLine.prev);
+    }
+  }
+  // we favor nextLine unless it's empty
+  if (tk.isBr(nextLine) || !nextLine) {
+    return isIndentOrWs(prevLine) ? prevLine : null;
+  }
+  return isIndentOrWs(nextLine) ? nextLine : null;
+}
+
+function findPrevReference(start) {
+  var token = start.prev;
+  while (token) {
+    // multiple consecutive comments should use the same reference (consider as
+    // a single block)
+    if (tk.isBr(token) && !tk.isBr(token.next) && nextInLineNotComment(token)) {
+      return token.next;
+    }
+    token = token.prev;
+  }
+}
+
+function findNextReference(start) {
+  var token = start.next;
+  while (token) {
+    // multiple consecutive comments should use the same reference (consider as
+    // a single block)
+    if (tk.isBr(token) && nextInLineNotComment(token)) {
+      return token.next;
+    }
+    token = token.next;
+  }
+}
+
+function isDetached(start, nextLine) {
+  return hasEmptyLineBefore(start) && tk.isBr(nextLine) &&
+    !isAtEndOfBlock(nextLine);
+}
+
+function hasEmptyLineBefore(token) {
+  token = token.prev;
+  var count = 0;
+  while (token && tk.isEmpty(token)) {
+    if (tk.isBr(token)) {
+      count += 1;
+    }
+    if (count > 1) {
+      return true;
+    }
+    token = token.prev;
+  }
+  return false;
+}
+
+function isIndentOrWs(token) {
+  return tk.isIndent(token) || tk.isWs(token);
+}
+
+function nextInLineNotComment(token) {
+  token = token.next;
+  while (token) {
+    if (tk.isBr(token)) {
+      return true;
+    }
+    if (!tk.isEmpty(token)) {
+      return !tk.isComment(token);
+    }
+    token = token.next;
+  }
+  return true;
+}
+
+function isAtBeginingOfBlock(token) {
+  var open = tk.findPrev(token, tk.isCode);
+  if (!open) return false;
+  var a = open.value;
+  return a === '(' || a === '[' || a === '{';
+}
+
+function isAtEndOfBlock(token) {
+  var close = tk.findNext(token, tk.isCode);
+  if (!close) return false;
+  var z = close.value;
+  return (z === ')' || z === ']' || z === '}');
+}
+
+function isInsideEmptyBlock(token) {
+  return isAtEndOfBlock(token) && isAtBeginingOfBlock(token);
+}
+
+exports.whiteSpaceToIndent = whiteSpaceToIndent;
+function whiteSpaceToIndent(token, indentValue) {
+  if (tk.isWs(token) && (tk.isBr(token.prev) || !token.prev)) {
+    token.type = 'Indent';
+    // we can't add level if we don't know original indentValue
+    indentValue = indentValue || _opts.value;
+    if (indentValue) {
+      token.level = inferLevel(token, indentValue);
+    }
+  }
+}
+
+function inferLevel(token, indentValue) {
+  return Math.max(token.value.split(indentValue).length - 1, 0);
+}
diff --git a/wrt/build/node_modules/rocambole-indent/test/align_comment-input.js b/wrt/build/node_modules/rocambole-indent/test/align_comment-input.js
new file mode 100644 (file)
index 0000000..e871f60
--- /dev/null
@@ -0,0 +1,115 @@
+    // next
+switch (foo) {
+      // next
+  case bar:
+// next
+    baz();
+// this should be aligned with previous line since comment block is
+  // followed by an empty line
+
+        // next
+  case biz:
+        // next
+    what();
+    // next
+}
+  // previous
+
+  // next
+function empty(
+    // > indent
+// > indent
+)
+    // next
+// next
+{
+    // > indent
+  // > indent
+}
+// prev
+
+function empty2() {
+// > indent
+
+  // next
+  if (foo) {
+          // >> indent
+  }
+
+      // next
+  function empty3() {
+        // >> indent
+
+    // next
+    foo();
+  }
+      // prev
+
+        // next
+  switch (a) {
+// next
+    case 'lorem':
+          // next
+      dolor();
+    // next
+      break;
+    // next
+  }
+}
+
+// next
+;(function() {
+    // next
+var bar = 'baz';
+    // next
+}());
+  // prev
+
+// next
+class Foo extends Bar {
+      // > indent
+
+  constructor(bar) {
+    this.bar = bar;
+  }
+
+// prev
+
+  method() {
+      // > indent
+  }
+    //prev
+
+  // next
+}
+// prev
+
+function foo() {
+
+    // > indent
+        // > indent
+
+}
+
+foo
+  .bar();
+
+// next
+
+function dolor() {
+  return 123;
+
+    // prev
+
+}
+
+function bar() {
+  foo();
+
+// > indent
+// > indent
+
+  baz();
+}
+
+    // prev
diff --git a/wrt/build/node_modules/rocambole-indent/test/align_comment-output.js b/wrt/build/node_modules/rocambole-indent/test/align_comment-output.js
new file mode 100644 (file)
index 0000000..babc32b
--- /dev/null
@@ -0,0 +1,115 @@
+// next
+switch (foo) {
+  // next
+  case bar:
+    // next
+    baz();
+    // this should be aligned with previous line since comment block is
+    // followed by an empty line
+
+  // next
+  case biz:
+    // next
+    what();
+// next
+}
+// previous
+
+// next
+function empty(
+  // > indent
+  // > indent
+)
+// next
+// next
+{
+  // > indent
+  // > indent
+}
+// prev
+
+function empty2() {
+  // > indent
+
+  // next
+  if (foo) {
+    // >> indent
+  }
+
+  // next
+  function empty3() {
+    // >> indent
+
+    // next
+    foo();
+  }
+  // prev
+
+  // next
+  switch (a) {
+    // next
+    case 'lorem':
+      // next
+      dolor();
+      // next
+      break;
+  // next
+  }
+}
+
+// next
+;(function() {
+// next
+var bar = 'baz';
+// next
+}());
+// prev
+
+// next
+class Foo extends Bar {
+  // > indent
+
+  constructor(bar) {
+    this.bar = bar;
+  }
+
+  // prev
+
+  method() {
+    // > indent
+  }
+  //prev
+
+// next
+}
+// prev
+
+function foo() {
+
+  // > indent
+  // > indent
+
+}
+
+foo
+  .bar();
+
+// next
+
+function dolor() {
+  return 123;
+
+  // prev
+
+}
+
+function bar() {
+  foo();
+
+  // > indent
+  // > indent
+
+  baz();
+}
+
+// prev
diff --git a/wrt/build/node_modules/rocambole-indent/test/runner.js b/wrt/build/node_modules/rocambole-indent/test/runner.js
new file mode 100644 (file)
index 0000000..35f9a08
--- /dev/null
@@ -0,0 +1,62 @@
+//jshint node:true, eqnull:true
+'use strict';
+
+var assert = require('assert');
+var disparity = require('disparity');
+var fs = require('fs');
+var indent = require('../rocambole-indent');
+var path = require('path');
+var rocambole = require('rocambole');
+
+// ==================
+// whiteSpaceToIndent
+// ==================
+
+var ws1 = { type: 'WhiteSpace', value: '  ' };
+indent.whiteSpaceToIndent(ws1);
+assert.equal(ws1.type, 'Indent');
+assert.equal(ws1.level, 1);
+
+var ws2 = { type: 'WhiteSpace', value: '  ', prev: { type: 'LineBreak' } };
+indent.whiteSpaceToIndent(ws2, '  ');
+assert.equal(ws2.type, 'Indent');
+assert.equal(ws2.level, 1);
+
+var ws3 = { type: 'WhiteSpace', value: '  ', prev: { type: 'Punctuator' } };
+indent.whiteSpaceToIndent(ws3, '  ');
+assert.equal(ws3.type, 'WhiteSpace');
+assert.equal(ws3.level, undefined);
+
+// =============
+// alignComments
+// =============
+
+// yes, this will throw if it doesn't support empty nodes/ast
+indent.alignComments({});
+
+formatAndCompare(
+  'align_comment-input.js',
+  'align_comment-output.js',
+  indent.alignComments
+);
+
+function formatAndCompare(inputFile, expectedFile, method) {
+  var input = getFile(inputFile);
+  var expected = getFile(expectedFile);
+  var ast = rocambole.parse(input);
+  method.call(indent, ast);
+  var output = ast.toString();
+
+  if (output !== expected) {
+    process.stderr.write(disparity.chars(output, expected, {
+      paths: ['actual', 'expected']
+    }));
+    process.exit(1);
+  } else {
+    console.error('ok %s', inputFile);
+  }
+}
+
+function getFile(name) {
+  return fs.readFileSync(path.join(__dirname, name)).toString();
+}
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/.bin/semver b/wrt/build/node_modules/rocambole-linebreak/node_modules/.bin/semver
new file mode 120000 (symlink)
index 0000000..317eb29
--- /dev/null
@@ -0,0 +1 @@
+../semver/bin/semver
\ No newline at end of file
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.npmignore b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.npmignore
new file mode 100644 (file)
index 0000000..534108e
--- /dev/null
@@ -0,0 +1,4 @@
+node_modules/
+coverage/
+.nyc_output/
+nyc_output/
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.travis.yml b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/.travis.yml
new file mode 100644 (file)
index 0000000..991d04b
--- /dev/null
@@ -0,0 +1,5 @@
+language: node_js
+node_js:
+  - '0.10'
+  - '0.12'
+  - 'iojs'
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/package.json b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/package.json
new file mode 100644 (file)
index 0000000..29af430
--- /dev/null
@@ -0,0 +1,89 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "semver@^4.3.1",
+        "scope": null,
+        "escapedName": "semver",
+        "name": "semver",
+        "rawSpec": "^4.3.1",
+        "spec": ">=4.3.1 <5.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole-linebreak"
+    ]
+  ],
+  "_from": "semver@>=4.3.1 <5.0.0",
+  "_id": "semver@4.3.6",
+  "_inCache": true,
+  "_location": "/rocambole-linebreak/semver",
+  "_nodeVersion": "2.0.1",
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "isaacs@npmjs.com"
+  },
+  "_npmVersion": "2.10.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "semver@^4.3.1",
+    "scope": null,
+    "escapedName": "semver",
+    "name": "semver",
+    "rawSpec": "^4.3.1",
+    "spec": ">=4.3.1 <5.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/rocambole-linebreak"
+  ],
+  "_resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
+  "_shasum": "300bc6e0e86374f7ba61068b5b1ecd57fc6532da",
+  "_shrinkwrap": null,
+  "_spec": "semver@^4.3.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole-linebreak",
+  "bin": {
+    "semver": "./bin/semver"
+  },
+  "browser": "semver.browser.js",
+  "bugs": {
+    "url": "https://github.com/npm/node-semver/issues"
+  },
+  "dependencies": {},
+  "description": "The semantic version parser used by npm.",
+  "devDependencies": {
+    "tap": "^1.2.0",
+    "uglify-js": "~2.3.6"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "300bc6e0e86374f7ba61068b5b1ecd57fc6532da",
+    "tarball": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz"
+  },
+  "gitHead": "63c48296ca5da3ba6a88c743bb8c92effc789811",
+  "homepage": "https://github.com/npm/node-semver#readme",
+  "license": "ISC",
+  "main": "semver.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "isaacs@npmjs.com"
+    },
+    {
+      "name": "othiym23",
+      "email": "ogd@aoaioxxysz.net"
+    }
+  ],
+  "min": "semver.min.js",
+  "name": "semver",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/npm/node-semver.git"
+  },
+  "scripts": {
+    "prepublish": "make",
+    "test": "tap test/*.js"
+  },
+  "version": "4.3.6"
+}
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js
new file mode 100644 (file)
index 0000000..4b0cfec
--- /dev/null
@@ -0,0 +1,1201 @@
+;(function(exports) {
+
+// export the class if we are in a Node-like system.
+if (typeof module === 'object' && module.exports === exports)
+  exports = module.exports = SemVer;
+
+// The debug function is excluded entirely from the minified version.
+
+// Note: this is the semver.org version of the spec that it implements
+// Not necessarily the package version of this code.
+exports.SEMVER_SPEC_VERSION = '2.0.0';
+
+var MAX_LENGTH = 256;
+var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
+
+// The actual regexps go on exports.re
+var re = exports.re = [];
+var src = exports.src = [];
+var R = 0;
+
+// The following Regular Expressions can be used for tokenizing,
+// validating, and parsing SemVer version strings.
+
+// ## Numeric Identifier
+// A single `0`, or a non-zero digit followed by zero or more digits.
+
+var NUMERICIDENTIFIER = R++;
+src[NUMERICIDENTIFIER] = '0|[1-9]\\d*';
+var NUMERICIDENTIFIERLOOSE = R++;
+src[NUMERICIDENTIFIERLOOSE] = '[0-9]+';
+
+
+// ## Non-numeric Identifier
+// Zero or more digits, followed by a letter or hyphen, and then zero or
+// more letters, digits, or hyphens.
+
+var NONNUMERICIDENTIFIER = R++;
+src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*';
+
+
+// ## Main Version
+// Three dot-separated numeric identifiers.
+
+var MAINVERSION = R++;
+src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' +
+                   '(' + src[NUMERICIDENTIFIER] + ')\\.' +
+                   '(' + src[NUMERICIDENTIFIER] + ')';
+
+var MAINVERSIONLOOSE = R++;
+src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
+                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
+                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')';
+
+// ## Pre-release Version Identifier
+// A numeric identifier, or a non-numeric identifier.
+
+var PRERELEASEIDENTIFIER = R++;
+src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] +
+                            '|' + src[NONNUMERICIDENTIFIER] + ')';
+
+var PRERELEASEIDENTIFIERLOOSE = R++;
+src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] +
+                                 '|' + src[NONNUMERICIDENTIFIER] + ')';
+
+
+// ## Pre-release Version
+// Hyphen, followed by one or more dot-separated pre-release version
+// identifiers.
+
+var PRERELEASE = R++;
+src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] +
+                  '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))';
+
+var PRERELEASELOOSE = R++;
+src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] +
+                       '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))';
+
+// ## Build Metadata Identifier
+// Any combination of digits, letters, or hyphens.
+
+var BUILDIDENTIFIER = R++;
+src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+';
+
+// ## Build Metadata
+// Plus sign, followed by one or more period-separated build metadata
+// identifiers.
+
+var BUILD = R++;
+src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] +
+             '(?:\\.' + src[BUILDIDENTIFIER] + ')*))';
+
+
+// ## Full Version String
+// A main version, followed optionally by a pre-release version and
+// build metadata.
+
+// Note that the only major, minor, patch, and pre-release sections of
+// the version string are capturing groups.  The build metadata is not a
+// capturing group, because it should not ever be used in version
+// comparison.
+
+var FULL = R++;
+var FULLPLAIN = 'v?' + src[MAINVERSION] +
+                src[PRERELEASE] + '?' +
+                src[BUILD] + '?';
+
+src[FULL] = '^' + FULLPLAIN + '$';
+
+// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
+// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
+// common in the npm registry.
+var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] +
+                 src[PRERELEASELOOSE] + '?' +
+                 src[BUILD] + '?';
+
+var LOOSE = R++;
+src[LOOSE] = '^' + LOOSEPLAIN + '$';
+
+var GTLT = R++;
+src[GTLT] = '((?:<|>)?=?)';
+
+// Something like "2.*" or "1.2.x".
+// Note that "x.x" is a valid xRange identifer, meaning "any version"
+// Only the first item is strictly required.
+var XRANGEIDENTIFIERLOOSE = R++;
+src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*';
+var XRANGEIDENTIFIER = R++;
+src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*';
+
+var XRANGEPLAIN = R++;
+src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:' + src[PRERELEASE] + ')?' +
+                   src[BUILD] + '?' +
+                   ')?)?';
+
+var XRANGEPLAINLOOSE = R++;
+src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:' + src[PRERELEASELOOSE] + ')?' +
+                        src[BUILD] + '?' +
+                        ')?)?';
+
+var XRANGE = R++;
+src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$';
+var XRANGELOOSE = R++;
+src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$';
+
+// Tilde ranges.
+// Meaning is "reasonably at or greater than"
+var LONETILDE = R++;
+src[LONETILDE] = '(?:~>?)';
+
+var TILDETRIM = R++;
+src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+';
+re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g');
+var tildeTrimReplace = '$1~';
+
+var TILDE = R++;
+src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$';
+var TILDELOOSE = R++;
+src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$';
+
+// Caret ranges.
+// Meaning is "at least and backwards compatible with"
+var LONECARET = R++;
+src[LONECARET] = '(?:\\^)';
+
+var CARETTRIM = R++;
+src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+';
+re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g');
+var caretTrimReplace = '$1^';
+
+var CARET = R++;
+src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$';
+var CARETLOOSE = R++;
+src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$';
+
+// A simple gt/lt/eq thing, or just "" to indicate "any version"
+var COMPARATORLOOSE = R++;
+src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$';
+var COMPARATOR = R++;
+src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$';
+
+
+// An expression to strip any whitespace between the gtlt and the thing
+// it modifies, so that `> 1.2.3` ==> `>1.2.3`
+var COMPARATORTRIM = R++;
+src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] +
+                      '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')';
+
+// this one has to use the /g flag
+re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g');
+var comparatorTrimReplace = '$1$2$3';
+
+
+// Something like `1.2.3 - 1.2.4`
+// Note that these all use the loose form, because they'll be
+// checked against either the strict or loose comparator form
+// later.
+var HYPHENRANGE = R++;
+src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' +
+                   '\\s+-\\s+' +
+                   '(' + src[XRANGEPLAIN] + ')' +
+                   '\\s*$';
+
+var HYPHENRANGELOOSE = R++;
+src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' +
+                        '\\s+-\\s+' +
+                        '(' + src[XRANGEPLAINLOOSE] + ')' +
+                        '\\s*$';
+
+// Star ranges basically just allow anything at all.
+var STAR = R++;
+src[STAR] = '(<|>)?=?\\s*\\*';
+
+// Compile to actual regexp objects.
+// All are flag-free, unless they were created above with a flag.
+for (var i = 0; i < R; i++) {
+  ;
+  if (!re[i])
+    re[i] = new RegExp(src[i]);
+}
+
+exports.parse = parse;
+function parse(version, loose) {
+  if (version instanceof SemVer)
+    return version;
+
+  if (typeof version !== 'string')
+    return null;
+
+  if (version.length > MAX_LENGTH)
+    return null;
+
+  var r = loose ? re[LOOSE] : re[FULL];
+  if (!r.test(version))
+    return null;
+
+  try {
+    return new SemVer(version, loose);
+  } catch (er) {
+    return null;
+  }
+}
+
+exports.valid = valid;
+function valid(version, loose) {
+  var v = parse(version, loose);
+  return v ? v.version : null;
+}
+
+
+exports.clean = clean;
+function clean(version, loose) {
+  var s = parse(version.trim().replace(/^[=v]+/, ''), loose);
+  return s ? s.version : null;
+}
+
+exports.SemVer = SemVer;
+
+function SemVer(version, loose) {
+  if (version instanceof SemVer) {
+    if (version.loose === loose)
+      return version;
+    else
+      version = version.version;
+  } else if (typeof version !== 'string') {
+    throw new TypeError('Invalid Version: ' + version);
+  }
+
+  if (version.length > MAX_LENGTH)
+    throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
+
+  if (!(this instanceof SemVer))
+    return new SemVer(version, loose);
+
+  ;
+  this.loose = loose;
+  var m = version.trim().match(loose ? re[LOOSE] : re[FULL]);
+
+  if (!m)
+    throw new TypeError('Invalid Version: ' + version);
+
+  this.raw = version;
+
+  // these are actually numbers
+  this.major = +m[1];
+  this.minor = +m[2];
+  this.patch = +m[3];
+
+  if (this.major > MAX_SAFE_INTEGER || this.major < 0)
+    throw new TypeError('Invalid major version')
+
+  if (this.minor > MAX_SAFE_INTEGER || this.minor < 0)
+    throw new TypeError('Invalid minor version')
+
+  if (this.patch > MAX_SAFE_INTEGER || this.patch < 0)
+    throw new TypeError('Invalid patch version')
+
+  // numberify any prerelease numeric ids
+  if (!m[4])
+    this.prerelease = [];
+  else
+    this.prerelease = m[4].split('.').map(function(id) {
+      if (/^[0-9]+$/.test(id)) {
+        var num = +id
+        if (num >= 0 && num < MAX_SAFE_INTEGER)
+          return num
+      }
+      return id;
+    });
+
+  this.build = m[5] ? m[5].split('.') : [];
+  this.format();
+}
+
+SemVer.prototype.format = function() {
+  this.version = this.major + '.' + this.minor + '.' + this.patch;
+  if (this.prerelease.length)
+    this.version += '-' + this.prerelease.join('.');
+  return this.version;
+};
+
+SemVer.prototype.inspect = function() {
+  return '<SemVer "' + this + '">';
+};
+
+SemVer.prototype.toString = function() {
+  return this.version;
+};
+
+SemVer.prototype.compare = function(other) {
+  ;
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  return this.compareMain(other) || this.comparePre(other);
+};
+
+SemVer.prototype.compareMain = function(other) {
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  return compareIdentifiers(this.major, other.major) ||
+         compareIdentifiers(this.minor, other.minor) ||
+         compareIdentifiers(this.patch, other.patch);
+};
+
+SemVer.prototype.comparePre = function(other) {
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  // NOT having a prerelease is > having one
+  if (this.prerelease.length && !other.prerelease.length)
+    return -1;
+  else if (!this.prerelease.length && other.prerelease.length)
+    return 1;
+  else if (!this.prerelease.length && !other.prerelease.length)
+    return 0;
+
+  var i = 0;
+  do {
+    var a = this.prerelease[i];
+    var b = other.prerelease[i];
+    ;
+    if (a === undefined && b === undefined)
+      return 0;
+    else if (b === undefined)
+      return 1;
+    else if (a === undefined)
+      return -1;
+    else if (a === b)
+      continue;
+    else
+      return compareIdentifiers(a, b);
+  } while (++i);
+};
+
+// preminor will bump the version up to the next minor release, and immediately
+// down to pre-release. premajor and prepatch work the same way.
+SemVer.prototype.inc = function(release, identifier) {
+  switch (release) {
+    case 'premajor':
+      this.prerelease.length = 0;
+      this.patch = 0;
+      this.minor = 0;
+      this.major++;
+      this.inc('pre', identifier);
+      break;
+    case 'preminor':
+      this.prerelease.length = 0;
+      this.patch = 0;
+      this.minor++;
+      this.inc('pre', identifier);
+      break;
+    case 'prepatch':
+      // If this is already a prerelease, it will bump to the next version
+      // drop any prereleases that might already exist, since they are not
+      // relevant at this point.
+      this.prerelease.length = 0;
+      this.inc('patch', identifier);
+      this.inc('pre', identifier);
+      break;
+    // If the input is a non-prerelease version, this acts the same as
+    // prepatch.
+    case 'prerelease':
+      if (this.prerelease.length === 0)
+        this.inc('patch', identifier);
+      this.inc('pre', identifier);
+      break;
+
+    case 'major':
+      // If this is a pre-major version, bump up to the same major version.
+      // Otherwise increment major.
+      // 1.0.0-5 bumps to 1.0.0
+      // 1.1.0 bumps to 2.0.0
+      if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0)
+        this.major++;
+      this.minor = 0;
+      this.patch = 0;
+      this.prerelease = [];
+      break;
+    case 'minor':
+      // If this is a pre-minor version, bump up to the same minor version.
+      // Otherwise increment minor.
+      // 1.2.0-5 bumps to 1.2.0
+      // 1.2.1 bumps to 1.3.0
+      if (this.patch !== 0 || this.prerelease.length === 0)
+        this.minor++;
+      this.patch = 0;
+      this.prerelease = [];
+      break;
+    case 'patch':
+      // If this is not a pre-release version, it will increment the patch.
+      // If it is a pre-release it will bump up to the same patch version.
+      // 1.2.0-5 patches to 1.2.0
+      // 1.2.0 patches to 1.2.1
+      if (this.prerelease.length === 0)
+        this.patch++;
+      this.prerelease = [];
+      break;
+    // This probably shouldn't be used publicly.
+    // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
+    case 'pre':
+      if (this.prerelease.length === 0)
+        this.prerelease = [0];
+      else {
+        var i = this.prerelease.length;
+        while (--i >= 0) {
+          if (typeof this.prerelease[i] === 'number') {
+            this.prerelease[i]++;
+            i = -2;
+          }
+        }
+        if (i === -1) // didn't increment anything
+          this.prerelease.push(0);
+      }
+      if (identifier) {
+        // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
+        // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
+        if (this.prerelease[0] === identifier) {
+          if (isNaN(this.prerelease[1]))
+            this.prerelease = [identifier, 0];
+        } else
+          this.prerelease = [identifier, 0];
+      }
+      break;
+
+    default:
+      throw new Error('invalid increment argument: ' + release);
+  }
+  this.format();
+  return this;
+};
+
+exports.inc = inc;
+function inc(version, release, loose, identifier) {
+  if (typeof(loose) === 'string') {
+    identifier = loose;
+    loose = undefined;
+  }
+
+  try {
+    return new SemVer(version, loose).inc(release, identifier).version;
+  } catch (er) {
+    return null;
+  }
+}
+
+exports.diff = diff;
+function diff(version1, version2) {
+  if (eq(version1, version2)) {
+    return null;
+  } else {
+    var v1 = parse(version1);
+    var v2 = parse(version2);
+    if (v1.prerelease.length || v2.prerelease.length) {
+      for (var key in v1) {
+        if (key === 'major' || key === 'minor' || key === 'patch') {
+          if (v1[key] !== v2[key]) {
+            return 'pre'+key;
+          }
+        }
+      }
+      return 'prerelease';
+    }
+    for (var key in v1) {
+      if (key === 'major' || key === 'minor' || key === 'patch') {
+        if (v1[key] !== v2[key]) {
+          return key;
+        }
+      }
+    }
+  }
+}
+
+exports.compareIdentifiers = compareIdentifiers;
+
+var numeric = /^[0-9]+$/;
+function compareIdentifiers(a, b) {
+  var anum = numeric.test(a);
+  var bnum = numeric.test(b);
+
+  if (anum && bnum) {
+    a = +a;
+    b = +b;
+  }
+
+  return (anum && !bnum) ? -1 :
+         (bnum && !anum) ? 1 :
+         a < b ? -1 :
+         a > b ? 1 :
+         0;
+}
+
+exports.rcompareIdentifiers = rcompareIdentifiers;
+function rcompareIdentifiers(a, b) {
+  return compareIdentifiers(b, a);
+}
+
+exports.major = major;
+function major(a, loose) {
+  return new SemVer(a, loose).major;
+}
+
+exports.minor = minor;
+function minor(a, loose) {
+  return new SemVer(a, loose).minor;
+}
+
+exports.patch = patch;
+function patch(a, loose) {
+  return new SemVer(a, loose).patch;
+}
+
+exports.compare = compare;
+function compare(a, b, loose) {
+  return new SemVer(a, loose).compare(b);
+}
+
+exports.compareLoose = compareLoose;
+function compareLoose(a, b) {
+  return compare(a, b, true);
+}
+
+exports.rcompare = rcompare;
+function rcompare(a, b, loose) {
+  return compare(b, a, loose);
+}
+
+exports.sort = sort;
+function sort(list, loose) {
+  return list.sort(function(a, b) {
+    return exports.compare(a, b, loose);
+  });
+}
+
+exports.rsort = rsort;
+function rsort(list, loose) {
+  return list.sort(function(a, b) {
+    return exports.rcompare(a, b, loose);
+  });
+}
+
+exports.gt = gt;
+function gt(a, b, loose) {
+  return compare(a, b, loose) > 0;
+}
+
+exports.lt = lt;
+function lt(a, b, loose) {
+  return compare(a, b, loose) < 0;
+}
+
+exports.eq = eq;
+function eq(a, b, loose) {
+  return compare(a, b, loose) === 0;
+}
+
+exports.neq = neq;
+function neq(a, b, loose) {
+  return compare(a, b, loose) !== 0;
+}
+
+exports.gte = gte;
+function gte(a, b, loose) {
+  return compare(a, b, loose) >= 0;
+}
+
+exports.lte = lte;
+function lte(a, b, loose) {
+  return compare(a, b, loose) <= 0;
+}
+
+exports.cmp = cmp;
+function cmp(a, op, b, loose) {
+  var ret;
+  switch (op) {
+    case '===':
+      if (typeof a === 'object') a = a.version;
+      if (typeof b === 'object') b = b.version;
+      ret = a === b;
+      break;
+    case '!==':
+      if (typeof a === 'object') a = a.version;
+      if (typeof b === 'object') b = b.version;
+      ret = a !== b;
+      break;
+    case '': case '=': case '==': ret = eq(a, b, loose); break;
+    case '!=': ret = neq(a, b, loose); break;
+    case '>': ret = gt(a, b, loose); break;
+    case '>=': ret = gte(a, b, loose); break;
+    case '<': ret = lt(a, b, loose); break;
+    case '<=': ret = lte(a, b, loose); break;
+    default: throw new TypeError('Invalid operator: ' + op);
+  }
+  return ret;
+}
+
+exports.Comparator = Comparator;
+function Comparator(comp, loose) {
+  if (comp instanceof Comparator) {
+    if (comp.loose === loose)
+      return comp;
+    else
+      comp = comp.value;
+  }
+
+  if (!(this instanceof Comparator))
+    return new Comparator(comp, loose);
+
+  ;
+  this.loose = loose;
+  this.parse(comp);
+
+  if (this.semver === ANY)
+    this.value = '';
+  else
+    this.value = this.operator + this.semver.version;
+
+  ;
+}
+
+var ANY = {};
+Comparator.prototype.parse = function(comp) {
+  var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
+  var m = comp.match(r);
+
+  if (!m)
+    throw new TypeError('Invalid comparator: ' + comp);
+
+  this.operator = m[1];
+  if (this.operator === '=')
+    this.operator = '';
+
+  // if it literally is just '>' or '' then allow anything.
+  if (!m[2])
+    this.semver = ANY;
+  else
+    this.semver = new SemVer(m[2], this.loose);
+};
+
+Comparator.prototype.inspect = function() {
+  return '<SemVer Comparator "' + this + '">';
+};
+
+Comparator.prototype.toString = function() {
+  return this.value;
+};
+
+Comparator.prototype.test = function(version) {
+  ;
+
+  if (this.semver === ANY)
+    return true;
+
+  if (typeof version === 'string')
+    version = new SemVer(version, this.loose);
+
+  return cmp(version, this.operator, this.semver, this.loose);
+};
+
+
+exports.Range = Range;
+function Range(range, loose) {
+  if ((range instanceof Range) && range.loose === loose)
+    return range;
+
+  if (!(this instanceof Range))
+    return new Range(range, loose);
+
+  this.loose = loose;
+
+  // First, split based on boolean or ||
+  this.raw = range;
+  this.set = range.split(/\s*\|\|\s*/).map(function(range) {
+    return this.parseRange(range.trim());
+  }, this).filter(function(c) {
+    // throw out any that are not relevant for whatever reason
+    return c.length;
+  });
+
+  if (!this.set.length) {
+    throw new TypeError('Invalid SemVer Range: ' + range);
+  }
+
+  this.format();
+}
+
+Range.prototype.inspect = function() {
+  return '<SemVer Range "' + this.range + '">';
+};
+
+Range.prototype.format = function() {
+  this.range = this.set.map(function(comps) {
+    return comps.join(' ').trim();
+  }).join('||').trim();
+  return this.range;
+};
+
+Range.prototype.toString = function() {
+  return this.range;
+};
+
+Range.prototype.parseRange = function(range) {
+  var loose = this.loose;
+  range = range.trim();
+  ;
+  // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
+  var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE];
+  range = range.replace(hr, hyphenReplace);
+  ;
+  // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
+  range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace);
+  ;
+
+  // `~ 1.2.3` => `~1.2.3`
+  range = range.replace(re[TILDETRIM], tildeTrimReplace);
+
+  // `^ 1.2.3` => `^1.2.3`
+  range = range.replace(re[CARETTRIM], caretTrimReplace);
+
+  // normalize spaces
+  range = range.split(/\s+/).join(' ');
+
+  // At this point, the range is completely trimmed and
+  // ready to be split into comparators.
+
+  var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
+  var set = range.split(' ').map(function(comp) {
+    return parseComparator(comp, loose);
+  }).join(' ').split(/\s+/);
+  if (this.loose) {
+    // in loose mode, throw out any that are not valid comparators
+    set = set.filter(function(comp) {
+      return !!comp.match(compRe);
+    });
+  }
+  set = set.map(function(comp) {
+    return new Comparator(comp, loose);
+  });
+
+  return set;
+};
+
+// Mostly just for testing and legacy API reasons
+exports.toComparators = toComparators;
+function toComparators(range, loose) {
+  return new Range(range, loose).set.map(function(comp) {
+    return comp.map(function(c) {
+      return c.value;
+    }).join(' ').trim().split(' ');
+  });
+}
+
+// comprised of xranges, tildes, stars, and gtlt's at this point.
+// already replaced the hyphen ranges
+// turn into a set of JUST comparators.
+function parseComparator(comp, loose) {
+  ;
+  comp = replaceCarets(comp, loose);
+  ;
+  comp = replaceTildes(comp, loose);
+  ;
+  comp = replaceXRanges(comp, loose);
+  ;
+  comp = replaceStars(comp, loose);
+  ;
+  return comp;
+}
+
+function isX(id) {
+  return !id || id.toLowerCase() === 'x' || id === '*';
+}
+
+// ~, ~> --> * (any, kinda silly)
+// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
+// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
+// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
+// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
+// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
+function replaceTildes(comp, loose) {
+  return comp.trim().split(/\s+/).map(function(comp) {
+    return replaceTilde(comp, loose);
+  }).join(' ');
+}
+
+function replaceTilde(comp, loose) {
+  var r = loose ? re[TILDELOOSE] : re[TILDE];
+  return comp.replace(r, function(_, M, m, p, pr) {
+    ;
+    var ret;
+
+    if (isX(M))
+      ret = '';
+    else if (isX(m))
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    else if (isX(p))
+      // ~1.2 == >=1.2.0- <1.3.0-
+      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+    else if (pr) {
+      ;
+      if (pr.charAt(0) !== '-')
+        pr = '-' + pr;
+      ret = '>=' + M + '.' + m + '.' + p + pr +
+            ' <' + M + '.' + (+m + 1) + '.0';
+    } else
+      // ~1.2.3 == >=1.2.3 <1.3.0
+      ret = '>=' + M + '.' + m + '.' + p +
+            ' <' + M + '.' + (+m + 1) + '.0';
+
+    ;
+    return ret;
+  });
+}
+
+// ^ --> * (any, kinda silly)
+// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
+// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
+// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
+// ^1.2.3 --> >=1.2.3 <2.0.0
+// ^1.2.0 --> >=1.2.0 <2.0.0
+function replaceCarets(comp, loose) {
+  return comp.trim().split(/\s+/).map(function(comp) {
+    return replaceCaret(comp, loose);
+  }).join(' ');
+}
+
+function replaceCaret(comp, loose) {
+  ;
+  var r = loose ? re[CARETLOOSE] : re[CARET];
+  return comp.replace(r, function(_, M, m, p, pr) {
+    ;
+    var ret;
+
+    if (isX(M))
+      ret = '';
+    else if (isX(m))
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    else if (isX(p)) {
+      if (M === '0')
+        ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+      else
+        ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0';
+    } else if (pr) {
+      ;
+      if (pr.charAt(0) !== '-')
+        pr = '-' + pr;
+      if (M === '0') {
+        if (m === '0')
+          ret = '>=' + M + '.' + m + '.' + p + pr +
+                ' <' + M + '.' + m + '.' + (+p + 1);
+        else
+          ret = '>=' + M + '.' + m + '.' + p + pr +
+                ' <' + M + '.' + (+m + 1) + '.0';
+      } else
+        ret = '>=' + M + '.' + m + '.' + p + pr +
+              ' <' + (+M + 1) + '.0.0';
+    } else {
+      ;
+      if (M === '0') {
+        if (m === '0')
+          ret = '>=' + M + '.' + m + '.' + p +
+                ' <' + M + '.' + m + '.' + (+p + 1);
+        else
+          ret = '>=' + M + '.' + m + '.' + p +
+                ' <' + M + '.' + (+m + 1) + '.0';
+      } else
+        ret = '>=' + M + '.' + m + '.' + p +
+              ' <' + (+M + 1) + '.0.0';
+    }
+
+    ;
+    return ret;
+  });
+}
+
+function replaceXRanges(comp, loose) {
+  ;
+  return comp.split(/\s+/).map(function(comp) {
+    return replaceXRange(comp, loose);
+  }).join(' ');
+}
+
+function replaceXRange(comp, loose) {
+  comp = comp.trim();
+  var r = loose ? re[XRANGELOOSE] : re[XRANGE];
+  return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
+    ;
+    var xM = isX(M);
+    var xm = xM || isX(m);
+    var xp = xm || isX(p);
+    var anyX = xp;
+
+    if (gtlt === '=' && anyX)
+      gtlt = '';
+
+    if (xM) {
+      if (gtlt === '>' || gtlt === '<') {
+        // nothing is allowed
+        ret = '<0.0.0';
+      } else {
+        // nothing is forbidden
+        ret = '*';
+      }
+    } else if (gtlt && anyX) {
+      // replace X with 0
+      if (xm)
+        m = 0;
+      if (xp)
+        p = 0;
+
+      if (gtlt === '>') {
+        // >1 => >=2.0.0
+        // >1.2 => >=1.3.0
+        // >1.2.3 => >= 1.2.4
+        gtlt = '>=';
+        if (xm) {
+          M = +M + 1;
+          m = 0;
+          p = 0;
+        } else if (xp) {
+          m = +m + 1;
+          p = 0;
+        }
+      } else if (gtlt === '<=') {
+        // <=0.7.x is actually <0.8.0, since any 0.7.x should
+        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
+        gtlt = '<'
+        if (xm)
+          M = +M + 1
+        else
+          m = +m + 1
+      }
+
+      ret = gtlt + M + '.' + m + '.' + p;
+    } else if (xm) {
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    } else if (xp) {
+      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+    }
+
+    ;
+
+    return ret;
+  });
+}
+
+// Because * is AND-ed with everything else in the comparator,
+// and '' means "any version", just remove the *s entirely.
+function replaceStars(comp, loose) {
+  ;
+  // Looseness is ignored here.  star is always as loose as it gets!
+  return comp.trim().replace(re[STAR], '');
+}
+
+// This function is passed to string.replace(re[HYPHENRANGE])
+// M, m, patch, prerelease, build
+// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
+// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
+// 1.2 - 3.4 => >=1.2.0 <3.5.0
+function hyphenReplace($0,
+                       from, fM, fm, fp, fpr, fb,
+                       to, tM, tm, tp, tpr, tb) {
+
+  if (isX(fM))
+    from = '';
+  else if (isX(fm))
+    from = '>=' + fM + '.0.0';
+  else if (isX(fp))
+    from = '>=' + fM + '.' + fm + '.0';
+  else
+    from = '>=' + from;
+
+  if (isX(tM))
+    to = '';
+  else if (isX(tm))
+    to = '<' + (+tM + 1) + '.0.0';
+  else if (isX(tp))
+    to = '<' + tM + '.' + (+tm + 1) + '.0';
+  else if (tpr)
+    to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr;
+  else
+    to = '<=' + to;
+
+  return (from + ' ' + to).trim();
+}
+
+
+// if ANY of the sets match ALL of its comparators, then pass
+Range.prototype.test = function(version) {
+  if (!version)
+    return false;
+
+  if (typeof version === 'string')
+    version = new SemVer(version, this.loose);
+
+  for (var i = 0; i < this.set.length; i++) {
+    if (testSet(this.set[i], version))
+      return true;
+  }
+  return false;
+};
+
+function testSet(set, version) {
+  for (var i = 0; i < set.length; i++) {
+    if (!set[i].test(version))
+      return false;
+  }
+
+  if (version.prerelease.length) {
+    // Find the set of versions that are allowed to have prereleases
+    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
+    // That should allow `1.2.3-pr.2` to pass.
+    // However, `1.2.4-alpha.notready` should NOT be allowed,
+    // even though it's within the range set by the comparators.
+    for (var i = 0; i < set.length; i++) {
+      ;
+      if (set[i].semver === ANY)
+        continue;
+
+      if (set[i].semver.prerelease.length > 0) {
+        var allowed = set[i].semver;
+        if (allowed.major === version.major &&
+            allowed.minor === version.minor &&
+            allowed.patch === version.patch)
+          return true;
+      }
+    }
+
+    // Version has a -pre, but it's not one of the ones we like.
+    return false;
+  }
+
+  return true;
+}
+
+exports.satisfies = satisfies;
+function satisfies(version, range, loose) {
+  try {
+    range = new Range(range, loose);
+  } catch (er) {
+    return false;
+  }
+  return range.test(version);
+}
+
+exports.maxSatisfying = maxSatisfying;
+function maxSatisfying(versions, range, loose) {
+  return versions.filter(function(version) {
+    return satisfies(version, range, loose);
+  }).sort(function(a, b) {
+    return rcompare(a, b, loose);
+  })[0] || null;
+}
+
+exports.validRange = validRange;
+function validRange(range, loose) {
+  try {
+    // Return '*' instead of '' so that truthiness works.
+    // This will throw if it's invalid anyway
+    return new Range(range, loose).range || '*';
+  } catch (er) {
+    return null;
+  }
+}
+
+// Determine if version is less than all the versions possible in the range
+exports.ltr = ltr;
+function ltr(version, range, loose) {
+  return outside(version, range, '<', loose);
+}
+
+// Determine if version is greater than all the versions possible in the range.
+exports.gtr = gtr;
+function gtr(version, range, loose) {
+  return outside(version, range, '>', loose);
+}
+
+exports.outside = outside;
+function outside(version, range, hilo, loose) {
+  version = new SemVer(version, loose);
+  range = new Range(range, loose);
+
+  var gtfn, ltefn, ltfn, comp, ecomp;
+  switch (hilo) {
+    case '>':
+      gtfn = gt;
+      ltefn = lte;
+      ltfn = lt;
+      comp = '>';
+      ecomp = '>=';
+      break;
+    case '<':
+      gtfn = lt;
+      ltefn = gte;
+      ltfn = gt;
+      comp = '<';
+      ecomp = '<=';
+      break;
+    default:
+      throw new TypeError('Must provide a hilo val of "<" or ">"');
+  }
+
+  // If it satisifes the range it is not outside
+  if (satisfies(version, range, loose)) {
+    return false;
+  }
+
+  // From now on, variable terms are as if we're in "gtr" mode.
+  // but note that everything is flipped for the "ltr" function.
+
+  for (var i = 0; i < range.set.length; ++i) {
+    var comparators = range.set[i];
+
+    var high = null;
+    var low = null;
+
+    comparators.forEach(function(comparator) {
+      if (comparator.semver === ANY) {
+        comparator = new Comparator('>=0.0.0')
+      }
+      high = high || comparator;
+      low = low || comparator;
+      if (gtfn(comparator.semver, high.semver, loose)) {
+        high = comparator;
+      } else if (ltfn(comparator.semver, low.semver, loose)) {
+        low = comparator;
+      }
+    });
+
+    // If the edge version comparator has a operator then our version
+    // isn't outside it
+    if (high.operator === comp || high.operator === ecomp) {
+      return false;
+    }
+
+    // If the lowest version comparator has an operator and our version
+    // is less than it then it isn't higher than the range
+    if ((!low.operator || low.operator === comp) &&
+        ltefn(version, low.semver)) {
+      return false;
+    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
+      return false;
+    }
+  }
+  return true;
+}
+
+// Use the define() function if we're in AMD land
+if (typeof define === 'function' && define.amd)
+  define(exports);
+
+})(
+  typeof exports === 'object' ? exports :
+  typeof define === 'function' && define.amd ? {} :
+  semver = {}
+);
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz
new file mode 100644 (file)
index 0000000..d67009d
Binary files /dev/null and b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.browser.js.gz differ
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.js b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.js
new file mode 100644 (file)
index 0000000..cafcc00
--- /dev/null
@@ -0,0 +1,1205 @@
+// export the class if we are in a Node-like system.
+if (typeof module === 'object' && module.exports === exports)
+  exports = module.exports = SemVer;
+
+// The debug function is excluded entirely from the minified version.
+/* nomin */ var debug;
+/* nomin */ if (typeof process === 'object' &&
+    /* nomin */ process.env &&
+    /* nomin */ process.env.NODE_DEBUG &&
+    /* nomin */ /\bsemver\b/i.test(process.env.NODE_DEBUG))
+  /* nomin */ debug = function() {
+    /* nomin */ var args = Array.prototype.slice.call(arguments, 0);
+    /* nomin */ args.unshift('SEMVER');
+    /* nomin */ console.log.apply(console, args);
+    /* nomin */ };
+/* nomin */ else
+  /* nomin */ debug = function() {};
+
+// Note: this is the semver.org version of the spec that it implements
+// Not necessarily the package version of this code.
+exports.SEMVER_SPEC_VERSION = '2.0.0';
+
+var MAX_LENGTH = 256;
+var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
+
+// The actual regexps go on exports.re
+var re = exports.re = [];
+var src = exports.src = [];
+var R = 0;
+
+// The following Regular Expressions can be used for tokenizing,
+// validating, and parsing SemVer version strings.
+
+// ## Numeric Identifier
+// A single `0`, or a non-zero digit followed by zero or more digits.
+
+var NUMERICIDENTIFIER = R++;
+src[NUMERICIDENTIFIER] = '0|[1-9]\\d*';
+var NUMERICIDENTIFIERLOOSE = R++;
+src[NUMERICIDENTIFIERLOOSE] = '[0-9]+';
+
+
+// ## Non-numeric Identifier
+// Zero or more digits, followed by a letter or hyphen, and then zero or
+// more letters, digits, or hyphens.
+
+var NONNUMERICIDENTIFIER = R++;
+src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*';
+
+
+// ## Main Version
+// Three dot-separated numeric identifiers.
+
+var MAINVERSION = R++;
+src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' +
+                   '(' + src[NUMERICIDENTIFIER] + ')\\.' +
+                   '(' + src[NUMERICIDENTIFIER] + ')';
+
+var MAINVERSIONLOOSE = R++;
+src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
+                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' +
+                        '(' + src[NUMERICIDENTIFIERLOOSE] + ')';
+
+// ## Pre-release Version Identifier
+// A numeric identifier, or a non-numeric identifier.
+
+var PRERELEASEIDENTIFIER = R++;
+src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] +
+                            '|' + src[NONNUMERICIDENTIFIER] + ')';
+
+var PRERELEASEIDENTIFIERLOOSE = R++;
+src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] +
+                                 '|' + src[NONNUMERICIDENTIFIER] + ')';
+
+
+// ## Pre-release Version
+// Hyphen, followed by one or more dot-separated pre-release version
+// identifiers.
+
+var PRERELEASE = R++;
+src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] +
+                  '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))';
+
+var PRERELEASELOOSE = R++;
+src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] +
+                       '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))';
+
+// ## Build Metadata Identifier
+// Any combination of digits, letters, or hyphens.
+
+var BUILDIDENTIFIER = R++;
+src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+';
+
+// ## Build Metadata
+// Plus sign, followed by one or more period-separated build metadata
+// identifiers.
+
+var BUILD = R++;
+src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] +
+             '(?:\\.' + src[BUILDIDENTIFIER] + ')*))';
+
+
+// ## Full Version String
+// A main version, followed optionally by a pre-release version and
+// build metadata.
+
+// Note that the only major, minor, patch, and pre-release sections of
+// the version string are capturing groups.  The build metadata is not a
+// capturing group, because it should not ever be used in version
+// comparison.
+
+var FULL = R++;
+var FULLPLAIN = 'v?' + src[MAINVERSION] +
+                src[PRERELEASE] + '?' +
+                src[BUILD] + '?';
+
+src[FULL] = '^' + FULLPLAIN + '$';
+
+// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
+// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
+// common in the npm registry.
+var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] +
+                 src[PRERELEASELOOSE] + '?' +
+                 src[BUILD] + '?';
+
+var LOOSE = R++;
+src[LOOSE] = '^' + LOOSEPLAIN + '$';
+
+var GTLT = R++;
+src[GTLT] = '((?:<|>)?=?)';
+
+// Something like "2.*" or "1.2.x".
+// Note that "x.x" is a valid xRange identifer, meaning "any version"
+// Only the first item is strictly required.
+var XRANGEIDENTIFIERLOOSE = R++;
+src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*';
+var XRANGEIDENTIFIER = R++;
+src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*';
+
+var XRANGEPLAIN = R++;
+src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' +
+                   '(?:' + src[PRERELEASE] + ')?' +
+                   src[BUILD] + '?' +
+                   ')?)?';
+
+var XRANGEPLAINLOOSE = R++;
+src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' +
+                        '(?:' + src[PRERELEASELOOSE] + ')?' +
+                        src[BUILD] + '?' +
+                        ')?)?';
+
+var XRANGE = R++;
+src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$';
+var XRANGELOOSE = R++;
+src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$';
+
+// Tilde ranges.
+// Meaning is "reasonably at or greater than"
+var LONETILDE = R++;
+src[LONETILDE] = '(?:~>?)';
+
+var TILDETRIM = R++;
+src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+';
+re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g');
+var tildeTrimReplace = '$1~';
+
+var TILDE = R++;
+src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$';
+var TILDELOOSE = R++;
+src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$';
+
+// Caret ranges.
+// Meaning is "at least and backwards compatible with"
+var LONECARET = R++;
+src[LONECARET] = '(?:\\^)';
+
+var CARETTRIM = R++;
+src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+';
+re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g');
+var caretTrimReplace = '$1^';
+
+var CARET = R++;
+src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$';
+var CARETLOOSE = R++;
+src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$';
+
+// A simple gt/lt/eq thing, or just "" to indicate "any version"
+var COMPARATORLOOSE = R++;
+src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$';
+var COMPARATOR = R++;
+src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$';
+
+
+// An expression to strip any whitespace between the gtlt and the thing
+// it modifies, so that `> 1.2.3` ==> `>1.2.3`
+var COMPARATORTRIM = R++;
+src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] +
+                      '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')';
+
+// this one has to use the /g flag
+re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g');
+var comparatorTrimReplace = '$1$2$3';
+
+
+// Something like `1.2.3 - 1.2.4`
+// Note that these all use the loose form, because they'll be
+// checked against either the strict or loose comparator form
+// later.
+var HYPHENRANGE = R++;
+src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' +
+                   '\\s+-\\s+' +
+                   '(' + src[XRANGEPLAIN] + ')' +
+                   '\\s*$';
+
+var HYPHENRANGELOOSE = R++;
+src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' +
+                        '\\s+-\\s+' +
+                        '(' + src[XRANGEPLAINLOOSE] + ')' +
+                        '\\s*$';
+
+// Star ranges basically just allow anything at all.
+var STAR = R++;
+src[STAR] = '(<|>)?=?\\s*\\*';
+
+// Compile to actual regexp objects.
+// All are flag-free, unless they were created above with a flag.
+for (var i = 0; i < R; i++) {
+  debug(i, src[i]);
+  if (!re[i])
+    re[i] = new RegExp(src[i]);
+}
+
+exports.parse = parse;
+function parse(version, loose) {
+  if (version instanceof SemVer)
+    return version;
+
+  if (typeof version !== 'string')
+    return null;
+
+  if (version.length > MAX_LENGTH)
+    return null;
+
+  var r = loose ? re[LOOSE] : re[FULL];
+  if (!r.test(version))
+    return null;
+
+  try {
+    return new SemVer(version, loose);
+  } catch (er) {
+    return null;
+  }
+}
+
+exports.valid = valid;
+function valid(version, loose) {
+  var v = parse(version, loose);
+  return v ? v.version : null;
+}
+
+
+exports.clean = clean;
+function clean(version, loose) {
+  var s = parse(version.trim().replace(/^[=v]+/, ''), loose);
+  return s ? s.version : null;
+}
+
+exports.SemVer = SemVer;
+
+function SemVer(version, loose) {
+  if (version instanceof SemVer) {
+    if (version.loose === loose)
+      return version;
+    else
+      version = version.version;
+  } else if (typeof version !== 'string') {
+    throw new TypeError('Invalid Version: ' + version);
+  }
+
+  if (version.length > MAX_LENGTH)
+    throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters')
+
+  if (!(this instanceof SemVer))
+    return new SemVer(version, loose);
+
+  debug('SemVer', version, loose);
+  this.loose = loose;
+  var m = version.trim().match(loose ? re[LOOSE] : re[FULL]);
+
+  if (!m)
+    throw new TypeError('Invalid Version: ' + version);
+
+  this.raw = version;
+
+  // these are actually numbers
+  this.major = +m[1];
+  this.minor = +m[2];
+  this.patch = +m[3];
+
+  if (this.major > MAX_SAFE_INTEGER || this.major < 0)
+    throw new TypeError('Invalid major version')
+
+  if (this.minor > MAX_SAFE_INTEGER || this.minor < 0)
+    throw new TypeError('Invalid minor version')
+
+  if (this.patch > MAX_SAFE_INTEGER || this.patch < 0)
+    throw new TypeError('Invalid patch version')
+
+  // numberify any prerelease numeric ids
+  if (!m[4])
+    this.prerelease = [];
+  else
+    this.prerelease = m[4].split('.').map(function(id) {
+      if (/^[0-9]+$/.test(id)) {
+        var num = +id
+        if (num >= 0 && num < MAX_SAFE_INTEGER)
+          return num
+      }
+      return id;
+    });
+
+  this.build = m[5] ? m[5].split('.') : [];
+  this.format();
+}
+
+SemVer.prototype.format = function() {
+  this.version = this.major + '.' + this.minor + '.' + this.patch;
+  if (this.prerelease.length)
+    this.version += '-' + this.prerelease.join('.');
+  return this.version;
+};
+
+SemVer.prototype.inspect = function() {
+  return '<SemVer "' + this + '">';
+};
+
+SemVer.prototype.toString = function() {
+  return this.version;
+};
+
+SemVer.prototype.compare = function(other) {
+  debug('SemVer.compare', this.version, this.loose, other);
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  return this.compareMain(other) || this.comparePre(other);
+};
+
+SemVer.prototype.compareMain = function(other) {
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  return compareIdentifiers(this.major, other.major) ||
+         compareIdentifiers(this.minor, other.minor) ||
+         compareIdentifiers(this.patch, other.patch);
+};
+
+SemVer.prototype.comparePre = function(other) {
+  if (!(other instanceof SemVer))
+    other = new SemVer(other, this.loose);
+
+  // NOT having a prerelease is > having one
+  if (this.prerelease.length && !other.prerelease.length)
+    return -1;
+  else if (!this.prerelease.length && other.prerelease.length)
+    return 1;
+  else if (!this.prerelease.length && !other.prerelease.length)
+    return 0;
+
+  var i = 0;
+  do {
+    var a = this.prerelease[i];
+    var b = other.prerelease[i];
+    debug('prerelease compare', i, a, b);
+    if (a === undefined && b === undefined)
+      return 0;
+    else if (b === undefined)
+      return 1;
+    else if (a === undefined)
+      return -1;
+    else if (a === b)
+      continue;
+    else
+      return compareIdentifiers(a, b);
+  } while (++i);
+};
+
+// preminor will bump the version up to the next minor release, and immediately
+// down to pre-release. premajor and prepatch work the same way.
+SemVer.prototype.inc = function(release, identifier) {
+  switch (release) {
+    case 'premajor':
+      this.prerelease.length = 0;
+      this.patch = 0;
+      this.minor = 0;
+      this.major++;
+      this.inc('pre', identifier);
+      break;
+    case 'preminor':
+      this.prerelease.length = 0;
+      this.patch = 0;
+      this.minor++;
+      this.inc('pre', identifier);
+      break;
+    case 'prepatch':
+      // If this is already a prerelease, it will bump to the next version
+      // drop any prereleases that might already exist, since they are not
+      // relevant at this point.
+      this.prerelease.length = 0;
+      this.inc('patch', identifier);
+      this.inc('pre', identifier);
+      break;
+    // If the input is a non-prerelease version, this acts the same as
+    // prepatch.
+    case 'prerelease':
+      if (this.prerelease.length === 0)
+        this.inc('patch', identifier);
+      this.inc('pre', identifier);
+      break;
+
+    case 'major':
+      // If this is a pre-major version, bump up to the same major version.
+      // Otherwise increment major.
+      // 1.0.0-5 bumps to 1.0.0
+      // 1.1.0 bumps to 2.0.0
+      if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0)
+        this.major++;
+      this.minor = 0;
+      this.patch = 0;
+      this.prerelease = [];
+      break;
+    case 'minor':
+      // If this is a pre-minor version, bump up to the same minor version.
+      // Otherwise increment minor.
+      // 1.2.0-5 bumps to 1.2.0
+      // 1.2.1 bumps to 1.3.0
+      if (this.patch !== 0 || this.prerelease.length === 0)
+        this.minor++;
+      this.patch = 0;
+      this.prerelease = [];
+      break;
+    case 'patch':
+      // If this is not a pre-release version, it will increment the patch.
+      // If it is a pre-release it will bump up to the same patch version.
+      // 1.2.0-5 patches to 1.2.0
+      // 1.2.0 patches to 1.2.1
+      if (this.prerelease.length === 0)
+        this.patch++;
+      this.prerelease = [];
+      break;
+    // This probably shouldn't be used publicly.
+    // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
+    case 'pre':
+      if (this.prerelease.length === 0)
+        this.prerelease = [0];
+      else {
+        var i = this.prerelease.length;
+        while (--i >= 0) {
+          if (typeof this.prerelease[i] === 'number') {
+            this.prerelease[i]++;
+            i = -2;
+          }
+        }
+        if (i === -1) // didn't increment anything
+          this.prerelease.push(0);
+      }
+      if (identifier) {
+        // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
+        // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
+        if (this.prerelease[0] === identifier) {
+          if (isNaN(this.prerelease[1]))
+            this.prerelease = [identifier, 0];
+        } else
+          this.prerelease = [identifier, 0];
+      }
+      break;
+
+    default:
+      throw new Error('invalid increment argument: ' + release);
+  }
+  this.format();
+  return this;
+};
+
+exports.inc = inc;
+function inc(version, release, loose, identifier) {
+  if (typeof(loose) === 'string') {
+    identifier = loose;
+    loose = undefined;
+  }
+
+  try {
+    return new SemVer(version, loose).inc(release, identifier).version;
+  } catch (er) {
+    return null;
+  }
+}
+
+exports.diff = diff;
+function diff(version1, version2) {
+  if (eq(version1, version2)) {
+    return null;
+  } else {
+    var v1 = parse(version1);
+    var v2 = parse(version2);
+    if (v1.prerelease.length || v2.prerelease.length) {
+      for (var key in v1) {
+        if (key === 'major' || key === 'minor' || key === 'patch') {
+          if (v1[key] !== v2[key]) {
+            return 'pre'+key;
+          }
+        }
+      }
+      return 'prerelease';
+    }
+    for (var key in v1) {
+      if (key === 'major' || key === 'minor' || key === 'patch') {
+        if (v1[key] !== v2[key]) {
+          return key;
+        }
+      }
+    }
+  }
+}
+
+exports.compareIdentifiers = compareIdentifiers;
+
+var numeric = /^[0-9]+$/;
+function compareIdentifiers(a, b) {
+  var anum = numeric.test(a);
+  var bnum = numeric.test(b);
+
+  if (anum && bnum) {
+    a = +a;
+    b = +b;
+  }
+
+  return (anum && !bnum) ? -1 :
+         (bnum && !anum) ? 1 :
+         a < b ? -1 :
+         a > b ? 1 :
+         0;
+}
+
+exports.rcompareIdentifiers = rcompareIdentifiers;
+function rcompareIdentifiers(a, b) {
+  return compareIdentifiers(b, a);
+}
+
+exports.major = major;
+function major(a, loose) {
+  return new SemVer(a, loose).major;
+}
+
+exports.minor = minor;
+function minor(a, loose) {
+  return new SemVer(a, loose).minor;
+}
+
+exports.patch = patch;
+function patch(a, loose) {
+  return new SemVer(a, loose).patch;
+}
+
+exports.compare = compare;
+function compare(a, b, loose) {
+  return new SemVer(a, loose).compare(b);
+}
+
+exports.compareLoose = compareLoose;
+function compareLoose(a, b) {
+  return compare(a, b, true);
+}
+
+exports.rcompare = rcompare;
+function rcompare(a, b, loose) {
+  return compare(b, a, loose);
+}
+
+exports.sort = sort;
+function sort(list, loose) {
+  return list.sort(function(a, b) {
+    return exports.compare(a, b, loose);
+  });
+}
+
+exports.rsort = rsort;
+function rsort(list, loose) {
+  return list.sort(function(a, b) {
+    return exports.rcompare(a, b, loose);
+  });
+}
+
+exports.gt = gt;
+function gt(a, b, loose) {
+  return compare(a, b, loose) > 0;
+}
+
+exports.lt = lt;
+function lt(a, b, loose) {
+  return compare(a, b, loose) < 0;
+}
+
+exports.eq = eq;
+function eq(a, b, loose) {
+  return compare(a, b, loose) === 0;
+}
+
+exports.neq = neq;
+function neq(a, b, loose) {
+  return compare(a, b, loose) !== 0;
+}
+
+exports.gte = gte;
+function gte(a, b, loose) {
+  return compare(a, b, loose) >= 0;
+}
+
+exports.lte = lte;
+function lte(a, b, loose) {
+  return compare(a, b, loose) <= 0;
+}
+
+exports.cmp = cmp;
+function cmp(a, op, b, loose) {
+  var ret;
+  switch (op) {
+    case '===':
+      if (typeof a === 'object') a = a.version;
+      if (typeof b === 'object') b = b.version;
+      ret = a === b;
+      break;
+    case '!==':
+      if (typeof a === 'object') a = a.version;
+      if (typeof b === 'object') b = b.version;
+      ret = a !== b;
+      break;
+    case '': case '=': case '==': ret = eq(a, b, loose); break;
+    case '!=': ret = neq(a, b, loose); break;
+    case '>': ret = gt(a, b, loose); break;
+    case '>=': ret = gte(a, b, loose); break;
+    case '<': ret = lt(a, b, loose); break;
+    case '<=': ret = lte(a, b, loose); break;
+    default: throw new TypeError('Invalid operator: ' + op);
+  }
+  return ret;
+}
+
+exports.Comparator = Comparator;
+function Comparator(comp, loose) {
+  if (comp instanceof Comparator) {
+    if (comp.loose === loose)
+      return comp;
+    else
+      comp = comp.value;
+  }
+
+  if (!(this instanceof Comparator))
+    return new Comparator(comp, loose);
+
+  debug('comparator', comp, loose);
+  this.loose = loose;
+  this.parse(comp);
+
+  if (this.semver === ANY)
+    this.value = '';
+  else
+    this.value = this.operator + this.semver.version;
+
+  debug('comp', this);
+}
+
+var ANY = {};
+Comparator.prototype.parse = function(comp) {
+  var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
+  var m = comp.match(r);
+
+  if (!m)
+    throw new TypeError('Invalid comparator: ' + comp);
+
+  this.operator = m[1];
+  if (this.operator === '=')
+    this.operator = '';
+
+  // if it literally is just '>' or '' then allow anything.
+  if (!m[2])
+    this.semver = ANY;
+  else
+    this.semver = new SemVer(m[2], this.loose);
+};
+
+Comparator.prototype.inspect = function() {
+  return '<SemVer Comparator "' + this + '">';
+};
+
+Comparator.prototype.toString = function() {
+  return this.value;
+};
+
+Comparator.prototype.test = function(version) {
+  debug('Comparator.test', version, this.loose);
+
+  if (this.semver === ANY)
+    return true;
+
+  if (typeof version === 'string')
+    version = new SemVer(version, this.loose);
+
+  return cmp(version, this.operator, this.semver, this.loose);
+};
+
+
+exports.Range = Range;
+function Range(range, loose) {
+  if ((range instanceof Range) && range.loose === loose)
+    return range;
+
+  if (!(this instanceof Range))
+    return new Range(range, loose);
+
+  this.loose = loose;
+
+  // First, split based on boolean or ||
+  this.raw = range;
+  this.set = range.split(/\s*\|\|\s*/).map(function(range) {
+    return this.parseRange(range.trim());
+  }, this).filter(function(c) {
+    // throw out any that are not relevant for whatever reason
+    return c.length;
+  });
+
+  if (!this.set.length) {
+    throw new TypeError('Invalid SemVer Range: ' + range);
+  }
+
+  this.format();
+}
+
+Range.prototype.inspect = function() {
+  return '<SemVer Range "' + this.range + '">';
+};
+
+Range.prototype.format = function() {
+  this.range = this.set.map(function(comps) {
+    return comps.join(' ').trim();
+  }).join('||').trim();
+  return this.range;
+};
+
+Range.prototype.toString = function() {
+  return this.range;
+};
+
+Range.prototype.parseRange = function(range) {
+  var loose = this.loose;
+  range = range.trim();
+  debug('range', range, loose);
+  // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
+  var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE];
+  range = range.replace(hr, hyphenReplace);
+  debug('hyphen replace', range);
+  // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
+  range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace);
+  debug('comparator trim', range, re[COMPARATORTRIM]);
+
+  // `~ 1.2.3` => `~1.2.3`
+  range = range.replace(re[TILDETRIM], tildeTrimReplace);
+
+  // `^ 1.2.3` => `^1.2.3`
+  range = range.replace(re[CARETTRIM], caretTrimReplace);
+
+  // normalize spaces
+  range = range.split(/\s+/).join(' ');
+
+  // At this point, the range is completely trimmed and
+  // ready to be split into comparators.
+
+  var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR];
+  var set = range.split(' ').map(function(comp) {
+    return parseComparator(comp, loose);
+  }).join(' ').split(/\s+/);
+  if (this.loose) {
+    // in loose mode, throw out any that are not valid comparators
+    set = set.filter(function(comp) {
+      return !!comp.match(compRe);
+    });
+  }
+  set = set.map(function(comp) {
+    return new Comparator(comp, loose);
+  });
+
+  return set;
+};
+
+// Mostly just for testing and legacy API reasons
+exports.toComparators = toComparators;
+function toComparators(range, loose) {
+  return new Range(range, loose).set.map(function(comp) {
+    return comp.map(function(c) {
+      return c.value;
+    }).join(' ').trim().split(' ');
+  });
+}
+
+// comprised of xranges, tildes, stars, and gtlt's at this point.
+// already replaced the hyphen ranges
+// turn into a set of JUST comparators.
+function parseComparator(comp, loose) {
+  debug('comp', comp);
+  comp = replaceCarets(comp, loose);
+  debug('caret', comp);
+  comp = replaceTildes(comp, loose);
+  debug('tildes', comp);
+  comp = replaceXRanges(comp, loose);
+  debug('xrange', comp);
+  comp = replaceStars(comp, loose);
+  debug('stars', comp);
+  return comp;
+}
+
+function isX(id) {
+  return !id || id.toLowerCase() === 'x' || id === '*';
+}
+
+// ~, ~> --> * (any, kinda silly)
+// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0
+// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0
+// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0
+// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0
+// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0
+function replaceTildes(comp, loose) {
+  return comp.trim().split(/\s+/).map(function(comp) {
+    return replaceTilde(comp, loose);
+  }).join(' ');
+}
+
+function replaceTilde(comp, loose) {
+  var r = loose ? re[TILDELOOSE] : re[TILDE];
+  return comp.replace(r, function(_, M, m, p, pr) {
+    debug('tilde', comp, _, M, m, p, pr);
+    var ret;
+
+    if (isX(M))
+      ret = '';
+    else if (isX(m))
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    else if (isX(p))
+      // ~1.2 == >=1.2.0- <1.3.0-
+      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+    else if (pr) {
+      debug('replaceTilde pr', pr);
+      if (pr.charAt(0) !== '-')
+        pr = '-' + pr;
+      ret = '>=' + M + '.' + m + '.' + p + pr +
+            ' <' + M + '.' + (+m + 1) + '.0';
+    } else
+      // ~1.2.3 == >=1.2.3 <1.3.0
+      ret = '>=' + M + '.' + m + '.' + p +
+            ' <' + M + '.' + (+m + 1) + '.0';
+
+    debug('tilde return', ret);
+    return ret;
+  });
+}
+
+// ^ --> * (any, kinda silly)
+// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0
+// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0
+// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0
+// ^1.2.3 --> >=1.2.3 <2.0.0
+// ^1.2.0 --> >=1.2.0 <2.0.0
+function replaceCarets(comp, loose) {
+  return comp.trim().split(/\s+/).map(function(comp) {
+    return replaceCaret(comp, loose);
+  }).join(' ');
+}
+
+function replaceCaret(comp, loose) {
+  debug('caret', comp, loose);
+  var r = loose ? re[CARETLOOSE] : re[CARET];
+  return comp.replace(r, function(_, M, m, p, pr) {
+    debug('caret', comp, _, M, m, p, pr);
+    var ret;
+
+    if (isX(M))
+      ret = '';
+    else if (isX(m))
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    else if (isX(p)) {
+      if (M === '0')
+        ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+      else
+        ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0';
+    } else if (pr) {
+      debug('replaceCaret pr', pr);
+      if (pr.charAt(0) !== '-')
+        pr = '-' + pr;
+      if (M === '0') {
+        if (m === '0')
+          ret = '>=' + M + '.' + m + '.' + p + pr +
+                ' <' + M + '.' + m + '.' + (+p + 1);
+        else
+          ret = '>=' + M + '.' + m + '.' + p + pr +
+                ' <' + M + '.' + (+m + 1) + '.0';
+      } else
+        ret = '>=' + M + '.' + m + '.' + p + pr +
+              ' <' + (+M + 1) + '.0.0';
+    } else {
+      debug('no pr');
+      if (M === '0') {
+        if (m === '0')
+          ret = '>=' + M + '.' + m + '.' + p +
+                ' <' + M + '.' + m + '.' + (+p + 1);
+        else
+          ret = '>=' + M + '.' + m + '.' + p +
+                ' <' + M + '.' + (+m + 1) + '.0';
+      } else
+        ret = '>=' + M + '.' + m + '.' + p +
+              ' <' + (+M + 1) + '.0.0';
+    }
+
+    debug('caret return', ret);
+    return ret;
+  });
+}
+
+function replaceXRanges(comp, loose) {
+  debug('replaceXRanges', comp, loose);
+  return comp.split(/\s+/).map(function(comp) {
+    return replaceXRange(comp, loose);
+  }).join(' ');
+}
+
+function replaceXRange(comp, loose) {
+  comp = comp.trim();
+  var r = loose ? re[XRANGELOOSE] : re[XRANGE];
+  return comp.replace(r, function(ret, gtlt, M, m, p, pr) {
+    debug('xRange', comp, ret, gtlt, M, m, p, pr);
+    var xM = isX(M);
+    var xm = xM || isX(m);
+    var xp = xm || isX(p);
+    var anyX = xp;
+
+    if (gtlt === '=' && anyX)
+      gtlt = '';
+
+    if (xM) {
+      if (gtlt === '>' || gtlt === '<') {
+        // nothing is allowed
+        ret = '<0.0.0';
+      } else {
+        // nothing is forbidden
+        ret = '*';
+      }
+    } else if (gtlt && anyX) {
+      // replace X with 0
+      if (xm)
+        m = 0;
+      if (xp)
+        p = 0;
+
+      if (gtlt === '>') {
+        // >1 => >=2.0.0
+        // >1.2 => >=1.3.0
+        // >1.2.3 => >= 1.2.4
+        gtlt = '>=';
+        if (xm) {
+          M = +M + 1;
+          m = 0;
+          p = 0;
+        } else if (xp) {
+          m = +m + 1;
+          p = 0;
+        }
+      } else if (gtlt === '<=') {
+        // <=0.7.x is actually <0.8.0, since any 0.7.x should
+        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
+        gtlt = '<'
+        if (xm)
+          M = +M + 1
+        else
+          m = +m + 1
+      }
+
+      ret = gtlt + M + '.' + m + '.' + p;
+    } else if (xm) {
+      ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0';
+    } else if (xp) {
+      ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0';
+    }
+
+    debug('xRange return', ret);
+
+    return ret;
+  });
+}
+
+// Because * is AND-ed with everything else in the comparator,
+// and '' means "any version", just remove the *s entirely.
+function replaceStars(comp, loose) {
+  debug('replaceStars', comp, loose);
+  // Looseness is ignored here.  star is always as loose as it gets!
+  return comp.trim().replace(re[STAR], '');
+}
+
+// This function is passed to string.replace(re[HYPHENRANGE])
+// M, m, patch, prerelease, build
+// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
+// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do
+// 1.2 - 3.4 => >=1.2.0 <3.5.0
+function hyphenReplace($0,
+                       from, fM, fm, fp, fpr, fb,
+                       to, tM, tm, tp, tpr, tb) {
+
+  if (isX(fM))
+    from = '';
+  else if (isX(fm))
+    from = '>=' + fM + '.0.0';
+  else if (isX(fp))
+    from = '>=' + fM + '.' + fm + '.0';
+  else
+    from = '>=' + from;
+
+  if (isX(tM))
+    to = '';
+  else if (isX(tm))
+    to = '<' + (+tM + 1) + '.0.0';
+  else if (isX(tp))
+    to = '<' + tM + '.' + (+tm + 1) + '.0';
+  else if (tpr)
+    to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr;
+  else
+    to = '<=' + to;
+
+  return (from + ' ' + to).trim();
+}
+
+
+// if ANY of the sets match ALL of its comparators, then pass
+Range.prototype.test = function(version) {
+  if (!version)
+    return false;
+
+  if (typeof version === 'string')
+    version = new SemVer(version, this.loose);
+
+  for (var i = 0; i < this.set.length; i++) {
+    if (testSet(this.set[i], version))
+      return true;
+  }
+  return false;
+};
+
+function testSet(set, version) {
+  for (var i = 0; i < set.length; i++) {
+    if (!set[i].test(version))
+      return false;
+  }
+
+  if (version.prerelease.length) {
+    // Find the set of versions that are allowed to have prereleases
+    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
+    // That should allow `1.2.3-pr.2` to pass.
+    // However, `1.2.4-alpha.notready` should NOT be allowed,
+    // even though it's within the range set by the comparators.
+    for (var i = 0; i < set.length; i++) {
+      debug(set[i].semver);
+      if (set[i].semver === ANY)
+        continue;
+
+      if (set[i].semver.prerelease.length > 0) {
+        var allowed = set[i].semver;
+        if (allowed.major === version.major &&
+            allowed.minor === version.minor &&
+            allowed.patch === version.patch)
+          return true;
+      }
+    }
+
+    // Version has a -pre, but it's not one of the ones we like.
+    return false;
+  }
+
+  return true;
+}
+
+exports.satisfies = satisfies;
+function satisfies(version, range, loose) {
+  try {
+    range = new Range(range, loose);
+  } catch (er) {
+    return false;
+  }
+  return range.test(version);
+}
+
+exports.maxSatisfying = maxSatisfying;
+function maxSatisfying(versions, range, loose) {
+  return versions.filter(function(version) {
+    return satisfies(version, range, loose);
+  }).sort(function(a, b) {
+    return rcompare(a, b, loose);
+  })[0] || null;
+}
+
+exports.validRange = validRange;
+function validRange(range, loose) {
+  try {
+    // Return '*' instead of '' so that truthiness works.
+    // This will throw if it's invalid anyway
+    return new Range(range, loose).range || '*';
+  } catch (er) {
+    return null;
+  }
+}
+
+// Determine if version is less than all the versions possible in the range
+exports.ltr = ltr;
+function ltr(version, range, loose) {
+  return outside(version, range, '<', loose);
+}
+
+// Determine if version is greater than all the versions possible in the range.
+exports.gtr = gtr;
+function gtr(version, range, loose) {
+  return outside(version, range, '>', loose);
+}
+
+exports.outside = outside;
+function outside(version, range, hilo, loose) {
+  version = new SemVer(version, loose);
+  range = new Range(range, loose);
+
+  var gtfn, ltefn, ltfn, comp, ecomp;
+  switch (hilo) {
+    case '>':
+      gtfn = gt;
+      ltefn = lte;
+      ltfn = lt;
+      comp = '>';
+      ecomp = '>=';
+      break;
+    case '<':
+      gtfn = lt;
+      ltefn = gte;
+      ltfn = gt;
+      comp = '<';
+      ecomp = '<=';
+      break;
+    default:
+      throw new TypeError('Must provide a hilo val of "<" or ">"');
+  }
+
+  // If it satisifes the range it is not outside
+  if (satisfies(version, range, loose)) {
+    return false;
+  }
+
+  // From now on, variable terms are as if we're in "gtr" mode.
+  // but note that everything is flipped for the "ltr" function.
+
+  for (var i = 0; i < range.set.length; ++i) {
+    var comparators = range.set[i];
+
+    var high = null;
+    var low = null;
+
+    comparators.forEach(function(comparator) {
+      if (comparator.semver === ANY) {
+        comparator = new Comparator('>=0.0.0')
+      }
+      high = high || comparator;
+      low = low || comparator;
+      if (gtfn(comparator.semver, high.semver, loose)) {
+        high = comparator;
+      } else if (ltfn(comparator.semver, low.semver, loose)) {
+        low = comparator;
+      }
+    });
+
+    // If the edge version comparator has a operator then our version
+    // isn't outside it
+    if (high.operator === comp || high.operator === ecomp) {
+      return false;
+    }
+
+    // If the lowest version comparator has an operator and our version
+    // is less than it then it isn't higher than the range
+    if ((!low.operator || low.operator === comp) &&
+        ltefn(version, low.semver)) {
+      return false;
+    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
+      return false;
+    }
+  }
+  return true;
+}
+
+// Use the define() function if we're in AMD land
+if (typeof define === 'function' && define.amd)
+  define(exports);
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js
new file mode 100644 (file)
index 0000000..dea027b
--- /dev/null
@@ -0,0 +1 @@
+(function(e){if(typeof module==="object"&&module.exports===e)e=module.exports=K;e.SEMVER_SPEC_VERSION="2.0.0";var r=256;var t=Number.MAX_SAFE_INTEGER||9007199254740991;var n=e.re=[];var i=e.src=[];var s=0;var o=s++;i[o]="0|[1-9]\\d*";var a=s++;i[a]="[0-9]+";var f=s++;i[f]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var u=s++;i[u]="("+i[o]+")\\."+"("+i[o]+")\\."+"("+i[o]+")";var l=s++;i[l]="("+i[a]+")\\."+"("+i[a]+")\\."+"("+i[a]+")";var p=s++;i[p]="(?:"+i[o]+"|"+i[f]+")";var c=s++;i[c]="(?:"+i[a]+"|"+i[f]+")";var h=s++;i[h]="(?:-("+i[p]+"(?:\\."+i[p]+")*))";var v=s++;i[v]="(?:-?("+i[c]+"(?:\\."+i[c]+")*))";var m=s++;i[m]="[0-9A-Za-z-]+";var g=s++;i[g]="(?:\\+("+i[m]+"(?:\\."+i[m]+")*))";var w=s++;var y="v?"+i[u]+i[h]+"?"+i[g]+"?";i[w]="^"+y+"$";var d="[v=\\s]*"+i[l]+i[v]+"?"+i[g]+"?";var j=s++;i[j]="^"+d+"$";var b=s++;i[b]="((?:<|>)?=?)";var E=s++;i[E]=i[a]+"|x|X|\\*";var $=s++;i[$]=i[o]+"|x|X|\\*";var k=s++;i[k]="[v=\\s]*("+i[$]+")"+"(?:\\.("+i[$]+")"+"(?:\\.("+i[$]+")"+"(?:"+i[h]+")?"+i[g]+"?"+")?)?";var R=s++;i[R]="[v=\\s]*("+i[E]+")"+"(?:\\.("+i[E]+")"+"(?:\\.("+i[E]+")"+"(?:"+i[v]+")?"+i[g]+"?"+")?)?";var S=s++;i[S]="^"+i[b]+"\\s*"+i[k]+"$";var x=s++;i[x]="^"+i[b]+"\\s*"+i[R]+"$";var I=s++;i[I]="(?:~>?)";var T=s++;i[T]="(\\s*)"+i[I]+"\\s+";n[T]=new RegExp(i[T],"g");var V="$1~";var A=s++;i[A]="^"+i[I]+i[k]+"$";var C=s++;i[C]="^"+i[I]+i[R]+"$";var M=s++;i[M]="(?:\\^)";var N=s++;i[N]="(\\s*)"+i[M]+"\\s+";n[N]=new RegExp(i[N],"g");var _="$1^";var z=s++;i[z]="^"+i[M]+i[k]+"$";var P=s++;i[P]="^"+i[M]+i[R]+"$";var X=s++;i[X]="^"+i[b]+"\\s*("+d+")$|^$";var Z=s++;i[Z]="^"+i[b]+"\\s*("+y+")$|^$";var q=s++;i[q]="(\\s*)"+i[b]+"\\s*("+d+"|"+i[k]+")";n[q]=new RegExp(i[q],"g");var L="$1$2$3";var F=s++;i[F]="^\\s*("+i[k]+")"+"\\s+-\\s+"+"("+i[k]+")"+"\\s*$";var G=s++;i[G]="^\\s*("+i[R]+")"+"\\s+-\\s+"+"("+i[R]+")"+"\\s*$";var O=s++;i[O]="(<|>)?=?\\s*\\*";for(var B=0;B<s;B++){if(!n[B])n[B]=new RegExp(i[B])}e.parse=D;function D(e,t){if(e instanceof K)return e;if(typeof e!=="string")return null;if(e.length>r)return null;var i=t?n[j]:n[w];if(!i.test(e))return null;try{return new K(e,t)}catch(s){return null}}e.valid=H;function H(e,r){var t=D(e,r);return t?t.version:null}e.clean=J;function J(e,r){var t=D(e.trim().replace(/^[=v]+/,""),r);return t?t.version:null}e.SemVer=K;function K(e,i){if(e instanceof K){if(e.loose===i)return e;else e=e.version}else if(typeof e!=="string"){throw new TypeError("Invalid Version: "+e)}if(e.length>r)throw new TypeError("version is longer than "+r+" characters");if(!(this instanceof K))return new K(e,i);this.loose=i;var s=e.trim().match(i?n[j]:n[w]);if(!s)throw new TypeError("Invalid Version: "+e);this.raw=e;this.major=+s[1];this.minor=+s[2];this.patch=+s[3];if(this.major>t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>t||this.patch<0)throw new TypeError("Invalid patch version");if(!s[4])this.prerelease=[];else this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var r=+e;if(r>=0&&r<t)return r}return e});this.build=s[5]?s[5].split("."):[];this.format()}K.prototype.format=function(){this.version=this.major+"."+this.minor+"."+this.patch;if(this.prerelease.length)this.version+="-"+this.prerelease.join(".");return this.version};K.prototype.inspect=function(){return'<SemVer "'+this+'">'};K.prototype.toString=function(){return this.version};K.prototype.compare=function(e){if(!(e instanceof K))e=new K(e,this.loose);return this.compareMain(e)||this.comparePre(e)};K.prototype.compareMain=function(e){if(!(e instanceof K))e=new K(e,this.loose);return Y(this.major,e.major)||Y(this.minor,e.minor)||Y(this.patch,e.patch)};K.prototype.comparePre=function(e){if(!(e instanceof K))e=new K(e,this.loose);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;var r=0;do{var t=this.prerelease[r];var n=e.prerelease[r];if(t===undefined&&n===undefined)return 0;else if(n===undefined)return 1;else if(t===undefined)return-1;else if(t===n)continue;else return Y(t,n)}while(++r)};K.prototype.inc=function(e,r){switch(e){case"premajor":this.prerelease.length=0;this.patch=0;this.minor=0;this.major++;this.inc("pre",r);break;case"preminor":this.prerelease.length=0;this.patch=0;this.minor++;this.inc("pre",r);break;case"prepatch":this.prerelease.length=0;this.inc("patch",r);this.inc("pre",r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",r);this.inc("pre",r);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0;this.patch=0;this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0;this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{var t=this.prerelease.length;while(--t>=0){if(typeof this.prerelease[t]==="number"){this.prerelease[t]++;t=-2}}if(t===-1)this.prerelease.push(0)}if(r){if(this.prerelease[0]===r){if(isNaN(this.prerelease[1]))this.prerelease=[r,0]}else this.prerelease=[r,0]}break;default:throw new Error("invalid increment argument: "+e)}this.format();return this};e.inc=Q;function Q(e,r,t,n){if(typeof t==="string"){n=t;t=undefined}try{return new K(e,t).inc(r,n).version}catch(i){return null}}e.diff=U;function U(e,r){if(pr(e,r)){return null}else{var t=D(e);var n=D(r);if(t.prerelease.length||n.prerelease.length){for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return"pre"+i}}}return"prerelease"}for(var i in t){if(i==="major"||i==="minor"||i==="patch"){if(t[i]!==n[i]){return i}}}}}e.compareIdentifiers=Y;var W=/^[0-9]+$/;function Y(e,r){var t=W.test(e);var n=W.test(r);if(t&&n){e=+e;r=+r}return t&&!n?-1:n&&!t?1:e<r?-1:e>r?1:0}e.rcompareIdentifiers=er;function er(e,r){return Y(r,e)}e.major=rr;function rr(e,r){return new K(e,r).major}e.minor=tr;function tr(e,r){return new K(e,r).minor}e.patch=nr;function nr(e,r){return new K(e,r).patch}e.compare=ir;function ir(e,r,t){return new K(e,t).compare(r)}e.compareLoose=sr;function sr(e,r){return ir(e,r,true)}e.rcompare=or;function or(e,r,t){return ir(r,e,t)}e.sort=ar;function ar(r,t){return r.sort(function(r,n){return e.compare(r,n,t)})}e.rsort=fr;function fr(r,t){return r.sort(function(r,n){return e.rcompare(r,n,t)})}e.gt=ur;function ur(e,r,t){return ir(e,r,t)>0}e.lt=lr;function lr(e,r,t){return ir(e,r,t)<0}e.eq=pr;function pr(e,r,t){return ir(e,r,t)===0}e.neq=cr;function cr(e,r,t){return ir(e,r,t)!==0}e.gte=hr;function hr(e,r,t){return ir(e,r,t)>=0}e.lte=vr;function vr(e,r,t){return ir(e,r,t)<=0}e.cmp=mr;function mr(e,r,t,n){var i;switch(r){case"===":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e===t;break;case"!==":if(typeof e==="object")e=e.version;if(typeof t==="object")t=t.version;i=e!==t;break;case"":case"=":case"==":i=pr(e,t,n);break;case"!=":i=cr(e,t,n);break;case">":i=ur(e,t,n);break;case">=":i=hr(e,t,n);break;case"<":i=lr(e,t,n);break;case"<=":i=vr(e,t,n);break;default:throw new TypeError("Invalid operator: "+r)}return i}e.Comparator=gr;function gr(e,r){if(e instanceof gr){if(e.loose===r)return e;else e=e.value}if(!(this instanceof gr))return new gr(e,r);this.loose=r;this.parse(e);if(this.semver===wr)this.value="";else this.value=this.operator+this.semver.version}var wr={};gr.prototype.parse=function(e){var r=this.loose?n[X]:n[Z];var t=e.match(r);if(!t)throw new TypeError("Invalid comparator: "+e);this.operator=t[1];if(this.operator==="=")this.operator="";if(!t[2])this.semver=wr;else this.semver=new K(t[2],this.loose)};gr.prototype.inspect=function(){return'<SemVer Comparator "'+this+'">'};gr.prototype.toString=function(){return this.value};gr.prototype.test=function(e){if(this.semver===wr)return true;if(typeof e==="string")e=new K(e,this.loose);return mr(e,this.operator,this.semver,this.loose)};e.Range=yr;function yr(e,r){if(e instanceof yr&&e.loose===r)return e;if(!(this instanceof yr))return new yr(e,r);this.loose=r;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}yr.prototype.inspect=function(){return'<SemVer Range "'+this.range+'">'};yr.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};yr.prototype.toString=function(){return this.range};yr.prototype.parseRange=function(e){var r=this.loose;e=e.trim();var t=r?n[G]:n[F];e=e.replace(t,Tr);e=e.replace(n[q],L);e=e.replace(n[T],V);e=e.replace(n[N],_);e=e.split(/\s+/).join(" ");var i=r?n[X]:n[Z];var s=e.split(" ").map(function(e){return jr(e,r)}).join(" ").split(/\s+/);if(this.loose){s=s.filter(function(e){return!!e.match(i)})}s=s.map(function(e){return new gr(e,r)});return s};e.toComparators=dr;function dr(e,r){return new yr(e,r).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function jr(e,r){e=kr(e,r);e=Er(e,r);e=Sr(e,r);e=Ir(e,r);return e}function br(e){return!e||e.toLowerCase()==="x"||e==="*"}function Er(e,r){return e.trim().split(/\s+/).map(function(e){return $r(e,r)}).join(" ")}function $r(e,r){var t=r?n[C]:n[A];return e.replace(t,function(e,r,t,n,i){var s;if(br(r))s="";else if(br(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(br(n))s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else if(i){if(i.charAt(0)!=="-")i="-"+i;s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0";return s})}function kr(e,r){return e.trim().split(/\s+/).map(function(e){return Rr(e,r)}).join(" ")}function Rr(e,r){var t=r?n[P]:n[z];return e.replace(t,function(e,r,t,n,i){var s;if(br(r))s="";else if(br(t))s=">="+r+".0.0 <"+(+r+1)+".0.0";else if(br(n)){if(r==="0")s=">="+r+"."+t+".0 <"+r+"."+(+t+1)+".0";else s=">="+r+"."+t+".0 <"+(+r+1)+".0.0"}else if(i){if(i.charAt(0)!=="-")i="-"+i;if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+i+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+i+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+i+" <"+(+r+1)+".0.0"}else{if(r==="0"){if(t==="0")s=">="+r+"."+t+"."+n+" <"+r+"."+t+"."+(+n+1);else s=">="+r+"."+t+"."+n+" <"+r+"."+(+t+1)+".0"}else s=">="+r+"."+t+"."+n+" <"+(+r+1)+".0.0"}return s})}function Sr(e,r){return e.split(/\s+/).map(function(e){return xr(e,r)}).join(" ")}function xr(e,r){e=e.trim();var t=r?n[x]:n[S];return e.replace(t,function(e,r,t,n,i,s){var o=br(t);var a=o||br(n);var f=a||br(i);var u=f;if(r==="="&&u)r="";if(o){if(r===">"||r==="<"){e="<0.0.0"}else{e="*"}}else if(r&&u){if(a)n=0;if(f)i=0;if(r===">"){r=">=";if(a){t=+t+1;n=0;i=0}else if(f){n=+n+1;i=0}}else if(r==="<="){r="<";if(a)t=+t+1;else n=+n+1}e=r+t+"."+n+"."+i}else if(a){e=">="+t+".0.0 <"+(+t+1)+".0.0"}else if(f){e=">="+t+"."+n+".0 <"+t+"."+(+n+1)+".0"}return e})}function Ir(e,r){return e.trim().replace(n[O],"")}function Tr(e,r,t,n,i,s,o,a,f,u,l,p,c){if(br(t))r="";else if(br(n))r=">="+t+".0.0";else if(br(i))r=">="+t+"."+n+".0";else r=">="+r;if(br(f))a="";else if(br(u))a="<"+(+f+1)+".0.0";else if(br(l))a="<"+f+"."+(+u+1)+".0";else if(p)a="<="+f+"."+u+"."+l+"-"+p;else a="<="+a;return(r+" "+a).trim()}yr.prototype.test=function(e){if(!e)return false;if(typeof e==="string")e=new K(e,this.loose);for(var r=0;r<this.set.length;r++){if(Vr(this.set[r],e))return true}return false};function Vr(e,r){for(var t=0;t<e.length;t++){if(!e[t].test(r))return false}if(r.prerelease.length){for(var t=0;t<e.length;t++){if(e[t].semver===wr)continue;if(e[t].semver.prerelease.length>0){var n=e[t].semver;if(n.major===r.major&&n.minor===r.minor&&n.patch===r.patch)return true}}return false}return true}e.satisfies=Ar;function Ar(e,r,t){try{r=new yr(r,t)}catch(n){return false}return r.test(e)}e.maxSatisfying=Cr;function Cr(e,r,t){return e.filter(function(e){return Ar(e,r,t)}).sort(function(e,r){return or(e,r,t)})[0]||null}e.validRange=Mr;function Mr(e,r){try{return new yr(e,r).range||"*"}catch(t){return null}}e.ltr=Nr;function Nr(e,r,t){return zr(e,r,"<",t)}e.gtr=_r;function _r(e,r,t){return zr(e,r,">",t)}e.outside=zr;function zr(e,r,t,n){e=new K(e,n);r=new yr(r,n);var i,s,o,a,f;switch(t){case">":i=ur;s=vr;o=lr;a=">";f=">=";break;case"<":i=lr;s=hr;o=ur;a="<";f="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ar(e,r,n)){return false}for(var u=0;u<r.set.length;++u){var l=r.set[u];var p=null;var c=null;l.forEach(function(e){if(e.semver===wr){e=new gr(">=0.0.0")}p=p||e;c=c||e;if(i(e.semver,p.semver,n)){p=e}else if(o(e.semver,c.semver,n)){c=e}});if(p.operator===a||p.operator===f){return false}if((!c.operator||c.operator===a)&&s(e,c.semver)){return false}else if(c.operator===f&&o(e,c.semver)){return false}}return true}if(typeof define==="function"&&define.amd)define(e)})(typeof exports==="object"?exports:typeof define==="function"&&define.amd?{}:semver={});
\ No newline at end of file
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz
new file mode 100644 (file)
index 0000000..cbbc161
Binary files /dev/null and b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/semver.min.js.gz differ
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/index.js b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/index.js
new file mode 100644 (file)
index 0000000..c256c79
--- /dev/null
@@ -0,0 +1,685 @@
+'use strict';
+
+var tap = require('tap');
+var test = tap.test;
+var semver = require('../semver.js');
+var eq = semver.eq;
+var gt = semver.gt;
+var lt = semver.lt;
+var neq = semver.neq;
+var cmp = semver.cmp;
+var gte = semver.gte;
+var lte = semver.lte;
+var satisfies = semver.satisfies;
+var validRange = semver.validRange;
+var inc = semver.inc;
+var diff = semver.diff;
+var replaceStars = semver.replaceStars;
+var toComparators = semver.toComparators;
+var SemVer = semver.SemVer;
+var Range = semver.Range;
+
+test('\ncomparison tests', function(t) {
+  // [version1, version2]
+  // version1 should be greater than version2
+  [['0.0.0', '0.0.0-foo'],
+    ['0.0.1', '0.0.0'],
+    ['1.0.0', '0.9.9'],
+    ['0.10.0', '0.9.0'],
+    ['0.99.0', '0.10.0'],
+    ['2.0.0', '1.2.3'],
+    ['v0.0.0', '0.0.0-foo', true],
+    ['v0.0.1', '0.0.0', true],
+    ['v1.0.0', '0.9.9', true],
+    ['v0.10.0', '0.9.0', true],
+    ['v0.99.0', '0.10.0', true],
+    ['v2.0.0', '1.2.3', true],
+    ['0.0.0', 'v0.0.0-foo', true],
+    ['0.0.1', 'v0.0.0', true],
+    ['1.0.0', 'v0.9.9', true],
+    ['0.10.0', 'v0.9.0', true],
+    ['0.99.0', 'v0.10.0', true],
+    ['2.0.0', 'v1.2.3', true],
+    ['1.2.3', '1.2.3-asdf'],
+    ['1.2.3', '1.2.3-4'],
+    ['1.2.3', '1.2.3-4-foo'],
+    ['1.2.3-5-foo', '1.2.3-5'],
+    ['1.2.3-5', '1.2.3-4'],
+    ['1.2.3-5-foo', '1.2.3-5-Foo'],
+    ['3.0.0', '2.7.2+asdf'],
+    ['1.2.3-a.10', '1.2.3-a.5'],
+    ['1.2.3-a.b', '1.2.3-a.5'],
+    ['1.2.3-a.b', '1.2.3-a'],
+    ['1.2.3-a.b.c.10.d.5', '1.2.3-a.b.c.5.d.100'],
+    ['1.2.3-r2', '1.2.3-r100'],
+    ['1.2.3-r100', '1.2.3-R2']
+  ].forEach(function(v) {
+    var v0 = v[0];
+    var v1 = v[1];
+    var loose = v[2];
+    t.ok(gt(v0, v1, loose), "gt('" + v0 + "', '" + v1 + "')");
+    t.ok(lt(v1, v0, loose), "lt('" + v1 + "', '" + v0 + "')");
+    t.ok(!gt(v1, v0, loose), "!gt('" + v1 + "', '" + v0 + "')");
+    t.ok(!lt(v0, v1, loose), "!lt('" + v0 + "', '" + v1 + "')");
+    t.ok(eq(v0, v0, loose), "eq('" + v0 + "', '" + v0 + "')");
+    t.ok(eq(v1, v1, loose), "eq('" + v1 + "', '" + v1 + "')");
+    t.ok(neq(v0, v1, loose), "neq('" + v0 + "', '" + v1 + "')");
+    t.ok(cmp(v1, '==', v1, loose), "cmp('" + v1 + "' == '" + v1 + "')");
+    t.ok(cmp(v0, '>=', v1, loose), "cmp('" + v0 + "' >= '" + v1 + "')");
+    t.ok(cmp(v1, '<=', v0, loose), "cmp('" + v1 + "' <= '" + v0 + "')");
+    t.ok(cmp(v0, '!=', v1, loose), "cmp('" + v0 + "' != '" + v1 + "')");
+  });
+  t.end();
+});
+
+test('\nequality tests', function(t) {
+  // [version1, version2]
+  // version1 should be equivalent to version2
+  [['1.2.3', 'v1.2.3', true],
+    ['1.2.3', '=1.2.3', true],
+    ['1.2.3', 'v 1.2.3', true],
+    ['1.2.3', '= 1.2.3', true],
+    ['1.2.3', ' v1.2.3', true],
+    ['1.2.3', ' =1.2.3', true],
+    ['1.2.3', ' v 1.2.3', true],
+    ['1.2.3', ' = 1.2.3', true],
+    ['1.2.3-0', 'v1.2.3-0', true],
+    ['1.2.3-0', '=1.2.3-0', true],
+    ['1.2.3-0', 'v 1.2.3-0', true],
+    ['1.2.3-0', '= 1.2.3-0', true],
+    ['1.2.3-0', ' v1.2.3-0', true],
+    ['1.2.3-0', ' =1.2.3-0', true],
+    ['1.2.3-0', ' v 1.2.3-0', true],
+    ['1.2.3-0', ' = 1.2.3-0', true],
+    ['1.2.3-1', 'v1.2.3-1', true],
+    ['1.2.3-1', '=1.2.3-1', true],
+    ['1.2.3-1', 'v 1.2.3-1', true],
+    ['1.2.3-1', '= 1.2.3-1', true],
+    ['1.2.3-1', ' v1.2.3-1', true],
+    ['1.2.3-1', ' =1.2.3-1', true],
+    ['1.2.3-1', ' v 1.2.3-1', true],
+    ['1.2.3-1', ' = 1.2.3-1', true],
+    ['1.2.3-beta', 'v1.2.3-beta', true],
+    ['1.2.3-beta', '=1.2.3-beta', true],
+    ['1.2.3-beta', 'v 1.2.3-beta', true],
+    ['1.2.3-beta', '= 1.2.3-beta', true],
+    ['1.2.3-beta', ' v1.2.3-beta', true],
+    ['1.2.3-beta', ' =1.2.3-beta', true],
+    ['1.2.3-beta', ' v 1.2.3-beta', true],
+    ['1.2.3-beta', ' = 1.2.3-beta', true],
+    ['1.2.3-beta+build', ' = 1.2.3-beta+otherbuild', true],
+    ['1.2.3+build', ' = 1.2.3+otherbuild', true],
+    ['1.2.3-beta+build', '1.2.3-beta+otherbuild'],
+    ['1.2.3+build', '1.2.3+otherbuild'],
+    ['  v1.2.3+build', '1.2.3+otherbuild']
+  ].forEach(function(v) {
+    var v0 = v[0];
+    var v1 = v[1];
+    var loose = v[2];
+    t.ok(eq(v0, v1, loose), "eq('" + v0 + "', '" + v1 + "')");
+    t.ok(!neq(v0, v1, loose), "!neq('" + v0 + "', '" + v1 + "')");
+    t.ok(cmp(v0, '==', v1, loose), 'cmp(' + v0 + '==' + v1 + ')');
+    t.ok(!cmp(v0, '!=', v1, loose), '!cmp(' + v0 + '!=' + v1 + ')');
+    t.ok(!cmp(v0, '===', v1, loose), '!cmp(' + v0 + '===' + v1 + ')');
+    t.ok(cmp(v0, '!==', v1, loose), 'cmp(' + v0 + '!==' + v1 + ')');
+    t.ok(!gt(v0, v1, loose), "!gt('" + v0 + "', '" + v1 + "')");
+    t.ok(gte(v0, v1, loose), "gte('" + v0 + "', '" + v1 + "')");
+    t.ok(!lt(v0, v1, loose), "!lt('" + v0 + "', '" + v1 + "')");
+    t.ok(lte(v0, v1, loose), "lte('" + v0 + "', '" + v1 + "')");
+  });
+  t.end();
+});
+
+
+test('\nrange tests', function(t) {
+  // [range, version]
+  // version should be included by range
+  [['1.0.0 - 2.0.0', '1.2.3'],
+    ['^1.2.3+build', '1.2.3'],
+    ['^1.2.3+build', '1.3.0'],
+    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '1.2.3'],
+    ['1.2.3pre+asdf - 2.4.3-pre+asdf', '1.2.3', true],
+    ['1.2.3-pre+asdf - 2.4.3pre+asdf', '1.2.3', true],
+    ['1.2.3pre+asdf - 2.4.3pre+asdf', '1.2.3', true],
+    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '1.2.3-pre.2'],
+    ['1.2.3-pre+asdf - 2.4.3-pre+asdf', '2.4.3-alpha'],
+    ['1.2.3+asdf - 2.4.3+asdf', '1.2.3'],
+    ['1.0.0', '1.0.0'],
+    ['>=*', '0.2.4'],
+    ['', '1.0.0'],
+    ['*', '1.2.3'],
+    ['*', 'v1.2.3', true],
+    ['>=1.0.0', '1.0.0'],
+    ['>=1.0.0', '1.0.1'],
+    ['>=1.0.0', '1.1.0'],
+    ['>1.0.0', '1.0.1'],
+    ['>1.0.0', '1.1.0'],
+    ['<=2.0.0', '2.0.0'],
+    ['<=2.0.0', '1.9999.9999'],
+    ['<=2.0.0', '0.2.9'],
+    ['<2.0.0', '1.9999.9999'],
+    ['<2.0.0', '0.2.9'],
+    ['>= 1.0.0', '1.0.0'],
+    ['>=  1.0.0', '1.0.1'],
+    ['>=   1.0.0', '1.1.0'],
+    ['> 1.0.0', '1.0.1'],
+    ['>  1.0.0', '1.1.0'],
+    ['<=   2.0.0', '2.0.0'],
+    ['<= 2.0.0', '1.9999.9999'],
+    ['<=  2.0.0', '0.2.9'],
+    ['<    2.0.0', '1.9999.9999'],
+    ['<\t2.0.0', '0.2.9'],
+    ['>=0.1.97', 'v0.1.97', true],
+    ['>=0.1.97', '0.1.97'],
+    ['0.1.20 || 1.2.4', '1.2.4'],
+    ['>=0.2.3 || <0.0.1', '0.0.0'],
+    ['>=0.2.3 || <0.0.1', '0.2.3'],
+    ['>=0.2.3 || <0.0.1', '0.2.4'],
+    ['||', '1.3.4'],
+    ['2.x.x', '2.1.3'],
+    ['1.2.x', '1.2.3'],
+    ['1.2.x || 2.x', '2.1.3'],
+    ['1.2.x || 2.x', '1.2.3'],
+    ['x', '1.2.3'],
+    ['2.*.*', '2.1.3'],
+    ['1.2.*', '1.2.3'],
+    ['1.2.* || 2.*', '2.1.3'],
+    ['1.2.* || 2.*', '1.2.3'],
+    ['*', '1.2.3'],
+    ['2', '2.1.2'],
+    ['2.3', '2.3.1'],
+    ['~2.4', '2.4.0'], // >=2.4.0 <2.5.0
+    ['~2.4', '2.4.5'],
+    ['~>3.2.1', '3.2.2'], // >=3.2.1 <3.3.0,
+    ['~1', '1.2.3'], // >=1.0.0 <2.0.0
+    ['~>1', '1.2.3'],
+    ['~> 1', '1.2.3'],
+    ['~1.0', '1.0.2'], // >=1.0.0 <1.1.0,
+    ['~ 1.0', '1.0.2'],
+    ['~ 1.0.3', '1.0.12'],
+    ['>=1', '1.0.0'],
+    ['>= 1', '1.0.0'],
+    ['<1.2', '1.1.1'],
+    ['< 1.2', '1.1.1'],
+    ['~v0.5.4-pre', '0.5.5'],
+    ['~v0.5.4-pre', '0.5.4'],
+    ['=0.7.x', '0.7.2'],
+    ['<=0.7.x', '0.7.2'],
+    ['>=0.7.x', '0.7.2'],
+    ['<=0.7.x', '0.6.2'],
+    ['~1.2.1 >=1.2.3', '1.2.3'],
+    ['~1.2.1 =1.2.3', '1.2.3'],
+    ['~1.2.1 1.2.3', '1.2.3'],
+    ['~1.2.1 >=1.2.3 1.2.3', '1.2.3'],
+    ['~1.2.1 1.2.3 >=1.2.3', '1.2.3'],
+    ['~1.2.1 1.2.3', '1.2.3'],
+    ['>=1.2.1 1.2.3', '1.2.3'],
+    ['1.2.3 >=1.2.1', '1.2.3'],
+    ['>=1.2.3 >=1.2.1', '1.2.3'],
+    ['>=1.2.1 >=1.2.3', '1.2.3'],
+    ['>=1.2', '1.2.8'],
+    ['^1.2.3', '1.8.1'],
+    ['^0.1.2', '0.1.2'],
+    ['^0.1', '0.1.2'],
+    ['^1.2', '1.4.2'],
+    ['^1.2 ^1', '1.4.2'],
+    ['^1.2.3-alpha', '1.2.3-pre'],
+    ['^1.2.0-alpha', '1.2.0-pre'],
+    ['^0.0.1-alpha', '0.0.1-beta']
+  ].forEach(function(v) {
+    var range = v[0];
+    var ver = v[1];
+    var loose = v[2];
+    t.ok(satisfies(ver, range, loose), range + ' satisfied by ' + ver);
+  });
+  t.end();
+});
+
+test('\nnegative range tests', function(t) {
+  // [range, version]
+  // version should not be included by range
+  [['1.0.0 - 2.0.0', '2.2.3'],
+    ['1.2.3+asdf - 2.4.3+asdf', '1.2.3-pre.2'],
+    ['1.2.3+asdf - 2.4.3+asdf', '2.4.3-alpha'],
+    ['^1.2.3+build', '2.0.0'],
+    ['^1.2.3+build', '1.2.0'],
+    ['^1.2.3', '1.2.3-pre'],
+    ['^1.2', '1.2.0-pre'],
+    ['>1.2', '1.3.0-beta'],
+    ['<=1.2.3', '1.2.3-beta'],
+    ['^1.2.3', '1.2.3-beta'],
+    ['=0.7.x', '0.7.0-asdf'],
+    ['>=0.7.x', '0.7.0-asdf'],
+    ['1', '1.0.0beta', true],
+    ['<1', '1.0.0beta', true],
+    ['< 1', '1.0.0beta', true],
+    ['1.0.0', '1.0.1'],
+    ['>=1.0.0', '0.0.0'],
+    ['>=1.0.0', '0.0.1'],
+    ['>=1.0.0', '0.1.0'],
+    ['>1.0.0', '0.0.1'],
+    ['>1.0.0', '0.1.0'],
+    ['<=2.0.0', '3.0.0'],
+    ['<=2.0.0', '2.9999.9999'],
+    ['<=2.0.0', '2.2.9'],
+    ['<2.0.0', '2.9999.9999'],
+    ['<2.0.0', '2.2.9'],
+    ['>=0.1.97', 'v0.1.93', true],
+    ['>=0.1.97', '0.1.93'],
+    ['0.1.20 || 1.2.4', '1.2.3'],
+    ['>=0.2.3 || <0.0.1', '0.0.3'],
+    ['>=0.2.3 || <0.0.1', '0.2.2'],
+    ['2.x.x', '1.1.3'],
+    ['2.x.x', '3.1.3'],
+    ['1.2.x', '1.3.3'],
+    ['1.2.x || 2.x', '3.1.3'],
+    ['1.2.x || 2.x', '1.1.3'],
+    ['2.*.*', '1.1.3'],
+    ['2.*.*', '3.1.3'],
+    ['1.2.*', '1.3.3'],
+    ['1.2.* || 2.*', '3.1.3'],
+    ['1.2.* || 2.*', '1.1.3'],
+    ['2', '1.1.2'],
+    ['2.3', '2.4.1'],
+    ['~2.4', '2.5.0'], // >=2.4.0 <2.5.0
+    ['~2.4', '2.3.9'],
+    ['~>3.2.1', '3.3.2'], // >=3.2.1 <3.3.0
+    ['~>3.2.1', '3.2.0'], // >=3.2.1 <3.3.0
+    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
+    ['~>1', '2.2.3'],
+    ['~1.0', '1.1.0'], // >=1.0.0 <1.1.0
+    ['<1', '1.0.0'],
+    ['>=1.2', '1.1.1'],
+    ['1', '2.0.0beta', true],
+    ['~v0.5.4-beta', '0.5.4-alpha'],
+    ['=0.7.x', '0.8.2'],
+    ['>=0.7.x', '0.6.2'],
+    ['<0.7.x', '0.7.2'],
+    ['<1.2.3', '1.2.3-beta'],
+    ['=1.2.3', '1.2.3-beta'],
+    ['>1.2', '1.2.8'],
+    ['^1.2.3', '2.0.0-alpha'],
+    ['^1.2.3', '1.2.2'],
+    ['^1.2', '1.1.9'],
+    ['*', 'v1.2.3-foo', true],
+    // invalid ranges never satisfied!
+    ['blerg', '1.2.3'],
+    ['git+https://user:password0123@github.com/foo', '123.0.0', true],
+    ['^1.2.3', '2.0.0-pre']
+  ].forEach(function(v) {
+    var range = v[0];
+    var ver = v[1];
+    var loose = v[2];
+    var found = satisfies(ver, range, loose);
+    t.ok(!found, ver + ' not satisfied by ' + range);
+  });
+  t.end();
+});
+
+test('\nincrement versions test', function(t) {
+//  [version, inc, result, identifier]
+//  inc(version, inc) -> result
+  [['1.2.3', 'major', '2.0.0'],
+    ['1.2.3', 'minor', '1.3.0'],
+    ['1.2.3', 'patch', '1.2.4'],
+    ['1.2.3tag', 'major', '2.0.0', true],
+    ['1.2.3-tag', 'major', '2.0.0'],
+    ['1.2.3', 'fake', null],
+    ['1.2.0-0', 'patch', '1.2.0'],
+    ['fake', 'major', null],
+    ['1.2.3-4', 'major', '2.0.0'],
+    ['1.2.3-4', 'minor', '1.3.0'],
+    ['1.2.3-4', 'patch', '1.2.3'],
+    ['1.2.3-alpha.0.beta', 'major', '2.0.0'],
+    ['1.2.3-alpha.0.beta', 'minor', '1.3.0'],
+    ['1.2.3-alpha.0.beta', 'patch', '1.2.3'],
+    ['1.2.4', 'prerelease', '1.2.5-0'],
+    ['1.2.3-0', 'prerelease', '1.2.3-1'],
+    ['1.2.3-alpha.0', 'prerelease', '1.2.3-alpha.1'],
+    ['1.2.3-alpha.1', 'prerelease', '1.2.3-alpha.2'],
+    ['1.2.3-alpha.2', 'prerelease', '1.2.3-alpha.3'],
+    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-alpha.1.beta'],
+    ['1.2.3-alpha.1.beta', 'prerelease', '1.2.3-alpha.2.beta'],
+    ['1.2.3-alpha.2.beta', 'prerelease', '1.2.3-alpha.3.beta'],
+    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-alpha.10.1.beta'],
+    ['1.2.3-alpha.10.1.beta', 'prerelease', '1.2.3-alpha.10.2.beta'],
+    ['1.2.3-alpha.10.2.beta', 'prerelease', '1.2.3-alpha.10.3.beta'],
+    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-alpha.10.beta.1'],
+    ['1.2.3-alpha.10.beta.1', 'prerelease', '1.2.3-alpha.10.beta.2'],
+    ['1.2.3-alpha.10.beta.2', 'prerelease', '1.2.3-alpha.10.beta.3'],
+    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-alpha.10.beta'],
+    ['1.2.3-alpha.10.beta', 'prerelease', '1.2.3-alpha.11.beta'],
+    ['1.2.3-alpha.11.beta', 'prerelease', '1.2.3-alpha.12.beta'],
+    ['1.2.0', 'prepatch', '1.2.1-0'],
+    ['1.2.0-1', 'prepatch', '1.2.1-0'],
+    ['1.2.0', 'preminor', '1.3.0-0'],
+    ['1.2.3-1', 'preminor', '1.3.0-0'],
+    ['1.2.0', 'premajor', '2.0.0-0'],
+    ['1.2.3-1', 'premajor', '2.0.0-0'],
+    ['1.2.0-1', 'minor', '1.2.0'],
+    ['1.0.0-1', 'major', '1.0.0'],
+
+    ['1.2.3', 'major', '2.0.0', false, 'dev'],
+    ['1.2.3', 'minor', '1.3.0', false, 'dev'],
+    ['1.2.3', 'patch', '1.2.4', false, 'dev'],
+    ['1.2.3tag', 'major', '2.0.0', true, 'dev'],
+    ['1.2.3-tag', 'major', '2.0.0', false, 'dev'],
+    ['1.2.3', 'fake', null, false, 'dev'],
+    ['1.2.0-0', 'patch', '1.2.0', false, 'dev'],
+    ['fake', 'major', null, false, 'dev'],
+    ['1.2.3-4', 'major', '2.0.0', false, 'dev'],
+    ['1.2.3-4', 'minor', '1.3.0', false, 'dev'],
+    ['1.2.3-4', 'patch', '1.2.3', false, 'dev'],
+    ['1.2.3-alpha.0.beta', 'major', '2.0.0', false, 'dev'],
+    ['1.2.3-alpha.0.beta', 'minor', '1.3.0', false, 'dev'],
+    ['1.2.3-alpha.0.beta', 'patch', '1.2.3', false, 'dev'],
+    ['1.2.4', 'prerelease', '1.2.5-dev.0', false, 'dev'],
+    ['1.2.3-0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.0', 'prerelease', '1.2.3-alpha.1', false, 'alpha'],
+    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.0.beta', 'prerelease', '1.2.3-alpha.1.beta', false, 'alpha'],
+    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.10.0.beta', 'prerelease', '1.2.3-alpha.10.1.beta', false, 'alpha'],
+    ['1.2.3-alpha.10.1.beta', 'prerelease', '1.2.3-alpha.10.2.beta', false, 'alpha'],
+    ['1.2.3-alpha.10.2.beta', 'prerelease', '1.2.3-alpha.10.3.beta', false, 'alpha'],
+    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.10.beta.0', 'prerelease', '1.2.3-alpha.10.beta.1', false, 'alpha'],
+    ['1.2.3-alpha.10.beta.1', 'prerelease', '1.2.3-alpha.10.beta.2', false, 'alpha'],
+    ['1.2.3-alpha.10.beta.2', 'prerelease', '1.2.3-alpha.10.beta.3', false, 'alpha'],
+    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-dev.0', false, 'dev'],
+    ['1.2.3-alpha.9.beta', 'prerelease', '1.2.3-alpha.10.beta', false, 'alpha'],
+    ['1.2.3-alpha.10.beta', 'prerelease', '1.2.3-alpha.11.beta', false, 'alpha'],
+    ['1.2.3-alpha.11.beta', 'prerelease', '1.2.3-alpha.12.beta', false, 'alpha'],
+    ['1.2.0', 'prepatch', '1.2.1-dev.0', 'dev'],
+    ['1.2.0-1', 'prepatch', '1.2.1-dev.0', 'dev'],
+    ['1.2.0', 'preminor', '1.3.0-dev.0', 'dev'],
+    ['1.2.3-1', 'preminor', '1.3.0-dev.0', 'dev'],
+    ['1.2.0', 'premajor', '2.0.0-dev.0', 'dev'],
+    ['1.2.3-1', 'premajor', '2.0.0-dev.0', 'dev'],
+    ['1.2.0-1', 'minor', '1.2.0', 'dev'],
+    ['1.0.0-1', 'major', '1.0.0', 'dev'],
+    ['1.2.3-dev.bar', 'prerelease', '1.2.3-dev.0', false, 'dev']
+
+  ].forEach(function(v) {
+    var pre = v[0];
+    var what = v[1];
+    var wanted = v[2];
+    var loose = v[3];
+    var id = v[4];
+    var found = inc(pre, what, loose, id);
+    var cmd = 'inc(' + pre + ', ' + what + ', ' + id + ')';
+    t.equal(found, wanted, cmd + ' === ' + wanted);
+  });
+
+  t.end();
+});
+
+test('\ndiff versions test', function(t) {
+//  [version1, version2, result]
+//  diff(version1, version2) -> result
+  [['1.2.3', '0.2.3', 'major'],
+    ['1.4.5', '0.2.3', 'major'],
+    ['1.2.3', '2.0.0-pre', 'premajor'],
+    ['1.2.3', '1.3.3', 'minor'],
+    ['1.0.1', '1.1.0-pre', 'preminor'],
+    ['1.2.3', '1.2.4', 'patch'],
+    ['1.2.3', '1.2.4-pre', 'prepatch'],
+    ['0.0.1', '0.0.1-pre', 'prerelease'],
+    ['0.0.1', '0.0.1-pre-2', 'prerelease'],
+    ['1.1.0', '1.1.0-pre', 'prerelease'],
+    ['1.1.0-pre-1', '1.1.0-pre-2', 'prerelease'],
+    ['1.0.0', '1.0.0', null]
+
+  ].forEach(function(v) {
+    var version1 = v[0];
+    var version2 = v[1];
+    var wanted = v[2];
+    var found = diff(version1, version2);
+    var cmd = 'diff(' + version1 + ', ' + version2 + ')';
+    t.equal(found, wanted, cmd + ' === ' + wanted);
+  });
+
+  t.end();
+});
+
+test('\nvalid range test', function(t) {
+  // [range, result]
+  // validRange(range) -> result
+  // translate ranges into their canonical form
+  [['1.0.0 - 2.0.0', '>=1.0.0 <=2.0.0'],
+    ['1.0.0', '1.0.0'],
+    ['>=*', '*'],
+    ['', '*'],
+    ['*', '*'],
+    ['*', '*'],
+    ['>=1.0.0', '>=1.0.0'],
+    ['>1.0.0', '>1.0.0'],
+    ['<=2.0.0', '<=2.0.0'],
+    ['1', '>=1.0.0 <2.0.0'],
+    ['<=2.0.0', '<=2.0.0'],
+    ['<=2.0.0', '<=2.0.0'],
+    ['<2.0.0', '<2.0.0'],
+    ['<2.0.0', '<2.0.0'],
+    ['>= 1.0.0', '>=1.0.0'],
+    ['>=  1.0.0', '>=1.0.0'],
+    ['>=   1.0.0', '>=1.0.0'],
+    ['> 1.0.0', '>1.0.0'],
+    ['>  1.0.0', '>1.0.0'],
+    ['<=   2.0.0', '<=2.0.0'],
+    ['<= 2.0.0', '<=2.0.0'],
+    ['<=  2.0.0', '<=2.0.0'],
+    ['<    2.0.0', '<2.0.0'],
+    ['<        2.0.0', '<2.0.0'],
+    ['>=0.1.97', '>=0.1.97'],
+    ['>=0.1.97', '>=0.1.97'],
+    ['0.1.20 || 1.2.4', '0.1.20||1.2.4'],
+    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
+    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
+    ['>=0.2.3 || <0.0.1', '>=0.2.3||<0.0.1'],
+    ['||', '||'],
+    ['2.x.x', '>=2.0.0 <3.0.0'],
+    ['1.2.x', '>=1.2.0 <1.3.0'],
+    ['1.2.x || 2.x', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
+    ['1.2.x || 2.x', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
+    ['x', '*'],
+    ['2.*.*', '>=2.0.0 <3.0.0'],
+    ['1.2.*', '>=1.2.0 <1.3.0'],
+    ['1.2.* || 2.*', '>=1.2.0 <1.3.0||>=2.0.0 <3.0.0'],
+    ['*', '*'],
+    ['2', '>=2.0.0 <3.0.0'],
+    ['2.3', '>=2.3.0 <2.4.0'],
+    ['~2.4', '>=2.4.0 <2.5.0'],
+    ['~2.4', '>=2.4.0 <2.5.0'],
+    ['~>3.2.1', '>=3.2.1 <3.3.0'],
+    ['~1', '>=1.0.0 <2.0.0'],
+    ['~>1', '>=1.0.0 <2.0.0'],
+    ['~> 1', '>=1.0.0 <2.0.0'],
+    ['~1.0', '>=1.0.0 <1.1.0'],
+    ['~ 1.0', '>=1.0.0 <1.1.0'],
+    ['^0', '>=0.0.0 <1.0.0'],
+    ['^ 1', '>=1.0.0 <2.0.0'],
+    ['^0.1', '>=0.1.0 <0.2.0'],
+    ['^1.0', '>=1.0.0 <2.0.0'],
+    ['^1.2', '>=1.2.0 <2.0.0'],
+    ['^0.0.1', '>=0.0.1 <0.0.2'],
+    ['^0.0.1-beta', '>=0.0.1-beta <0.0.2'],
+    ['^0.1.2', '>=0.1.2 <0.2.0'],
+    ['^1.2.3', '>=1.2.3 <2.0.0'],
+    ['^1.2.3-beta.4', '>=1.2.3-beta.4 <2.0.0'],
+    ['<1', '<1.0.0'],
+    ['< 1', '<1.0.0'],
+    ['>=1', '>=1.0.0'],
+    ['>= 1', '>=1.0.0'],
+    ['<1.2', '<1.2.0'],
+    ['< 1.2', '<1.2.0'],
+    ['1', '>=1.0.0 <2.0.0'],
+    ['>01.02.03', '>1.2.3', true],
+    ['>01.02.03', null],
+    ['~1.2.3beta', '>=1.2.3-beta <1.3.0', true],
+    ['~1.2.3beta', null],
+    ['^ 1.2 ^ 1', '>=1.2.0 <2.0.0 >=1.0.0 <2.0.0']
+  ].forEach(function(v) {
+    var pre = v[0];
+    var wanted = v[1];
+    var loose = v[2];
+    var found = validRange(pre, loose);
+
+    t.equal(found, wanted, 'validRange(' + pre + ') === ' + wanted);
+  });
+
+  t.end();
+});
+
+test('\ncomparators test', function(t) {
+  // [range, comparators]
+  // turn range into a set of individual comparators
+  [['1.0.0 - 2.0.0', [['>=1.0.0', '<=2.0.0']]],
+    ['1.0.0', [['1.0.0']]],
+    ['>=*', [['']]],
+    ['', [['']]],
+    ['*', [['']]],
+    ['*', [['']]],
+    ['>=1.0.0', [['>=1.0.0']]],
+    ['>=1.0.0', [['>=1.0.0']]],
+    ['>=1.0.0', [['>=1.0.0']]],
+    ['>1.0.0', [['>1.0.0']]],
+    ['>1.0.0', [['>1.0.0']]],
+    ['<=2.0.0', [['<=2.0.0']]],
+    ['1', [['>=1.0.0', '<2.0.0']]],
+    ['<=2.0.0', [['<=2.0.0']]],
+    ['<=2.0.0', [['<=2.0.0']]],
+    ['<2.0.0', [['<2.0.0']]],
+    ['<2.0.0', [['<2.0.0']]],
+    ['>= 1.0.0', [['>=1.0.0']]],
+    ['>=  1.0.0', [['>=1.0.0']]],
+    ['>=   1.0.0', [['>=1.0.0']]],
+    ['> 1.0.0', [['>1.0.0']]],
+    ['>  1.0.0', [['>1.0.0']]],
+    ['<=   2.0.0', [['<=2.0.0']]],
+    ['<= 2.0.0', [['<=2.0.0']]],
+    ['<=  2.0.0', [['<=2.0.0']]],
+    ['<    2.0.0', [['<2.0.0']]],
+    ['<\t2.0.0', [['<2.0.0']]],
+    ['>=0.1.97', [['>=0.1.97']]],
+    ['>=0.1.97', [['>=0.1.97']]],
+    ['0.1.20 || 1.2.4', [['0.1.20'], ['1.2.4']]],
+    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
+    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
+    ['>=0.2.3 || <0.0.1', [['>=0.2.3'], ['<0.0.1']]],
+    ['||', [[''], ['']]],
+    ['2.x.x', [['>=2.0.0', '<3.0.0']]],
+    ['1.2.x', [['>=1.2.0', '<1.3.0']]],
+    ['1.2.x || 2.x', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
+    ['1.2.x || 2.x', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
+    ['x', [['']]],
+    ['2.*.*', [['>=2.0.0', '<3.0.0']]],
+    ['1.2.*', [['>=1.2.0', '<1.3.0']]],
+    ['1.2.* || 2.*', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
+    ['1.2.* || 2.*', [['>=1.2.0', '<1.3.0'], ['>=2.0.0', '<3.0.0']]],
+    ['*', [['']]],
+    ['2', [['>=2.0.0', '<3.0.0']]],
+    ['2.3', [['>=2.3.0', '<2.4.0']]],
+    ['~2.4', [['>=2.4.0', '<2.5.0']]],
+    ['~2.4', [['>=2.4.0', '<2.5.0']]],
+    ['~>3.2.1', [['>=3.2.1', '<3.3.0']]],
+    ['~1', [['>=1.0.0', '<2.0.0']]],
+    ['~>1', [['>=1.0.0', '<2.0.0']]],
+    ['~> 1', [['>=1.0.0', '<2.0.0']]],
+    ['~1.0', [['>=1.0.0', '<1.1.0']]],
+    ['~ 1.0', [['>=1.0.0', '<1.1.0']]],
+    ['~ 1.0.3', [['>=1.0.3', '<1.1.0']]],
+    ['~> 1.0.3', [['>=1.0.3', '<1.1.0']]],
+    ['<1', [['<1.0.0']]],
+    ['< 1', [['<1.0.0']]],
+    ['>=1', [['>=1.0.0']]],
+    ['>= 1', [['>=1.0.0']]],
+    ['<1.2', [['<1.2.0']]],
+    ['< 1.2', [['<1.2.0']]],
+    ['1', [['>=1.0.0', '<2.0.0']]],
+    ['1 2', [['>=1.0.0', '<2.0.0', '>=2.0.0', '<3.0.0']]],
+    ['1.2 - 3.4.5', [['>=1.2.0', '<=3.4.5']]],
+    ['1.2.3 - 3.4', [['>=1.2.3', '<3.5.0']]],
+    ['1.2.3 - 3', [['>=1.2.3', '<4.0.0']]],
+    ['>*', [['<0.0.0']]],
+    ['<*', [['<0.0.0']]]
+  ].forEach(function(v) {
+    var pre = v[0];
+    var wanted = v[1];
+    var found = toComparators(v[0]);
+    var jw = JSON.stringify(wanted);
+    t.equivalent(found, wanted, 'toComparators(' + pre + ') === ' + jw);
+  });
+
+  t.end();
+});
+
+test('\ninvalid version numbers', function(t) {
+  ['1.2.3.4',
+   'NOT VALID',
+   1.2,
+   null,
+   'Infinity.NaN.Infinity'
+  ].forEach(function(v) {
+    t.throws(function() {
+      new SemVer(v);
+    }, {name:'TypeError', message:'Invalid Version: ' + v});
+  });
+
+  t.end();
+});
+
+test('\nstrict vs loose version numbers', function(t) {
+  [['=1.2.3', '1.2.3'],
+    ['01.02.03', '1.2.3'],
+    ['1.2.3-beta.01', '1.2.3-beta.1'],
+    ['   =1.2.3', '1.2.3'],
+    ['1.2.3foo', '1.2.3-foo']
+  ].forEach(function(v) {
+    var loose = v[0];
+    var strict = v[1];
+    t.throws(function() {
+      new SemVer(loose);
+    });
+    var lv = new SemVer(loose, true);
+    t.equal(lv.version, strict);
+    t.ok(eq(loose, strict, true));
+    t.throws(function() {
+      eq(loose, strict);
+    });
+    t.throws(function() {
+      new SemVer(strict).compare(loose);
+    });
+  });
+  t.end();
+});
+
+test('\nstrict vs loose ranges', function(t) {
+  [['>=01.02.03', '>=1.2.3'],
+    ['~1.02.03beta', '>=1.2.3-beta <1.3.0']
+  ].forEach(function(v) {
+    var loose = v[0];
+    var comps = v[1];
+    t.throws(function() {
+      new Range(loose);
+    });
+    t.equal(new Range(loose, true).range, comps);
+  });
+  t.end();
+});
+
+test('\nmax satisfying', function(t) {
+  [[['1.2.3', '1.2.4'], '1.2', '1.2.4'],
+    [['1.2.4', '1.2.3'], '1.2', '1.2.4'],
+    [['1.2.3', '1.2.4', '1.2.5', '1.2.6'], '~1.2.3', '1.2.6'],
+    [['1.1.0', '1.2.0', '1.2.1', '1.3.0', '2.0.0b1', '2.0.0b2', '2.0.0b3', '2.0.0', '2.1.0'], '~2.0.0', '2.0.0', true]
+  ].forEach(function(v) {
+    var versions = v[0];
+    var range = v[1];
+    var expect = v[2];
+    var loose = v[3];
+    var actual = semver.maxSatisfying(versions, range, loose);
+    t.equal(actual, expect);
+  });
+  t.end();
+});
diff --git a/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js b/wrt/build/node_modules/rocambole-linebreak/node_modules/semver/test/ltr.js
new file mode 100644 (file)
index 0000000..0f7167d
--- /dev/null
@@ -0,0 +1,181 @@
+var tap = require('tap');
+var test = tap.test;
+var semver = require('../semver.js');
+var ltr = semver.ltr;
+
+test('\nltr tests', function(t) {
+  // [range, version, loose]
+  // Version should be less than range
+  [
+    ['~1.2.2', '1.2.1'],
+    ['~0.6.1-1', '0.6.1-0'],
+    ['1.0.0 - 2.0.0', '0.0.1'],
+    ['1.0.0-beta.2', '1.0.0-beta.1'],
+    ['1.0.0', '0.0.0'],
+    ['>=2.0.0', '1.1.1'],
+    ['>=2.0.0', '1.2.9'],
+    ['>2.0.0', '2.0.0'],
+    ['0.1.20 || 1.2.4', '0.1.5'],
+    ['2.x.x', '1.0.0'],
+    ['1.2.x', '1.1.0'],
+    ['1.2.x || 2.x', '1.0.0'],
+    ['2.*.*', '1.0.1'],
+    ['1.2.*', '1.1.3'],
+    ['1.2.* || 2.*', '1.1.9999'],
+    ['2', '1.0.0'],
+    ['2.3', '2.2.2'],
+    ['~2.4', '2.3.0'], // >=2.4.0 <2.5.0
+    ['~2.4', '2.3.5'],
+    ['~>3.2.1', '3.2.0'], // >=3.2.1 <3.3.0
+    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
+    ['~>1', '0.2.4'],
+    ['~> 1', '0.2.3'],
+    ['~1.0', '0.1.2'], // >=1.0.0 <1.1.0
+    ['~ 1.0', '0.1.0'],
+    ['>1.2', '1.2.0'],
+    ['> 1.2', '1.2.1'],
+    ['1', '0.0.0beta', true],
+    ['~v0.5.4-pre', '0.5.4-alpha'],
+    ['~v0.5.4-pre', '0.5.4-alpha'],
+    ['=0.7.x', '0.6.0'],
+    ['=0.7.x', '0.6.0-asdf'],
+    ['>=0.7.x', '0.6.0'],
+    ['~1.2.2', '1.2.1'],
+    ['1.0.0 - 2.0.0', '0.2.3'],
+    ['1.0.0', '0.0.1'],
+    ['>=2.0.0', '1.0.0'],
+    ['>=2.0.0', '1.9999.9999'],
+    ['>=2.0.0', '1.2.9'],
+    ['>2.0.0', '2.0.0'],
+    ['>2.0.0', '1.2.9'],
+    ['2.x.x', '1.1.3'],
+    ['1.2.x', '1.1.3'],
+    ['1.2.x || 2.x', '1.1.3'],
+    ['2.*.*', '1.1.3'],
+    ['1.2.*', '1.1.3'],
+    ['1.2.* || 2.*', '1.1.3'],
+    ['2', '1.9999.9999'],
+    ['2.3', '2.2.1'],
+    ['~2.4', '2.3.0'], // >=2.4.0 <2.5.0
+    ['~>3.2.1', '2.3.2'], // >=3.2.1 <3.3.0
+    ['~1', '0.2.3'], // >=1.0.0 <2.0.0
+    ['~>1', '0.2.3'],
+    ['~1.0', '0.0.0'], // >=1.0.0 <1.1.0
+    ['>1', '1.0.0'],
+    ['2', '1.0.0beta', true],
+    ['>1', '1.0.0beta', true],
+    ['> 1', '1.0.0beta', true],
+    ['=0.7.x', '0.6.2'],
+    ['=0.7.x', '0.7.0-asdf'],
+    ['^1', '1.0.0-0'],
+    ['>=0.7.x', '0.7.0-asdf'],
+    ['1', '1.0.0beta', true],
+    ['>=0.7.x', '0.6.2'],
+    ['>1.2.3', '1.3.0-alpha']
+  ].forEach(function(tuple) {
+    var range = tuple[0];
+    var version = tuple[1];
+    var loose = tuple[2] || false;
+    var msg = 'ltr(' + version + ', ' + range + ', ' + loose + ')';
+    t.ok(ltr(version, range, loose), msg);
+  });
+  t.end();
+});
+
+test('\nnegative ltr tests', function(t) {
+  // [range, version, loose]
+  // Version should NOT be less than range
+  [
+    ['~ 1.0', '1.1.0'],
+    ['~0.6.1-1', '0.6.1-1'],
+    ['1.0.0 - 2.0.0', '1.2.3'],
+    ['1.0.0 - 2.0.0', '2.9.9'],
+    ['1.0.0', '1.0.0'],
+    ['>=*', '0.2.4'],
+    ['', '1.0.0', true],
+    ['*', '1.2.3'],
+    ['>=1.0.0', '1.0.0'],
+    ['>=1.0.0', '1.0.1'],
+    ['>=1.0.0', '1.1.0'],
+    ['>1.0.0', '1.0.1'],
+    ['>1.0.0', '1.1.0'],
+    ['<=2.0.0', '2.0.0'],
+    ['<=2.0.0', '1.9999.9999'],
+    ['<=2.0.0', '0.2.9'],
+    ['<2.0.0', '1.9999.9999'],
+    ['<2.0.0', '0.2.9'],
+    ['>= 1.0.0', '1.0.0'],
+    ['>=  1.0.0', '1.0.1'],
+    ['>=   1.0.0', '1.1.0'],
+    ['> 1.0.0', '1.0.1'],
+    ['>  1.0.0', '1.1.0'],
+    ['<=   2.0.0', '2.0.0'],
+    ['<= 2.0.0', '1.9999.9999'],
+    ['<=  2.0.0', '0.2.9'],
+    ['<    2.0.0', '1.9999.9999'],
+    ['<\t2.0.0', '0.2.9'],
+    ['>=0.1.97', 'v0.1.97'],
+    ['>=0.1.97', '0.1.97'],
+    ['0.1.20 || 1.2.4', '1.2.4'],
+    ['0.1.20 || >1.2.4', '1.2.4'],
+    ['0.1.20 || 1.2.4', '1.2.3'],
+    ['0.1.20 || 1.2.4', '0.1.20'],
+    ['>=0.2.3 || <0.0.1', '0.0.0'],
+    ['>=0.2.3 || <0.0.1', '0.2.3'],
+    ['>=0.2.3 || <0.0.1', '0.2.4'],
+    ['||', '1.3.4'],
+    ['2.x.x', '2.1.3'],
+    ['1.2.x', '1.2.3'],
+    ['1.2.x || 2.x', '2.1.3'],
+    ['1.2.x || 2.x', '1.2.3'],
+    ['x', '1.2.3'],
+    ['2.*.*', '2.1.3'],
+    ['1.2.*', '1.2.3'],
+    ['1.2.* || 2.*', '2.1.3'],
+    ['1.2.* || 2.*', '1.2.3'],
+    ['1.2.* || 2.*', '1.2.3'],
+    ['*', '1.2.3'],
+    ['2', '2.1.2'],
+    ['2.3', '2.3.1'],
+    ['~2.4', '2.4.0'], // >=2.4.0 <2.5.0
+    ['~2.4', '2.4.5'],
+    ['~>3.2.1', '3.2.2'], // >=3.2.1 <3.3.0
+    ['~1', '1.2.3'], // >=1.0.0 <2.0.0
+    ['~>1', '1.2.3'],
+    ['~> 1', '1.2.3'],
+    ['~1.0', '1.0.2'], // >=1.0.0 <1.1.0
+    ['~ 1.0', '1.0.2'],
+    ['>=1', '1.0.0'],
+    ['>= 1', '1.0.0'],
+    ['<1.2', '1.1.1'],
+    ['< 1.2', '1.1.1'],
+    ['~v0.5.4-pre', '0.5.5'],
+    ['~v0.5.4-pre', '0.5.4'],
+    ['=0.7.x', '0.7.2'],
+    ['>=0.7.x', '0.7.2'],
+    ['<=0.7.x', '0.6.2'],
+    ['>0.2.3 >0.2.4 <=0.2.5', '0.2.5'],
+    ['>=0.2.3 <=0.2.4', '0.2.4'],
+    ['1.0.0 - 2.0.0', '2.0.0'],
+    ['^3.0.0', '4.0.0'],
+    ['^1.0.0 || ~2.0.1', '2.0.0'],
+    ['^0.1.0 || ~3.0.1 || 5.0.0', '3.2.0'],
+    ['^0.1.0 || ~3.0.1 || 5.0.0', '1.0.0beta', true],
+    ['^0.1.0 || ~3.0.1 || 5.0.0', '5.0.0-0', true],
+    ['^0.1.0 || ~3.0.1 || >4 <=5.0.0', '3.5.0'],
+    ['^1.0.0alpha', '1.0.0beta', true],
+    ['~1.0.0alpha', '1.0.0beta', true],
+    ['^1.0.0-alpha', '1.0.0beta', true],
+    ['~1.0.0-alpha', '1.0.0beta', true],
+    ['^1.0.0-alpha', '1.0.0-beta'],
+    ['~1.0.0-alpha', '1.0.0-beta'],
+    ['=0.1.0', '1.0.0']
+  ].forEach(function(tuple) {
+    var range = tuple[0];
+    var version = tuple[1];
+    var loose = tuple[2] || false;
+    var msg = '!ltr(' + version + ', ' + range + ', ' + loose + ')';
+    t.notOk(ltr(version, range, loose), msg);
+  });
+  t.end();
+});
diff --git a/wrt/build/node_modules/rocambole-linebreak/package.json b/wrt/build/node_modules/rocambole-linebreak/package.json
new file mode 100644 (file)
index 0000000..aefa38e
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole-linebreak@^1.0.0",
+        "scope": null,
+        "escapedName": "rocambole-linebreak",
+        "name": "rocambole-linebreak",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole-linebreak@>=1.0.0 <2.0.0",
+  "_id": "rocambole-linebreak@1.0.2",
+  "_inCache": true,
+  "_location": "/rocambole-linebreak",
+  "_nodeVersion": "4.2.1",
+  "_npmOperationalInternal": {
+    "host": "packages-16-east.internal.npmjs.com",
+    "tmp": "tmp/rocambole-linebreak-1.0.2.tgz_1464159154870_0.11867010220885277"
+  },
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.14.7",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole-linebreak@^1.0.0",
+    "scope": null,
+    "escapedName": "rocambole-linebreak",
+    "name": "rocambole-linebreak",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.2.tgz",
+  "_shasum": "03621515b43b4721c97e5a1c1bca5a0366368f2f",
+  "_shrinkwrap": null,
+  "_spec": "rocambole-linebreak@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "contact@millermedeiros.com",
+    "url": "http://millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole-linebreak/issues"
+  },
+  "dependencies": {
+    "debug": "^2.1.3",
+    "rocambole-token": "^1.2.1",
+    "semver": "^4.3.1"
+  },
+  "description": "helpers for rocambole AST line break manipulation",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "03621515b43b4721c97e5a1c1bca5a0366368f2f",
+    "tarball": "https://registry.npmjs.org/rocambole-linebreak/-/rocambole-linebreak-1.0.2.tgz"
+  },
+  "gitHead": "ceb20a22cd1021aeb340926a0eb3109423ffccb4",
+  "homepage": "https://github.com/millermedeiros/rocambole-linebreak",
+  "jshintConfig": {
+    "node": true,
+    "eqnull": true
+  },
+  "keywords": [
+    "rocambole",
+    "ast",
+    "esformatter",
+    "linebreak"
+  ],
+  "license": "MIT",
+  "main": "rocambole-linebreak.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole-linebreak",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole-linebreak.git"
+  },
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "version": "1.0.2"
+}
diff --git a/wrt/build/node_modules/rocambole-linebreak/rocambole-linebreak.js b/wrt/build/node_modules/rocambole-linebreak/rocambole-linebreak.js
new file mode 100644 (file)
index 0000000..1595b73
--- /dev/null
@@ -0,0 +1,225 @@
+'use strict';
+
+// Line break helpers
+
+var _tk = require('rocambole-token');
+var debug = require('debug');
+var debugBefore = debug('rocambole:br:before');
+var debugAfter = debug('rocambole:br:after');
+var debugBetween = debug('rocambole:br:between');
+
+// yeah, we use semver to parse integers. it's lame but works and will give
+// more flexibility while still keeping a format that is easy to read
+var semver = require('semver');
+
+// fallback in case plugin author forgets to call setOptions
+var _curOpts = {
+  value: '\n'
+};
+
+
+// ---
+
+
+exports.setOptions = setOptions;
+function setOptions(opts) {
+  _curOpts = opts;
+}
+
+
+exports.limit = limit;
+function limit(token, typeOrValue) {
+  limitBefore(token, typeOrValue);
+  limitAfter(token, typeOrValue);
+}
+
+
+exports.limitBefore = limitBefore;
+function limitBefore(token, typeOrValue) {
+  var expected = expectedBefore(typeOrValue);
+  debugBefore(
+    'typeOrValue: %s, expected: %s, value: %s',
+    typeOrValue, expected, token && token.value
+  );
+  if (expected < 0) return; // noop
+  var start = getStartToken(token);
+  limitInBetween('before', start, token, expected);
+}
+
+
+exports.limitAfter = limitAfter;
+function limitAfter(token, typeOrValue) {
+  var expected = expectedAfter(typeOrValue);
+  debugAfter(
+    'typeOrValue: %s, expected: %s, value: %s',
+    typeOrValue, expected, token && token.value
+  );
+  if (expected < 0) return; // noop
+  var end = getEndToken(token);
+  limitInBetween('after', token, end, expected);
+}
+
+exports.expectedBefore = expectedBefore;
+function expectedBefore(typeOrValue) {
+  return getExpect('before', typeOrValue);
+}
+
+exports.expectedAfter = expectedAfter;
+function expectedAfter(typeOrValue) {
+  return getExpect('after', typeOrValue);
+}
+
+
+function getExpect(location, typeOrValue) {
+  var expected;
+
+  // we allow expected value (number) as 2nd argument or the node type (string)
+  if (typeof typeOrValue === 'string') {
+    expected = _curOpts[location][typeOrValue];
+  } else {
+    expected = typeOrValue;
+  }
+
+  // default is noop, explicit is better than implicit
+  expected = expected != null ? expected : -1;
+
+  if (typeof expected === 'boolean') {
+    // if user sets booleans by mistake we simply add one if missing (true)
+    // or remove all if false
+    expected = expected ? '>=1' : 0;
+  }
+
+  if (expected < 0) {
+    // noop
+    return expected;
+  } else if (typeof expected === 'number') {
+    return String(expected);
+  } else {
+    return expected;
+  }
+}
+
+
+function limitInBetween(location, start, end, expected, isEof) {
+  var n = getDiff(start, end, expected);
+  debugBetween('diff: %d', n);
+  if (n) {
+    _tk.removeInBetween(start, end, 'WhiteSpace');
+  }
+  if (n < 0) {
+    _tk.removeInBetween(start, end, function(token) {
+      return token.type === 'LineBreak' && n++ < 0 &&
+        (isEof || !siblingIsComment(token));
+    });
+  } else if (n > 0) {
+    var target = location === 'after' ? start : end;
+    var insertNextTo = _tk[location];
+    while (n-- > 0) {
+      insertNextTo(target, {
+        type: 'LineBreak',
+        value: _curOpts.value
+      });
+    }
+  }
+}
+
+
+function siblingIsComment(token) {
+  return _tk.isComment(_tk.findPrev(token, _tk.isNotEmpty)) ||
+    _tk.isComment(_tk.findNext(token, _tk.isNotEmpty));
+}
+
+
+function getDiff(start, end, expected) {
+  // start will only be equal to end if it's start or file
+  if (start === end) return 0;
+  var count = countBrInBetween(start, end);
+  // yeah, it's ugly to strings to compare integers but was quickest solution
+  var vCount = String(count) + '.0.0';
+  if (semver.satisfies(vCount, expected)) {
+    return 0;
+  } else {
+    return getSatisfyingMatch(count, vCount, expected) - count;
+  }
+}
+
+
+function getSatisfyingMatch(count, vCount, expected) {
+  var result;
+  var diff = semver.gtr(vCount, expected) ? -1 : 1;
+  count += diff;
+  while (result == null && count >= 0 && count < 100) {
+    if (semver.satisfies(String(count) + '.0.0', expected)) {
+      result = count;
+    }
+    count += diff;
+  }
+  return parseInt(result, 10);
+}
+
+
+function countBrInBetween(start, end) {
+  var count = 0;
+  _tk.eachInBetween(start, end, function(token) {
+    if (_tk.isBr(token)) count++;
+  });
+  return count;
+}
+
+
+function getEndToken(token) {
+  var end = _tk.findNextNonEmpty(token);
+  if (shouldSkipToken(end)) {
+    end = _tk.findNextNonEmpty(end);
+  }
+  return end ? end : token.root.endToken;
+}
+
+
+function shouldSkipToken(token) {
+  // if comment is at same line we skip it unless it has a specific rule that
+  // would add line breaks
+  var result = _tk.isComment(token) && !isOnSeparateLine(token);
+  return result && getExpect('before', token.type) <= 0;
+}
+
+
+function isOnSeparateLine(token) {
+  return _tk.isBr(token.prev) || (
+    _tk.isEmpty(token.prev) && _tk.isBr(token.prev.prev)
+    );
+}
+
+
+function getStartToken(token) {
+  var end = _tk.findPrevNonEmpty(token);
+  return end ? end : token.root.startToken;
+}
+
+
+exports.limitBeforeEndOfFile = function(ast, amount) {
+  var typeOrValue = amount != null ? amount : 'EndOfFile';
+  var expected = getExpect('before', typeOrValue);
+
+  if (expected < 0) return; // noop
+
+  var lastNonEmpty = _tk.isEmpty(ast.endToken) ?
+    _tk.findPrevNonEmpty(ast.endToken) :
+    ast.endToken;
+
+  if (lastNonEmpty) {
+    limitInBetween('after', lastNonEmpty, null, expected, true);
+  } else {
+    do {
+      var br = {
+        type: 'LineBreak',
+        value: _curOpts.value
+      };
+      if (ast.startToken) {
+        _tk.after(ast.startToken, br);
+      } else {
+        ast.startToken = ast.endToken = br;
+      }
+    } while (--expected);
+  }
+};
diff --git a/wrt/build/node_modules/rocambole-node/package.json b/wrt/build/node_modules/rocambole-node/package.json
new file mode 100644 (file)
index 0000000..55744bf
--- /dev/null
@@ -0,0 +1,89 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole-node@~1.0",
+        "scope": null,
+        "escapedName": "rocambole-node",
+        "name": "rocambole-node",
+        "rawSpec": "~1.0",
+        "spec": ">=1.0.0 <1.1.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole-node@>=1.0.0 <1.1.0",
+  "_id": "rocambole-node@1.0.0",
+  "_inCache": true,
+  "_location": "/rocambole-node",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "1.3.14",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole-node@~1.0",
+    "scope": null,
+    "escapedName": "rocambole-node",
+    "name": "rocambole-node",
+    "rawSpec": "~1.0",
+    "spec": ">=1.0.0 <1.1.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz",
+  "_shasum": "db5b49de7407b0080dd514872f28e393d0f7ff3f",
+  "_shrinkwrap": null,
+  "_spec": "rocambole-node@~1.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "contact@millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole-node/issues"
+  },
+  "dependencies": {},
+  "description": "Helpers to traverse and manipulate rocambole AST nodes",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "db5b49de7407b0080dd514872f28e393d0f7ff3f",
+    "tarball": "https://registry.npmjs.org/rocambole-node/-/rocambole-node-1.0.0.tgz"
+  },
+  "homepage": "https://github.com/millermedeiros/rocambole-node",
+  "jshintConfig": {
+    "node": true,
+    "boss": true
+  },
+  "keywords": [
+    "rocambole",
+    "ast",
+    "helper",
+    "node"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole-node",
+  "optionalDependencies": {},
+  "readme": "# rocambole-node\n\nHelpers to manipulate and traverse\n[rocambole](https://github.com/millermedeiros/rocambole) AST nodes.\n\n\n## Why?\n\nCreated mainly to be used by\n[esindent](https://github.com/millermedeiros/esindent/) and\n[esformatter](https://github.com/millermedeiros/esformatter/).\n\n\n## License\n\nReleased under the MIT License.\n\n",
+  "readmeFilename": "README.md",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole-node.git"
+  },
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "version": "1.0.0"
+}
diff --git a/wrt/build/node_modules/rocambole-token/package.json b/wrt/build/node_modules/rocambole-token/package.json
new file mode 100644 (file)
index 0000000..cecfe53
--- /dev/null
@@ -0,0 +1,95 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole-token@^1.1.2",
+        "scope": null,
+        "escapedName": "rocambole-token",
+        "name": "rocambole-token",
+        "rawSpec": "^1.1.2",
+        "spec": ">=1.1.2 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole-token@>=1.1.2 <2.0.0",
+  "_id": "rocambole-token@1.2.1",
+  "_inCache": true,
+  "_location": "/rocambole-token",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "1.4.17",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole-token@^1.1.2",
+    "scope": null,
+    "escapedName": "rocambole-token",
+    "name": "rocambole-token",
+    "rawSpec": "^1.1.2",
+    "spec": ">=1.1.2 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter",
+    "/esformatter-literal-notation",
+    "/rocambole-indent",
+    "/rocambole-linebreak",
+    "/rocambole-whitespace"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz",
+  "_shasum": "c785df7428dc3cb27ad7897047bd5238cc070d35",
+  "_shrinkwrap": null,
+  "_spec": "rocambole-token@^1.1.2",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "contact@millermedeiros.com",
+    "url": "http://blog.millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole-token/issues"
+  },
+  "dependencies": {},
+  "description": "Helpers for rocambole AST token manipulation",
+  "devDependencies": {
+    "jasmine-node": "~1.11.0",
+    "rocambole": "~0.2.3"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "c785df7428dc3cb27ad7897047bd5238cc070d35",
+    "tarball": "https://registry.npmjs.org/rocambole-token/-/rocambole-token-1.2.1.tgz"
+  },
+  "gitHead": "fc03674b38f288dc545db0a5b2bdfd2d96cab170",
+  "homepage": "https://github.com/millermedeiros/rocambole-token",
+  "jshintConfig": {
+    "node": true
+  },
+  "keywords": [
+    "ast",
+    "token",
+    "rocambole"
+  ],
+  "license": "MIT",
+  "main": "./index.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole-token",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole-token.git"
+  },
+  "scripts": {
+    "test": "jasmine-node test/"
+  },
+  "version": "1.2.1"
+}
diff --git a/wrt/build/node_modules/rocambole-whitespace/package.json b/wrt/build/node_modules/rocambole-whitespace/package.json
new file mode 100644 (file)
index 0000000..b55c31c
--- /dev/null
@@ -0,0 +1,95 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole-whitespace@^1.0.0",
+        "scope": null,
+        "escapedName": "rocambole-whitespace",
+        "name": "rocambole-whitespace",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole-whitespace@>=1.0.0 <2.0.0",
+  "_id": "rocambole-whitespace@1.0.0",
+  "_inCache": true,
+  "_location": "/rocambole-whitespace",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.5.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole-whitespace@^1.0.0",
+    "scope": null,
+    "escapedName": "rocambole-whitespace",
+    "name": "rocambole-whitespace",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz",
+  "_shasum": "63330949256b29941f59b190459f999c6b1d3bf9",
+  "_shrinkwrap": null,
+  "_spec": "rocambole-whitespace@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "contact@millermedeiros.com",
+    "url": "http://millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole-whitespace/issues"
+  },
+  "dependencies": {
+    "debug": "^2.1.3",
+    "repeat-string": "^1.5.0",
+    "rocambole-token": "^1.2.1"
+  },
+  "description": "helpers for rocambole AST whitespace manipulation",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "63330949256b29941f59b190459f999c6b1d3bf9",
+    "tarball": "https://registry.npmjs.org/rocambole-whitespace/-/rocambole-whitespace-1.0.0.tgz"
+  },
+  "gitHead": "3b8a6638b10e417f4844cf78f29903eac0a10841",
+  "homepage": "https://github.com/millermedeiros/rocambole-whitespace",
+  "jshintConfig": {
+    "node": true,
+    "eqnull": true
+  },
+  "keywords": [
+    "esformatter",
+    "rocambole",
+    "whitespace",
+    "ast"
+  ],
+  "license": "MIT",
+  "main": "rocambole-whitespace.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole-whitespace",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole-whitespace.git"
+  },
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "version": "1.0.0"
+}
diff --git a/wrt/build/node_modules/rocambole/CHANGELOG.md b/wrt/build/node_modules/rocambole/CHANGELOG.md
new file mode 100644 (file)
index 0000000..360e713
--- /dev/null
@@ -0,0 +1,88 @@
+# Changelog
+
+## v0.7.0 (2015/08/26)
+
+ - Ignore TryStatement's "handlers" property in favor of "handler"
+
+## v0.6.0 (2015/03/30)
+
+ - allow custom parser. (#27)
+
+## v0.5.1 (2015/03/19)
+
+ - make it compatible with esprima@2.1 (don't loop through the same CatchClause
+  twice).
+
+## v0.5.0 (2015/02/25)
+
+ - updated `esprima` to v2.0 because of ES6 features and to avoid `esprima-fb`
+   bug related to RegExp.
+
+## v0.4.0 (2014/07/14)
+
+ - aliased `rocambole.recursive` as `rocambole.walk` to avoid confusions.
+ - switched `esprima` dependency to `esprima-fb` because of ES6 features.
+
+## v0.3.6 (2014/06/23)
+
+ - really handle sparse arrays (eg. `[,]`), fixes moonwalk. (#15)
+
+## v0.3.5 (2014/06/23)
+
+ - handle sparse arrays (eg. `[,]`). (#15)
+
+## v0.3.4 (2014/06/23)
+
+ - only add `BlockComment.originalIndent` if `WhiteSpace` is on the start of
+   a line.
+
+## v0.3.3 (2014/04/26)
+
+ - add `toString` to empty programs AST (#16)
+
+## v0.3.2 (2014/01/17)
+
+ - exports `BYPASS_RECURSION` (#8)
+ - fix error if input is empty (#12)
+ - support anything that implements `toString()` as input (#13)
+
+## v0.3.1 (2013/12/15)
+
+ - fix `originalIndent` on `BlockComment` when prev token is not `WhiteSpace`.
+
+## v0.3.0 (2013/12/15)
+
+ - add `originalIndent` to `BlockComment` (#11)
+
+## v0.2.3 (2013/01/08)
+
+ - improve `rocambole.parse()` performance by 4500%. (#4)
+ - improve `rocambole.moonwalk()` performance by 11000%.
+
+## v0.2.2 (2012/12/19)
+
+ - fix consecutive comments before start of program. (#3)
+
+## v0.2.1 (2012/12/13)
+
+ - fix `loc` info on `WhiteSpace` and `LineBreak` tokens. (#2)
+
+## v0.2.0 (2012/12/09)
+
+ - Deprecated:
+   - `token.before()`
+   - `token.after()`
+   - `token.remove()`
+   - `node.getTokens()`
+   - `ast.nodes`
+ - avoid recursion over comments.
+ - fix weird bug on esformatter introduced on v0.1.1 related to `token._ast`
+   property.
+
+## v0.1.1 (2012/12/08)
+
+ - Improve token manipulation methods behavior (`before`, `after`, `remove`)
+
+## v0.1.0 (2012/12/06)
+
+ - Initial release
diff --git a/wrt/build/node_modules/rocambole/node_modules/.bin/esparse b/wrt/build/node_modules/rocambole/node_modules/.bin/esparse
new file mode 120000 (symlink)
index 0000000..7423b18
--- /dev/null
@@ -0,0 +1 @@
+../esprima/bin/esparse.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/rocambole/node_modules/.bin/esvalidate b/wrt/build/node_modules/rocambole/node_modules/.bin/esvalidate
new file mode 120000 (symlink)
index 0000000..16069ef
--- /dev/null
@@ -0,0 +1 @@
+../esprima/bin/esvalidate.js
\ No newline at end of file
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/ChangeLog b/wrt/build/node_modules/rocambole/node_modules/esprima/ChangeLog
new file mode 100644 (file)
index 0000000..fd687ae
--- /dev/null
@@ -0,0 +1,174 @@
+2016-08-23: Version 2.7.3
+
+      * Fix tokenizer confusion with a comment (issue 1493, 1516)
+
+2016-02-02: Version 2.7.2
+
+      * Fix out-of-bound error location in an invalid string literal (issue 1457)
+      * Fix shorthand object destructuring defaults in variable declarations (issue 1459)
+
+2015-12-10: Version 2.7.1
+
+      * Do not allow trailing comma in a variable declaration (issue 1360)
+      * Fix assignment to `let` in non-strict mode (issue 1376)
+      * Fix missing delegate property in YieldExpression (issue 1407)
+
+2015-10-22: Version 2.7.0
+
+      * Fix the handling of semicolon in a break statement (issue 1044)
+      * Run the test suite with major web browsers (issue 1259, 1317)
+      * Allow `let` as an identifier in non-strict mode (issue 1289)
+      * Attach orphaned comments as `innerComments` (issue 1328)
+      * Add the support for token delegator (issue 1332)
+
+2015-09-01: Version 2.6.0
+
+      * Properly allow or prohibit `let` in a binding identifier/pattern (issue 1048, 1098)
+      * Add sourceType field for Program node (issue 1159)
+      * Ensure that strict mode reserved word binding throw an error (issue 1171)
+      * Run the test suite with Node.js and IE 11 on Windows (issue 1294)
+      * Allow binding pattern with no initializer in a for statement (issue 1301)
+
+2015-07-31: Version 2.5.0
+
+      * Run the test suite in a browser environment (issue 1004)
+      * Ensure a comma between imported default binding and named imports (issue 1046)
+      * Distinguish `yield` as a keyword vs an identifier (issue 1186)
+      * Support ES6 meta property `new.target` (issue 1203)
+      * Fix the syntax node for yield with expression (issue 1223)
+      * Fix the check of duplicated proto in property names (issue 1225)
+      * Fix ES6 Unicode escape in identifier name (issue 1229)
+      * Support ES6 IdentifierStart and IdentifierPart (issue 1232)
+      * Treat await as a reserved word when parsing as a module (issue 1234)
+      * Recognize identifier characters from Unicode SMP (issue 1244)
+      * Ensure that export and import can be followed by a comma (issue 1250)
+      * Fix yield operator precedence (issue 1262)
+
+2015-07-01: Version 2.4.1
+
+      * Fix some cases of comment attachment (issue 1071, 1175)
+      * Fix the handling of destructuring in function arguments (issue 1193)
+      * Fix invalid ranges in assignment expression (issue 1201)
+
+2015-06-26: Version 2.4.0
+
+      * Support ES6 for-of iteration (issue 1047)
+      * Support ES6 spread arguments (issue 1169)
+      * Minimize npm payload (issue 1191)
+
+2015-06-16: Version 2.3.0
+
+      * Support ES6 generator (issue 1033)
+      * Improve parsing of regular expressions with `u` flag (issue 1179)
+
+2015-04-17: Version 2.2.0
+
+      * Support ES6 import and export declarations (issue 1000)
+      * Fix line terminator before arrow not recognized as error (issue 1009)
+      * Support ES6 destructuring (issue 1045)
+      * Support ES6 template literal (issue 1074)
+      * Fix the handling of invalid/incomplete string escape sequences (issue 1106)
+      * Fix ES3 static member access restriction (issue 1120)
+      * Support for `super` in ES6 class (issue 1147)
+
+2015-03-09: Version 2.1.0
+
+      * Support ES6 class (issue 1001)
+      * Support ES6 rest parameter (issue 1011)
+      * Expand the location of property getter, setter, and methods (issue 1029)
+      * Enable TryStatement transition to a single handler (issue 1031)
+      * Support ES6 computed property name (issue 1037)
+      * Tolerate unclosed block comment (issue 1041)
+      * Support ES6 lexical declaration (issue 1065)
+
+2015-02-06: Version 2.0.0
+
+      * Support ES6 arrow function (issue 517)
+      * Support ES6 Unicode code point escape (issue 521)
+      * Improve the speed and accuracy of comment attachment (issue 522)
+      * Support ES6 default parameter (issue 519)
+      * Support ES6 regular expression flags (issue 557)
+      * Fix scanning of implicit octal literals (issue 565)
+      * Fix the handling of automatic semicolon insertion (issue 574)
+      * Support ES6 method definition (issue 620)
+      * Support ES6 octal integer literal (issue 621)
+      * Support ES6 binary integer literal (issue 622)
+      * Support ES6 object literal property value shorthand (issue 624)
+
+2015-03-03: Version 1.2.5
+
+      * Fix scanning of implicit octal literals (issue 565)
+
+2015-02-05: Version 1.2.4
+
+      * Fix parsing of LeftHandSideExpression in ForInStatement (issue 560)
+      * Fix the handling of automatic semicolon insertion (issue 574)
+
+2015-01-18: Version 1.2.3
+
+      * Fix division by this (issue 616)
+
+2014-05-18: Version 1.2.2
+
+      * Fix duplicated tokens when collecting comments (issue 537)
+
+2014-05-04: Version 1.2.1
+
+      * Ensure that Program node may still have leading comments (issue 536)
+
+2014-04-29: Version 1.2.0
+
+      * Fix semicolon handling for expression statement (issue 462, 533)
+      * Disallow escaped characters in regular expression flags (issue 503)
+      * Performance improvement for location tracking (issue 520)
+      * Improve the speed of comment attachment (issue 522)
+
+2014-03-26: Version 1.1.1
+
+      * Fix token handling of forward slash after an array literal (issue 512)
+
+2014-03-23: Version 1.1.0
+
+      * Optionally attach comments to the owning syntax nodes (issue 197)
+      * Simplify binary parsing with stack-based shift reduce (issue 352)
+      * Always include the raw source of literals (issue 376)
+      * Add optional input source information (issue 386)
+      * Tokenizer API for pure lexical scanning (issue 398)
+      * Improve the web site and its online demos (issue 337, 400, 404)
+      * Performance improvement for location tracking (issue 417, 424)
+      * Support HTML comment syntax (issue 451)
+      * Drop support for legacy browsers (issue 474)
+
+2013-08-27: Version 1.0.4
+
+      * Minimize the payload for packages (issue 362)
+      * Fix missing cases on an empty switch statement (issue 436)
+      * Support escaped ] in regexp literal character classes (issue 442)
+      * Tolerate invalid left-hand side expression (issue 130)
+
+2013-05-17: Version 1.0.3
+
+      * Variable declaration needs at least one declarator (issue 391)
+      * Fix benchmark's variance unit conversion (issue 397)
+      * IE < 9: \v should be treated as vertical tab (issue 405)
+      * Unary expressions should always have prefix: true (issue 418)
+      * Catch clause should only accept an identifier (issue 423)
+      * Tolerate setters without parameter (issue 426)
+
+2012-11-02: Version 1.0.2
+
+    Improvement:
+
+      * Fix esvalidate JUnit output upon a syntax error (issue 374)
+
+2012-10-28: Version 1.0.1
+
+    Improvements:
+
+      * esvalidate understands shebang in a Unix shell script (issue 361)
+      * esvalidate treats fatal parsing failure as an error (issue 361)
+      * Reduce Node.js package via .npmignore (issue 362)
+
+2012-10-22: Version 1.0.0
+
+    Initial release.
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/LICENSE.BSD b/wrt/build/node_modules/rocambole/node_modules/esprima/LICENSE.BSD
new file mode 100644 (file)
index 0000000..17557ec
--- /dev/null
@@ -0,0 +1,21 @@
+Copyright (c) jQuery Foundation, Inc. and Contributors, All Rights Reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+  * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+  * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/README.md b/wrt/build/node_modules/rocambole/node_modules/esprima/README.md
new file mode 100644 (file)
index 0000000..749454f
--- /dev/null
@@ -0,0 +1,27 @@
+[![NPM version](https://img.shields.io/npm/v/esprima.svg)](https://www.npmjs.com/package/esprima)
+[![npm download](https://img.shields.io/npm/dm/esprima.svg)](https://www.npmjs.com/package/esprima)
+[![Build Status](https://img.shields.io/travis/jquery/esprima/master.svg)](https://travis-ci.org/jquery/esprima)
+[![Coverage Status](https://img.shields.io/codecov/c/github/jquery/esprima/master.svg)](https://codecov.io/github/jquery/esprima)
+
+**Esprima** ([esprima.org](http://esprima.org), BSD license) is a high performance,
+standard-compliant [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm)
+parser written in ECMAScript (also popularly known as
+[JavaScript](https://en.wikipedia.org/wiki/JavaScript)).
+Esprima is created and maintained by [Ariya Hidayat](https://twitter.com/ariyahidayat),
+with the help of [many contributors](https://github.com/jquery/esprima/contributors).
+
+### Features
+
+- Full support for ECMAScript 6 ([ECMA-262](http://www.ecma-international.org/publications/standards/Ecma-262.htm))
+- Sensible [syntax tree format](https://github.com/estree/estree/blob/master/spec.md) as standardized by [ESTree project](https://github.com/estree/estree)
+- Optional tracking of syntax node location (index-based and line-column)
+- [Heavily tested](http://esprima.org/test/ci.html) (~1250 [unit tests](https://github.com/jquery/esprima/tree/master/test/fixtures) with [full code coverage](https://codecov.io/github/jquery/esprima))
+
+Esprima serves as a **building block** for some JavaScript
+language tools, from [code instrumentation](http://esprima.org/demo/functiontrace.html)
+to [editor autocompletion](http://esprima.org/demo/autocomplete.html).
+
+Esprima runs on many popular web browsers, as well as other ECMAScript platforms such as
+[Rhino](http://www.mozilla.org/rhino), [Nashorn](http://openjdk.java.net/projects/nashorn/), and [Node.js](https://npmjs.org/package/esprima).
+
+For more information, check the web site [esprima.org](http://esprima.org).
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/bin/esparse.js b/wrt/build/node_modules/rocambole/node_modules/esprima/bin/esparse.js
new file mode 100755 (executable)
index 0000000..98bdbf4
--- /dev/null
@@ -0,0 +1,126 @@
+#!/usr/bin/env node
+/*
+  Copyright (c) jQuery Foundation, Inc. and Contributors, All Rights Reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+/*jslint sloppy:true node:true rhino:true */
+
+var fs, esprima, fname, content, options, syntax;
+
+if (typeof require === 'function') {
+    fs = require('fs');
+    esprima = require('esprima');
+} else if (typeof load === 'function') {
+    try {
+        load('esprima.js');
+    } catch (e) {
+        load('../esprima.js');
+    }
+}
+
+// Shims to Node.js objects when running under Rhino.
+if (typeof console === 'undefined' && typeof process === 'undefined') {
+    console = { log: print };
+    fs = { readFileSync: readFile };
+    process = { argv: arguments, exit: quit };
+    process.argv.unshift('esparse.js');
+    process.argv.unshift('rhino');
+}
+
+function showUsage() {
+    console.log('Usage:');
+    console.log('   esparse [options] file.js');
+    console.log();
+    console.log('Available options:');
+    console.log();
+    console.log('  --comment      Gather all line and block comments in an array');
+    console.log('  --loc          Include line-column location info for each syntax node');
+    console.log('  --range        Include index-based range for each syntax node');
+    console.log('  --raw          Display the raw value of literals');
+    console.log('  --tokens       List all tokens in an array');
+    console.log('  --tolerant     Tolerate errors on a best-effort basis (experimental)');
+    console.log('  -v, --version  Shows program version');
+    console.log();
+    process.exit(1);
+}
+
+if (process.argv.length <= 2) {
+    showUsage();
+}
+
+options = {};
+
+process.argv.splice(2).forEach(function (entry) {
+
+    if (entry === '-h' || entry === '--help') {
+        showUsage();
+    } else if (entry === '-v' || entry === '--version') {
+        console.log('ECMAScript Parser (using Esprima version', esprima.version, ')');
+        console.log();
+        process.exit(0);
+    } else if (entry === '--comment') {
+        options.comment = true;
+    } else if (entry === '--loc') {
+        options.loc = true;
+    } else if (entry === '--range') {
+        options.range = true;
+    } else if (entry === '--raw') {
+        options.raw = true;
+    } else if (entry === '--tokens') {
+        options.tokens = true;
+    } else if (entry === '--tolerant') {
+        options.tolerant = true;
+    } else if (entry.slice(0, 2) === '--') {
+        console.log('Error: unknown option ' + entry + '.');
+        process.exit(1);
+    } else if (typeof fname === 'string') {
+        console.log('Error: more than one input file.');
+        process.exit(1);
+    } else {
+        fname = entry;
+    }
+});
+
+if (typeof fname !== 'string') {
+    console.log('Error: no input file.');
+    process.exit(1);
+}
+
+// Special handling for regular expression literal since we need to
+// convert it to a string literal, otherwise it will be decoded
+// as object "{}" and the regular expression would be lost.
+function adjustRegexLiteral(key, value) {
+    if (key === 'value' && value instanceof RegExp) {
+        value = value.toString();
+    }
+    return value;
+}
+
+try {
+    content = fs.readFileSync(fname, 'utf-8');
+    syntax = esprima.parse(content, options);
+    console.log(JSON.stringify(syntax, adjustRegexLiteral, 4));
+} catch (e) {
+    console.log('Error: ' + e.message);
+    process.exit(1);
+}
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js b/wrt/build/node_modules/rocambole/node_modules/esprima/bin/esvalidate.js
new file mode 100755 (executable)
index 0000000..f522dec
--- /dev/null
@@ -0,0 +1,199 @@
+#!/usr/bin/env node
+/*
+  Copyright (c) jQuery Foundation, Inc. and Contributors, All Rights Reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+/*jslint sloppy:true plusplus:true node:true rhino:true */
+/*global phantom:true */
+
+var fs, system, esprima, options, fnames, count;
+
+if (typeof esprima === 'undefined') {
+    // PhantomJS can only require() relative files
+    if (typeof phantom === 'object') {
+        fs = require('fs');
+        system = require('system');
+        esprima = require('./esprima');
+    } else if (typeof require === 'function') {
+        fs = require('fs');
+        esprima = require('esprima');
+    } else if (typeof load === 'function') {
+        try {
+            load('esprima.js');
+        } catch (e) {
+            load('../esprima.js');
+        }
+    }
+}
+
+// Shims to Node.js objects when running under PhantomJS 1.7+.
+if (typeof phantom === 'object') {
+    fs.readFileSync = fs.read;
+    process = {
+        argv: [].slice.call(system.args),
+        exit: phantom.exit
+    };
+    process.argv.unshift('phantomjs');
+}
+
+// Shims to Node.js objects when running under Rhino.
+if (typeof console === 'undefined' && typeof process === 'undefined') {
+    console = { log: print };
+    fs = { readFileSync: readFile };
+    process = { argv: arguments, exit: quit };
+    process.argv.unshift('esvalidate.js');
+    process.argv.unshift('rhino');
+}
+
+function showUsage() {
+    console.log('Usage:');
+    console.log('   esvalidate [options] file.js');
+    console.log();
+    console.log('Available options:');
+    console.log();
+    console.log('  --format=type  Set the report format, plain (default) or junit');
+    console.log('  -v, --version  Print program version');
+    console.log();
+    process.exit(1);
+}
+
+if (process.argv.length <= 2) {
+    showUsage();
+}
+
+options = {
+    format: 'plain'
+};
+
+fnames = [];
+
+process.argv.splice(2).forEach(function (entry) {
+
+    if (entry === '-h' || entry === '--help') {
+        showUsage();
+    } else if (entry === '-v' || entry === '--version') {
+        console.log('ECMAScript Validator (using Esprima version', esprima.version, ')');
+        console.log();
+        process.exit(0);
+    } else if (entry.slice(0, 9) === '--format=') {
+        options.format = entry.slice(9);
+        if (options.format !== 'plain' && options.format !== 'junit') {
+            console.log('Error: unknown report format ' + options.format + '.');
+            process.exit(1);
+        }
+    } else if (entry.slice(0, 2) === '--') {
+        console.log('Error: unknown option ' + entry + '.');
+        process.exit(1);
+    } else {
+        fnames.push(entry);
+    }
+});
+
+if (fnames.length === 0) {
+    console.log('Error: no input file.');
+    process.exit(1);
+}
+
+if (options.format === 'junit') {
+    console.log('<?xml version="1.0" encoding="UTF-8"?>');
+    console.log('<testsuites>');
+}
+
+count = 0;
+fnames.forEach(function (fname) {
+    var content, timestamp, syntax, name;
+    try {
+        content = fs.readFileSync(fname, 'utf-8');
+
+        if (content[0] === '#' && content[1] === '!') {
+            content = '//' + content.substr(2, content.length);
+        }
+
+        timestamp = Date.now();
+        syntax = esprima.parse(content, { tolerant: true });
+
+        if (options.format === 'junit') {
+
+            name = fname;
+            if (name.lastIndexOf('/') >= 0) {
+                name = name.slice(name.lastIndexOf('/') + 1);
+            }
+
+            console.log('<testsuite name="' + fname + '" errors="0" ' +
+                ' failures="' + syntax.errors.length + '" ' +
+                ' tests="' + syntax.errors.length + '" ' +
+                ' time="' + Math.round((Date.now() - timestamp) / 1000) +
+                '">');
+
+            syntax.errors.forEach(function (error) {
+                var msg = error.message;
+                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
+                console.log('  <testcase name="Line ' + error.lineNumber + ': ' + msg + '" ' +
+                    ' time="0">');
+                console.log('    <error type="SyntaxError" message="' + error.message + '">' +
+                    error.message + '(' + name + ':' + error.lineNumber + ')' +
+                    '</error>');
+                console.log('  </testcase>');
+            });
+
+            console.log('</testsuite>');
+
+        } else if (options.format === 'plain') {
+
+            syntax.errors.forEach(function (error) {
+                var msg = error.message;
+                msg = msg.replace(/^Line\ [0-9]*\:\ /, '');
+                msg = fname + ':' + error.lineNumber + ': ' + msg;
+                console.log(msg);
+                ++count;
+            });
+
+        }
+    } catch (e) {
+        ++count;
+        if (options.format === 'junit') {
+            console.log('<testsuite name="' + fname + '" errors="1" failures="0" tests="1" ' +
+                ' time="' + Math.round((Date.now() - timestamp) / 1000) + '">');
+            console.log(' <testcase name="' + e.message + '" ' + ' time="0">');
+            console.log(' <error type="ParseError" message="' + e.message + '">' +
+                e.message + '(' + fname + ((e.lineNumber) ? ':' + e.lineNumber : '') +
+                ')</error>');
+            console.log(' </testcase>');
+            console.log('</testsuite>');
+        } else {
+            console.log('Error: ' + e.message);
+        }
+    }
+});
+
+if (options.format === 'junit') {
+    console.log('</testsuites>');
+}
+
+if (count > 0) {
+    process.exit(1);
+}
+
+if (count === 0 && typeof phantom === 'object') {
+    process.exit(0);
+}
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/esprima.js b/wrt/build/node_modules/rocambole/node_modules/esprima/esprima.js
new file mode 100644 (file)
index 0000000..0cb0a93
--- /dev/null
@@ -0,0 +1,5740 @@
+/*
+  Copyright (c) jQuery Foundation, Inc. and Contributors, All Rights Reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+(function (root, factory) {
+    'use strict';
+
+    // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js,
+    // Rhino, and plain browser loading.
+
+    /* istanbul ignore next */
+    if (typeof define === 'function' && define.amd) {
+        define(['exports'], factory);
+    } else if (typeof exports !== 'undefined') {
+        factory(exports);
+    } else {
+        factory((root.esprima = {}));
+    }
+}(this, function (exports) {
+    'use strict';
+
+    var Token,
+        TokenName,
+        FnExprTokens,
+        Syntax,
+        PlaceHolders,
+        Messages,
+        Regex,
+        source,
+        strict,
+        index,
+        lineNumber,
+        lineStart,
+        hasLineTerminator,
+        lastIndex,
+        lastLineNumber,
+        lastLineStart,
+        startIndex,
+        startLineNumber,
+        startLineStart,
+        scanning,
+        length,
+        lookahead,
+        state,
+        extra,
+        isBindingElement,
+        isAssignmentTarget,
+        firstCoverInitializedNameError;
+
+    Token = {
+        BooleanLiteral: 1,
+        EOF: 2,
+        Identifier: 3,
+        Keyword: 4,
+        NullLiteral: 5,
+        NumericLiteral: 6,
+        Punctuator: 7,
+        StringLiteral: 8,
+        RegularExpression: 9,
+        Template: 10
+    };
+
+    TokenName = {};
+    TokenName[Token.BooleanLiteral] = 'Boolean';
+    TokenName[Token.EOF] = '<end>';
+    TokenName[Token.Identifier] = 'Identifier';
+    TokenName[Token.Keyword] = 'Keyword';
+    TokenName[Token.NullLiteral] = 'Null';
+    TokenName[Token.NumericLiteral] = 'Numeric';
+    TokenName[Token.Punctuator] = 'Punctuator';
+    TokenName[Token.StringLiteral] = 'String';
+    TokenName[Token.RegularExpression] = 'RegularExpression';
+    TokenName[Token.Template] = 'Template';
+
+    // A function following one of those tokens is an expression.
+    FnExprTokens = ['(', '{', '[', 'in', 'typeof', 'instanceof', 'new',
+                    'return', 'case', 'delete', 'throw', 'void',
+                    // assignment operators
+                    '=', '+=', '-=', '*=', '/=', '%=', '<<=', '>>=', '>>>=',
+                    '&=', '|=', '^=', ',',
+                    // binary/unary operators
+                    '+', '-', '*', '/', '%', '++', '--', '<<', '>>', '>>>', '&',
+                    '|', '^', '!', '~', '&&', '||', '?', ':', '===', '==', '>=',
+                    '<=', '<', '>', '!=', '!=='];
+
+    Syntax = {
+        AssignmentExpression: 'AssignmentExpression',
+        AssignmentPattern: 'AssignmentPattern',
+        ArrayExpression: 'ArrayExpression',
+        ArrayPattern: 'ArrayPattern',
+        ArrowFunctionExpression: 'ArrowFunctionExpression',
+        BlockStatement: 'BlockStatement',
+        BinaryExpression: 'BinaryExpression',
+        BreakStatement: 'BreakStatement',
+        CallExpression: 'CallExpression',
+        CatchClause: 'CatchClause',
+        ClassBody: 'ClassBody',
+        ClassDeclaration: 'ClassDeclaration',
+        ClassExpression: 'ClassExpression',
+        ConditionalExpression: 'ConditionalExpression',
+        ContinueStatement: 'ContinueStatement',
+        DoWhileStatement: 'DoWhileStatement',
+        DebuggerStatement: 'DebuggerStatement',
+        EmptyStatement: 'EmptyStatement',
+        ExportAllDeclaration: 'ExportAllDeclaration',
+        ExportDefaultDeclaration: 'ExportDefaultDeclaration',
+        ExportNamedDeclaration: 'ExportNamedDeclaration',
+        ExportSpecifier: 'ExportSpecifier',
+        ExpressionStatement: 'ExpressionStatement',
+        ForStatement: 'ForStatement',
+        ForOfStatement: 'ForOfStatement',
+        ForInStatement: 'ForInStatement',
+        FunctionDeclaration: 'FunctionDeclaration',
+        FunctionExpression: 'FunctionExpression',
+        Identifier: 'Identifier',
+        IfStatement: 'IfStatement',
+        ImportDeclaration: 'ImportDeclaration',
+        ImportDefaultSpecifier: 'ImportDefaultSpecifier',
+        ImportNamespaceSpecifier: 'ImportNamespaceSpecifier',
+        ImportSpecifier: 'ImportSpecifier',
+        Literal: 'Literal',
+        LabeledStatement: 'LabeledStatement',
+        LogicalExpression: 'LogicalExpression',
+        MemberExpression: 'MemberExpression',
+        MetaProperty: 'MetaProperty',
+        MethodDefinition: 'MethodDefinition',
+        NewExpression: 'NewExpression',
+        ObjectExpression: 'ObjectExpression',
+        ObjectPattern: 'ObjectPattern',
+        Program: 'Program',
+        Property: 'Property',
+        RestElement: 'RestElement',
+        ReturnStatement: 'ReturnStatement',
+        SequenceExpression: 'SequenceExpression',
+        SpreadElement: 'SpreadElement',
+        Super: 'Super',
+        SwitchCase: 'SwitchCase',
+        SwitchStatement: 'SwitchStatement',
+        TaggedTemplateExpression: 'TaggedTemplateExpression',
+        TemplateElement: 'TemplateElement',
+        TemplateLiteral: 'TemplateLiteral',
+        ThisExpression: 'ThisExpression',
+        ThrowStatement: 'ThrowStatement',
+        TryStatement: 'TryStatement',
+        UnaryExpression: 'UnaryExpression',
+        UpdateExpression: 'UpdateExpression',
+        VariableDeclaration: 'VariableDeclaration',
+        VariableDeclarator: 'VariableDeclarator',
+        WhileStatement: 'WhileStatement',
+        WithStatement: 'WithStatement',
+        YieldExpression: 'YieldExpression'
+    };
+
+    PlaceHolders = {
+        ArrowParameterPlaceHolder: 'ArrowParameterPlaceHolder'
+    };
+
+    // Error messages should be identical to V8.
+    Messages = {
+        UnexpectedToken: 'Unexpected token %0',
+        UnexpectedNumber: 'Unexpected number',
+        UnexpectedString: 'Unexpected string',
+        UnexpectedIdentifier: 'Unexpected identifier',
+        UnexpectedReserved: 'Unexpected reserved word',
+        UnexpectedTemplate: 'Unexpected quasi %0',
+        UnexpectedEOS: 'Unexpected end of input',
+        NewlineAfterThrow: 'Illegal newline after throw',
+        InvalidRegExp: 'Invalid regular expression',
+        UnterminatedRegExp: 'Invalid regular expression: missing /',
+        InvalidLHSInAssignment: 'Invalid left-hand side in assignment',
+        InvalidLHSInForIn: 'Invalid left-hand side in for-in',
+        InvalidLHSInForLoop: 'Invalid left-hand side in for-loop',
+        MultipleDefaultsInSwitch: 'More than one default clause in switch statement',
+        NoCatchOrFinally: 'Missing catch or finally after try',
+        UnknownLabel: 'Undefined label \'%0\'',
+        Redeclaration: '%0 \'%1\' has already been declared',
+        IllegalContinue: 'Illegal continue statement',
+        IllegalBreak: 'Illegal break statement',
+        IllegalReturn: 'Illegal return statement',
+        StrictModeWith: 'Strict mode code may not include a with statement',
+        StrictCatchVariable: 'Catch variable may not be eval or arguments in strict mode',
+        StrictVarName: 'Variable name may not be eval or arguments in strict mode',
+        StrictParamName: 'Parameter name eval or arguments is not allowed in strict mode',
+        StrictParamDupe: 'Strict mode function may not have duplicate parameter names',
+        StrictFunctionName: 'Function name may not be eval or arguments in strict mode',
+        StrictOctalLiteral: 'Octal literals are not allowed in strict mode.',
+        StrictDelete: 'Delete of an unqualified identifier in strict mode.',
+        StrictLHSAssignment: 'Assignment to eval or arguments is not allowed in strict mode',
+        StrictLHSPostfix: 'Postfix increment/decrement may not have eval or arguments operand in strict mode',
+        StrictLHSPrefix: 'Prefix increment/decrement may not have eval or arguments operand in strict mode',
+        StrictReservedWord: 'Use of future reserved word in strict mode',
+        TemplateOctalLiteral: 'Octal literals are not allowed in template strings.',
+        ParameterAfterRestParameter: 'Rest parameter must be last formal parameter',
+        DefaultRestParameter: 'Unexpected token =',
+        ObjectPatternAsRestParameter: 'Unexpected token {',
+        DuplicateProtoProperty: 'Duplicate __proto__ fields are not allowed in object literals',
+        ConstructorSpecialMethod: 'Class constructor may not be an accessor',
+        DuplicateConstructor: 'A class may only have one constructor',
+        StaticPrototype: 'Classes may not have static property named prototype',
+        MissingFromClause: 'Unexpected token',
+        NoAsAfterImportNamespace: 'Unexpected token',
+        InvalidModuleSpecifier: 'Unexpected token',
+        IllegalImportDeclaration: 'Unexpected token',
+        IllegalExportDeclaration: 'Unexpected token',
+        DuplicateBinding: 'Duplicate binding %0'
+    };
+
+    // See also tools/generate-unicode-regex.js.
+    Regex = {
+        // ECMAScript 6/Unicode v7.0.0 NonAsciiIdentifierStart:
+        NonAsciiIdentifierStart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B2\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDE00-\uDE11\uDE13-\uDE2B\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDE00-\uDE2F\uDE44\uDE80-\uDEAA]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D]|\uD87E[\uDC00-\uDE1D]/,
+
+        // ECMAScript 6/Unicode v7.0.0 NonAsciiIdentifierPart:
+        NonAsciiIdentifierPart: /[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B2\u08E4-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB5F\uAB64\uAB65\uABC0-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2D\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDD0-\uDDDA\uDE00-\uDE11\uDE13-\uDE37\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF01-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/
+    };
+
+    // Ensure the condition is true, otherwise throw an error.
+    // This is only to have a better contract semantic, i.e. another safety net
+    // to catch a logic error. The condition shall be fulfilled in normal case.
+    // Do NOT use this to enforce a certain condition on any user input.
+
+    function assert(condition, message) {
+        /* istanbul ignore if */
+        if (!condition) {
+            throw new Error('ASSERT: ' + message);
+        }
+    }
+
+    function isDecimalDigit(ch) {
+        return (ch >= 0x30 && ch <= 0x39);   // 0..9
+    }
+
+    function isHexDigit(ch) {
+        return '0123456789abcdefABCDEF'.indexOf(ch) >= 0;
+    }
+
+    function isOctalDigit(ch) {
+        return '01234567'.indexOf(ch) >= 0;
+    }
+
+    function octalToDecimal(ch) {
+        // \0 is not octal escape sequence
+        var octal = (ch !== '0'), code = '01234567'.indexOf(ch);
+
+        if (index < length && isOctalDigit(source[index])) {
+            octal = true;
+            code = code * 8 + '01234567'.indexOf(source[index++]);
+
+            // 3 digits are only allowed when string starts
+            // with 0, 1, 2, 3
+            if ('0123'.indexOf(ch) >= 0 &&
+                    index < length &&
+                    isOctalDigit(source[index])) {
+                code = code * 8 + '01234567'.indexOf(source[index++]);
+            }
+        }
+
+        return {
+            code: code,
+            octal: octal
+        };
+    }
+
+    // ECMA-262 11.2 White Space
+
+    function isWhiteSpace(ch) {
+        return (ch === 0x20) || (ch === 0x09) || (ch === 0x0B) || (ch === 0x0C) || (ch === 0xA0) ||
+            (ch >= 0x1680 && [0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x202F, 0x205F, 0x3000, 0xFEFF].indexOf(ch) >= 0);
+    }
+
+    // ECMA-262 11.3 Line Terminators
+
+    function isLineTerminator(ch) {
+        return (ch === 0x0A) || (ch === 0x0D) || (ch === 0x2028) || (ch === 0x2029);
+    }
+
+    // ECMA-262 11.6 Identifier Names and Identifiers
+
+    function fromCodePoint(cp) {
+        return (cp < 0x10000) ? String.fromCharCode(cp) :
+            String.fromCharCode(0xD800 + ((cp - 0x10000) >> 10)) +
+            String.fromCharCode(0xDC00 + ((cp - 0x10000) & 1023));
+    }
+
+    function isIdentifierStart(ch) {
+        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
+            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
+            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
+            (ch === 0x5C) ||                      // \ (backslash)
+            ((ch >= 0x80) && Regex.NonAsciiIdentifierStart.test(fromCodePoint(ch)));
+    }
+
+    function isIdentifierPart(ch) {
+        return (ch === 0x24) || (ch === 0x5F) ||  // $ (dollar) and _ (underscore)
+            (ch >= 0x41 && ch <= 0x5A) ||         // A..Z
+            (ch >= 0x61 && ch <= 0x7A) ||         // a..z
+            (ch >= 0x30 && ch <= 0x39) ||         // 0..9
+            (ch === 0x5C) ||                      // \ (backslash)
+            ((ch >= 0x80) && Regex.NonAsciiIdentifierPart.test(fromCodePoint(ch)));
+    }
+
+    // ECMA-262 11.6.2.2 Future Reserved Words
+
+    function isFutureReservedWord(id) {
+        switch (id) {
+        case 'enum':
+        case 'export':
+        case 'import':
+        case 'super':
+            return true;
+        default:
+            return false;
+        }
+    }
+
+    function isStrictModeReservedWord(id) {
+        switch (id) {
+        case 'implements':
+        case 'interface':
+        case 'package':
+        case 'private':
+        case 'protected':
+        case 'public':
+        case 'static':
+        case 'yield':
+        case 'let':
+            return true;
+        default:
+            return false;
+        }
+    }
+
+    function isRestrictedWord(id) {
+        return id === 'eval' || id === 'arguments';
+    }
+
+    // ECMA-262 11.6.2.1 Keywords
+
+    function isKeyword(id) {
+        switch (id.length) {
+        case 2:
+            return (id === 'if') || (id === 'in') || (id === 'do');
+        case 3:
+            return (id === 'var') || (id === 'for') || (id === 'new') ||
+                (id === 'try') || (id === 'let');
+        case 4:
+            return (id === 'this') || (id === 'else') || (id === 'case') ||
+                (id === 'void') || (id === 'with') || (id === 'enum');
+        case 5:
+            return (id === 'while') || (id === 'break') || (id === 'catch') ||
+                (id === 'throw') || (id === 'const') || (id === 'yield') ||
+                (id === 'class') || (id === 'super');
+        case 6:
+            return (id === 'return') || (id === 'typeof') || (id === 'delete') ||
+                (id === 'switch') || (id === 'export') || (id === 'import');
+        case 7:
+            return (id === 'default') || (id === 'finally') || (id === 'extends');
+        case 8:
+            return (id === 'function') || (id === 'continue') || (id === 'debugger');
+        case 10:
+            return (id === 'instanceof');
+        default:
+            return false;
+        }
+    }
+
+    // ECMA-262 11.4 Comments
+
+    function addComment(type, value, start, end, loc) {
+        var comment;
+
+        assert(typeof start === 'number', 'Comment must have valid position');
+
+        state.lastCommentStart = start;
+
+        comment = {
+            type: type,
+            value: value
+        };
+        if (extra.range) {
+            comment.range = [start, end];
+        }
+        if (extra.loc) {
+            comment.loc = loc;
+        }
+        extra.comments.push(comment);
+        if (extra.attachComment) {
+            extra.leadingComments.push(comment);
+            extra.trailingComments.push(comment);
+        }
+        if (extra.tokenize) {
+            comment.type = comment.type + 'Comment';
+            if (extra.delegate) {
+                comment = extra.delegate(comment);
+            }
+            extra.tokens.push(comment);
+        }
+    }
+
+    function skipSingleLineComment(offset) {
+        var start, loc, ch, comment;
+
+        start = index - offset;
+        loc = {
+            start: {
+                line: lineNumber,
+                column: index - lineStart - offset
+            }
+        };
+
+        while (index < length) {
+            ch = source.charCodeAt(index);
+            ++index;
+            if (isLineTerminator(ch)) {
+                hasLineTerminator = true;
+                if (extra.comments) {
+                    comment = source.slice(start + offset, index - 1);
+                    loc.end = {
+                        line: lineNumber,
+                        column: index - lineStart - 1
+                    };
+                    addComment('Line', comment, start, index - 1, loc);
+                }
+                if (ch === 13 && source.charCodeAt(index) === 10) {
+                    ++index;
+                }
+                ++lineNumber;
+                lineStart = index;
+                return;
+            }
+        }
+
+        if (extra.comments) {
+            comment = source.slice(start + offset, index);
+            loc.end = {
+                line: lineNumber,
+                column: index - lineStart
+            };
+            addComment('Line', comment, start, index, loc);
+        }
+    }
+
+    function skipMultiLineComment() {
+        var start, loc, ch, comment;
+
+        if (extra.comments) {
+            start = index - 2;
+            loc = {
+                start: {
+                    line: lineNumber,
+                    column: index - lineStart - 2
+                }
+            };
+        }
+
+        while (index < length) {
+            ch = source.charCodeAt(index);
+            if (isLineTerminator(ch)) {
+                if (ch === 0x0D && source.charCodeAt(index + 1) === 0x0A) {
+                    ++index;
+                }
+                hasLineTerminator = true;
+                ++lineNumber;
+                ++index;
+                lineStart = index;
+            } else if (ch === 0x2A) {
+                // Block comment ends with '*/'.
+                if (source.charCodeAt(index + 1) === 0x2F) {
+                    ++index;
+                    ++index;
+                    if (extra.comments) {
+                        comment = source.slice(start + 2, index - 2);
+                        loc.end = {
+                            line: lineNumber,
+                            column: index - lineStart
+                        };
+                        addComment('Block', comment, start, index, loc);
+                    }
+                    return;
+                }
+                ++index;
+            } else {
+                ++index;
+            }
+        }
+
+        // Ran off the end of the file - the whole thing is a comment
+        if (extra.comments) {
+            loc.end = {
+                line: lineNumber,
+                column: index - lineStart
+            };
+            comment = source.slice(start + 2, index);
+            addComment('Block', comment, start, index, loc);
+        }
+        tolerateUnexpectedToken();
+    }
+
+    function skipComment() {
+        var ch, start;
+        hasLineTerminator = false;
+
+        start = (index === 0);
+        while (index < length) {
+            ch = source.charCodeAt(index);
+
+            if (isWhiteSpace(ch)) {
+                ++index;
+            } else if (isLineTerminator(ch)) {
+                hasLineTerminator = true;
+                ++index;
+                if (ch === 0x0D && source.charCodeAt(index) === 0x0A) {
+                    ++index;
+                }
+                ++lineNumber;
+                lineStart = index;
+                start = true;
+            } else if (ch === 0x2F) { // U+002F is '/'
+                ch = source.charCodeAt(index + 1);
+                if (ch === 0x2F) {
+                    ++index;
+                    ++index;
+                    skipSingleLineComment(2);
+                    start = true;
+                } else if (ch === 0x2A) {  // U+002A is '*'
+                    ++index;
+                    ++index;
+                    skipMultiLineComment();
+                } else {
+                    break;
+                }
+            } else if (start && ch === 0x2D) { // U+002D is '-'
+                // U+003E is '>'
+                if ((source.charCodeAt(index + 1) === 0x2D) && (source.charCodeAt(index + 2) === 0x3E)) {
+                    // '-->' is a single-line comment
+                    index += 3;
+                    skipSingleLineComment(3);
+                } else {
+                    break;
+                }
+            } else if (ch === 0x3C) { // U+003C is '<'
+                if (source.slice(index + 1, index + 4) === '!--') {
+                    ++index; // `<`
+                    ++index; // `!`
+                    ++index; // `-`
+                    ++index; // `-`
+                    skipSingleLineComment(4);
+                } else {
+                    break;
+                }
+            } else {
+                break;
+            }
+        }
+    }
+
+    function scanHexEscape(prefix) {
+        var i, len, ch, code = 0;
+
+        len = (prefix === 'u') ? 4 : 2;
+        for (i = 0; i < len; ++i) {
+            if (index < length && isHexDigit(source[index])) {
+                ch = source[index++];
+                code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
+            } else {
+                return '';
+            }
+        }
+        return String.fromCharCode(code);
+    }
+
+    function scanUnicodeCodePointEscape() {
+        var ch, code;
+
+        ch = source[index];
+        code = 0;
+
+        // At least, one hex digit is required.
+        if (ch === '}') {
+            throwUnexpectedToken();
+        }
+
+        while (index < length) {
+            ch = source[index++];
+            if (!isHexDigit(ch)) {
+                break;
+            }
+            code = code * 16 + '0123456789abcdef'.indexOf(ch.toLowerCase());
+        }
+
+        if (code > 0x10FFFF || ch !== '}') {
+            throwUnexpectedToken();
+        }
+
+        return fromCodePoint(code);
+    }
+
+    function codePointAt(i) {
+        var cp, first, second;
+
+        cp = source.charCodeAt(i);
+        if (cp >= 0xD800 && cp <= 0xDBFF) {
+            second = source.charCodeAt(i + 1);
+            if (second >= 0xDC00 && second <= 0xDFFF) {
+                first = cp;
+                cp = (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;
+            }
+        }
+
+        return cp;
+    }
+
+    function getComplexIdentifier() {
+        var cp, ch, id;
+
+        cp = codePointAt(index);
+        id = fromCodePoint(cp);
+        index += id.length;
+
+        // '\u' (U+005C, U+0075) denotes an escaped character.
+        if (cp === 0x5C) {
+            if (source.charCodeAt(index) !== 0x75) {
+                throwUnexpectedToken();
+            }
+            ++index;
+            if (source[index] === '{') {
+                ++index;
+                ch = scanUnicodeCodePointEscape();
+            } else {
+                ch = scanHexEscape('u');
+                cp = ch.charCodeAt(0);
+                if (!ch || ch === '\\' || !isIdentifierStart(cp)) {
+                    throwUnexpectedToken();
+                }
+            }
+            id = ch;
+        }
+
+        while (index < length) {
+            cp = codePointAt(index);
+            if (!isIdentifierPart(cp)) {
+                break;
+            }
+            ch = fromCodePoint(cp);
+            id += ch;
+            index += ch.length;
+
+            // '\u' (U+005C, U+0075) denotes an escaped character.
+            if (cp === 0x5C) {
+                id = id.substr(0, id.length - 1);
+                if (source.charCodeAt(index) !== 0x75) {
+                    throwUnexpectedToken();
+                }
+                ++index;
+                if (source[index] === '{') {
+                    ++index;
+                    ch = scanUnicodeCodePointEscape();
+                } else {
+                    ch = scanHexEscape('u');
+                    cp = ch.charCodeAt(0);
+                    if (!ch || ch === '\\' || !isIdentifierPart(cp)) {
+                        throwUnexpectedToken();
+                    }
+                }
+                id += ch;
+            }
+        }
+
+        return id;
+    }
+
+    function getIdentifier() {
+        var start, ch;
+
+        start = index++;
+        while (index < length) {
+            ch = source.charCodeAt(index);
+            if (ch === 0x5C) {
+                // Blackslash (U+005C) marks Unicode escape sequence.
+                index = start;
+                return getComplexIdentifier();
+            } else if (ch >= 0xD800 && ch < 0xDFFF) {
+                // Need to handle surrogate pairs.
+                index = start;
+                return getComplexIdentifier();
+            }
+            if (isIdentifierPart(ch)) {
+                ++index;
+            } else {
+                break;
+            }
+        }
+
+        return source.slice(start, index);
+    }
+
+    function scanIdentifier() {
+        var start, id, type;
+
+        start = index;
+
+        // Backslash (U+005C) starts an escaped character.
+        id = (source.charCodeAt(index) === 0x5C) ? getComplexIdentifier() : getIdentifier();
+
+        // There is no keyword or literal with only one character.
+        // Thus, it must be an identifier.
+        if (id.length === 1) {
+            type = Token.Identifier;
+        } else if (isKeyword(id)) {
+            type = Token.Keyword;
+        } else if (id === 'null') {
+            type = Token.NullLiteral;
+        } else if (id === 'true' || id === 'false') {
+            type = Token.BooleanLiteral;
+        } else {
+            type = Token.Identifier;
+        }
+
+        return {
+            type: type,
+            value: id,
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+
+    // ECMA-262 11.7 Punctuators
+
+    function scanPunctuator() {
+        var token, str;
+
+        token = {
+            type: Token.Punctuator,
+            value: '',
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: index,
+            end: index
+        };
+
+        // Check for most common single-character punctuators.
+        str = source[index];
+        switch (str) {
+
+        case '(':
+            if (extra.tokenize) {
+                extra.openParenToken = extra.tokenValues.length;
+            }
+            ++index;
+            break;
+
+        case '{':
+            if (extra.tokenize) {
+                extra.openCurlyToken = extra.tokenValues.length;
+            }
+            state.curlyStack.push('{');
+            ++index;
+            break;
+
+        case '.':
+            ++index;
+            if (source[index] === '.' && source[index + 1] === '.') {
+                // Spread operator: ...
+                index += 2;
+                str = '...';
+            }
+            break;
+
+        case '}':
+            ++index;
+            state.curlyStack.pop();
+            break;
+        case ')':
+        case ';':
+        case ',':
+        case '[':
+        case ']':
+        case ':':
+        case '?':
+        case '~':
+            ++index;
+            break;
+
+        default:
+            // 4-character punctuator.
+            str = source.substr(index, 4);
+            if (str === '>>>=') {
+                index += 4;
+            } else {
+
+                // 3-character punctuators.
+                str = str.substr(0, 3);
+                if (str === '===' || str === '!==' || str === '>>>' ||
+                    str === '<<=' || str === '>>=') {
+                    index += 3;
+                } else {
+
+                    // 2-character punctuators.
+                    str = str.substr(0, 2);
+                    if (str === '&&' || str === '||' || str === '==' || str === '!=' ||
+                        str === '+=' || str === '-=' || str === '*=' || str === '/=' ||
+                        str === '++' || str === '--' || str === '<<' || str === '>>' ||
+                        str === '&=' || str === '|=' || str === '^=' || str === '%=' ||
+                        str === '<=' || str === '>=' || str === '=>') {
+                        index += 2;
+                    } else {
+
+                        // 1-character punctuators.
+                        str = source[index];
+                        if ('<>=!+-*%&|^/'.indexOf(str) >= 0) {
+                            ++index;
+                        }
+                    }
+                }
+            }
+        }
+
+        if (index === token.start) {
+            throwUnexpectedToken();
+        }
+
+        token.end = index;
+        token.value = str;
+        return token;
+    }
+
+    // ECMA-262 11.8.3 Numeric Literals
+
+    function scanHexLiteral(start) {
+        var number = '';
+
+        while (index < length) {
+            if (!isHexDigit(source[index])) {
+                break;
+            }
+            number += source[index++];
+        }
+
+        if (number.length === 0) {
+            throwUnexpectedToken();
+        }
+
+        if (isIdentifierStart(source.charCodeAt(index))) {
+            throwUnexpectedToken();
+        }
+
+        return {
+            type: Token.NumericLiteral,
+            value: parseInt('0x' + number, 16),
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    function scanBinaryLiteral(start) {
+        var ch, number;
+
+        number = '';
+
+        while (index < length) {
+            ch = source[index];
+            if (ch !== '0' && ch !== '1') {
+                break;
+            }
+            number += source[index++];
+        }
+
+        if (number.length === 0) {
+            // only 0b or 0B
+            throwUnexpectedToken();
+        }
+
+        if (index < length) {
+            ch = source.charCodeAt(index);
+            /* istanbul ignore else */
+            if (isIdentifierStart(ch) || isDecimalDigit(ch)) {
+                throwUnexpectedToken();
+            }
+        }
+
+        return {
+            type: Token.NumericLiteral,
+            value: parseInt(number, 2),
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    function scanOctalLiteral(prefix, start) {
+        var number, octal;
+
+        if (isOctalDigit(prefix)) {
+            octal = true;
+            number = '0' + source[index++];
+        } else {
+            octal = false;
+            ++index;
+            number = '';
+        }
+
+        while (index < length) {
+            if (!isOctalDigit(source[index])) {
+                break;
+            }
+            number += source[index++];
+        }
+
+        if (!octal && number.length === 0) {
+            // only 0o or 0O
+            throwUnexpectedToken();
+        }
+
+        if (isIdentifierStart(source.charCodeAt(index)) || isDecimalDigit(source.charCodeAt(index))) {
+            throwUnexpectedToken();
+        }
+
+        return {
+            type: Token.NumericLiteral,
+            value: parseInt(number, 8),
+            octal: octal,
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    function isImplicitOctalLiteral() {
+        var i, ch;
+
+        // Implicit octal, unless there is a non-octal digit.
+        // (Annex B.1.1 on Numeric Literals)
+        for (i = index + 1; i < length; ++i) {
+            ch = source[i];
+            if (ch === '8' || ch === '9') {
+                return false;
+            }
+            if (!isOctalDigit(ch)) {
+                return true;
+            }
+        }
+
+        return true;
+    }
+
+    function scanNumericLiteral() {
+        var number, start, ch;
+
+        ch = source[index];
+        assert(isDecimalDigit(ch.charCodeAt(0)) || (ch === '.'),
+            'Numeric literal must start with a decimal digit or a decimal point');
+
+        start = index;
+        number = '';
+        if (ch !== '.') {
+            number = source[index++];
+            ch = source[index];
+
+            // Hex number starts with '0x'.
+            // Octal number starts with '0'.
+            // Octal number in ES6 starts with '0o'.
+            // Binary number in ES6 starts with '0b'.
+            if (number === '0') {
+                if (ch === 'x' || ch === 'X') {
+                    ++index;
+                    return scanHexLiteral(start);
+                }
+                if (ch === 'b' || ch === 'B') {
+                    ++index;
+                    return scanBinaryLiteral(start);
+                }
+                if (ch === 'o' || ch === 'O') {
+                    return scanOctalLiteral(ch, start);
+                }
+
+                if (isOctalDigit(ch)) {
+                    if (isImplicitOctalLiteral()) {
+                        return scanOctalLiteral(ch, start);
+                    }
+                }
+            }
+
+            while (isDecimalDigit(source.charCodeAt(index))) {
+                number += source[index++];
+            }
+            ch = source[index];
+        }
+
+        if (ch === '.') {
+            number += source[index++];
+            while (isDecimalDigit(source.charCodeAt(index))) {
+                number += source[index++];
+            }
+            ch = source[index];
+        }
+
+        if (ch === 'e' || ch === 'E') {
+            number += source[index++];
+
+            ch = source[index];
+            if (ch === '+' || ch === '-') {
+                number += source[index++];
+            }
+            if (isDecimalDigit(source.charCodeAt(index))) {
+                while (isDecimalDigit(source.charCodeAt(index))) {
+                    number += source[index++];
+                }
+            } else {
+                throwUnexpectedToken();
+            }
+        }
+
+        if (isIdentifierStart(source.charCodeAt(index))) {
+            throwUnexpectedToken();
+        }
+
+        return {
+            type: Token.NumericLiteral,
+            value: parseFloat(number),
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    // ECMA-262 11.8.4 String Literals
+
+    function scanStringLiteral() {
+        var str = '', quote, start, ch, unescaped, octToDec, octal = false;
+
+        quote = source[index];
+        assert((quote === '\'' || quote === '"'),
+            'String literal must starts with a quote');
+
+        start = index;
+        ++index;
+
+        while (index < length) {
+            ch = source[index++];
+
+            if (ch === quote) {
+                quote = '';
+                break;
+            } else if (ch === '\\') {
+                ch = source[index++];
+                if (!ch || !isLineTerminator(ch.charCodeAt(0))) {
+                    switch (ch) {
+                    case 'u':
+                    case 'x':
+                        if (source[index] === '{') {
+                            ++index;
+                            str += scanUnicodeCodePointEscape();
+                        } else {
+                            unescaped = scanHexEscape(ch);
+                            if (!unescaped) {
+                                throw throwUnexpectedToken();
+                            }
+                            str += unescaped;
+                        }
+                        break;
+                    case 'n':
+                        str += '\n';
+                        break;
+                    case 'r':
+                        str += '\r';
+                        break;
+                    case 't':
+                        str += '\t';
+                        break;
+                    case 'b':
+                        str += '\b';
+                        break;
+                    case 'f':
+                        str += '\f';
+                        break;
+                    case 'v':
+                        str += '\x0B';
+                        break;
+                    case '8':
+                    case '9':
+                        str += ch;
+                        tolerateUnexpectedToken();
+                        break;
+
+                    default:
+                        if (isOctalDigit(ch)) {
+                            octToDec = octalToDecimal(ch);
+
+                            octal = octToDec.octal || octal;
+                            str += String.fromCharCode(octToDec.code);
+                        } else {
+                            str += ch;
+                        }
+                        break;
+                    }
+                } else {
+                    ++lineNumber;
+                    if (ch === '\r' && source[index] === '\n') {
+                        ++index;
+                    }
+                    lineStart = index;
+                }
+            } else if (isLineTerminator(ch.charCodeAt(0))) {
+                break;
+            } else {
+                str += ch;
+            }
+        }
+
+        if (quote !== '') {
+            index = start;
+            throwUnexpectedToken();
+        }
+
+        return {
+            type: Token.StringLiteral,
+            value: str,
+            octal: octal,
+            lineNumber: startLineNumber,
+            lineStart: startLineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    // ECMA-262 11.8.6 Template Literal Lexical Components
+
+    function scanTemplate() {
+        var cooked = '', ch, start, rawOffset, terminated, head, tail, restore, unescaped;
+
+        terminated = false;
+        tail = false;
+        start = index;
+        head = (source[index] === '`');
+        rawOffset = 2;
+
+        ++index;
+
+        while (index < length) {
+            ch = source[index++];
+            if (ch === '`') {
+                rawOffset = 1;
+                tail = true;
+                terminated = true;
+                break;
+            } else if (ch === '$') {
+                if (source[index] === '{') {
+                    state.curlyStack.push('${');
+                    ++index;
+                    terminated = true;
+                    break;
+                }
+                cooked += ch;
+            } else if (ch === '\\') {
+                ch = source[index++];
+                if (!isLineTerminator(ch.charCodeAt(0))) {
+                    switch (ch) {
+                    case 'n':
+                        cooked += '\n';
+                        break;
+                    case 'r':
+                        cooked += '\r';
+                        break;
+                    case 't':
+                        cooked += '\t';
+                        break;
+                    case 'u':
+                    case 'x':
+                        if (source[index] === '{') {
+                            ++index;
+                            cooked += scanUnicodeCodePointEscape();
+                        } else {
+                            restore = index;
+                            unescaped = scanHexEscape(ch);
+                            if (unescaped) {
+                                cooked += unescaped;
+                            } else {
+                                index = restore;
+                                cooked += ch;
+                            }
+                        }
+                        break;
+                    case 'b':
+                        cooked += '\b';
+                        break;
+                    case 'f':
+                        cooked += '\f';
+                        break;
+                    case 'v':
+                        cooked += '\v';
+                        break;
+
+                    default:
+                        if (ch === '0') {
+                            if (isDecimalDigit(source.charCodeAt(index))) {
+                                // Illegal: \01 \02 and so on
+                                throwError(Messages.TemplateOctalLiteral);
+                            }
+                            cooked += '\0';
+                        } else if (isOctalDigit(ch)) {
+                            // Illegal: \1 \2
+                            throwError(Messages.TemplateOctalLiteral);
+                        } else {
+                            cooked += ch;
+                        }
+                        break;
+                    }
+                } else {
+                    ++lineNumber;
+                    if (ch === '\r' && source[index] === '\n') {
+                        ++index;
+                    }
+                    lineStart = index;
+                }
+            } else if (isLineTerminator(ch.charCodeAt(0))) {
+                ++lineNumber;
+                if (ch === '\r' && source[index] === '\n') {
+                    ++index;
+                }
+                lineStart = index;
+                cooked += '\n';
+            } else {
+                cooked += ch;
+            }
+        }
+
+        if (!terminated) {
+            throwUnexpectedToken();
+        }
+
+        if (!head) {
+            state.curlyStack.pop();
+        }
+
+        return {
+            type: Token.Template,
+            value: {
+                cooked: cooked,
+                raw: source.slice(start + 1, index - rawOffset)
+            },
+            head: head,
+            tail: tail,
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            start: start,
+            end: index
+        };
+    }
+
+    // ECMA-262 11.8.5 Regular Expression Literals
+
+    function testRegExp(pattern, flags) {
+        // The BMP character to use as a replacement for astral symbols when
+        // translating an ES6 "u"-flagged pattern to an ES5-compatible
+        // approximation.
+        // Note: replacing with '\uFFFF' enables false positives in unlikely
+        // scenarios. For example, `[\u{1044f}-\u{10440}]` is an invalid
+        // pattern that would not be detected by this substitution.
+        var astralSubstitute = '\uFFFF',
+            tmp = pattern;
+
+        if (flags.indexOf('u') >= 0) {
+            tmp = tmp
+                // Replace every Unicode escape sequence with the equivalent
+                // BMP character or a constant ASCII code point in the case of
+                // astral symbols. (See the above note on `astralSubstitute`
+                // for more information.)
+                .replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g, function ($0, $1, $2) {
+                    var codePoint = parseInt($1 || $2, 16);
+                    if (codePoint > 0x10FFFF) {
+                        throwUnexpectedToken(null, Messages.InvalidRegExp);
+                    }
+                    if (codePoint <= 0xFFFF) {
+                        return String.fromCharCode(codePoint);
+                    }
+                    return astralSubstitute;
+                })
+                // Replace each paired surrogate with a single ASCII symbol to
+                // avoid throwing on regular expressions that are only valid in
+                // combination with the "u" flag.
+                .replace(
+                    /[\uD800-\uDBFF][\uDC00-\uDFFF]/g,
+                    astralSubstitute
+                );
+        }
+
+        // First, detect invalid regular expressions.
+        try {
+            RegExp(tmp);
+        } catch (e) {
+            throwUnexpectedToken(null, Messages.InvalidRegExp);
+        }
+
+        // Return a regular expression object for this pattern-flag pair, or
+        // `null` in case the current environment doesn't support the flags it
+        // uses.
+        try {
+            return new RegExp(pattern, flags);
+        } catch (exception) {
+            /* istanbul ignore next */
+            return null;
+        }
+    }
+
+    function scanRegExpBody() {
+        var ch, str, classMarker, terminated, body;
+
+        ch = source[index];
+        assert(ch === '/', 'Regular expression literal must start with a slash');
+        str = source[index++];
+
+        classMarker = false;
+        terminated = false;
+        while (index < length) {
+            ch = source[index++];
+            str += ch;
+            if (ch === '\\') {
+                ch = source[index++];
+                // ECMA-262 7.8.5
+                if (isLineTerminator(ch.charCodeAt(0))) {
+                    throwUnexpectedToken(null, Messages.UnterminatedRegExp);
+                }
+                str += ch;
+            } else if (isLineTerminator(ch.charCodeAt(0))) {
+                throwUnexpectedToken(null, Messages.UnterminatedRegExp);
+            } else if (classMarker) {
+                if (ch === ']') {
+                    classMarker = false;
+                }
+            } else {
+                if (ch === '/') {
+                    terminated = true;
+                    break;
+                } else if (ch === '[') {
+                    classMarker = true;
+                }
+            }
+        }
+
+        if (!terminated) {
+            throwUnexpectedToken(null, Messages.UnterminatedRegExp);
+        }
+
+        // Exclude leading and trailing slash.
+        body = str.substr(1, str.length - 2);
+        return {
+            value: body,
+            literal: str
+        };
+    }
+
+    function scanRegExpFlags() {
+        var ch, str, flags, restore;
+
+        str = '';
+        flags = '';
+        while (index < length) {
+            ch = source[index];
+            if (!isIdentifierPart(ch.charCodeAt(0))) {
+                break;
+            }
+
+            ++index;
+            if (ch === '\\' && index < length) {
+                ch = source[index];
+                if (ch === 'u') {
+                    ++index;
+                    restore = index;
+                    ch = scanHexEscape('u');
+                    if (ch) {
+                        flags += ch;
+                        for (str += '\\u'; restore < index; ++restore) {
+                            str += source[restore];
+                        }
+                    } else {
+                        index = restore;
+                        flags += 'u';
+                        str += '\\u';
+                    }
+                    tolerateUnexpectedToken();
+                } else {
+                    str += '\\';
+                    tolerateUnexpectedToken();
+                }
+            } else {
+                flags += ch;
+                str += ch;
+            }
+        }
+
+        return {
+            value: flags,
+            literal: str
+        };
+    }
+
+    function scanRegExp() {
+        var start, body, flags, value;
+        scanning = true;
+
+        lookahead = null;
+        skipComment();
+        start = index;
+
+        body = scanRegExpBody();
+        flags = scanRegExpFlags();
+        value = testRegExp(body.value, flags.value);
+        scanning = false;
+        if (extra.tokenize) {
+            return {
+                type: Token.RegularExpression,
+                value: value,
+                regex: {
+                    pattern: body.value,
+                    flags: flags.value
+                },
+                lineNumber: lineNumber,
+                lineStart: lineStart,
+                start: start,
+                end: index
+            };
+        }
+
+        return {
+            literal: body.literal + flags.literal,
+            value: value,
+            regex: {
+                pattern: body.value,
+                flags: flags.value
+            },
+            start: start,
+            end: index
+        };
+    }
+
+    function collectRegex() {
+        var pos, loc, regex, token;
+
+        skipComment();
+
+        pos = index;
+        loc = {
+            start: {
+                line: lineNumber,
+                column: index - lineStart
+            }
+        };
+
+        regex = scanRegExp();
+
+        loc.end = {
+            line: lineNumber,
+            column: index - lineStart
+        };
+
+        /* istanbul ignore next */
+        if (!extra.tokenize) {
+            // Pop the previous token, which is likely '/' or '/='
+            if (extra.tokens.length > 0) {
+                token = extra.tokens[extra.tokens.length - 1];
+                if (token.range[0] === pos && token.type === 'Punctuator') {
+                    if (token.value === '/' || token.value === '/=') {
+                        extra.tokens.pop();
+                    }
+                }
+            }
+
+            extra.tokens.push({
+                type: 'RegularExpression',
+                value: regex.literal,
+                regex: regex.regex,
+                range: [pos, index],
+                loc: loc
+            });
+        }
+
+        return regex;
+    }
+
+    function isIdentifierName(token) {
+        return token.type === Token.Identifier ||
+            token.type === Token.Keyword ||
+            token.type === Token.BooleanLiteral ||
+            token.type === Token.NullLiteral;
+    }
+
+    // Using the following algorithm:
+    // https://github.com/mozilla/sweet.js/wiki/design
+
+    function advanceSlash() {
+        var regex, previous, check;
+
+        function testKeyword(value) {
+            return value && (value.length > 1) && (value[0] >= 'a') && (value[0] <= 'z');
+        }
+
+        previous = extra.tokenValues[extra.tokenValues.length - 1];
+        regex = (previous !== null);
+
+        switch (previous) {
+        case 'this':
+        case ']':
+            regex = false;
+            break;
+
+        case ')':
+            check = extra.tokenValues[extra.openParenToken - 1];
+            regex = (check === 'if' || check === 'while' || check === 'for' || check === 'with');
+            break;
+
+        case '}':
+            // Dividing a function by anything makes little sense,
+            // but we have to check for that.
+            regex = false;
+            if (testKeyword(extra.tokenValues[extra.openCurlyToken - 3])) {
+                // Anonymous function, e.g. function(){} /42
+                check = extra.tokenValues[extra.openCurlyToken - 4];
+                regex = check ? (FnExprTokens.indexOf(check) < 0) : false;
+            } else if (testKeyword(extra.tokenValues[extra.openCurlyToken - 4])) {
+                // Named function, e.g. function f(){} /42/
+                check = extra.tokenValues[extra.openCurlyToken - 5];
+                regex = check ? (FnExprTokens.indexOf(check) < 0) : true;
+            }
+        }
+
+        return regex ? collectRegex() : scanPunctuator();
+    }
+
+    function advance() {
+        var cp, token;
+
+        if (index >= length) {
+            return {
+                type: Token.EOF,
+                lineNumber: lineNumber,
+                lineStart: lineStart,
+                start: index,
+                end: index
+            };
+        }
+
+        cp = source.charCodeAt(index);
+
+        if (isIdentifierStart(cp)) {
+            token = scanIdentifier();
+            if (strict && isStrictModeReservedWord(token.value)) {
+                token.type = Token.Keyword;
+            }
+            return token;
+        }
+
+        // Very common: ( and ) and ;
+        if (cp === 0x28 || cp === 0x29 || cp === 0x3B) {
+            return scanPunctuator();
+        }
+
+        // String literal starts with single quote (U+0027) or double quote (U+0022).
+        if (cp === 0x27 || cp === 0x22) {
+            return scanStringLiteral();
+        }
+
+        // Dot (.) U+002E can also start a floating-point number, hence the need
+        // to check the next character.
+        if (cp === 0x2E) {
+            if (isDecimalDigit(source.charCodeAt(index + 1))) {
+                return scanNumericLiteral();
+            }
+            return scanPunctuator();
+        }
+
+        if (isDecimalDigit(cp)) {
+            return scanNumericLiteral();
+        }
+
+        // Slash (/) U+002F can also start a regex.
+        if (extra.tokenize && cp === 0x2F) {
+            return advanceSlash();
+        }
+
+        // Template literals start with ` (U+0060) for template head
+        // or } (U+007D) for template middle or template tail.
+        if (cp === 0x60 || (cp === 0x7D && state.curlyStack[state.curlyStack.length - 1] === '${')) {
+            return scanTemplate();
+        }
+
+        // Possible identifier start in a surrogate pair.
+        if (cp >= 0xD800 && cp < 0xDFFF) {
+            cp = codePointAt(index);
+            if (isIdentifierStart(cp)) {
+                return scanIdentifier();
+            }
+        }
+
+        return scanPunctuator();
+    }
+
+    function collectToken() {
+        var loc, token, value, entry;
+
+        loc = {
+            start: {
+                line: lineNumber,
+                column: index - lineStart
+            }
+        };
+
+        token = advance();
+        loc.end = {
+            line: lineNumber,
+            column: index - lineStart
+        };
+
+        if (token.type !== Token.EOF) {
+            value = source.slice(token.start, token.end);
+            entry = {
+                type: TokenName[token.type],
+                value: value,
+                range: [token.start, token.end],
+                loc: loc
+            };
+            if (token.regex) {
+                entry.regex = {
+                    pattern: token.regex.pattern,
+                    flags: token.regex.flags
+                };
+            }
+            if (extra.tokenValues) {
+                extra.tokenValues.push((entry.type === 'Punctuator' || entry.type === 'Keyword') ? entry.value : null);
+            }
+            if (extra.tokenize) {
+                if (!extra.range) {
+                    delete entry.range;
+                }
+                if (!extra.loc) {
+                    delete entry.loc;
+                }
+                if (extra.delegate) {
+                    entry = extra.delegate(entry);
+                }
+            }
+            extra.tokens.push(entry);
+        }
+
+        return token;
+    }
+
+    function lex() {
+        var token;
+        scanning = true;
+
+        lastIndex = index;
+        lastLineNumber = lineNumber;
+        lastLineStart = lineStart;
+
+        skipComment();
+
+        token = lookahead;
+
+        startIndex = index;
+        startLineNumber = lineNumber;
+        startLineStart = lineStart;
+
+        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
+        scanning = false;
+        return token;
+    }
+
+    function peek() {
+        scanning = true;
+
+        skipComment();
+
+        lastIndex = index;
+        lastLineNumber = lineNumber;
+        lastLineStart = lineStart;
+
+        startIndex = index;
+        startLineNumber = lineNumber;
+        startLineStart = lineStart;
+
+        lookahead = (typeof extra.tokens !== 'undefined') ? collectToken() : advance();
+        scanning = false;
+    }
+
+    function Position() {
+        this.line = startLineNumber;
+        this.column = startIndex - startLineStart;
+    }
+
+    function SourceLocation() {
+        this.start = new Position();
+        this.end = null;
+    }
+
+    function WrappingSourceLocation(startToken) {
+        this.start = {
+            line: startToken.lineNumber,
+            column: startToken.start - startToken.lineStart
+        };
+        this.end = null;
+    }
+
+    function Node() {
+        if (extra.range) {
+            this.range = [startIndex, 0];
+        }
+        if (extra.loc) {
+            this.loc = new SourceLocation();
+        }
+    }
+
+    function WrappingNode(startToken) {
+        if (extra.range) {
+            this.range = [startToken.start, 0];
+        }
+        if (extra.loc) {
+            this.loc = new WrappingSourceLocation(startToken);
+        }
+    }
+
+    WrappingNode.prototype = Node.prototype = {
+
+        processComment: function () {
+            var lastChild,
+                innerComments,
+                leadingComments,
+                trailingComments,
+                bottomRight = extra.bottomRightStack,
+                i,
+                comment,
+                last = bottomRight[bottomRight.length - 1];
+
+            if (this.type === Syntax.Program) {
+                if (this.body.length > 0) {
+                    return;
+                }
+            }
+            /**
+             * patch innnerComments for properties empty block
+             * `function a() {/** comments **\/}`
+             */
+
+            if (this.type === Syntax.BlockStatement && this.body.length === 0) {
+                innerComments = [];
+                for (i = extra.leadingComments.length - 1; i >= 0; --i) {
+                    comment = extra.leadingComments[i];
+                    if (this.range[1] >= comment.range[1]) {
+                        innerComments.unshift(comment);
+                        extra.leadingComments.splice(i, 1);
+                        extra.trailingComments.splice(i, 1);
+                    }
+                }
+                if (innerComments.length) {
+                    this.innerComments = innerComments;
+                    //bottomRight.push(this);
+                    return;
+                }
+            }
+
+            if (extra.trailingComments.length > 0) {
+                trailingComments = [];
+                for (i = extra.trailingComments.length - 1; i >= 0; --i) {
+                    comment = extra.trailingComments[i];
+                    if (comment.range[0] >= this.range[1]) {
+                        trailingComments.unshift(comment);
+                        extra.trailingComments.splice(i, 1);
+                    }
+                }
+                extra.trailingComments = [];
+            } else {
+                if (last && last.trailingComments && last.trailingComments[0].range[0] >= this.range[1]) {
+                    trailingComments = last.trailingComments;
+                    delete last.trailingComments;
+                }
+            }
+
+            // Eating the stack.
+            while (last && last.range[0] >= this.range[0]) {
+                lastChild = bottomRight.pop();
+                last = bottomRight[bottomRight.length - 1];
+            }
+
+            if (lastChild) {
+                if (lastChild.leadingComments) {
+                    leadingComments = [];
+                    for (i = lastChild.leadingComments.length - 1; i >= 0; --i) {
+                        comment = lastChild.leadingComments[i];
+                        if (comment.range[1] <= this.range[0]) {
+                            leadingComments.unshift(comment);
+                            lastChild.leadingComments.splice(i, 1);
+                        }
+                    }
+
+                    if (!lastChild.leadingComments.length) {
+                        lastChild.leadingComments = undefined;
+                    }
+                }
+            } else if (extra.leadingComments.length > 0) {
+                leadingComments = [];
+                for (i = extra.leadingComments.length - 1; i >= 0; --i) {
+                    comment = extra.leadingComments[i];
+                    if (comment.range[1] <= this.range[0]) {
+                        leadingComments.unshift(comment);
+                        extra.leadingComments.splice(i, 1);
+                    }
+                }
+            }
+
+
+            if (leadingComments && leadingComments.length > 0) {
+                this.leadingComments = leadingComments;
+            }
+            if (trailingComments && trailingComments.length > 0) {
+                this.trailingComments = trailingComments;
+            }
+
+            bottomRight.push(this);
+        },
+
+        finish: function () {
+            if (extra.range) {
+                this.range[1] = lastIndex;
+            }
+            if (extra.loc) {
+                this.loc.end = {
+                    line: lastLineNumber,
+                    column: lastIndex - lastLineStart
+                };
+                if (extra.source) {
+                    this.loc.source = extra.source;
+                }
+            }
+
+            if (extra.attachComment) {
+                this.processComment();
+            }
+        },
+
+        finishArrayExpression: function (elements) {
+            this.type = Syntax.ArrayExpression;
+            this.elements = elements;
+            this.finish();
+            return this;
+        },
+
+        finishArrayPattern: function (elements) {
+            this.type = Syntax.ArrayPattern;
+            this.elements = elements;
+            this.finish();
+            return this;
+        },
+
+        finishArrowFunctionExpression: function (params, defaults, body, expression) {
+            this.type = Syntax.ArrowFunctionExpression;
+            this.id = null;
+            this.params = params;
+            this.defaults = defaults;
+            this.body = body;
+            this.generator = false;
+            this.expression = expression;
+            this.finish();
+            return this;
+        },
+
+        finishAssignmentExpression: function (operator, left, right) {
+            this.type = Syntax.AssignmentExpression;
+            this.operator = operator;
+            this.left = left;
+            this.right = right;
+            this.finish();
+            return this;
+        },
+
+        finishAssignmentPattern: function (left, right) {
+            this.type = Syntax.AssignmentPattern;
+            this.left = left;
+            this.right = right;
+            this.finish();
+            return this;
+        },
+
+        finishBinaryExpression: function (operator, left, right) {
+            this.type = (operator === '||' || operator === '&&') ? Syntax.LogicalExpression : Syntax.BinaryExpression;
+            this.operator = operator;
+            this.left = left;
+            this.right = right;
+            this.finish();
+            return this;
+        },
+
+        finishBlockStatement: function (body) {
+            this.type = Syntax.BlockStatement;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishBreakStatement: function (label) {
+            this.type = Syntax.BreakStatement;
+            this.label = label;
+            this.finish();
+            return this;
+        },
+
+        finishCallExpression: function (callee, args) {
+            this.type = Syntax.CallExpression;
+            this.callee = callee;
+            this.arguments = args;
+            this.finish();
+            return this;
+        },
+
+        finishCatchClause: function (param, body) {
+            this.type = Syntax.CatchClause;
+            this.param = param;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishClassBody: function (body) {
+            this.type = Syntax.ClassBody;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishClassDeclaration: function (id, superClass, body) {
+            this.type = Syntax.ClassDeclaration;
+            this.id = id;
+            this.superClass = superClass;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishClassExpression: function (id, superClass, body) {
+            this.type = Syntax.ClassExpression;
+            this.id = id;
+            this.superClass = superClass;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishConditionalExpression: function (test, consequent, alternate) {
+            this.type = Syntax.ConditionalExpression;
+            this.test = test;
+            this.consequent = consequent;
+            this.alternate = alternate;
+            this.finish();
+            return this;
+        },
+
+        finishContinueStatement: function (label) {
+            this.type = Syntax.ContinueStatement;
+            this.label = label;
+            this.finish();
+            return this;
+        },
+
+        finishDebuggerStatement: function () {
+            this.type = Syntax.DebuggerStatement;
+            this.finish();
+            return this;
+        },
+
+        finishDoWhileStatement: function (body, test) {
+            this.type = Syntax.DoWhileStatement;
+            this.body = body;
+            this.test = test;
+            this.finish();
+            return this;
+        },
+
+        finishEmptyStatement: function () {
+            this.type = Syntax.EmptyStatement;
+            this.finish();
+            return this;
+        },
+
+        finishExpressionStatement: function (expression) {
+            this.type = Syntax.ExpressionStatement;
+            this.expression = expression;
+            this.finish();
+            return this;
+        },
+
+        finishForStatement: function (init, test, update, body) {
+            this.type = Syntax.ForStatement;
+            this.init = init;
+            this.test = test;
+            this.update = update;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishForOfStatement: function (left, right, body) {
+            this.type = Syntax.ForOfStatement;
+            this.left = left;
+            this.right = right;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishForInStatement: function (left, right, body) {
+            this.type = Syntax.ForInStatement;
+            this.left = left;
+            this.right = right;
+            this.body = body;
+            this.each = false;
+            this.finish();
+            return this;
+        },
+
+        finishFunctionDeclaration: function (id, params, defaults, body, generator) {
+            this.type = Syntax.FunctionDeclaration;
+            this.id = id;
+            this.params = params;
+            this.defaults = defaults;
+            this.body = body;
+            this.generator = generator;
+            this.expression = false;
+            this.finish();
+            return this;
+        },
+
+        finishFunctionExpression: function (id, params, defaults, body, generator) {
+            this.type = Syntax.FunctionExpression;
+            this.id = id;
+            this.params = params;
+            this.defaults = defaults;
+            this.body = body;
+            this.generator = generator;
+            this.expression = false;
+            this.finish();
+            return this;
+        },
+
+        finishIdentifier: function (name) {
+            this.type = Syntax.Identifier;
+            this.name = name;
+            this.finish();
+            return this;
+        },
+
+        finishIfStatement: function (test, consequent, alternate) {
+            this.type = Syntax.IfStatement;
+            this.test = test;
+            this.consequent = consequent;
+            this.alternate = alternate;
+            this.finish();
+            return this;
+        },
+
+        finishLabeledStatement: function (label, body) {
+            this.type = Syntax.LabeledStatement;
+            this.label = label;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishLiteral: function (token) {
+            this.type = Syntax.Literal;
+            this.value = token.value;
+            this.raw = source.slice(token.start, token.end);
+            if (token.regex) {
+                this.regex = token.regex;
+            }
+            this.finish();
+            return this;
+        },
+
+        finishMemberExpression: function (accessor, object, property) {
+            this.type = Syntax.MemberExpression;
+            this.computed = accessor === '[';
+            this.object = object;
+            this.property = property;
+            this.finish();
+            return this;
+        },
+
+        finishMetaProperty: function (meta, property) {
+            this.type = Syntax.MetaProperty;
+            this.meta = meta;
+            this.property = property;
+            this.finish();
+            return this;
+        },
+
+        finishNewExpression: function (callee, args) {
+            this.type = Syntax.NewExpression;
+            this.callee = callee;
+            this.arguments = args;
+            this.finish();
+            return this;
+        },
+
+        finishObjectExpression: function (properties) {
+            this.type = Syntax.ObjectExpression;
+            this.properties = properties;
+            this.finish();
+            return this;
+        },
+
+        finishObjectPattern: function (properties) {
+            this.type = Syntax.ObjectPattern;
+            this.properties = properties;
+            this.finish();
+            return this;
+        },
+
+        finishPostfixExpression: function (operator, argument) {
+            this.type = Syntax.UpdateExpression;
+            this.operator = operator;
+            this.argument = argument;
+            this.prefix = false;
+            this.finish();
+            return this;
+        },
+
+        finishProgram: function (body, sourceType) {
+            this.type = Syntax.Program;
+            this.body = body;
+            this.sourceType = sourceType;
+            this.finish();
+            return this;
+        },
+
+        finishProperty: function (kind, key, computed, value, method, shorthand) {
+            this.type = Syntax.Property;
+            this.key = key;
+            this.computed = computed;
+            this.value = value;
+            this.kind = kind;
+            this.method = method;
+            this.shorthand = shorthand;
+            this.finish();
+            return this;
+        },
+
+        finishRestElement: function (argument) {
+            this.type = Syntax.RestElement;
+            this.argument = argument;
+            this.finish();
+            return this;
+        },
+
+        finishReturnStatement: function (argument) {
+            this.type = Syntax.ReturnStatement;
+            this.argument = argument;
+            this.finish();
+            return this;
+        },
+
+        finishSequenceExpression: function (expressions) {
+            this.type = Syntax.SequenceExpression;
+            this.expressions = expressions;
+            this.finish();
+            return this;
+        },
+
+        finishSpreadElement: function (argument) {
+            this.type = Syntax.SpreadElement;
+            this.argument = argument;
+            this.finish();
+            return this;
+        },
+
+        finishSwitchCase: function (test, consequent) {
+            this.type = Syntax.SwitchCase;
+            this.test = test;
+            this.consequent = consequent;
+            this.finish();
+            return this;
+        },
+
+        finishSuper: function () {
+            this.type = Syntax.Super;
+            this.finish();
+            return this;
+        },
+
+        finishSwitchStatement: function (discriminant, cases) {
+            this.type = Syntax.SwitchStatement;
+            this.discriminant = discriminant;
+            this.cases = cases;
+            this.finish();
+            return this;
+        },
+
+        finishTaggedTemplateExpression: function (tag, quasi) {
+            this.type = Syntax.TaggedTemplateExpression;
+            this.tag = tag;
+            this.quasi = quasi;
+            this.finish();
+            return this;
+        },
+
+        finishTemplateElement: function (value, tail) {
+            this.type = Syntax.TemplateElement;
+            this.value = value;
+            this.tail = tail;
+            this.finish();
+            return this;
+        },
+
+        finishTemplateLiteral: function (quasis, expressions) {
+            this.type = Syntax.TemplateLiteral;
+            this.quasis = quasis;
+            this.expressions = expressions;
+            this.finish();
+            return this;
+        },
+
+        finishThisExpression: function () {
+            this.type = Syntax.ThisExpression;
+            this.finish();
+            return this;
+        },
+
+        finishThrowStatement: function (argument) {
+            this.type = Syntax.ThrowStatement;
+            this.argument = argument;
+            this.finish();
+            return this;
+        },
+
+        finishTryStatement: function (block, handler, finalizer) {
+            this.type = Syntax.TryStatement;
+            this.block = block;
+            this.guardedHandlers = [];
+            this.handlers = handler ? [handler] : [];
+            this.handler = handler;
+            this.finalizer = finalizer;
+            this.finish();
+            return this;
+        },
+
+        finishUnaryExpression: function (operator, argument) {
+            this.type = (operator === '++' || operator === '--') ? Syntax.UpdateExpression : Syntax.UnaryExpression;
+            this.operator = operator;
+            this.argument = argument;
+            this.prefix = true;
+            this.finish();
+            return this;
+        },
+
+        finishVariableDeclaration: function (declarations) {
+            this.type = Syntax.VariableDeclaration;
+            this.declarations = declarations;
+            this.kind = 'var';
+            this.finish();
+            return this;
+        },
+
+        finishLexicalDeclaration: function (declarations, kind) {
+            this.type = Syntax.VariableDeclaration;
+            this.declarations = declarations;
+            this.kind = kind;
+            this.finish();
+            return this;
+        },
+
+        finishVariableDeclarator: function (id, init) {
+            this.type = Syntax.VariableDeclarator;
+            this.id = id;
+            this.init = init;
+            this.finish();
+            return this;
+        },
+
+        finishWhileStatement: function (test, body) {
+            this.type = Syntax.WhileStatement;
+            this.test = test;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishWithStatement: function (object, body) {
+            this.type = Syntax.WithStatement;
+            this.object = object;
+            this.body = body;
+            this.finish();
+            return this;
+        },
+
+        finishExportSpecifier: function (local, exported) {
+            this.type = Syntax.ExportSpecifier;
+            this.exported = exported || local;
+            this.local = local;
+            this.finish();
+            return this;
+        },
+
+        finishImportDefaultSpecifier: function (local) {
+            this.type = Syntax.ImportDefaultSpecifier;
+            this.local = local;
+            this.finish();
+            return this;
+        },
+
+        finishImportNamespaceSpecifier: function (local) {
+            this.type = Syntax.ImportNamespaceSpecifier;
+            this.local = local;
+            this.finish();
+            return this;
+        },
+
+        finishExportNamedDeclaration: function (declaration, specifiers, src) {
+            this.type = Syntax.ExportNamedDeclaration;
+            this.declaration = declaration;
+            this.specifiers = specifiers;
+            this.source = src;
+            this.finish();
+            return this;
+        },
+
+        finishExportDefaultDeclaration: function (declaration) {
+            this.type = Syntax.ExportDefaultDeclaration;
+            this.declaration = declaration;
+            this.finish();
+            return this;
+        },
+
+        finishExportAllDeclaration: function (src) {
+            this.type = Syntax.ExportAllDeclaration;
+            this.source = src;
+            this.finish();
+            return this;
+        },
+
+        finishImportSpecifier: function (local, imported) {
+            this.type = Syntax.ImportSpecifier;
+            this.local = local || imported;
+            this.imported = imported;
+            this.finish();
+            return this;
+        },
+
+        finishImportDeclaration: function (specifiers, src) {
+            this.type = Syntax.ImportDeclaration;
+            this.specifiers = specifiers;
+            this.source = src;
+            this.finish();
+            return this;
+        },
+
+        finishYieldExpression: function (argument, delegate) {
+            this.type = Syntax.YieldExpression;
+            this.argument = argument;
+            this.delegate = delegate;
+            this.finish();
+            return this;
+        }
+    };
+
+
+    function recordError(error) {
+        var e, existing;
+
+        for (e = 0; e < extra.errors.length; e++) {
+            existing = extra.errors[e];
+            // Prevent duplicated error.
+            /* istanbul ignore next */
+            if (existing.index === error.index && existing.message === error.message) {
+                return;
+            }
+        }
+
+        extra.errors.push(error);
+    }
+
+    function constructError(msg, column) {
+        var error = new Error(msg);
+        try {
+            throw error;
+        } catch (base) {
+            /* istanbul ignore else */
+            if (Object.create && Object.defineProperty) {
+                error = Object.create(base);
+                Object.defineProperty(error, 'column', { value: column });
+            }
+        } finally {
+            return error;
+        }
+    }
+
+    function createError(line, pos, description) {
+        var msg, column, error;
+
+        msg = 'Line ' + line + ': ' + description;
+        column = pos - (scanning ? lineStart : lastLineStart) + 1;
+        error = constructError(msg, column);
+        error.lineNumber = line;
+        error.description = description;
+        error.index = pos;
+        return error;
+    }
+
+    // Throw an exception
+
+    function throwError(messageFormat) {
+        var args, msg;
+
+        args = Array.prototype.slice.call(arguments, 1);
+        msg = messageFormat.replace(/%(\d)/g,
+            function (whole, idx) {
+                assert(idx < args.length, 'Message reference must be in range');
+                return args[idx];
+            }
+        );
+
+        throw createError(lastLineNumber, lastIndex, msg);
+    }
+
+    function tolerateError(messageFormat) {
+        var args, msg, error;
+
+        args = Array.prototype.slice.call(arguments, 1);
+        /* istanbul ignore next */
+        msg = messageFormat.replace(/%(\d)/g,
+            function (whole, idx) {
+                assert(idx < args.length, 'Message reference must be in range');
+                return args[idx];
+            }
+        );
+
+        error = createError(lineNumber, lastIndex, msg);
+        if (extra.errors) {
+            recordError(error);
+        } else {
+            throw error;
+        }
+    }
+
+    // Throw an exception because of the token.
+
+    function unexpectedTokenError(token, message) {
+        var value, msg = message || Messages.UnexpectedToken;
+
+        if (token) {
+            if (!message) {
+                msg = (token.type === Token.EOF) ? Messages.UnexpectedEOS :
+                    (token.type === Token.Identifier) ? Messages.UnexpectedIdentifier :
+                    (token.type === Token.NumericLiteral) ? Messages.UnexpectedNumber :
+                    (token.type === Token.StringLiteral) ? Messages.UnexpectedString :
+                    (token.type === Token.Template) ? Messages.UnexpectedTemplate :
+                    Messages.UnexpectedToken;
+
+                if (token.type === Token.Keyword) {
+                    if (isFutureReservedWord(token.value)) {
+                        msg = Messages.UnexpectedReserved;
+                    } else if (strict && isStrictModeReservedWord(token.value)) {
+                        msg = Messages.StrictReservedWord;
+                    }
+                }
+            }
+
+            value = (token.type === Token.Template) ? token.value.raw : token.value;
+        } else {
+            value = 'ILLEGAL';
+        }
+
+        msg = msg.replace('%0', value);
+
+        return (token && typeof token.lineNumber === 'number') ?
+            createError(token.lineNumber, token.start, msg) :
+            createError(scanning ? lineNumber : lastLineNumber, scanning ? index : lastIndex, msg);
+    }
+
+    function throwUnexpectedToken(token, message) {
+        throw unexpectedTokenError(token, message);
+    }
+
+    function tolerateUnexpectedToken(token, message) {
+        var error = unexpectedTokenError(token, message);
+        if (extra.errors) {
+            recordError(error);
+        } else {
+            throw error;
+        }
+    }
+
+    // Expect the next token to match the specified punctuator.
+    // If not, an exception will be thrown.
+
+    function expect(value) {
+        var token = lex();
+        if (token.type !== Token.Punctuator || token.value !== value) {
+            throwUnexpectedToken(token);
+        }
+    }
+
+    /**
+     * @name expectCommaSeparator
+     * @description Quietly expect a comma when in tolerant mode, otherwise delegates
+     * to <code>expect(value)</code>
+     * @since 2.0
+     */
+    function expectCommaSeparator() {
+        var token;
+
+        if (extra.errors) {
+            token = lookahead;
+            if (token.type === Token.Punctuator && token.value === ',') {
+                lex();
+            } else if (token.type === Token.Punctuator && token.value === ';') {
+                lex();
+                tolerateUnexpectedToken(token);
+            } else {
+                tolerateUnexpectedToken(token, Messages.UnexpectedToken);
+            }
+        } else {
+            expect(',');
+        }
+    }
+
+    // Expect the next token to match the specified keyword.
+    // If not, an exception will be thrown.
+
+    function expectKeyword(keyword) {
+        var token = lex();
+        if (token.type !== Token.Keyword || token.value !== keyword) {
+            throwUnexpectedToken(token);
+        }
+    }
+
+    // Return true if the next token matches the specified punctuator.
+
+    function match(value) {
+        return lookahead.type === Token.Punctuator && lookahead.value === value;
+    }
+
+    // Return true if the next token matches the specified keyword
+
+    function matchKeyword(keyword) {
+        return lookahead.type === Token.Keyword && lookahead.value === keyword;
+    }
+
+    // Return true if the next token matches the specified contextual keyword
+    // (where an identifier is sometimes a keyword depending on the context)
+
+    function matchContextualKeyword(keyword) {
+        return lookahead.type === Token.Identifier && lookahead.value === keyword;
+    }
+
+    // Return true if the next token is an assignment operator
+
+    function matchAssign() {
+        var op;
+
+        if (lookahead.type !== Token.Punctuator) {
+            return false;
+        }
+        op = lookahead.value;
+        return op === '=' ||
+            op === '*=' ||
+            op === '/=' ||
+            op === '%=' ||
+            op === '+=' ||
+            op === '-=' ||
+            op === '<<=' ||
+            op === '>>=' ||
+            op === '>>>=' ||
+            op === '&=' ||
+            op === '^=' ||
+            op === '|=';
+    }
+
+    function consumeSemicolon() {
+        // Catch the very common case first: immediately a semicolon (U+003B).
+        if (source.charCodeAt(startIndex) === 0x3B || match(';')) {
+            lex();
+            return;
+        }
+
+        if (hasLineTerminator) {
+            return;
+        }
+
+        // FIXME(ikarienator): this is seemingly an issue in the previous location info convention.
+        lastIndex = startIndex;
+        lastLineNumber = startLineNumber;
+        lastLineStart = startLineStart;
+
+        if (lookahead.type !== Token.EOF && !match('}')) {
+            throwUnexpectedToken(lookahead);
+        }
+    }
+
+    // Cover grammar support.
+    //
+    // When an assignment expression position starts with an left parenthesis, the determination of the type
+    // of the syntax is to be deferred arbitrarily long until the end of the parentheses pair (plus a lookahead)
+    // or the first comma. This situation also defers the determination of all the expressions nested in the pair.
+    //
+    // There are three productions that can be parsed in a parentheses pair that needs to be determined
+    // after the outermost pair is closed. They are:
+    //
+    //   1. AssignmentExpression
+    //   2. BindingElements
+    //   3. AssignmentTargets
+    //
+    // In order to avoid exponential backtracking, we use two flags to denote if the production can be
+    // binding element or assignment target.
+    //
+    // The three productions have the relationship:
+    //
+    //   BindingElements ⊆ AssignmentTargets ⊆ AssignmentExpression
+    //
+    // with a single exception that CoverInitializedName when used directly in an Expression, generates
+    // an early error. Therefore, we need the third state, firstCoverInitializedNameError, to track the
+    // first usage of CoverInitializedName and report it when we reached the end of the parentheses pair.
+    //
+    // isolateCoverGrammar function runs the given parser function with a new cover grammar context, and it does not
+    // effect the current flags. This means the production the parser parses is only used as an expression. Therefore
+    // the CoverInitializedName check is conducted.
+    //
+    // inheritCoverGrammar function runs the given parse function with a new cover grammar context, and it propagates
+    // the flags outside of the parser. This means the production the parser parses is used as a part of a potential
+    // pattern. The CoverInitializedName check is deferred.
+    function isolateCoverGrammar(parser) {
+        var oldIsBindingElement = isBindingElement,
+            oldIsAssignmentTarget = isAssignmentTarget,
+            oldFirstCoverInitializedNameError = firstCoverInitializedNameError,
+            result;
+        isBindingElement = true;
+        isAssignmentTarget = true;
+        firstCoverInitializedNameError = null;
+        result = parser();
+        if (firstCoverInitializedNameError !== null) {
+            throwUnexpectedToken(firstCoverInitializedNameError);
+        }
+        isBindingElement = oldIsBindingElement;
+        isAssignmentTarget = oldIsAssignmentTarget;
+        firstCoverInitializedNameError = oldFirstCoverInitializedNameError;
+        return result;
+    }
+
+    function inheritCoverGrammar(parser) {
+        var oldIsBindingElement = isBindingElement,
+            oldIsAssignmentTarget = isAssignmentTarget,
+            oldFirstCoverInitializedNameError = firstCoverInitializedNameError,
+            result;
+        isBindingElement = true;
+        isAssignmentTarget = true;
+        firstCoverInitializedNameError = null;
+        result = parser();
+        isBindingElement = isBindingElement && oldIsBindingElement;
+        isAssignmentTarget = isAssignmentTarget && oldIsAssignmentTarget;
+        firstCoverInitializedNameError = oldFirstCoverInitializedNameError || firstCoverInitializedNameError;
+        return result;
+    }
+
+    // ECMA-262 13.3.3 Destructuring Binding Patterns
+
+    function parseArrayPattern(params, kind) {
+        var node = new Node(), elements = [], rest, restNode;
+        expect('[');
+
+        while (!match(']')) {
+            if (match(',')) {
+                lex();
+                elements.push(null);
+            } else {
+                if (match('...')) {
+                    restNode = new Node();
+                    lex();
+                    params.push(lookahead);
+                    rest = parseVariableIdentifier(kind);
+                    elements.push(restNode.finishRestElement(rest));
+                    break;
+                } else {
+                    elements.push(parsePatternWithDefault(params, kind));
+                }
+                if (!match(']')) {
+                    expect(',');
+                }
+            }
+
+        }
+
+        expect(']');
+
+        return node.finishArrayPattern(elements);
+    }
+
+    function parsePropertyPattern(params, kind) {
+        var node = new Node(), key, keyToken, computed = match('['), init;
+        if (lookahead.type === Token.Identifier) {
+            keyToken = lookahead;
+            key = parseVariableIdentifier();
+            if (match('=')) {
+                params.push(keyToken);
+                lex();
+                init = parseAssignmentExpression();
+
+                return node.finishProperty(
+                    'init', key, false,
+                    new WrappingNode(keyToken).finishAssignmentPattern(key, init), false, true);
+            } else if (!match(':')) {
+                params.push(keyToken);
+                return node.finishProperty('init', key, false, key, false, true);
+            }
+        } else {
+            key = parseObjectPropertyKey();
+        }
+        expect(':');
+        init = parsePatternWithDefault(params, kind);
+        return node.finishProperty('init', key, computed, init, false, false);
+    }
+
+    function parseObjectPattern(params, kind) {
+        var node = new Node(), properties = [];
+
+        expect('{');
+
+        while (!match('}')) {
+            properties.push(parsePropertyPattern(params, kind));
+            if (!match('}')) {
+                expect(',');
+            }
+        }
+
+        lex();
+
+        return node.finishObjectPattern(properties);
+    }
+
+    function parsePattern(params, kind) {
+        if (match('[')) {
+            return parseArrayPattern(params, kind);
+        } else if (match('{')) {
+            return parseObjectPattern(params, kind);
+        } else if (matchKeyword('let')) {
+            if (kind === 'const' || kind === 'let') {
+                tolerateUnexpectedToken(lookahead, Messages.UnexpectedToken);
+            }
+        }
+
+        params.push(lookahead);
+        return parseVariableIdentifier(kind);
+    }
+
+    function parsePatternWithDefault(params, kind) {
+        var startToken = lookahead, pattern, previousAllowYield, right;
+        pattern = parsePattern(params, kind);
+        if (match('=')) {
+            lex();
+            previousAllowYield = state.allowYield;
+            state.allowYield = true;
+            right = isolateCoverGrammar(parseAssignmentExpression);
+            state.allowYield = previousAllowYield;
+            pattern = new WrappingNode(startToken).finishAssignmentPattern(pattern, right);
+        }
+        return pattern;
+    }
+
+    // ECMA-262 12.2.5 Array Initializer
+
+    function parseArrayInitializer() {
+        var elements = [], node = new Node(), restSpread;
+
+        expect('[');
+
+        while (!match(']')) {
+            if (match(',')) {
+                lex();
+                elements.push(null);
+            } else if (match('...')) {
+                restSpread = new Node();
+                lex();
+                restSpread.finishSpreadElement(inheritCoverGrammar(parseAssignmentExpression));
+
+                if (!match(']')) {
+                    isAssignmentTarget = isBindingElement = false;
+                    expect(',');
+                }
+                elements.push(restSpread);
+            } else {
+                elements.push(inheritCoverGrammar(parseAssignmentExpression));
+
+                if (!match(']')) {
+                    expect(',');
+                }
+            }
+        }
+
+        lex();
+
+        return node.finishArrayExpression(elements);
+    }
+
+    // ECMA-262 12.2.6 Object Initializer
+
+    function parsePropertyFunction(node, paramInfo, isGenerator) {
+        var previousStrict, body;
+
+        isAssignmentTarget = isBindingElement = false;
+
+        previousStrict = strict;
+        body = isolateCoverGrammar(parseFunctionSourceElements);
+
+        if (strict && paramInfo.firstRestricted) {
+            tolerateUnexpectedToken(paramInfo.firstRestricted, paramInfo.message);
+        }
+        if (strict && paramInfo.stricted) {
+            tolerateUnexpectedToken(paramInfo.stricted, paramInfo.message);
+        }
+
+        strict = previousStrict;
+        return node.finishFunctionExpression(null, paramInfo.params, paramInfo.defaults, body, isGenerator);
+    }
+
+    function parsePropertyMethodFunction() {
+        var params, method, node = new Node(),
+            previousAllowYield = state.allowYield;
+
+        state.allowYield = false;
+        params = parseParams();
+        state.allowYield = previousAllowYield;
+
+        state.allowYield = false;
+        method = parsePropertyFunction(node, params, false);
+        state.allowYield = previousAllowYield;
+
+        return method;
+    }
+
+    function parseObjectPropertyKey() {
+        var token, node = new Node(), expr;
+
+        token = lex();
+
+        // Note: This function is called only from parseObjectProperty(), where
+        // EOF and Punctuator tokens are already filtered out.
+
+        switch (token.type) {
+        case Token.StringLiteral:
+        case Token.NumericLiteral:
+            if (strict && token.octal) {
+                tolerateUnexpectedToken(token, Messages.StrictOctalLiteral);
+            }
+            return node.finishLiteral(token);
+        case Token.Identifier:
+        case Token.BooleanLiteral:
+        case Token.NullLiteral:
+        case Token.Keyword:
+            return node.finishIdentifier(token.value);
+        case Token.Punctuator:
+            if (token.value === '[') {
+                expr = isolateCoverGrammar(parseAssignmentExpression);
+                expect(']');
+                return expr;
+            }
+            break;
+        }
+        throwUnexpectedToken(token);
+    }
+
+    function lookaheadPropertyName() {
+        switch (lookahead.type) {
+        case Token.Identifier:
+        case Token.StringLiteral:
+        case Token.BooleanLiteral:
+        case Token.NullLiteral:
+        case Token.NumericLiteral:
+        case Token.Keyword:
+            return true;
+        case Token.Punctuator:
+            return lookahead.value === '[';
+        }
+        return false;
+    }
+
+    // This function is to try to parse a MethodDefinition as defined in 14.3. But in the case of object literals,
+    // it might be called at a position where there is in fact a short hand identifier pattern or a data property.
+    // This can only be determined after we consumed up to the left parentheses.
+    //
+    // In order to avoid back tracking, it returns `null` if the position is not a MethodDefinition and the caller
+    // is responsible to visit other options.
+    function tryParseMethodDefinition(token, key, computed, node) {
+        var value, options, methodNode, params,
+            previousAllowYield = state.allowYield;
+
+        if (token.type === Token.Identifier) {
+            // check for `get` and `set`;
+
+            if (token.value === 'get' && lookaheadPropertyName()) {
+                computed = match('[');
+                key = parseObjectPropertyKey();
+                methodNode = new Node();
+                expect('(');
+                expect(')');
+
+                state.allowYield = false;
+                value = parsePropertyFunction(methodNode, {
+                    params: [],
+                    defaults: [],
+                    stricted: null,
+                    firstRestricted: null,
+                    message: null
+                }, false);
+                state.allowYield = previousAllowYield;
+
+                return node.finishProperty('get', key, computed, value, false, false);
+            } else if (token.value === 'set' && lookaheadPropertyName()) {
+                computed = match('[');
+                key = parseObjectPropertyKey();
+                methodNode = new Node();
+                expect('(');
+
+                options = {
+                    params: [],
+                    defaultCount: 0,
+                    defaults: [],
+                    firstRestricted: null,
+                    paramSet: {}
+                };
+                if (match(')')) {
+                    tolerateUnexpectedToken(lookahead);
+                } else {
+                    state.allowYield = false;
+                    parseParam(options);
+                    state.allowYield = previousAllowYield;
+                    if (options.defaultCount === 0) {
+                        options.defaults = [];
+                    }
+                }
+                expect(')');
+
+                state.allowYield = false;
+                value = parsePropertyFunction(methodNode, options, false);
+                state.allowYield = previousAllowYield;
+
+                return node.finishProperty('set', key, computed, value, false, false);
+            }
+        } else if (token.type === Token.Punctuator && token.value === '*' && lookaheadPropertyName()) {
+            computed = match('[');
+            key = parseObjectPropertyKey();
+            methodNode = new Node();
+
+            state.allowYield = true;
+            params = parseParams();
+            state.allowYield = previousAllowYield;
+
+            state.allowYield = false;
+            value = parsePropertyFunction(methodNode, params, true);
+            state.allowYield = previousAllowYield;
+
+            return node.finishProperty('init', key, computed, value, true, false);
+        }
+
+        if (key && match('(')) {
+            value = parsePropertyMethodFunction();
+            return node.finishProperty('init', key, computed, value, true, false);
+        }
+
+        // Not a MethodDefinition.
+        return null;
+    }
+
+    function parseObjectProperty(hasProto) {
+        var token = lookahead, node = new Node(), computed, key, maybeMethod, proto, value;
+
+        computed = match('[');
+        if (match('*')) {
+            lex();
+        } else {
+            key = parseObjectPropertyKey();
+        }
+        maybeMethod = tryParseMethodDefinition(token, key, computed, node);
+        if (maybeMethod) {
+            return maybeMethod;
+        }
+
+        if (!key) {
+            throwUnexpectedToken(lookahead);
+        }
+
+        // Check for duplicated __proto__
+        if (!computed) {
+            proto = (key.type === Syntax.Identifier && key.name === '__proto__') ||
+                (key.type === Syntax.Literal && key.value === '__proto__');
+            if (hasProto.value && proto) {
+                tolerateError(Messages.DuplicateProtoProperty);
+            }
+            hasProto.value |= proto;
+        }
+
+        if (match(':')) {
+            lex();
+            value = inheritCoverGrammar(parseAssignmentExpression);
+            return node.finishProperty('init', key, computed, value, false, false);
+        }
+
+        if (token.type === Token.Identifier) {
+            if (match('=')) {
+                firstCoverInitializedNameError = lookahead;
+                lex();
+                value = isolateCoverGrammar(parseAssignmentExpression);
+                return node.finishProperty('init', key, computed,
+                    new WrappingNode(token).finishAssignmentPattern(key, value), false, true);
+            }
+            return node.finishProperty('init', key, computed, key, false, true);
+        }
+
+        throwUnexpectedToken(lookahead);
+    }
+
+    function parseObjectInitializer() {
+        var properties = [], hasProto = {value: false}, node = new Node();
+
+        expect('{');
+
+        while (!match('}')) {
+            properties.push(parseObjectProperty(hasProto));
+
+            if (!match('}')) {
+                expectCommaSeparator();
+            }
+        }
+
+        expect('}');
+
+        return node.finishObjectExpression(properties);
+    }
+
+    function reinterpretExpressionAsPattern(expr) {
+        var i;
+        switch (expr.type) {
+        case Syntax.Identifier:
+        case Syntax.MemberExpression:
+        case Syntax.RestElement:
+        case Syntax.AssignmentPattern:
+            break;
+        case Syntax.SpreadElement:
+            expr.type = Syntax.RestElement;
+            reinterpretExpressionAsPattern(expr.argument);
+            break;
+        case Syntax.ArrayExpression:
+            expr.type = Syntax.ArrayPattern;
+            for (i = 0; i < expr.elements.length; i++) {
+                if (expr.elements[i] !== null) {
+                    reinterpretExpressionAsPattern(expr.elements[i]);
+                }
+            }
+            break;
+        case Syntax.ObjectExpression:
+            expr.type = Syntax.ObjectPattern;
+            for (i = 0; i < expr.properties.length; i++) {
+                reinterpretExpressionAsPattern(expr.properties[i].value);
+            }
+            break;
+        case Syntax.AssignmentExpression:
+            expr.type = Syntax.AssignmentPattern;
+            reinterpretExpressionAsPattern(expr.left);
+            break;
+        default:
+            // Allow other node type for tolerant parsing.
+            break;
+        }
+    }
+
+    // ECMA-262 12.2.9 Template Literals
+
+    function parseTemplateElement(option) {
+        var node, token;
+
+        if (lookahead.type !== Token.Template || (option.head && !lookahead.head)) {
+            throwUnexpectedToken();
+        }
+
+        node = new Node();
+        token = lex();
+
+        return node.finishTemplateElement({ raw: token.value.raw, cooked: token.value.cooked }, token.tail);
+    }
+
+    function parseTemplateLiteral() {
+        var quasi, quasis, expressions, node = new Node();
+
+        quasi = parseTemplateElement({ head: true });
+        quasis = [quasi];
+        expressions = [];
+
+        while (!quasi.tail) {
+            expressions.push(parseExpression());
+            quasi = parseTemplateElement({ head: false });
+            quasis.push(quasi);
+        }
+
+        return node.finishTemplateLiteral(quasis, expressions);
+    }
+
+    // ECMA-262 12.2.10 The Grouping Operator
+
+    function parseGroupExpression() {
+        var expr, expressions, startToken, i, params = [];
+
+        expect('(');
+
+        if (match(')')) {
+            lex();
+            if (!match('=>')) {
+                expect('=>');
+            }
+            return {
+                type: PlaceHolders.ArrowParameterPlaceHolder,
+                params: [],
+                rawParams: []
+            };
+        }
+
+        startToken = lookahead;
+        if (match('...')) {
+            expr = parseRestElement(params);
+            expect(')');
+            if (!match('=>')) {
+                expect('=>');
+            }
+            return {
+                type: PlaceHolders.ArrowParameterPlaceHolder,
+                params: [expr]
+            };
+        }
+
+        isBindingElement = true;
+        expr = inheritCoverGrammar(parseAssignmentExpression);
+
+        if (match(',')) {
+            isAssignmentTarget = false;
+            expressions = [expr];
+
+            while (startIndex < length) {
+                if (!match(',')) {
+                    break;
+                }
+                lex();
+
+                if (match('...')) {
+                    if (!isBindingElement) {
+                        throwUnexpectedToken(lookahead);
+                    }
+                    expressions.push(parseRestElement(params));
+                    expect(')');
+                    if (!match('=>')) {
+                        expect('=>');
+                    }
+                    isBindingElement = false;
+                    for (i = 0; i < expressions.length; i++) {
+                        reinterpretExpressionAsPattern(expressions[i]);
+                    }
+                    return {
+                        type: PlaceHolders.ArrowParameterPlaceHolder,
+                        params: expressions
+                    };
+                }
+
+                expressions.push(inheritCoverGrammar(parseAssignmentExpression));
+            }
+
+            expr = new WrappingNode(startToken).finishSequenceExpression(expressions);
+        }
+
+
+        expect(')');
+
+        if (match('=>')) {
+            if (expr.type === Syntax.Identifier && expr.name === 'yield') {
+                return {
+                    type: PlaceHolders.ArrowParameterPlaceHolder,
+                    params: [expr]
+                };
+            }
+
+            if (!isBindingElement) {
+                throwUnexpectedToken(lookahead);
+            }
+
+            if (expr.type === Syntax.SequenceExpression) {
+                for (i = 0; i < expr.expressions.length; i++) {
+                    reinterpretExpressionAsPattern(expr.expressions[i]);
+                }
+            } else {
+                reinterpretExpressionAsPattern(expr);
+            }
+
+            expr = {
+                type: PlaceHolders.ArrowParameterPlaceHolder,
+                params: expr.type === Syntax.SequenceExpression ? expr.expressions : [expr]
+            };
+        }
+        isBindingElement = false;
+        return expr;
+    }
+
+
+    // ECMA-262 12.2 Primary Expressions
+
+    function parsePrimaryExpression() {
+        var type, token, expr, node;
+
+        if (match('(')) {
+            isBindingElement = false;
+            return inheritCoverGrammar(parseGroupExpression);
+        }
+
+        if (match('[')) {
+            return inheritCoverGrammar(parseArrayInitializer);
+        }
+
+        if (match('{')) {
+            return inheritCoverGrammar(parseObjectInitializer);
+        }
+
+        type = lookahead.type;
+        node = new Node();
+
+        if (type === Token.Identifier) {
+            if (state.sourceType === 'module' && lookahead.value === 'await') {
+                tolerateUnexpectedToken(lookahead);
+            }
+            expr = node.finishIdentifier(lex().value);
+        } else if (type === Token.StringLiteral || type === Token.NumericLiteral) {
+            isAssignmentTarget = isBindingElement = false;
+            if (strict && lookahead.octal) {
+                tolerateUnexpectedToken(lookahead, Messages.StrictOctalLiteral);
+            }
+            expr = node.finishLiteral(lex());
+        } else if (type === Token.Keyword) {
+            if (!strict && state.allowYield && matchKeyword('yield')) {
+                return parseNonComputedProperty();
+            }
+            if (!strict && matchKeyword('let')) {
+                return node.finishIdentifier(lex().value);
+            }
+            isAssignmentTarget = isBindingElement = false;
+            if (matchKeyword('function')) {
+                return parseFunctionExpression();
+            }
+            if (matchKeyword('this')) {
+                lex();
+                return node.finishThisExpression();
+            }
+            if (matchKeyword('class')) {
+                return parseClassExpression();
+            }
+            throwUnexpectedToken(lex());
+        } else if (type === Token.BooleanLiteral) {
+            isAssignmentTarget = isBindingElement = false;
+            token = lex();
+            token.value = (token.value === 'true');
+            expr = node.finishLiteral(token);
+        } else if (type === Token.NullLiteral) {
+            isAssignmentTarget = isBindingElement = false;
+            token = lex();
+            token.value = null;
+            expr = node.finishLiteral(token);
+        } else if (match('/') || match('/=')) {
+            isAssignmentTarget = isBindingElement = false;
+            index = startIndex;
+
+            if (typeof extra.tokens !== 'undefined') {
+                token = collectRegex();
+            } else {
+                token = scanRegExp();
+            }
+            lex();
+            expr = node.finishLiteral(token);
+        } else if (type === Token.Template) {
+            expr = parseTemplateLiteral();
+        } else {
+            throwUnexpectedToken(lex());
+        }
+
+        return expr;
+    }
+
+    // ECMA-262 12.3 Left-Hand-Side Expressions
+
+    function parseArguments() {
+        var args = [], expr;
+
+        expect('(');
+
+        if (!match(')')) {
+            while (startIndex < length) {
+                if (match('...')) {
+                    expr = new Node();
+                    lex();
+                    expr.finishSpreadElement(isolateCoverGrammar(parseAssignmentExpression));
+                } else {
+                    expr = isolateCoverGrammar(parseAssignmentExpression);
+                }
+                args.push(expr);
+                if (match(')')) {
+                    break;
+                }
+                expectCommaSeparator();
+            }
+        }
+
+        expect(')');
+
+        return args;
+    }
+
+    function parseNonComputedProperty() {
+        var token, node = new Node();
+
+        token = lex();
+
+        if (!isIdentifierName(token)) {
+            throwUnexpectedToken(token);
+        }
+
+        return node.finishIdentifier(token.value);
+    }
+
+    function parseNonComputedMember() {
+        expect('.');
+
+        return parseNonComputedProperty();
+    }
+
+    function parseComputedMember() {
+        var expr;
+
+        expect('[');
+
+        expr = isolateCoverGrammar(parseExpression);
+
+        expect(']');
+
+        return expr;
+    }
+
+    // ECMA-262 12.3.3 The new Operator
+
+    function parseNewExpression() {
+        var callee, args, node = new Node();
+
+        expectKeyword('new');
+
+        if (match('.')) {
+            lex();
+            if (lookahead.type === Token.Identifier && lookahead.value === 'target') {
+                if (state.inFunctionBody) {
+                    lex();
+                    return node.finishMetaProperty('new', 'target');
+                }
+            }
+            throwUnexpectedToken(lookahead);
+        }
+
+        callee = isolateCoverGrammar(parseLeftHandSideExpression);
+        args = match('(') ? parseArguments() : [];
+
+        isAssignmentTarget = isBindingElement = false;
+
+        return node.finishNewExpression(callee, args);
+    }
+
+    // ECMA-262 12.3.4 Function Calls
+
+    function parseLeftHandSideExpressionAllowCall() {
+        var quasi, expr, args, property, startToken, previousAllowIn = state.allowIn;
+
+        startToken = lookahead;
+        state.allowIn = true;
+
+        if (matchKeyword('super') && state.inFunctionBody) {
+            expr = new Node();
+            lex();
+            expr = expr.finishSuper();
+            if (!match('(') && !match('.') && !match('[')) {
+                throwUnexpectedToken(lookahead);
+            }
+        } else {
+            expr = inheritCoverGrammar(matchKeyword('new') ? parseNewExpression : parsePrimaryExpression);
+        }
+
+        for (;;) {
+            if (match('.')) {
+                isBindingElement = false;
+                isAssignmentTarget = true;
+                property = parseNonComputedMember();
+                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
+            } else if (match('(')) {
+                isBindingElement = false;
+                isAssignmentTarget = false;
+                args = parseArguments();
+                expr = new WrappingNode(startToken).finishCallExpression(expr, args);
+            } else if (match('[')) {
+                isBindingElement = false;
+                isAssignmentTarget = true;
+                property = parseComputedMember();
+                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
+            } else if (lookahead.type === Token.Template && lookahead.head) {
+                quasi = parseTemplateLiteral();
+                expr = new WrappingNode(startToken).finishTaggedTemplateExpression(expr, quasi);
+            } else {
+                break;
+            }
+        }
+        state.allowIn = previousAllowIn;
+
+        return expr;
+    }
+
+    // ECMA-262 12.3 Left-Hand-Side Expressions
+
+    function parseLeftHandSideExpression() {
+        var quasi, expr, property, startToken;
+        assert(state.allowIn, 'callee of new expression always allow in keyword.');
+
+        startToken = lookahead;
+
+        if (matchKeyword('super') && state.inFunctionBody) {
+            expr = new Node();
+            lex();
+            expr = expr.finishSuper();
+            if (!match('[') && !match('.')) {
+                throwUnexpectedToken(lookahead);
+            }
+        } else {
+            expr = inheritCoverGrammar(matchKeyword('new') ? parseNewExpression : parsePrimaryExpression);
+        }
+
+        for (;;) {
+            if (match('[')) {
+                isBindingElement = false;
+                isAssignmentTarget = true;
+                property = parseComputedMember();
+                expr = new WrappingNode(startToken).finishMemberExpression('[', expr, property);
+            } else if (match('.')) {
+                isBindingElement = false;
+                isAssignmentTarget = true;
+                property = parseNonComputedMember();
+                expr = new WrappingNode(startToken).finishMemberExpression('.', expr, property);
+            } else if (lookahead.type === Token.Template && lookahead.head) {
+                quasi = parseTemplateLiteral();
+                expr = new WrappingNode(startToken).finishTaggedTemplateExpression(expr, quasi);
+            } else {
+                break;
+            }
+        }
+        return expr;
+    }
+
+    // ECMA-262 12.4 Postfix Expressions
+
+    function parsePostfixExpression() {
+        var expr, token, startToken = lookahead;
+
+        expr = inheritCoverGrammar(parseLeftHandSideExpressionAllowCall);
+
+        if (!hasLineTerminator && lookahead.type === Token.Punctuator) {
+            if (match('++') || match('--')) {
+                // ECMA-262 11.3.1, 11.3.2
+                if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
+                    tolerateError(Messages.StrictLHSPostfix);
+                }
+
+                if (!isAssignmentTarget) {
+                    tolerateError(Messages.InvalidLHSInAssignment);
+                }
+
+                isAssignmentTarget = isBindingElement = false;
+
+                token = lex();
+                expr = new WrappingNode(startToken).finishPostfixExpression(token.value, expr);
+            }
+        }
+
+        return expr;
+    }
+
+    // ECMA-262 12.5 Unary Operators
+
+    function parseUnaryExpression() {
+        var token, expr, startToken;
+
+        if (lookahead.type !== Token.Punctuator && lookahead.type !== Token.Keyword) {
+            expr = parsePostfixExpression();
+        } else if (match('++') || match('--')) {
+            startToken = lookahead;
+            token = lex();
+            expr = inheritCoverGrammar(parseUnaryExpression);
+            // ECMA-262 11.4.4, 11.4.5
+            if (strict && expr.type === Syntax.Identifier && isRestrictedWord(expr.name)) {
+                tolerateError(Messages.StrictLHSPrefix);
+            }
+
+            if (!isAssignmentTarget) {
+                tolerateError(Messages.InvalidLHSInAssignment);
+            }
+            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
+            isAssignmentTarget = isBindingElement = false;
+        } else if (match('+') || match('-') || match('~') || match('!')) {
+            startToken = lookahead;
+            token = lex();
+            expr = inheritCoverGrammar(parseUnaryExpression);
+            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
+            isAssignmentTarget = isBindingElement = false;
+        } else if (matchKeyword('delete') || matchKeyword('void') || matchKeyword('typeof')) {
+            startToken = lookahead;
+            token = lex();
+            expr = inheritCoverGrammar(parseUnaryExpression);
+            expr = new WrappingNode(startToken).finishUnaryExpression(token.value, expr);
+            if (strict && expr.operator === 'delete' && expr.argument.type === Syntax.Identifier) {
+                tolerateError(Messages.StrictDelete);
+            }
+            isAssignmentTarget = isBindingElement = false;
+        } else {
+            expr = parsePostfixExpression();
+        }
+
+        return expr;
+    }
+
+    function binaryPrecedence(token, allowIn) {
+        var prec = 0;
+
+        if (token.type !== Token.Punctuator && token.type !== Token.Keyword) {
+            return 0;
+        }
+
+        switch (token.value) {
+        case '||':
+            prec = 1;
+            break;
+
+        case '&&':
+            prec = 2;
+            break;
+
+        case '|':
+            prec = 3;
+            break;
+
+        case '^':
+            prec = 4;
+            break;
+
+        case '&':
+            prec = 5;
+            break;
+
+        case '==':
+        case '!=':
+        case '===':
+        case '!==':
+            prec = 6;
+            break;
+
+        case '<':
+        case '>':
+        case '<=':
+        case '>=':
+        case 'instanceof':
+            prec = 7;
+            break;
+
+        case 'in':
+            prec = allowIn ? 7 : 0;
+            break;
+
+        case '<<':
+        case '>>':
+        case '>>>':
+            prec = 8;
+            break;
+
+        case '+':
+        case '-':
+            prec = 9;
+            break;
+
+        case '*':
+        case '/':
+        case '%':
+            prec = 11;
+            break;
+
+        default:
+            break;
+        }
+
+        return prec;
+    }
+
+    // ECMA-262 12.6 Multiplicative Operators
+    // ECMA-262 12.7 Additive Operators
+    // ECMA-262 12.8 Bitwise Shift Operators
+    // ECMA-262 12.9 Relational Operators
+    // ECMA-262 12.10 Equality Operators
+    // ECMA-262 12.11 Binary Bitwise Operators
+    // ECMA-262 12.12 Binary Logical Operators
+
+    function parseBinaryExpression() {
+        var marker, markers, expr, token, prec, stack, right, operator, left, i;
+
+        marker = lookahead;
+        left = inheritCoverGrammar(parseUnaryExpression);
+
+        token = lookahead;
+        prec = binaryPrecedence(token, state.allowIn);
+        if (prec === 0) {
+            return left;
+        }
+        isAssignmentTarget = isBindingElement = false;
+        token.prec = prec;
+        lex();
+
+        markers = [marker, lookahead];
+        right = isolateCoverGrammar(parseUnaryExpression);
+
+        stack = [left, token, right];
+
+        while ((prec = binaryPrecedence(lookahead, state.allowIn)) > 0) {
+
+            // Reduce: make a binary expression from the three topmost entries.
+            while ((stack.length > 2) && (prec <= stack[stack.length - 2].prec)) {
+                right = stack.pop();
+                operator = stack.pop().value;
+                left = stack.pop();
+                markers.pop();
+                expr = new WrappingNode(markers[markers.length - 1]).finishBinaryExpression(operator, left, right);
+                stack.push(expr);
+            }
+
+            // Shift.
+            token = lex();
+            token.prec = prec;
+            stack.push(token);
+            markers.push(lookahead);
+            expr = isolateCoverGrammar(parseUnaryExpression);
+            stack.push(expr);
+        }
+
+        // Final reduce to clean-up the stack.
+        i = stack.length - 1;
+        expr = stack[i];
+        markers.pop();
+        while (i > 1) {
+            expr = new WrappingNode(markers.pop()).finishBinaryExpression(stack[i - 1].value, stack[i - 2], expr);
+            i -= 2;
+        }
+
+        return expr;
+    }
+
+
+    // ECMA-262 12.13 Conditional Operator
+
+    function parseConditionalExpression() {
+        var expr, previousAllowIn, consequent, alternate, startToken;
+
+        startToken = lookahead;
+
+        expr = inheritCoverGrammar(parseBinaryExpression);
+        if (match('?')) {
+            lex();
+            previousAllowIn = state.allowIn;
+            state.allowIn = true;
+            consequent = isolateCoverGrammar(parseAssignmentExpression);
+            state.allowIn = previousAllowIn;
+            expect(':');
+            alternate = isolateCoverGrammar(parseAssignmentExpression);
+
+            expr = new WrappingNode(startToken).finishConditionalExpression(expr, consequent, alternate);
+            isAssignmentTarget = isBindingElement = false;
+        }
+
+        return expr;
+    }
+
+    // ECMA-262 14.2 Arrow Function Definitions
+
+    function parseConciseBody() {
+        if (match('{')) {
+            return parseFunctionSourceElements();
+        }
+        return isolateCoverGrammar(parseAssignmentExpression);
+    }
+
+    function checkPatternParam(options, param) {
+        var i;
+        switch (param.type) {
+        case Syntax.Identifier:
+            validateParam(options, param, param.name);
+            break;
+        case Syntax.RestElement:
+            checkPatternParam(options, param.argument);
+            break;
+        case Syntax.AssignmentPattern:
+            checkPatternParam(options, param.left);
+            break;
+        case Syntax.ArrayPattern:
+            for (i = 0; i < param.elements.length; i++) {
+                if (param.elements[i] !== null) {
+                    checkPatternParam(options, param.elements[i]);
+                }
+            }
+            break;
+        case Syntax.YieldExpression:
+            break;
+        default:
+            assert(param.type === Syntax.ObjectPattern, 'Invalid type');
+            for (i = 0; i < param.properties.length; i++) {
+                checkPatternParam(options, param.properties[i].value);
+            }
+            break;
+        }
+    }
+    function reinterpretAsCoverFormalsList(expr) {
+        var i, len, param, params, defaults, defaultCount, options, token;
+
+        defaults = [];
+        defaultCount = 0;
+        params = [expr];
+
+        switch (expr.type) {
+        case Syntax.Identifier:
+            break;
+        case PlaceHolders.ArrowParameterPlaceHolder:
+            params = expr.params;
+            break;
+        default:
+            return null;
+        }
+
+        options = {
+            paramSet: {}
+        };
+
+        for (i = 0, len = params.length; i < len; i += 1) {
+            param = params[i];
+            switch (param.type) {
+            case Syntax.AssignmentPattern:
+                params[i] = param.left;
+                if (param.right.type === Syntax.YieldExpression) {
+                    if (param.right.argument) {
+                        throwUnexpectedToken(lookahead);
+                    }
+                    param.right.type = Syntax.Identifier;
+                    param.right.name = 'yield';
+                    delete param.right.argument;
+                    delete param.right.delegate;
+                }
+                defaults.push(param.right);
+                ++defaultCount;
+                checkPatternParam(options, param.left);
+                break;
+            default:
+                checkPatternParam(options, param);
+                params[i] = param;
+                defaults.push(null);
+                break;
+            }
+        }
+
+        if (strict || !state.allowYield) {
+            for (i = 0, len = params.length; i < len; i += 1) {
+                param = params[i];
+                if (param.type === Syntax.YieldExpression) {
+                    throwUnexpectedToken(lookahead);
+                }
+            }
+        }
+
+        if (options.message === Messages.StrictParamDupe) {
+            token = strict ? options.stricted : options.firstRestricted;
+            throwUnexpectedToken(token, options.message);
+        }
+
+        if (defaultCount === 0) {
+            defaults = [];
+        }
+
+        return {
+            params: params,
+            defaults: defaults,
+            stricted: options.stricted,
+            firstRestricted: options.firstRestricted,
+            message: options.message
+        };
+    }
+
+    function parseArrowFunctionExpression(options, node) {
+        var previousStrict, previousAllowYield, body;
+
+        if (hasLineTerminator) {
+            tolerateUnexpectedToken(lookahead);
+        }
+        expect('=>');
+
+        previousStrict = strict;
+        previousAllowYield = state.allowYield;
+        state.allowYield = true;
+
+        body = parseConciseBody();
+
+        if (strict && options.firstRestricted) {
+            throwUnexpectedToken(options.firstRestricted, options.message);
+        }
+        if (strict && options.stricted) {
+            tolerateUnexpectedToken(options.stricted, options.message);
+        }
+
+        strict = previousStrict;
+        state.allowYield = previousAllowYield;
+
+        return node.finishArrowFunctionExpression(options.params, options.defaults, body, body.type !== Syntax.BlockStatement);
+    }
+
+    // ECMA-262 14.4 Yield expression
+
+    function parseYieldExpression() {
+        var argument, expr, delegate, previousAllowYield;
+
+        argument = null;
+        expr = new Node();
+        delegate = false;
+
+        expectKeyword('yield');
+
+        if (!hasLineTerminator) {
+            previousAllowYield = state.allowYield;
+            state.allowYield = false;
+            delegate = match('*');
+            if (delegate) {
+                lex();
+                argument = parseAssignmentExpression();
+            } else {
+                if (!match(';') && !match('}') && !match(')') && lookahead.type !== Token.EOF) {
+                    argument = parseAssignmentExpression();
+                }
+            }
+            state.allowYield = previousAllowYield;
+        }
+
+        return expr.finishYieldExpression(argument, delegate);
+    }
+
+    // ECMA-262 12.14 Assignment Operators
+
+    function parseAssignmentExpression() {
+        var token, expr, right, list, startToken;
+
+        startToken = lookahead;
+        token = lookahead;
+
+        if (!state.allowYield && matchKeyword('yield')) {
+            return parseYieldExpression();
+        }
+
+        expr = parseConditionalExpression();
+
+        if (expr.type === PlaceHolders.ArrowParameterPlaceHolder || match('=>')) {
+            isAssignmentTarget = isBindingElement = false;
+            list = reinterpretAsCoverFormalsList(expr);
+
+            if (list) {
+                firstCoverInitializedNameError = null;
+                return parseArrowFunctionExpression(list, new WrappingNode(startToken));
+            }
+
+            return expr;
+        }
+
+        if (matchAssign()) {
+            if (!isAssignmentTarget) {
+                tolerateError(Messages.InvalidLHSInAssignment);
+            }
+
+            // ECMA-262 12.1.1
+            if (strict && expr.type === Syntax.Identifier) {
+                if (isRestrictedWord(expr.name)) {
+                    tolerateUnexpectedToken(token, Messages.StrictLHSAssignment);
+                }
+                if (isStrictModeReservedWord(expr.name)) {
+                    tolerateUnexpectedToken(token, Messages.StrictReservedWord);
+                }
+            }
+
+            if (!match('=')) {
+                isAssignmentTarget = isBindingElement = false;
+            } else {
+                reinterpretExpressionAsPattern(expr);
+            }
+
+            token = lex();
+            right = isolateCoverGrammar(parseAssignmentExpression);
+            expr = new WrappingNode(startToken).finishAssignmentExpression(token.value, expr, right);
+            firstCoverInitializedNameError = null;
+        }
+
+        return expr;
+    }
+
+    // ECMA-262 12.15 Comma Operator
+
+    function parseExpression() {
+        var expr, startToken = lookahead, expressions;
+
+        expr = isolateCoverGrammar(parseAssignmentExpression);
+
+        if (match(',')) {
+            expressions = [expr];
+
+            while (startIndex < length) {
+                if (!match(',')) {
+                    break;
+                }
+                lex();
+                expressions.push(isolateCoverGrammar(parseAssignmentExpression));
+            }
+
+            expr = new WrappingNode(startToken).finishSequenceExpression(expressions);
+        }
+
+        return expr;
+    }
+
+    // ECMA-262 13.2 Block
+
+    function parseStatementListItem() {
+        if (lookahead.type === Token.Keyword) {
+            switch (lookahead.value) {
+            case 'export':
+                if (state.sourceType !== 'module') {
+                    tolerateUnexpectedToken(lookahead, Messages.IllegalExportDeclaration);
+                }
+                return parseExportDeclaration();
+            case 'import':
+                if (state.sourceType !== 'module') {
+                    tolerateUnexpectedToken(lookahead, Messages.IllegalImportDeclaration);
+                }
+                return parseImportDeclaration();
+            case 'const':
+                return parseLexicalDeclaration({inFor: false});
+            case 'function':
+                return parseFunctionDeclaration(new Node());
+            case 'class':
+                return parseClassDeclaration();
+            }
+        }
+
+        if (matchKeyword('let') && isLexicalDeclaration()) {
+            return parseLexicalDeclaration({inFor: false});
+        }
+
+        return parseStatement();
+    }
+
+    function parseStatementList() {
+        var list = [];
+        while (startIndex < length) {
+            if (match('}')) {
+                break;
+            }
+            list.push(parseStatementListItem());
+        }
+
+        return list;
+    }
+
+    function parseBlock() {
+        var block, node = new Node();
+
+        expect('{');
+
+        block = parseStatementList();
+
+        expect('}');
+
+        return node.finishBlockStatement(block);
+    }
+
+    // ECMA-262 13.3.2 Variable Statement
+
+    function parseVariableIdentifier(kind) {
+        var token, node = new Node();
+
+        token = lex();
+
+        if (token.type === Token.Keyword && token.value === 'yield') {
+            if (strict) {
+                tolerateUnexpectedToken(token, Messages.StrictReservedWord);
+            } if (!state.allowYield) {
+                throwUnexpectedToken(token);
+            }
+        } else if (token.type !== Token.Identifier) {
+            if (strict && token.type === Token.Keyword && isStrictModeReservedWord(token.value)) {
+                tolerateUnexpectedToken(token, Messages.StrictReservedWord);
+            } else {
+                if (strict || token.value !== 'let' || kind !== 'var') {
+                    throwUnexpectedToken(token);
+                }
+            }
+        } else if (state.sourceType === 'module' && token.type === Token.Identifier && token.value === 'await') {
+            tolerateUnexpectedToken(token);
+        }
+
+        return node.finishIdentifier(token.value);
+    }
+
+    function parseVariableDeclaration(options) {
+        var init = null, id, node = new Node(), params = [];
+
+        id = parsePattern(params, 'var');
+
+        // ECMA-262 12.2.1
+        if (strict && isRestrictedWord(id.name)) {
+            tolerateError(Messages.StrictVarName);
+        }
+
+        if (match('=')) {
+            lex();
+            init = isolateCoverGrammar(parseAssignmentExpression);
+        } else if (id.type !== Syntax.Identifier && !options.inFor) {
+            expect('=');
+        }
+
+        return node.finishVariableDeclarator(id, init);
+    }
+
+    function parseVariableDeclarationList(options) {
+        var opt, list;
+
+        opt = { inFor: options.inFor };
+        list = [parseVariableDeclaration(opt)];
+
+        while (match(',')) {
+            lex();
+            list.push(parseVariableDeclaration(opt));
+        }
+
+        return list;
+    }
+
+    function parseVariableStatement(node) {
+        var declarations;
+
+        expectKeyword('var');
+
+        declarations = parseVariableDeclarationList({ inFor: false });
+
+        consumeSemicolon();
+
+        return node.finishVariableDeclaration(declarations);
+    }
+
+    // ECMA-262 13.3.1 Let and Const Declarations
+
+    function parseLexicalBinding(kind, options) {
+        var init = null, id, node = new Node(), params = [];
+
+        id = parsePattern(params, kind);
+
+        // ECMA-262 12.2.1
+        if (strict && id.type === Syntax.Identifier && isRestrictedWord(id.name)) {
+            tolerateError(Messages.StrictVarName);
+        }
+
+        if (kind === 'const') {
+            if (!matchKeyword('in') && !matchContextualKeyword('of')) {
+                expect('=');
+                init = isolateCoverGrammar(parseAssignmentExpression);
+            }
+        } else if ((!options.inFor && id.type !== Syntax.Identifier) || match('=')) {
+            expect('=');
+            init = isolateCoverGrammar(parseAssignmentExpression);
+        }
+
+        return node.finishVariableDeclarator(id, init);
+    }
+
+    function parseBindingList(kind, options) {
+        var list = [parseLexicalBinding(kind, options)];
+
+        while (match(',')) {
+            lex();
+            list.push(parseLexicalBinding(kind, options));
+        }
+
+        return list;
+    }
+
+
+    function tokenizerState() {
+        return {
+            index: index,
+            lineNumber: lineNumber,
+            lineStart: lineStart,
+            hasLineTerminator: hasLineTerminator,
+            lastIndex: lastIndex,
+            lastLineNumber: lastLineNumber,
+            lastLineStart: lastLineStart,
+            startIndex: startIndex,
+            startLineNumber: startLineNumber,
+            startLineStart: startLineStart,
+            lookahead: lookahead,
+            tokenCount: extra.tokens ? extra.tokens.length : 0
+        };
+    }
+
+    function resetTokenizerState(ts) {
+        index = ts.index;
+        lineNumber = ts.lineNumber;
+        lineStart = ts.lineStart;
+        hasLineTerminator = ts.hasLineTerminator;
+        lastIndex = ts.lastIndex;
+        lastLineNumber = ts.lastLineNumber;
+        lastLineStart = ts.lastLineStart;
+        startIndex = ts.startIndex;
+        startLineNumber = ts.startLineNumber;
+        startLineStart = ts.startLineStart;
+        lookahead = ts.lookahead;
+        if (extra.tokens) {
+            extra.tokens.splice(ts.tokenCount, extra.tokens.length);
+        }
+    }
+
+    function isLexicalDeclaration() {
+        var lexical, ts;
+
+        ts = tokenizerState();
+
+        lex();
+        lexical = (lookahead.type === Token.Identifier) || match('[') || match('{') ||
+            matchKeyword('let') || matchKeyword('yield');
+
+        resetTokenizerState(ts);
+
+        return lexical;
+    }
+
+    function parseLexicalDeclaration(options) {
+        var kind, declarations, node = new Node();
+
+        kind = lex().value;
+        assert(kind === 'let' || kind === 'const', 'Lexical declaration must be either let or const');
+
+        declarations = parseBindingList(kind, options);
+
+        consumeSemicolon();
+
+        return node.finishLexicalDeclaration(declarations, kind);
+    }
+
+    function parseRestElement(params) {
+        var param, node = new Node();
+
+        lex();
+
+        if (match('{')) {
+            throwError(Messages.ObjectPatternAsRestParameter);
+        }
+
+        params.push(lookahead);
+
+        param = parseVariableIdentifier();
+
+        if (match('=')) {
+            throwError(Messages.DefaultRestParameter);
+        }
+
+        if (!match(')')) {
+            throwError(Messages.ParameterAfterRestParameter);
+        }
+
+        return node.finishRestElement(param);
+    }
+
+    // ECMA-262 13.4 Empty Statement
+
+    function parseEmptyStatement(node) {
+        expect(';');
+        return node.finishEmptyStatement();
+    }
+
+    // ECMA-262 12.4 Expression Statement
+
+    function parseExpressionStatement(node) {
+        var expr = parseExpression();
+        consumeSemicolon();
+        return node.finishExpressionStatement(expr);
+    }
+
+    // ECMA-262 13.6 If statement
+
+    function parseIfStatement(node) {
+        var test, consequent, alternate;
+
+        expectKeyword('if');
+
+        expect('(');
+
+        test = parseExpression();
+
+        expect(')');
+
+        consequent = parseStatement();
+
+        if (matchKeyword('else')) {
+            lex();
+            alternate = parseStatement();
+        } else {
+            alternate = null;
+        }
+
+        return node.finishIfStatement(test, consequent, alternate);
+    }
+
+    // ECMA-262 13.7 Iteration Statements
+
+    function parseDoWhileStatement(node) {
+        var body, test, oldInIteration;
+
+        expectKeyword('do');
+
+        oldInIteration = state.inIteration;
+        state.inIteration = true;
+
+        body = parseStatement();
+
+        state.inIteration = oldInIteration;
+
+        expectKeyword('while');
+
+        expect('(');
+
+        test = parseExpression();
+
+        expect(')');
+
+        if (match(';')) {
+            lex();
+        }
+
+        return node.finishDoWhileStatement(body, test);
+    }
+
+    function parseWhileStatement(node) {
+        var test, body, oldInIteration;
+
+        expectKeyword('while');
+
+        expect('(');
+
+        test = parseExpression();
+
+        expect(')');
+
+        oldInIteration = state.inIteration;
+        state.inIteration = true;
+
+        body = parseStatement();
+
+        state.inIteration = oldInIteration;
+
+        return node.finishWhileStatement(test, body);
+    }
+
+    function parseForStatement(node) {
+        var init, forIn, initSeq, initStartToken, test, update, left, right, kind, declarations,
+            body, oldInIteration, previousAllowIn = state.allowIn;
+
+        init = test = update = null;
+        forIn = true;
+
+        expectKeyword('for');
+
+        expect('(');
+
+        if (match(';')) {
+            lex();
+        } else {
+            if (matchKeyword('var')) {
+                init = new Node();
+                lex();
+
+                state.allowIn = false;
+                declarations = parseVariableDeclarationList({ inFor: true });
+                state.allowIn = previousAllowIn;
+
+                if (declarations.length === 1 && matchKeyword('in')) {
+                    init = init.finishVariableDeclaration(declarations);
+                    lex();
+                    left = init;
+                    right = parseExpression();
+                    init = null;
+                } else if (declarations.length === 1 && declarations[0].init === null && matchContextualKeyword('of')) {
+                    init = init.finishVariableDeclaration(declarations);
+                    lex();
+                    left = init;
+                    right = parseAssignmentExpression();
+                    init = null;
+                    forIn = false;
+                } else {
+                    init = init.finishVariableDeclaration(declarations);
+                    expect(';');
+                }
+            } else if (matchKeyword('const') || matchKeyword('let')) {
+                init = new Node();
+                kind = lex().value;
+
+                if (!strict && lookahead.value === 'in') {
+                    init = init.finishIdentifier(kind);
+                    lex();
+                    left = init;
+                    right = parseExpression();
+                    init = null;
+                } else {
+                    state.allowIn = false;
+                    declarations = parseBindingList(kind, {inFor: true});
+                    state.allowIn = previousAllowIn;
+
+                    if (declarations.length === 1 && declarations[0].init === null && matchKeyword('in')) {
+                        init = init.finishLexicalDeclaration(declarations, kind);
+                        lex();
+                        left = init;
+                        right = parseExpression();
+                        init = null;
+                    } else if (declarations.length === 1 && declarations[0].init === null && matchContextualKeyword('of')) {
+                        init = init.finishLexicalDeclaration(declarations, kind);
+                        lex();
+                        left = init;
+                        right = parseAssignmentExpression();
+                        init = null;
+                        forIn = false;
+                    } else {
+                        consumeSemicolon();
+                        init = init.finishLexicalDeclaration(declarations, kind);
+                    }
+                }
+            } else {
+                initStartToken = lookahead;
+                state.allowIn = false;
+                init = inheritCoverGrammar(parseAssignmentExpression);
+                state.allowIn = previousAllowIn;
+
+                if (matchKeyword('in')) {
+                    if (!isAssignmentTarget) {
+                        tolerateError(Messages.InvalidLHSInForIn);
+                    }
+
+                    lex();
+                    reinterpretExpressionAsPattern(init);
+                    left = init;
+                    right = parseExpression();
+                    init = null;
+                } else if (matchContextualKeyword('of')) {
+                    if (!isAssignmentTarget) {
+                        tolerateError(Messages.InvalidLHSInForLoop);
+                    }
+
+                    lex();
+                    reinterpretExpressionAsPattern(init);
+                    left = init;
+                    right = parseAssignmentExpression();
+                    init = null;
+                    forIn = false;
+                } else {
+                    if (match(',')) {
+                        initSeq = [init];
+                        while (match(',')) {
+                            lex();
+                            initSeq.push(isolateCoverGrammar(parseAssignmentExpression));
+                        }
+                        init = new WrappingNode(initStartToken).finishSequenceExpression(initSeq);
+                    }
+                    expect(';');
+                }
+            }
+        }
+
+        if (typeof left === 'undefined') {
+
+            if (!match(';')) {
+                test = parseExpression();
+            }
+            expect(';');
+
+            if (!match(')')) {
+                update = parseExpression();
+            }
+        }
+
+        expect(')');
+
+        oldInIteration = state.inIteration;
+        state.inIteration = true;
+
+        body = isolateCoverGrammar(parseStatement);
+
+        state.inIteration = oldInIteration;
+
+        return (typeof left === 'undefined') ?
+                node.finishForStatement(init, test, update, body) :
+                forIn ? node.finishForInStatement(left, right, body) :
+                    node.finishForOfStatement(left, right, body);
+    }
+
+    // ECMA-262 13.8 The continue statement
+
+    function parseContinueStatement(node) {
+        var label = null, key;
+
+        expectKeyword('continue');
+
+        // Optimize the most common form: 'continue;'.
+        if (source.charCodeAt(startIndex) === 0x3B) {
+            lex();
+
+            if (!state.inIteration) {
+                throwError(Messages.IllegalContinue);
+            }
+
+            return node.finishContinueStatement(null);
+        }
+
+        if (hasLineTerminator) {
+            if (!state.inIteration) {
+                throwError(Messages.IllegalContinue);
+            }
+
+            return node.finishContinueStatement(null);
+        }
+
+        if (lookahead.type === Token.Identifier) {
+            label = parseVariableIdentifier();
+
+            key = '$' + label.name;
+            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
+                throwError(Messages.UnknownLabel, label.name);
+            }
+        }
+
+        consumeSemicolon();
+
+        if (label === null && !state.inIteration) {
+            throwError(Messages.IllegalContinue);
+        }
+
+        return node.finishContinueStatement(label);
+    }
+
+    // ECMA-262 13.9 The break statement
+
+    function parseBreakStatement(node) {
+        var label = null, key;
+
+        expectKeyword('break');
+
+        // Catch the very common case first: immediately a semicolon (U+003B).
+        if (source.charCodeAt(lastIndex) === 0x3B) {
+            lex();
+
+            if (!(state.inIteration || state.inSwitch)) {
+                throwError(Messages.IllegalBreak);
+            }
+
+            return node.finishBreakStatement(null);
+        }
+
+        if (hasLineTerminator) {
+            if (!(state.inIteration || state.inSwitch)) {
+                throwError(Messages.IllegalBreak);
+            }
+        } else if (lookahead.type === Token.Identifier) {
+            label = parseVariableIdentifier();
+
+            key = '$' + label.name;
+            if (!Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
+                throwError(Messages.UnknownLabel, label.name);
+            }
+        }
+
+        consumeSemicolon();
+
+        if (label === null && !(state.inIteration || state.inSwitch)) {
+            throwError(Messages.IllegalBreak);
+        }
+
+        return node.finishBreakStatement(label);
+    }
+
+    // ECMA-262 13.10 The return statement
+
+    function parseReturnStatement(node) {
+        var argument = null;
+
+        expectKeyword('return');
+
+        if (!state.inFunctionBody) {
+            tolerateError(Messages.IllegalReturn);
+        }
+
+        // 'return' followed by a space and an identifier is very common.
+        if (source.charCodeAt(lastIndex) === 0x20) {
+            if (isIdentifierStart(source.charCodeAt(lastIndex + 1))) {
+                argument = parseExpression();
+                consumeSemicolon();
+                return node.finishReturnStatement(argument);
+            }
+        }
+
+        if (hasLineTerminator) {
+            // HACK
+            return node.finishReturnStatement(null);
+        }
+
+        if (!match(';')) {
+            if (!match('}') && lookahead.type !== Token.EOF) {
+                argument = parseExpression();
+            }
+        }
+
+        consumeSemicolon();
+
+        return node.finishReturnStatement(argument);
+    }
+
+    // ECMA-262 13.11 The with statement
+
+    function parseWithStatement(node) {
+        var object, body;
+
+        if (strict) {
+            tolerateError(Messages.StrictModeWith);
+        }
+
+        expectKeyword('with');
+
+        expect('(');
+
+        object = parseExpression();
+
+        expect(')');
+
+        body = parseStatement();
+
+        return node.finishWithStatement(object, body);
+    }
+
+    // ECMA-262 13.12 The switch statement
+
+    function parseSwitchCase() {
+        var test, consequent = [], statement, node = new Node();
+
+        if (matchKeyword('default')) {
+            lex();
+            test = null;
+        } else {
+            expectKeyword('case');
+            test = parseExpression();
+        }
+        expect(':');
+
+        while (startIndex < length) {
+            if (match('}') || matchKeyword('default') || matchKeyword('case')) {
+                break;
+            }
+            statement = parseStatementListItem();
+            consequent.push(statement);
+        }
+
+        return node.finishSwitchCase(test, consequent);
+    }
+
+    function parseSwitchStatement(node) {
+        var discriminant, cases, clause, oldInSwitch, defaultFound;
+
+        expectKeyword('switch');
+
+        expect('(');
+
+        discriminant = parseExpression();
+
+        expect(')');
+
+        expect('{');
+
+        cases = [];
+
+        if (match('}')) {
+            lex();
+            return node.finishSwitchStatement(discriminant, cases);
+        }
+
+        oldInSwitch = state.inSwitch;
+        state.inSwitch = true;
+        defaultFound = false;
+
+        while (startIndex < length) {
+            if (match('}')) {
+                break;
+            }
+            clause = parseSwitchCase();
+            if (clause.test === null) {
+                if (defaultFound) {
+                    throwError(Messages.MultipleDefaultsInSwitch);
+                }
+                defaultFound = true;
+            }
+            cases.push(clause);
+        }
+
+        state.inSwitch = oldInSwitch;
+
+        expect('}');
+
+        return node.finishSwitchStatement(discriminant, cases);
+    }
+
+    // ECMA-262 13.14 The throw statement
+
+    function parseThrowStatement(node) {
+        var argument;
+
+        expectKeyword('throw');
+
+        if (hasLineTerminator) {
+            throwError(Messages.NewlineAfterThrow);
+        }
+
+        argument = parseExpression();
+
+        consumeSemicolon();
+
+        return node.finishThrowStatement(argument);
+    }
+
+    // ECMA-262 13.15 The try statement
+
+    function parseCatchClause() {
+        var param, params = [], paramMap = {}, key, i, body, node = new Node();
+
+        expectKeyword('catch');
+
+        expect('(');
+        if (match(')')) {
+            throwUnexpectedToken(lookahead);
+        }
+
+        param = parsePattern(params);
+        for (i = 0; i < params.length; i++) {
+            key = '$' + params[i].value;
+            if (Object.prototype.hasOwnProperty.call(paramMap, key)) {
+                tolerateError(Messages.DuplicateBinding, params[i].value);
+            }
+            paramMap[key] = true;
+        }
+
+        // ECMA-262 12.14.1
+        if (strict && isRestrictedWord(param.name)) {
+            tolerateError(Messages.StrictCatchVariable);
+        }
+
+        expect(')');
+        body = parseBlock();
+        return node.finishCatchClause(param, body);
+    }
+
+    function parseTryStatement(node) {
+        var block, handler = null, finalizer = null;
+
+        expectKeyword('try');
+
+        block = parseBlock();
+
+        if (matchKeyword('catch')) {
+            handler = parseCatchClause();
+        }
+
+        if (matchKeyword('finally')) {
+            lex();
+            finalizer = parseBlock();
+        }
+
+        if (!handler && !finalizer) {
+            throwError(Messages.NoCatchOrFinally);
+        }
+
+        return node.finishTryStatement(block, handler, finalizer);
+    }
+
+    // ECMA-262 13.16 The debugger statement
+
+    function parseDebuggerStatement(node) {
+        expectKeyword('debugger');
+
+        consumeSemicolon();
+
+        return node.finishDebuggerStatement();
+    }
+
+    // 13 Statements
+
+    function parseStatement() {
+        var type = lookahead.type,
+            expr,
+            labeledBody,
+            key,
+            node;
+
+        if (type === Token.EOF) {
+            throwUnexpectedToken(lookahead);
+        }
+
+        if (type === Token.Punctuator && lookahead.value === '{') {
+            return parseBlock();
+        }
+        isAssignmentTarget = isBindingElement = true;
+        node = new Node();
+
+        if (type === Token.Punctuator) {
+            switch (lookahead.value) {
+            case ';':
+                return parseEmptyStatement(node);
+            case '(':
+                return parseExpressionStatement(node);
+            default:
+                break;
+            }
+        } else if (type === Token.Keyword) {
+            switch (lookahead.value) {
+            case 'break':
+                return parseBreakStatement(node);
+            case 'continue':
+                return parseContinueStatement(node);
+            case 'debugger':
+                return parseDebuggerStatement(node);
+            case 'do':
+                return parseDoWhileStatement(node);
+            case 'for':
+                return parseForStatement(node);
+            case 'function':
+                return parseFunctionDeclaration(node);
+            case 'if':
+                return parseIfStatement(node);
+            case 'return':
+                return parseReturnStatement(node);
+            case 'switch':
+                return parseSwitchStatement(node);
+            case 'throw':
+                return parseThrowStatement(node);
+            case 'try':
+                return parseTryStatement(node);
+            case 'var':
+                return parseVariableStatement(node);
+            case 'while':
+                return parseWhileStatement(node);
+            case 'with':
+                return parseWithStatement(node);
+            default:
+                break;
+            }
+        }
+
+        expr = parseExpression();
+
+        // ECMA-262 12.12 Labelled Statements
+        if ((expr.type === Syntax.Identifier) && match(':')) {
+            lex();
+
+            key = '$' + expr.name;
+            if (Object.prototype.hasOwnProperty.call(state.labelSet, key)) {
+                throwError(Messages.Redeclaration, 'Label', expr.name);
+            }
+
+            state.labelSet[key] = true;
+            labeledBody = parseStatement();
+            delete state.labelSet[key];
+            return node.finishLabeledStatement(expr, labeledBody);
+        }
+
+        consumeSemicolon();
+
+        return node.finishExpressionStatement(expr);
+    }
+
+    // ECMA-262 14.1 Function Definition
+
+    function parseFunctionSourceElements() {
+        var statement, body = [], token, directive, firstRestricted,
+            oldLabelSet, oldInIteration, oldInSwitch, oldInFunctionBody,
+            node = new Node();
+
+        expect('{');
+
+        while (startIndex < length) {
+            if (lookahead.type !== Token.StringLiteral) {
+                break;
+            }
+            token = lookahead;
+
+            statement = parseStatementListItem();
+            body.push(statement);
+            if (statement.expression.type !== Syntax.Literal) {
+                // this is not directive
+                break;
+            }
+            directive = source.slice(token.start + 1, token.end - 1);
+            if (directive === 'use strict') {
+                strict = true;
+                if (firstRestricted) {
+                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
+                }
+            } else {
+                if (!firstRestricted && token.octal) {
+                    firstRestricted = token;
+                }
+            }
+        }
+
+        oldLabelSet = state.labelSet;
+        oldInIteration = state.inIteration;
+        oldInSwitch = state.inSwitch;
+        oldInFunctionBody = state.inFunctionBody;
+
+        state.labelSet = {};
+        state.inIteration = false;
+        state.inSwitch = false;
+        state.inFunctionBody = true;
+
+        while (startIndex < length) {
+            if (match('}')) {
+                break;
+            }
+            body.push(parseStatementListItem());
+        }
+
+        expect('}');
+
+        state.labelSet = oldLabelSet;
+        state.inIteration = oldInIteration;
+        state.inSwitch = oldInSwitch;
+        state.inFunctionBody = oldInFunctionBody;
+
+        return node.finishBlockStatement(body);
+    }
+
+    function validateParam(options, param, name) {
+        var key = '$' + name;
+        if (strict) {
+            if (isRestrictedWord(name)) {
+                options.stricted = param;
+                options.message = Messages.StrictParamName;
+            }
+            if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
+                options.stricted = param;
+                options.message = Messages.StrictParamDupe;
+            }
+        } else if (!options.firstRestricted) {
+            if (isRestrictedWord(name)) {
+                options.firstRestricted = param;
+                options.message = Messages.StrictParamName;
+            } else if (isStrictModeReservedWord(name)) {
+                options.firstRestricted = param;
+                options.message = Messages.StrictReservedWord;
+            } else if (Object.prototype.hasOwnProperty.call(options.paramSet, key)) {
+                options.stricted = param;
+                options.message = Messages.StrictParamDupe;
+            }
+        }
+        options.paramSet[key] = true;
+    }
+
+    function parseParam(options) {
+        var token, param, params = [], i, def;
+
+        token = lookahead;
+        if (token.value === '...') {
+            param = parseRestElement(params);
+            validateParam(options, param.argument, param.argument.name);
+            options.params.push(param);
+            options.defaults.push(null);
+            return false;
+        }
+
+        param = parsePatternWithDefault(params);
+        for (i = 0; i < params.length; i++) {
+            validateParam(options, params[i], params[i].value);
+        }
+
+        if (param.type === Syntax.AssignmentPattern) {
+            def = param.right;
+            param = param.left;
+            ++options.defaultCount;
+        }
+
+        options.params.push(param);
+        options.defaults.push(def);
+
+        return !match(')');
+    }
+
+    function parseParams(firstRestricted) {
+        var options;
+
+        options = {
+            params: [],
+            defaultCount: 0,
+            defaults: [],
+            firstRestricted: firstRestricted
+        };
+
+        expect('(');
+
+        if (!match(')')) {
+            options.paramSet = {};
+            while (startIndex < length) {
+                if (!parseParam(options)) {
+                    break;
+                }
+                expect(',');
+            }
+        }
+
+        expect(')');
+
+        if (options.defaultCount === 0) {
+            options.defaults = [];
+        }
+
+        return {
+            params: options.params,
+            defaults: options.defaults,
+            stricted: options.stricted,
+            firstRestricted: options.firstRestricted,
+            message: options.message
+        };
+    }
+
+    function parseFunctionDeclaration(node, identifierIsOptional) {
+        var id = null, params = [], defaults = [], body, token, stricted, tmp, firstRestricted, message, previousStrict,
+            isGenerator, previousAllowYield;
+
+        previousAllowYield = state.allowYield;
+
+        expectKeyword('function');
+
+        isGenerator = match('*');
+        if (isGenerator) {
+            lex();
+        }
+
+        if (!identifierIsOptional || !match('(')) {
+            token = lookahead;
+            id = parseVariableIdentifier();
+            if (strict) {
+                if (isRestrictedWord(token.value)) {
+                    tolerateUnexpectedToken(token, Messages.StrictFunctionName);
+                }
+            } else {
+                if (isRestrictedWord(token.value)) {
+                    firstRestricted = token;
+                    message = Messages.StrictFunctionName;
+                } else if (isStrictModeReservedWord(token.value)) {
+                    firstRestricted = token;
+                    message = Messages.StrictReservedWord;
+                }
+            }
+        }
+
+        state.allowYield = !isGenerator;
+        tmp = parseParams(firstRestricted);
+        params = tmp.params;
+        defaults = tmp.defaults;
+        stricted = tmp.stricted;
+        firstRestricted = tmp.firstRestricted;
+        if (tmp.message) {
+            message = tmp.message;
+        }
+
+
+        previousStrict = strict;
+        body = parseFunctionSourceElements();
+        if (strict && firstRestricted) {
+            throwUnexpectedToken(firstRestricted, message);
+        }
+        if (strict && stricted) {
+            tolerateUnexpectedToken(stricted, message);
+        }
+
+        strict = previousStrict;
+        state.allowYield = previousAllowYield;
+
+        return node.finishFunctionDeclaration(id, params, defaults, body, isGenerator);
+    }
+
+    function parseFunctionExpression() {
+        var token, id = null, stricted, firstRestricted, message, tmp,
+            params = [], defaults = [], body, previousStrict, node = new Node(),
+            isGenerator, previousAllowYield;
+
+        previousAllowYield = state.allowYield;
+
+        expectKeyword('function');
+
+        isGenerator = match('*');
+        if (isGenerator) {
+            lex();
+        }
+
+        state.allowYield = !isGenerator;
+        if (!match('(')) {
+            token = lookahead;
+            id = (!strict && !isGenerator && matchKeyword('yield')) ? parseNonComputedProperty() : parseVariableIdentifier();
+            if (strict) {
+                if (isRestrictedWord(token.value)) {
+                    tolerateUnexpectedToken(token, Messages.StrictFunctionName);
+                }
+            } else {
+                if (isRestrictedWord(token.value)) {
+                    firstRestricted = token;
+                    message = Messages.StrictFunctionName;
+                } else if (isStrictModeReservedWord(token.value)) {
+                    firstRestricted = token;
+                    message = Messages.StrictReservedWord;
+                }
+            }
+        }
+
+        tmp = parseParams(firstRestricted);
+        params = tmp.params;
+        defaults = tmp.defaults;
+        stricted = tmp.stricted;
+        firstRestricted = tmp.firstRestricted;
+        if (tmp.message) {
+            message = tmp.message;
+        }
+
+        previousStrict = strict;
+        body = parseFunctionSourceElements();
+        if (strict && firstRestricted) {
+            throwUnexpectedToken(firstRestricted, message);
+        }
+        if (strict && stricted) {
+            tolerateUnexpectedToken(stricted, message);
+        }
+        strict = previousStrict;
+        state.allowYield = previousAllowYield;
+
+        return node.finishFunctionExpression(id, params, defaults, body, isGenerator);
+    }
+
+    // ECMA-262 14.5 Class Definitions
+
+    function parseClassBody() {
+        var classBody, token, isStatic, hasConstructor = false, body, method, computed, key;
+
+        classBody = new Node();
+
+        expect('{');
+        body = [];
+        while (!match('}')) {
+            if (match(';')) {
+                lex();
+            } else {
+                method = new Node();
+                token = lookahead;
+                isStatic = false;
+                computed = match('[');
+                if (match('*')) {
+                    lex();
+                } else {
+                    key = parseObjectPropertyKey();
+                    if (key.name === 'static' && (lookaheadPropertyName() || match('*'))) {
+                        token = lookahead;
+                        isStatic = true;
+                        computed = match('[');
+                        if (match('*')) {
+                            lex();
+                        } else {
+                            key = parseObjectPropertyKey();
+                        }
+                    }
+                }
+                method = tryParseMethodDefinition(token, key, computed, method);
+                if (method) {
+                    method['static'] = isStatic; // jscs:ignore requireDotNotation
+                    if (method.kind === 'init') {
+                        method.kind = 'method';
+                    }
+                    if (!isStatic) {
+                        if (!method.computed && (method.key.name || method.key.value.toString()) === 'constructor') {
+                            if (method.kind !== 'method' || !method.method || method.value.generator) {
+                                throwUnexpectedToken(token, Messages.ConstructorSpecialMethod);
+                            }
+                            if (hasConstructor) {
+                                throwUnexpectedToken(token, Messages.DuplicateConstructor);
+                            } else {
+                                hasConstructor = true;
+                            }
+                            method.kind = 'constructor';
+                        }
+                    } else {
+                        if (!method.computed && (method.key.name || method.key.value.toString()) === 'prototype') {
+                            throwUnexpectedToken(token, Messages.StaticPrototype);
+                        }
+                    }
+                    method.type = Syntax.MethodDefinition;
+                    delete method.method;
+                    delete method.shorthand;
+                    body.push(method);
+                } else {
+                    throwUnexpectedToken(lookahead);
+                }
+            }
+        }
+        lex();
+        return classBody.finishClassBody(body);
+    }
+
+    function parseClassDeclaration(identifierIsOptional) {
+        var id = null, superClass = null, classNode = new Node(), classBody, previousStrict = strict;
+        strict = true;
+
+        expectKeyword('class');
+
+        if (!identifierIsOptional || lookahead.type === Token.Identifier) {
+            id = parseVariableIdentifier();
+        }
+
+        if (matchKeyword('extends')) {
+            lex();
+            superClass = isolateCoverGrammar(parseLeftHandSideExpressionAllowCall);
+        }
+        classBody = parseClassBody();
+        strict = previousStrict;
+
+        return classNode.finishClassDeclaration(id, superClass, classBody);
+    }
+
+    function parseClassExpression() {
+        var id = null, superClass = null, classNode = new Node(), classBody, previousStrict = strict;
+        strict = true;
+
+        expectKeyword('class');
+
+        if (lookahead.type === Token.Identifier) {
+            id = parseVariableIdentifier();
+        }
+
+        if (matchKeyword('extends')) {
+            lex();
+            superClass = isolateCoverGrammar(parseLeftHandSideExpressionAllowCall);
+        }
+        classBody = parseClassBody();
+        strict = previousStrict;
+
+        return classNode.finishClassExpression(id, superClass, classBody);
+    }
+
+    // ECMA-262 15.2 Modules
+
+    function parseModuleSpecifier() {
+        var node = new Node();
+
+        if (lookahead.type !== Token.StringLiteral) {
+            throwError(Messages.InvalidModuleSpecifier);
+        }
+        return node.finishLiteral(lex());
+    }
+
+    // ECMA-262 15.2.3 Exports
+
+    function parseExportSpecifier() {
+        var exported, local, node = new Node(), def;
+        if (matchKeyword('default')) {
+            // export {default} from 'something';
+            def = new Node();
+            lex();
+            local = def.finishIdentifier('default');
+        } else {
+            local = parseVariableIdentifier();
+        }
+        if (matchContextualKeyword('as')) {
+            lex();
+            exported = parseNonComputedProperty();
+        }
+        return node.finishExportSpecifier(local, exported);
+    }
+
+    function parseExportNamedDeclaration(node) {
+        var declaration = null,
+            isExportFromIdentifier,
+            src = null, specifiers = [];
+
+        // non-default export
+        if (lookahead.type === Token.Keyword) {
+            // covers:
+            // export var f = 1;
+            switch (lookahead.value) {
+                case 'let':
+                case 'const':
+                    declaration = parseLexicalDeclaration({inFor: false});
+                    return node.finishExportNamedDeclaration(declaration, specifiers, null);
+                case 'var':
+                case 'class':
+                case 'function':
+                    declaration = parseStatementListItem();
+                    return node.finishExportNamedDeclaration(declaration, specifiers, null);
+            }
+        }
+
+        expect('{');
+        while (!match('}')) {
+            isExportFromIdentifier = isExportFromIdentifier || matchKeyword('default');
+            specifiers.push(parseExportSpecifier());
+            if (!match('}')) {
+                expect(',');
+                if (match('}')) {
+                    break;
+                }
+            }
+        }
+        expect('}');
+
+        if (matchContextualKeyword('from')) {
+            // covering:
+            // export {default} from 'foo';
+            // export {foo} from 'foo';
+            lex();
+            src = parseModuleSpecifier();
+            consumeSemicolon();
+        } else if (isExportFromIdentifier) {
+            // covering:
+            // export {default}; // missing fromClause
+            throwError(lookahead.value ?
+                    Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
+        } else {
+            // cover
+            // export {foo};
+            consumeSemicolon();
+        }
+        return node.finishExportNamedDeclaration(declaration, specifiers, src);
+    }
+
+    function parseExportDefaultDeclaration(node) {
+        var declaration = null,
+            expression = null;
+
+        // covers:
+        // export default ...
+        expectKeyword('default');
+
+        if (matchKeyword('function')) {
+            // covers:
+            // export default function foo () {}
+            // export default function () {}
+            declaration = parseFunctionDeclaration(new Node(), true);
+            return node.finishExportDefaultDeclaration(declaration);
+        }
+        if (matchKeyword('class')) {
+            declaration = parseClassDeclaration(true);
+            return node.finishExportDefaultDeclaration(declaration);
+        }
+
+        if (matchContextualKeyword('from')) {
+            throwError(Messages.UnexpectedToken, lookahead.value);
+        }
+
+        // covers:
+        // export default {};
+        // export default [];
+        // export default (1 + 2);
+        if (match('{')) {
+            expression = parseObjectInitializer();
+        } else if (match('[')) {
+            expression = parseArrayInitializer();
+        } else {
+            expression = parseAssignmentExpression();
+        }
+        consumeSemicolon();
+        return node.finishExportDefaultDeclaration(expression);
+    }
+
+    function parseExportAllDeclaration(node) {
+        var src;
+
+        // covers:
+        // export * from 'foo';
+        expect('*');
+        if (!matchContextualKeyword('from')) {
+            throwError(lookahead.value ?
+                    Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
+        }
+        lex();
+        src = parseModuleSpecifier();
+        consumeSemicolon();
+
+        return node.finishExportAllDeclaration(src);
+    }
+
+    function parseExportDeclaration() {
+        var node = new Node();
+        if (state.inFunctionBody) {
+            throwError(Messages.IllegalExportDeclaration);
+        }
+
+        expectKeyword('export');
+
+        if (matchKeyword('default')) {
+            return parseExportDefaultDeclaration(node);
+        }
+        if (match('*')) {
+            return parseExportAllDeclaration(node);
+        }
+        return parseExportNamedDeclaration(node);
+    }
+
+    // ECMA-262 15.2.2 Imports
+
+    function parseImportSpecifier() {
+        // import {<foo as bar>} ...;
+        var local, imported, node = new Node();
+
+        imported = parseNonComputedProperty();
+        if (matchContextualKeyword('as')) {
+            lex();
+            local = parseVariableIdentifier();
+        }
+
+        return node.finishImportSpecifier(local, imported);
+    }
+
+    function parseNamedImports() {
+        var specifiers = [];
+        // {foo, bar as bas}
+        expect('{');
+        while (!match('}')) {
+            specifiers.push(parseImportSpecifier());
+            if (!match('}')) {
+                expect(',');
+                if (match('}')) {
+                    break;
+                }
+            }
+        }
+        expect('}');
+        return specifiers;
+    }
+
+    function parseImportDefaultSpecifier() {
+        // import <foo> ...;
+        var local, node = new Node();
+
+        local = parseNonComputedProperty();
+
+        return node.finishImportDefaultSpecifier(local);
+    }
+
+    function parseImportNamespaceSpecifier() {
+        // import <* as foo> ...;
+        var local, node = new Node();
+
+        expect('*');
+        if (!matchContextualKeyword('as')) {
+            throwError(Messages.NoAsAfterImportNamespace);
+        }
+        lex();
+        local = parseNonComputedProperty();
+
+        return node.finishImportNamespaceSpecifier(local);
+    }
+
+    function parseImportDeclaration() {
+        var specifiers = [], src, node = new Node();
+
+        if (state.inFunctionBody) {
+            throwError(Messages.IllegalImportDeclaration);
+        }
+
+        expectKeyword('import');
+
+        if (lookahead.type === Token.StringLiteral) {
+            // import 'foo';
+            src = parseModuleSpecifier();
+        } else {
+
+            if (match('{')) {
+                // import {bar}
+                specifiers = specifiers.concat(parseNamedImports());
+            } else if (match('*')) {
+                // import * as foo
+                specifiers.push(parseImportNamespaceSpecifier());
+            } else if (isIdentifierName(lookahead) && !matchKeyword('default')) {
+                // import foo
+                specifiers.push(parseImportDefaultSpecifier());
+                if (match(',')) {
+                    lex();
+                    if (match('*')) {
+                        // import foo, * as foo
+                        specifiers.push(parseImportNamespaceSpecifier());
+                    } else if (match('{')) {
+                        // import foo, {bar}
+                        specifiers = specifiers.concat(parseNamedImports());
+                    } else {
+                        throwUnexpectedToken(lookahead);
+                    }
+                }
+            } else {
+                throwUnexpectedToken(lex());
+            }
+
+            if (!matchContextualKeyword('from')) {
+                throwError(lookahead.value ?
+                        Messages.UnexpectedToken : Messages.MissingFromClause, lookahead.value);
+            }
+            lex();
+            src = parseModuleSpecifier();
+        }
+
+        consumeSemicolon();
+        return node.finishImportDeclaration(specifiers, src);
+    }
+
+    // ECMA-262 15.1 Scripts
+
+    function parseScriptBody() {
+        var statement, body = [], token, directive, firstRestricted;
+
+        while (startIndex < length) {
+            token = lookahead;
+            if (token.type !== Token.StringLiteral) {
+                break;
+            }
+
+            statement = parseStatementListItem();
+            body.push(statement);
+            if (statement.expression.type !== Syntax.Literal) {
+                // this is not directive
+                break;
+            }
+            directive = source.slice(token.start + 1, token.end - 1);
+            if (directive === 'use strict') {
+                strict = true;
+                if (firstRestricted) {
+                    tolerateUnexpectedToken(firstRestricted, Messages.StrictOctalLiteral);
+                }
+            } else {
+                if (!firstRestricted && token.octal) {
+                    firstRestricted = token;
+                }
+            }
+        }
+
+        while (startIndex < length) {
+            statement = parseStatementListItem();
+            /* istanbul ignore if */
+            if (typeof statement === 'undefined') {
+                break;
+            }
+            body.push(statement);
+        }
+        return body;
+    }
+
+    function parseProgram() {
+        var body, node;
+
+        peek();
+        node = new Node();
+
+        body = parseScriptBody();
+        return node.finishProgram(body, state.sourceType);
+    }
+
+    function filterTokenLocation() {
+        var i, entry, token, tokens = [];
+
+        for (i = 0; i < extra.tokens.length; ++i) {
+            entry = extra.tokens[i];
+            token = {
+                type: entry.type,
+                value: entry.value
+            };
+            if (entry.regex) {
+                token.regex = {
+                    pattern: entry.regex.pattern,
+                    flags: entry.regex.flags
+                };
+            }
+            if (extra.range) {
+                token.range = entry.range;
+            }
+            if (extra.loc) {
+                token.loc = entry.loc;
+            }
+            tokens.push(token);
+        }
+
+        extra.tokens = tokens;
+    }
+
+    function tokenize(code, options, delegate) {
+        var toString,
+            tokens;
+
+        toString = String;
+        if (typeof code !== 'string' && !(code instanceof String)) {
+            code = toString(code);
+        }
+
+        source = code;
+        index = 0;
+        lineNumber = (source.length > 0) ? 1 : 0;
+        lineStart = 0;
+        startIndex = index;
+        startLineNumber = lineNumber;
+        startLineStart = lineStart;
+        length = source.length;
+        lookahead = null;
+        state = {
+            allowIn: true,
+            allowYield: true,
+            labelSet: {},
+            inFunctionBody: false,
+            inIteration: false,
+            inSwitch: false,
+            lastCommentStart: -1,
+            curlyStack: []
+        };
+
+        extra = {};
+
+        // Options matching.
+        options = options || {};
+
+        // Of course we collect tokens here.
+        options.tokens = true;
+        extra.tokens = [];
+        extra.tokenValues = [];
+        extra.tokenize = true;
+        extra.delegate = delegate;
+
+        // The following two fields are necessary to compute the Regex tokens.
+        extra.openParenToken = -1;
+        extra.openCurlyToken = -1;
+
+        extra.range = (typeof options.range === 'boolean') && options.range;
+        extra.loc = (typeof options.loc === 'boolean') && options.loc;
+
+        if (typeof options.comment === 'boolean' && options.comment) {
+            extra.comments = [];
+        }
+        if (typeof options.tolerant === 'boolean' && options.tolerant) {
+            extra.errors = [];
+        }
+
+        try {
+            peek();
+            if (lookahead.type === Token.EOF) {
+                return extra.tokens;
+            }
+
+            lex();
+            while (lookahead.type !== Token.EOF) {
+                try {
+                    lex();
+                } catch (lexError) {
+                    if (extra.errors) {
+                        recordError(lexError);
+                        // We have to break on the first error
+                        // to avoid infinite loops.
+                        break;
+                    } else {
+                        throw lexError;
+                    }
+                }
+            }
+
+            tokens = extra.tokens;
+            if (typeof extra.errors !== 'undefined') {
+                tokens.errors = extra.errors;
+            }
+        } catch (e) {
+            throw e;
+        } finally {
+            extra = {};
+        }
+        return tokens;
+    }
+
+    function parse(code, options) {
+        var program, toString;
+
+        toString = String;
+        if (typeof code !== 'string' && !(code instanceof String)) {
+            code = toString(code);
+        }
+
+        source = code;
+        index = 0;
+        lineNumber = (source.length > 0) ? 1 : 0;
+        lineStart = 0;
+        startIndex = index;
+        startLineNumber = lineNumber;
+        startLineStart = lineStart;
+        length = source.length;
+        lookahead = null;
+        state = {
+            allowIn: true,
+            allowYield: true,
+            labelSet: {},
+            inFunctionBody: false,
+            inIteration: false,
+            inSwitch: false,
+            lastCommentStart: -1,
+            curlyStack: [],
+            sourceType: 'script'
+        };
+        strict = false;
+
+        extra = {};
+        if (typeof options !== 'undefined') {
+            extra.range = (typeof options.range === 'boolean') && options.range;
+            extra.loc = (typeof options.loc === 'boolean') && options.loc;
+            extra.attachComment = (typeof options.attachComment === 'boolean') && options.attachComment;
+
+            if (extra.loc && options.source !== null && options.source !== undefined) {
+                extra.source = toString(options.source);
+            }
+
+            if (typeof options.tokens === 'boolean' && options.tokens) {
+                extra.tokens = [];
+            }
+            if (typeof options.comment === 'boolean' && options.comment) {
+                extra.comments = [];
+            }
+            if (typeof options.tolerant === 'boolean' && options.tolerant) {
+                extra.errors = [];
+            }
+            if (extra.attachComment) {
+                extra.range = true;
+                extra.comments = [];
+                extra.bottomRightStack = [];
+                extra.trailingComments = [];
+                extra.leadingComments = [];
+            }
+            if (options.sourceType === 'module') {
+                // very restrictive condition for now
+                state.sourceType = options.sourceType;
+                strict = true;
+            }
+        }
+
+        try {
+            program = parseProgram();
+            if (typeof extra.comments !== 'undefined') {
+                program.comments = extra.comments;
+            }
+            if (typeof extra.tokens !== 'undefined') {
+                filterTokenLocation();
+                program.tokens = extra.tokens;
+            }
+            if (typeof extra.errors !== 'undefined') {
+                program.errors = extra.errors;
+            }
+        } catch (e) {
+            throw e;
+        } finally {
+            extra = {};
+        }
+
+        return program;
+    }
+
+    // Sync with *.json manifests.
+    exports.version = '2.7.3';
+
+    exports.tokenize = tokenize;
+
+    exports.parse = parse;
+
+    // Deep copy.
+    /* istanbul ignore next */
+    exports.Syntax = (function () {
+        var name, types = {};
+
+        if (typeof Object.create === 'function') {
+            types = Object.create(null);
+        }
+
+        for (name in Syntax) {
+            if (Syntax.hasOwnProperty(name)) {
+                types[name] = Syntax[name];
+            }
+        }
+
+        if (typeof Object.freeze === 'function') {
+            Object.freeze(types);
+        }
+
+        return types;
+    }());
+
+}));
+/* vim: set sw=4 ts=4 et tw=80 : */
diff --git a/wrt/build/node_modules/rocambole/node_modules/esprima/package.json b/wrt/build/node_modules/rocambole/node_modules/esprima/package.json
new file mode 100644 (file)
index 0000000..1336567
--- /dev/null
@@ -0,0 +1,153 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "esprima@^2.1",
+        "scope": null,
+        "escapedName": "esprima",
+        "name": "esprima",
+        "rawSpec": "^2.1",
+        "spec": ">=2.1.0 <3.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole"
+    ]
+  ],
+  "_from": "esprima@>=2.1.0 <3.0.0",
+  "_id": "esprima@2.7.3",
+  "_inCache": true,
+  "_location": "/rocambole/esprima",
+  "_nodeVersion": "6.1.0",
+  "_npmOperationalInternal": {
+    "host": "packages-16-east.internal.npmjs.com",
+    "tmp": "tmp/esprima-2.7.3.tgz_1472013602345_0.010668299393728375"
+  },
+  "_npmUser": {
+    "name": "ariya",
+    "email": "ariya.hidayat@gmail.com"
+  },
+  "_npmVersion": "3.8.6",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "esprima@^2.1",
+    "scope": null,
+    "escapedName": "esprima",
+    "name": "esprima",
+    "rawSpec": "^2.1",
+    "spec": ">=2.1.0 <3.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/rocambole"
+  ],
+  "_resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
+  "_shasum": "96e3b70d5779f6ad49cd032673d1c312767ba581",
+  "_shrinkwrap": null,
+  "_spec": "esprima@^2.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/rocambole",
+  "author": {
+    "name": "Ariya Hidayat",
+    "email": "ariya.hidayat@gmail.com"
+  },
+  "bin": {
+    "esparse": "./bin/esparse.js",
+    "esvalidate": "./bin/esvalidate.js"
+  },
+  "bugs": {
+    "url": "https://github.com/jquery/esprima/issues"
+  },
+  "dependencies": {},
+  "description": "ECMAScript parsing infrastructure for multipurpose analysis",
+  "devDependencies": {
+    "codecov.io": "~0.1.6",
+    "escomplex-js": "1.2.0",
+    "eslint": "~1.7.2",
+    "everything.js": "~1.0.3",
+    "glob": "^5.0.15",
+    "istanbul": "~0.4.0",
+    "jscs": "~2.3.5",
+    "json-diff": "~0.3.1",
+    "karma": "^0.13.11",
+    "karma-chrome-launcher": "^0.2.1",
+    "karma-detect-browsers": "^2.0.2",
+    "karma-firefox-launcher": "^0.1.6",
+    "karma-ie-launcher": "^0.2.0",
+    "karma-mocha": "^0.2.0",
+    "karma-safari-launcher": "^0.1.1",
+    "karma-sauce-launcher": "^0.2.14",
+    "lodash": "^3.10.0",
+    "mocha": "^2.3.3",
+    "node-tick-processor": "~0.0.2",
+    "regenerate": "~1.2.1",
+    "temp": "~0.8.3",
+    "unicode-7.0.0": "~0.1.5"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "96e3b70d5779f6ad49cd032673d1c312767ba581",
+    "tarball": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "bin",
+    "unit-tests.js",
+    "esprima.js"
+  ],
+  "gitHead": "abaaf7f12040f0b31fac6fee342ffec8feab15d0",
+  "homepage": "http://esprima.org",
+  "keywords": [
+    "ast",
+    "ecmascript",
+    "javascript",
+    "parser",
+    "syntax"
+  ],
+  "license": "BSD-2-Clause",
+  "main": "esprima.js",
+  "maintainers": [
+    {
+      "name": "ariya",
+      "email": "ariya.hidayat@gmail.com"
+    }
+  ],
+  "name": "esprima",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jquery/esprima.git"
+  },
+  "scripts": {
+    "all-tests": "npm run generate-fixtures && npm run unit-tests && npm run grammar-tests && npm run regression-tests",
+    "analyze-coverage": "istanbul cover test/unit-tests.js",
+    "appveyor": "npm run all-tests && npm run browser-tests && npm run dynamic-analysis",
+    "benchmark": "node test/benchmarks.js",
+    "benchmark-quick": "node test/benchmarks.js quick",
+    "browser-tests": "npm run generate-fixtures && cd test && karma start --single-run",
+    "check-coverage": "istanbul check-coverage --statement 100 --branch 100 --function 100",
+    "check-version": "node test/check-version.js",
+    "circleci": "npm test && npm run codecov && npm run downstream",
+    "codecov": "istanbul report cobertura && codecov < ./coverage/cobertura-coverage.xml",
+    "complexity": "node test/check-complexity.js",
+    "downstream": "node test/downstream.js",
+    "droneio": "npm test && npm run saucelabs-evergreen && npm run saucelabs-ie && npm run saucelabs-safari",
+    "dynamic-analysis": "npm run analyze-coverage && npm run check-coverage",
+    "eslint": "node node_modules/eslint/bin/eslint.js -c .lintrc esprima.js",
+    "generate-fixtures": "node tools/generate-fixtures.js",
+    "generate-regex": "node tools/generate-identifier-regex.js",
+    "grammar-tests": "node test/grammar-tests.js",
+    "jscs": "jscs -p crockford esprima.js && jscs -p crockford test/*.js",
+    "profile": "node --prof test/profile.js && mv isolate*.log v8.log && node-tick-processor",
+    "regression-tests": "node test/regression-tests.js",
+    "saucelabs-evergreen": "cd test && karma start saucelabs-evergreen.conf.js",
+    "saucelabs-ie": "cd test && karma start saucelabs-ie.conf.js",
+    "saucelabs-safari": "cd test && karma start saucelabs-safari.conf.js",
+    "static-analysis": "npm run check-version && npm run jscs && npm run eslint && npm run complexity",
+    "test": "npm run all-tests && npm run static-analysis && npm run dynamic-analysis",
+    "travis": "npm test",
+    "unit-tests": "node test/unit-tests.js"
+  },
+  "version": "2.7.3"
+}
diff --git a/wrt/build/node_modules/rocambole/package.json b/wrt/build/node_modules/rocambole/package.json
new file mode 100644 (file)
index 0000000..04ca58d
--- /dev/null
@@ -0,0 +1,99 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "rocambole@>=0.5 <2.0",
+        "scope": null,
+        "escapedName": "rocambole",
+        "name": "rocambole",
+        "rawSpec": ">=0.5 <2.0",
+        "spec": ">=0.5.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "rocambole@>=0.5.0 <2.0.0",
+  "_id": "rocambole@0.7.0",
+  "_inCache": true,
+  "_location": "/rocambole",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "millermedeiros",
+    "email": "miller@millermedeiros.com"
+  },
+  "_npmVersion": "2.12.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "rocambole@>=0.5 <2.0",
+    "scope": null,
+    "escapedName": "rocambole",
+    "name": "rocambole",
+    "rawSpec": ">=0.5 <2.0",
+    "spec": ">=0.5.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/rocambole/-/rocambole-0.7.0.tgz",
+  "_shasum": "f6c79505517dc42b6fb840842b8b953b0f968585",
+  "_shrinkwrap": null,
+  "_spec": "rocambole@>=0.5 <2.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "author": {
+    "name": "Miller Medeiros",
+    "email": "http://blog.millermedeiros.com"
+  },
+  "bugs": {
+    "url": "https://github.com/millermedeiros/rocambole/issues"
+  },
+  "dependencies": {
+    "esprima": "^2.1"
+  },
+  "description": "Recursively walk and transform EcmaScript AST",
+  "devDependencies": {
+    "expect.js": "0.2",
+    "istanbul": "~0.1.23",
+    "mocha": "~1.7"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "f6c79505517dc42b6fb840842b8b953b0f968585",
+    "tarball": "https://registry.npmjs.org/rocambole/-/rocambole-0.7.0.tgz"
+  },
+  "gitHead": "e2c69432a322d94e88b4f18417d65f6800d8dc7c",
+  "homepage": "https://github.com/millermedeiros/rocambole#readme",
+  "keywords": [
+    "ast",
+    "walk",
+    "syntax",
+    "source",
+    "tree",
+    "traversal",
+    "falafel",
+    "burrito",
+    "esprima"
+  ],
+  "license": "MIT",
+  "main": "rocambole.js",
+  "maintainers": [
+    {
+      "name": "millermedeiros",
+      "email": "miller@millermedeiros.com"
+    }
+  ],
+  "name": "rocambole",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/millermedeiros/rocambole.git"
+  },
+  "scripts": {
+    "test": "istanbul test test/runner.js"
+  },
+  "version": "0.7.0"
+}
diff --git a/wrt/build/node_modules/rocambole/rocambole.js b/wrt/build/node_modules/rocambole/rocambole.js
new file mode 100644 (file)
index 0000000..38b40eb
--- /dev/null
@@ -0,0 +1,435 @@
+/*jshint node:true */
+"use strict";
+
+
+var esprima = require('esprima');
+
+
+
+// ---
+
+// we expose the flags so other tools can tweak the values (#8)
+exports.BYPASS_RECURSION = {
+    root : true,
+    comments : true,
+    tokens : true,
+
+    loc : true,
+    range : true,
+
+    parent : true,
+    next : true,
+    prev : true,
+
+    // esprima@2.1 introduces a "handler" property on TryStatement in addition to
+    // "handlers", which contains the same node, so we would
+    // loop the same node twice (see jquery/esprima/issues/1031 and #264)`
+    //
+    // Instead, ignore the handlers list in favor of the standardized "handler"
+    // property: https://github.com/eslint/eslint/issues/1930
+    handlers : true,
+
+    // IMPORTANT! "value" can't be bypassed since it is used by object
+    // expression
+    type : true,
+    raw : true,
+
+    startToken : true,
+    endToken : true
+};
+
+
+// ---
+
+var _addLocInfo;
+
+// ---
+
+exports.parseFn = esprima.parse;
+exports.parseContext = esprima;
+// we need range/tokens/comment info to build the tokens linked list!
+exports.parseOptions = {
+    range: true,
+    tokens: true,
+    comment: true
+};
+
+// parse string and return an augmented AST
+exports.parse = function parse(source, opts){
+    opts = opts || {};
+    _addLocInfo = Boolean(opts.loc);
+    source = source.toString();
+
+    Object.keys(exports.parseOptions).forEach(function(key) {
+        if (!(key in opts)) {
+            opts[key] = exports.parseOptions[key];
+        }
+    });
+
+    var ast = exports.parseFn.call(exports.parseContext, source, opts);
+
+    // we augment just root node since program is "empty"
+    // can't check `ast.body.length` because it might contain just comments
+    if (!ast.tokens.length && !ast.comments.length) {
+        ast.depth = 0;
+        ast.startToken = ast.endToken = null;
+        ast.toString = _nodeProto.toString;
+        return ast;
+    }
+
+    instrumentTokens(ast, source);
+
+    // update program range since it doesn't include white spaces and comments
+    // before/after the program body by default
+    var lastToken = ast.tokens[ast.tokens.length - 1];
+    ast.range[0] = ast.tokens[0].range[0];
+    ast.range[1] = lastToken.range[1];
+    if (_addLocInfo) {
+        ast.loc.start.line = 0;
+        ast.loc.start.column = 0;
+        ast.loc.end.line = lastToken.loc.end.line;
+        ast.loc.end.column = lastToken.loc.end.column;
+    }
+
+    var toString = _nodeProto.toString;
+    var instrumentNodes = function(node, parent, prev, next){
+
+        node.parent = parent;
+        node.prev = prev;
+        node.next = next;
+        node.depth = parent? parent.depth + 1 : 0; // used later for moonwalk
+
+        node.toString = toString;
+
+        // we do not add nextToken and prevToken to avoid updating even more
+        // references during each remove/before/after you can grab the
+        // prev/next token by simply accesing the startToken.prev and
+        // endToken.next
+        var prevToken = prev? prev.endToken : (parent? parent.startToken : null);
+        var nextToken = parent? parent.endToken : null;
+        node.startToken = prevToken? getNodeStartToken(prevToken, node.range) : ast.tokens[0];
+        node.endToken = nextToken? getNodeEndToken(nextToken, node.range) : ast.tokens[ast.tokens.length - 1];
+    };
+    recursiveWalk(ast, instrumentNodes);
+
+    return ast;
+};
+
+
+var _nodeProto = {};
+
+// get the node string
+_nodeProto.toString = function(){
+    var str = '';
+    var token = this.startToken;
+    if (!token) return str;
+    do {
+        str += ('raw' in token)? token.raw : token.value;
+        token = token.next;
+    } while (token && token !== this.endToken.next);
+    return str;
+};
+
+
+function getNodeStartToken(token, range){
+    var startRange = range[0];
+    while (token){
+        if (token.range[0] >= startRange) {
+            return token;
+        }
+        token = token.next;
+    }
+}
+
+function getNodeEndToken(token, range){
+    var endRange = range[1];
+    while (token){
+        if (token.range[1] <= endRange) {
+            return token;
+        }
+        token = token.prev;
+    }
+}
+
+
+
+function getPrevToken(tokens, range){
+    var result, token,
+        startRange = range[0],
+        n = tokens.length;
+    while (n--) {
+        token = tokens[n];
+        if (token.range[1] <= startRange) {
+            result = token;
+            break;
+        }
+    }
+    return result;
+}
+
+
+
+
+
+
+function instrumentTokens(ast, source){
+
+    var tokens = ast.tokens;
+
+
+    // --- inject comments into tokens list
+    var comments = ast.comments;
+    var comment,
+        q = -1,
+        nComments = comments.length;
+
+    while (++q < nComments) {
+        comment = comments[q];
+        // we edit it in place since it is faster, will also affect
+        comment.raw = comment.type === 'Block'? '/*'+ comment.value +'*/' : '//'+ comment.value;
+        comment.type += 'Comment';
+
+        var prevToken = getPrevToken(tokens, comment.range);
+        var prevIndex = prevToken? tokens.indexOf(prevToken) : -1;
+        tokens.splice(prevIndex + 1, 0, comment);
+    }
+
+
+    // --- inject white spaces and line breaks
+
+    // we create a new array since it's simpler than using splice, it will
+    // also avoid mistakes
+    var result = [];
+
+    // insert white spaces before start of program
+    var wsTokens;
+    var firstToken = ast.tokens[0];
+    var raw;
+    if ( firstToken.range[0] ) {
+        raw = source.substring(0, firstToken.range[0]);
+        result = result.concat( getWhiteSpaceTokens(raw, null) );
+    }
+
+    // insert white spaces between regular tokens
+    // faster than forEach and reduce lookups
+    var i = -1,
+        nTokens = tokens.length,
+        token, prev;
+    var k, nWs;
+    while (++i < nTokens) {
+        token = tokens[i];
+        if (i) {
+            if (prev.range[1] < token.range[0]) {
+                wsTokens = getWhiteSpaceTokens(source.substring(prev.range[1], token.range[0]), prev);
+                // faster than concat or push.apply
+                k = -1;
+                nWs = wsTokens.length;
+                while (++k < nWs) {
+                    result.push(wsTokens[k]);
+                }
+            }
+        }
+        result.push(token);
+        prev = token;
+    }
+
+    // insert white spaces after end of program
+    var lastToken = ast.tokens[ast.tokens.length - 1];
+    if (lastToken.range[1] < source.length) {
+        wsTokens = getWhiteSpaceTokens(source.substring(lastToken.range[1], source.length), lastToken);
+        k = -1;
+        nWs = wsTokens.length;
+        while (++k < nWs) {
+            result.push(wsTokens[k]);
+        }
+    }
+
+    // --- instrument tokens
+
+    // need to come afterwards since we add line breaks and comments
+    var n;
+    for (i = 0, n = result.length, token; i < n; i++) {
+        token = result[i];
+        token.prev = i? result[i - 1] : undefined;
+        token.next = result[i + 1];
+        token.root = ast; // used internally
+        // original indent is very important for block comments since some
+        // transformations require manipulation of raw comment value
+        if (
+          token.type === 'BlockComment' &&
+          token.prev && token.prev.type === 'WhiteSpace' &&
+          (!token.prev.prev || (token.prev.prev.type === 'LineBreak'))
+        ) {
+          token.originalIndent = token.prev.value;
+        }
+    }
+
+    ast.tokens = result;
+}
+
+
+function getWhiteSpaceTokens(raw, prev){
+    var whiteSpaces = getWhiteSpaces(raw);
+
+    var startRange = prev? prev.range[1] : 0;
+    // line starts at 1 !!!
+    var startLine, startColumn;
+    if (_addLocInfo) {
+        startLine = prev? prev.loc.end.line : 1;
+        startColumn = prev? prev.loc.end.column : 0;
+    }
+
+    var tokens = [];
+    for (var i = 0, n = whiteSpaces.length, value; i < n; i++){
+        value = whiteSpaces[i];
+
+        var wsToken = { value : value };
+        var isBr = '\r\n'.indexOf(value) >= 0;
+        wsToken.type = isBr? 'LineBreak' : 'WhiteSpace';
+        wsToken.range = [startRange, startRange + value.length];
+
+        if (_addLocInfo) {
+            wsToken.loc = {
+                start : {
+                    line : startLine,
+                    column : startColumn
+                },
+                end : {
+                    line : startLine, // yes, br starts and end on same line
+                    column : startColumn + value.length
+                }
+            };
+
+            if (isBr) {
+                // next token after a <br> always starts at zero and on next line
+                startLine = wsToken.loc.end.line + 1;
+                startColumn = 0;
+            } else {
+                startLine = wsToken.loc.end.line;
+                startColumn = wsToken.loc.end.column;
+            }
+        }
+
+        startRange += value.length;
+        tokens.push(wsToken);
+    }
+
+    return tokens;
+}
+
+
+function getWhiteSpaces(source) {
+    var result = [];
+    var whiteSpaces = source.split('');
+    var buf = '';
+    for (var value, i = 0, nSpaces = whiteSpaces.length; i < nSpaces; i++) {
+        value = whiteSpaces[i];
+        switch(value){
+            case '\n':
+                if (buf === '\r') {
+                    // DOS line break
+                    result.push(buf + value);
+                } else {
+                    if (buf) {
+                        result.push(buf);
+                    }
+                    // unix break
+                    result.push(value);
+                }
+                buf = '';
+                break;
+            case '\r':
+                // might be multiple consecutive Mac breaks
+                if (buf) {
+                    result.push(buf);
+                }
+                buf = value;
+                break;
+            default:
+                if (buf === '\r') {
+                    result.push(buf);
+                    buf = value;
+                } else {
+                    // group multiple white spaces into same token
+                    buf += value;
+                }
+        }
+    }
+    if (buf) {
+        result.push(buf);
+    }
+    return result;
+}
+
+
+
+exports.walk = exports.recursive = recursiveWalk;
+
+// heavily inspired by node-falafel
+// walk nodes recursively starting from root
+function recursiveWalk(node, fn, parent, prev, next){
+    // sparse arrays might have `null` elements, so we skip those for now
+    // see issue #15
+    if ( !node || fn(node, parent, prev, next) === false ) {
+        return; // stop recursion
+    }
+
+    // faster than for in
+    var keys = Object.keys(node),
+        child, key;
+
+    for (var i = 0, nKeys = keys.length; i < nKeys; i++) {
+
+        key = keys[i];
+        child = node[key];
+
+        // only need to recurse real nodes and arrays
+        // ps: typeof null == 'object'
+        if (!child || typeof child !== 'object' || exports.BYPASS_RECURSION[key]) {
+            continue;
+        }
+
+        // inception
+        if (typeof child.type === 'string') { // faster than boolean coercion
+            recursiveWalk(child, fn, node);
+        } else if ( typeof child.length === 'number' ) { // faster than Array.isArray and boolean coercion
+            // faster than forEach
+            for (var k = 0, nChilds = child.length; k < nChilds; k++) {
+                recursiveWalk(child[k], fn, node, (k? child[k - 1] : undefined), child[k + 1] );
+            }
+        }
+
+    }
+
+}
+
+
+
+// walk AST starting from leaf nodes
+exports.moonwalk = function moonwalk(ast, fn){
+    if (typeof ast === 'string') {
+        ast = exports.parse(ast);
+    }
+
+    // we create a separate array for each depth and than we flatten it to
+    // boost performance, way faster than doing an insertion sort
+    var swap = [];
+    recursiveWalk(ast, function(node){
+        if (! swap[node.depth]) {
+            swap[node.depth] = [];
+        }
+        swap[node.depth].push(node);
+    });
+
+    var nodes = [];
+    var nDepths = swap.length, cur;
+    while (cur = swap[--nDepths]) {
+        for (var i = 0, n = cur.length; i < n; i++) {
+            nodes.push(cur[i]);
+        }
+    }
+
+    nodes.forEach(fn);
+    return ast;
+};
+
diff --git a/wrt/build/node_modules/run-parallel/.npmignore b/wrt/build/node_modules/run-parallel/.npmignore
new file mode 100644 (file)
index 0000000..2e1712c
--- /dev/null
@@ -0,0 +1 @@
+img.png
diff --git a/wrt/build/node_modules/run-parallel/.travis.yml b/wrt/build/node_modules/run-parallel/.travis.yml
new file mode 100644 (file)
index 0000000..199bf34
--- /dev/null
@@ -0,0 +1,7 @@
+language: node_js
+node_js:
+- 'iojs'
+env:
+  global:
+  - secure: T7mCjAOoVie1FZmArsemYTcZcw7qCBwmZAZG1s0nRZNEoa5HilHRntUtIUzKf8Kd9lpibAjcF2DBDieq5AiaQIANfcPhxzp31nDRwPEsF5rFhHKYdWRsPyRrv3D387VH/X5xZ5I1Mk9vAvZzqd6mGdlPYZ0YPAG0aNOalQnRXOM=
+  - secure: NwZOvg2y84GTit1rL6P+mhfrju8yua0lZ/+i4Pp5sQhI/bU2nCt1Gpr4UtaogevQAYZKtlTlW0GI+iuph67Qx9lq4Uf9HvuhFeEz3fRBiR3KzLbzlDXaWyRo9W86sjUiO/giVaWty7OQSsFRgXDzkZd7sbVjGhWIbqLBvSss1Yo=
diff --git a/wrt/build/node_modules/run-parallel/.zuul.yml b/wrt/build/node_modules/run-parallel/.zuul.yml
new file mode 100644 (file)
index 0000000..02f3d18
--- /dev/null
@@ -0,0 +1,14 @@
+ui: tape
+browsers:
+  - name: chrome
+    version: latest
+  - name: firefox
+    version: latest
+  - name: safari
+    version: latest
+  - name: microsoftedge
+    version: latest
+  - name: ie
+    version: latest
+  - name: android
+    version: latest
diff --git a/wrt/build/node_modules/run-parallel/README.md b/wrt/build/node_modules/run-parallel/README.md
new file mode 100644 (file)
index 0000000..a5a8394
--- /dev/null
@@ -0,0 +1,83 @@
+# run-parallel [![travis][travis-image]][travis-url] [![npm][npm-image]][npm-url] [![downloads][downloads-image]][downloads-url]
+
+[travis-image]: https://img.shields.io/travis/feross/run-parallel/master.svg
+[travis-url]: https://travis-ci.org/feross/run-parallel
+[npm-image]: https://img.shields.io/npm/v/run-parallel.svg
+[npm-url]: https://npmjs.org/package/run-parallel
+[downloads-image]: https://img.shields.io/npm/dm/run-parallel.svg
+[downloads-url]: https://npmjs.org/package/run-parallel
+
+### Run an array of functions in parallel
+
+![parallel](https://raw.githubusercontent.com/feross/run-parallel/master/img.png) [![Sauce Test Status](https://saucelabs.com/browser-matrix/run-parallel.svg)](https://saucelabs.com/u/run-parallel)
+
+### install
+
+```
+npm install run-parallel
+```
+
+### usage
+
+#### parallel(tasks, [callback])
+
+Run the `tasks` array of functions in parallel, without waiting until the previous
+function has completed. If any of the functions pass an error to its callback, the main
+`callback` is immediately called with the value of the error. Once the `tasks` have
+completed, the results are passed to the final `callback` as an array.
+
+It is also possible to use an object instead of an array. Each property will be run as a
+function and the results will be passed to the final `callback` as an object instead of
+an array. This can be a more readable way of handling the results.
+
+##### arguments
+
+- `tasks` - An array or object containing functions to run. Each function is passed a
+`callback(err, result)` which it must call on completion with an error `err` (which can
+be `null`) and an optional `result` value.
+- `callback(err, results)` - An optional callback to run once all the functions have
+completed. This function gets a results array (or object) containing all the result
+arguments passed to the task callbacks.
+
+##### example
+
+```js
+var parallel = require('run-parallel')
+
+parallel([
+  function (callback) {
+    setTimeout(function () {
+      callback(null, 'one')
+    }, 200)
+  },
+  function (callback) {
+    setTimeout(function () {
+      callback(null, 'two')
+    }, 100)
+  }
+],
+// optional callback
+function (err, results) {
+  // the results array will equal ['one','two'] even though
+  // the second function had a shorter timeout.
+})
+```
+
+This module is basically equavalent to
+[`async.parallel`](https://github.com/caolan/async#paralleltasks-callback), but it's
+handy to just have the one function you need instead of the kitchen sink. Modularity!
+Especially handy if you're serving to the browser and need to reduce your javascript
+bundle size.
+
+Works great in the browser with [browserify](http://browserify.org/)!
+
+### see also
+
+- [run-auto](https://github.com/feross/run-auto)
+- [run-parallel-limit](https://github.com/feross/run-parallel-limit)
+- [run-series](https://github.com/feross/run-series)
+- [run-waterfall](https://github.com/feross/run-waterfall)
+
+### license
+
+MIT. Copyright (c) [Feross Aboukhadijeh](http://feross.org).
diff --git a/wrt/build/node_modules/run-parallel/index.js b/wrt/build/node_modules/run-parallel/index.js
new file mode 100644 (file)
index 0000000..781f02c
--- /dev/null
@@ -0,0 +1,46 @@
+module.exports = function (tasks, cb) {
+  var results, pending, keys
+  var isSync = true
+
+  if (Array.isArray(tasks)) {
+    results = []
+    pending = tasks.length
+  } else {
+    keys = Object.keys(tasks)
+    results = {}
+    pending = keys.length
+  }
+
+  function done (err) {
+    function end () {
+      if (cb) cb(err, results)
+      cb = null
+    }
+    if (isSync) process.nextTick(end)
+    else end()
+  }
+
+  function each (i, err, result) {
+    results[i] = result
+    if (--pending === 0 || err) {
+      done(err)
+    }
+  }
+
+  if (!pending) {
+    // empty
+    done(null)
+  } else if (keys) {
+    // object
+    keys.forEach(function (key) {
+      tasks[key](function (err, result) { each(key, err, result) })
+    })
+  } else {
+    // array
+    tasks.forEach(function (task, i) {
+      task(function (err, result) { each(i, err, result) })
+    })
+  }
+
+  isSync = false
+}
diff --git a/wrt/build/node_modules/run-parallel/package.json b/wrt/build/node_modules/run-parallel/package.json
new file mode 100644 (file)
index 0000000..abf20b9
--- /dev/null
@@ -0,0 +1,102 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "run-parallel@^1.0.0",
+        "scope": null,
+        "escapedName": "run-parallel",
+        "name": "run-parallel",
+        "rawSpec": "^1.0.0",
+        "spec": ">=1.0.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "run-parallel@>=1.0.0 <2.0.0",
+  "_id": "run-parallel@1.1.6",
+  "_inCache": true,
+  "_location": "/run-parallel",
+  "_nodeVersion": "4.4.1",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/run-parallel-1.1.6.tgz_1459234996201_0.7449365314096212"
+  },
+  "_npmUser": {
+    "name": "feross",
+    "email": "feross@feross.org"
+  },
+  "_npmVersion": "2.15.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "run-parallel@^1.0.0",
+    "scope": null,
+    "escapedName": "run-parallel",
+    "name": "run-parallel",
+    "rawSpec": "^1.0.0",
+    "spec": ">=1.0.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.6.tgz",
+  "_shasum": "29003c9a2163e01e2d2dfc90575f2c6c1d61a039",
+  "_shrinkwrap": null,
+  "_spec": "run-parallel@^1.0.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "Feross Aboukhadijeh",
+    "email": "feross@feross.org",
+    "url": "http://feross.org/"
+  },
+  "bugs": {
+    "url": "https://github.com/feross/run-parallel/issues"
+  },
+  "dependencies": {},
+  "description": "Run an array of functions in parallel",
+  "devDependencies": {
+    "standard": "^6.0.5",
+    "tape": "^4.0.0",
+    "zuul": "^3.1.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "29003c9a2163e01e2d2dfc90575f2c6c1d61a039",
+    "tarball": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.6.tgz"
+  },
+  "gitHead": "f9ee5e836569ec13712889a208a0a730069e22af",
+  "homepage": "https://github.com/feross/run-parallel",
+  "keywords": [
+    "parallel",
+    "async",
+    "function",
+    "callback",
+    "asynchronous",
+    "run",
+    "array",
+    "run parallel"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "maintainers": [
+    {
+      "name": "feross",
+      "email": "feross@feross.org"
+    }
+  ],
+  "name": "run-parallel",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/feross/run-parallel.git"
+  },
+  "scripts": {
+    "test": "standard && npm run test-node && npm run test-browser",
+    "test-browser": "zuul -- test/*.js",
+    "test-browser-local": "zuul --local -- test/*.js",
+    "test-node": "tape test/*.js"
+  },
+  "version": "1.1.6"
+}
diff --git a/wrt/build/node_modules/run-parallel/test/error.js b/wrt/build/node_modules/run-parallel/test/error.js
new file mode 100644 (file)
index 0000000..8290273
--- /dev/null
@@ -0,0 +1,81 @@
+var parallel = require('../')
+var test = require('tape')
+
+test('functions that return errors (array)', function (t) {
+  t.plan(3)
+
+  var tasks = [
+    function (cb) {
+      t.pass('cb 1')
+      cb(new Error('oops'))
+    },
+    function (cb) {
+      setTimeout(function () {
+        t.pass('cb 2')
+        cb(null, 2)
+      }, 100)
+    }
+  ]
+
+  parallel(tasks, function (err) {
+    t.ok(err instanceof Error)
+  })
+})
+
+test('functions that return errors (object)', function (t) {
+  t.plan(3)
+
+  var tasks = {
+    one: function (cb) {
+      t.pass('cb 1')
+      cb(new Error('oops'))
+    },
+    two: function (cb) {
+      setTimeout(function () {
+        t.pass('cb 2')
+        cb(null, 2)
+      }, 100)
+    }
+  }
+
+  parallel(tasks, function (err) {
+    t.ok(err instanceof Error)
+  })
+})
+
+test('functions that return errors (object) w/ partial results', function (t) {
+  t.plan(4)
+
+  var tasks = {
+    one: function (cb) {
+      t.pass('cb 1')
+      cb(null, 1)
+    },
+    two: function (cb) {
+      setTimeout(function () {
+        t.pass('cb 2')
+        cb(new Error('oops'))
+      }, 100)
+    }
+  }
+
+  parallel(tasks, function (err, results) {
+    t.ok(err instanceof Error)
+    t.deepEqual(results, { one: 1, two: undefined })
+  })
+})
+
+test('array of functions that produce multiple errors', function (t) {
+  var tasks = [
+    function (cb) {
+      cb(new Error('a'))
+    },
+    function (cb) {
+      cb(new Error('b'))
+    }
+  ]
+  parallel(tasks, function (err) {
+    t.ok(err.message === 'a', 'only observes the first error')
+    t.end()
+  })
+})
diff --git a/wrt/build/node_modules/semver/package.json b/wrt/build/node_modules/semver/package.json
new file mode 100644 (file)
index 0000000..755089e
--- /dev/null
@@ -0,0 +1,83 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "semver@~2.2.1",
+        "scope": null,
+        "escapedName": "semver",
+        "name": "semver",
+        "rawSpec": "~2.2.1",
+        "spec": ">=2.2.1 <2.3.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter"
+    ]
+  ],
+  "_from": "semver@>=2.2.1 <2.3.0",
+  "_id": "semver@2.2.1",
+  "_inCache": true,
+  "_location": "/semver",
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "i@izs.me"
+  },
+  "_npmVersion": "1.3.12",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "semver@~2.2.1",
+    "scope": null,
+    "escapedName": "semver",
+    "name": "semver",
+    "rawSpec": "~2.2.1",
+    "spec": ">=2.2.1 <2.3.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter"
+  ],
+  "_resolved": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz",
+  "_shasum": "7941182b3ffcc580bff1c17942acdf7951c0d213",
+  "_shrinkwrap": null,
+  "_spec": "semver@~2.2.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter",
+  "bin": {
+    "semver": "./bin/semver"
+  },
+  "browser": "semver.browser.js",
+  "bugs": {
+    "url": "https://github.com/isaacs/node-semver/issues"
+  },
+  "dependencies": {},
+  "description": "The semantic version parser used by npm.",
+  "devDependencies": {
+    "tap": "0.x >=0.0.4",
+    "uglify-js": "~2.3.6"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "7941182b3ffcc580bff1c17942acdf7951c0d213",
+    "tarball": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz"
+  },
+  "homepage": "https://github.com/isaacs/node-semver",
+  "license": "BSD",
+  "main": "semver.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "i@izs.me"
+    }
+  ],
+  "min": "semver.min.js",
+  "name": "semver",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/isaacs/node-semver.git"
+  },
+  "scripts": {
+    "prepublish": "make",
+    "test": "tap test/*.js"
+  },
+  "version": "2.2.1"
+}
diff --git a/wrt/build/node_modules/serializerr/.travis.yml b/wrt/build/node_modules/serializerr/.travis.yml
new file mode 100644 (file)
index 0000000..8c3378a
--- /dev/null
@@ -0,0 +1,8 @@
+language: node_js
+before_install: npm install npm -g
+node_js:
+  - "4"
+  - "6"
+  - "0.12"
+  - "0.11"
+  - "0.10"
diff --git a/wrt/build/node_modules/serializerr/Readme.md b/wrt/build/node_modules/serializerr/Readme.md
new file mode 100644 (file)
index 0000000..5fd4b9c
--- /dev/null
@@ -0,0 +1,100 @@
+# serializerr
+
+Convert Errors & Objects into an easily-serialized vanilla Object.
+
+[![Build Status](https://travis-ci.org/timoxley/serializerr.png?branch=master)](https://travis-ci.org/timoxley/serializerr)
+
+`serializerr` creates a vanilla `Object` with a flattened prototype
+chain & any non-enumerable properties mapped to enumerable properties.
+
+This allows `Error` objects to be serialised to JSON without losing
+important data.
+
+## Installation
+
+```
+npm install serializerr
+```
+
+## Usage
+
+```js
+
+var wellSerializedError = JSON.parse(JSON.stringify(
+  serializerr(error)
+))
+
+console.log(wellSerializedError.name) // Error
+console.log(wellSerializedError.message) // an error occurred
+console.log(wellSerializedError.stack) // Error: an error occurred\n  at Test.<anonymous> ...
+
+```
+
+## Example
+
+```js
+
+var serializerr = require('serializerr')
+
+var error = new Error('an error')
+
+// simulate transferring an Error object over the wire as JSON
+// without first passing through serializerr
+var poorlySerializedError = JSON.parse(JSON.stringify(error))
+
+// oh dear:
+console.log(poorlySerializedError.name) // undefined
+console.log(poorlySerializedError.message) // undefined
+console.log(poorlySerializedError.stack) // undefined
+
+// bring forth the serializerr
+var errorObject = serializerr(error)
+
+var wellSerializedError = JSON.parse(JSON.stringify(errorObject))
+
+// properties are conserved!
+console.log(wellSerializedError.name) // Error
+console.log(wellSerializedError.message) // an error occurred
+console.log(wellSerializedError.stack) // Error: an error occurred\n  at Test.<anonymous> ...
+
+// note errorObject is a vanilla Object, not an Error
+errorObject instanceof Error // false
+```
+
+## Why
+
+If you've ever tried to send an Error over a JSON-encoded connection
+you've probably been surprised to find all the useful information is
+sapped out of it; all the juicy properties like `name`, `message` &
+`stack` are non-enumerable thus they are not included in the
+stringified JSON. This may be non-standard behaviour, as I could not
+locate any mention in either the ES5.1 or the ES6 spec about it, but
+Error properties are non-enumerable both in V8 (Chrome/io.js/Node.js) &
+SpiderMonkey (Firefox).
+
+I believe Error property non-enumerability was added as a security
+measure to prevent stack traces and other sensitive information
+accidentally leaking, but it's not uncommon to actually want to send
+the data in Error objects over the wire.
+
+`serializerr` makes an Object suitable for serializing to & from
+JSON. Not restricted to use with Errors, will work with any Object.
+
+## Notes on 'ize' vs 'ise'
+
+Name was selected as programming world is mostly Americanised, and npm
+search does not seem to do effective stemming.
+
+This decision came with strong feelings of guilt and shame about what I thought
+was blasphemous Americanised spelling, but it turns out this is a
+misconception thus I am pardoned:
+
+> The -ize spelling is often incorrectly seen as an Americanism in
+> Britain. However, the Oxford English Dictionary (OED) recommends -ize
+> and notes that the -ise spelling is from French.
+
+From [Wikipedia: American and British English spelling differences](http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences#-ise.2C_-ize_.28-isation.2C_-ization.29)
+
+## License
+
+ISC
diff --git a/wrt/build/node_modules/serializerr/index.js b/wrt/build/node_modules/serializerr/index.js
new file mode 100644 (file)
index 0000000..cf53d43
--- /dev/null
@@ -0,0 +1,19 @@
+import protochain from 'protochain'
+
+function serializerr (obj = {}) {
+  const chain = protochain(obj)
+  .filter(obj => obj !== Object.prototype)
+  return [obj]
+  .concat(chain)
+  .map(item => Object.getOwnPropertyNames(item))
+  .reduce((result, names) => {
+    names.forEach(name => {
+      result[name] = obj[name]
+    })
+    return result
+  }, {})
+}
+
+module.exports = serializerr
+serializerr.serializerr = serializerr
+export default serializerr
diff --git a/wrt/build/node_modules/serializerr/package.json b/wrt/build/node_modules/serializerr/package.json
new file mode 100644 (file)
index 0000000..b1f6d9b
--- /dev/null
@@ -0,0 +1,117 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "serializerr@^1.0.1",
+        "scope": null,
+        "escapedName": "serializerr",
+        "name": "serializerr",
+        "rawSpec": "^1.0.1",
+        "spec": ">=1.0.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run"
+    ]
+  ],
+  "_from": "serializerr@>=1.0.1 <2.0.0",
+  "_id": "serializerr@1.0.3",
+  "_inCache": true,
+  "_location": "/serializerr",
+  "_nodeVersion": "6.3.1",
+  "_npmOperationalInternal": {
+    "host": "packages-12-west.internal.npmjs.com",
+    "tmp": "tmp/serializerr-1.0.3.tgz_1470762023362_0.9636031531263143"
+  },
+  "_npmUser": {
+    "name": "timoxley",
+    "email": "secoif@gmail.com"
+  },
+  "_npmVersion": "3.10.5",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "serializerr@^1.0.1",
+    "scope": null,
+    "escapedName": "serializerr",
+    "name": "serializerr",
+    "rawSpec": "^1.0.1",
+    "spec": ">=1.0.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/npm-run"
+  ],
+  "_resolved": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.3.tgz",
+  "_shasum": "12d4c5aa1c3ffb8f6d1dc5f395aa9455569c3f91",
+  "_shrinkwrap": null,
+  "_spec": "serializerr@^1.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run",
+  "author": {
+    "name": "Tim Oxley",
+    "email": "secoif@gmail.com"
+  },
+  "babel": {
+    "presets": [
+      "es2015"
+    ]
+  },
+  "bugs": {
+    "url": "https://github.com/timoxley/serializerr/issues"
+  },
+  "dependencies": {
+    "protochain": "^1.0.5"
+  },
+  "description": "Convert Errors & Objects into an easily-serialized vanilla Object.",
+  "devDependencies": {
+    "babel-cli": "^6.11.4",
+    "babel-preset-es2015": "^6.13.2",
+    "standard": "^7.1.2",
+    "tape": "^4.6.0"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "12d4c5aa1c3ffb8f6d1dc5f395aa9455569c3f91",
+    "tarball": "https://registry.npmjs.org/serializerr/-/serializerr-1.0.3.tgz"
+  },
+  "gitHead": "fd121c29fb0c4c60f88f8b723e4928f339d842d1",
+  "homepage": "https://github.com/timoxley/serializerr",
+  "keywords": [
+    "object",
+    "error",
+    "utility",
+    "JSON",
+    "serialise",
+    "errors",
+    "non-enumerable",
+    "enumberable",
+    "stringify",
+    "properties"
+  ],
+  "license": "ISC",
+  "main": "serializerr.js",
+  "maintainers": [
+    {
+      "name": "timoxley",
+      "email": "secoif@gmail.com"
+    }
+  ],
+  "name": "serializerr",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/timoxley/serializerr.git"
+  },
+  "scripts": {
+    "posttest": "rm serializerr-test.js",
+    "prepublish": "babel index.js > serializerr.js",
+    "pretest": "npm run prepublish",
+    "test": "(babel test.js > serializerr-test.js) && tape serializerr-test.js && standard"
+  },
+  "standard": {
+    "ignore": [
+      "serializerr.js",
+      "serializerr-test.js"
+    ]
+  },
+  "version": "1.0.3"
+}
diff --git a/wrt/build/node_modules/serializerr/serializerr.js b/wrt/build/node_modules/serializerr/serializerr.js
new file mode 100644 (file)
index 0000000..fb6306f
--- /dev/null
@@ -0,0 +1,32 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+
+var _protochain = require('protochain');
+
+var _protochain2 = _interopRequireDefault(_protochain);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function serializerr() {
+  var obj = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
+
+  var chain = (0, _protochain2.default)(obj).filter(function (obj) {
+    return obj !== Object.prototype;
+  });
+  return [obj].concat(chain).map(function (item) {
+    return Object.getOwnPropertyNames(item);
+  }).reduce(function (result, names) {
+    names.forEach(function (name) {
+      result[name] = obj[name];
+    });
+    return result;
+  }, {});
+}
+
+module.exports = serializerr;
+serializerr.serializerr = serializerr;
+exports.default = serializerr;
+
diff --git a/wrt/build/node_modules/serializerr/test.js b/wrt/build/node_modules/serializerr/test.js
new file mode 100644 (file)
index 0000000..571c218
--- /dev/null
@@ -0,0 +1,58 @@
+'use strict'
+
+import test from 'tape'
+import serializerr from './'
+
+test('with Errors', t => {
+  const err = new Error('message')
+  t.ok(err.stack, 'has stack')
+  const errObj = serializerr(err)
+  const jsonError = JSONify(errObj)
+  t.ok(jsonError.name, 'has name')
+  t.ok(jsonError.message, 'has message')
+  t.ok(jsonError.stack, 'has stack')
+  t.end()
+})
+
+test('regular objects', t => {
+  const obj = {ok: {}}
+  const result = serializerr(obj)
+  t.deepEqual(obj, result)
+  t.equal(result.ok, obj.ok)
+  t.end()
+})
+
+test('object with no prototype', t => {
+  const obj = Object.create(null)
+  obj.ok = {}
+  const result = serializerr(obj)
+  t.deepEqual(obj, result)
+  t.equal(result.ok, obj.ok)
+  t.end()
+})
+
+test('example', t => {
+  const error = new Error('an error occurred')
+
+  t.test('without serializerr', t => {
+    const poorlySerializedError = JSON.parse(JSON.stringify(error))
+    t.equal(poorlySerializedError.name, undefined, 'name is undefined')
+    t.equal(poorlySerializedError.message, undefined, 'message is undefined')
+    t.equal(poorlySerializedError.stack, undefined, 'stack is undefined')
+    t.end()
+  })
+
+  t.test('with serializerr', t => {
+    const errorObject = serializerr(error)
+    const wellSerializedError = JSON.parse(JSON.stringify(errorObject))
+    t.equal(wellSerializedError.name, error.name, 'has correct name')
+    t.equal(wellSerializedError.message, error.message, 'has correct message')
+    t.equal(wellSerializedError.stack, error.stack, 'has correct stack')
+    t.end()
+  })
+  t.end()
+})
+
+function JSONify (item) {
+  return JSON.parse(JSON.stringify(item))
+}
diff --git a/wrt/build/node_modules/stdin/package.json b/wrt/build/node_modules/stdin/package.json
new file mode 100644 (file)
index 0000000..404b2db
--- /dev/null
@@ -0,0 +1,72 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "stdin@0.0.1",
+        "scope": null,
+        "escapedName": "stdin",
+        "name": "stdin",
+        "rawSpec": "0.0.1",
+        "spec": "0.0.1",
+        "type": "version"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format"
+    ]
+  ],
+  "_from": "stdin@0.0.1",
+  "_id": "stdin@0.0.1",
+  "_inCache": true,
+  "_location": "/stdin",
+  "_npmUser": {
+    "name": "tjholowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "_npmVersion": "1.1.64",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "stdin@0.0.1",
+    "scope": null,
+    "escapedName": "stdin",
+    "name": "stdin",
+    "rawSpec": "0.0.1",
+    "spec": "0.0.1",
+    "type": "version"
+  },
+  "_requiredBy": [
+    "/esformatter",
+    "/grunt-standard/standard-format"
+  ],
+  "_resolved": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz",
+  "_shasum": "d3041981aaec3dfdbc77a1b38d6372e38f5fb71e",
+  "_shrinkwrap": null,
+  "_spec": "stdin@0.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard-format",
+  "author": {
+    "name": "TJ Holowaychuk",
+    "email": "tj@vision-media.ca"
+  },
+  "dependencies": {},
+  "description": "Because stdin with node is annoying",
+  "devDependencies": {
+    "mocha": "*",
+    "should": "*"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "d3041981aaec3dfdbc77a1b38d6372e38f5fb71e",
+    "tarball": "https://registry.npmjs.org/stdin/-/stdin-0.0.1.tgz"
+  },
+  "keywords": [],
+  "main": "index",
+  "maintainers": [
+    {
+      "name": "tjholowaychuk",
+      "email": "tj@vision-media.ca"
+    }
+  ],
+  "name": "stdin",
+  "optionalDependencies": {},
+  "readme": "\n# stdin\n\n  Because stdin with node is annoying\n\n```js\nvar stdin = reqiure('stdin');\nstdin(function(str){\n  \n});\n```\n\n## License \n\n(The MIT License)\n\nCopyright (c) 2012 TJ Holowaychuk &lt;tj@vision-media.ca&gt;\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
+  "readmeFilename": "Readme.md",
+  "version": "0.0.1"
+}
diff --git a/wrt/build/node_modules/string.prototype.endswith/package.json b/wrt/build/node_modules/string.prototype.endswith/package.json
new file mode 100644 (file)
index 0000000..b81c21b
--- /dev/null
@@ -0,0 +1,97 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "string.prototype.endswith@^0.2.0",
+        "scope": null,
+        "escapedName": "string.prototype.endswith",
+        "name": "string.prototype.endswith",
+        "rawSpec": "^0.2.0",
+        "spec": ">=0.2.0 <0.3.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter-eol-last"
+    ]
+  ],
+  "_from": "string.prototype.endswith@>=0.2.0 <0.3.0",
+  "_id": "string.prototype.endswith@0.2.0",
+  "_inCache": true,
+  "_location": "/string.prototype.endswith",
+  "_npmUser": {
+    "name": "mathias",
+    "email": "mathias@qiwi.be"
+  },
+  "_npmVersion": "1.4.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "string.prototype.endswith@^0.2.0",
+    "scope": null,
+    "escapedName": "string.prototype.endswith",
+    "name": "string.prototype.endswith",
+    "rawSpec": "^0.2.0",
+    "spec": ">=0.2.0 <0.3.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/esformatter-eol-last"
+  ],
+  "_resolved": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz",
+  "_shasum": "a19c20dee51a98777e9a47e10f09be393b9bba75",
+  "_shrinkwrap": null,
+  "_spec": "string.prototype.endswith@^0.2.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/esformatter-eol-last",
+  "author": {
+    "name": "Mathias Bynens",
+    "url": "http://mathiasbynens.be/"
+  },
+  "bugs": {
+    "url": "https://github.com/mathiasbynens/String.prototype.endsWith/issues"
+  },
+  "dependencies": {},
+  "description": "A robust & optimized `String.prototype.endsWith` polyfill, based on the ECMAScript 6 specification.",
+  "devDependencies": {},
+  "directories": {
+    "test": "tests"
+  },
+  "dist": {
+    "shasum": "a19c20dee51a98777e9a47e10f09be393b9bba75",
+    "tarball": "https://registry.npmjs.org/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz"
+  },
+  "files": [
+    "LICENSE-MIT.txt",
+    "endswith.js"
+  ],
+  "homepage": "http://mths.be/endswith",
+  "keywords": [
+    "string",
+    "endswith",
+    "es6",
+    "ecmascript",
+    "polyfill"
+  ],
+  "licenses": [
+    {
+      "type": "MIT",
+      "url": "http://mths.be/mit"
+    }
+  ],
+  "main": "endswith.js",
+  "maintainers": [
+    {
+      "name": "mathias",
+      "email": "mathias@qiwi.be"
+    }
+  ],
+  "name": "string.prototype.endswith",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/mathiasbynens/String.prototype.endsWith.git"
+  },
+  "scripts": {
+    "cover": "istanbul cover --report html --verbose --dir coverage tests/tests.js",
+    "test": "node tests/tests.js"
+  },
+  "version": "0.2.0"
+}
diff --git a/wrt/build/node_modules/supports-color/package.json b/wrt/build/node_modules/supports-color/package.json
new file mode 100644 (file)
index 0000000..898570e
--- /dev/null
@@ -0,0 +1,119 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "supports-color@^1.3.0",
+        "scope": null,
+        "escapedName": "supports-color",
+        "name": "supports-color",
+        "rawSpec": "^1.3.0",
+        "spec": ">=1.3.0 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk"
+    ]
+  ],
+  "_from": "supports-color@>=1.3.0 <2.0.0",
+  "_id": "supports-color@1.3.1",
+  "_inCache": true,
+  "_location": "/supports-color",
+  "_nodeVersion": "0.12.0",
+  "_npmUser": {
+    "name": "sindresorhus",
+    "email": "sindresorhus@gmail.com"
+  },
+  "_npmVersion": "2.5.1",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "supports-color@^1.3.0",
+    "scope": null,
+    "escapedName": "supports-color",
+    "name": "supports-color",
+    "rawSpec": "^1.3.0",
+    "spec": ">=1.3.0 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/chalk"
+  ],
+  "_resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz",
+  "_shasum": "15758df09d8ff3b4acc307539fabe27095e1042d",
+  "_shrinkwrap": null,
+  "_spec": "supports-color@^1.3.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/chalk",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bin": {
+    "supports-color": "cli.js"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/supports-color/issues"
+  },
+  "dependencies": {},
+  "description": "Detect whether a terminal supports color",
+  "devDependencies": {
+    "mocha": "*",
+    "require-uncached": "^1.0.2"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "15758df09d8ff3b4acc307539fabe27095e1042d",
+    "tarball": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz"
+  },
+  "engines": {
+    "node": ">=0.8.0"
+  },
+  "files": [
+    "index.js",
+    "cli.js"
+  ],
+  "gitHead": "09f1b4c336cee7269b4c8b3a8880054a23fcb35e",
+  "homepage": "https://github.com/sindresorhus/supports-color",
+  "keywords": [
+    "cli",
+    "bin",
+    "color",
+    "colour",
+    "colors",
+    "terminal",
+    "console",
+    "cli",
+    "ansi",
+    "styles",
+    "tty",
+    "rgb",
+    "256",
+    "shell",
+    "xterm",
+    "command-line",
+    "support",
+    "supports",
+    "capability",
+    "detect"
+  ],
+  "license": "MIT",
+  "maintainers": [
+    {
+      "name": "sindresorhus",
+      "email": "sindresorhus@gmail.com"
+    },
+    {
+      "name": "jbnicolai",
+      "email": "jappelman@xebia.com"
+    }
+  ],
+  "name": "supports-color",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/supports-color.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "version": "1.3.1"
+}
diff --git a/wrt/build/node_modules/sync-exec/package.json b/wrt/build/node_modules/sync-exec/package.json
new file mode 100644 (file)
index 0000000..79f32e7
--- /dev/null
@@ -0,0 +1,89 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "sync-exec@^0.5.0",
+        "scope": null,
+        "escapedName": "sync-exec",
+        "name": "sync-exec",
+        "rawSpec": "^0.5.0",
+        "spec": ">=0.5.0 <0.6.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run"
+    ]
+  ],
+  "_from": "sync-exec@>=0.5.0 <0.6.0",
+  "_id": "sync-exec@0.5.0",
+  "_inCache": true,
+  "_location": "/sync-exec",
+  "_npmUser": {
+    "name": "gvarsanyi",
+    "email": "gvarsanyi@gmail.com"
+  },
+  "_npmVersion": "1.4.28",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "sync-exec@^0.5.0",
+    "scope": null,
+    "escapedName": "sync-exec",
+    "name": "sync-exec",
+    "rawSpec": "^0.5.0",
+    "spec": ">=0.5.0 <0.6.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/npm-run"
+  ],
+  "_resolved": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz",
+  "_shasum": "3f7258e4a5ba17245381909fa6a6f6cf506e1661",
+  "_shrinkwrap": null,
+  "_spec": "sync-exec@^0.5.0",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-run",
+  "author": {
+    "name": "Greg Varsanyi"
+  },
+  "bugs": {
+    "url": "https://github.com/gvarsanyi/sync-exec/issues"
+  },
+  "dependencies": {},
+  "description": "Synchronous exec with status code support. Requires no external dependencies, no need for node-gyp compilations etc.",
+  "devDependencies": {
+    "coffee-script": "^1.9.1"
+  },
+  "directories": {},
+  "dist": {
+    "shasum": "3f7258e4a5ba17245381909fa6a6f6cf506e1661",
+    "tarball": "https://registry.npmjs.org/sync-exec/-/sync-exec-0.5.0.tgz"
+  },
+  "gitHead": "43bfba8dc84aeaa1347f8d7bf52d5427dd65db82",
+  "homepage": "https://github.com/gvarsanyi/sync-exec",
+  "keywords": [
+    "exec",
+    "execSync",
+    "fs",
+    "sync",
+    "synchronous",
+    "status code",
+    "status"
+  ],
+  "license": "GNU GPLv2",
+  "main": "js/sync-exec.js",
+  "maintainers": [
+    {
+      "name": "gvarsanyi",
+      "email": "gvarsanyi@gmail.com"
+    }
+  ],
+  "name": "sync-exec",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/gvarsanyi/sync-exec.git"
+  },
+  "scripts": {
+    "test": "make test"
+  },
+  "version": "0.5.0"
+}
diff --git a/wrt/build/node_modules/uniq/package.json b/wrt/build/node_modules/uniq/package.json
new file mode 100644 (file)
index 0000000..5e6a484
--- /dev/null
@@ -0,0 +1,94 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "uniq@^1.0.1",
+        "scope": null,
+        "escapedName": "uniq",
+        "name": "uniq",
+        "rawSpec": "^1.0.1",
+        "spec": ">=1.0.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard"
+    ]
+  ],
+  "_from": "uniq@>=1.0.1 <2.0.0",
+  "_id": "uniq@1.0.1",
+  "_inCache": true,
+  "_location": "/uniq",
+  "_npmUser": {
+    "name": "mikolalysenko",
+    "email": "mikolalysenko@gmail.com"
+  },
+  "_npmVersion": "1.4.3",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "uniq@^1.0.1",
+    "scope": null,
+    "escapedName": "uniq",
+    "name": "uniq",
+    "rawSpec": "^1.0.1",
+    "spec": ">=1.0.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/standard"
+  ],
+  "_resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
+  "_shasum": "b31c5ae8254844a3a8281541ce2b04b865a734ff",
+  "_shrinkwrap": null,
+  "_spec": "uniq@^1.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/standard",
+  "author": {
+    "name": "Mikola Lysenko"
+  },
+  "bugs": {
+    "url": "https://github.com/mikolalysenko/uniq/issues"
+  },
+  "dependencies": {},
+  "description": "Removes duplicates from a sorted array in place",
+  "devDependencies": {
+    "tape": "^2.12.3"
+  },
+  "directories": {
+    "test": "test"
+  },
+  "dist": {
+    "shasum": "b31c5ae8254844a3a8281541ce2b04b865a734ff",
+    "tarball": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz"
+  },
+  "gitHead": "e9828cfcb97e25a351f95b39fdf3c31876ff3985",
+  "homepage": "https://github.com/mikolalysenko/uniq",
+  "keywords": [
+    "array",
+    "duplicate",
+    "unique",
+    "uniq",
+    "remove",
+    "sort",
+    "in",
+    "place",
+    "no",
+    "copy"
+  ],
+  "license": "MIT",
+  "main": "uniq.js",
+  "maintainers": [
+    {
+      "name": "mikolalysenko",
+      "email": "mikolalysenko@gmail.com"
+    }
+  ],
+  "name": "uniq",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/mikolalysenko/uniq.git"
+  },
+  "scripts": {
+    "test": "tape test/*.js"
+  },
+  "version": "1.0.1"
+}
diff --git a/wrt/build/node_modules/util-extend/package.json b/wrt/build/node_modules/util-extend/package.json
new file mode 100644 (file)
index 0000000..a9a5a6c
--- /dev/null
@@ -0,0 +1,77 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "util-extend@^1.0.1",
+        "scope": null,
+        "escapedName": "util-extend",
+        "name": "util-extend",
+        "rawSpec": "^1.0.1",
+        "spec": ">=1.0.1 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope"
+    ]
+  ],
+  "_from": "util-extend@>=1.0.1 <2.0.0",
+  "_id": "util-extend@1.0.3",
+  "_inCache": true,
+  "_location": "/util-extend",
+  "_nodeVersion": "4.0.0",
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "i@izs.me"
+  },
+  "_npmVersion": "2.14.15",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "util-extend@^1.0.1",
+    "scope": null,
+    "escapedName": "util-extend",
+    "name": "util-extend",
+    "rawSpec": "^1.0.1",
+    "spec": ">=1.0.1 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/grunt-standard/escope"
+  ],
+  "_resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz",
+  "_shasum": "a7c216d267545169637b3b6edc6ca9119e2ff93f",
+  "_shrinkwrap": null,
+  "_spec": "util-extend@^1.0.1",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/grunt-standard/node_modules/escope",
+  "author": "",
+  "bugs": {
+    "url": "https://github.com/isaacs/util-extend/issues"
+  },
+  "dependencies": {},
+  "description": "Node's internal object extension function",
+  "devDependencies": {},
+  "directories": {},
+  "dist": {
+    "shasum": "a7c216d267545169637b3b6edc6ca9119e2ff93f",
+    "tarball": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz"
+  },
+  "gitHead": "22757dc229edbb253af63d533f27a837184f4a51",
+  "homepage": "https://github.com/isaacs/util-extend#readme",
+  "license": "MIT",
+  "main": "extend.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "i@izs.me"
+    }
+  ],
+  "name": "util-extend",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/isaacs/util-extend.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.0.3"
+}
diff --git a/wrt/build/node_modules/which/CHANGELOG.md b/wrt/build/node_modules/which/CHANGELOG.md
new file mode 100644 (file)
index 0000000..367acb1
--- /dev/null
@@ -0,0 +1,147 @@
+# Changes
+
+
+## v1.3.0
+
+* Add nothrow option to which.sync
+* update tap
+
+## v1.2.14
+
+* appveyor: drop node 5 and 0.x
+* travis-ci: add node 6, drop 0.x
+
+## v1.2.13
+
+* test: Pass missing option to pass on windows
+* update tap
+* update isexe to 2.0.0
+* neveragain.tech pledge request
+
+## v1.2.12
+
+* Removed unused require
+
+## v1.2.11
+
+* Prevent changelog script from being included in package
+
+## v1.2.10
+
+* Use env.PATH only, not env.Path
+
+## v1.2.9
+
+* fix for paths starting with ../
+* Remove unused `is-absolute` module
+
+## v1.2.8
+
+* bullet items in changelog that contain (but don't start with) #
+
+## v1.2.7
+
+* strip 'update changelog' changelog entries out of changelog
+
+## v1.2.6
+
+* make the changelog bulleted
+
+## v1.2.5
+
+* make a changelog, and keep it up to date
+* don't include tests in package
+* Properly handle relative-path executables
+* appveyor
+* Attach error code to Not Found error
+* Make tests pass on Windows
+
+## v1.2.4
+
+* Fix typo
+
+## v1.2.3
+
+* update isexe, fix regression in pathExt handling
+
+## v1.2.2
+
+* update deps, use isexe module, test windows
+
+## v1.2.1
+
+* Sometimes windows PATH entries are quoted
+* Fixed a bug in the check for group and user mode bits. This bug was introduced during refactoring for supporting strict mode.
+* doc cli
+
+## v1.2.0
+
+* Add support for opt.all and -as cli flags
+* test the bin
+* update travis
+* Allow checking for multiple programs in bin/which
+* tap 2
+
+## v1.1.2
+
+* travis
+* Refactored and fixed undefined error on Windows
+* Support strict mode
+
+## v1.1.1
+
+* test +g exes against secondary groups, if available
+* Use windows exe semantics on cygwin & msys
+* cwd should be first in path on win32, not last
+* Handle lower-case 'env.Path' on Windows
+* Update docs
+* use single-quotes
+
+## v1.1.0
+
+* Add tests, depend on is-absolute
+
+## v1.0.9
+
+* which.js: root is allowed to execute files owned by anyone
+
+## v1.0.8
+
+* don't use graceful-fs
+
+## v1.0.7
+
+* add license to package.json
+
+## v1.0.6
+
+* isc license
+
+## 1.0.5
+
+* Awful typo
+
+## 1.0.4
+
+* Test for path absoluteness properly
+* win: Allow '' as a pathext if cmd has a . in it
+
+## 1.0.3
+
+* Remove references to execPath
+* Make `which.sync()` work on Windows by honoring the PATHEXT variable.
+* Make `isExe()` always return true on Windows.
+* MIT
+
+## 1.0.2
+
+* Only files can be exes
+
+## 1.0.1
+
+* Respect the PATHEXT env for win32 support
+* should 0755 the bin
+* binary
+* guts
+* package
+* 1st
diff --git a/wrt/build/node_modules/which/README.md b/wrt/build/node_modules/which/README.md
new file mode 100644 (file)
index 0000000..8c0b0cb
--- /dev/null
@@ -0,0 +1,51 @@
+# which
+
+Like the unix `which` utility.
+
+Finds the first instance of a specified executable in the PATH
+environment variable.  Does not cache the results, so `hash -r` is not
+needed when the PATH changes.
+
+## USAGE
+
+```javascript
+var which = require('which')
+
+// async usage
+which('node', function (er, resolvedPath) {
+  // er is returned if no "node" is found on the PATH
+  // if it is found, then the absolute path to the exec is returned
+})
+
+// sync usage
+// throws if not found
+var resolved = which.sync('node')
+
+// if nothrow option is used, returns null if not found
+resolved = which.sync('node', {nothrow: true})
+
+// Pass options to override the PATH and PATHEXT environment vars.
+which('node', { path: someOtherPath }, function (er, resolved) {
+  if (er)
+    throw er
+  console.log('found at %j', resolved)
+})
+```
+
+## CLI USAGE
+
+Same as the BSD `which(1)` binary.
+
+```
+usage: which [-as] program ...
+```
+
+## OPTIONS
+
+You may pass an options object as the second argument.
+
+- `path`: Use instead of the `PATH` environment variable.
+- `pathExt`: Use instead of the `PATHEXT` environment variable.
+- `all`: Return all matches, instead of just the first one.  Note that
+  this means the function returns an array of strings instead of a
+  single string.
diff --git a/wrt/build/node_modules/which/bin/which b/wrt/build/node_modules/which/bin/which
new file mode 100755 (executable)
index 0000000..7cee372
--- /dev/null
@@ -0,0 +1,52 @@
+#!/usr/bin/env node
+var which = require("../")
+if (process.argv.length < 3)
+  usage()
+
+function usage () {
+  console.error('usage: which [-as] program ...')
+  process.exit(1)
+}
+
+var all = false
+var silent = false
+var dashdash = false
+var args = process.argv.slice(2).filter(function (arg) {
+  if (dashdash || !/^-/.test(arg))
+    return true
+
+  if (arg === '--') {
+    dashdash = true
+    return false
+  }
+
+  var flags = arg.substr(1).split('')
+  for (var f = 0; f < flags.length; f++) {
+    var flag = flags[f]
+    switch (flag) {
+      case 's':
+        silent = true
+        break
+      case 'a':
+        all = true
+        break
+      default:
+        console.error('which: illegal option -- ' + flag)
+        usage()
+    }
+  }
+  return false
+})
+
+process.exit(args.reduce(function (pv, current) {
+  try {
+    var f = which.sync(current, { all: all })
+    if (all)
+      f = f.join('\n')
+    if (!silent)
+      console.log(f)
+    return pv;
+  } catch (e) {
+    return 1;
+  }
+}, 0))
diff --git a/wrt/build/node_modules/which/package.json b/wrt/build/node_modules/which/package.json
new file mode 100644 (file)
index 0000000..38be0b1
--- /dev/null
@@ -0,0 +1,101 @@
+{
+  "_args": [
+    [
+      {
+        "raw": "which@^1.2.4",
+        "scope": null,
+        "escapedName": "which",
+        "name": "which",
+        "rawSpec": "^1.2.4",
+        "spec": ">=1.2.4 <2.0.0",
+        "type": "range"
+      },
+      "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-path"
+    ]
+  ],
+  "_from": "which@>=1.2.4 <2.0.0",
+  "_id": "which@1.3.0",
+  "_inCache": true,
+  "_location": "/which",
+  "_nodeVersion": "8.2.1",
+  "_npmOperationalInternal": {
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/which-1.3.0.tgz_1501548893969_0.39246653905138373"
+  },
+  "_npmUser": {
+    "name": "isaacs",
+    "email": "i@izs.me"
+  },
+  "_npmVersion": "5.3.0",
+  "_phantomChildren": {},
+  "_requested": {
+    "raw": "which@^1.2.4",
+    "scope": null,
+    "escapedName": "which",
+    "name": "which",
+    "rawSpec": "^1.2.4",
+    "spec": ">=1.2.4 <2.0.0",
+    "type": "range"
+  },
+  "_requiredBy": [
+    "/npm-path"
+  ],
+  "_resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
+  "_shasum": "ff04bdfc010ee547d780bec38e1ac1c2777d253a",
+  "_shrinkwrap": null,
+  "_spec": "which@^1.2.4",
+  "_where": "/home/kenshin.choi/project/blink/workspace/public/crosswalk-tizen/wrt/build/node_modules/npm-path",
+  "author": {
+    "name": "Isaac Z. Schlueter",
+    "email": "i@izs.me",
+    "url": "http://blog.izs.me"
+  },
+  "bin": {
+    "which": "./bin/which"
+  },
+  "bugs": {
+    "url": "https://github.com/isaacs/node-which/issues"
+  },
+  "dependencies": {
+    "isexe": "^2.0.0"
+  },
+  "description": "Like which(1) unix command. Find the first instance of an executable in the PATH.",
+  "devDependencies": {
+    "mkdirp": "^0.5.0",
+    "rimraf": "^2.3.3",
+    "tap": "^10.7.0"
+  },
+  "directories": {},
+  "dist": {
+    "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
+    "shasum": "ff04bdfc010ee547d780bec38e1ac1c2777d253a",
+    "tarball": "https://registry.npmjs.org/which/-/which-1.3.0.tgz"
+  },
+  "files": [
+    "which.js",
+    "bin/which"
+  ],
+  "gitHead": "6b2de9381d6f6484489187faf24d22ac5bf3d668",
+  "homepage": "https://github.com/isaacs/node-which#readme",
+  "license": "ISC",
+  "main": "which.js",
+  "maintainers": [
+    {
+      "name": "isaacs",
+      "email": "i@izs.me"
+    }
+  ],
+  "name": "which",
+  "optionalDependencies": {},
+  "readme": "ERROR: No README data found!",
+  "repository": {
+    "type": "git",
+    "url": "git://github.com/isaacs/node-which.git"
+  },
+  "scripts": {
+    "changelog": "bash gen-changelog.sh",
+    "postversion": "npm run changelog && git add CHANGELOG.md && git commit -m 'update changelog - '${npm_package_version}",
+    "test": "tap test/*.js --cov"
+  },
+  "version": "1.3.0"
+}
diff --git a/wrt/build/node_modules/which/which.js b/wrt/build/node_modules/which/which.js
new file mode 100644 (file)
index 0000000..4347f91
--- /dev/null
@@ -0,0 +1,135 @@
+module.exports = which
+which.sync = whichSync
+
+var isWindows = process.platform === 'win32' ||
+    process.env.OSTYPE === 'cygwin' ||
+    process.env.OSTYPE === 'msys'
+
+var path = require('path')
+var COLON = isWindows ? ';' : ':'
+var isexe = require('isexe')
+
+function getNotFoundError (cmd) {
+  var er = new Error('not found: ' + cmd)
+  er.code = 'ENOENT'
+
+  return er
+}
+
+function getPathInfo (cmd, opt) {
+  var colon = opt.colon || COLON
+  var pathEnv = opt.path || process.env.PATH || ''
+  var pathExt = ['']
+
+  pathEnv = pathEnv.split(colon)
+
+  var pathExtExe = ''
+  if (isWindows) {
+    pathEnv.unshift(process.cwd())
+    pathExtExe = (opt.pathExt || process.env.PATHEXT || '.EXE;.CMD;.BAT;.COM')
+    pathExt = pathExtExe.split(colon)
+
+
+    // Always test the cmd itself first.  isexe will check to make sure
+    // it's found in the pathExt set.
+    if (cmd.indexOf('.') !== -1 && pathExt[0] !== '')
+      pathExt.unshift('')
+  }
+
+  // If it has a slash, then we don't bother searching the pathenv.
+  // just check the file itself, and that's it.
+  if (cmd.match(/\//) || isWindows && cmd.match(/\\/))
+    pathEnv = ['']
+
+  return {
+    env: pathEnv,
+    ext: pathExt,
+    extExe: pathExtExe
+  }
+}
+
+function which (cmd, opt, cb) {
+  if (typeof opt === 'function') {
+    cb = opt
+    opt = {}
+  }
+
+  var info = getPathInfo(cmd, opt)
+  var pathEnv = info.env
+  var pathExt = info.ext
+  var pathExtExe = info.extExe
+  var found = []
+
+  ;(function F (i, l) {
+    if (i === l) {
+      if (opt.all && found.length)
+        return cb(null, found)
+      else
+        return cb(getNotFoundError(cmd))
+    }
+
+    var pathPart = pathEnv[i]
+    if (pathPart.charAt(0) === '"' && pathPart.slice(-1) === '"')
+      pathPart = pathPart.slice(1, -1)
+
+    var p = path.join(pathPart, cmd)
+    if (!pathPart && (/^\.[\\\/]/).test(cmd)) {
+      p = cmd.slice(0, 2) + p
+    }
+    ;(function E (ii, ll) {
+      if (ii === ll) return F(i + 1, l)
+      var ext = pathExt[ii]
+      isexe(p + ext, { pathExt: pathExtExe }, function (er, is) {
+        if (!er && is) {
+          if (opt.all)
+            found.push(p + ext)
+          else
+            return cb(null, p + ext)
+        }
+        return E(ii + 1, ll)
+      })
+    })(0, pathExt.length)
+  })(0, pathEnv.length)
+}
+
+function whichSync (cmd, opt) {
+  opt = opt || {}
+
+  var info = getPathInfo(cmd, opt)
+  var pathEnv = info.env
+  var pathExt = info.ext
+  var pathExtExe = info.extExe
+  var found = []
+
+  for (var i = 0, l = pathEnv.length; i < l; i ++) {
+    var pathPart = pathEnv[i]
+    if (pathPart.charAt(0) === '"' && pathPart.slice(-1) === '"')
+      pathPart = pathPart.slice(1, -1)
+
+    var p = path.join(pathPart, cmd)
+    if (!pathPart && /^\.[\\\/]/.test(cmd)) {
+      p = cmd.slice(0, 2) + p
+    }
+    for (var j = 0, ll = pathExt.length; j < ll; j ++) {
+      var cur = p + pathExt[j]
+      var is
+      try {
+        is = isexe.sync(cur, { pathExt: pathExtExe })
+        if (is) {
+          if (opt.all)
+            found.push(cur)
+          else
+            return cur
+        }
+      } catch (ex) {}
+    }
+  }
+
+  if (opt.all && found.length)
+    return found
+
+  if (opt.nothrow)
+    return null
+
+  throw getNotFoundError(cmd)
+}